Linear programming and duality theory

Similar documents
Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

COMP331/557. Chapter 2: The Geometry of Linear Programming. (Bertsimas & Tsitsiklis, Chapter 2)

Math 5593 Linear Programming Lecture Notes

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 29

Linear Programming. Course review MS-E2140. v. 1.1

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

Some Advanced Topics in Linear Programming

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

Tribhuvan University Institute Of Science and Technology Tribhuvan University Institute of Science and Technology

Finite Math Linear Programming 1 May / 7

Lecture 5: Duality Theory

Linear Programming in Small Dimensions

Applied Integer Programming

Linear Programming Motivation: The Diet Problem

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Combinatorial Geometry & Topology arising in Game Theory and Optimization

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

11 Linear Programming

Linear Programming: Introduction

4 Linear Programming (LP) E. Amaldi -- Foundations of Operations Research -- Politecnico di Milano 1

Linear Optimization. Andongwisye John. November 17, Linkoping University. Andongwisye John (Linkoping University) November 17, / 25

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Linear Programming and its Applications

LP Geometry: outline. A general LP. minimize x c T x s.t. a T i. x b i, i 2 M 1 a T i x = b i, i 2 M 3 x j 0, j 2 N 1. where

Linear Programming Problems

Chapter 4 Concepts from Geometry

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

Read: H&L chapters 1-6

Artificial Intelligence

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

maximize c, x subject to Ax b,

Lecture 4: Rational IPs, Polyhedron, Decomposition Theorem

Lecture Notes 2: The Simplex Algorithm

Lecture 4: Linear Programming

Advanced Linear Programming. Organisation. Lecturers: Leen Stougie, CWI and Vrije Universiteit in Amsterdam

3. The Simplex algorithmn The Simplex algorithmn 3.1 Forms of linear programs

Math 414 Lecture 2 Everyone have a laptop?

LECTURE 13: SOLUTION METHODS FOR CONSTRAINED OPTIMIZATION. 1. Primal approach 2. Penalty and barrier methods 3. Dual approach 4. Primal-dual approach

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Support Vector Machines. James McInerney Adapted from slides by Nakul Verma

Convex Geometry arising in Optimization

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Heuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

Polytopes Course Notes

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

Linear Programming Duality and Algorithms

Dual-fitting analysis of Greedy for Set Cover

4 Integer Linear Programming (ILP)

Chapter 15 Introduction to Linear Programming

Lecture 5: Properties of convex sets

COMS 4771 Support Vector Machines. Nakul Verma

Integer Programming Theory

CS675: Convex and Combinatorial Optimization Spring 2018 The Simplex Algorithm. Instructor: Shaddin Dughmi

Linear Optimization and Extensions: Theory and Algorithms

Advanced Algorithms Linear Programming

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

AM 121: Intro to Optimization Models and Methods Fall 2017

R n a T i x = b i} is a Hyperplane.

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

Conic Duality. yyye

Lecture 6: Faces, Facets

The simplex method and the diameter of a 0-1 polytope

Simplex Algorithm in 1 Slide

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

IE 5531: Engineering Optimization I

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

The Simplex Algorithm

16.410/413 Principles of Autonomy and Decision Making

Lecture 3. Corner Polyhedron, Intersection Cuts, Maximal Lattice-Free Convex Sets. Tepper School of Business Carnegie Mellon University, Pittsburgh

Introduction to Modern Control Systems

OPERATIONS RESEARCH. Linear Programming Problem

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

Convexity: an introduction

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if

Lecture 7: Support Vector Machine

THEORY OF LINEAR AND INTEGER PROGRAMMING

Convex Optimization CMU-10725

J Linear Programming Algorithms

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

Design and Analysis of Algorithms (V)

Linear methods for supervised learning

INTRODUCTION TO LINEAR AND NONLINEAR PROGRAMMING

FACES OF CONVEX SETS

be a polytope. has such a representation iff it contains the origin in its interior. For a generic, sort the inequalities so that

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 50

Notes taken by Mea Wang. February 11, 2005

Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 1: Introduction to Optimization. Instructor: Shaddin Dughmi

Lecture 2 - Introduction to Polytopes

Transcription:

Linear programming and duality theory Complements of Operations Research Giovanni Righini

Linear Programming (LP) A linear program is defined by linear constraints, a linear objective function. Its variables are continuous and they can be free (unrestricted in sign), non-negative (constrained to be non-negative).

LP: general form In its general form, it reads like this: P) minimize z =c T x subject to a x b a x = b x 0 x free We can always get rid of the free variables by replacing each of them with the difference of two non-negative variables. We can always get rid of linear equalities by variable elimination.

LP: inequalities form In its inequalities form, a linear program reads like this: P) minimize z =c T x subject to ax b x 0 Every solution of the problem is a point in an n-dimensional space, where n is the number of variables. Solutions are feasible if the comply with all the constraints and the non-negativity restrictions. Otherwise they are infeasible. The set of feasible solutions is the feasible region of the linear program.

Constraints: geometrical interpretation The constraints set of a linear program is made of linear inequalities. In the variables space linear equalities correspond to hyperplanes; linear inequalities correspond to halfspaces. The feasible region is a system of linear inequalities; it corresponds to the intersection of halfspaces, i.e. to a polyhedron. Half spaces are convex; hence their intersection is also convex: polyhedra are convex. Theorem (Minkowsky and Weil). Every point in a polyhedron can be obtained as a convex combination of its extreme points and its extreme rays.

Polyhedra: three cases Given a polyhedron one of these three cases occurs: the polyhedron is not empty and it is bounded (polytope); the polyhedron is not empty and it is not bounded; the polyhedron is empty.

Case 1: polytope Figure: A polytope is defined by its extreme points.

Case 2: unbounded polyhedron Figure: An unbounded polyhedron is defined by its extreme points and its extreme rays.

Case 3: empty polyhedron Figure: An empty polyhedron contains no points at all.

Objective function: geometrical interpretation The objective function of a linear program is represented by parallel hyperplanes, such that points on the same hyperplane have the same value. Figure: minimize z = 2x 1 3x 2

Linear programs: three cases Given a linear program P, one of these three cases occurs (and the simplex algorithm detects it in a finite number of steps): P has a finite optimal solution; P is unbounded; P is infeasible.

Case 1: finite optimal solution Figure: Two cases in which the linear program has a finite optimal solution.

Case 2: unbounded problem Figure: The linear program is unbounded if the direction of the objective function is in the cone defined by the extreme rays.

Case 3: infeasible problem Figure: Empty polyhedron: the linear program in infeasible, independently of the objective function.

LP: standard form A linear program is in its standard form, when all inequalities have been turned into equalities by explicitly inserting non-negative slack variables or surplus variables. Inequalities form: P) minimize z =c T x subject to a x b a x b x 0. m inequality constraints n non-negative variables. Standard form: P) minimize z =c T x subject to a x x surplus = b a x + x slack = b x, x surplus, x slack 0. m equality constraints n + m non-negative variables. The number of inequalities is the same in the two models.

Bases A base is a subset of m linearly independent columns of the constraint matrix. The m variables corresponding to the columns of the base are basic. The other n variables are non-basic. If the value of the non-basic variables is fixed, we are left with a non-degenerate system of m linear equalities and m variables, which provides a unique solution x. If x 0, then it is feasible. Otherwise it is infeasible.

Base solutions An inequality constraint is active iff its slack/surplus variable is null. If we fix n (non-basic) variables to 0, we define a solution x in which n constraints are active. The points of intersection of n constraints in an n-dimensional variable space are called base solutions. They can be feasible or infeasible. All the extreme points of the polyhedron are feasible base solutions. Figure: An example with n = 2, m = 2. There are 6 base solutions: 4 are feasible, 2 are infeasible.

Linear Programming (LP) duality Every linear program P has a dual linear program D. P) min z =c T x + c T x s.t. a x + a x b [y ] d x + d x = b [y ] x 0 x free D) max w =b T y + b T y s.t. a T y + d T y c [x ] a T y + d T y = c [x ] y 0 y free

The fundamental theorem of LP duality Given a primal-dual pair, one of these four cases occurs (and the simplex algorithm detects it in a finite number of steps): both P and D have a finite optimal solution; P is unbounded and D is infeasible; D is unbounded and P is infeasible; both P and D are infeasible.

Weak duality theorem Weak duality theorem. For each feasible solution x of P and for each feasible solution y of D, z(x) w(y). Corollary 1. If P is unbounded, then D is infeasible. Corollary 2. If x is feasible for P and y is feasible for D and z(x) = w(y), then both x and y are also optimal.

Strong duality theorem Strong duality theorem. If there exist a feasible and optimal solution x for P and a feasible and optimal solution y for D, then z(x ) = w(y ).

Complementary slackness theorem Complementary slackness theorem. Given a feasible solution x for P and a feasible solution y for D, necessary and sufficient condition for them to be optimal is: Primal complementary slackness conditions (they are n): x (c a T y + d T y ) = 0 Dual complementary slackness conditions (they are m): y (a x + a x b ) = 0. They only refer to inequality constraints, because those corresponding to equality constraints are always trivially satisfied.

Primal-dual algorithms A primal-dual algorithm solves linear programming problems exploiting duality theory and in particular the CSCs. The algorithm is initialized with a dual feasible solution and a corresponding primal solution (in general, infeasible) satisfying the CSCs. After every iteration the algorithm keeps a pair of primal (infeasible) and dual (feasible) solutions, satisfying the CSCs. The algorithm alternates two types of iterations, and it monotonically decreases primal infeasibility until it achieves primal feasibility. Primal iteration: keeping the current dual feasible solution fixed, find a primal solution minimizing primal infeasibility among those satisfying the CSCs; Dual iteration: keeping the current primal solution fixed, modify the dual solution, keeping it feasible and the CSCs satisfied.