Introduce the idea of a nondegenerate tableau and its analogy with nondenegerate vertices.

Similar documents
Standard Form An LP is in standard form when: All variables are non-negativenegative All constraints are equalities Putting an LP formulation into sta

AM 121: Intro to Optimization

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

1 Review Session. 1.1 Lecture 2

Simplex Algorithm Using Canonical Tableaus

AM 121: Intro to Optimization Models and Methods Fall 2018

CO 602/CM 740: Fundamentals of Optimization Problem Set 4

Lecture 2: The Simplex method

9.1 Linear Programs in canonical form

IE 400: Principles of Engineering Management. Simplex Method Continued

IE 5531: Engineering Optimization I

3 The Simplex Method. 3.1 Basic Solutions

LP. Lecture 3. Chapter 3: degeneracy. degeneracy example cycling the lexicographic method other pivot rules the fundamental theorem of LP

Special cases of linear programming

Developing an Algorithm for LP Preamble to Section 3 (Simplex Method)

Simplex method(s) for solving LPs in standard form

Math Models of OR: Some Definitions

Lecture 4: Algebra, Geometry, and Complexity of the Simplex Method. Reading: Sections 2.6.4, 3.5,

Linear Programming, Lecture 4

OPERATIONS RESEARCH. Linear Programming Problem

MATH 445/545 Homework 2: Due March 3rd, 2016

Dr. Maddah ENMG 500 Engineering Management I 10/21/07

Ann-Brith Strömberg. Lecture 4 Linear and Integer Optimization with Applications 1/10

Part 1. The Review of Linear Programming

Lesson 27 Linear Programming; The Simplex Method

MATH 445/545 Test 1 Spring 2016

4.5 Simplex method. min z = c T x s.v. Ax = b. LP in standard form

ORF 522. Linear Programming and Convex Analysis

4.5 Simplex method. LP in standard form: min z = c T x s.t. Ax = b

Optimization (168) Lecture 7-8-9

Slide 1 Math 1520, Lecture 10

Linear Programming and the Simplex method

Ω R n is called the constraint set or feasible set. x 1

The simplex algorithm

IE 5531: Engineering Optimization I

6.2: The Simplex Method: Maximization (with problem constraints of the form )

Yinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method

February 17, Simplex Method Continued

The Simplex Algorithm

Example. 1 Rows 1,..., m of the simplex tableau remain lexicographically positive

1. Algebraic and geometric treatments Consider an LP problem in the standard form. x 0. Solutions to the system of linear equations

Chapter 5 Linear Programming (LP)

Termination, Cycling, and Degeneracy

Dual Basic Solutions. Observation 5.7. Consider LP in standard form with A 2 R m n,rank(a) =m, and dual LP:

Part 1. The Review of Linear Programming

The use of shadow price is an example of sensitivity analysis. Duality theory can be applied to do other kind of sensitivity analysis:

Section 4.1 Solving Systems of Linear Inequalities

Notes on Simplex Algorithm

Lecture 5 Simplex Method. September 2, 2009

OPRE 6201 : 3. Special Cases

Review Solutions, Exam 2, Operations Research

Systems Analysis in Construction

In Chapters 3 and 4 we introduced linear programming

The Simplex Method. Standard form (max) z c T x = 0 such that Ax = b.

Operations Research Lecture 2: Linear Programming Simplex Method

min 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

Chapter 4 The Simplex Algorithm Part II

The Simplex Algorithm and Goal Programming

1 Implementation (continued)

The Simplex Algorithm: Technicalities 1

3 Does the Simplex Algorithm Work?

Math 273a: Optimization The Simplex method

Linear Programming. Linear Programming I. Lecture 1. Linear Programming. Linear Programming

Example Bases and Basic Feasible Solutions 63 Let q = >: ; > and M = >: ;2 > and consider the LCP (q M). The class of ; ;2 complementary cones

CO350 Linear Programming Chapter 6: The Simplex Method

MATH3017: Mathematical Programming

Chapter 4 The Simplex Algorithm Part I

CSC Design and Analysis of Algorithms. LP Shader Electronics Example

2.098/6.255/ Optimization Methods Practice True/False Questions

Slack Variable. Max Z= 3x 1 + 4x 2 + 5X 3. Subject to: X 1 + X 2 + X x 1 + 4x 2 + X X 1 + X 2 + 4X 3 10 X 1 0, X 2 0, X 3 0

Linear Programming Duality

3. THE SIMPLEX ALGORITHM

Simplex tableau CE 377K. April 2, 2015

CO350 Linear Programming Chapter 6: The Simplex Method

Linear programming. Starch Proteins Vitamins Cost ($/kg) G G Nutrient content and cost per kg of food.

2.1 THE SIMPLEX METHOD FOR PROBLEMS IN STANDARD FORM

Lecture 11: Post-Optimal Analysis. September 23, 2009

56:171 Operations Research Fall 1998

Math Models of OR: Handling Upper Bounds in Simplex

F 1 F 2 Daily Requirement Cost N N N

Distributed Real-Time Control Systems. Lecture Distributed Control Linear Programming

4.7 Sensitivity analysis in Linear Programming

MAT016: Optimization

ORF 307: Lecture 2. Linear Programming: Chapter 2 Simplex Methods

LINEAR PROGRAMMING I. a refreshing example standard form fundamental questions geometry linear algebra simplex algorithm

Lecture slides by Kevin Wayne

Chapter 1 Linear Programming. Paragraph 5 Duality

Prelude to the Simplex Algorithm. The Algebraic Approach The search for extreme point solutions.

Contents. 4.5 The(Primal)SimplexMethod NumericalExamplesoftheSimplexMethod

Dr. S. Bourazza Math-473 Jazan University Department of Mathematics

Linear programs Optimization Geoff Gordon Ryan Tibshirani

OPTIMISATION 3: NOTES ON THE SIMPLEX ALGORITHM

Supplementary lecture notes on linear programming. We will present an algorithm to solve linear programs of the form. maximize.

A primal-simplex based Tardos algorithm

Lecture 2: The Simplex method. 1. Repetition of the geometrical simplex method. 2. Linear programming problems on standard form.

Summary of the simplex method

3. Vector spaces 3.1 Linear dependence and independence 3.2 Basis and dimension. 5. Extreme points and basic feasible solutions

Part III: A Simplex pivot

+ 5x 2. = x x. + x 2. Transform the original system into a system x 2 = x x 1. = x 1

Transcription:

2 JORDAN EXCHANGE REVIEW 1 Lecture Outline The following lecture covers Section 3.5 of the textbook [?] Review a labeled Jordan exchange with pivoting. Introduce the idea of a nondegenerate tableau and its analogy with nondenegerate vertices. Prove Th 3.5.2 i.e The finite termination of the simplex algorithm in the nondegenerate case. Possibility of cycling. Illustrate cycling using the Beale example and most negative entry rule for pivot column selection. Introduce the smallest-subscript rule and demonstrate termination of the Beale example. Hand-wave over the hard theorem about finite termination. 2 Jordan exchange review To perform a labeled jordan exchange, we loosely perform the following steps 1. Exchange the row(r) and column(r) labels in the new tableau. 2. The pivot element in the new tableau is the reciprocal of the old tableau. i.e H rs 1 3. Entries in the same row are obtained by dividing it with the negative of the pivot element. i.e H rj H r j j s 4. Entries in the same column are obtained by dividing it with the pivot element. i.e H is H is i r 5. The rest of the entries are calculated using H ij H i j H i s H r j i r, j s Examples Example 3-3-3 of the textbook min x x 1 x 2 x 3 subject to x 1 x 2 + x 3 2 x 1 + x 2 + x 3 3 x 1 + x 2 x 3 1 x 1 x 2 x 3 4 x 1, x 2, x 3 0 We first set up an initial tableau which we can see is feasible already. x 1 x 2 x 3 1 x 4 1-1 1 2 x 5-1 1 1 3 x 6 1 1-1 1 x 7-1 -1-1 4 z -1-1 -1 0 1

3 FINITE TERMINATION Perform a jordan exchange around (3,3) Perform a jordan exchange around (4,1) x 1 x 2 x 6 1 x 4 2 0-1 3 x 5 0 2-1 4 x 3 1 1-1 1 x 7-2 -2 1 3 z -2-2 1-1 x 7 x 2 x 6 1 x 4-1 -2 0 6 x 5 0 2-1 4 x 3-0.5 0-0.5 2.5 x 1-0.5-1 0.5 1.5 z 1 0 0-4 However, we can see that this is not the only solution, if we had chosen the pivot columns differently i.e (2,1) and (4,2), we would obtain 3 Finite Termination x 5 x 2 x 7 1 x 4 0-2 -1 6 x 1-0.5 0-0.5 3.6 x 6-1 2 0 4 x 3 0.5-1 -0.5 0.5 z 0 0 1-4 In this lecture, we review whether the Simplex Algorithm 1 terminates to either a solution or a finite direction of unboundedness. We demonstrate that finite termination is only possible under some restrictive assumptions. Algorithm 1 Simplex algorithm: Solves min x p T x s.t Ax b 1. Construct an initial tableau. (Make sure that the problem is in standard form before doing so) 2. If this initial tableau is not feasible, apply Phase I to generate a feasible tableau. 3. Use a pricing scheme to determine a pivot column c. If none exists, the tableau is optimal. 4. Use the ratio test to determine the pivot row r. If none exists, the tableau is unbounded. 5. Exchange x B(r) and x N(s) using a labeled Jordan exchange. Definition: A feasible tableau is degenerate if the last column contains zero elements. If the elements in the last column are strictly positive, the tableau is nondegenerate. A linear program is said to be non-degenerate if all feasible tableaus for that linear program are nondegenerate. Geometric Interpretation A tableau is non degenerate if the vertex defined by that tableau is defined by the intersection of exactly n hyperplanes defined by x N 0. Vertices that lie at the intersection of more thann hyperplanes are degenerate. A linear program is feasible and nondegenerate if each of the vertices of the feasible region for that linear program is uniquely defined by a set. 2

4 CYCLING Theorem 3.5.2: If a linear program is feasible and non degenerate, then starting at any feasible tableau, the objective function strictly decreases at each pivot step. After a finite number of steps the method terminates with an optimal point or a finite direction of unboundedness. Proof: At every iteration we have a tableau which is 1. Optimal 2. Non-optimal 3. Unbounded If the tableau is optimal or unbounded, then the algorithm terminates. If the tableau is non-optimal, we pivot on H rs for which h r > 0 (non degeneracy) and c s < 0 (by pivot selection), and H rs < 0 (by the ratio test) Here x N 1 xñ 1 x B H h x B H h z c α z c α α α c sh r H rs The strict decrease in the objective function ensures that no two consecutive steps of simplex will have identical objectives. If the size of the nonbasic set is n and the index set is n + m there are only ( ) n+m m possible simplex steps, it results in a finite termination. < α 4 Cycling We now consider the case of a general linear program and prove finite termination. We first illustrate a class example by Beale(1995) [?] of a generate simplex tableau. So far, we have been using the following two rules x 1 x 2 x 3 x 4 1 x 5-0.5 5.5 2.5-9 0 x 6-0.5 1.5 0.5-1 0 x 7-1 0 0 0 1 z -10 57 9 24 0 for selection of rows and columns. Table 1: The classic beale example of death 1. The pivot column is the one with the most negative entry in the bottom row 2. If two or more rows tie for being a pivot row in the ratio test, choose the one with the smaller subscript If we follow the above rules, we pivot over (1, 1) (2.2) (1, 3) (2, 4) (1, 1) (2, 2) to get back to table which is a re-ordering of Table 1. This phenomenon of cycling indicates that there are cases where the Simplex Algorithm 1 does not terminate. 3

5 GENERAL CASE 5 General Case We illustrated that there are special problems on which some variants of the simplex algorithm will not terminate. Finite termination depends very largely on the rules used to select the pivot column ( in the event of more than one negative entry in the last row) and a pivot row (in an event of a tie in the ratio test). We now present the smallest subscript rule introduced by Bland (1977) 1. Pricing (pivot column selection): The pivot column is the smallest N(s) of the non-basic variable indices such that the column s has a negative element in the bottom row (reduced cost) 2. Ratio Test (pivot row selection): The pivot row is the smallest B(r) of basic variable indices such that row r satisfies h r min{ h i < 0} H rs i H is To illustrate, let us apply the smallest-subscript pivot rule to Table 1. The first four sequence of steps (1, 1) (2.2) (1, 3) (2, 4) (1, 1) remain the same and they generate Table 2 x 3 x 6 x 1 x 2 1 x 5-2 9 4-8 0 x 4 0.5-1 -0.5 1.5 0 x 7 0 0-1 0 1 z 21-24 -22 93 0 Table 2: Smallest subscript rule on the beale problem On Table 2, the smallest subscript rule chooses x 1 while the most negative column rule chooses x 6. The smallest subscript rule results in finite termination at Table 3 x 7 x 6 x 4 x 2 1 x 5-2 5-4 -2 2 x 1-1 0 0 0 1 x 3-1 2 2-3 1 z 1 18 42 30-1 Table 3: Smallest subscript rule on the beale problem Theorem 3.5.3: If a linear program is feasible, then starting at any feasible tableau, and using the smallestsubscript rule, the simplex method terminates after a finite number of picots at an optimal or unbounded tableau. Proof: Since there are ( ) m+n m possible tableaus for a linear program, the Simplex Algorithm must terminate unless there is some choice of basic variables that must repeat in cycles. Let us assume that there is some sequence of repeating tableaus leading out from T 0 and returning to itself. Let that sequence be as follows: T 0, T 1, T 2,..., T k T 0 Another property that must be satisfied by every tableau in the sequence is degeneracy. If any of the tableaus were non degenerate, the objective function would degrease and the cycle would be broken. Hence, all pivots in the above sequence must be degenerate. We define a notion of a fickle variable as one which is non-basic in some of the tableaus of the sequence and basic in the others. Every fickle variable becomes basic at least once in the cycle, becomes non-basic 4

5 GENERAL CASE at least once and has the same state at the beginning and end of the cycle. The proof considers the fickle variable x l with the largest index and zooms into the tableau that where x l moves from basic to non-basic. The tableau will look as follows x s 1 x r H rs x l H ls < 0 0 z 0 α Theorem 3.5.3: If a linear program is feasible, then starting at any feasible tableau, and using the smallestsubscript rule, the simplex method terminates after a finite number of picots at an optimal or unbounded tableau. Proof: Since there are ( ) m+n m possible tableaus for a linear program, the Simplex Algorithm must terminate unless there is some choice of basic variables that must repeat in cycles. Let us assume that there is some sequence of repeating tableaus leading out from T 0 and returning to itself. Let that sequence be as follows: T 0, T 1, T 2,..., T k T 0 5