Problem with fmincon ''number of runs''

1 vue (au cours des 30 derniers jours)
Ilyas KH
Ilyas KH le 25 Jan 2020
Commenté : Ilyas KH le 29 Jan 2020
Hey everyone,
I try to use the economic MPC with an urban traffic (state space system), to control the intersection's light.
I use 'fmincon' for the optimization.
When I simulate it, I find that the fmincon runs more than one time for every sample time: for the first sample time, the fmincon runs 32 times ,the control value changes and Matlab shows me this message:
Initial point is a local minimum that satisfies the constraints.
Optimization completed because at the initial point, the objective function is non-decreasing
in feasible directions to within the default value of the optimality tolerance, and
constraints are satisfied to within the default value of the constraint tolerance.
<stopping criteria details>
After that, fmincon runs 2 times, the control value stays the same with the same matlab message.
Can I limit this run's number?
Thank you for your help?
All the best,

Réponse acceptée

Alan Weiss
Alan Weiss le 29 Jan 2020
fmincon is a gradient-based solver. It attempts to evaluate the gradient of the objective function at each iteration. By default, it does so by taking tiny steps to estimate the gradient via finite differences. For simulations, the objective function value might not change when taking these small steps. For more details, see Optimizing a Simulation or ODE.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 commentaire
Ilyas KH
Ilyas KH le 29 Jan 2020
Thank you very much Alan for your help and your suggestion.
As you mention, I found that it takes tiny steps to estimate the gradient. About the objective function, it changes when taking these small steps, at the same iteration.
The other observation: for the first iteration, the fmincon find the control value after 10 steps. after that, it takes just 2 steps with the same control value, and Matlab shows this message:
''Initial point is a local minimum that satisfies the constraints.
Optimization completed because at the initial point, the objective function is non-decreasing in feasible directions to within the default value of the optimality tolerance, and constraints are satisfied to within the default value of the constraint tolerance. ''

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by