Expand description
Warm-start iterate initializer — port of
IpWarmStartIterateInitializer.{hpp,cpp}. Used when a previous
solve has left a trial point that should be reused.
There are two callers we serve:
IpoptApplication::ReOptimizeTNLP(the upstream re-solve path) populatesdata.currwith the previous solve’s iterate. We clamp multipliers and optionally overridemu.- First solves from
OptimizeTNLPthat opt intowarm_start_init_point=yesto forward user-supplied primal/dual seeds viaTNLP::get_starting_point. Heredata.currcarries only dim metadata (uninitialized vectors); we pull seeds from the NLP, push primals/slacks into the bound interior with warm-startbound_push/bound_frac, and then apply the same multiplier clamps.
Wired options today: bound_push, bound_frac,
slack_bound_push, slack_bound_frac, mult_init_max,
target_mu. The remaining knobs (mult_bound_push,
entire_iterate, same_structure) are stored but not yet
consumed.