Which global minimization solver should be used for MPC?

1 次查看(过去 30 天)
I am currently implementing Model predictive control for suspension control. I am using fmincon interior point algorithm to generate the control sequence. As I see, fmincon has an output called exit flag which tells us about the optimization solution process. Most of the times, I end up getting 1 which means that the local minimum has been found. How do I make sure that this is the global minimum? What should I do to when I have the exit flag value to be 0 and 2? I tried increasing the number of evaluations, iterations, etc. But nothing seems to work. I also tried to solve the same optimization problem using patternsearch and globalsearch methods. All of them give different answers. Any suggestions on implementation of a global minimum solver in Matlab will be appreciated

采纳的回答

Alan Weiss
Alan Weiss 2018-7-3
There is some very basic information in the documentation about searching for a global minimum. The point is, fmincon searches for a local minimum, and exit flag = 1 tells you that the solution is indeed a local minimum. But fmincon does not search for a global minimum.
Using MultiStart can be an easy way to search for a global minimum using fmincon as the local solver. But there is never a guarantee that you found the global minimum. You might have some extra information, such as limits on curvature, that can enable you to conclude that a solution is global. But there is nothing built-in. Sorry.
Alan Weiss
MATLAB mathematical toolbox documentation

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Refinement 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by