Loading in 5 sec....

A New Generation of Mixed-Integer Programming CodesPowerPoint Presentation

A New Generation of Mixed-Integer Programming Codes

- 72 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about ' A New Generation of Mixed-Integer Programming Codes' - eve-le

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

### A New GenerationofMixed-Integer Programming Codes

Robert E. Bixby

and

Mary Fenelon, Zongao Gu, Javier Lafuente, Ed Rothberg, Roland Wunderling

ILOG, Inc

CPAIOR ‘02

Outline

- LP
- Overview
- Computational results

- MIP
- Examples
- Historical view
- Features
- Computational results
- One more example -- future

CPAIOR ‘02

LP

CPAIOR ‘02

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)

CPAIOR ‘02

Progress: 1988 – Present

- Algorithms
- Simplex algorithms 960x
- Simplex + barrier algorithms 2360x

- Machines
- Simplex algorithms 800x
- Barrier algorithms 13000x

Total: Over 2000000x

CPAIOR ‘02

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

Key: Ratio > 1 means denominator better

CPAIOR ‘02

MIP

CPAIOR ‘02

Example 1: LP still can be HARDSGM: Schedule Generation Model157323 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.

CPAIOR ‘02

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

CPAIOR ‘02

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

- 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!

CPAIOR ‘02

Example 3:A typical situation – Supply-chain scheduling

- 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

CPAIOR ‘02

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 6.5:

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)

MIP

Supply-chain scheduling (continued):

Solving the fixed model

Original model: Now solves in 2 hours

(20% improvement in solution quality)

CPAIOR ‘02

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

Computational History:1950 –1998CPAIOR ‘02

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:

xj ( uj) y, y = 0/1

xjujy (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

1998…A new generation of MIP codesCPAIOR ‘02

Gomory Mixed Cut

- Given y, xjZ+, and
y + aijxj = d = d + f, f > 0

- Rounding: Where aij = aij + fj, define
t = y + (aijxj: fj f) + (aijxj: fj > f) Z

- Then
(fj xj: fj f) + (fj-1)xj: fj > f) = d - t

- Disjunction:
t d(fjxj : fj f) f

t d((1-fj)xj: fj > f) 1-f

- Combining:
((fj/f)xj: fj f) + ([(1-fj)/(1-f)]xj: fj > f) 1

CPAIOR ‘02

Computing Gomory Mixed Cuts

- Make a an ordered list of “sufficiently” fractional variables.
- Take the first 100. Compute corresponding tableau rows. Reject if coeff. range too big.
- Add to LP.
- Repeat twice.
- Computed only at root. Slack cuts purged at end of root computation.

CPAIOR ‘02

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%)

CPAIOR ‘02

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

CPAIOR ‘02

Computational Results III:78 ModelsCPLEX 5.0 not solvableCPLEX new solvable < 1000 seconds

- No cuts33.3x
- No presolve7.7x
- Old variable selection2.7x
- CPLEX 5.0 presolve2.6x
- Node presolve1.3x
- Heuristics 1.1x
- Dive probing1.1x

CPAIOR ‘02

Example:Network Design (France Telecom – C. Le Pape & L. Perron)

- Construct a virtual private networks
- Determine routes
- Determine capacities

- 6 additional constraints: 64 = 26 possibilities
- Limit traffic at each node
- Limit # of arcs in and out of nodes
- Limit # of jumps
- Symmetry constraint
- 2-line constraint
- Security constraint

- 10 minute solve time limit

CPAIOR ‘02

CPLEX solve times (France Telecom):

CPLEX 8.0: Default

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: Tuned with “mip emphasis” (4 processors)

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

CPAIOR ‘02

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

CPAIOR ‘02

Download Presentation

Connecting to Server..