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 件)
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
2024 年 2 月 2 日
移動済み: Matt J
2024 年 2 月 2 日
0 投票
Try different starting points, such as trying MultiStart
カテゴリ
ヘルプ センター および File Exchange で Solver Outputs and Iterative Display についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!