opty icon indicating copy to clipboard operation
opty copied to clipboard

Add in methods to scale the problem objective, constraints and their derivatives for IPOPT

Open moorepants opened this issue 1 year ago • 6 comments

IPOPT converges better if the objective and constraints are scaled. We can probably make smart scaling based on the dynamics that are being modeled.

moorepants avatar Jun 16 '24 06:06 moorepants

If the user sets bounds on the trajectories, those could be used to make some scaling rules because the max/min of each state would be known.

moorepants avatar Sep 23 '24 05:09 moorepants

If the user sets bounds on the trajectories, those could be used to make some scaling rules because the max/min of each state would be known.

Just curiosity: would scaling mean, that the values $\in (-1.0, 1.0)$ ?

Peter230655 avatar Sep 23 '24 06:09 Peter230655

Yes.

moorepants avatar Sep 23 '24 07:09 moorepants

There is some general rule for keeping objective and constraint values small, but here is the basic documentation: https://coin-or.github.io/Ipopt/OPTIONS.html#OPT_NLP_Scaling and it ties to applying scaling to the internal linear solve routine.

moorepants avatar Sep 23 '24 07:09 moorepants

Tips on scaling: https://github.com/coin-or/Ipopt/discussions/498#discussioncomment-1002700

moorepants avatar Sep 23 '24 07:09 moorepants

Tips on scaling: coin-or/Ipopt#498 (comment)

I am afraid, far beyond my capabilities. :-( I suppose to understand, one needs to REALLY understand Ipopt.

Peter230655 avatar Sep 23 '24 08:09 Peter230655