Lecture14 - Integer Programming IE418 Lecture 14 Ashutosh...

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

View Full Document Right Arrow Icon
Integer Programming IE418 Lecture 14 Ashutosh Mahajan 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
IE418 Lecture 14 1 Reading for This Lecture Wolsey Sections 7.4-7.5 Nemhauser and Wolsey Section II.4.2 Linderoth and Savelsburgh, (1999) Martin (2001) Kopman (2001) Achterberg, Koch, Martin (2005) Karamanov and Cornuejols, Branching on General Disjunctions (2007) Achterberg, Conflict Analysis in Mixed Integer Programming (2007)
Background image of page 2
IE418 Lecture 14 2 Branch and Bound Recap Suppose F is the feasible region for some MILP and we wish to solve max x F c ± x . Consider a partition of F into subsets F 1 , . . . F k . Then max x F c ± x = max 1 i k max 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
IE418 Lecture 14 3 Branching We have now spent several lectures discussing methods for bounding . Obtaining tight bounds is the most important aspect of the branch and bound algorithm. Branching effectively is a very close second. Choosing an effective method of branching can make orders of magnitude difference in the size of the search tree and the solution time.
Background image of page 4
IE418 Lecture 14 4 Baby BIP Consider a small binary integer program: min 3 x 1 + x 2 2 x 1 + x 2 1 - 2 x 1 + 2 x 2 1 x 1 , x 2 ∈ { 0 , 1 } What is the optimal solution? What is the proof?
Background image of page 5

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

View Full DocumentRight Arrow Icon
IE418 Lecture 14 5 Branch and Bound example Consider the baby BIP again: Use the LP-based Branch and Bound method. Step 1: Solve the LP relaxation. x 1 = 1 6 , x 2 = 2 3 How do we branch?
Background image of page 6
IE418 Lecture 14 6 Branch and Bound example X X 1.5 3 4 2.5 ( 1 6 , 2 3 ) (1 , 1) (1 , 0) ( 1 2 , 1) ( 1 2 , 0) x 2 0 7 6 x 1 0 x 1 0 x 2 1
Background image of page 7

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

View Full DocumentRight Arrow Icon
IE418 Lecture 14 7 Branch and Bound example Let us try a different branching order. 3 X ( 1 6 , 2 3 ) x 1 0 7 6 x 1 1 Observe that the size of tree has been halved. This type of variance can be seen frequently in practice. For a pure binary integer program, we can have up to 2 n nodes in the search tree. By branching judiciously, we can reduce this as much as possible.
Background image of page 8
IE418 Lecture 14 8 Some Definitions Let us consider again a pure IP with feasible set S Z n . A
Background image of page 9

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

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

This note was uploaded on 08/06/2008 for the course IE 418 taught by Professor Ralphs during the Spring '08 term at Lehigh University .

Page1 / 26

Lecture14 - Integer Programming IE418 Lecture 14 Ashutosh...

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

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