[Ipopt] problems on OS X 10.7 Lion
Ray Zimmerman
rz10 at cornell.edu
Tue Oct 18 13:24:14 EDT 2011
In order to eliminate any Matlab interaction, I'm trying to debug this issue using the sample programs build by Ipopt's 'make test'. This is using the MUMPS solver, for which I sometimes get success and sometimes failure.
So, I set print_level to 12 in Ipopt/examples/hs071_cpp/hs071_main.cpp, and then ran Ipopt/test/hs071_cpp multiple times, until I got both a failed run and a successful run. The difference appears to occur in the input matrix (KKT[3][3])to the third call to the linear solver in iteration 0. Even for successful cases the values vary ... and they look fishy to me.
Below are snippets of the output, starting where the differences begin, first from a run that succeeded, then from a run that failed. I have the full logs for anyone who would like to see them.
----- BEGIN SNIPPET 1 : SUCCESS -----
DiagMatrix "KKT[3][3]" with 1 rows and columns, and with diagonal elements:
DenseVector "KKT[3][3]" with 1 elements:
Homogeneous vector, all elements have value -0.0000000000000000e+00
******* KKT SYSTEM *******
(0) KKT[1][1] = -1.288229753919427e-231
(1) KKT[2][1] = -1.288229753919427e-231
(2) KKT[2][2] = 2.156868090481046e-314
(3) KKT[3][1] = 0.000000000000000e+00
(4) KKT[3][2] = 0.000000000000000e+00
(5) KKT[3][3] = 0.000000000000000e+00
(6) KKT[4][1] = 1.837924202529437e-321
(7) KKT[4][2] = 0.000000000000000e+00
(8) KKT[4][3] = 2.156887615955369e-314
(9) KKT[4][4] = 4.940656458412465e-323
(10) KKT[1][1] = 1.000000000000000e+00
(11) KKT[2][2] = 1.000000000000000e+00
(12) KKT[3][3] = 1.000000000000000e+00
(13) KKT[4][4] = 1.000000000000000e+00
(14) KKT[5][5] = 1.000000000000000e+00
(15) KKT[6][1] = 2.019999980000000e+00
(16) KKT[6][2] = 9.920000098799999e+00
(17) KKT[6][3] = 9.920000098799999e+00
(18) KKT[6][4] = 2.019999980000000e+00
(19) KKT[6][6] = -0.000000000000000e+00
(20) KKT[7][1] = 2.484761624893247e+01
(21) KKT[7][2] = 5.059695950200938e+00
(22) KKT[7][3] = 5.059695950200938e+00
(23) KKT[7][4] = 2.484761624893247e+01
(24) KKT[7][5] = -1.000000000000000e+00
(25) KKT[7][7] = -0.000000000000000e+00
Right hand side 0 in TSymLinearSolver:
Trhs[ 0, 0] = -1.2059399960187998e+01
Trhs[ 0, 1] = -1.0200999797999999e+00
Trhs[ 0, 2] = -2.0200999797999999e+00
Trhs[ 0, 3] = -1.1039299980387998e+01
Trhs[ 0, 4] = 1.0000000000000000e+00
Trhs[ 0, 5] = 0.0000000000000000e+00
Trhs[ 0, 6] = 0.0000000000000000e+00
Calling MUMPS-1 for symbolic factorization at cpu time 0.004 (wall 0.001).
Done with MUMPS-1 for symbolic factorization at cpu time 0.004 (wall 0.001).
MUMPS used permuting_scaling 5 and pivot_order 2.
scaling will be 77.
Calling MUMPS-2 for numerical factorization at cpu time 0.004 (wall 0.001).
Done with MUMPS-2 for numerical factorization at cpu time 0.004 (wall 0.001).
Number of doubles for MUMPS to hold factorization (INFO(9)) = 38
Number of integers for MUMPS to hold factorization (INFO(10)) = 40
Calling MUMPS-3 for solve at cpu time 0.004 (wall 0.001).
Done with MUMPS-3 for solve at cpu time 0.004 (wall 0.002).
Solution 0 in TSymLinearSolver:
Tsol[ 0, 0] = -4.9897405756186985e-01
Tsol[ 0, 1] = 4.9774461866142450e-01
Tsol[ 0, 2] = -5.0225538133857550e-01
Tsol[ 0, 3] = 5.2112592223812970e-01
Tsol[ 0, 4] = 5.2759794502408663e-01
Tsol[ 0, 5] = 8.7940136822411322e-02
Tsol[ 0, 6] = -4.7240205497591342e-01
Factorization successful.
CompoundVector "SOL[ 0]" with 4 components:
Component 1:
DenseVector "SOL[ 0][ 0]" with 4 elements:
SOL[ 0][ 0][ 1]=-4.9897405756186985e-01
SOL[ 0][ 0][ 2]= 4.9774461866142450e-01
SOL[ 0][ 0][ 3]=-5.0225538133857550e-01
SOL[ 0][ 0][ 4]= 5.2112592223812970e-01
Component 2:
DenseVector "SOL[ 0][ 1]" with 1 elements:
SOL[ 0][ 1][ 1]= 5.2759794502408663e-01
Component 3:
DenseVector "SOL[ 0][ 2]" with 1 elements:
SOL[ 0][ 2][ 1]= 8.7940136822411322e-02
Component 4:
DenseVector "SOL[ 0][ 3]" with 1 elements:
SOL[ 0][ 3][ 1]=-4.7240205497591342e-01
Least square estimates max(y_c) = 8.794014e-02, max(y_d) = 4.724021e-01
Total number of variables............................: 4
variables with only lower bounds: 0
variables with lower and upper bounds: 4
variables with only upper bounds: 0
Total number of equality constraints.................: 1
Total number of inequality constraints...............: 1
inequality constraints with only lower bounds: 1
inequality constraints with lower and upper bounds: 0
inequality constraints with only upper bounds: 0
----- END SNIPPET 1 : SUCCESS -----
----- BEGIN SNIPPET 2 : FAILURE -----
DiagMatrix "KKT[3][3]" with 1 rows and columns, and with diagonal elements:
DenseVector "KKT[3][3]" with 1 elements:
Homogeneous vector, all elements have value -0.0000000000000000e+00
******* KKT SYSTEM *******
(0) KKT[1][1] = -2.681561585988519e+154
(1) KKT[2][1] = -2.681561585988519e+154
(2) KKT[2][2] = 2.130705788859037e-314
(3) KKT[3][1] = 0.000000000000000e+00
(4) KKT[3][2] = 0.000000000000000e+00
(5) KKT[3][3] = 0.000000000000000e+00
(6) KKT[4][1] = 1.837924202529437e-321
(7) KKT[4][2] = 0.000000000000000e+00
(8) KKT[4][3] = 2.130713172176049e-314
(9) KKT[4][4] = 4.940656458412465e-323
(10) KKT[1][1] = 1.000000000000000e+00
(11) KKT[2][2] = 1.000000000000000e+00
(12) KKT[3][3] = 1.000000000000000e+00
(13) KKT[4][4] = 1.000000000000000e+00
(14) KKT[5][5] = 1.000000000000000e+00
(15) KKT[6][1] = 2.019999980000000e+00
(16) KKT[6][2] = 9.920000098799999e+00
(17) KKT[6][3] = 9.920000098799999e+00
(18) KKT[6][4] = 2.019999980000000e+00
(19) KKT[6][6] = -0.000000000000000e+00
(20) KKT[7][1] = 2.484761624893247e+01
(21) KKT[7][2] = 5.059695950200938e+00
(22) KKT[7][3] = 5.059695950200938e+00
(23) KKT[7][4] = 2.484761624893247e+01
(24) KKT[7][5] = -1.000000000000000e+00
(25) KKT[7][7] = -0.000000000000000e+00
Right hand side 0 in TSymLinearSolver:
Trhs[ 0, 0] = -1.2059399960187998e+01
Trhs[ 0, 1] = -1.0200999797999999e+00
Trhs[ 0, 2] = -2.0200999797999999e+00
Trhs[ 0, 3] = -1.1039299980387998e+01
Trhs[ 0, 4] = 1.0000000000000000e+00
Trhs[ 0, 5] = 0.0000000000000000e+00
Trhs[ 0, 6] = 0.0000000000000000e+00
Calling MUMPS-1 for symbolic factorization at cpu time 0.004 (wall 0.001).
Done with MUMPS-1 for symbolic factorization at cpu time 0.004 (wall 0.001).
MUMPS used permuting_scaling 5 and pivot_order 2.
scaling will be 77.
Calling MUMPS-2 for numerical factorization at cpu time 0.004 (wall 0.001).
Done with MUMPS-2 for numerical factorization at cpu time 0.004 (wall 0.001).
Number of doubles for MUMPS to hold factorization (INFO(9)) = 38
Number of integers for MUMPS to hold factorization (INFO(10)) = 40
In MumpsSolverInterface::Factorization: negevals_ = 3, but numberOfNegEVals = 2
Factorization failed with retval = 2
Total number of variables............................: 4
variables with only lower bounds: 0
variables with lower and upper bounds: 4
variables with only upper bounds: 0
Total number of equality constraints.................: 1
Total number of inequality constraints...............: 1
inequality constraints with only lower bounds: 1
inequality constraints with lower and upper bounds: 0
inequality constraints with only upper bounds: 0
----- END SNIPPET 2 : FAILURE -----
--
Ray Zimmerman
Senior Research Associate
419A Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645
On Oct 14, 2011, at 5:53 PM, Andreas Waechter wrote:
> If you set the (file_)print_level large enough, you can see what matrix entries are given to the linear solver, and what the linear solver returns. Maybe there are some Nan/Inf ?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/ipopt/attachments/20111018/a528aa9e/attachment-0001.html>
More information about the Ipopt
mailing list