Discrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131

Size: px
Start display at page:

Download "Discrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131"

Transcription

1 Discrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131 Kees Roos Technische Universiteit Delft Faculteit Informatietechnologie en Systemen Afdeling Informatie, Systemen en Algoritmiek URL: roos November December, A.D. 2002

2 Course Schedule 1. Formulations (18 pages) 2. Optimality, Relaxation, and Bounds (10 pages) 3. Well-solved Problems (13 pages) 4. Matching and Assigments (10 pages) 5. Dynamic Programming (11 pages) 6. Complexity and Problem Reduction (8 pages) 7. Branch and Bound (17 pages) 8. Cutting Plane Algorithms (21 pages) 9. Strong Valid Inequalities (22 pages) 10. Lagrangian Duality (14 pages) 11. Column Generation Algorithms (16 pages) 12. Heuristic Algorithms (15 pages) 13. From Theory to Solutions (20 pages) Optimization Group 1

3 Exercise Suppose that you are interested in choosing a set of investments {1,..., 7} using 0-1 variables x i, i = 1,..., 7. Model the following constraints. (i) You cannot invest in all of them. (ii) You must choose at least one of them. (iii) Investment 1 cannot be chosen if investment 3 is chosen. (iv) Investment 4 can be chosen only if investment 2 is also chosen. (v) You must choose either both investments 1 and 5 or neither. (vi) You must choose either at least one of the investments 1,2,3, or at least two from 2,4,5,6. Solution: (i) x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 6. (ii) x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 1. (iii) x 1 + x 3 1. (iv) x 2 x 4 (N.B. x 4 = 1 x 2 = 1). (v) We must have either x 1 + x 5 2 or x 1 + x 5 0. We introduce for each alternative a 0-1 variable, y 1 and y 2, respectively. The model is (with M = 2): x 1 + x 5 2y 1 x 1 + x 5 2(1 y 2 ) y 1 + y 2 = 1 y 1, y 2 {0,1} x 1 + x 5 2y 1 x 1 + x 5 2y 1 y 1 {0,1} (vi) We must have either x 1 + x 2 + x 3 1 or x 2 + x 4 + x 5 + x 6 2. Using 0-1 variables y 1 and y 2, one for each alternative, the model becomes (with M = 2): x 1 + x 2 + x 3 y 1 y 1 + y 2 = 1 x 1 + x 4 + x 5 + x 6 2y 2 y 1, y 2 {0,1} Optimization Group 2

4 Exercise Formulate the following as mixed integer problems: (i) u = min {x 1, x 2 }, assuming that 0 x i C for j = 1,2. (ii) v = x 1 x 2, with 0 x i C for j = 1,2. (iii) the set X \ {x }, where X = {x Z n : Ax b} and x X. Solution: (i): u = max {t : t x 1, t x 2, 0 x 1 C, 0 x 2 C}. (ii): u = min {t : t x 1 x 2 t, 0 x 1 C, 0 x 2 C}. (iii): For each i define X i = {x Z n : x i x i 1, Ax b}, X + i = {x Z n : x i x i + 1, Ax b}. With M a large enough number, and using a binary vanriable y i, the union of these sets has the linear formulation Since X i X + i = {x Z n : Ax b, 1 + x i x i My i, 1 + x i x i M(1 y i ), y i {0,1}}. X \ {x } = n i=1 ( X i X + i this set can be linearly represented by using binary variables z i such that z z n = 1 and x X i X + i if and only if z i = 1. ), Optimization Group 3

5 Exercise 1.9.3: Modelling disjunctions (i) Extend the formulation of discrete alternatives of Section 1.5 to the union of two polyhedra P k = { x R n : A k x b k, 0 x u } for k = 1,2, where max k max i { a k i x b k i : 0 x u } M. (ii) Show that the extended formulation for P 1 P 2 is x = z 1 + z 2, y 1 + y 2 = 1 A k z k b k y k, 0 z k uy k, k = 1,2 z k R n, y k {0,1}, k = 1,2. Solution: (i) Using the method described on page 11 we introduce binary variables y 1 and y 2. Then a suitable model is as follows: A k x b k M(1 y k ), k = 1,2 y 1 + y 2 = 1, y k {0,1}, k = 1,2 0 x u. (ii) The formulation in (ii) is also valid. Because we have either y 1 = 1 and y 2 = 0 or y 1 = 0 and y 2 = 1. In the first case we have z 2 = 0, whence x = z 1. Then the constraint A k z k b k y k gives A 1 x b 1 and 0 0, which is equivalent to x P 1. Similarly, the second case occurs if and only if x P 2. Since either y 1 = 1 or y 2 = 1, the given constraints are satisfied if and only if x P 1 P 2. Optimization Group 4

6 Exercise Show that P i, i = 1,2,3 are formulations for the same set X = {0,1} 4 P i, i = 1,2,3, where P 1 = { x R 4 : 97x x x x } P 2 = { x R 4 : 2x 1 + x 2 + x 3 + x 4 3 } P 3 = { x R 4 : x 1 + x 2 + x 3 2, x 1 + x 2 + x 4 2, x 1 + x 3 + x 4 2 }. Solution: In a brute force way we determine for each of the 16 vectors x {0,1} 4 whether or not one has x P i. The table below shows that the answer is the same for each x and for each i. x 1 x 2 x 3 x 4 P 1 P 2 P 3 (1) P 3 (2) P 3 (3) Optimization Group 5

7 Exercise John Dupont is attending a summer school where he must take four courses per day. Each course lasts an hour, but because of the large number of students, each course is repeated several times per day by different teachers. Section i of course k denoted (i, k) meets at the hour t ik, where courses start on the hour between 10 a.m. and 7 p.m. John s preferences for when he takes courses are influenced by the reputation of the teacher, and also the time of the day. Let p ik be his preference for section (i, k). Unfortunately, due to conflicts, John cannot always choose the sections he prefers. (i) Formulate an integer problem to choose a feasible course that maximizes the sum of John s preferences. (ii) Modify the formulation, so that John never has more than two consecutive hours of classes without a break. (iii) Modify the formulation, so that John chooses a schedule in which he starts his day as late as possible. N.B. What is the meaning of the word section? It is stated that each course is repeated several times per day. I suppose that the pairs (i, k) and (j, k) refer to the same course k, given at distinct hours, starting at t ik and t jk respectively. Since the starting times are on the hour between 10 a.m. and 7 p.m. we may assume that i runs from i = 1 (t 1k = 10 a.m.) to i = 9 (t 9k = 6 p.m.). Moreover there are four courses, so k runs from 1 to 4. We assume furthermore that each course k is given at every hour. Otherwise, we should introduce for each course k a set H k of hours when course k is given. Optimization Group 6

8 Exercise (cont.) Solution: Use binary variables x ik, with x ik = 1 if John chooses section (i, k) and x ik = 0 otherwise. The constraints for a feasible schedule are 9 x ik = 1, k = 1,..., 4, i=1 The answer to (i) is to maximize 9 i=1 k=1 4 x ik 1, i = 1,..., 9. k=1 4 x ik p ik over these constraints. In (ii) we are asked to avoid that courses are scheduled at three or more consecutive hours. This can be modelled with the additional constraint 4 ( ) 4 2 xik + x i+1,k + x i+2,k = x i+j,k 2, i = 1,..., 7. k=1 k=1 j=0 In (iii) the first course should start as late as possible. This can be modelled by changing the objective function to 9 9 x ik (p ik + i) or to ix ik p ik. i=1 If John gives more priority to the lateness condition than to his previous preferences he might replace the constraint 4 k=1 x ik 1 by 4 k=1 x ik y i for i = 1,..., 9, where the y i are binary variables, and use the objective function 9 max iy i. Note that an optimal solution will automatically satisfy 9 i=1 y i = 4. i=1 i=1 Optimization Group 7

9 Exercise Prove that the set of feasible solutions to the formulation of the travelling salesman problem is precisely the set of incidence vectors of tours. Solution: The assignment constraints guarantee that x is the incidence vector of a collection of subtours. We only need to show that the subtour elimination constraints eliminate these subtours indeed. These constraints are: or, alternatively, i S j / S i S j / S x ij 1, S N, S. x ij S 1, S N, 2 S n 1. Suppose that the solution x contains a subtour. Take for S the set of vertices on this subtour. Then there is no edge {i, j} with i S and j / S such that x ij = 1. Hence i S j / S x ij = 0, which gives a contradiction with the first set of subtour elimination constraints. On the other hand, the subtour containing the nodes in S yields precisely S edges {i, j} with i S and j S such that x ij = 1, wherefore i S j / S x ij = S, which gives a contradiction with the second set of subtour elimination constraints. Optimization Group 8

10 Exercise The QED Company must draw up a production program for the next nine weeks. Jobs last several weeks and once started must be carried out without interruption. During each week a certain number of skilled workers are required to work full-time on the job. Thus if job i lasts p i weeks, l i,j workers are required in week j (after the start of this job) for j = 1,..., p i. The total number of workers available in week t is L t. Typical job data ( ) i, p i, l i1,..., l ipi is shown below. Job Length Week 1 Week 2 Week 3 Week (i) Formulate the problem of finding a feasible schedule as an IP. (ii) Formulate when the objective is to minimize the maximum number of workers used during any of the nine weeks. (iii) Job 1 must start at least two weeks before job 3. Formulate. (iv) Job 4 must start not later than one week after job 5. Formulate. (v) Jobs 1 and 2 both need the same machine, and cannot be carried out simultaneously. Formulate. Optimization Group 9

11 We introduce the following variables: Exercise 1.9.7: Solution I: set of all jobs {1,2,3,4,5}; T: set of all weeks {1,..., 9}; Y i : set {t : t + p i 1 T } of possible starting weeks for job i; x it : 1 if job i starts in week t, 0 otherwise; w t : number of workers in week t T. (i) To ensure that every job is handled we require for each i: t Y i x it = 1. The number of required workers in week t can be computed from: w t = l it x is. i I s Y i :s t<s+p i This number should not exceed the number of available workers: w t L t for each t T. Finally, the variables x it are binary: x it {0,1} for all i I and all t T. Optimization Group 10

12 Exercise 1.9.7: Solution (cont.) (ii) This can be achieved by adding constraints ω t w for each t T, and taking min w as objective. (iii) Job 1 will start at least two weeks before job 3 if we require t 2 s=1 x 1s x 3t for t 3 and x 1t = x 2t = 0. (iv) Job 4 will start not later than one week after job 5 if we require t+1 x 4s x 5t for t 8. s=1 (v) We need to avoid that jobs 1 and 2 are carried out simultaneously. We define y it = 1 if job i is carried out in week t and y it = 0 otherwise. Then we have p i t y it = x i,t+1 j = x i,s. Hence, using the convention that j=1 s=t+1 p i x is = 0 if s 0, we achieve the desired result by adding the constraints t s=t+1 p 1 x 1s + t s=t+1 p 2 x 2s 1, t T. Optimization Group 11

Good luck, veel succes!

Good luck, veel succes! Final exam Advanced Linear Programming, May 7, 13.00-16.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam

More information

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition

More information

Discuss the size of the instance for the minimum spanning tree problem.

Discuss the size of the instance for the minimum spanning tree problem. 3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines 2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

More information

Week 5 Integral Polyhedra

Week 5 Integral Polyhedra Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory

More information

Lecture 6: Approximation via LP Rounding

Lecture 6: Approximation via LP Rounding Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other

More information

CHAPTER 9. Integer Programming

CHAPTER 9. Integer Programming CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral

More information

Lecture 3: Linear Programming Relaxations and Rounding

Lecture 3: Linear Programming Relaxations and Rounding Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

Discrete Optimization

Discrete Optimization Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using

More information

Automated SEO. A Market Brew White Paper

Automated SEO. A Market Brew White Paper Automated SEO A Market Brew White Paper Abstract In this paper, we use the term Reach to suggest the forecasted traffic to a particular webpage or website. Reach is a traffic metric that describes an expected

More information

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

More information

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

Using the Simplex Method in Mixed Integer Linear Programming

Using the Simplex Method in Mixed Integer Linear Programming Integer Using the Simplex Method in Mixed Integer UTFSM Nancy, 17 december 2015 Using the Simplex Method in Mixed Integer Outline Mathematical Programming Integer 1 Mathematical Programming Optimisation

More information

10.1 Integer Programming and LP relaxation

10.1 Integer Programming and LP relaxation CS787: Advanced Algorithms Lecture 10: LP Relaxation and Rounding In this lecture we will design approximation algorithms using linear programming. The key insight behind this approach is that the closely

More information

1 Polyhedra and Linear Programming

1 Polyhedra and Linear Programming CS 598CSC: Combinatorial Optimization Lecture date: January 21, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im 1 Polyhedra and Linear Programming In this lecture, we will cover some basic material

More information

Lecture 7: Approximation via Randomized Rounding

Lecture 7: Approximation via Randomized Rounding Lecture 7: Approximation via Randomized Rounding Often LPs return a fractional solution where the solution x, which is supposed to be in {0, } n, is in [0, ] n instead. There is a generic way of obtaining

More information

Branch and Cut for TSP

Branch and Cut for TSP Branch and Cut for TSP jla,jc@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark 1 Branch-and-Cut for TSP Branch-and-Cut is a general technique applicable e.g. to solve symmetric

More information

THEORY OF SIMPLEX METHOD

THEORY OF SIMPLEX METHOD Chapter THEORY OF SIMPLEX METHOD Mathematical Programming Problems A mathematical programming problem is an optimization problem of finding the values of the unknown variables x, x,, x n that maximize

More information

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,

More information

Markov Chains, part I

Markov Chains, part I Markov Chains, part I December 8, 2010 1 Introduction A Markov Chain is a sequence of random variables X 0, X 1,, where each X i S, such that P(X i+1 = s i+1 X i = s i, X i 1 = s i 1,, X 0 = s 0 ) = P(X

More information

6. Mixed Integer Linear Programming

6. Mixed Integer Linear Programming 6. Mixed Integer Linear Programming Javier Larrosa Albert Oliveras Enric Rodríguez-Carbonell Problem Solving and Constraint Programming (RPAR) Session 6 p.1/40 Mixed Integer Linear Programming A mixed

More information

Branch and Bound Methods

Branch and Bound Methods Branch and Bound Methods basic ideas and attributes unconstrained nonconvex optimization mixed convex-boolean optimization Prof. S. Boyd, EE364b, Stanford University Methods for nonconvex optimization

More information

Definition of a Linear Program

Definition of a Linear Program Definition of a Linear Program Definition: A function f(x 1, x,..., x n ) of x 1, x,..., x n is a linear function if and only if for some set of constants c 1, c,..., c n, f(x 1, x,..., x n ) = c 1 x 1

More information

Integer programming solution methods - introduction

Integer programming solution methods - introduction Integer programming solution methods - introduction J E Beasley Capital budgeting There are four possible projects, which each run for 3 years and have the following characteristics. Capital requirements

More information

Solutions to Exercises 8

Solutions to Exercises 8 Discrete Mathematics Lent 2009 MA210 Solutions to Exercises 8 (1) Suppose that G is a graph in which every vertex has degree at least k, where k 1, and in which every cycle contains at least 4 vertices.

More information

Scheduling and (Integer) Linear Programming

Scheduling and (Integer) Linear Programming Scheduling and (Integer) Linear Programming Christian Artigues LAAS - CNRS & Université de Toulouse, France artigues@laas.fr Master Class CPAIOR 2012 - Nantes Christian Artigues Scheduling and (Integer)

More information

A Hybrid Monte Carlo Local Branching Algorithm for the Single Vehicle Routing Problem with Stochastic Demands

A Hybrid Monte Carlo Local Branching Algorithm for the Single Vehicle Routing Problem with Stochastic Demands A Hybrid Monte Carlo Local Branching Algorithm for the Single Vehicle Routing Problem with Stochastic Demands Michel GENDREAU Interuniversity Research Centre on Enterprise Networks, Logistics and Transportation

More information

Proximal mapping via network optimization

Proximal mapping via network optimization L. Vandenberghe EE236C (Spring 23-4) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Basic Components of an LP:

Basic Components of an LP: 1 Linear Programming Optimization is an important and fascinating area of management science and operations research. It helps to do less work, but gain more. Linear programming (LP) is a central topic

More information

Minimizing the Number of Machines in a Unit-Time Scheduling Problem

Minimizing the Number of Machines in a Unit-Time Scheduling Problem Minimizing the Number of Machines in a Unit-Time Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.bas-net.by Frank

More information

Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method

Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method Lecture 3 3B1B Optimization Michaelmas 2015 A. Zisserman Linear Programming Extreme solutions Simplex method Interior point method Integer programming and relaxation The Optimization Tree Linear Programming

More information

Linear Programming Notes V Problem Transformations

Linear Programming Notes V Problem Transformations Linear Programming Notes V Problem Transformations 1 Introduction Any linear programming problem can be rewritten in either of two standard forms. In the first form, the objective is to maximize, the material

More information

The TSP is a special case of VRP, which means VRP is NP-hard.

The TSP is a special case of VRP, which means VRP is NP-hard. 49 6. ROUTING PROBLEMS 6.1. VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles,

More information

GRAPH THEORY and APPLICATIONS. Trees

GRAPH THEORY and APPLICATIONS. Trees GRAPH THEORY and APPLICATIONS Trees Properties Tree: a connected graph with no cycle (acyclic) Forest: a graph with no cycle Paths are trees. Star: A tree consisting of one vertex adjacent to all the others.

More information

Chapter 1, Operations Research (OR)

Chapter 1, Operations Research (OR) Chapter 1, Operations Research (OR) Kent Andersen February 7, 2007 The term Operations Research refers to research on operations. In other words, the study of how to operate something in the best possible

More information

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen MASTER STHESIS Minimizing costs for transport buyers using integer programming and column generation Eser Esirgen DepartmentofMathematicalSciences CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG

More information

4.6 Linear Programming duality

4.6 Linear Programming duality 4.6 Linear Programming duality To any minimization (maximization) LP we can associate a closely related maximization (minimization) LP. Different spaces and objective functions but in general same optimal

More information

Integer Programming Formulation

Integer Programming Formulation Integer Programming Formulation 1 Integer Programming Introduction When we introduced linear programs in Chapter 1, we mentioned divisibility as one of the LP assumptions. Divisibility allowed us to consider

More information

Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

More information

Minimize subject to. x S R

Minimize subject to. x S R Chapter 12 Lagrangian Relaxation This chapter is mostly inspired by Chapter 16 of [1]. In the previous chapters, we have succeeded to find efficient algorithms to solve several important problems such

More information

3. Linear Programming and Polyhedral Combinatorics

3. Linear Programming and Polyhedral Combinatorics Massachusetts Institute of Technology Handout 6 18.433: Combinatorial Optimization February 20th, 2009 Michel X. Goemans 3. Linear Programming and Polyhedral Combinatorics Summary of what was seen in the

More information

Introduction to Linear Programming.

Introduction to Linear Programming. Chapter 1 Introduction to Linear Programming. This chapter introduces notations, terminologies and formulations of linear programming. Examples will be given to show how real-life problems can be modeled

More information

1. Determine all real numbers a, b, c, d that satisfy the following system of equations.

1. Determine all real numbers a, b, c, d that satisfy the following system of equations. altic Way 1999 Reykjavík, November 6, 1999 Problems 1. etermine all real numbers a, b, c, d that satisfy the following system of equations. abc + ab + bc + ca + a + b + c = 1 bcd + bc + cd + db + b + c

More information

Solving the ILP using branch-and-cut

Solving the ILP using branch-and-cut Solving the ILP using branch-and-cut Solving ILPs is a main topic in combinatorial optimization. We will take a brief look at the branch-and-cut approach. Branch-and-cut makes use of two techniques: Cutting

More information

Linear Programming: Introduction

Linear Programming: Introduction Linear Programming: Introduction Frédéric Giroire F. Giroire LP - Introduction 1/28 Course Schedule Session 1: Introduction to optimization. Modelling and Solving simple problems. Modelling combinatorial

More information

max cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x

max cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x Linear Programming Linear programming refers to problems stated as maximization or minimization of a linear function subject to constraints that are linear equalities and inequalities. Although the study

More information

Duality in General Programs. Ryan Tibshirani Convex Optimization 10-725/36-725

Duality in General Programs. Ryan Tibshirani Convex Optimization 10-725/36-725 Duality in General Programs Ryan Tibshirani Convex Optimization 10-725/36-725 1 Last time: duality in linear programs Given c R n, A R m n, b R m, G R r n, h R r : min x R n c T x max u R m, v R r b T

More information

Answers to some of the exercises.

Answers to some of the exercises. Answers to some of the exercises. Chapter 2. Ex.2.1 (a) There are several ways to do this. Here is one possibility. The idea is to apply the k-center algorithm first to D and then for each center in D

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

1 Unrelated Parallel Machine Scheduling

1 Unrelated Parallel Machine Scheduling IIIS 014 Spring: ATCS - Selected Topics in Optimization Lecture date: Mar 13, 014 Instructor: Jian Li TA: Lingxiao Huang Scribe: Yifei Jin (Polishing not finished yet.) 1 Unrelated Parallel Machine Scheduling

More information

Jianlin Cheng, PhD Computer Science Department University of Missouri, Columbia Fall, 2013

Jianlin Cheng, PhD Computer Science Department University of Missouri, Columbia Fall, 2013 Jianlin Cheng, PhD Computer Science Department University of Missouri, Columbia Fall, 2013 Princeton s class notes on linear programming MIT s class notes on linear programming Xian Jiaotong University

More information

The multi-integer set cover and the facility terminal cover problem

The multi-integer set cover and the facility terminal cover problem The multi-integer set cover and the facility teral cover problem Dorit S. Hochbaum Asaf Levin December 5, 2007 Abstract The facility teral cover problem is a generalization of the vertex cover problem.

More information

What is Linear Programming?

What is Linear Programming? Chapter 1 What is Linear Programming? An optimization problem usually has three essential ingredients: a variable vector x consisting of a set of unknowns to be determined, an objective function of x to

More information

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach MASTER S THESIS Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach PAULINE ALDENVIK MIRJAM SCHIERSCHER Department of Mathematical

More information

. P. 4.3 Basic feasible solutions and vertices of polyhedra. x 1. x 2

. P. 4.3 Basic feasible solutions and vertices of polyhedra. x 1. x 2 4. Basic feasible solutions and vertices of polyhedra Due to the fundamental theorem of Linear Programming, to solve any LP it suffices to consider the vertices (finitely many) of the polyhedron P of the

More information

LINEAR PROGRAMMING PROBLEM: A GEOMETRIC APPROACH

LINEAR PROGRAMMING PROBLEM: A GEOMETRIC APPROACH 59 LINEAR PRGRAMMING PRBLEM: A GEMETRIC APPRACH 59.1 INTRDUCTIN Let us consider a simple problem in two variables x and y. Find x and y which satisfy the following equations x + y = 4 3x + 4y = 14 Solving

More information

A Reference Point Method to Triple-Objective Assignment of Supporting Services in a Healthcare Institution. Bartosz Sawik

A Reference Point Method to Triple-Objective Assignment of Supporting Services in a Healthcare Institution. Bartosz Sawik Decision Making in Manufacturing and Services Vol. 4 2010 No. 1 2 pp. 37 46 A Reference Point Method to Triple-Objective Assignment of Supporting Services in a Healthcare Institution Bartosz Sawik Abstract.

More information

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

Stanford University CS261: Optimization Handout 6 Luca Trevisan January 20, In which we introduce the theory of duality in linear programming.

Stanford University CS261: Optimization Handout 6 Luca Trevisan January 20, In which we introduce the theory of duality in linear programming. Stanford University CS261: Optimization Handout 6 Luca Trevisan January 20, 2011 Lecture 6 In which we introduce the theory of duality in linear programming 1 The Dual of Linear Program Suppose that we

More information

MATHEMATICAL BACKGROUND

MATHEMATICAL BACKGROUND Chapter 1 MATHEMATICAL BACKGROUND This chapter discusses the mathematics that is necessary for the development of the theory of linear programming. We are particularly interested in the solutions of a

More information

Integer Programming Approach to Printed Circuit Board Assembly Time Optimization

Integer Programming Approach to Printed Circuit Board Assembly Time Optimization Integer Programming Approach to Printed Circuit Board Assembly Time Optimization Ratnesh Kumar Haomin Li Department of Electrical Engineering University of Kentucky Lexington, KY 40506-0046 Abstract A

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1. Introduction Linear Programming for Optimization Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1.1 Definition Linear programming is the name of a branch of applied mathematics that

More information

Ant Colony Optimization for Air Traffic Conflict Resolution

Ant Colony Optimization for Air Traffic Conflict Resolution Ant Colony Optimization for Air Traffic Conflict Resolution Nicolas Durand, Jean-Marc Alliot DSNA/R&D/POM 1 http://pom.tls.cena.fr/pom July 1, 2009 1 DSNA/DTI R&D/Planing Optimization Modeling Team Introduction

More information

Inverse Optimization by James Orlin

Inverse Optimization by James Orlin Inverse Optimization by James Orlin based on research that is joint with Ravi Ahuja Jeopardy 000 -- the Math Programming Edition The category is linear objective functions The answer: When you maximize

More information

Mathematical finance and linear programming (optimization)

Mathematical finance and linear programming (optimization) Mathematical finance and linear programming (optimization) Geir Dahl September 15, 2009 1 Introduction The purpose of this short note is to explain how linear programming (LP) (=linear optimization) may

More information

MATH 289 PROBLEM SET 1: INDUCTION. 1. The induction Principle The following property of the natural numbers is intuitively clear:

MATH 289 PROBLEM SET 1: INDUCTION. 1. The induction Principle The following property of the natural numbers is intuitively clear: MATH 89 PROBLEM SET : INDUCTION The induction Principle The following property of the natural numbers is intuitively clear: Axiom Every nonempty subset of the set of nonnegative integers Z 0 = {0,,, 3,

More information

1 Solving LPs: The Simplex Algorithm of George Dantzig

1 Solving LPs: The Simplex Algorithm of George Dantzig Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.

More information

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery

More information

3 Does the Simplex Algorithm Work?

3 Does the Simplex Algorithm Work? Does the Simplex Algorithm Work? In this section we carefully examine the simplex algorithm introduced in the previous chapter. Our goal is to either prove that it works, or to determine those circumstances

More information

A MODEL TO SOLVE EN ROUTE AIR TRAFFIC FLOW MANAGEMENT PROBLEM:

A MODEL TO SOLVE EN ROUTE AIR TRAFFIC FLOW MANAGEMENT PROBLEM: A MODEL TO SOLVE EN ROUTE AIR TRAFFIC FLOW MANAGEMENT PROBLEM: A TEMPORAL AND SPATIAL CASE V. Tosic, O. Babic, M. Cangalovic and Dj. Hohlacov Faculty of Transport and Traffic Engineering, University of

More information

Section Notes 4. Duality, Sensitivity, Dual Simplex, Complementary Slackness. Applied Math 121. Week of February 28, 2011

Section Notes 4. Duality, Sensitivity, Dual Simplex, Complementary Slackness. Applied Math 121. Week of February 28, 2011 Section Notes 4 Duality, Sensitivity, Dual Simplex, Complementary Slackness Applied Math 121 Week of February 28, 2011 Goals for the week understand the relationship between primal and dual programs. know

More information

ECEN 5682 Theory and Practice of Error Control Codes

ECEN 5682 Theory and Practice of Error Control Codes ECEN 5682 Theory and Practice of Error Control Codes Convolutional Codes University of Colorado Spring 2007 Linear (n, k) block codes take k data symbols at a time and encode them into n code symbols.

More information

On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots

On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots Als Manuskript gedruckt Technische Universität Dresden Herausgeber: Der Rektor On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots F. Heinicke (1), A. Simroth (1), G. Scheithauer

More information

Scheduling Algorithm with Optimization of Employee Satisfaction

Scheduling Algorithm with Optimization of Employee Satisfaction Washington University in St. Louis Scheduling Algorithm with Optimization of Employee Satisfaction by Philip I. Thomas Senior Design Project http : //students.cec.wustl.edu/ pit1/ Advised By Associate

More information

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where.

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where. Introduction Linear Programming Neil Laws TT 00 A general optimization problem is of the form: choose x to maximise f(x) subject to x S where x = (x,..., x n ) T, f : R n R is the objective function, S

More information

Integer Linear Programming Formulation of the. Generalized Vehicle Routing Problem

Integer Linear Programming Formulation of the. Generalized Vehicle Routing Problem Integer Linear Programming Formulation of the Generalized Vehicle Routing Problem Imdat Kara, Tolga Bektas Baskent University, Dept. of Industrial Engineering, Baglica Kampusu, Eskisehir Yolu 20. km.,

More information

The Transportation Problem: LP Formulations

The Transportation Problem: LP Formulations The Transportation Problem: LP Formulations An LP Formulation Suppose a company has m warehouses and n retail outlets A single product is to be shipped from the warehouses to the outlets Each warehouse

More information

The Time Window Assignment Vehicle Routing Problem

The Time Window Assignment Vehicle Routing Problem The Time Window Assignment Vehicle Routing Problem Remy Spliet, Adriana F. Gabor Econometric Institute Erasumus University Rotterdam P.O. Box 1738, 3000 DR Rotterdam, The Netherlands EI2012 07 April 20,

More information

FE670 Algorithmic Trading Strategies. Stevens Institute of Technology

FE670 Algorithmic Trading Strategies. Stevens Institute of Technology FE670 Algorithmic Trading Strategies Lecture 6. Portfolio Optimization: Basic Theory and Practice Steve Yang Stevens Institute of Technology 10/03/2013 Outline 1 Mean-Variance Analysis: Overview 2 Classical

More information

Transportation Polytopes: a Twenty year Update

Transportation Polytopes: a Twenty year Update Transportation Polytopes: a Twenty year Update Jesús Antonio De Loera University of California, Davis Based on various papers joint with R. Hemmecke, E.Kim, F. Liu, U. Rothblum, F. Santos, S. Onn, R. Yoshida,

More information

An Exact Algorithm for Steiner Tree Problem on Graphs

An Exact Algorithm for Steiner Tree Problem on Graphs International Journal of Computers, Communications & Control Vol. I (2006), No. 1, pp. 41-46 An Exact Algorithm for Steiner Tree Problem on Graphs Milan Stanojević, Mirko Vujošević Abstract: The paper

More information

Lecture 1: Linear Programming Models. Readings: Chapter 1; Chapter 2, Sections 1&2

Lecture 1: Linear Programming Models. Readings: Chapter 1; Chapter 2, Sections 1&2 Lecture 1: Linear Programming Models Readings: Chapter 1; Chapter 2, Sections 1&2 1 Optimization Problems Managers, planners, scientists, etc., are repeatedly faced with complex and dynamic systems which

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

Integrating Benders decomposition within Constraint Programming

Integrating Benders decomposition within Constraint Programming Integrating Benders decomposition within Constraint Programming Hadrien Cambazard, Narendra Jussien email: {hcambaza,jussien}@emn.fr École des Mines de Nantes, LINA CNRS FRE 2729 4 rue Alfred Kastler BP

More information

Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

More information

2 The Euclidean algorithm

2 The Euclidean algorithm 2 The Euclidean algorithm Do you understand the number 5? 6? 7? At some point our level of comfort with individual numbers goes down as the numbers get large For some it may be at 43, for others, 4 In

More information

Solving Integer Programming with Branch-and-Bound Technique

Solving Integer Programming with Branch-and-Bound Technique Solving Integer Programming with Branch-and-Bound Technique This is the divide and conquer method. We divide a large problem into a few smaller ones. (This is the branch part.) The conquering part is done

More information

Outline. Linear Programming (LP): Simplex Search. Simplex: An Extreme-Point Search Algorithm. Basic Solutions

Outline. Linear Programming (LP): Simplex Search. Simplex: An Extreme-Point Search Algorithm. Basic Solutions Outline Linear Programming (LP): Simplex Search Benoît Chachuat McMaster University Department of Chemical Engineering ChE 4G03: Optimization in Chemical Engineering 1 Basic Solutions

More information

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

More information

Objective Function Coefficients and Range of Optimality If c k changes to values outside the range of optimality, a new c j - z j row may be generated

Objective Function Coefficients and Range of Optimality If c k changes to values outside the range of optimality, a new c j - z j row may be generated Chapter 5 Simplex-Based Sensitivity Analysis and Duality Sensitivity Analysis with the Simplex Tableau Duality 1 Objective Function Coefficients and Range of Optimality The range of optimality for an objective

More information

1 Basic Definitions and Concepts in Graph Theory

1 Basic Definitions and Concepts in Graph Theory CME 305: Discrete Mathematics and Algorithms 1 Basic Definitions and Concepts in Graph Theory A graph G(V, E) is a set V of vertices and a set E of edges. In an undirected graph, an edge is an unordered

More information

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models Integer Programming INTEGER PROGRAMMING 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 information

Scheduling. Open shop, job shop, flow shop scheduling. Related problems. Open shop, job shop, flow shop scheduling

Scheduling. Open shop, job shop, flow shop scheduling. Related problems. Open shop, job shop, flow shop scheduling Scheduling Basic scheduling problems: open shop, job shop, flow job The disjunctive graph representation Algorithms for solving the job shop problem Computational complexity of the job shop problem Open

More information