Adaptive step size for quasi newton optimization

3 views (last 30 days)
Laurin Wenz
Laurin Wenz on 26 Nov 2021
Edited: John D'Errico on 26 Nov 2021
I'm trying to solve a nonlinear optimization Problem for an optimal output feedback control.
This is based on an older (1984) PhD thesis where the author chose the BFGS-Algorithm to solve it.
But it is also stated that the cost function is bound and crossing those unknown bounds the function value is quickly increasing to inf. The author solves this by modifying the BFGS-Algorithm with an additional algorithm that checks and varies the step size.
The cost function is with the matrix P beeing the solution of an Lyapunov equation containing my optimization variables.
Is there a way of implementing a adaptive step size to fminunc or even a better suited solver available in the optimization toolbox?
Or should i just code the modified BFGS-Algorithm myself since the PhD thesis contains flowcharts of it.
Thanks!
Laurin

Accepted Answer

John D'Errico
John D'Errico on 26 Nov 2021
Edited: John D'Errico on 26 Nov 2021
Sorry, but those tools do not give you direct control of the step size. However, if you are using fminunc, then is there a good reason why you would not just use fmincon? Since fmincon will allow you to place constraints on the problem, why not use a tool that is approperiate for your problem?
Yes, you could write the code yourself, but that would take far more effort than simply using a more appropriate optimizer.
And, yes, you make a statement that the bounds are unknown (which means effectively nothing, since then how will you decide to control the stepsize?) But you can always choose some arbitrary bound on the cost function, which you claim can grow towards infinity.

More Answers (0)

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by