If the above problem is hard to solve, we might try to break it into smaller problems which are easier to solve.
|
|
- Elmer Murphy
- 5 years ago
- Views:
Transcription
1 8 Branch and Bound 8.1 Divide and Conquer uppose that we would like to solve the problem { z = max c T x : x. If the above problem is hard to solve, we might try to break it into smaller problems which are easier to solve. Observation 8.1 If = 1 k and z i = max { c T x : x i for i = 1,...,k then z = max { z i : i = 1,...,k. Although Observation 8.1 is (almost) trivial, it is the key to branch and bound methods which turn out to be effective for many integer programming problems. The recursive decomposition of into smaller problems can be represented by an enumeration tree. upposethat B 3.Wefirstdivide into 0 and 1,where 0 = {x : x 1 = 0 1 = {x : x 1 = 1 The sets 0 and 1 will be recursively divided into smaller sets as shown in the enumeration tree in Figure 8.1. As a second example consider the tours of a TP on four cities. Let denote the set of all tours. We first divide into three pieces, 12, 13 and 14,where 1i is the set of all tours which from city 1 go directly to city i. et 1i in turn is divided into two pieces 1i,ij, j 1,i, where 1i,ij is the set of all tours in i1 which leave city i for city j. The recursive division is depicted in the enumeration tree in Figure 8.2. The leaves of the tree correspond to the (4 1)! = 3! = 6possiblepermutationsof{1,...,4 which have 1 at the first place. 8.2 Pruning Enumeration Trees It is clear that a complete enumeration soon becomes hopeless evenforproblemsof medium size. For instance, in the TP the complete enumeration tree would have (n 1)!
2 106 Branch and Bound x 1 = 0 x 1 = x 2 = 0 x 2 = 1 x 2 = 0 x 2 = x 3 = 0 x 3 = 1 x 3 = 0 x 3 = 1 x 3 = 0 x 3 = 1 x 3 = 0 x 3 = Figure 8.1: Enumeration tree for a set B ,23 12,24 13,32 13,34 14,42 14,43 Figure 8.2: Enumeration tree for the TP on four cities.
3 8.2 Pruning Enumeration Trees 107 leaves and thus for n = 60 would be larger than the estimated number of atoms in the universe 1. The key to efficient algorithms is to cut off useless parts of anenumerationtree.thisis where bounds (cf. Chapter 6) come in. The overall scheme obtained is also referred to as implicit enumeration, sincemostofthetimenotalloftheenumerationtreeiscompletely unfolded. Observation 8.2 Let = 1 k and z i = max { c T x : x i for i = 1,...,k then z = max { z i : i = 1,...,k.upposethatwearegivenz i and z i for i = 1,...,k with z i z i z i for i = 1,...,k. Then for z = max { c T x : x it is true that: { { max z i : i = 1,...,k z max z i : i = 1,...,k The above observation enables us to deduce rules how to prune the enumeration tree. Observation 8.3 (Pruning by optimality) If z i = z i for some i,thentheoptimalsolution value for the ith subproblem z i = max { c T x : x i is known and there is no need to subdivide i into smaller pieces. As an example consider the situation depicted in Figure 8.3. The set is divided into 1 and 2 with the upper and lower bounds as shown. z 1 = 20 z 1 = 20 z = 30 z = z 2 = 15 Figure 8.3: Pruning by optimality. z = 25 z = z 2 = 15 ince z 1 = z 1,thereisnoneedtofurtherexplorethebranchrootedat 1.o,thisbranch can be pruned by optimality. Moreover, Observation 8.2 allows us to get new lower and upper bounds for z as shown in the figure. Observation 8.4 (Pruning by bound) If z i < z j for some i j, thentheoptimalsolution for the ith subproblem z i = max { c T x : x i can never be an optimal solution of the whole problem. Thus, there is no need to subdivide i into smaller pieces. Consider the example in Figure 8.4. ince z 1 = 20 < 21 = z 2,wecanconcludethatthe branch rooted at 1 does not contain an optimal solution: any solution in this branch has objective function value at most 20, whereas the branch rooted at 2 contains solutions of value at least 21. Again, we can stop to explore the branch rooted at 1. We list one more generic reason which makes the exploration ofabranchunnecessary. Observation 8.5 (Pruning by infeasibility) If i =, thenthereisnoneedtosubdivide i into smaller pieces, either. The next section will make clear how the case of infeasibility can occur in a branch and bound system. We close this section by showing an example where no pruning is possible.
4 108 Branch and Bound z = 30 z = 10 z 1 = z 1 = 15 z 2 = 21 Figure 8.4: Pruning by bound. z = 25 z = z 2 = 21 z = 30 z = 25 z = 10 z = 17 z 1 = z 1 = z 1 = 15 z 2 = 17 z 1 = 15 z 2 = 17 Figure 8.5: No pruning possible. Consider the partial enumeration tree in Figure 8.5, where again we have divided the set into the sets 1 and 2 with the bounds as shown. Although the lower and upper bounds for the subproblems allow us to get better bounds for the whole problem, we still have to explore both subtrees. 8.3 LP-Based Branch and Bound: An Example The most common way to solve integer programs is to use an implicit enumeration scheme based on Linear Programming. Upper bounds are provided by LP-relaxations and branching is done by adding new constraints. We illustrate this procedure for a small example. Figure 8.6 shows the evolution of the corresponding branch-and-bound-tree. Consider the integer program z = max4x 1 x 2 3x 1 2x 2 + x 3 = 14 x 2 + x 4 = 3 2x 1 2x 2 + x 5 = 3 x Z 5 + (8.1a) (8.1b) (8.1c) (8.1d) (8.1e) Bounding The first step is to get upper and lower bounds for the optimal value z. An upper bound is obtained by solving the LP-relaxation of (8.1). This LP has the optimal solution x =(4.5,3,6.5,0,0). Hence,wegettheupperbound z = 15. ince we do not have any feasible solution yet, by convention we use z = as a lower bound. Branching In the current situation (see Figure 8.6(a)) we have z < z, sowehaveto branch, that is, we have to split the feasible region. Acommonwaytoachievethisisto take an integer variable x j that is basic but not integral and set: 1 = { x : x j x j 2 = { x : x j x j 1 The estimated number of atoms in the universe is
5 8.3 LP-Based Branch and Bound: An Example 109 z = 15 z = z = 15 z = (a) Initial tree 1 2 Pruned by infeasibility (b) Node 2 is pruned by infeasibility. z = 13.5 z = z = 13.5 z = z 1 = Pruned by infeasibility z 1 = (c) After the LP-relaxation of 2 is solved, we get a new upper bound. z 1 = 13.5 z 1 = x x Pruned by infeasibility z = 13.5 z = 13 (d) Branching on variable x 2 leads to two new subproblems. z = 13.5 z = 13 z 1 = 13.5 z 1 = Pruned by infeasibility z 1 = 13.5 z 1 = Pruned by infeasibility x 2 2 x 2 3 x 2 2 x z 12 = 13 Pruned by optimality z 12 = 13 (e) Problem 12 has an integral optimal solution, so we can prune it by optimality. This also gives the first finite lower bound. z 11 = 12 Pruned by bound z 11 = z 12 = 13 Pruned by optimality z 12 = 13 (f) Problem 11 can be pruned by bound, since z 11 = 12 < 13 = z. Figure 8.6: Evolution of the branch-and-bound-tree for the example. The active nodes are shown in white.
6 110 Branch and Bound Clearly, = 1 2 and 1 2 =. Observethatduetotheabovechoiceofbranching, the current optimal basic solution x is not feasible for either subproblem. If there is no degeneracy (i.e., multiple optimal LP solutions), then we get max { z 1, z 2 < z, whichmeans that our upper bound decreases (improves). In the concrete example we choose variable x 1 where x 1 = 4.5 and set 1 = {x : and 2 = {x :. Choosing an active node The list of active problems (nodes) to be examined is now 1, 2. uppose we choose 2 to be explored. Again, the first step is to obtain an upper bound by solving the LP-relaxation: z 2 = max4x 1 x 2 3x 1 2x 2 + x 3 = 14 x 2 + x 4 = 3 2x 1 2x 2 + x 5 = 3 x 0 (8.2a) (8.2b) (8.2c) (8.2d) (8.2e) (8.2f) It turns out that (8.2) is infeasible, so 2 can be pruned by infeasibility (see Figure 8.6(b)). Choosing an active node The only active node at the moment is 1.o,wechoose 1 to be explored. We obtain an upper bound z 1 by solving the LP-relaxation z 1 = max4x 1 x 2 3x 1 2x 2 + x 3 = 14 x 2 + x 4 = 3 2x 1 2x 2 + x 5 = 3 x 0. (8.3a) (8.3b) (8.3c) (8.3d) (8.3e) (8.3f) An optimal solution for (8.3) is x 2 =(4,2.5,7,4,0) with objective function value This allows us to update our bounds as shown in Figure 8.6(c). This time we choose to branch on variable x 2,since x 2 2 = 2.5. The two subproblems are defined on the sets 11 = 1 {x : x 2 2 and 12 = 1 {x : x 2 3, seefigure8.6(d). Choosing an active node solve the LP-relaxation The list of active nodes is 11 and 12. We choose 12 and z 12 = max4x 1 x 2 3x 1 2x 2 + x 3 = 14 x 2 + x 4 = 3 2x 1 2x 2 + x 5 = 3 x 2 3 x 0. (8.4a) (8.4b) (8.4c) (8.4d) (8.4e) (8.4f) (8.4g) An optimal solution of (8.4) is x 12 =(4,3,8,1,0) with objective function value 13. As the solution is integer, we can prune 12 by optimality. Moreover, we can also update our bounds as shown in Figure 8.6(e).
7 8.4 Techniques for LP-based Branch and Bound 111 At the moment we only have one active node: 11.Thecorre- Choosing an active node sponding LP-relaxation is z 11 = max4x 1 x 2 3x 1 2x 2 + x 3 = 14 x 2 + x 4 = 3 2x 1 2x 2 + x 5 = 3 x 2 2 x 0, (8.5a) (8.5b) (8.5c) (8.5d) (8.5e) (8.5f) (8.5g) which has x 11 =(3.5,2,7.5,1,0) as an optimal solution. Hence, z 11 = 12 which is strictly smaller than z = 13. This means that 11 can be pruned by bound. 8.4 Techniques for LP-based Branch and Bound The previous section contained an example for an execution of an LP-based branch and bound algorithm. While the basic outline of such an algorithm should be clear, there are a few issues that need to be taken into account in order to obtainthebestpossibleefficiency Reoptimization Consider the situation in the example from the previous section when we wanted to explore node 1.WehadalreadysolvedtheinitialLPfor. TheonlydifferencebetweenLP() and LP( 1 ) is the presence of the constraint inlp( 1 ).HowcanwesolveLP( 1 ) without starting from scratch? The problem LP() is of the form max { c T x : Ax = b,x 0. An optimal basis for this LP is B = {x 1,x 2,x 3 with solution x B =(4.5,3,6.5) and x N =(0,0). Wecanparametrize any solution x =(x B,x N ) for LP() by the nonbasic variables: x B := A 1 B b A 1 B A Nx N = x B A 1 B A Nx N Let Ā N := A 1 B A N, c T N := ct B A 1 B A N c T N and b := A 1 B b.multiplyingtheconstraints Ax = b by A 1 B gives the optimal basis representation of the LP: maxc T B x B ct N x N x B + Ā N x N = b x 0 (8.6a) (8.6b) (8.6c) Recall that a basis B is called dual feasible, if c N 0. The optimal primal basis is also dual feasible. We refer to [ch86, NW99] for details on Linear Programming. In the branch and bound scheme, we add a new constraint x i t (or x i t) forsome basic variable x i B. Letusmakethisconstraintanequalityconstraintbyaddingaslack variable s 0. The new constraints are x i + s = t, s 0. By (8.6) we can express x i in terms of the nonbasic variables: x i =( b Ā N x N ) i.hencex i + s = t becomes ( Ā N x N ) i + s = t b i.
8 112 Branch and Bound Adding this constraint to (8.6) gives us the following new LP that we must solve: maxc T B x B ct N x N x B + Ā N x N = b ( Ā N x N ) i + s = t b i x 0,s 0 (8.7a) (8.7b) (8.7c) (8.7d) The set B {s forms a dual feasible basis for (8.7), so we can start to solve (8.7) by the dual implex method starting with the situation as given. Let us illustrate the method for the concrete sitation of our example. We have A B = /2 A 1 B = /2 and thus (8.6) amounts to max15 3x 4 2x 5 x 1 +x x 5 = 9 2 x 2 +x 4 = 3 x 3 x x 5 = 13 2 x 1,x 2,x 3,x 4,x 5 0 If we add a slack variable s, thenthenewconstraintbecomesx 1 + s = 4, s 0. ince x 1 = 9 2 x x 5,wecanrewritethisconstraintintermsofthenonbasicvariables as: This gives us the dual feasible representation of LP( 1 ): x x 5 + s = 1 2. (8.8) max15 3x 4 2x 5 x 1 +x x 9 5 = 2 x 2 +x 4 = 3 x 3 x x 5 = 13 2 x x 5 +s = 2 1 x 1,x 2,x 3,x 4,x 5,s 0 We can now do dual implex pivots to find the optimal solution oflp( 1 ) Other Issues toring the tree In practice we do not need to store the whole branch and bound tree. It suffices to store the active nodes. Bounding Upper bounds are obtained by means of the LP-relaxations. Cutting-planes (see the following chapter) can be used to strengthen bounds. Lowerboundscanbe obtained by means of heuristics and approximation algorithms.
9 8.4 Techniques for LP-based Branch and Bound 113 Branching In our example we branched on a variable that was fractional in theoptimal solution for the LP-relaxation. In general, there will be more than one such variable. Achoicethathasprovedtobeefficientinpracticeistobranchonthemost fractional variable,thatis,tochooseavariablewhichmaximizesmax j min { f j,1 f j,where f j = x j x j. There are other rules based on estimating the cost of a variable to become integer. We refer to [NW99] for more details. Choosing an active node In our example we just chose an arbitrary active node to be explored. In practice there are two antagonistic arguments how to choose an active node: The tree can only be pruned significantly if there is a good primal feasible solution available which gives a good lower bound. This suggests to apply a depth-first search strategy. Doing so, in each step a single new constraint is added and we can reoptimize easily as shown in ection On the other hand, one would like to minimize the total number of nodes evaluated in the tree. This suggests to choose an active node with the best upper bound. uch a strategy is known as best-first search. In practice, one usually employs a mixture of depth-first search and best-first search. After an initial depth-first search which leads to a feasible solution one switches to a combined best-first and depth-first strategy. Preprocessing An important technique for obtaining efficient algorithms istousepreprocessing which includes tightening of bounds (e.g. by cutting-planes, see the following chapter) removing of redundant variables variable fixing We demonstrate preprocessing techniques for a small example. Consider the LP max 2x 1 + x 2 x 3 5x 1 2x 2 + 8x x 1 + 3x 2 x 3 9 x 1 + x 2 + x x x x 3 Tightening of constraints uppose we take the first constraint and isolate variable x 1.Thenweget 5x x 2 8x = 9, where we have used the bounds on the variables x 2 and x 3.Thisgivesusthebound x
10 114 Branch and Bound imilarly, taking the first constraint and isolating variable x 3 results in: 8x x 2 5x = 17. Our new bound for x 3 is: x By similar operations we get the new bound x and now using all the new bounds for x 3 in the first inequality gives: x Plugging the new bounds into the third constraint gives: x 1 + x 2 + x < 6. o, the third constraint is superfluous and can be dropped. Our LP has reduced to the following problem: Variable Fixing max 2x 1 + x 2 x 3 5x 1 2x 2 + 8x x 1 + 3x 2 x x x x Consider variable x 2.Increasingvariablex 2 makes all constraints less tight. ince x 2 has apositivecoefficientintheobjectivefunctionitwillbeaslarge as possible in an optimal solution, that is, it will be equal to its upper bound of 1: x 2 = 1. The same conclusion could be obtained by considering the LP dual. One can see that the dual variable corresponding to the constraint x 2 1mustbepositiveinordertoachieve feasibility. By complementary slackness this means that x 2 = 1inanyoptimalsolution. Decreasing the value of x 3 makes all constraints less tight, too. The coefficient of x 3 in the objective is negative, so x 3 can be set to its lower bound. After all the preprocessing, our initial problem has reduced tothefollowingsimplelp: max2x x We formalize the ideas from our example above:
11 8.4 Techniques for LP-based Branch and Bound 115 Observation 8.6 Consider the set n = x : a 0x 0 + a j x j b,l j x j u j, for j = 1,...,n. j=1 The following statements hold: Bounds on variables If a 0 > 0,then x 0 b a j l j a j u j /a 0. j:a j >0 j:a j <0 and, if a 0 < 0, then x 0 b a j l j a j u j /a 0. j:a j >0 j:a j <0 Redundancy The constraint a 0 x 0 + n j=1 a jx j b is redundant, if j:a j >0 Infeasibility The set is empty, if j:a j >0 a j u j + j:a j <0 a j l j + j:a j <0 a j l j b. a j u j >b. Variable Fixing For a maximization problem of the form max { c T x : Ax b,l x u, if a ij 0 for all i = 1,...,m and c j < 0, thenx j = l j in an optimal solution. Conversely, if a ij 0 for all i = 1,...,m and c j > 0,thenx j = u j in an optimal solution. For integer programming problems, the preprocessing can go further. If x j Z and the bounds l j x j u j are not integer, then we can tighten them to l j x j u j. We will explore this fact in greater depth in the following chapter on cutting-planes.
to work with) can be solved by solving their LP relaxations with the Simplex method I Cutting plane algorithms, e.g., Gomory s fractional cutting
Summary so far z =max{c T x : Ax apple b, x 2 Z n +} I Modeling with IP (and MIP, and BIP) problems I Formulation for a discrete set that is a feasible region of an IP I Alternative formulations for the
More informationmaxz = 3x 1 +4x 2 2x 1 +x 2 6 2x 1 +3x 2 9 x 1,x 2
ex-5.-5. Foundations of Operations Research Prof. E. Amaldi 5. Branch-and-Bound Given the integer linear program maxz = x +x x +x 6 x +x 9 x,x integer solve it via the Branch-and-Bound method (solving
More informationmin3x 1 + 4x 2 + 5x 3 2x 1 + 2x 2 + x 3 6 x 1 + 2x 2 + 3x 3 5 x 1, x 2, x 3 0.
ex-.-. Foundations of Operations Research Prof. E. Amaldi. Dual simplex algorithm Given the linear program minx + x + x x + x + x 6 x + x + x x, x, x. solve it via the dual simplex algorithm. Describe
More informationInteger Programming. Wolfram Wiesemann. December 6, 2007
Integer Programming Wolfram Wiesemann December 6, 2007 Contents of this Lecture Revision: Mixed Integer Programming Problems Branch & Bound Algorithms: The Big Picture Solving MIP s: Complete Enumeration
More informationDecision Procedures An Algorithmic Point of View
An Algorithmic Point of View ILP References: Integer Programming / Laurence Wolsey Deciding ILPs with Branch & Bound Intro. To mathematical programming / Hillier, Lieberman Daniel Kroening and Ofer Strichman
More informationwhere X is the feasible region, i.e., the set of the feasible solutions.
3.5 Branch and Bound Consider a generic Discrete Optimization problem (P) z = max{c(x) : x X }, where X is the feasible region, i.e., the set of the feasible solutions. Branch and Bound is a general semi-enumerative
More informationIntroduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs
Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch
More informationIP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, You wish to solve the IP below with a cutting plane technique.
IP Cut Homework from J and B Chapter 9: 14, 15, 16, 23, 24, 31 14. You wish to solve the IP below with a cutting plane technique. Maximize 4x 1 + 2x 2 + x 3 subject to 14x 1 + 10x 2 + 11x 3 32 10x 1 +
More informationSection Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints.
Section Notes 8 Integer Programming II Applied Math 121 Week of April 5, 2010 Goals for the week understand IP relaxations be able to determine the relative strength of formulations understand the branch
More informationOperations Research Lecture 6: Integer Programming
Operations Research Lecture 6: Integer Programming Notes taken by Kaiquan Xu@Business School, Nanjing University May 12th 2016 1 Integer programming (IP) formulations The integer programming (IP) is the
More informationSection Notes 9. Midterm 2 Review. Applied Math / Engineering Sciences 121. Week of December 3, 2018
Section Notes 9 Midterm 2 Review Applied Math / Engineering Sciences 121 Week of December 3, 2018 The following list of topics is an overview of the material that was covered in the lectures and sections
More informationIntroduction to Integer Linear Programming
Lecture 7/12/2006 p. 1/30 Introduction to Integer Linear Programming Leo Liberti, Ruslan Sadykov LIX, École Polytechnique liberti@lix.polytechnique.fr sadykov@lix.polytechnique.fr Lecture 7/12/2006 p.
More informationInteger Programming ISE 418. Lecture 8. Dr. Ted Ralphs
Integer Programming ISE 418 Lecture 8 Dr. Ted Ralphs ISE 418 Lecture 8 1 Reading for This Lecture Wolsey Chapter 2 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Duality for Mixed-Integer
More informationLinear and Integer Programming - ideas
Linear and Integer Programming - ideas Paweł Zieliński Institute of Mathematics and Computer Science, Wrocław University of Technology, Poland http://www.im.pwr.wroc.pl/ pziel/ Toulouse, France 2012 Literature
More informationDM545 Linear and Integer Programming. Lecture 13 Branch and Bound. Marco Chiarandini
DM545 Linear and Integer Programming Lecture 13 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Exam Tilladt Håndscanner/digital pen og ordbogsprogrammet
More information(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6
The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. Problem 1 Consider
More information21. Solve the LP given in Exercise 19 using the big-m method discussed in Exercise 20.
Extra Problems for Chapter 3. Linear Programming Methods 20. (Big-M Method) An alternative to the two-phase method of finding an initial basic feasible solution by minimizing the sum of the artificial
More informationYinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method
The Simplex Method Yinyu Ye Department of Management Science and Engineering Stanford University Stanford, CA 94305, U.S.A. http://www.stanford.edu/ yyye (LY, Chapters 2.3-2.5, 3.1-3.4) 1 Geometry of Linear
More informationA Review of Linear Programming
A Review of Linear Programming Instructor: Farid Alizadeh IEOR 4600y Spring 2001 February 14, 2001 1 Overview In this note we review the basic properties of linear programming including the primal simplex
More informationBBM402-Lecture 20: LP Duality
BBM402-Lecture 20: LP Duality Lecturer: Lale Özkahya Resources for the presentation: https://courses.engr.illinois.edu/cs473/fa2016/lectures.html An easy LP? which is compact form for max cx subject to
More informationInteger Linear Programming
Integer Linear Programming Solution : cutting planes and Branch and Bound Hugues Talbot Laboratoire CVN April 13, 2018 IP Resolution Gomory s cutting planes Solution branch-and-bound General method Resolution
More information3.4 Relaxations and bounds
3.4 Relaxations and bounds Consider a generic Discrete Optimization problem z = min{c(x) : x X} with an optimal solution x X. In general, the algorithms generate not only a decreasing sequence of upper
More informationIE418 Integer Programming
IE418: Integer Programming Department of Industrial and Systems Engineering Lehigh University 2nd February 2005 Boring Stuff Extra Linux Class: 8AM 11AM, Wednesday February 9. Room??? Accounts and Passwords
More informationThe Simplex Algorithm
8.433 Combinatorial Optimization The Simplex Algorithm October 6, 8 Lecturer: Santosh Vempala We proved the following: Lemma (Farkas). Let A R m n, b R m. Exactly one of the following conditions is true:.
More informationPart 1. The Review of Linear Programming
In the name of God Part 1. The Review of Linear Programming 1.5. Spring 2010 Instructor: Dr. Masoud Yaghini Outline Introduction Formulation of the Dual Problem Primal-Dual Relationship Economic Interpretation
More informationmin 4x 1 5x 2 + 3x 3 s.t. x 1 + 2x 2 + x 3 = 10 x 1 x 2 6 x 1 + 3x 2 + x 3 14
The exam is three hours long and consists of 4 exercises. The exam is graded on a scale 0-25 points, and the points assigned to each question are indicated in parenthesis within the text. If necessary,
More informationLagrangean relaxation
Lagrangean relaxation Giovanni Righini Corso di Complementi di Ricerca Operativa Joseph Louis de la Grange (Torino 1736 - Paris 1813) Relaxations Given a problem P, such as: minimize z P (x) s.t. x X P
More informationLecture 23 Branch-and-Bound Algorithm. November 3, 2009
Branch-and-Bound Algorithm November 3, 2009 Outline Lecture 23 Modeling aspect: Either-Or requirement Special ILPs: Totally unimodular matrices Branch-and-Bound Algorithm Underlying idea Terminology Formal
More informationSummary of the simplex method
MVE165/MMG630, The simplex method; degeneracy; unbounded solutions; infeasibility; starting solutions; duality; interpretation Ann-Brith Strömberg 2012 03 16 Summary of the simplex method Optimality condition:
More informationAM 121: Intro to Optimization! Models and Methods! Fall 2018!
AM 121: Intro to Optimization Models and Methods Fall 2018 Lecture 13: Branch and Bound (I) Yiling Chen SEAS Example: max 5x 1 + 8x 2 s.t. x 1 + x 2 6 5x 1 + 9x 2 45 x 1, x 2 0, integer 1 x 2 6 5 x 1 +x
More informationSection Notes 9. IP: Cutting Planes. Applied Math 121. Week of April 12, 2010
Section Notes 9 IP: Cutting Planes Applied Math 121 Week of April 12, 2010 Goals for the week understand what a strong formulations is. be familiar with the cutting planes algorithm and the types of cuts
More informationDuality of LPs and Applications
Lecture 6 Duality of LPs and Applications Last lecture we introduced duality of linear programs. We saw how to form duals, and proved both the weak and strong duality theorems. In this lecture we will
More informationIntroduction to Mathematical Programming IE406. Lecture 10. Dr. Ted Ralphs
Introduction to Mathematical Programming IE406 Lecture 10 Dr. Ted Ralphs IE406 Lecture 10 1 Reading for This Lecture Bertsimas 4.1-4.3 IE406 Lecture 10 2 Duality Theory: Motivation Consider the following
More informationDM545 Linear and Integer Programming. Lecture 7 Revised Simplex Method. Marco Chiarandini
DM545 Linear and Integer Programming Lecture 7 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Motivation Complexity of single pivot operation
More informationSOLVING INTEGER LINEAR PROGRAMS. 1. Solving the LP relaxation. 2. How to deal with fractional solutions?
SOLVING INTEGER LINEAR PROGRAMS 1. Solving the LP relaxation. 2. How to deal with fractional solutions? Integer Linear Program: Example max x 1 2x 2 0.5x 3 0.2x 4 x 5 +0.6x 6 s.t. x 1 +2x 2 1 x 1 + x 2
More informationIntroduction to optimization
Introduction to optimization Geir Dahl CMA, Dept. of Mathematics and Dept. of Informatics University of Oslo 1 / 24 The plan 1. The basic concepts 2. Some useful tools (linear programming = linear optimization)
More informationLecture #21. c T x Ax b. maximize subject to
COMPSCI 330: Design and Analysis of Algorithms 11/11/2014 Lecture #21 Lecturer: Debmalya Panigrahi Scribe: Samuel Haney 1 Overview In this lecture, we discuss linear programming. We first show that the
More informationPART 4 INTEGER PROGRAMMING
PART 4 INTEGER PROGRAMMING 102 Read Chapters 11 and 12 in textbook 103 A capital budgeting problem We want to invest $19 000 Four investment opportunities which cannot be split (take it or leave it) 1.
More informationFoundations of Operations Research
Solved exercises for the course of Foundations of Operations Research Roberto Cordone The dual simplex method Given the following LP problem: maxz = 5x 1 +8x 2 x 1 +x 2 6 5x 1 +9x 2 45 x 1,x 2 0 1. solve
More information3. THE SIMPLEX ALGORITHM
Optimization. THE SIMPLEX ALGORITHM DPK Easter Term. Introduction We know that, if a linear programming problem has a finite optimal solution, it has an optimal solution at a basic feasible solution (b.f.s.).
More informationMath Models of OR: Branch-and-Bound
Math Models of OR: Branch-and-Bound John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA November 2018 Mitchell Branch-and-Bound 1 / 15 Branch-and-Bound Outline 1 Branch-and-Bound
More informationThe CPLEX Library: Mixed Integer Programming
The CPLEX Library: Mixed Programming Ed Rothberg, ILOG, Inc. 1 The Diet Problem Revisited Nutritional values Bob considered the following foods: Food Serving Size Energy (kcal) Protein (g) Calcium (mg)
More informationA Parametric Simplex Algorithm for Linear Vector Optimization Problems
A Parametric Simplex Algorithm for Linear Vector Optimization Problems Birgit Rudloff Firdevs Ulus Robert Vanderbei July 9, 2015 Abstract In this paper, a parametric simplex algorithm for solving linear
More informationOptimisation and Operations Research
Optimisation and Operations Research Lecture 9: Duality and Complementary Slackness Matthew Roughan http://www.maths.adelaide.edu.au/matthew.roughan/ Lecture_notes/OORII/
More informationLinear Programming Redux
Linear Programming Redux Jim Bremer May 12, 2008 The purpose of these notes is to review the basics of linear programming and the simplex method in a clear, concise, and comprehensive way. The book contains
More informationRelation of Pure Minimum Cost Flow Model to Linear Programming
Appendix A Page 1 Relation of Pure Minimum Cost Flow Model to Linear Programming The Network Model The network pure minimum cost flow model has m nodes. The external flows given by the vector b with m
More informationF 1 F 2 Daily Requirement Cost N N N
Chapter 5 DUALITY 5. The Dual Problems Every linear programming problem has associated with it another linear programming problem and that the two problems have such a close relationship that whenever
More informationis called an integer programming (IP) problem. model is called a mixed integer programming (MIP)
INTEGER PROGRAMMING Integer Programming g In many problems the decision variables must have integer values. Example: assign people, machines, and vehicles to activities in integer quantities. If this is
More information9.1 Linear Programs in canonical form
9.1 Linear Programs in canonical form LP in standard form: max (LP) s.t. where b i R, i = 1,..., m z = j c jx j j a ijx j b i i = 1,..., m x j 0 j = 1,..., n But the Simplex method works only on systems
More informationLinear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004
Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004 1 In this section we lean about duality, which is another way to approach linear programming. In particular, we will see: How to define
More informationMath Models of OR: Sensitivity Analysis
Math Models of OR: Sensitivity Analysis John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 8 USA October 8 Mitchell Sensitivity Analysis / 9 Optimal tableau and pivot matrix Outline Optimal
More informationNetwork Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini
In the name of God Network Flows 6. Lagrangian Relaxation 6.3 Lagrangian Relaxation and Integer Programming Fall 2010 Instructor: Dr. Masoud Yaghini Integer Programming Outline Branch-and-Bound Technique
More informationTopic: Primal-Dual Algorithms Date: We finished our discussion of randomized rounding and began talking about LP Duality.
CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Primal-Dual Algorithms Date: 10-17-07 14.1 Last Time We finished our discussion of randomized rounding and
More informationSimplex method(s) for solving LPs in standard form
Simplex method: outline I The Simplex Method is a family of algorithms for solving LPs in standard form (and their duals) I Goal: identify an optimal basis, as in Definition 3.3 I Versions we will consider:
More information1. Algebraic and geometric treatments Consider an LP problem in the standard form. x 0. Solutions to the system of linear equations
The Simplex Method Most textbooks in mathematical optimization, especially linear programming, deal with the simplex method. In this note we study the simplex method. It requires basically elementary linear
More information"SYMMETRIC" PRIMAL-DUAL PAIR
"SYMMETRIC" PRIMAL-DUAL PAIR PRIMAL Minimize cx DUAL Maximize y T b st Ax b st A T y c T x y Here c 1 n, x n 1, b m 1, A m n, y m 1, WITH THE PRIMAL IN STANDARD FORM... Minimize cx Maximize y T b st Ax
More informationMAT016: Optimization
MAT016: Optimization M.El Ghami e-mail: melghami@ii.uib.no URL: http://www.ii.uib.no/ melghami/ March 29, 2011 Outline for today The Simplex method in matrix notation Managing a production facility The
More informationDiscrete Optimization 2010 Lecture 7 Introduction to Integer Programming
Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming Marc Uetz University of Twente m.uetz@utwente.nl Lecture 8: sheet 1 / 32 Marc Uetz Discrete Optimization Outline 1 Intro: The Matching
More informationIntroduction column generation
Introduction column generation Han Hoogeveen Institute of Information and Computing Sciences University Utrecht The Netherlands May 28, 2018 Contents Shadow prices Reduced cost Column generation Example:
More informationMVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms
MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2017 04 07 Lecture 8 Linear and integer optimization with applications
More informationInteger Programming. The focus of this chapter is on solution techniques for integer programming models.
Integer Programming Introduction The general linear programming model depends on the assumption of divisibility. In other words, the decision variables are allowed to take non-negative integer as well
More informationMultivalued Decision Diagrams. Postoptimality Analysis Using. J. N. Hooker. Tarik Hadzic. Cork Constraint Computation Centre
Postoptimality Analysis Using Multivalued Decision Diagrams Tarik Hadzic Cork Constraint Computation Centre J. N. Hooker Carnegie Mellon University London School of Economics June 2008 Postoptimality Analysis
More informationConvex Optimization and Support Vector Machine
Convex Optimization and Support Vector Machine Problem 0. Consider a two-class classification problem. The training data is L n = {(x 1, t 1 ),..., (x n, t n )}, where each t i { 1, 1} and x i R p. We
More informationLinear Programming: Simplex
Linear Programming: Simplex Stephen J. Wright 1 2 Computer Sciences Department, University of Wisconsin-Madison. IMA, August 2016 Stephen Wright (UW-Madison) Linear Programming: Simplex IMA, August 2016
More information3.10 Lagrangian relaxation
3.10 Lagrangian relaxation Consider a generic ILP problem min {c t x : Ax b, Dx d, x Z n } with integer coefficients. Suppose Dx d are the complicating constraints. Often the linear relaxation and the
More informationPreprocessing. Complements of Operations Research. Giovanni Righini. Università degli Studi di Milano
Preprocessing Complements of Operations Research Giovanni Righini Università degli Studi di Milano Preprocessing Computational complexity theory classifies problems. However, when we run algorithms, this
More informationTRANSPORTATION PROBLEMS
Chapter 6 TRANSPORTATION PROBLEMS 61 Transportation Model Transportation models deal with the determination of a minimum-cost plan for transporting a commodity from a number of sources to a number of destinations
More informationInteger and Combinatorial Optimization: Introduction
Integer and Combinatorial Optimization: Introduction John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA November 2018 Mitchell Introduction 1 / 18 Integer and Combinatorial Optimization
More informationLagrangian Relaxation in MIP
Lagrangian Relaxation in MIP Bernard Gendron May 28, 2016 Master Class on Decomposition, CPAIOR2016, Banff, Canada CIRRELT and Département d informatique et de recherche opérationnelle, Université de Montréal,
More informationChapter 1 Linear Programming. Paragraph 5 Duality
Chapter 1 Linear Programming Paragraph 5 Duality What we did so far We developed the 2-Phase Simplex Algorithm: Hop (reasonably) from basic solution (bs) to bs until you find a basic feasible solution
More informationM340(921) Solutions Problem Set 6 (c) 2013, Philip D Loewen. g = 35y y y 3.
M340(92) Solutions Problem Set 6 (c) 203, Philip D Loewen. (a) If each pig is fed y kilograms of corn, y 2 kilos of tankage, and y 3 kilos of alfalfa, the cost per pig is g = 35y + 30y 2 + 25y 3. The nutritional
More informationRevised Simplex Method
DM545 Linear and Integer Programming Lecture 7 Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. 2. 2 Motivation Complexity of single pivot operation
More informationPart 1. The Review of Linear Programming
In the name of God Part 1. The Review of Linear Programming 1.2. Spring 2010 Instructor: Dr. Masoud Yaghini Outline Introduction Basic Feasible Solutions Key to the Algebra of the The Simplex Algorithm
More informationSupplementary lecture notes on linear programming. We will present an algorithm to solve linear programs of the form. maximize.
Cornell University, Fall 2016 Supplementary lecture notes on linear programming CS 6820: Algorithms 26 Sep 28 Sep 1 The Simplex Method We will present an algorithm to solve linear programs of the form
More informationLinear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47
Linear Programming Jie Wang University of Massachusetts Lowell Department of Computer Science J. Wang (UMass Lowell) Linear Programming 1 / 47 Linear function: f (x 1, x 2,..., x n ) = n a i x i, i=1 where
More information1 Review Session. 1.1 Lecture 2
1 Review Session Note: The following lists give an overview of the material that was covered in the lectures and sections. Your TF will go through these lists. If anything is unclear or you have questions
More information3 The Simplex Method. 3.1 Basic Solutions
3 The Simplex Method 3.1 Basic Solutions In the LP of Example 2.3, the optimal solution happened to lie at an extreme point of the feasible set. This was not a coincidence. Consider an LP in general form,
More informationBranch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1
Branch-and-Bound Leo Liberti LIX, École Polytechnique, France INF431 2011, Lecture p. 1 Reminders INF431 2011, Lecture p. 2 Problems Decision problem: a question admitting a YES/NO answer Example HAMILTONIAN
More information1 Column Generation and the Cutting Stock Problem
1 Column Generation and the Cutting Stock Problem In the linear programming approach to the traveling salesman problem we used the cutting plane approach. The cutting plane approach is appropriate when
More informationDiscrete (and Continuous) Optimization WI4 131
Discrete (and Continuous) Optimization WI4 131 Kees Roos Technische Universiteit Delft Faculteit Electrotechniek, Wiskunde en Informatica Afdeling Informatie, Systemen en Algoritmiek e-mail: C.Roos@ewi.tudelft.nl
More informationCombinatorial Optimization
Combinatorial Optimization Lecture notes, WS 2010/11, TU Munich Prof. Dr. Raymond Hemmecke Version of February 9, 2011 Contents 1 The knapsack problem 1 1.1 Complete enumeration..................................
More informationORIE 6300 Mathematical Programming I August 25, Lecture 2
ORIE 6300 Mathematical Programming I August 25, 2016 Lecturer: Damek Davis Lecture 2 Scribe: Johan Bjorck Last time, we considered the dual of linear programs in our basic form: max(c T x : Ax b). We also
More informationChap6 Duality Theory and Sensitivity Analysis
Chap6 Duality Theory and Sensitivity Analysis The rationale of duality theory Max 4x 1 + x 2 + 5x 3 + 3x 4 S.T. x 1 x 2 x 3 + 3x 4 1 5x 1 + x 2 + 3x 3 + 8x 4 55 x 1 + 2x 2 + 3x 3 5x 4 3 x 1 ~x 4 0 If we
More informationFeasibility Pump Heuristics for Column Generation Approaches
1 / 29 Feasibility Pump Heuristics for Column Generation Approaches Ruslan Sadykov 2 Pierre Pesneau 1,2 Francois Vanderbeck 1,2 1 University Bordeaux I 2 INRIA Bordeaux Sud-Ouest SEA 2012 Bordeaux, France,
More informationThe simplex algorithm
The simplex algorithm The simplex algorithm is the classical method for solving linear programs. Its running time is not polynomial in the worst case. It does yield insight into linear programs, however,
More informationReview Solutions, Exam 2, Operations Research
Review Solutions, Exam 2, Operations Research 1. Prove the weak duality theorem: For any x feasible for the primal and y feasible for the dual, then... HINT: Consider the quantity y T Ax. SOLUTION: To
More informationII. Analysis of Linear Programming Solutions
Optimization Methods Draft of August 26, 2005 II. Analysis of Linear Programming Solutions Robert Fourer Department of Industrial Engineering and Management Sciences Northwestern University Evanston, Illinois
More informationThe Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006
The Primal-Dual Algorithm P&S Chapter 5 Last Revised October 30, 2006 1 Simplex solves LP by starting at a Basic Feasible Solution (BFS) and moving from BFS to BFS, always improving the objective function,
More informationNote 3: LP Duality. If the primal problem (P) in the canonical form is min Z = n (1) then the dual problem (D) in the canonical form is max W = m (2)
Note 3: LP Duality If the primal problem (P) in the canonical form is min Z = n j=1 c j x j s.t. nj=1 a ij x j b i i = 1, 2,..., m (1) x j 0 j = 1, 2,..., n, then the dual problem (D) in the canonical
More informationHands-on Tutorial on Optimization F. Eberle, R. Hoeksma, and N. Megow September 26, Branch & Bound
Hands-on Tutorial on Optimization F. Eberle, R. Hoeksma, and N. Megow September 6, 8 Branh & Bound Branh & Bound: A General Framework for ILPs Introdued in the 96 s by Land and Doig Based on two priniple
More informationTravelling Salesman Problem
Travelling Salesman Problem Fabio Furini November 10th, 2014 Travelling Salesman Problem 1 Outline 1 Traveling Salesman Problem Separation Travelling Salesman Problem 2 (Asymmetric) Traveling Salesman
More informationApplications. Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang
Introduction to Large-Scale Linear Programming and Applications Stephen J. Stoyan, Maged M. Dessouky*, and Xiaoqing Wang Daniel J. Epstein Department of Industrial and Systems Engineering, University of
More informationIntroduction to integer programming II
Introduction to integer programming II Martin Branda Charles University in Prague Faculty of Mathematics and Physics Department of Probability and Mathematical Statistics Computational Aspects of Optimization
More informationDiscrete (and Continuous) Optimization WI4 131
Discrete (and Continuous) Optimization WI4 131 Kees Roos Technische Universiteit Delft Faculteit Electrotechniek, Wiskunde en Informatica Afdeling Informatie, Systemen en Algoritmiek e-mail: C.Roos@ewi.tudelft.nl
More informationOptimization (168) Lecture 7-8-9
Optimization (168) Lecture 7-8-9 Jesús De Loera UC Davis, Mathematics Wednesday, April 2, 2012 1 DEGENERACY IN THE SIMPLEX METHOD 2 DEGENERACY z =2x 1 x 2 + 8x 3 x 4 =1 2x 3 x 5 =3 2x 1 + 4x 2 6x 3 x 6
More informationInteger Programming ISE 418. Lecture 12. Dr. Ted Ralphs
Integer Programming ISE 418 Lecture 12 Dr. Ted Ralphs ISE 418 Lecture 12 1 Reading for This Lecture Nemhauser and Wolsey Sections II.2.1 Wolsey Chapter 9 ISE 418 Lecture 12 2 Generating Stronger Valid
More informationBenders Decomposition
Benders Decomposition Yuping Huang, Dr. Qipeng Phil Zheng Department of Industrial and Management Systems Engineering West Virginia University IENG 593G Nonlinear Programg, Spring 2012 Yuping Huang (IMSE@WVU)
More information23. Cutting planes and branch & bound
CS/ECE/ISyE 524 Introduction to Optimization Spring 207 8 23. Cutting planes and branch & bound ˆ Algorithms for solving MIPs ˆ Cutting plane methods ˆ Branch and bound methods Laurent Lessard (www.laurentlessard.com)
More informationMVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg
MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous
More informationFarkas Lemma, Dual Simplex and Sensitivity Analysis
Summer 2011 Optimization I Lecture 10 Farkas Lemma, Dual Simplex and Sensitivity Analysis 1 Farkas Lemma Theorem 1. Let A R m n, b R m. Then exactly one of the following two alternatives is true: (i) x
More information