Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Gurobi and java and empty solution

I'm using Gurobi with java to solve a ILP problem. I set all and I start the program. But Gurobi doesn't even try to solve my problem and gives my an empty solution all variable set to 0.

During the relaxed step Gurobi shows that the minimum value for the function is -246. This is in contrast with the next step were gurobi shows that the optimal solution is 0.

The output of Gurobi is:

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%
like image 988
Milo Avatar asked Oct 24 '22 00:10

Milo


1 Answers

Gurobi is reporting that it found an optimal solution. The solution with values of 0 for all the variables is optimal (it's not an "empty solution"). The solution with objective -246.5 is for the relaxed problem. The relaxed problem ignores the constraints forcing variables to take on integer values. The solution with objective value of 0 is the solution to the original problem as you formulated it.

The symptoms you are reporting (an all 0 solution that you clearly don't want) is possibly caused by an inverted objective function. Is it possible that you wanted to maximize instead of minimize?

like image 146
David Nehme Avatar answered Nov 15 '22 00:11

David Nehme