[Ipopt] Ipopt Digest, Vol 38, Issue 17

ZhangWeizhong greatzwz at hotmail.com
Thu Feb 28 16:56:32 EST 2008


Hi, Carl and stefan:
    Thank you so much, you gave a lot of help to me to make it work.
    I have used AMPL to model my problem, now it generally works even the optimal solution is not what I am expecting.
    It make the problem easy to solve using AMPL, that is so good.

                                     Weizhong Zhang
weizhong at RobotLab:~/Desktop/Ipopt/examples/AmplEx$ ./ampl
ampl: model test.mod
Ipopt 3.3.3: 

******************************************************************************
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...:      864
Number of nonzeros in inequality constraint Jacobian.:        0
Number of nonzeros in Lagrangian Hessian.............:      577

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............................:      146
                     variables with only lower bounds:        0
                variables with lower and upper bounds:        0
                     variables with only upper bounds:        0
Total number of equality constraints.................:       98
Total number of inequality constraints...............:        0
        inequality constraints with only lower bounds:        0
   inequality constraints with lower and upper bounds:        0
        inequality constraints with only upper bounds:        0

iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
   0  0.0000000e+00 1.00e+01 5.00e-01  -1.0 0.00e+00    -  0.00e+00 0.00e+00   0
   1 -1.4259630e+01 1.14e+01 7.48e+07  -1.0 5.00e+01  -2.0 1.00e+00 1.00e+00f  1
   2 -1.1544622e+01 1.14e+01 7.47e+07  -1.0 6.73e+02   2.9 1.00e+00 9.77e-04h 11
   3 -9.5314542e+00 1.13e+01 7.41e+07  -1.0 2.20e+02   3.4 1.00e+00 7.81e-03h  8
   4  4.9440460e+00 1.12e+01 7.35e+07  -1.0 6.60e+02   2.9 1.00e+00 7.81e-03h  8
   5  3.9359504e+01 1.11e+01 7.29e+07  -1.0 1.21e+02   3.3 1.00e+00 7.81e-03h  8
   6  1.1870520e+02 1.09e+01 7.17e+07  -1.0 4.52e+01   3.7 1.00e+00 1.56e-02h  7
   7  2.8740051e+02 1.03e+01 6.71e+07  -1.0 2.98e+01   4.2 1.00e+00 6.25e-02h  5
   8  8.2591571e+02 7.90e+00 4.14e+07  -1.0 2.24e+01   4.6 1.00e+00 2.50e-01h  3
   9  1.0549532e+03 5.95e+00 6.58e+07  -1.0 1.03e+01   5.9 1.00e+00 2.50e-01h  3
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
  10  1.2906943e+03 4.43e+00 1.68e+08  -1.0 1.62e+01   6.3 1.00e+00 2.50e-01h  3
  11  1.7110881e+03 2.20e+00 8.31e+07  -1.0 6.09e+00   6.8 1.00e+00 5.00e-01h  2
  12  3.3218166e+03 8.01e-01 3.85e+08  -1.0 1.80e+00   7.2 1.00e+00 1.00e+00h  1
  13  3.1381269e+03 2.16e+00 3.38e+09  -1.0 4.21e+00   7.6 1.00e+00 1.00e+00f  1
MA27BD returned iflag=-4 and requires more memory.
 Increase liw from 8425 to 84250 and la from 9645 to 97430 and factorize again.
  14  3.1188944e+03 4.49e-01 3.09e+08  -1.0 1.19e+00   8.1 1.00e+00 1.00e+00f  1
  15  3.1286269e+03 3.11e-01 2.87e+08  -1.0 2.65e+00   7.6 1.00e+00 1.00e+00H  1
  16  3.1340981e+03 1.66e-03 1.61e+08  -1.0 1.28e-01   8.0 1.00e+00 1.00e+00h  1
  17  3.1337535e+03 1.14e-05 5.13e+05  -1.0 1.15e-02   7.5 1.00e+00 1.00e+00f  1
  18  3.1337522e+03 5.23e-12 8.55e+01  -1.0 7.63e-06   7.0 1.00e+00 1.00e+00h  1
  19  3.1337474e+03 4.67e-12 2.59e+01  -1.0 6.96e-06   6.6 1.00e+00 1.00e+00f  1
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
  20  3.1337330e+03 4.21e-11 2.59e+01  -1.0 2.09e-05   6.1 1.00e+00 1.00e+00f  1
  21  3.1336897e+03 3.79e-10 2.59e+01  -1.0 6.27e-05   5.6 1.00e+00 1.00e+00f  1
  22  3.1335601e+03 3.41e-09 2.59e+01  -1.0 1.88e-04   5.1 1.00e+00 1.00e+00f  1
  23  3.1331712e+03 3.07e-08 2.59e+01  -1.0 5.64e-04   4.7 1.00e+00 1.00e+00f  1
  24  3.1320046e+03 2.76e-07 2.59e+01  -1.0 1.69e-03   4.2 1.00e+00 1.00e+00f  1
  25  3.1285044e+03 2.48e-06 2.59e+01  -1.0 5.08e-03   3.7 1.00e+00 1.00e+00f  1
  26  3.1180006e+03 2.24e-05 2.59e+01  -1.0 1.52e-02   3.2 1.00e+00 1.00e+00f  1
  27  3.0864451e+03 2.02e-04 2.60e+01  -1.0 4.59e-02   2.8 1.00e+00 1.00e+00f  1
  28  2.9911373e+03 1.83e-03 2.63e+01  -1.0 1.39e-01   2.3 1.00e+00 1.00e+00f  1
  29  2.6980968e+03 1.66e-02 2.73e+01  -1.0 4.25e-01   1.8 1.00e+00 1.00e+00f  1
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
  30  1.7868742e+03 1.53e-01 3.82e+01  -1.0 1.35e+00   1.3 1.00e+00 1.00e+00f  1
  31  8.0952074e+02 4.76e-01 1.61e+02  -1.0 4.94e+00   0.8 1.00e+00 5.00e-01f  2
  32  8.3820010e+02 4.49e-01 1.05e+03  -1.0 1.94e+00   1.3 1.00e+00 1.00e+00h  1
  33  6.4776819e+02 2.11e-01 5.44e+02  -1.0 6.07e-01   1.7 1.00e+00 1.00e+00f  1
  34  5.4416425e+02 1.04e-01 6.85e+02  -1.0 1.09e+00   1.2 1.00e+00 1.00e+00f  1
  35  3.5997165e+02 4.24e+00 7.80e+02  -1.0 7.77e+00   0.7 1.00e+00 1.00e+00f  1
  36  3.2694945e+02 2.70e-01 1.23e+02  -1.0 2.09e+00   1.2 1.00e+00 1.00e+00f  1
  37  1.8137500e+02 5.95e-01 9.72e+02  -1.0 3.06e+00   0.7 1.00e+00 1.00e+00f  1
  38  1.5521936e+02 5.86e-02 3.92e+01  -1.0 8.99e-01   1.1 1.00e+00 1.00e+00f  1
  39  2.3801164e+01 1.93e+00 1.71e+02  -1.0 1.53e+02    -  1.00e+00 5.00e-01f  2
iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du alpha_pr  ls
  40  3.2203514e+01 1.16e+00 1.81e+02  -1.0 1.67e+02    -  1.00e+00 5.00e-01h  2
  41  1.9265072e+01 8.68e-01 1.30e+02  -1.0 1.87e+02    -  1.00e+00 5.00e-01f  2
  42  1.5744144e+01 6.61e-02 8.85e+01  -1.0 2.50e+00   0.6 1.00e+00 1.00e+00f  1
  43  1.2572652e+01 6.68e-02 2.08e+02  -1.0 1.60e+01    -  1.00e+00 1.00e+00f  1
  44  1.2462870e+01 6.19e-02 1.98e+02  -1.0 5.48e+02    -  1.00e+00 6.25e-02f  5
  45  1.2867779e+01 3.53e-02 9.87e+01  -1.0 2.21e+01    -  1.00e+00 5.00e-01h  2
  46  1.3407317e+01 1.21e-02 2.11e+00  -1.0 2.90e+01    -  1.00e+00 1.00e+00h  1
  47  1.3244935e+01 1.08e-03 3.03e-01  -1.0 7.81e+00    -  1.00e+00 1.00e+00h  1
  48  1.3219181e+01 1.40e-06 6.76e-04  -1.7 2.20e-01    -  1.00e+00 1.00e+00h  1
  49  1.3219224e+01 8.34e-12 7.01e-10  -5.7 5.93e-04    -  1.00e+00 1.00e+00h  1

Number of Iterations....: 49

                                   (scaled)                 (unscaled)
Objective...............:   1.3219224004123053e+01    1.3219224004123053e+01
Dual infeasibility......:   7.0076211500236241e-10    7.0076211500236241e-10
Constraint violation....:   8.3439921638728265e-12    8.3439921638728265e-12
Complementarity.........:   0.0000000000000000e+00    0.0000000000000000e+00
Overall NLP error.......:   7.0076211500236241e-10    7.0076211500236241e-10


Number of objective function evaluations             = 119
Number of objective gradient evaluations             = 50
Number of equality constraint evaluations            = 124
Number of inequality constraint evaluations          = 0
Number of equality constraint Jacobian evaluations   = 50
Number of inequality constraint Jacobian evaluations = 0
Number of Lagrangian Hessian evaluations             = 49
Total CPU secs in IPOPT (w/o function evaluations)   =      0.188
Total CPU secs in NLP function evaluations           =      0.068

EXIT: Optimal Solution Found.
 
Ipopt 3.3.3: Optimal Solution Found

suffix ipopt_zU_out OUT;
suffix ipopt_zL_out OUT;

----------------------------------------
> From: ipopt-request at list.coin-or.org
> Subject: Ipopt Digest, Vol 38, Issue 17
> To: ipopt at list.coin-or.org
> Date: Thu, 28 Feb 2008 12:00:02 -0500
> 
> Send Ipopt mailing list submissions to
> 	ipopt at list.coin-or.org
> 
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://list.coin-or.org/mailman/listinfo/ipopt
> or, via email, send a message with subject or body 'help' to
> 	ipopt-request at list.coin-or.org
> 
> You can reach the person managing the list at
> 	ipopt-owner at list.coin-or.org
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Ipopt digest..."
> 
> 
> Today's Topics:
> 
>    1. Re: Ipopt Digest, Vol 38, Issue 8 (Carl Laird)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Thu, 28 Feb 2008 07:49:39 -0600
> From: "Carl Laird" 
> Subject: Re: [Ipopt] Ipopt Digest, Vol 38, Issue 8
> To: "Stefan Vigerske" 
> Cc: ipopt at list.coin-or.org, ZhangWeizhong 
> Message-ID:
> 	
> Content-Type: text/plain; charset=ISO-8859-1
> 
> Hi,
> 
> I encourage the use of a modeling language (like AMPL or GAMS),
> especially for initial prototyping of your formulation. You won't have
> to provide derivatives (the language libraries will do that for you).
> As well, there are extensive examples for both these languages to help
> in problem formulation.
> 
> Cheers,
> 
> Carl.
> 
> 
> On Thu, Feb 28, 2008 at 3:02 AM, Stefan Vigerske
>  wrote:
>> Hi,
>>
>>
>> >      Do we must supply "values" in eval_jac_g manually because IPOPT can not provide these automatically?
>> >      It seems that we do not have to provide the values(just index of the jacobian matrix is fine) to NAG.
>> >      The two differences between NAG and IPOPT now for me are
>> >       1. IPOPT needs to be provided with the derivative of the objective function, which is not required in NAG.
>> >       2. IPOPT needs to be provided with the jacobian of the constraints manually, in NAG, just the structure of the jacobian is needed.
>> >      Am I right for these?
>>
>>  Yes, you are.
>>  Next to the extensive reply of Carl to your other mail, there is also an
>>  example in the manual:
>>  http://www.coin-or.org/Ipopt/documentation/node36.html
>>
>>  If you do not want to write code for Jacobians, then you can either
>>  think whether you can formulate your model in a modeling language like
>>  AMPL or GAMS (Ipopt has interfaces to both), or you can think about
>>  using some automatic differentiation package. You can have a look at the
>>  CppAD project for this purpose. Also the OS project has an Ipopt
>>  Interface that uses CppAD to compute first and second derivatives.
>>
>>
>>  Best,
>>  Stefan
>>
>>  --
>>  Stefan Vigerske
>>  Humboldt University Berlin, Numerical Mathematics
>>  http://www.math.hu-berlin.de/~stefan
>>  _______________________________________________
>>
>>
>> Ipopt mailing list
>>  Ipopt at list.coin-or.org
>>  http://list.coin-or.org/mailman/listinfo/ipopt
>>
> 
> 
> 
> -- 
> 
> Carl D. Laird
> Assistant Professor,
> Artie McFerrin Department of Chemical Engineering,
> Texas A&M University
> Ph: (979) 458-4514
> Email: carl.laird at tamu.edu
> 
> 
> ------------------------------
> 
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt
> 
> 
> End of Ipopt Digest, Vol 38, Issue 17
> *************************************

_________________________________________________________________
MSN 中文网,最新时尚生活资讯,白领聚集门户。
http://cn.msn.com


More information about the Ipopt mailing list