Lecture21

Lecture21 - Introduction to Mathematical Programming IE406...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2
Background image of page 2
IE406 Lecture 21 2 Branch and Bound Branch and bound is the most commonly-used algorithm for solving MILPs. It is a divide and conquer approach. Suppose F is the feasible region for some MILP and we wish to solve min x F c ± x . Consider a partition of F into subsets F 1 , . . . F k . Then min x F c ± x = min { 1 i k } { min x F i c ± x } In other words, we can optimize over each subset separately. Idea : If we can’t solve the original problem directly, we might be able to solve the smaller subproblems recursively. Dividing the original problem into subproblems is called branching . Taken to the extreme, this scheme is equivalent to complete enumeration.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
IE406 Lecture 21 3 Branch and Bound Next, we discuss the role of bounding . For the rest of the lecture, assume all variables have finite upper and lower bounds. Any feasible solution to the problem provides an upper bound u ( F ) on the optimal solution value. We can use approximate methods to obtain an upper bound. Idea : After branching, try to obtain a lower bound b ( F i ) on the optimal solution value for each of the subproblems. If b ( F i ) u ( F ) , then we don’t need to consider subproblem i . One easy way to obtain a lower bound is by solving the LP relaxation obtained by dropping the integrality constraints.
Background image of page 4
IE406 Lecture 21 4 LP-based Branch and Bound In LP-based branch and bound , we first solve the LP relaxation of the original problem. The result is one of the following: 1. The LP is infeasible MILP is infeasible . 2. We obtain a feasible solution for the MILP optimal solution . 3. We obtain an optimal solution to the LP that is not feasible for the MILP lower bound . In the first two cases, we are finished . In the third case, we must branch and recursively solve the resulting subproblems.
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
IE406 Lecture 21 5 Branching in LP-based Branch and Bound The most common way to branch is as follows: Select a variable i whose value ˆ x i is fractional in the LP solution. Create two subproblems. * In one subproblem, impose the constraint x i ≤ ± ˆ x i ² . * In the other subproblem, impose the constraint x i ≥ ³ ˆ x i ´ . Such a method of branching is called a branching rule . Why is this a valid branching rule ? What does it mean in a 0-1 integer program?
Background image of page 6
IE406 Lecture 21 6 Continuing the Algorithm After Branching After branching, we solve each of the subproblems recursively . Now we have an additional factor to consider. If the optimal solution value to the LP relaxation is greater than the
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 24

Lecture21 - Introduction to Mathematical Programming IE406...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online