[Cbc] How to get first feasible integer solutions (suboptimal solutions are sufficient)

David Ibarra Gómez dibarra21 at hotmail.com
Mon Mar 21 15:37:37 EDT 2016


Did you tried -sec rather than sec? For me works...

From: jonatan.lauritsen at outlook.com
To: cbc at list.coin-or.org
Date: Mon, 21 Mar 2016 11:09:22 +0000
Subject: Re: [Cbc] How to get first feasible integer solutions (suboptimal solutions are sufficient)




I am in despair. In http://wpweb2.tepper.cmu.edu/fmargot/COIN/proj5.pdf (page 6) I have found good command line options for reducing running times: sec, allowablegap, ratiogap. But without results. It seems to me that cbc ignores those options and continue its work till the finding of optimal solution. So - up to now I have tried the following commands:

cbc model_cplex.lp solve maxnodes 1 solu solution.txt
cbc model_cplex.lp solve maxiterations 1 solu solution.txt    
cbc model_cplex.lp solve sec 60 solu solution.txt 
cbc model_cplex.lp solve allowablegap 1000 solu solution.txt 
cbc model_cplex.lp solve ratiogap 1000 solu solution.txt

But all those command enter into full search mode. The strange thing is that cbc accepts unknown commands and doesn't report errors or warnings.

Typical trace is like this:

C:\Program Files\COIN-OR\1.7.4\win32-msvc11\bin>cbc model_cplex.lp solve ratiogap 1000 solu solution2.txt
Welcome to the CBC MILP Solver
Version: 2.8.8
Build Date: Dec 23 2013
Revision Number: 1998

command line - cbc model_cplex.lp solve ratiogap 1000 solu solution2.txt (de
fault strategy 1)
Continuous objective value is 4023.59 - 13.52 seconds
Cgl0004I processed model has 175 rows, 28899 columns (28899 integer) and 57797 e
lements
Cutoff increment increased from 1e-005 to 0.04995
Cbc0038I Pass   1: suminf.    5.72661 (22) obj. 4024.34 iterations 10
Cbc0038I Pass   2: suminf.    5.56944 (19) obj. 4112.6 iterations 6
Cbc0038I Solution found of 4112.6
Cbc0038I Branch and bound needed to clear up 19 general integers
Cbc0038I Full problem 175 rows 28899 columns, reduced to 62 rows 405 columns
Cbc0038I Cleaned solution of 4120.1
Cbc0038I Before mini branch and bound, 28865 integers at bound fixed and 0 conti
nuous of which 1 were internal integer and 0 internal continuous
Cbc0038I Mini branch and bound improved solution from 4120.1 to 4120.1 (40.58 se
conds)
Cbc0038I Round again with cutoff of 4110.45
Cbc0038I Pass   3: suminf.    5.72661 (22) obj. 4024.34 iterations 0
Cbc0038I Pass   4: suminf.    5.48580 (20) obj. 4110.45 iterations 10
Cbc0038I Pass   5: suminf.    5.74434 (20) obj. 4080.34 iterations 2
Cbc0038I Pass   6: suminf.    5.50191 (24) obj. 4110.45 iterations 33
Cbc0038I Pass   7: suminf.    4.81224 (22) obj. 4086.34 iterations 2
Cbc0038I Pass   8: suminf.    4.81455 (19) obj. 4110.45 iterations 10
Cbc0038I Pass   9: suminf.    4.83178 (19) obj. 4086.34 iterations 1
Cbc0038I Pass  10: suminf.    4.04747 (17) obj. 4110.45 iterations 38
Cbc0038I Pass  11: suminf.    3.03797 (15) obj. 4110.45 iterations 4
Cbc0038I Pass  12: suminf.    2.61859 (14) obj. 4110.45 iterations 2
Cbc0038I Pass  13: suminf.    2.71797 (14) obj. 4098.09 iterations 1
Cbc0038I Pass  14: suminf.    2.74310 (16) obj. 4110.45 iterations 26
Cbc0038I Pass  15: suminf.    2.89310 (16) obj. 4110.45 iterations 1
Cbc0038I Pass  16: suminf.    3.34472 (14) obj. 4110.45 iterations 4
Cbc0038I Pass  17: suminf.    3.43672 (14) obj. 4110.45 iterations 1
Cbc0038I Pass  18: suminf.    3.18563 (14) obj. 4106.7 iterations 19
Cbc0038I Pass  19: suminf.    3.93532 (15) obj. 4106.7 iterations 4
Cbc0038I Solution found of 4106.7
Cbc0038I Branch and bound needed to clear up 15 general integers
Cbc0038I Full problem 176 rows 28899 columns, reduced to 62 rows 405 columns
Cbc0038I Cleaned solution of 4110.2
Cbc0038I Before mini branch and bound, 28778 integers at bound fixed and 0 conti
nuous
Cbc0038I Full problem 175 rows 28899 columns, reduced to 27 rows 98 columns
Cbc0038I Mini branch and bound improved solution from 4110.2 to 4076.7 (42.30 se
conds)
Cbc0038I Round again with cutoff of 4066.15
Cbc0038I Pass  20: suminf.    5.72661 (22) obj. 4024.34 iterations 0
Cbc0038I Pass  21: suminf.    6.12187 (21) obj. 4066.15 iterations 9
Cbc0038I Pass  22: suminf.    6.12187 (21) obj. 4066.15 iterations 1
Cbc0038I Pass  23: suminf.    6.07931 (21) obj. 4066.15 iterations 3
Cbc0038I Pass  24: suminf.    3.35776 (16) obj. 4066.15 iterations 25
Cbc0038I Pass  25: suminf.    3.35776 (16) obj. 4066.15 iterations 0
Cbc0038I Pass  26: suminf.    3.93763 (16) obj. 4060.84 iterations 5
Cbc0038I Pass  27: suminf.    3.80381 (16) obj. 4066.15 iterations 2
Cbc0038I Pass  28: suminf.    5.69261 (20) obj. 4066.15 iterations 29
Cbc0038I Pass  29: suminf.    6.06542 (21) obj. 4066.15 iterations 4
Cbc0038I Pass  30: suminf.    5.33430 (20) obj. 4066.15 iterations 6
Cbc0038I Pass  31: suminf.    5.15380 (19) obj. 4066.15 iterations 3
Cbc0038I Pass  32: suminf.    5.20572 (19) obj. 4064.09 iterations 1
Cbc0038I Pass  33: suminf.    4.58825 (20) obj. 4066.15 iterations 22
Cbc0038I Pass  34: suminf.    4.60028 (19) obj. 4066.15 iterations 1
Cbc0038I Pass  35: suminf.    4.02355 (18) obj. 4049.84 iterations 3
Cbc0038I Pass  36: suminf.    3.59184 (17) obj. 4066.15 iterations 3
Cbc0038I Pass  37: suminf.    3.87057 (17) obj. 4055.09 iterations 1
Cbc0038I Pass  38: suminf.    5.22864 (24) obj. 4066.15 iterations 32
Cbc0038I Pass  39: suminf.    5.65400 (22) obj. 4066.15 iterations 4
Cbc0038I Pass  40: suminf.    5.33409 (22) obj. 4066.15 iterations 6
Cbc0038I Pass  41: suminf.    4.94139 (22) obj. 4056.84 iterations 2
Cbc0038I Pass  42: suminf.    4.92463 (21) obj. 4066.15 iterations 46
Cbc0038I Pass  43: suminf.    4.13966 (19) obj. 4066.15 iterations 3
Cbc0038I Pass  44: suminf.    3.51732 (19) obj. 4066.15 iterations 9
Cbc0038I Pass  45: suminf.    4.03724 (19) obj. 4066.15 iterations 2
Cbc0038I Pass  46: suminf.    3.89225 (19) obj. 4066.15 iterations 41
Cbc0038I Pass  47: suminf.    3.94624 (18) obj. 4064.84 iterations 6
Cbc0038I Pass  48: suminf.    3.80603 (16) obj. 4066.15 iterations 6
Cbc0038I Pass  49: suminf.    3.77302 (16) obj. 4064.84 iterations 1
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 28720 integers at bound fixed and 0 conti
nuous
Cbc0038I Full problem 175 rows 28899 columns, reduced to 39 rows 144 columns
Cbc0038I Mini branch and bound improved solution from 4076.7 to 4072.9 (43.81 se
conds)
Cbc0038I Round again with cutoff of 4053.6
Cbc0038I Pass  49: suminf.    5.72661 (22) obj. 4024.34 iterations 0
Cbc0038I Pass  50: suminf.    5.88031 (21) obj. 4053.6 iterations 9
Cbc0038I Pass  51: suminf.    5.68756 (21) obj. 4049.34 iterations 3
Cbc0038I Pass  52: suminf.    5.22411 (22) obj. 4053.6 iterations 35
Cbc0038I Pass  53: suminf.    4.56341 (20) obj. 4052.5 iterations 4
Cbc0038I Pass  54: suminf.    5.30559 (21) obj. 4053.6 iterations 8
Cbc0038I Pass  55: suminf.    5.61860 (21) obj. 4053.6 iterations 2
Cbc0038I Pass  56: suminf.    5.11981 (21) obj. 4040.84 iterations 1
Cbc0038I Pass  57: suminf.    5.30559 (21) obj. 4053.6 iterations 3
Cbc0038I Pass  58: suminf.    4.51883 (22) obj. 4053.6 iterations 13
Cbc0038I Pass  59: suminf.    4.49858 (22) obj. 4053.6 iterations 1
Cbc0038I Pass  60: suminf.    4.67873 (21) obj. 4053.6 iterations 3
Cbc0038I Pass  61: suminf.    4.67873 (21) obj. 4053.6 iterations 0
Cbc0038I Pass  62: suminf.    5.15375 (21) obj. 4053.6 iterations 2
Cbc0038I Pass  63: suminf.    3.71191 (17) obj. 4053.6 iterations 41
Cbc0038I Pass  64: suminf.    3.30755 (15) obj. 4048.4 iterations 4
Cbc0038I Pass  65: suminf.    3.50104 (15) obj. 4047.84 iterations 5
Cbc0038I Pass  66: suminf.    3.70408 (15) obj. 4053.6 iterations 1
Cbc0038I Pass  67: suminf.    4.10921 (18) obj. 4053.6 iterations 22
Cbc0038I Pass  68: suminf.    3.45106 (16) obj. 4053.6 iterations 3
Cbc0038I Pass  69: suminf.    4.98902 (19) obj. 4053.6 iterations 14
Cbc0038I Pass  70: suminf.    4.56494 (19) obj. 4036.34 iterations 1
Cbc0038I Pass  71: suminf.    4.99975 (19) obj. 4053.6 iterations 3
Cbc0038I Pass  72: suminf.    4.99975 (19) obj. 4053.6 iterations 0
Cbc0038I Pass  73: suminf.    5.36621 (22) obj. 4053.6 iterations 31
Cbc0038I Pass  74: suminf.    3.98639 (21) obj. 4053.6 iterations 2
Cbc0038I Pass  75: suminf.    3.62282 (18) obj. 4030.34 iterations 9
Cbc0038I Pass  76: suminf.    3.55788 (17) obj. 4032.84 iterations 1
Cbc0038I Pass  77: suminf.    3.20309 (17) obj. 4053.6 iterations 3
Cbc0038I Pass  78: suminf.    3.55788 (17) obj. 4032.34 iterations 1
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 28757 integers at bound fixed and 0 conti
nuous
Cbc0038I Full problem 175 rows 28899 columns, reduced to 29 rows 111 columns
Cbc0038I Mini branch and bound improved solution from 4072.9 to 4067.5 (45.20 se
conds)
Cbc0038I Round again with cutoff of 4044.8
Cbc0038I Pass  78: suminf.    5.72661 (22) obj. 4024.34 iterations 0
Cbc0038I Pass  79: suminf.    5.87289 (22) obj. 4044.8 iterations 7
Cbc0038I Pass  80: suminf.    5.85265 (22) obj. 4044.8 iterations 2
Cbc0038I Pass  81: suminf.    6.11567 (22) obj. 4044.8 iterations 4
Cbc0038I Pass  82: suminf.    6.11567 (22) obj. 4044.8 iterations 1
Cbc0038I Pass  83: suminf.    5.85265 (22) obj. 4044.8 iterations 3
Cbc0038I Pass  84: suminf.    5.48438 (20) obj. 4044.8 iterations 34
Cbc0038I Pass  85: suminf.    4.93694 (19) obj. 4044.8 iterations 4
Cbc0038I Pass  86: suminf.    5.06801 (18) obj. 4044.8 iterations 3
Cbc0038I Pass  87: suminf.    5.06801 (18) obj. 4044.8 iterations 0
Cbc0038I Pass  88: suminf.    4.84657 (18) obj. 4044.8 iterations 2
Cbc0038I Pass  89: suminf.    5.55110 (19) obj. 4044.8 iterations 33
Cbc0038I Pass  90: suminf.    5.25213 (17) obj. 4038.84 iterations 6
Cbc0038I Pass  91: suminf.    4.79294 (15) obj. 4044.8 iterations 5
Cbc0038I Pass  92: suminf.    5.10685 (15) obj. 4044.8 iterations 2
Cbc0038I Pass  93: suminf.    4.71789 (18) obj. 4044.8 iterations 22
Cbc0038I Pass  94: suminf.    4.82283 (18) obj. 4044.8 iterations 2
Cbc0038I Pass  95: suminf.    4.58420 (14) obj. 4044.8 iterations 5
Cbc0038I Pass  96: suminf.    4.58420 (14) obj. 4044.8 iterations 0
Cbc0038I Pass  97: suminf.    4.35537 (14) obj. 4035.84 iterations 2
Cbc0038I Pass  98: suminf.    4.12956 (14) obj. 4044.8 iterations 1
Cbc0038I Pass  99: suminf.    3.82347 (17) obj. 4044.8 iterations 37
Cbc0038I Pass 100: suminf.    3.82347 (17) obj. 4044.8 iterations 0
Cbc0038I Pass 101: suminf.    4.98892 (17) obj. 4038.59 iterations 11
Cbc0038I Pass 102: suminf.    4.81039 (17) obj. 4044.8 iterations 3
Cbc0038I Pass 103: suminf.    5.36464 (21) obj. 4044.8 iterations 29
Cbc0038I Pass 104: suminf.    5.34439 (21) obj. 4044.8 iterations 1
Cbc0038I Pass 105: suminf.    4.72489 (18) obj. 4044.8 iterations 7
Cbc0038I Pass 106: suminf.    5.10016 (18) obj. 4044.8 iterations 2
Cbc0038I Pass 107: suminf.    4.88567 (18) obj. 4035.84 iterations 1
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 28745 integers at bound fixed and 0 conti
nuous
Cbc0038I Full problem 175 rows 28899 columns, reduced to 32 rows 118 columns
Cbc0038I Mini branch and bound did not improve solution (46.58 seconds)
Cbc0038I After 46.59 seconds - Feasibility pump exiting with objective of 4067.5
 - took 6.72 seconds
Cbc0012I Integer solution of 4067.5 found by feasibility pump after 0 iterations
 and 0 nodes (46.63 seconds)
Cbc0038I Full problem 175 rows 28899 columns, reduced to 21 rows 53 columns
Cbc0038I Full problem 175 rows 28899 columns, reduced to 10 rows 26 columns
Cbc0012I Integer solution of 4052.5 found by combine solutions after 0 iteration
s and 0 nodes (47.91 seconds)
Cbc0031I 18 added rows had average density of 182.61111
Cbc0013I At root node, 18 cuts changed objective from 4024.34 to 4025.84 in 11 p
asses
Cbc0014I Cut generator 0 (Probing) - 2 row cuts average 2.0 elements, 0 column c
uts (0 active)  in 0.135 seconds - new frequency is -100
Cbc0014I Cut generator 1 (Gomory) - 153 row cuts average 307.4 elements, 0 colum
n cuts (15 active)  in 0.099 seconds - new frequency is 1
Cbc0014I Cut generator 2 (Knapsack) - 11 row cuts average 4.8 elements, 0 column
 cuts (0 active)  in 0.249 seconds - new frequency is 1
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cu
ts (0 active)  in 0.015 seconds - new frequency is -100
Cbc0014I Cut generator 4 (MixedIntegerRounding2) - 59 row cuts average 184.8 ele
ments, 0 column cuts (0 active)  in 0.180 seconds - new frequency is 1
Cbc0014I Cut generator 5 (FlowCover) - 9 row cuts average 2.1 elements, 0 column
 cuts (0 active)  in 0.080 seconds - new frequency is -100
Cbc0014I Cut generator 6 (TwoMirCuts) - 79 row cuts average 106.8 elements, 0 co
lumn cuts (0 active)  in 0.193 seconds - new frequency is -100
Cbc0010I After 0 nodes, 1 on tree, 4052.5 best solution, best possible 4025.84 (
49.34 seconds)
Cbc0012I Integer solution of 4031.6 found by rounding after 310 iterations and 2
5 nodes (51.86 seconds)
Cbc0038I Full problem 175 rows 28899 columns, reduced to 28 rows 108 columns
Cbc0012I Integer solution of 4031.1 found by combine solutions after 310 iterati
ons and 25 nodes (52.53 seconds)
Cbc0038I Full problem 175 rows 28899 columns, reduced to 14 rows 43 columns
Cbc0012I Integer solution of 4028.1 found by RINS after 355 iterations and 41 no
des (53.95 seconds)
Cbc0038I Full problem 175 rows 28899 columns, reduced to 29 rows 111 columns
Cbc0038I Full problem 193 rows 28899 columns, reduced to 162 rows 1425 columns
Cbc0044I Reduced cost fixing - 162 rows, 1425 columns - restarting search
Cbc0012I Integer solution of 4028.1 found by Previous solution after 0 iteration
s and 0 nodes (55.28 seconds)
Cbc0031I 15 added rows had average density of 129
Cbc0013I At root node, 15 cuts changed objective from 4024.34 to 4026.84 in 14 p
asses
Cbc0014I Cut generator 0 (Probing) - 19 row cuts average 3.7 elements, 0 column
cuts (1 active)  in 0.122 seconds - new frequency is 1
Cbc0014I Cut generator 1 (Gomory) - 88 row cuts average 350.3 elements, 0 column
 cuts (6 active)  in 0.037 seconds - new frequency is 1
Cbc0014I Cut generator 2 (Knapsack) - 5 row cuts average 5.6 elements, 0 column
cuts (0 active)  in 0.008 seconds - new frequency is 1
Cbc0014I Cut generator 3 (Clique) - 0 row cuts average 0.0 elements, 0 column cu
ts (0 active)  in 0.002 seconds - new frequency is -100
Cbc0014I Cut generator 4 (MixedIntegerRounding2) - 71 row cuts average 234.0 ele
ments, 0 column cuts (0 active)  in 0.074 seconds - new frequency is 1
Cbc0014I Cut generator 5 (FlowCover) - 8 row cuts average 2.0 elements, 0 column
 cuts (0 active)  in 0.039 seconds - new frequency is -100
Cbc0014I Cut generator 6 (TwoMirCuts) - 57 row cuts average 179.1 elements, 0 co
lumn cuts (0 active)  in 0.039 seconds - new frequency is 1
Cbc0014I Cut generator 8 (Stored from first) - 12 row cuts average 166.9 element
s, 0 column cuts (0 active)
Cbc0010I After 0 nodes, 1 on tree, 4028.1 best solution, best possible 4026.84 (
56.02 seconds)
Cbc0012I Integer solution of 4027.85 found by rounding after 215 iterations and
1 nodes (56.04 seconds)
Cbc0038I Full problem 162 rows 1425 columns, reduced to 4 rows 12 columns
Cbc0038I Full problem 162 rows 1425 columns, reduced to 4 rows 10 columns
Cbc0010I After 100 nodes, 57 on tree, 4027.85 best solution, best possible 4026.
84 (57.57 seconds)
Cbc0010I After 200 nodes, 106 on tree, 4027.85 best solution, best possible 4026
.84 (59.06 seconds)
Cbc0038I Full problem 162 rows 1425 columns, reduced to 3 rows 9 columns
Cbc0010I After 300 nodes, 146 on tree, 4027.85 best solution, best possible 4026
.84 (60.42 seconds)
Cbc0038I Full problem 162 rows 1425 columns, reduced to 4 rows 11 columns
Cbc0010I After 400 nodes, 203 on tree, 4027.85 best solution, best possible 4026
.84 (61.44 seconds)
Cbc0010I After 500 nodes, 260 on tree, 4027.85 best solution, best possible 4026
.84 (62.48 seconds)
Cbc0010I After 600 nodes, 313 on tree, 4027.85 best solution, best possible 4026
.84 (63.80 seconds)


 		 	   		  

_______________________________________________
Cbc mailing list
Cbc at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/cbc 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/cbc/attachments/20160321/8d976b44/attachment-0001.html>


More information about the Cbc mailing list