5

我正在使用Gurobi和java解决ILP问题。 我设置了所有,我开始程序。但Gurobi甚至没有试图解决我的问题,并给出我一个空的解决方案的所有变量设置为0。Gurobi和java以及空解决方案

在轻松的一步Gurobi显示,该函数的最小值为-246。这是在与下一个步骤是对比示出gurobi,最优的解决方案是0

Gurobi的输出是:

Optimize a model with 8189 rows, 3970 columns and 15011 nonzeros 
Variable types: 0 continuous, 3970 integer (0 binary) 
0 0 0 1.0E100 -1.0E100 0 0 
**** New solution at node 0, obj 0.0 
Found heuristic solution: objective 0.0000000 

Root relaxation: objective -2.465000e+02, 4288 iterations, 0.08 seconds 

    Nodes | Current Node |  Objective Bounds  |  Work 
    Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time 


0  0 -246.50000 0 315 0.00000 -246.50000  -  - 0s 


Cutting planes: 
    MIR: 907 

Explored 0 nodes (5485 simplex iterations) in 0.70 seconds 
Thread count was 1 (of 1 available processors) 
Optimal solution found (tolerance 1.00e-04) 
Best objective 0.000000000000e+00, best bound 0.000000000000e+00, gap 0.0% 

回答

3

Gurobi报告它找到一个最佳的解决方案。所有变量值为0的解决方案都是最优的(这不是一个“空的解决方案”)。目标-246.5的解决方案是为了放松问题。宽松的问题忽略了强制变量采用整数值的约束。目标值为0的解决方案是您制定原始问题的解决方案。

您正在报告的症状(您显然不想要的全0解决方案)可能是由反向目标函数引起的。是否有可能你想最大化而不是最小化?