Adaptive step size for quasi newton optimization

5 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

John D'Errico
John D'Errico il 26 Nov 2021
Modificato: John D'Errico il 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.

Più risposte (0)

Categorie

Scopri di più su Matrix Computations in Help Center e File Exchange

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by