Scaling in optimization routines

40 views (last 30 days)
ANetTow on 29 Jun 2017
Answered: Run Zhu on 9 Nov 2017
What optimization routines have built-in problem scaling? I see that fmincon has an option "ScaleProblem." Is the default for this set to true or false? What values are actually scaled? Do other routines have a similar option (for example fminsearch, genetic algorithm, particle swarm, etc.)
Edited to add: There's a change to the values for ScaleProblem as of R2016a. Here's a table of legacy and current values in case you find them helpful.

Answers (1)

Run Zhu
Run Zhu on 9 Nov 2017
ScaleProblem works in two different ways:
For fmincon using SQP and SQP Legacy algorithms, ScaleProblem will normalize all constraints and the objective function by their initial values when set to 'obj-and-constr'. The default value is 'none'
For fsolve, lsqcurvefit, and lsqnonlin using levenberg-marquardt algorithms, setting the ScaleProblem option to 'jacobian' sometimes helps the solver on badly-scaled problems. The default value is 'none'.

Community Treasure Hunt

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

Start Hunting!