[Coin-ipopt] Need Help with an NLP
Andreas Waechter
andreasw at watson.ibm.com
Mon Aug 13 13:07:30 EDT 2007
Hi Roy and Damien,
> what's the bit right at the top?
>
> Error in an AMPL evaluation. Run with "halt_on_ampl_error yes" to see details.
> Error evaluating objective gradient at user provided starting point.
>
> If your objective evaluation is wrong or broken, you won't get anywhere.
I think what happens here is that the starting point that is provided by
the user is such that the objective function cannot be evaluated at the
starting point (e.g., 1/x for x = 0 or so).
This user-given starting point is used at the very beginning to compute
scaling factors for the objective and constraints. Since Ipopt cannot
evaluate the objective gradient at that point, no scaling parameter are
computer, i.e., the default "1" is used.
Now, later on it seems that the problem was pretty much solved. I
suggest to use less tight convergence tolernaces (look at tol,
acceptable_tol and related Ipopt options).
I hope this helps,
Andreas
>
> Damien
> _____
>
> From: Roy Chen [mailto:ytboy0208 at gmail.com]
> To: coin-ipopt at list.coin-or.org
> Sent: Mon, 13 Aug 2007 08:02:03 -0600
> Subject: [Coin-ipopt] Need Help with an NLP
>
>
> Dear all:
>
>
> I am trying to solve an MINLP using Bonmin which uses IPOPT to solve the Nonlinear problem. But I am having trouble to solve the relaxed version of my MINLP using IPOPT solver. I interacted with IPOPT through AMPL and used AMPL external function to define the integration in my objective. The first order and second order derivative information was provided along with the function. The following is the error information:
>
>
>
> ******************************************************************************
> This program contains Ipopt, a library for large-scale nonlinear optimization.
> Ipopt is released as open source code under the Common Public License (CPL).
> For more information visit http://projects.coin-or.org/Ipopt
> ******************************************************************************
>
> Number of nonzeros in equality constraint Jacobian...: 125
> Number of nonzeros in inequality constraint Jacobian.: 335
> Number of nonzeros in Lagrangian Hessian.............: 265
>
> Error in an AMPL evaluation. Run with "halt_on_ampl_error yes" to see details.
> Error evaluating objective gradient at user provided starting point.
> No scaling factor for objective function computed!
> Total number of variables............................: 135
> variables with only lower bounds: 55
> variables with lower and upper bounds: 80
> variables with only upper bounds: 0
> Total number of equality constraints.................: 50
> Total number of inequality constraints...............: 111
> inequality constraints with only lower bounds: 50
> inequality constraints with lower and upper bounds: 0
> inequality constraints with only upper bounds: 61
>
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 0 8.7905295e+04 1.00e+01 8.35e+02 -1.0 0.00e+00 - 0.00e+00 0.00e+00 0
> 1 8.7910568e+04 9.98e+00 8.26e+02 -1.0 1.36e+01 4.0 1.27e-03 1.55e-03h 1
> 2 8.7910720e+04 9.98e+00 8.26e+02 -1.0 1.59e+01 3.5 1.91e-03 4.57e-05h 1
> 3 8.7914175e+04 9.98e+00 8.27e+02 -1.0 2.69e+01 3.0 1.54e-03 6.53e-04h 1
> 4 8.7951723e+04 9.89e+00 9.63e+02 -1.0 4.51e+01 2.6 1.09e-03 8.94e-03h 1
> 5 8.7953001e+04 9.84e+00 9.62e+02 -1.0 2.65e+01 2.1 1.49e-02 4.97e-03h 1
> 6 8.7951330e+04 9.59e+00 9.82e+02 -1.0 3.18e+01 1.6 3.12e-02 2.54e-02h 1
> 7 8.7826040e+04 8.73e+00 9.73e+02 -1.0 3.09e+01 1.1 8.71e-02 8.99e-02f 1
> 8 8.7415118e+04 7.33e+00 8.53e+02 -1.0 3.15e+01 0.7 7.17e-02 1.60e-01f 1
> 9 8.7196048e+04 6.93e+00 8.09e+02 -1.0 3.61e+01 0.2 7.30e-02 5.49e-02f 1
> iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
> 10 8.6753427e+04 6.43e+00 7.55e+02 -1.0 5.05e+01 -0.3 2.45e-02 7.21e-02f 1
> 11 8.6708455e+04 6.40e+00 7.52e+02 -1.0 8.43e+01 -0.8 2.93e-02 4.11e-03f 1
> 12 8.6223377e+04 6.25e+00 7.36e+02 -1.0 1.88e+02 -1.2 2.52e-03 2.36e-02f 1
> 13 8.6188855e+04 6.24e+00 7.35e+02 -1.0 6.50e+02 - 1.7 3.82e-03 9.22e-04f 1
> 14 8.6076313e+04 6.20e+00 7.30e+02 -1.0 1.40e+02 -1.3 3.01e-03 6.82e-03f 1
> 15 8.5958852e+04 6.13e+00 7.21e+02 -1.0 7.48e+01 -0.9 1.17e-02 1.18e-02f 1
> 16 8.5807339e+04 6.10e+00 7.18e+02 -1.0 2.81e+02 -1.4 1.13e-03 5.10e-03f 1
> 17 8.5740763e+04 6.10e+00 7.18e+02 -1.0 7.78e+03 -1.8 1.23e-04 1.53e-04f 1
> 18 8.5098085e+04 5.94e+00 7.00e+02 -1.0 2.57e+02 -1.4 1.42e-02 2.61e-02f 1
> 19 8.4984456e+04 5.93e+00 6.99e+02 -1.0 7.07e+02 -1.9 2.54e-03 1.98e-03f 1
> ......
>
> 150 -6.3420338e+04 9.40e-13 6.43e-04 -5.7 3.72e-02 - 1.00e+00 1.00e+00h 1
> 151 -6.3420338e+04 9.23e-13 7.89e-04 -5.7 1.49e-03 - 1.00e+00 1.00e+00h 1
> 152 -6.3420338e+04 1.06e-12 3.50e-04 -5.7 1.81e-03 - 1.00e+00 2.50e-01h 3
> 153 -6.3420338e+04 7.96e-13 4.29e-04 -5.7 8.02e-04 - 1.00e+00 1.00e+00h 1
> 154 -6.3420338e+04 9.40e-13 5.26e-04 -5.7 9.84e-04 - 1.00e+00 1.00e+00h 1
> 155 -6.3420338e+04 9.09e-13 8.17e-05 -5.7 1.21e-03 - 1.00e+00 5.00e-01h 2
> 156 -6.3420338e+04 9.40e-13 2.64e-05 -5.7 1.37e-04 - 1.00e+00 2.50e-01h 3
> 157 -6.3420338e+04 4.55e-13 3.24e-05 -5.7 6.06e-05 - 1.00e+00 1.00e+00H 1
> 158 -6.3420338e+04 9.09e-13 3.21e-05 -5.7 7.43e-05 - 1.00e+00 3.91e-03h 9
> Restoration phase is called at point that is almost feasible,
> with constraint violation 5.442878e-12. Abort.
>
> Number of Iterations....: 158
>
> (scaled) (unscaled)
> Objective...............: -6.3420337528224874e+04 -6.3420337528224874e+04
> Dual infeasibility......: 3.2092465486712886e-05 3.2092465486712886e-05
> Constraint violation....: 1.1102230246251565e-16 1.1102230246251565e-16
> Complementarity.........: 1.8449147213693174e-06 1.8449147213693174e-06
> Overall NLP error.......: 3.2092465486712886e-05 3.2092465486712886e-05
>
>
> Number of objective function evaluations = 230
> Number of objective gradient evaluations = 160
> Number of equality constraint evaluations = 230
> Number of inequality constraint evaluations = 230
> Number of equality constraint Jacobian evaluations = 160
> Number of inequality constraint Jacobian evaluations = 160
> Number of Lagrangian Hessian evaluations = 159
> Total CPU secs in IPOPT (w/o function evaluations) = 0.156
> Total CPU secs in NLP function evaluations = 1.309
>
> EXIT: Restoration Failed!
> y [*] :=
> prod1 216.768
> prod2 177.989
> prod3 201.233
> prod4 189.046
> prod5 215.566
> ;
>
> As you can see, it still gives me one solution, but it also says restoration failed. I am just wondering is it because that the IPOPT solver is not specifically good for my problem or something else.
>
> Best
More information about the Coin-ipopt
mailing list