Objective function increases but solver converges --- Why?
2 views (last 30 days)
Show older comments
Hi All,
I am trying to solve a constrained optimization problem in fmincon
But I am not sure why the solver converges when the value of the objective function keeps increasing. In the problem I actually try to minimize the cost function.
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 10 4.832863e+02 9.049e+00 4.227e-02
1 21 1.102633e+03 4.064e+00 1.773e+03 4.846e+02
2 31 3.135305e+03 6.418e-01 1.748e+04 3.303e+02
3 41 3.838079e+03 1.503e-01 2.712e+04 1.434e+02
4 51 5.643491e+03 1.751e-02 1.479e+04 1.056e+02
5 64 1.104272e+04 2.133e-04 1.475e+04 4.097e+01
6 78 1.114938e+04 3.426e-07 1.583e+00 2.615e-01
7 89 1.114955e+04 3.189e-09 1.910e+01 4.891e-04
8 104 1.114956e+04 1.458e-11 3.254e-01 3.897e-06
9 119 1.114956e+04 1.779e-12 2.596e-01 3.332e-09
10 134 1.114956e+04 2.554e-13 2.519e-01 3.315e-10
11 149 1.114956e+04 4.795e-14 2.509e-01 8.456e-11
Local minimum possible. Constraints satisfied.
fmincon stopped because the size of the current step is less than
the value of the step size tolerance and constraints are
satisfied to within the value of the constraint tolerance.
I have solved the same problem without constraints and the objective function decreases with iterations
14 150 3.019962e+00 0.000e+00 2.483e-03 2.052e+03
15 160 1.582527e+00 0.000e+00 1.598e-03 1.897e+03
16 170 1.098656e+00 0.000e+00 1.042e-03 1.503e+03
17 180 9.917733e-01 0.000e+00 7.543e-04 9.265e+02
Any help in understanding why the solver converges when objective function increases in constrained case will be useful.
Side note: MATLAB version 2020a. More details on the problem here
3 Comments
Answers (1)
Pranav Verma
on 13 Jan 2021
Hi Deepa,
Please refer to the below discussions on the similar lines:
Thanks
0 Comments
See Also
Categories
Find more on Nonlinear Optimization in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!