Python GLPK整数优化器打印“;PROBLEX没有整数可行解”;但仍然返回最佳状态

Python GLPK整数优化器打印“;PROBLEX没有整数可行解”;但仍然返回最佳状态,python,linear-programming,convex-optimization,Python,Linear Programming,Convex Optimization,GLPK的输出需要帮助。 无法满足某些约束条件(有意) GLPK打印“问题没有整数可行解” 但仍然返回“最优”作为解决方案的状态 我已将所有公差级别设置为0 glpk.options['feastol']=0 solvers.options['feastol']=0 glpk.options['abstol']=0 solvers.options['abstol']=0 glpk.options['reltol']=0 solvers.options['reltol']=0 这

GLPK的输出需要帮助。 无法满足某些约束条件(有意) GLPK打印“问题没有整数可行解” 但仍然返回“最优”作为解决方案的状态

我已将所有公差级别设置为0

glpk.options['feastol']=0
solvers.options['feastol']=0
glpk.options['abstol']=0
solvers.options['abstol']=0        
glpk.options['reltol']=0
solvers.options['reltol']=0
这是输出

   GLPK Integer Optimizer, v4.43
   10 rows, 5 columns, 19 non-zeros
   5 integer variables, none of which are binary
   Preprocessing...
   1 hidden covering inequaliti(es) were detected
   5 rows, 5 columns, 14 non-zeros
   5 integer variables, all of which are binary
   Scaling...
    A: min|aij| =  1.000e+00  max|aij| =  1.000e+00  ratio =  1.000e+00
   Problem data seem to be well scaled
   Constructing initial basis...
   Size of triangular part = 4
   Solving LP relaxation...
   GLPK Simplex Optimizer, v4.43
   5 rows, 5 columns, 14 non-zeros
         0: obj =   2.000000000e+00  infeas =  1.000e+00 (1)
   *     2: obj =  -2.500000000e+00  infeas =  0.000e+00 (0)
   *     3: obj =  -4.000000000e+00  infeas =  0.000e+00 (0)
   OPTIMAL SOLUTION FOUND
   Integer optimization begins...
   +     3: mip =     not found yet >=              -inf        (1; 0)
   +     3: mip =     not found yet >=     tree is empty        (0; 1)
   PROBLEM HAS NO INTEGER FEASIBLE SOLUTION
想要的行为是在“问题没有整数可行解”时表示失败


谢谢。

我只知道C API,但我想您可以很容易地找到与Python等效的API

在C API中,您使用
glp\u mip\u status()
,在您的例子中,您将得到
glp\u NOFEAS
,这意味着“问题没有整数可行解”。请参阅文档中“确定MIP解决方案的状态”下的


我不会弄乱公差。

我只知道C API,但我想你可以很容易地找到Python的等价物

在C API中,您使用
glp\u mip\u status()
,在您的例子中,您将得到
glp\u NOFEAS
,这意味着“问题没有整数可行解”。请参阅文档中“确定MIP解决方案的状态”下的


我不会弄乱公差。

这是一个“选项”(如“reltol”)吗?哦,对不起,忘记添加括号了。这是一个函数调用,在解算完成后调用它。然后它返回MIP状态。似乎我没有这样的函数。这个软件包中唯一可用的项目是:dir(glpk)['doc','file','name','package','ilp','lp','options']顺便说一句,我已经解决了这个问题,但也许其他人可以从中受益。如果这个功能不可用,我会非常惊讶。我会研究
ilp
,我想它是指整数规划。我不懂Python,尤其是你正在使用的API,所以很遗憾我不能帮你。这是一个“选项”(比如'reltol')?哦,对不起,忘了添加括号。这是一个函数调用,在解算完成后调用它。然后它返回MIP状态。似乎我没有这样的函数。这个软件包中唯一可用的项目是:dir(glpk)['doc','file','name','package','ilp','lp','options']顺便说一句,我已经解决了这个问题,但也许其他人可以从中受益。如果这个功能不可用,我会非常惊讶。我会研究
ilp
,我想它是指整数规划。我不了解Python,尤其是您正在使用的API,因此很遗憾,我无法帮助您。