问题描述
我正在尝试使用Ipopt解决带有一组线性相等约束的优化问题。仅供参考,这是最大熵最大化,其中自变量x[i]
表示离散概率分布$ p_i $,目标函数是熵。我使用的是目标函数的精确粗麻布。
我知道最佳值应该是什么,将其称为x0
。至此,我初始化了ipopt并获得了目标函数的以下值和约束的最大值:
Initial point :
Objective function = -2.829786e+00
|constraint| = 3.350044e-16
因此,初始点满足约束条件。 然后,我运行优化并获得
This is Ipopt version 3.12.8,running with linear solver ma27.
Number of nonzeros in equality constraint Jacobian...: 32
Number of nonzeros in inequality constraint Jacobian.: 0
Number of nonzeros in Lagrangian Hessian.............: 16
Total number of variables............................: 16
variables with only lower bounds: 0
variables with lower and upper bounds: 16
variables with only upper bounds: 0
Total number of equality constraints.................: 8
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 -2.8297859e+00 3.35e-16 4.29e-02 0.0 0.00e+00 - 0.00e+00 0.00e+00 0
1 -2.8341846e+00 2.23e-02 9.56e-03 -1.5 3.02e-02 - 9.91e-01 1.00e+00f 1
2 -2.8924369e+00 3.63e-01 6.29e-01 -7.3 5.38e-01 - 6.20e-01 1.00e+00h 1
3 -2.8919445e+00 3.72e-01 6.60e-01 -2.1 6.59e-01 - 1.00e+00 1.07e-01h 3
4 -2.8599819e+00 3.44e-01 4.68e-01 -2.1 9.04e-01 - 1.54e-01 2.57e-01H 1
5 -2.8575519e+00 3.54e-01 4.39e-01 -2.1 9.82e-01 - 6.26e-02 6.26e-02s 18
6r-2.8575519e+00 3.54e-01 9.99e+02 -0.5 0.00e+00 - 0.00e+00 0.00e+00R 1
7r-2.8624795e+00 3.52e-01 9.99e+02 0.9 2.65e+02 - 6.46e-02 1.09e-03f 1
8r-2.8509693e+00 2.34e-01 3.05e+03 1.2 1.66e+01 - 1.00e+00 4.09e-02f 1
9 -2.8504125e+00 2.49e-01 1.62e+00 -2.5 7.31e-01 - 9.99e-01 5.01e-02h 1
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
10 -2.8441218e+00 2.60e-01 5.04e+00 -2.6 8.94e-01 - 1.00e+00 7.37e-02h 1
11 -2.8443456e+00 2.62e-01 3.91e+02 -1.6 1.41e+00 - 1.00e+00 1.35e-02h 1
12 -2.8442921e+00 2.62e-01 1.17e+06 -0.9 1.31e+00 - 1.00e+00 3.35e-04h 1
13 -2.8442781e+00 2.61e-01 3.11e+11 1.1 5.91e+01 - 1.00e+00 3.73e-06h 1
14 -2.6069115e+00 1.01e+00 1.19e+18 3.2 8.50e+01 - 5.71e-09 2.20e-02f 1
15 -2.8976745e+00 6.89e-01 1.17e+18 3.2 1.74e+02 - 5.37e-02 1.61e-02h 1
16 -2.8413504e+00 2.24e-01 1.09e+18 2.9 1.40e+01 - 1.00e+00 6.95e-02h 1
17 -2.8410322e+00 2.22e-01 1.09e+18 3.2 9.89e-01 - 1.00e+00 2.16e-03h 1
18 -2.8410299e+00 2.22e-01 1.09e+18 2.5 4.74e-01 - 7.63e-01 2.17e-05h 1
19 -2.8409402e+00 2.22e-01 3.49e+19 1.8 7.29e-01 - 8.46e-01 1.76e-04h 1
...
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
330r-2.5375236e+00 1.53e-01 5.52e+02 -3.8 2.55e-01 - 3.57e-06 3.55e-02f 1
331r-2.5247365e+00 1.42e-01 3.32e-02 -3.8 2.53e-01 - 1.00e+00 1.00e+00f 1
332r-2.5169362e+00 1.30e-01 4.65e-02 -3.8 2.85e-01 - 1.00e+00 3.97e-01f 1
333r-2.5022197e+00 1.04e-01 9.55e+00 -3.8 3.00e-01 - 1.00e+00 5.10e-01f 1
334r-2.4616744e+00 2.09e-03 5.32e+00 -3.8 4.08e-01 - 1.00e+00 7.64e-01f 1
335 -2.4616737e+00 2.09e-03 1.05e+04 -2.6 2.52e-03 - 9.90e-01 1.99e-04h 1
336 -2.4616735e+00 2.09e-03 4.91e+08 -2.6 6.19e-03 - 1.00e+00 2.11e-05h 1
337r-2.4616735e+00 2.09e-03 1.00e+03 -2.6 0.00e+00 - 0.00e+00 1.24e-07R 2
338r-2.4616714e+00 2.08e-03 8.56e+02 -4.6 2.21e-04 - 1.00e+00 1.44e-01f 1
339r-2.4616986e+00 2.06e-03 7.39e+00 -5.3 6.94e-05 - 1.00e+00 9.91e-01f 1
iter objective inf_pr inf_du lg(mu) ||d|| lg(rg) alpha_du alpha_pr ls
340r-2.4616923e+00 2.03e-03 2.95e-02 -6.7 9.26e-05 - 1.00e+00 9.96e-01f 1
Restoration phase converged to a feasible point that is
unacceptable to the filter for the original problem.
Restoration phase in the restoration phase Failed.
Number of Iterations....: 340
(scaled) (unscaled)
Objective...............: -2.4616853232883069e+00 -2.4616853232883069e+00
Dual infeasibility......: 1.2232224605922748e+00 1.2232224605922748e+00
Constraint violation....: 2.0108547908308516e-03 2.0108547908308516e-03
Complementarity.........: 7.0955202413426520e-09 7.0955202413426520e-09
Overall NLP error.......: 7.0924941588062596e-01 1.2232224605922748e+00
Number of objective function evaluations = 1356
Number of objective gradient evaluations = 110
Number of equality constraint evaluations = 1373
Number of inequality constraint evaluations = 0
Number of equality constraint Jacobian evaluations = 378
Number of inequality constraint Jacobian evaluations = 0
Number of Lagrangian Hessian evaluations = 341
Total cpu secs in IPOPT (w/o function evaluations) = 0.179
Total cpu secs in NLP function evaluations = 0.002
EXIT: Restoration Failed!
ERROR OCCURRED DURING IPOPT OPTIMIZATION.
如您所见,Ipopt从起点出发,朝着违反约束并具有次优目标函数的解决方案前进。
你知道为什么会这样吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)