5

Sto usando Gurobi con java per risolvere un problema di ILP. Ho impostato tutto e avvio il programma. Ma Gurobi non tenta nemmeno di risolvere il mio problema e fornisce una soluzione vuota a tutte le variabili impostate su 0.Gurobi e java e soluzione vuota

Durante il passo rilassato Gurobi mostra che il valore minimo per la funzione è -246. Ciò è in contrasto con il passaggio successivo erano Gurobi mostra che la soluzione ottimale è 0.

L'uscita 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% 

risposta

3

Gurobi segnala che ha trovato una soluzione ottimale. La soluzione con valori pari a 0 per tutte le variabili è ottimale (non è una "soluzione vuota"). La soluzione con l'obiettivo -246.5 è per il problema rilassato. Il problema rilassato ignora i vincoli costringendo le variabili ad assumere valori interi. La soluzione con valore obiettivo di 0 è la soluzione al problema originale come lo hai formulato.

I sintomi che stai segnalando (una soluzione tutto 0 che chiaramente non vuoi) è probabilmente causato da una funzione obiettivo invertita. È possibile che tu volessi massimizzare invece di minimizzare?