gomory cuts

30
Gomory Cuts Updated 25 March 2009

Upload: ailish

Post on 11-Jan-2016

66 views

Category:

Documents


1 download

DESCRIPTION

Gomory Cuts. Updated 25 March 2009. Example ILP. Example taken from “Operations Research: An Introduction” by Hamdy A. Taha (8 th Edition). Example ILP in Standard Form. Linear Programming Relaxation. LP Relaxation: Final Tableau. Row 1 Equation for x 2. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Gomory Cuts

Gomory Cuts

Updated 25 March 2009

Page 3: Gomory Cuts

Example ILP in Standard Form

integer and 0,,,

357

63s.t.

107max

4321

421

321

21

xxxx

xxx

xxx

xxz

3

Page 4: Gomory Cuts

Linear Programming Relaxation

0,,,

357

63s.t.

107max

4321

421

321

21

xxxx

xxx

xxx

xxz

4

Page 5: Gomory Cuts

LP Relaxation: Final Tableau

1

2

4321

21422

322

10102

21322

122

71001

216622

3122

630010

BVRHSRow

x

x

z

xxxxz

5

Page 6: Gomory Cuts

Row 1 Equation for x2

2

13

22

1

22

7432 xxx

3integer and 0 22 xx

2

1

22

1

22

743 xx

Every feasible ILP solution satisfies this constraint.Cuts off the continuous LP optimum (4.5, 3.5).

6

Page 7: Gomory Cuts

Row 2 Equation for x1

2

14

22

3

22

1431 xxx

2

14

22

3

22

211 431

xxx

22

211

22

1complement

7

Page 8: Gomory Cuts

Row 2 Equation for x1

2

14

22

3

22

211 431

xxx

2

14

22

3

22

214331 xxxx

2

14

22

3

22

214331

xxxx

8

Page 9: Gomory Cuts

Row 2 Equation for x1

4negativity-non andy integralit 31 xx

2

1

22

3

22

2143 xx

2

14

22

3

22

214331

xxxx

Every feasible ILP solution satisfies this constraint.Cuts off the continuous LP optimum (4.5, 3.5).

9

Page 10: Gomory Cuts

Equation for z

2

166

22

31

22

6343 xxz

2

166

22

91

22

192 43

xxz

2

166

22

9

22

192 4343

xxxxz

10

Page 11: Gomory Cuts

Equation for z

2

166

22

9

22

192 4343

xxxxz

2

1

22

9

22

1943 xx

Every feasible ILP solution satisfies this constraint.Cuts off the continuous LP optimum (4.5, 3.5).

11

Page 12: Gomory Cuts

General Form of Gomory Cuts

2

166

22

9

22

192 4343

xxxxz

2

14

22

3

22

214331

xxxx

2

13

22

1

22

7432

xxx

12

Page 13: Gomory Cuts

General Form of Gomory Cuts

2

14

22

3

22

214331

xxxx

Integer Part

Fractional Part

13

Page 14: Gomory Cuts

General Form of Gomory Cuts

fxffIxfxcn

iii

n

iii

n

iii

111

Integer Part

For each variable xi, ci is an integer and 0 fi < 1.On the right-hand side, I is an integer and 0 < f < 1.

Fractional Part

Gomory Cut

14

Page 15: Gomory Cuts

Comments on Gomory Cuts

• Also called fractional cuts• Assume all variables are integer and non-negative• Apply to pure integer linear programs with

integer coefficients • Strengthen linear programming relaxation of ILP

by restricting the feasible region• “Outline of an algorithm for integer solutions to

linear programs” by Ralph E. Gomory. Bull. Amer. Math. Soc. Volume 64, Number 5 (1958), 275-278.

15

Page 16: Gomory Cuts

Cutting Plane Algorithm for ILP

1. Solve LP Relaxation with the Simplex Method

2. Until Optimal Solution is Integral Do– Derive a Gomory cut from the Simplex tableau– Add cut to tableau– Use a Dual Simplex pivot to move to a feasible

solution

16

Page 17: Gomory Cuts

Cutting Plane Algorithm Example: Cut 1

2

13

22

1

22

7432

xxx

2

1

22

1

22

743 xx

2

1

22

1

22

7543 xxx

17

Page 18: Gomory Cuts

Cutting Plane Algorithm Example: Cut 1

5

1

2

54321

21122

122

70003

214022

322

10102

213022

122

71001

2166022

3122

630010

BVRHSRow

x

x

x

z

xxxxxz

18

Page 19: Gomory Cuts

Dual Simplex Method

1. Select a basic variable with a negative value in the RHS column to leave the basis

2. Let r be the row selected in Step 1

3. Select a non-basic variable j to enter the basis such that

a) The entry in row r of column j, arj, is negative

b) The ratio -a0j /arj is minimized

4. Pivot on entry in row r of column j.

19

Page 20: Gomory Cuts

Cutting Plane Algorithm Example: Cut 1

5

1

2

54321

21122

122

70003

214022

322

10102

213022

122

71001

2166022

3122

630010

BVRHSRow

x

x

x

z

xxxxxz

20

Page 21: Gomory Cuts

Cutting Plane Algorithm Example: Cut 1

3

1

2

54321

7417

227

110003

7447

17

100102

31001001

629100010

BVRHSRow

x

x

x

z

xxxxxz

21

Page 22: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

3

1

2

54321

7417

227

110003

7447

17

100102

31001001

629100010

BVRHSRow

x

x

x

z

xxxxxz

22

Page 23: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

7

44

7

61

7

1541

xxx

7

44

7

6

7

15451

xxxx

7

44

7

6

7

15541 xxxx

23

Page 24: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

7

44

7

6

7

15451

xxxx

7

4

7

6

7

154 xx

7

4

7

6

7

1654 xxx

24

Page 25: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

7

44

7

6

7

15451

xxxx

7

1 Row32 Row4

21

52

51

xx

xxxx

25

Page 26: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

6

3

1

2

654321

7417

67

100004

74107

227

110003

74407

17

100102

301001001

6209100010

BVRHSRow

x

x

x

x

z

xxxxxxz

26

Page 27: Gomory Cuts

Cutting Plane Algorithm Example: Cut 2

6

3

1

2

654321

476100004

114010003

411000102

301001001

5873000010

BVRHSRow

x

x

x

x

z

xxxxxxz

Optimal ILP Solution: x1 = 4, x2 = 3, and z =5827

Page 28: Gomory Cuts

LP Relaxation: Graphical Solutionx2

x1

1

2

3

1 2 3 4 5

4 Optimal Solution: (4.5, 3.5)

28

Page 29: Gomory Cuts

LP Relaxation with Cut 1x2

x1

1

2

3

1 2 3 4 5

4

Optimal Solution: (4 4/7, 3)

29

Page 30: Gomory Cuts

LP Relaxation with Cuts 1 and 2x2

x1

1

2

3

1 2 3 4 5

4

Optimal Solution: (4, 3)

30