不可行性(LHS = 0,INFES = 1 ****)和局部最优
Infeasibility (LHS = 0, INFES = 1 ****) and Local Optimum
我制定了一个 NLP 问题,解决后得到以下输出。
Iter Phase Ninf Infeasibility RGmax NSB Step InItr MX OK
0 0 2.0000000000E+01 (Input point)
Pre-triangular equations: 15
Post-triangular equations: 36
1 0 0.0000000000E+00 (After pre-processing)
2 0 0.0000000000E+00 (After scaling)
** Feasible solution. Value of objective = 62.6329262813
Iter Phase Ninf Objective RGmax NSB Step InItr MX OK
4 3 6.2632926281E+01 0.0E+00 0
** Optimal solution. There are no superbasic variables.
--- Restarting execution
--- _gams_py_gjo0.gms(143) 2 Mb
--- Reading solution for model SP_loc_dep_0
--- Executing after solve: elapsed 0:00:06.836
--- _gams_py_gjo0.gms(141) 3 Mb
*** Status: Normal completion
--- Job _gams_py_gjo0.gms Stop 12/03/17 14:37:32 elapsed 0:00:06.838
我有几个问题。
Q1 - 进程似乎正常完成。但是我的问题是一个凸问题,所以我应该有一个全局最优解。但是,求解器输出局部最优值。
Q2-在我的方程式中,我看到以下内容。其中 (1) 是指数形式的。这是否意味着我的约束不可行?我的输出中没有出现任何不可行错误。
---- P1eqS =E=
P1eqS(1,1,1).. (1)*alphaS(1,1,1) + P1S(1,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(1,2,1).. P1S(1,2,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(2,1,1).. (1)*alphaS(2,1,1) + P1S(2,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
(1) 你用 Conopt 解决了这个 NLP 问题。 Conopt 是局部求解器,因此只能保证找到局部解。 Conopt 不知道模型是否是凸的。 (严格检查模型是否是凸的并不完全微不足道)。
(2) 列表文件片段
P1eqS(1,1,1).. (1)*alphaS(1,1,1) + P1S(1,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(1,2,1).. P1S(1,2,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(2,1,1).. (1)*alphaS(2,1,1) + P1S(2,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
是方程式列表。有关不可行性的消息与初始点相关(即,在调用求解器之前)。请注意,CONOPT 日志确认初始点不可行。
列表中的解决方案部分更靠下。
我制定了一个 NLP 问题,解决后得到以下输出。
Iter Phase Ninf Infeasibility RGmax NSB Step InItr MX OK
0 0 2.0000000000E+01 (Input point)
Pre-triangular equations: 15
Post-triangular equations: 36
1 0 0.0000000000E+00 (After pre-processing)
2 0 0.0000000000E+00 (After scaling)
** Feasible solution. Value of objective = 62.6329262813
Iter Phase Ninf Objective RGmax NSB Step InItr MX OK
4 3 6.2632926281E+01 0.0E+00 0
** Optimal solution. There are no superbasic variables.
--- Restarting execution
--- _gams_py_gjo0.gms(143) 2 Mb
--- Reading solution for model SP_loc_dep_0
--- Executing after solve: elapsed 0:00:06.836
--- _gams_py_gjo0.gms(141) 3 Mb
*** Status: Normal completion
--- Job _gams_py_gjo0.gms Stop 12/03/17 14:37:32 elapsed 0:00:06.838
我有几个问题。
Q1 - 进程似乎正常完成。但是我的问题是一个凸问题,所以我应该有一个全局最优解。但是,求解器输出局部最优值。
Q2-在我的方程式中,我看到以下内容。其中 (1) 是指数形式的。这是否意味着我的约束不可行?我的输出中没有出现任何不可行错误。
---- P1eqS =E=
P1eqS(1,1,1).. (1)*alphaS(1,1,1) + P1S(1,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(1,2,1).. P1S(1,2,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(2,1,1).. (1)*alphaS(2,1,1) + P1S(2,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
(1) 你用 Conopt 解决了这个 NLP 问题。 Conopt 是局部求解器,因此只能保证找到局部解。 Conopt 不知道模型是否是凸的。 (严格检查模型是否是凸的并不完全微不足道)。
(2) 列表文件片段
P1eqS(1,1,1).. (1)*alphaS(1,1,1) + P1S(1,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(1,2,1).. P1S(1,2,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
P1eqS(2,1,1).. (1)*alphaS(2,1,1) + P1S(2,1,1) =E= 1 ; (LHS = 0, INFES = 1 ****)
是方程式列表。有关不可行性的消息与初始点相关(即,在调用求解器之前)。请注意,CONOPT 日志确认初始点不可行。
列表中的解决方案部分更靠下。