Presentation is loading. Please wait.

Presentation is loading. Please wait.

23 March 2002CPAIOR ‘021 A New Generation of Mixed-Integer Programming Codes Mary Fenelon, Zongao Gu, Javier Lafuente, Ed Rothberg, Roland Wunderling ILOG,

Similar presentations


Presentation on theme: "23 March 2002CPAIOR ‘021 A New Generation of Mixed-Integer Programming Codes Mary Fenelon, Zongao Gu, Javier Lafuente, Ed Rothberg, Roland Wunderling ILOG,"— Presentation transcript:

1 23 March 2002CPAIOR ‘021 A New Generation of Mixed-Integer Programming Codes Mary Fenelon, Zongao Gu, Javier Lafuente, Ed Rothberg, Roland Wunderling ILOG, Inc Robert E. Bixby and

2 23 March 2002CPAIOR ‘022 Outline LP –Overview –Computational results MIP –Examples –Historical view –Features –Computational results –One more example -- future

3 23 March 2002CPAIOR ‘023 LP

4 23 March 2002CPAIOR ‘024 A linear program ( LP ) is an optimization problem of the form LP

5 23 March 2002CPAIOR ‘025 What’s the biggest change? 1988 – One algorithm for LP –Primal simplex (Dantzig, 1947) Today – Three algorithms for LP –Primal simplex –Dual simplex (Lemke, 1954) –Barrier (Karmarkar, 1984) LP

6 23 March 2002CPAIOR ‘026 Progress: 1988 – Present Algorithms –Simplex algorithms 960x –Simplex + barrier algorithms2360x Machines –Simplex algorithms 800x –Barrier algorithms 13000x LP Total: Over 2000000x

7 23 March 2002CPAIOR ‘027 Algorithm Comparison Size Prim/ Dual/ Bar/ (#rows) #Models Dual Bar Simp > 0 680 1.5 1.1 1.1 > 10000 248 2.0 1.0 1.2 >100000 73 2.1 1.6 0.9 LP Key: Ratio > 1 means denominator better

8 23 March 2002CPAIOR ‘028 MIP

9 23 March 2002CPAIOR ‘029 A mixed-integer program ( MIP ) is an optimization problem of the form LP

10 23 March 2002CPAIOR ‘0210 Example 1: LP still can be HARD SGM: Schedule Generation Model 157323 rows, 182812 columns, 6348437 nzs LP relaxation at root node: –Barrier: Solve time estimate 3-6 days. –Primal steepest edge: 64,000 seconds Branch-and-bound –368 nodes enumerated, infeasibility reduced by 3x. –Time: 2 weeks. Currently “solved” by decomposition. MIP

11 23 March 2002CPAIOR ‘0211 Example 2: MIP really is HARD A Customer Model: 44 cons, 51 vars, 167 nzs, maximization 51 general integer variables (inf. bounds) Branch-and-Cut: Initial integer solution -2186.0 Initial upper bound -1379.4 …after 120,000 seconds, 32,000,000 B&C nodes, 5.5 Gig tree Integer solution and bound: UNCHANGED MIP

12 23 March 2002CPAIOR ‘0212 Example 2 (cont.): Avoid structures like Maximize x + y + z Subject To 2 x + 2 y  1 z = 0 x free y free x,y integer MIP Note: This problem can be solved in several ways Euclidean reduction on the constraint [Presolve] Removing z=0, objective is integral [Presolve] Bounds on variables (==> local cuts) However: Branch-and-bound cannot solve!

13 23 March 2002CPAIOR ‘0213 Model description: –Weekly model (repeated), daily buckets: Objective to minimize end-of-day inventory. –Production (single facility), inventory, shipping (trucks), wholesalers (demand known) Initial modeling phase –Simplified prototype + complicating constraints (consecutive day production, min truck constraints) –RESULT: Couldn’t get good feasible solutions. Decomposition approach –Talk to manual schedulers: They first decide on “producibles” schedule. Simulate using Constraint Programming. –Fixed model: Fix variables and run MIP Example 3: A typical situation – Supply-chain scheduling MIP

14 23 March 2002CPAIOR ‘0214 Integer optimal solution (0.0001/0): Objective = 1.5091900536e+05 Current MIP best bound = 1.5090391809e+05 (gap = 15.0873) Solution time = 3465.73 sec. Iterations = 7885711 Nodes = 489870 (2268) CPLEX 5.0: Implied bound cuts applied: 55 Flow cuts applied: 200 Integer optimal solution (0.0001/1e-06): Objective = 1.5091904146e+05 Current MIP best bound = 1.5090843265e+05 (gap = 10.6088, 0.01%) Solution time = 1.53 sec. Iterations = 3187 Nodes = 58 (2) CPLEX 6.5: Supply-chain scheduling (continued): Solving the fixed model MIP Original model: Now solves in 2 hours (20% improvement in solution quality)

15 23 March 2002CPAIOR ‘0215 Computational History: 1950 –1998 1954 Dantzig, Fulkerson, S. Johnson: 42 city TSP –Solved to optimality using cutting planes and solving LPs by hand 1957 Gomory –Cutting plane algorithm: A complete solution 1960 Land, Doig, 1965 Dakin –B&B 1971 MPSX/370, Benichou et al. 1972 UMPIRE, Forrest, Hirst, Tomlin (Beale) –SOS, pseudo-costs, best projection, … 1972 – 1998 Good B&B remained the state-of-the-art in commercial codes, in spite of –1973 Padberg –1974 Balas (disjunctive programming) –1983 Crowder, Johnson, Padberg: PIPX, pure 0/1 MIP –1987 Van Roy and Wolsey: MPSARX, mixed 0/1 MIP –Grötschel, Padberg, Rinaldi …TSP (120, 666, 2392 city models solved) MIP

16 23 March 2002CPAIOR ‘0216 1998… A new generation of MIP codes Linear programming –Stable, robust performance Variable/node selection –Probing on dives (strong branching) Primal heuristics –8 different tried at root (one new one is local improvement) –Retried based upon success Node presolve –Fast, incremental bound strengthening Presolve –Probing in constraints:  x j  (  u j ) y, y = 0/1  x j  u j y (for all j) Cutting planes –Gomory, knapsack covers, flow covers, mix-integer rounding, cliques, GUB covers, implied bounds, path cuts, disjunctive cuts –New features Extensions of knapsacks Aggregation for flow covers and MIR MIP

17 23 March 2002CPAIOR ‘0217 Gomory Mixed Cut Given y, x j  Z +, and y +  a ij x j = d =  d  + f, f > 0 Rounding: Where a ij =  a ij  + f j, define t = y +  (  a ij  x j : f j  f) +  (  a ij  x j : f j > f)  Z Then  (f j x j : f j  f) +  (f j -1)x j : f j > f) = d - t Disjunction: t   d    (f j x j : f j  f)  f t   d    ((1-f j )x j : f j > f)  1-f Combining:  ((f j /f)x j : f j  f) +  ([(1-f j )/(1-f)]x j : f j > f)  1 MIP

18 23 March 2002CPAIOR ‘0218 Computing Gomory Mixed Cuts 1.Make a an ordered list of “sufficiently” fractional variables. 2.Take the first 100. Compute corresponding tableau rows. Reject if coeff. range too big. 3.Add to LP. 4.Repeat twice. 5.Computed only at root. Slack cuts purged at end of root computation. MIP

19 23 March 2002CPAIOR ‘0219 Computational Results I: 964 models Ran for 100,000 seconds (defaults) –CPLEX 5.0: Failed to solve 426 (44%) –CPLEX 8.0: Failed to solve 254 (26 %) Among not solved (with CPLEX 8.0) –109 had gap < 10% –65 had no integral solution (7%) With “mip emphasis feasibility”: 19 found no feasible solution (2.0%) MIP

20 23 March 2002CPAIOR ‘0220 Computational Results II: 651 models (all solvable) Ran for 100,000 seconds (defaults) Relative speedups: –All models (651): 12x –CPLEX 5.0 > 1 second(447): 41x –CPLEX 5.0 > 10 seconds (362): 87x –CPLEX 5.0 > 100 seconds(281): 171x MIP

21 23 March 2002CPAIOR ‘0221 Computational Results III: 78 Models CPLEX 5.0 not solvable CPLEX new solvable < 1000 seconds No cuts 33.3x No presolve 7.7x Old variable selection 2.7x CPLEX 5.0 presolve 2.6x Node presolve 1.3x Heuristics 1.1x Dive probing 1.1x MIP

22 23 March 2002CPAIOR ‘0222 Example: Network Design (France Telecom – C. Le Pape & L. Perron) Construct a virtual private networks –Determine routes –Determine capacities 6 additional constraints: 64 = 2 6 possibilities 1.Limit traffic at each node 2.Limit # of arcs in and out of nodes 3.Limit # of jumps 4.Symmetry constraint 5.2-line constraint 6.Security constraint 10 minute solve time limit MIP

23 23 March 2002CPAIOR ‘0223 CPLEX solve times (France Telecom): GUB cover cuts applied: 328 Cover cuts applied: 1290 Gomory fractional cuts applied: 2 Integer optimal solution: Objective = 1.6461200000e+05 Solution time = 525181.51 sec. Iterations = 469805329 Nodes = 3403990 10 Minutes: 34% gap CPLEX 8.0: Default GUB cover cuts applied: 803 Cover cuts applied: 807 Gomory fractional cuts applied: 12 Integer optimal, tolerance (0.0001/1e-06) : Objective = 1.6461200000e+05 Current MIP best bound = 1.6459555512e+05 (gap = 16.4449, 0.01%) Solution time = 9275.43 sec. Iterations = 26528289 Nodes = 241051 (4219) 10 Minutes: 10% gap CPLEX 8.0: Tuned with “mip emphasis” (4 processors) MIP

24 23 March 2002CPAIOR ‘0224 Faster integral solutions (France Telecom) : Constraint Programming Approach –Build greedy initial solution. –“Sliced based search” to improve solution (Goals & propogation) Results compared to CP approach –33 cases CPLEX gives no integral solution –31 remaining: 18 in which CPLEX produces better solutions Now possible in CPLEX –Advanced presolve (to use original problem representation) –Concert technology (ILOG Solver-style modeling) –Implemented local cuts –Implemented ILOG Solver-style goals MIP


Download ppt "23 March 2002CPAIOR ‘021 A New Generation of Mixed-Integer Programming Codes Mary Fenelon, Zongao Gu, Javier Lafuente, Ed Rothberg, Roland Wunderling ILOG,"

Similar presentations


Ads by Google