Can I set a max change in optimization variables?

2 ビュー (過去 30 日間)
Roel
Roel 2017 年 11 月 27 日
回答済み: Alan Weiss 2017 年 11 月 27 日
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?

回答 (1 件)

Alan Weiss
Alan Weiss 2017 年 11 月 27 日
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

カテゴリ

Help Center および File ExchangeGet Started with Optimization Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by