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

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

AM 121: Intro to Optimization Models and Methods Fall 2017

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

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

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

Read: H&L chapters 1-6

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

Linear programming and duality theory

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

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

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

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

Math 5593 Linear Programming Lecture Notes

Lesson 17. Geometry and Algebra of Corner Points

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

Some Advanced Topics in Linear Programming

An iteration of the simplex method (a pivot )

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

Mathematical and Algorithmic Foundations Linear Programming and Matchings

The Simplex Algorithm

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

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

Linear Programming Motivation: The Diet Problem

Linear Programming Terminology

Linear Programming Problems

16.410/413 Principles of Autonomy and Decision Making

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

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

LECTURE 6: INTERIOR POINT METHOD. 1. Motivation 2. Basic concepts 3. Primal affine scaling algorithm 4. Dual affine scaling algorithm

Linear programming II João Carlos Lourenço

Optimization of Design. Lecturer:Dung-An Wang Lecture 8

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

INEN 420 Final Review

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

Artificial Intelligence

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

Lecture 2 - Introduction to Polytopes

Lecture 9: Linear Programming

4.1 Graphical solution of a linear program and standard form

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

New Directions in Linear Programming

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

CSE 40/60236 Sam Bailey

Recap, and outline of Lecture 18

Finite Math Linear Programming 1 May / 7

Introduction. Linear because it requires linear functions. Programming as synonymous of planning.

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

Introduction to Operations Research

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1

Lecture Notes 2: The Simplex Algorithm

J Linear Programming Algorithms

MATHEMATICS II: COLLECTION OF EXERCISES AND PROBLEMS

Linear Programming Duality and Algorithms

George B. Dantzig Mukund N. Thapa. Linear Programming. 1: Introduction. With 87 Illustrations. Springer

Chapter 15 Introduction to Linear Programming

maximize c, x subject to Ax b,

Introduction to Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Solving Linear Programs Using the Simplex Method (Manual)

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

6.854 Advanced Algorithms. Scribes: Jay Kumar Sundararajan. Duality

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

Lecture 16 October 23, 2014

IE 5531: Engineering Optimization I

4 Integer Linear Programming (ILP)

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

Linear Optimization and Extensions: Theory and Algorithms

CASE STUDY. fourteen. Animating The Simplex Method. case study OVERVIEW. Application Overview and Model Development.

Graphs that have the feasible bases of a given linear

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology Madras.

Graphs and Network Flows IE411. Lecture 20. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 4. Dr. Ted Ralphs

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

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

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

Simplex Algorithm in 1 Slide

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

ISE203 Optimization 1 Linear Models. Dr. Arslan Örnek Chapter 4 Solving LP problems: The Simplex Method SIMPLEX

Department of Mathematics Oleg Burdakov of 30 October Consider the following linear programming problem (LP):

5 The Theory of the Simplex Method

ORF 307: Lecture 14. Linear Programming: Chapter 14: Network Flows: Algorithms

The Simplex Algorithm. Chapter 5. Decision Procedures. An Algorithmic Point of View. Revision 1.0

ORIE 6300 Mathematical Programming I September 2, Lecture 3

VARIANTS OF THE SIMPLEX METHOD

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

Lecture 6: Faces, Facets

Chapter 1 Linear Programming. Paragraph 4 The Simplex Algorithm

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

MATH 310 : Degeneracy and Geometry in the Simplex Method

Contents. I Basics 1. Copyright by SIAM. Unauthorized reproduction of this article is prohibited.

Easter Term OPTIMIZATION

Lecture 5: Duality Theory

BCN Decision and Risk Analysis. Syed M. Ahmed, Ph.D.

Marginal and Sensitivity Analyses

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

Math 5490 Network Flows

AMS : Combinatorial Optimization Homework Problems - Week V

Linear Programming: Introduction

Chapter II. Linear Programming

maximize minimize b T y subject to A T y c, 0 apple y. The problem on the right is in standard form so we can take its dual to get the LP c T x

5.4 Pure Minimal Cost Flow

Transcription:

Section Notes 5 Review of Linear Programming Applied Math / Engineering Sciences 121 Week of October 15, 2017 The following list of topics is an overview of the material that was covered in the lectures and sections. If anything is unclear or you have questions regarding a topic, ask your TF to clarify that issue. Proficiency in all of the topics listed below is necessary. Contents 1 Lecture 2: Intro 2 2 Lecture 3: LP Modeling 2 3 Lecture 4: Convexity, Extreme points 3 4 Lecture 5: Primal Simplex 4 5 Lecture 6: Advanced Primal Simplex 5 6 Lecture 7: Duality 5 7 Lecture 8: Sensitivity Analysis 6 8 Lecture 9: Complementary Slackness 7 9 Lecture 10: Dual Simplex 7 1

1 Lecture 2: Intro What is a linear program? A linear program (LP) is an optimization problem that involves maximizing or minimizing a linear objective function by choosing values for decision variables subject to a finite number of linear equality and inequality constraints Standard inequality form Matrix notation Graphical view optimality multiple optimal solutions unbounded objective infeasibility Putting things into canonical form maximization positive RHS equality constraints non-negative variables isolated variables Basic Feasible Solutions: An LP in canonical form has an associated BFS where the isolated decision variables are non-zero and all other variables are zero. 2 Lecture 3: LP Modeling Modeling Using objective to push constraints Finding ways to model non-linear aspects of a problem: Minimize the maximum Absolute value Positive and negative parts (SailCo) Specifying decision variables (Save-It) Ratio constraints 2

3 Lecture 4: Convexity, Extreme points Convexity Polyhedron, hyperplane, halfspace Theorem: Polyhedron is a convex set Theorem: If c T x c T x for all feasible extreme solutions x that are adjacent to x then feasible, extreme solution x is optimal. Extreme point Let S be the set of points in the feasible region of an LP. A point y in S is called an extreme point of S if y cannot be written as y = λw + (1 λ)x for two distinct point w and x in S and 0 < λ < 1. That is, y does not lie on the line segment joining any two points of S Theorem: Optimality of Extreme Points Suppose P has at least 1 extreme point and there exists an optimal solution, then there exists an optimal extreme solution Linearly independent Basis Span Columns of matrix A are linearly independent if the only solution of Ax = 0 is x = 0 A basis of R m is a set of linearly independent m-dimensional vectors A 1,..., A m with the property that every vector of R m can be written as a linear combination of the vectors A 1,..., A m. Note that the vectors A 1,..., A m form a square matrix that is invertible These vectors A 1,..., A m span the vector space R m. Matrix invertible columns span columns are linearly independent Ax = b has unique solution Basis of a matrix A basis B for an arbitrary m-by-n matrix A can also be seen as a list of m numbers chosen from {1, 2,..., n} such that the square matrix A B with m columns from A indexed by this list is a basis for R m, i.e. the column vectors span the space R m. Again, A B will be invertible Basic solution The basic solution x of the system Ax = b corresponding to basis B is the unique solution of this system satisfying x j = 0 for all indices j B Main LP assumptions (for an LP in canonical form) Matrix A has full row rank 3

Matrix A has less rows than columns Columns of A span Existence of a basis Extension rule Theorem: A matrix has a basis if and only if its columns span Basic feasible solution (BFS) A basic solution for Ax = b that is also feasible (i.e. non-negativity constraints are also satisfied) is a basic feasible solution. Theorem: Extreme points of polyhedron P are exactly the BFS. 4 Lecture 5: Primal Simplex Tableaux Theorem: if B is a basis for A, there is tableaux corresponding to B Degeneracy definition At least one basic variable has value zero. Adjacent bases two bases for matrix A are adjacent if they share all but one basic variable Number of possible BFS Speed of Simplex algorithm (worst case vs. in practice) Simplex method Initialization (Phase I) Check optimality Choose entering index Check unboundedness Choose leaving index Pivot to a new tableau, go to check optimality step Optimality condition Reduced costs are all non-negative. Entering index (most negative reduced cost, smallest subscript, etc) Ratio test 4

Leaving index Pivot Theorem: finite termination without degeneracy 5 Lecture 6: Advanced Primal Simplex Phase I Artificial variables Find initial BFS Remove artificial variables Feasibility check Difference between slack and artificial variables Slack variables transform inequalities into equalities. May take strictly positive or zero values at feasible solutions to original LP Artificial variables are tools to find an initial feasible tableau. They must be zero at a feasible solution and are only used during Phase 1 to find a BFS for the original problem. Degeneracy Degenerate basic solution Degenerate tableau When degeneracy occurs Cycling Smallest subscript rule Bland s theorem General termination Fundamental theorems of LP Theorem: LP is optimal, infeasible, or bounded Lemma: If columns span, and an LP is feasible and not unbounded, then the LP has an optimal solution 6 Lecture 7: Duality Optimality by multipliers 5

Certificate of optimality Primal and Dual form Dual for standard equality form Weak duality theorem Primal Optimal Value Dual Optimal Value Corollary: If LP in standard equality form is unbounded then dual infeasible. Certificate of optimality Given primal feasible solution x and dual feasible solution y where the primal and dual objectives are equal, then x is optimal for the primal problem and y is optimal for the dual problem Strong duality theorem (no gap) If an LP has an optimal solution then so does its dual and the two optimal values are equal Lemma: optimal dual solution from primal Duality for general LPs Dual for standard inequality form (special case) 7 Lecture 8: Sensitivity Analysis Sensitivity Analysis - robustness of solution Considering changes graphically Shadow price (for maximization problems): the amount by which the objective value is improved when the RHS value is increased by one unit Shadow price optimal dual value reduced cost on slack variable in optimal primal tableau Generating AMPL sensitivity output Algebra: relating a tableau with basis B to the LP problem Different kinds of sensitivity changes: Change objective coefficient of non-basic var: check reduced cost on changed coefficient Change objective coefficient of basic var: check reduced cost on every nonbasic var Change RHS: check b 0 Change entries in column of nonbasic var: check reduced cost of affected nonbasic var ( pricing out ) 6

Changing multiple parameters at once 8 Lecture 9: Complementary Slackness Theorem: need corresponding constraint to be tight whenever variable is strictly positive. In notation: x j e j = 0 and y i s i = 0 for primal slack variables s i and dual excess variables e j Checking optimality, restricted dual 9 Lecture 10: Dual Simplex Naming convention (for understanding dual simplex) Motivation for dual simplex Dictionaries Tracking primal simplex in dual space Comparing Primal and Dual Simplex Dual simplex: dual pivots, track in primal Dual feasible (reduced-costs non-negative) Dual optimal (RHS non-negative) Dual simplex: Assume have dual feasible tableau Step 1: Pick basic variable, x r, to leave with strictly negative RHS Step 2: Pick nonbasic variable, x k to enter by considering row r and strictly negative entries. Ratio test Step 3: Pivot on (r,k) and go to step 1 Continue until have dual optimal tableau Why use dual simplex? Adding a new constraint Changing a RHS new Phase 1 method 7