Hi, I tried to use fmincon but I received the message. How I can overcome this problem?

71 visualizaciones (últimos 30 días)
" fmincon stopped because the size of the current step is less than the default value of the step size tolerance but constraints are not satisfied to within the default value of the constraint tolerance "

Respuesta aceptada

Walter Roberson
Walter Roberson el 24 de Mayo de 2015

Más respuestas (2)

Mark Stone
Mark Stone el 25 de Mayo de 2015
Editada: Mark Stone el 25 de Mayo de 2015
If you provide reproducible code, i.e., all input data, options, etc., perhaps someone can offer more concrete help.
As has been previously suggested, poor scaling may be at least part of your problem. But another possibility is that you are using incorrect derivatives (gradient of constraint and maybe objective function). Are you supplying gradients, or is it using numerical differentiation? Have you used the derivative check option (actually, I'm not sure that checks constraint gradient, though).
It may also be the case that you can succeed from a different starting point. In general, you may have better luck with tricky constraints if you use the active-set, or maybe better yet, SQP algorithm than the other algorithms.
Can you show the output using iter-detailed?
  1 comentario
Muna Shehan
Muna Shehan el 28 de Jun. de 2015
Editada: Walter Roberson el 28 de Jun. de 2015
Hi, I had downloaded a code from File exchange http://www.mathworks.com/matlabcentral/fileexchange/40504, and it had been executed efficiently first time. When I tried to re-execute it again, I faced an error message:
Local minimum possible. Constraints satisfied.
fmincon stopped because the size of the current step is less than the default value of the step size tolerance and constraints are satisfied to within the default value of the constraint tolerance.
I am not sure how I can show you the result file, so I'll be thankful if you sent your email to attache the result file in order review the error message.
Best Regards

Iniciar sesión para comentar.


Muna Shehan
Muna Shehan el 25 de Mayo de 2015
Thanks for your response. If the function suffers from numeric round-off can avoid this problem.
  1 comentario
Walter Roberson
Walter Roberson el 25 de Mayo de 2015
Note that when you recenter and rescale that you will need to adjust your constraints and you may need to adjust your function.
There are a lot of cases that recentering and rescaling will not fix, and a different approach is needed.

Iniciar sesión para comentar.

Categorías

Más información sobre Solver Outputs and Iterative Display en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by