How to change the step size for fmincon?

6 vues (au cours des 30 derniers jours)
Nathan Batta
Nathan Batta le 29 Sep 2020
Modifié(e) : Mario Malic le 1 Oct 2020
Hello! I am trying to use fmincon to optimize some weights for an MPC controller. The weights can vary from about 0 to 1000 but the weights only change by about 0.001 each iteration. I would like it to change by whole numbers. I have tried to adjust FiniteDifferenceStepSize and DiffMinChange but have had no luck yet. Does anyone have experience with this? Thank you!
Nathan
  7 commentaires
Nathan Batta
Nathan Batta le 1 Oct 2020
I did try RelLineSrchBnd and RelLineSrchBndDuration but had little luck. The best results I've found is by making the OptimalityTolerance and StepTolerance extremely small (1e-80). However, it is still only varying by about 30 when I want it to step by much more.
Mario Malic
Mario Malic le 1 Oct 2020
Modifié(e) : Mario Malic le 1 Oct 2020
Well, fmincon searches locally. Plot your fval values, do they converge, if so, then local minimum is found. This could be a good problem for ga if your function evaluations are short.

Connectez-vous pour commenter.

Réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by