how to solve optimal control problem with constraint for nonlinear system ?

6 ビュー (過去 30 日間)
Hossein Dehghan
Hossein Dehghan 2022 年 1 月 26 日
回答済み: Shantanu Dixit 2025 年 4 月 28 日
i'm trying to solve optimal control problem for nonlinear dynamic system with uncertaint condition using fmincon and ode and not recive desired output
optimization not converged to feasible point.
thanks.

採用された回答

Shantanu Dixit
Shantanu Dixit 2025 年 4 月 28 日
Hi Hossein,
When using 'fmincon' to solve an optimal control problem for a nonlinear system, one common issue is that the optimization doesn't converge because the initial guess is too far from a feasible point. It helps if the initial guess already roughly satisfies the constraints (even though 'fmincon' can technically handle infeasible starting points, having a feasible or near-feasible initial guess usually makes a big difference)
Another thing you might want to check is the choice of algorithm. By default, 'fmincon' might not pick the best one for your type of problem. You can set an appropriate algorithm for the task by adding setting the 'Algorithm' when creating the options. https://www.mathworks.com/help/optim/ug/fmincon.html#busog7r-options.
It can also be useful to play with the solver tolerances. Sometimes the default tolerances are either too tight or too loose for a particular problem.
Lastly, if the solver is still having a hard time finding a feasible solution, enabling the feasibility mode is worth trying. It tells fmincon to first try to find any feasible point before worrying about optimizing the cost. This can be turnen on with 'EnableFeasibilityMode', true in the options. You can refer to the documentation for more information: https://www.mathworks.com/help/optim/ug/constrained-nonlinear-optimization-algorithms.html#mw_e825c521-552e-4f75-80e8-8a5c2d2062ee
Hope this helps.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNonlinear Optimization についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by