Can I set a max change in optimization variables?

1 view (last 30 days)
Roel
Roel on 27 Nov 2017
Answered: Alan Weiss on 27 Nov 2017
I am optimizing a simulation with fmincon. I was wondering; is there a way to limit the maximum change of the optimization variables during optimization?
I have added a figure of the evolution of my 3x7= 21 optimization variables (control points).
The optimizer seems to switch between convergent behaviour and huge steps in change of the variables. I would think these huge steps are of no help as they will not give any useful gradient information. How would one go about making this change in value of the optimization variable smaller?

Answers (1)

Alan Weiss
Alan Weiss on 27 Nov 2017
You can change the behavior of fmincon only indirectly, through options. Perhaps using the default 'interior-point' algorithm would not give this behavior. Or, if you did use that algorithm, try setting a small value for the 'InitTrustRegionRadius' option.
Also, since you are optimizing a simulation, perhaps you should larger-than-default finite differences, as suggested in Optimizing a Simulation or ODE.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation

Community Treasure Hunt

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

Start Hunting!