Reduce the objective function value in fmicon

options = optimoptions('fmincon', 'Display', 'iter', 'Algorithm', 'interior-point','MaxFunctionEvaluations',100000000,'MaxIterations', 100000000,'PlotFcns',@optimplotfval);
For this objective function value is coming in the order of e+10,
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the value of the optimality tolerance,
and constraints are satisfied to within the value of the constraint tolerance.
please suggest a way to reduce the objective function value

답변 (2개)

Matt J
Matt J 2024년 2월 2일
편집: Matt J 2024년 2월 2일

1 개 추천

For this objective function value is coming in the order of e+10
You seem to think this value is large and far from the optimum, but there's no reason for the rest of us to think so. We haven't seen the value of the objective function at any other points, and so have no basis for comparison. You should plot your objective along a line connecting your initial point x0 to the final point xfinal found by fmincon, as one way to assess the reduction.
g=@(t) objective( (1-t)*x0+t*xfinal );
t=union(1, linspace(0,2,20) );
plot(t,arrayfun(g,t),'o--'); xlabel t; ylabel Objective;
Walter Roberson
Walter Roberson 2024년 2월 2일
이동: Matt J 2024년 2월 2일

0 개 추천

Try different starting points, such as trying MultiStart

카테고리

질문:

2024년 2월 2일

편집:

2024년 2월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by