pivot and shift – a mixed integer programming heuristic egon balas and chris wallace

Post on 18-Jan-2016

219 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Pivot and Shift – A Mixed Integer Programming HeuristicEgon Balas and Chris Wallace

History

Pivot and Complement: A Heuristic for 0-1Prog-ramming (E. Balas and C. Martin, Man. Sci 1980) Pure 0/1 programming. Fortran implementation with own LP code

Pivot and Shift, 1986 (E. Balas and C. Martin 1986) Mixed 0/1 and general integer. Fortran implementation with own LP code

S. Schmieta 2001 conversion of 1986 Fortran code to C++ using Xpress LP code

E. Balas and C. Wallace 2003 modified pivots / shifts and included neighborhood search through MIP solver

Introduction to Pivot and Shift

Rounding procedure with three phases Initialization

Search phase

Improvement phase

Search Phase

Quick rounding attempt, then

Pivots/shifts of several types : Type 0 - pivots out basic integer variables

Type 1- reduces the number of basic integer variables

Type 2- improves objective while not increasing integer infeasibility

Type 3-reduces integer infeasibility, ZI

min { d xi e –xi, xi-b xi c }ZI= i 2 I

Search Phase Continued

Type 0

n

Type 1

Round

Type 3

Type 2

No type 3 foundNeighborhood

searchStop

y

Search Phase- Small Neighborhood Search

min { d xi e –xi, xi-b xi c } S={ i 2 I : < }

i2 S b xi+0.5c <x(S)> =

Add the constraints:

<x(S)> - 1 x(S) <x(S)> + 1

Use Mip solver to find a solution

For small neighborhood search

Improvement Phase

Use reduced costs to fix variables

Single, Double and Triple Shifts

Large Neighborhood Search

Improvement Phase: Shifts

Fix all integer variables to best value and optimize continuous variables

Make integer variables nonbasic

Check all possible single and double shifts.

Improvement Phase:Large Neighborhood Search

Neighborhood search with constant changed from 1 to 5

<x(S)> - 5 x(S) <x(S)> + 5

Comparison

Xpress 14.2 vs Xpress 14.2 with pivot and shift

Xpress 14.2 with pivot and shift Run pivot and shift search phase at start to find

initial solution (5 second time limit)

Call Xpress MIP solver

After each solution found by Xpress, use improvement phase (30 second limit)

Instances used in Comparison

Only MIP’s which required more than 20 minutes

MIPs from three collections MIPLIB

Hans Mittelmann collection

Local Branching by M. Fischetti and A. Lodi

Stein81, Stein135, Stein243

MIPLIB Arki001, Danoint, Dano3mip, Fast0507, Harp2,

Markshare1, Markshare2, Mas74, Mkc, Noswot, Set1ch, Seymour, Swath

Hans Mittelmann collection Acctight4, Bc, Bc1, Bienst2, Binkar10_1, Dano3_5,

Markshare2_1, Mkc1,N3700, N3701,…,N370e, Neos6, Neos7, Neos9, Neos13, Neos14, Neos15, Ran14x18, Ran14x18_1, Ran16x16, Seymour1

M. Fischetti and A. Lodi A1c1s1, A2c2s2, B1c1s1, B2c1s2, Glass4, Nsr8k,

Nsrand_ipx, Rail507, Rail2586c, Rail2636c, Rail4284c, Rail4872c, Roll3000, Sp97ar,Sp97ic, Sp98ar, Sp98ic, Tr1203-, Umts, Van

Results Xpress 14.2

Xpress with PS

ONLY 0 6 BEST 8 39 FIRST 7 8

ONLY- Only this code found a solution BEST- This code found the best solution

(without ties) FIRST- In case of ties, this code found the

best solution first

SeymourTime Xpress

14.2 Xpress with PS

9.6 776 9.6 771

229.9 432 234.6 432 247.5 432 242.2 430 518.5 431 902.1 427 904.3 426 937.4 430

1200.0 430 426

•Source: MIPLIB

•Rows - 4944

•Cols - 1372

•0/1 - 1372

•Comment:

Set Covering

Time Xpress 14.2

Xpress with PS

4.2 1342560 11.1 1342211 11.2 1334471 14.3 1333929 17.1 1333769

.

.

. 938.9 1695345

1200.0 1695345 1333769

N3700

•Source:

M. Sun et al

•Rows - 5150

•Cols - 10000

•0/1 - 5000

•Comment:

Fixed charge

network flow

N3701

•Source:

M. Sun et al

•Rows - 5150

•Cols - 10000

•0/1 - 5000

•Comment:

Fixed charge

network flow

Time Xpress 14.2

Xpress with PS

4.3 1310970 10.0 1310596 12.7 1310515

.

.

. 1069 1601892

1200.0 1601982 1310515

N370c•Source:

M. Sun et al

•Rows - 5150

•Cols - 10000

•0/1 - 5000

•Comment:

Fixed charge

network flow

Time Xpress 14.2

Xpress with PS

4.1 1343749 13.1 1343672 16.9 1343672 16.9 1343598

.

.

. 840.5 1448469 1200 1448469 1343698

Sp97ic Time Xpress 14.2 Xpress with PS

144.2 450780795.36 163.8 450780795.36 172.6 449603831.84 173.8 447332172.96 174.9 445731264.0 176.1 444553684.48 177.4 444075509.6 178.6 444001910.88 179.7 442866081.44

.

.

. 1200.0 450780795.36 442866082.14

•Source:

J. Goosens et al

(2001)

•Rows - 1033

•Cols - 12497

•0/1 - 12497

•Comment:

Railway line

planning

Sp98ic Time Xpress 14.2 Xpress with PS

190.1 521407347.36 209.0 521407347.36 216.0 509176683.04 216.8 505632081.12 218.7 491042673.92 219.5 488667256.16 223.3 482463814.88 246.2 478597018.56 391.4 465282826.56 682.5 475812997.44 684.4 474622322.56 685.7 472719763.68

1086.1 467412638.24 1088.3 461222600.64 1200.0 465282826.56 461222600.64

•Source:

J. Goosens et al

(2001)

•Rows - 825

•Cols - 10894

•0/1 - 10894

•Comment:

Railway line

planning

Time Xpress 14.2

Xpress with PS

119.0 566 157.5 565 157.6 564

. . . 346.8 200 347.0 199

1200.0 No solution 199

Rail507•Source:

A. Caprara et al

(1999)

•Rows - 509

•Cols - 63019

•0/1 - 63019

•Comment:

Railway crew

scheduling

Rail2536cTime Xpress

14.2 Xpress

with PS 185.5 2916 210.6 2914 211.0 2912

. . . 639.0 1078 639.3 1076

1200.0 No solution 1076

•Source:

A. Caprara et al

(1999)

•Rows - 2539

•Cols - 15293

•0/1 - 15284

•Comment:

Railway crew

scheduling

B2c1s1•Source:

Pochet et al

(2001)

•Rows - 3904

•Cols - 3872

•0/1 - 233

•Comment:

Lot Sizing

Time Xpress 14.2 Xpress with PS

1.0 70651.01 1.2 70575.52

40.0 31578.64 43.4 31578.64 72.8 30909.52

250.0 30479.07 295.0 27500.22 336.4 30296.40 369.9 29921.44 426.5 28207.02

1200.0 28207.02 27500.22

Binkar10_1Time Xpress

14.2 Xpress with PS

4.9 7017.58 7.4 6977.45 9.6 7017.58 9.8 6877.39

10.0 7014.44 10.0 7004.32 10.7 6993.37 12.8 6933.42 13.0 6932.92 13.2 6781.95 13.9 6915.83 14.7 6910.47 20.5 6855 20.7 6851.86 20.8 6836.98

Time Xpress 14.2

Xpress with PS

25.6 6782.02 28.7 6777.45 35.3 6779.18 42.0 6777.41 42.7 6765.69 44.7 6756.26 60.0 6777.07 60.2 6775.08 60.2 6771.95 60.9 6747.89 61.4 6742.2

268.8 6746.44 1022.8 6745.57 1053.0 6742.2 1200.0 6742.2 6742.2

•Source- Neos•Rows - 1026

•Cols - 2298•0/1 - 170

Roll3000Time Xpress

14.2 Xpress

with PS 76.3 16954 81.3 16954

104.1 13330 109.8 16682 118.6 15319 147.5 13330 170.1 13222 808.2 13182

1184.0 13155 1187.7 12936 1200.0 13182 12936

•Source:

Fischetti and Lodi

(2002)

•Rows - 2295

•Cols - 1166

•0/1 - 246

•Cont - 428

•Comment:

Railway stock

and line planning

Questions

Hans Mittelmann collection

M. Walser ,G. Nemhauser, M. Trick Acc Basketball conference scheduling

Acctight series- Acctight4

M. Sun, J. Aronson, P. McKeown, D. Drinka Fixed charge transportation problems

N3700 series: N3700,n3701,… n3709, n370a,…,n370e

Ran series: Ran14x18, ran14x18_1, ran16x16

Hans Mittelmann collectioncontinued

Argonne National Laboratory Neos series: neos6-neos9, neos13-

neos15

Bc,Bc1, Binkar10_1

Remaining unreferencedBienst2, Dano3_5, Markshare2_1, Mkc1,

Seymour1

Fischetti and Lodi

P. Belotti : Network design Net12

Double-Click sas: Crew scheduling Nrsr8k, Biella1

I. Luzzi : nesting Glass 4

C.Polo, C. Mannino, E. Parello: telecommnunication designUmts, Van

Fischetti & Lodi Continued

M. Van Vyve, Y. Pochet: Lot sizing A1c1s1, a2c1s2 , b1c1s1, b2c1s1, tr12-30

L. Kroon: Rolling stock and line planningRoll3000, Nsrand_ipx

A. Caprara, M. Fischetti, P. Toth: Railway crew schedulingRail507, rail2636c, rail2586c, rail4284c, rail4872c

J. Gooesens, S. van Hoesel, L. Kroon: Railway line planningSp97ar, sp97ic, sp98ar, sp98ic

top related