chapter 9 integer programming part 2 - ieu.edu.tr

31
Chapter 9 Integer Programming Part 2 Assoc. Prof. Dr. Arslan M. ÖRNEK 1

Upload: others

Post on 14-Apr-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Chapter 9 Integer Programming

Part 2 Assoc. Prof. Dr. Arslan M. ÖRNEK

1

Page 2: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

2

9.3. Branch-and-Bound Method (Pure IP)

• Branch-and-Bound methods find the optimal solution to an IP by efficiently enumerating the points in a subproblem’s feasible region.

• IMPORTANT OBSERVATION: If you solve the LP relaxation of a pure IP and obtain a solution in which all variables are integers, then the optimal solution to the LP relaxation is also the optimal solution to the IP.

Page 3: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

3

9.3. Branch-and-Bound Method (Pure IP)

• The Telfa Corporation manufactures tables and chairs.

• A table requires 1 hour of labor and 9 square board feet of wood, and a chair requires 1 hour of labor and 5 square board feet of wood.

• Currently, 6 hours of labor and 45 square board feet of wood are available.

• Each table contributes $8 to profit, and each chair contributes $5 to profit.

• Formulate and solve an IP to maximize Telfa’s profit.

Page 4: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

4

9.3. Branch-and-Bound Method (Pure IP)

Page 5: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

5

9.3. Branch-and-Bound Method (Pure IP)

Upper bound

Page 6: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

6

9.3. Branch-and-Bound Method (Pure IP)

• Chose any variable that is fractional at the moment.

• Let’s chose x1:

• At the optimal solution it can be either <=3 or >=4.

• We partition the solution space by branching on this variable.

• Two new subproblems:

Page 7: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

7

9.3. Branch-and-Bound Method (Pure IP)

• Chose a subproblem to solve (arbitrarily):

• Subproblem 2 LP relaxation:

Page 8: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

8

9.3. Branch-and-Bound Method (Pure IP)

A node of the

branch and

bound tree

An arc of the

branch and

bound tree

Solution not

integer, branch

on x2

Page 9: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

9

9.3. Branch-and-Bound Method (Pure IP)

Chose this node to

solve (LIFO):

Infeasible –

Fathomed.

Then,

chose this

node

Page 10: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

10

9.3. Branch-and-Bound Method (Pure IP)

Upper bound

Subproblem 5:

Page 11: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

11

9.3. Branch-and-Bound Method (Pure IP)

Page 12: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

12

9.3. Branch-and-Bound Method (Pure IP)

Lower bound on

the original IP:

Incumbent

Solution

Page 13: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

13

9.3. Branch-and-Bound Method (Pure IP)

NEW Lower bound

on the original IP

New Incumbent

Solution

Page 14: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

14

9.3. Branch-and-Bound Method (Pure IP)

• Only remaining subproblem:

• Subproblem 3: Solve LP relaxation:

This is smaller than the current LB , so fathom.

Page 15: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

15

9.3. Branch-and-Bound Method (Pure IP)

Incumbent

Solution =

Best LB =

Optimal

Solution

Page 16: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

16

9.3. Branch-and-Bound Method (Pure IP)

Page 17: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

17

9.4. Branch-and-Bound Method (Mixed IP)

• In a mixed IP, some variables are required to be integers and others are allowed to be either integers or nonintegers.

• Branch only on variables that are required to be integers.

Optimal solution of the LP-relaxation:

Page 18: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Branch-and-Bound Method (Binary Prog.)

18

Page 19: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example: Bounding

19

Page 20: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example: Bounding

20

Page 21: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example: Fathoming • A subproblem can be fathomed in three ways:

1. LP relaxation of the subproblem gives an integer solution, so we do not need to branch further, the subproblem is solved optimally.

21

Page 22: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example: Fathoming

• A subproblem can be fathomed in three ways:

2. A subproblem is fathomed if its bound ≤ incumbent soln.

Ex. Since Z*=9, there is no need to consider any solution whose bound is below 9.

22

Page 23: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example: Fathoming

• A subproblem can be fathomed in three ways:

3. If a subproblem’s LP relaxation has no feasible solution, then the subproblem itself must have no feasible solutions, so it can be dismissed (fathomed).

23

Page 24: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued – Iteration 2

24

Page 25: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued – Iteration 2

Cannot fathom.

Cannot fathom. 25

Page 26: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued – Iteration 2

Resulting solution tree after iteration 2:

26

Page 27: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued- Iteration 3

27

Page 28: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued – Iteration 3

Resulting solution tree after iteration 3:

28

Page 29: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued- Iteration 4

New incumbent!

29

Page 30: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

Prototype Example continued – Iteration 3

Resulting solution tree after iteration 4 (final):

30

Page 31: Chapter 9 Integer Programming Part 2 - ieu.edu.tr

B&B for Minimization Problems

31