[Ipopt-tickets] [Ipopt] #270: ipopt crashes

Ipopt coin-trac at coin-or.org
Wed Apr 20 08:38:37 EDT 2016


#270: ipopt crashes
--------------------------+------------------------
Reporter:  Pierfrancesco  |      Owner:  ipopt-team
    Type:  defect         |     Status:  new
Priority:  highest        |  Component:  Ipopt
 Version:  3.3            |   Severity:  blocker
Keywords:                 |
--------------------------+------------------------
 Hi, I am setting up an optimization problem, with a big number of
 variables and constraints.


 {{{
 Number of nonzeros in equality constraint Jacobian...:        6
 Number of nonzeros in inequality constraint Jacobian.:     5000
 Number of nonzeros in Lagrangian Hessian.............:        6

 Total number of variables............................:     1004
                      variables with only lower bounds:     1001
                 variables with lower and upper bounds:        3
                      variables with only upper bounds:        0
 Total number of equality constraints.................:        2
 Total number of inequality constraints...............:     1000
         inequality constraints with only lower bounds:     1000
    inequality constraints with lower and upper bounds:        0
         inequality constraints with only upper bounds:        0
 }}}

 The parameters of the constraints come from a Gaussian distribution which
 means that for multiple runs, my problem is similar to itself but never
 exactly the same. What happens is that sometimes I get to convergence,
 sometime no convergence it's reached (status = -1) and sometimes ipopt
 crahes generating an hs_err file (attached) and this error message:


 {{{
 iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du
 alpha_pr  ls
    0 2.1000000e+002 2.00e-001 1.00e+001   0.0 0.00e+000    -  0.00e+000
 0.00e+000   0
    1 2.1165487e+002 1.99e-001 2.15e+002   2.1 1.30e+002    -  1.88e-003 6
 .08e-003f  1
    2 2.1746433e+002 1.95e-001 2.13e+002   2.1 3.75e+001    -  8.89e-003 2
 .08e-002f  1
    3 2.8279022e+002 1.21e-001 6.87e+002   1.9 8.91e+000    -  9.81e-001 3
 .77e-001f  1
    4 2.9329785e+002 1.17e-001 1.76e+002   0.6 2.71e+001    -  2.53e-003 3
 .62e-002f  1
    5 3.4966629e+002 3.59e-002 1.06e+004   0.1 6.93e+000    -  8.53e-001 6
 .93e-001f  1
    6 3.4962519e+002 3.59e-002 1.89e+005  -1.2 6.73e+001    -  1.49e-002 2
 .26e-004h  1
    7 3.4976980e+002 3.59e-002 4.01e+006   2.3 6.80e+003    -  1.68e-002 1
 .69e-006h  1
    8 3.4982853e+002 3.59e-002 2.34e+009   1.7 1.97e+003    -  2.48e-002 2
 .43e-006h  1
    9 3.4983549e+002 3.59e-002 1.50e+019   0.8 2.49e+002    -  2.20e-001 2
 .41e-006h  1
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 1
   Increasing icntl[13] from 2 to 4.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 2
   Increasing icntl[13] from 4 to 8.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 3
   Increasing icntl[13] from 8 to 16.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 4
   Increasing icntl[13] from 16 to 32.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 5
   Increasing icntl[13] from 32 to 64.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 6
   Increasing icntl[13] from 64 to 128.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 7
   Increasing icntl[13] from 128 to 256.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 8
   Increasing icntl[13] from 256 to 512.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 9
   Increasing icntl[13] from 512 to 1024.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 10
   Increasing icntl[13] from 1024 to 2048.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 11
   Increasing icntl[13] from 2048 to 4096.
 MUMPS returned INFO(1) = -9 and requires more memory, reallocating.
 Attempt 12
   Increasing icntl[13] from 4096 to 8192.
 #
 # A fatal error has been detected by the Java Runtime Environment:
 #
 #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x154dd28c, pid=11500,
 tid=11288
 #
 # JRE version: Java(TM) SE Runtime Environment (8.0_77-b03) (build
 1.8.0_77-b03)
 # Java VM: Java HotSpot(TM) Client VM (25.77-b03 mixed mode windows-x86 )
 # Problematic frame:
 # C  [jipopt.dll+0x20d28c]
 #
 # Failed to write core dump. Minidumps are not enabled by default on
 client versions of Windows
 #
 # An error report file with more information is saved as:
 # C:\projects\optimization\hs_err_pid11500.log
 #
 # If you would like to submit a bug report, please visit:
 #   http://bugreport.java.com/bugreport/crash.jsp
 # The crash happened outside the Java Virtual Machine in native code.
 # See problematic frame for where to report the bug.
 #
 WARNING: Problem in step computation; switching to emergency mode.
 iter    objective    inf_pr   inf_du lg(mu)  ||d||  lg(rg) alpha_du
 alpha_pr  ls
   10r3.4983549e+002 3.59e-002 9.95e+002   0.8 0.00e+000  20.0 0.00e+000
 0.00e+000R  1
            0 :Error allocating BUFR:IERR=           1
            0 :Error allocating BUFR:IERR=           1
            0 :Error allocating BUFR:IERR=           1
            0 :Error allocating BUFR:IERR=           1
 }}}


 On the other hand matlab with the function {{{fmincon}}} always converges,
 ensuring that the problem is not ill posed.

 Could anyone help?

 Thanks.

--
Ticket URL: <https://projects.coin-or.org/Ipopt/ticket/270>
Ipopt <http://projects.coin-or.org/Ipopt>
Interior-point optimizer for nonlinear programs.



More information about the Ipopt-tickets mailing list