MATLAB Answers

How to change the MaxSQPIter in the fmincon solver options?

3 views (last 30 days)
Gaetano on 25 Aug 2020
Commented: Gaetano on 25 Aug 2020
In the display of my optimization problem:
"Optimization stopped because the maximum number of iterations of the quadratic programming subproblem, options.MaxSQPIter, was reached but the maximum constraint violation exceeds options.ConstraintTolerance." (exit flag = -2).
So how I can change the MaxSQPIter? I don't find this parameter in the solver options (only MaxFunctionEvaluation or MaxIteration).
Thanks for the help


Sign in to comment.

Accepted Answer

Alan Weiss
Alan Weiss on 25 Aug 2020
If you look in the fmincon documentation of options you fiind that MaxSQPIter is a hidden option for the active-set algorithm.
I don't know why you are using this algorithm. I would try the sqp algorithm instead, which is similar in many ways, but more modern and robust.
And the problem might not be with the algorithm or options, but might be that the problem is truly infeasible. See When the Solver Fails, particularly the section on Converged to an Infeasible Point.
Alan Weiss
MATLAB mathematical toolbox documentation

  1 Comment

Gaetano on 25 Aug 2020
The sqp algorithm fails many times to solve my problem, I don't know why.
Now I found the way to change the MaxSQPIter:
C:\Program Files\MATLAB\R20xx\toolbox\shared\optimlib\nlconst.m "line 252"
Thanks anyway

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!