Minimization of a integration function

13 Ansichten (letzte 30 Tage)
nabin
nabin am 15 Aug. 2014
Kommentiert: Alan Weiss am 26 Okt. 2017
The given function is f(x)= 4+2x^2
The objective is to find the value of xa such that the following objective function is minimized.
Objective= min (int(f(x),0, xa))
Can you give me idea how to solve this in Matlab?
  1 Kommentar
Matt J
Matt J am 15 Aug. 2014
Physiker192 Commented:
why are you using an int to minimize your function? shouldn't you use the derivative??

Melden Sie sich an, um zu kommentieren.

Antworten (5)

Roger Stafford
Roger Stafford am 15 Aug. 2014
In general for minimization problems with constraints you should use 'fmincon'.

Roger Stafford
Roger Stafford am 15 Aug. 2014
There can be no finite minimum to this objective function. The more negative you make xa, the more the integral decreases. Minus infinity is the only reasonable answer. You don't need matlab to tell you that.
  1 Kommentar
nabin
nabin am 15 Aug. 2014
How can I implement this in Matlab? The function could be some other, I just used an example. (P.S: there is a non negative constraint on xa).

Melden Sie sich an, um zu kommentieren.


Image Analyst
Image Analyst am 15 Aug. 2014
If xa were 0, then the integral would not cover any area and the area under the curve 4 + 2 * x^2 would be zero. That looks like it's the minimum the integral can be.
  1 Kommentar
nabin
nabin am 15 Aug. 2014
Yes it will be zero indeed. The function I mentioned is just for example. I want to implement it in Matlab so that i can use for more complex problems.

Melden Sie sich an, um zu kommentieren.


Alan Weiss
Alan Weiss am 15 Aug. 2014
fun = @(x)integral(@(t)t.*(t-2),0,x); % plot it to see how it looks
[themin,fval] = fmincon(fun,1,[],[],[],[],0,[]) % x lower bound of 0
Alan Weiss
MATLAB mathematical toolbox documentation
  2 Kommentare
Beverly Chua
Beverly Chua am 26 Okt. 2017
Hi Alan,
I am trying to do optimization of a nonlinear objective function as well. However, my output equivalent to your "themin" above is not smooth when I try to plot it. I am trying to plot it with respect to time but it keeps spiking up and down. Is there a reason for this?
Thank you!
Alan Weiss
Alan Weiss am 26 Okt. 2017
Sorry, I do not exactly understand what you mean. It is possible that you are running into issues alluded to in Optimizing a Simulation or ODE, where an integration is a bit noisy because when you integrate over different regions the integration routine can choose different points, and that adds noise.
But I might misunderstand entirely.
Alan Weiss
MATLAB mathematical toolbox documentation

Melden Sie sich an, um zu kommentieren.


Matt J
Matt J am 15 Aug. 2014
Bearbeitet: Matt J am 16 Aug. 2014
If the integrand is continuous, the unconstrained stationary points xu are those satisfying
f(xu)=0
If you add positivity constraints, a constrained local minimizer can be found by doing,
[xu,fval]=fzero(@(xu) f(xu), 0 );
if xu>=0 & abs(fval)<somethingsmall
xa= xu;
elseif xu<0 & f(0)>=0
xa=0;
else
warning 'Local min not found'
end

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by