I am trying to solve a nonlinear problem with only a set of continuous variables (where the nonlinearity stems from negative inconsistent - across differently indexed variables - large powers), e.g., one variable has a power -0.2 and another -3.5. I used Ipopt through Pyomo and received the below output. The problem was solved by Knitro through AMPL years ago, and the objective function values (from Ipopt and Knitro) are not any close.
1.What do you think is happening here? Why does it converge to an infeasible point and report it as a result?
2.Is there any alternative solver I could try within Pyomo?
Ipopt 3.11.1:
****************************************************************************** This program contains Ipopt, a library for large-scale nonlinear optimization. Ipopt is released as open source code under the Eclipse Public License (EPL).
For more information visit http://projects.coin-or.org/Ipopt
******************************************************************************
NOTE: You are using Ipopt by default with the MUMPS linear solver.
Other linear solvers might be more efficient (see Ipopt documentation).
This is Ipopt version 3.11.1, running with linear solver mumps.
Number of nonzeros in equality constraint Jacobian...: 0 Number of nonzeros in inequality constraint Jacobian.: 2858853 Number of nonzeros in Lagrangian Hessian.............: 31110
Total number of variables............................: 9677
variables with only lower bounds: 9677
variables with lower and upper bounds: 0
variables with only upper bounds: 0 Total number of equality constraints.................: 0 Total number of inequality constraints...............: 1559235
inequality constraints with only lower bounds: 523080 inequality constraints with lower and upper bounds: 0
inequality constraints with only upper bounds: 1036155
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 0 -1.7292478e+006 1.51e+005 9.89e+000 -1.0 0.00e+000
- 0.00e+000 0.00e+000 0 1 -1.7295299e+006 1.50e+005 1.12e+001 -1.0 6.06e+002 0.0 9.47e-004 3.57e-003f 1 2 -1.7314126e+006 1.49e+005 1.14e+001 -1.0 4.52e+004 - 1.33e-003 9.59e-003f 1 3 -1.7314994e+006 1.49e+005 1.17e+001 -1.0 5.97e+002 -0.5 6.36e-003 1.37e-003f 1 4 -1.7323450e+006 1.47e+005 1.68e+001 -1.0 9.65e+002 -1.0 4.05e-003 9.91e-003f 1 5 -1.7324589e+006 1.47e+005 1.66e+001 -1.0 2.38e+003 -1.4 6.32e-003 1.51e-003f 1 6 -1.7352921e+006 1.45e+005 1.63e+001 -1.0 4.27e+004 - 5.78e-003 1.45e-002f 1 7 -1.7358416e+006 1.44e+005 1.63e+001 -1.0 1.19e+004 - 6.52e-003 5.48e-003f 1 8 -1.7372923e+006 1.42e+005 1.60e+001 -1.0 6.27e+003 - 6.59e-003 1.45e-002f 1 9 -1.7378360e+006 1.41e+005 1.59e+001 -1.0 1.85e+003 - 3.87e-003 8.04e-003f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 10
-1.7382291e+006 1.40e+005 1.58e+001 -1.0 4.44e+003 - 2.21e-003 6.91e-003f 1 11 -1.7387577e+006 1.38e+005 1.56e+001 -1.0 5.04e+003 - 1.02e-002 1.01e-002f 1 12 -1.7389229e+006 1.38e+005 1.55e+001 -1.0 1.65e+003 - 5.40e-003 5.82e-003f 1 13 -1.7393875e+006 1.35e+005 1.53e+001 -1.0 1.51e+003 - 6.59e-003 1.50e-002f 1 14 -1.7393109e+006 1.34e+005 1.64e+001 -1.0 1.26e+003 - 1.41e-002 8.77e-003f 1 15 -1.7391161e+006 1.33e+005 1.68e+001 -1.0 8.47e+002 - 9.61e-003 6.09e-003f 1 16 -1.7387181e+006 1.32e+005 1.67e+001 -1.0 6.72e+002 - 9.61e-003 9.63e-003f 1 17 -1.7382631e+006 1.31e+005 1.67e+001 -1.0 4.98e+002 - 9.57e-003 6.71e-003f 1 18 -1.7381868e+006 1.31e+005 3.53e+001 -1.0 4.09e+002 - 3.06e-003 8.33e-004f 1 19 -1.7371899e+006 1.30e+005 1.90e+001 -1.0 3.96e+002 - 1.72e-004 1.27e-002f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 20 -1.7362542e+006 1.29e+005
1.63e+001 -1.0 3.20e+002 - 8.66e-003 7.16e-003h 1 21 -1.7348790e+006 1.27e+005 3.86e+001 -1.0 2.86e+002 - 7.04e-004 8.64e-003h 1 22 -1.7336666e+006 1.27e+005 1.87e+001 -1.0 2.91e+002 - 1.38e-002 5.78e-003h 1 23 -1.7317366e+006 1.26e+005 2.15e+001 -1.0 3.49e+002 - 8.14e-003 8.01e-003h 1 24 -1.7295260e+006 1.25e+005 2.49e+001 -1.0 3.51e+002 - 7.46e-003 7.30e-003h 1 25 -1.7276058e+006 1.24e+005 2.73e+001 -1.0 3.98e+002 - 7.61e-003 5.05e-003h 1 26 -1.7249847e+006 1.23e+005 3.19e+001 -1.0 4.44e+002 - 7.48e-003 5.94e-003h 1 27 -1.7222735e+006 1.23e+005 5.99e+001 -1.0 4.43e+002 - 7.50e-003 4.96e-003h 1 28 -1.7190370e+006 1.22e+005 6.60e+001 -1.0 4.97e+002 - 5.17e-003 4.82e-003h 1 29 -1.7166933e+006 1.22e+005 1.31e+002 -1.0 5.99e+002 - 4.85e-003 2.68e-003h 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 30 -1.7156839e+006 1.22e+005 2.21e+002
-1.0 6.57e+002 - 2.96e-003 9.50e-004h 1 31 -1.7136458e+006 1.22e+005 1.39e+002 -1.0 7.14e+002 - 2.78e-004 1.79e-003h 1 32 -1.7111915e+006 1.21e+005 1.68e+002 -1.0 8.48e+002 - 2.23e-003 1.85e-003h 1 33 -1.7094299e+006 1.21e+005 8.00e+001 -1.0 1.07e+003 - 3.63e-004 1.07e-003h 1 34 -1.7081456e+006 1.21e+005 5.96e+002 -1.0 1.28e+003 - 3.52e-003 6.71e-004h 1 35 -1.7045886e+006 1.21e+005 5.30e+002 -1.0 1.49e+003 - 1.41e-003 1.66e-003h 1 36 -1.7029935e+006 1.21e+005 1.14e+003 -1.0 2.20e+003 - 1.42e-003 5.05e-004h 1 37 -1.7015932e+006 1.21e+005 1.64e+003 -1.0 2.62e+003 - 7.80e-004 3.59e-004h 1 38 -1.6998463e+006 1.21e+005 2.10e+003 -1.0 3.33e+003 - 5.86e-004 3.67e-004h 1 39 -1.6985938e+006 1.21e+005 4.33e+003 -1.0 5.07e+003 - 6.34e-004 1.96e-004h 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 40 -1.6970693e+006 1.21e+005 4.61e+003 -1.0 6.92e+003 -
2.03e-004 1.80e-004h 1 41 -1.6967167e+006 1.21e+005 3.38e+003 -1.0 1.08e+004 - 1.86e-006 2.98e-005h 1 42 -1.6964594e+006 1.21e+005 3.43e+003 -1.0 1.24e+004 - 2.16e-005 2.09e-005h 1 43 -1.6960265e+006 1.21e+005 1.19e+004 -1.0 1.42e+004 - 1.22e-004 3.32e-005h 1 44 -1.6953687e+006 1.21e+005 1.79e+004 -1.0 2.12e+004 - 6.15e-005 3.78e-005h 1 45 -1.6951933e+006 1.21e+005 6.56e+004 -1.0 3.49e+004 - 5.04e-005 1.18e-005h 1 46r-1.6951933e+006 1.21e+005 1.00e+003 5.1 0.00e+000 - 0.00e+000 3.94e-007R 5 47r-1.7007303e+006 1.21e+005 1.04e+003 5.1 6.46e+007 - 3.82e-006
4.08e-005f 1 48r-1.7031261e+006 1.20e+005 1.03e+003 3.0 1.79e+006 - 2.63e-004 4.95e-004f 1 49r-1.7041104e+006 1.19e+005 1.04e+003 3.0 4.53e+006 - 9.16e-004 2.06e-004f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 50r-1.7095152e+006 1.17e+005 1.04e+003 3.0 3.87e+006 - 2.00e-003
8.75e-004f 1 51r-1.8866957e+006 3.02e+005 1.04e+003 3.0 1.17e+007 - 4.26e-004 4.82e-003f 1 52 -1.8867312e+006 3.02e+005 2.03e+002 -1.0 3.59e+003 0.8 3.47e-005 3.57e-005f 1 53 -1.8867829e+006 3.02e+005 2.03e+002 -1.0 3.18e+003 0.3 3.54e-005 5.02e-005f 1 54 -1.8870483e+006 3.02e+005 2.03e+002 -1.0 2.36e+003 -0.2 6.12e-005 2.51e-004f 1 55 -1.8871681e+006 3.02e+005 2.03e+002 -1.0 2.18e+003 0.3 7.68e-005 1.13e-004f 1 56 -1.8876126e+006 3.02e+005 2.02e+002 -1.0 1.78e+003 -0.2 9.65e-005 4.12e-004f 1 57 -1.8880735e+006 3.02e+005 2.02e+002 -1.0 1.70e+003 -0.7 2.72e-004 4.09e-004f 1 58 -1.8898043e+006 3.02e+005 2.02e+002 -1.0 1.55e+003 -1.2 3.55e-004 1.36e-003f 1 59 -1.8908320e+006 3.02e+005 2.02e+002 -1.0 2.25e+004 - 5.52e-005 9.04e-004h 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 60 -1.8926835e+006 3.02e+005
2.45e+002 -1.0 1.42e+004 - 5.79e-004 1.16e-003f 1 61 -1.8937447e+006 3.01e+005 2.42e+002 -1.0 1.56e+003 -0.7 4.39e-004 6.61e-004f 1 62 -1.8950149e+006 3.01e+005 2.35e+002 -1.0 2.08e+003 -1.2 3.12e-004 7.35e-004f 1 63 -1.8965425e+006 3.01e+005 2.37e+002 -1.0 2.10e+003 - 4.57e-004 8.70e-004f 1 64 -1.8969693e+006 3.01e+005 2.37e+002 -1.0 2.11e+003 - 4.30e-004 2.38e-004f 1 65 -1.8984479e+006 3.01e+005 2.36e+002 -1.0 2.20e+003 - 5.09e-004 8.38e-004f 1 66 -1.8995440e+006 3.01e+005 2.36e+002 -1.0 2.45e+003 - 5.10e-004 6.42e-004f 1 67 -1.9001378e+006 3.01e+005 2.36e+002 -1.0 2.17e+003 - 5.15e-004 3.66e-004f 1 68 -1.9009338e+006 3.00e+005 2.36e+002 -1.0 2.08e+003 - 4.37e-004 5.19e-004f 1 69 -1.9021128e+006 3.00e+005 2.35e+002 -1.0 1.99e+003 - 5.58e-004 7.98e-004f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 70 -1.9026180e+006 3.00e+005 2.35e+002
-1.0 2.06e+003 - 1.47e-004 3.51e-004f 1 71 -1.9027830e+006 3.00e+005 2.35e+002 -1.0 2.11e+003 - 1.26e-005 1.14e-004f 1 72 -1.9034292e+006 3.00e+005 2.35e+002 -1.0 2.13e+003 - 7.58e-004 4.36e-004f 1 73 -1.9042225e+006 3.00e+005 2.35e+002 -1.0 2.34e+003 - 5.04e-004 5.31e-004f 1 74 -1.9046505e+006 3.00e+005 2.35e+002 -1.0 2.66e+003 - 3.77e-004 2.73e-004f 1 75 -1.9050938e+006 3.00e+005 2.35e+002 -1.0 2.91e+003 - 2.50e-005 2.72e-004f 1 76 -1.9056574e+006 3.00e+005 2.35e+002 -1.0 3.13e+003 - 5.85e-004 3.24e-004f 1 77 -1.9061540e+006 3.00e+005 2.35e+002 -1.0 4.01e+003 - 3.37e-004 2.66e-004f 1 78 -1.9067267e+006 3.00e+005 2.35e+002 -1.0 4.58e+003 - 2.77e-004 2.76e-004f 1 79 -1.9070506e+006 3.00e+005 2.35e+002 -1.0 5.35e+003 - 1.82e-004 1.33e-004f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 80 -1.9073483e+006 3.00e+005 2.35e+002 -1.0 6.37e+003 -
2.16e-004 1.08e-004f 1 81 -1.9077093e+006 3.00e+005 2.35e+002 -1.0 7.23e+003 - 1.26e-004 1.14e-004f 1 82 -1.9080169e+006 3.00e+005 2.35e+002 -1.0 9.03e+003 - 1.05e-004 7.96e-005f 1 83 -1.9082633e+006 3.00e+005 2.35e+002 -1.0 1.14e+004 - 2.35e-005 5.10e-005f 1 84 -1.9083384e+006 3.00e+005 2.35e+002 -1.0 1.46e+004 - 2.26e-006 1.24e-005f 1 85 -1.9084228e+006 3.00e+005 8.72e+002 -1.0 1.60e+004 - 7.15e-005 1.27e-005f 1 86 -1.9088284e+006 3.00e+005 2.36e+002 -1.0 1.77e+004 - 2.43e-005 5.40e-005f 1 87 -1.9088744e+006 3.00e+005 2.43e+003 -1.0 4.03e+004 - 1.46e-005 2.72e-006f 1 88 -1.9090741e+006 3.00e+005 1.66e+003 -1.0 4.76e+004 - 7.37e-006 9.93e-006f 1 89r-1.9090741e+006 3.00e+005 1.00e+003 5.0 0.00e+000 - 0.00e+000 1.98e-007R 2 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 90r-1.9117648e+006 3.04e+005 1.00e+003 5.0 7.29e+007 - 6.41e-006
1.12e-005f 1 91r-2.1032212e+006 6.41e+005 1.02e+003 2.9 1.98e+007 - 6.21e-004 4.00e-003f 1 92r-2.3809515e+006 1.38e+006 1.03e+003 2.9 4.19e+007 - 1.14e-003 3.51e-003f 1 93r-2.4939888e+006 1.67e+006 1.04e+003 2.9 1.61e+007 - 2.46e-003 4.69e-003f 1 94r-2.7761309e+006 2.57e+006 8.41e+003 2.9 8.00e+006 - 3.18e-003
2.35e-002f 1 95r-2.6728405e+006 2.19e+006 5.71e+004 2.9 2.42e+006 - 2.52e-002 5.77e-002f 1 96r-2.8038551e+006 2.68e+006 2.84e+007 2.9 7.94e+005 - 9.44e-002 1.82e-001f 1 97r-2.7662202e+006 2.53e+006 2.31e+007 2.9 2.08e+004 - 2.05e-001 2.06e-001f 1 98r-2.7497552e+006 2.46e+006 1.57e+007 2.9 1.29e+005 - 1.63e-001
4.69e-001f 1 99r-2.7405025e+006 2.42e+006 9.02e+006 2.9 8.10e+004 - 2.03e-001 7.07e-001f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 100r-2.7220229e+006 2.35e+006
5.05e+006 2.9 9.17e+002 - 2.28e-001 6.97e-001f 1 101r-2.7000216e+006 2.28e+006 2.93e+006 2.9 2.73e+004 -
4.42e-001 6.34e-001f 1 102r-2.6688323e+006 2.17e+006 1.41e+006 2.9 3.23e+004 - 1.00e+000 9.04e-001f 1 103r-2.6489554e+006 2.11e+006 6.37e+005 2.9 1.90e+004 - 1.00e+000 1.00e+000f 1 104r-2.6473015e+006 2.10e+006 2.75e+005 2.9 1.33e+003 -
1.00e+000 1.00e+000h 1 105r-2.6472264e+006 2.10e+006 1.14e+005 2.9 1.34e+002 - 1.00e+000 1.00e+000f 1 106r-2.6471852e+006 2.10e+006 4.25e+004 2.9 6.86e+001 - 1.00e+000 1.00e+000f 1 107r-2.6471586e+006 2.10e+006 1.29e+004 2.9 3.93e+001 -
1.00e+000 1.00e+000f 1 108r-2.7052367e+006 2.30e+006 3.99e+003 2.2 7.66e+004 - 8.48e-001 7.25e-001f 1 109r-2.7499870e+006 2.45e+006 6.27e+002 2.2 4.91e+004 - 9.74e-001 1.00e+000f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 110r-2.7507558e+006 2.45e+006 8.13e+000 2.2 3.06e+003 -
1.00e+000 1.00e+000h 1 111r-2.7763702e+006 2.55e+006 2.63e+002 0.1 3.63e+004 - 8.21e-001 7.50e-001f 1 112r-2.7835442e+006 2.57e+006 1.22e+002 0.1 1.22e+004 - 9.07e-001 6.88e-001f 1 113r-2.7860550e+006 2.58e+006 5.69e+001 0.1 3.94e+003 -
9.06e-001 7.59e-001f 1 114r-2.7868349e+006 2.59e+006 1.55e+000 0.1 9.51e+002 - 1.00e+000 1.00e+000f 1 115r-2.7870579e+006 2.59e+006 3.90e+001 -1.3 3.30e+002 - 9.51e-001 7.76e-001f 1 116r-2.7871275e+006 2.59e+006 3.70e+000 -1.3 8.42e+001 -
9.76e-001 1.00e+000f 1 117r-2.7871272e+006 2.59e+006 1.46e-002 -1.3 9.47e-002 - 1.00e+000 1.00e+000h 1 118r-2.7871386e+006 2.59e+006 1.32e+000 -3.1 1.35e+001 - 1.00e+000 9.67e-001f 1 119r-2.7871409e+006 2.59e+006 2.33e-003 -3.1 2.75e+000 -
1.00e+000 1.00e+000f 1 iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls 120r-2.7871411e+006 2.59e+006
1.96e-002 -4.6 2.55e-001 - 1.00e+000 1.00e+000f 1 121r-2.7871413e+006 2.59e+006 6.10e-005 -4.6 3.04e-001 -
1.00e+000 1.00e+000h 1 122r-2.7871413e+006 2.59e+006 3.80e-003 -6.9 7.53e-003 - 1.00e+000 1.00e+000f 1 123r-2.7871414e+006 2.59e+006 2.36e-008 -6.9 5.92e-002 - 1.00e+000 1.00e+000h 1 In iteration 123, 1 Slack too small, adjusting variable bound 124r-2.7871414e+006
2.59e+006 2.70e-004 -9.0 4.02e-005 - 1.00e+000 1.00e+000f 1 In iteration 124, 1 Slack too small, adjusting variable bound
Number of Iterations....: 124
(scaled) (unscaled) Objective...............: -2.3436762840071004e+006
-2.7871413928982806e+006 Dual infeasibility......: 9.2870257854463659e+002 1.1044295733229690e+003 Constraint violation....: 7.7957580080225132e+005 2.5871668139707851e+006 Complementarity.........: 2.2997082264203370e-004
2.7348537992141043e-004 Overall NLP error.......: 7.7957580080225132e+005 2.5871668139707851e+006
Number of objective function evaluations = 133 Number of objective gradient evaluations = 87 Number of equality constraint evaluations = 0 Number of inequality constraint evaluations = 133 Number of equality constraint Jacobian evaluations = 0 Number of inequality constraint Jacobian evaluations
= 128 Number of Lagrangian Hessian evaluations = 125 Total CPU secs in IPOPT (w/o function evaluations) = 1068.222 Total CPU secs in NLP function evaluations = 1365.220
EXIT: Converged to a point of local infeasibility. Problem may be infeasible. WARNING: Loading a SolverResults object with a warning status into model=CTA;
message from solver=Ipopt 3.11.1\x3a Converged to a locally infeasible
point. Problem may be infeasible.