[Ipopt] the particular L-BFGS update; feasibility enforcements; custom linear system solver in Matlab function; disable locking check
Stefan Vigerske
stefan at math.hu-berlin.de
Thu Jan 19 03:33:57 EST 2017
Hi,
On 01/18/2017 09:19 PM, Martin Neuenhofen wrote:
> Dear all,
>
> we would like to use Ipopt in the following settings:
>
> 1. How is the Hesse update of the Lagrangian computed in particular? The
> Hesse is HL, then it is HL= sigma * f + sum_i{ lambda_i * Hc_i } . Are the
> updates performed for each summand Hc_I and Hf separately or for their sum
> w.r.t. the difference from one iteration to the next. I am wondering
> because in the first case there would be no assurance of conservation of
> positive definiteness and in the second case there would be issues with
> regards to that the lambdas change. So do they then freeze the lambdas once
> for the update?
The L-BFGS approximation is done for HL.
I would think that the Hessian to be approximated is considered as a
function of x and lambda.
> 2. For our particular application I can easily find feasible starting
> points. However, if I pass a slightly infeasible initial guess to Ipopt
> then the inf_pr simply does not converge to 10^-6 . It starts from 0.5,
> goes to 0.1, and then both the feasibility and the cost-function value grow
> with each further iteration above 10^5. I already ensured that inf_pr has
> "original" scaling. I have no idea why Ipopt fails on this one and why in
> that way (I mean I had at least expected that it would terminate and say "I
> am unable to find you a feasible point" instead of just messing everything
> up).
If your point is close to the variable bounds, then it is moved away
from the bounds before starting. You might want to play with the
bound_push and bound_frac options to reduce the amount that it is moved.
> 3. How can I make a custom solver? I want something like an iterfunc. I
> use Matlab so I want to write my own preconditioned iterative saddle solver
> in Matlab and apply it during each iteration on the KKT system and shift it
> on my own.
I don't know if that's possible with the C++ interface. Some people have
implemented customizations of Ipopt that go deep into the algorithm.
However, Ipopt's Matlab interface hasn't been maintained for a while, so
I doubt that anyone would even add additional functionality in it.
> 4. Can one disable the intrinsic check of Ipopt whether the system is
> overdetermined (in terms of more equality constraints than degrees of
> freedom). I want to solve such problems since the equations arise from
> discretizations so they and their solution have to be interpreted only in a
> rough manner of being satisfied. In general, does Ipopt hold any features
> for these kinds of systems (e.g. adaptive stopping criteria s.t. I do not
> run back into a point of local intersection of two (nearly) collinear
> equality constraints).
No. If you think that equality constraints don't need to be satisfied,
then you should relax them to inequalities.
Stefan
> We are happy for any information on either of these bullets, please as
> exhaustive as possible.
>
> Kind regards,
> Martin
>
>
>
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt
>
--
http://www.gams.com/~stefan
More information about the Ipopt
mailing list