Filter Content By
Version
Text Search
Simple experimentation with a more difficult model
Let us now consider a more difficult model, glass4.mps
.
Again, we read the model and begin the optimization:
gurobi> m = read('c:/gurobi800/win64/examples/data/glass4')
Read MPS format model from file c:/gurobi800/win64/examples/data/glass4.mps
Reading time = 0.00 seconds glass4: 396 Rows, 322 Columns, 1815 NonZeros gurobi> m.optimize() Optimize a model with 396 rows, 322 columns and 1815 nonzeros Variable types: 20 continuous, 302 integer (0 binary) Coefficient statistics: Matrix range [1e+00, 8e+06] Objective range [1e+00, 1e+06] Bounds range [1e+00, 8e+02] RHS range [1e+00, 8e+06] Found heuristic solution: objective 2.40002e+09 Presolve removed 4 rows and 5 columns Presolve time: 0.01s Presolved: 392 rows, 317 columns, 1815 nonzeros Variable types: 19 continuous, 298 integer (298 binary) Root relaxation: objective 8.000024e+08, 72 iterations, 0.00 seconds Nodes | Current Node | Objective Bounds | Work Expl Unexpl | Obj Depth IntInf | Incumbent BestBd Gap | It/Node Time 0 0 8.0000e+08 0 72 2.4000e+09 8.0000e+08 66.7% - 0s H 0 0 2.283353e+09 8.0000e+08 65.0% - 0s H 0 0 2.283353e+09 8.0000e+08 65.0% - 0s 0 0 8.0000e+08 0 72 2.2834e+09 8.0000e+08 65.0% - 0s 0 0 8.0000e+08 0 72 2.2834e+09 8.0000e+08 65.0% - 0s 0 0 8.0000e+08 0 72 2.2834e+09 8.0000e+08 65.0% - 0s H 0 0 2.233352e+09 8.0000e+08 64.2% - 0s 0 2 8.0000e+08 0 72 2.2334e+09 8.0000e+08 64.2% - 0s H 702 664 2.133352e+09 8.0000e+08 62.5% 5.1 0s * 779 663 81 2.000020e+09 8.0000e+08 60.0% 5.2 0s H 1396 1055 2.000019e+09 8.0000e+08 60.0% 5.4 0s H 1397 1011 2.000017e+09 8.0000e+08 60.0% 5.4 0s * 1563 1071 46 2.000017e+09 8.0000e+08 60.0% 5.2 0s * 1566 1028 47 2.000017e+09 8.0000e+08 60.0% 5.2 0s * 1641 1034 46 2.000017e+09 8.0000e+08 60.0% 5.1 0s H 2751 1465 1.950016e+09 8.0000e+08 59.0% 4.5 1s * 3452 1815 129 1.946685e+09 8.0000e+08 58.9% 4.3 1s * 3628 1890 130 1.940020e+09 8.0000e+08 58.8% 4.3 1s * 3774 1952 103 1.912519e+09 8.0000e+08 58.2% 4.2 1s * 3778 1935 104 1.900018e+09 8.0000e+08 57.9% 4.2 1s * 5459 3246 111 1.900017e+09 8.0000e+08 57.9% 3.7 1s * 5706 3206 114 1.850017e+09 8.0000e+08 56.8% 3.7 1s * 5707 3206 114 1.850017e+09 8.0000e+08 56.8% 3.7 1s H 9808 6160 1.850017e+09 8.0000e+08 56.8% 3.3 1s * 9962 6053 75 1.800017e+09 8.0000e+08 55.6% 3.3 1s * 9963 6050 75 1.800017e+09 8.0000e+08 55.6% 3.3 1s *11813 6857 83 1.766683e+09 8.0000e+08 54.7% 3.2 2s H13611 5753 1.593348e+09 8.0000e+08 49.8% 3.2 2s H17448 7869 1.571443e+09 8.0000e+08 49.1% 3.1 2s H17455 7722 1.560015e+09 8.0000e+08 48.7% 3.1 2s H24494 11296 1.550014e+09 8.0000e+08 48.4% 3.4 3s H29764 13948 1.550014e+09 8.0001e+08 48.4% 3.4 7s 29791 13966 1.1000e+09 33 148 1.5500e+09 8.0431e+08 48.1% 3.4 10s H29794 13269 1.537514e+09 8.0448e+08 47.7% 3.4 10s 29861 13318 1.3000e+09 63 131 1.5375e+09 8.1068e+08 47.3% 3.5 15s Interrupt request received Cutting planes: Gomory: 42 Cover: 2 Implied bound: 10 Clique: 1 MIR: 6 Flow cover: 42 Explored 29862 nodes (105763 simplex iterations) in 15.38 seconds Thread count was 8 (of 8 available processors) Solution count 10: 1.53751e+09 1.55001e+09 1.55001e+09 ... 1.85002e+09 Solve interrupted Best objective 1.537514308333e+09, best bound 8.106816259965e+08, gap 47.2732%
It quickly becomes apparent that this model is quite a bit more
difficult than the earlier coins
model. The optimal solution
is actually 1,200,000,000
, but finding that solution takes a
while. After letting the model run for 10 seconds, we interrupt the
run (by hitting CTRL-C, which produces the Interrupt request
received message) and consider our options. Typing
m.optimize()
would resume the run from the point at which it was
interrupted.