Simplex method (algebraic interpretation)

Slides:



Advertisements
Similar presentations
February 14, 2002 Putting Linear Programs into standard form
Advertisements

SIMPLEX METHOD FOR LP LP Model.
The Simplex Method The geometric method of solving linear programming problems presented before. The graphical method is useful only for problems involving.
Dr. Sana’a Wafa Al-Sayegh
Computational Methods for Management and Economics Carla Gomes Module 6a Introduction to Simplex (Textbook – Hillier and Lieberman)
OR Simplex method (algebraic interpretation) Add slack variables( 여유변수 ) to each constraint to convert them to equations. (We may refer it as.
Computational Methods for Management and Economics Carla Gomes Module 6b Simplex Pitfalls (Textbook – Hillier and Lieberman)
Operation Research Chapter 3 Simplex Method.
MIT and James Orlin © Chapter 3. The simplex algorithm Putting Linear Programs into standard form Introduction to Simplex Algorithm.
Learning Objectives for Section 6.2
Chapter 3 Linear Programming Methods 高等作業研究 高等作業研究 ( 一 ) Chapter 3 Linear Programming Methods (II)
1. The Simplex Method.
Chapter 6 Linear Programming: The Simplex Method
The Two-Phase Simplex Method LI Xiao-lei. Preview When a basic feasible solution is not readily available, the two-phase simplex method may be used as.
8. Linear Programming (Simplex Method) Objectives: 1.Simplex Method- Standard Maximum problem 2. (i) Greedy Rule (ii) Ratio Test (iii) Pivot Operation.
Chapter 6 Linear Programming: The Simplex Method Section 2 The Simplex Method: Maximization with Problem Constraints of the Form ≤
Chapter 3. Pitfalls Initialization Ambiguity in an iteration
Topic III The Simplex Method Setting up the Method Tabular Form Chapter(s): 4.
Barnett/Ziegler/Byleen Finite Mathematics 11e1 Learning Objectives for Section 6.4 The student will be able to set up and solve linear programming problems.
1 1 Slide © 2000 South-Western College Publishing/ITP Slides Prepared by JOHN LOUCKS.
Kerimcan OzcanMNGT 379 Operations Research1 Linear Programming: The Simplex Method Chapter 5.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
Pareto Linear Programming The Problem: P-opt Cx s.t Ax ≤ b x ≥ 0 where C is a kxn matrix so that Cx = (c (1) x, c (2) x,..., c (k) x) where c.
OR Perturbation Method (tableau form) (after two iterations, optimal solution obtained) (0+2  1 ) (0+2  2 ) (1+  3 )
Section 2.3 Properties of Solution Sets
Linear Programming Revised Simplex Method, Duality of LP problems and Sensitivity analysis D Nagesh Kumar, IISc Optimization Methods: M3L5.
3.3 Implementation (1) naive implementation (2) revised simplex method
1 1 Slide © 2005 Thomson/South-Western Linear Programming: The Simplex Method n An Overview of the Simplex Method n Standard Form n Tableau Form n Setting.
Chapter 4 Linear Programming: The Simplex Method
Chapter 6 Linear Programming: The Simplex Method Section 4 Maximization and Minimization with Problem Constraints.
1 THE REVISED SIMPLEX METHOD CONTENTS Linear Program in the Matrix Notation Basic Feasible Solution in Matrix Notation Revised Simplex Method in Matrix.
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
University of Colorado at Boulder Yicheng Wang, Phone: , Optimization Techniques for Civil and Environmental Engineering.
OR Simplex method (algebraic interpretation) Add slack variables( 여유변수 ) to each constraint to convert them to equations. (We may refer it as.
MIT and James Orlin © Chapter 3. The simplex algorithm Putting Linear Programs into standard form Introduction to Simplex Algorithm file Simplex2_AMII_05a_gr.
OR Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we.
An-Najah N. University Faculty of Engineering and Information Technology Department of Management Information systems Operations Research and Applications.
Simplex Method Simplex: a linear-programming algorithm that can solve problems having more than two decision variables. The simplex technique involves.
 LP graphical solution is always associated with a corner point of the solution space.  The transition from the geometric corner point solution to the.
OR  Now, we look for other basic feasible solutions which gives better objective values than the current solution. Such solutions can be examined.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
Foundations-1 The Theory of the Simplex Method. Foundations-2 The Essence Simplex method is an algebraic procedure However, its underlying concepts are.
Decision Support Systems INF421 & IS Simplex: a linear-programming algorithm that can solve problems having more than two decision variables.
Chapter 4 The Simplex Algorithm and Goal Programming
The Simplex Method. and Maximize Subject to From a geometric viewpoint : CPF solutions (Corner-Point Feasible) : Corner-point infeasible solutions 0.
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
Solving Linear Program by Simplex Method The Concept
Chap 10. Sensitivity Analysis
Perturbation method, lexicographic method
10CS661 OPERATION RESEARCH Engineered for Tomorrow.
Chapter 4 Linear Programming: The Simplex Method
Chap 9. General LP problems: Duality and Infeasibility
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
The Simplex Method.
Chapter 5. Sensitivity Analysis
Chap 3. The simplex method
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Solving Linear Programming Problems: Asst. Prof. Dr. Nergiz Kasımbeyli
Chapter 8. General LP Problems
Chapter 5. The Duality Theorem
I.4 Polyhedral Theory (NW)
I.4 Polyhedral Theory.
Chapter 8. General LP Problems
Chapter 2. Simplex method
Simplex method (algebraic interpretation)
Chapter 8. General LP Problems
Chapter 2. Simplex method
Chapter 3. Pitfalls Initialization Ambiguity in an iteration
Presentation transcript:

Simplex method (algebraic interpretation) Add slack variables(여유변수) to each constraint to convert them to equations. (1) (2) OR-1 2011

(Surplus variable (잉여변수) : a’x  b  a’x – xs = b, xs  0 ) Hence we have a 1-1 mapping which maps each feasible point in (1) to a feasible point in (2) uniquely (and conversely) and the objective values are the same for the points. So solve (2) instead of (1) and disregard the value of slack variables to obtain an optimal solution to the original problem. (Surplus variable (잉여변수) : a’x  b  a’x – xs = b, xs  0 ) OR-1 2011

Remark: If LP includes equations, we need to convert each equation to two inequalities to express the problem in standard form as we have seen earlier. Then we may add slack or surplus variables to convert them to equations. However, this procedure will increase the number of constraints and variables. Equations in an LP can be handled directly without changing them to inequalities. Detailed method will be explained in Chap8. General LP Problems. For the time being, we assume that we follow the standard procedure to convert equations to inequalities. OR-1 2011

Changes in the solution space when slack is added x2 x3 1 1 x1 1 x1 1 1 x2 Solution set is still 2-dimensional OR-1 2011

Next let Then find solution to the following system which maximizes z (tableau form) In the text, dictionary form used, i.e. each dependent variable (including z) (called basic variable) is expressed as linear combinations of indep. var. (called nonbasic variable). (Note that, unlike the text, we place the objective function in the first row. Such presentation style is used more widely and we follow that convention) OR-1 2011

From previous lectures, we know that if the polyhedron P has at least one extreme point and the LP over P has a finite optimal value, the LP has an extreme point optimal solution. Also an extreme point of P for our problem is a basic feasible solution algebraically. We obtain a basic solution by setting x1 = x2 = x3 = 0 and finding the values of x4, x5, and x6 , which can be read directly from the dictionary. (also z values can be read.) If all values of x4, x5, and x6 are nonnegative, we obtain a basic feasible solution. The equation for z may be regarded as part of the systems of equations, or we may think of it as a separate equation used to evaluate the objective value for the given solution. OR-1 2011

Now, we look for other basic feasible solutions which gives better objective values than the current solution. Such solutions can be examined by setting 7 – 4 = 3 variables at 0 (called nonbasic variables) and solve the equations for the remaining 4 variables (called basic variables). Here z may be regarded as a basic variable and it remains basic at any time during the simplex iterations. OR-1 2011

Initial feasible solution To find a better solution, find a nonbasic variable having positive coefficient in z row (say x1) and increase the value of the chosen nonbasic variable while other nonbasic variables remain at 0. We need to obtain a solution that satisfies the equations. Since x1 increases and other nonbasic variables remain at 0, the values of basic variables must change so that the new solution satisfies the equations and nonnegativity. How much can we increase x1? OR-1 2011

x1  (5/2) most binding (ratio test), get new solution (continued) x1  (5/2) most binding (ratio test), get new solution x1 = (5/2), x2, x3 = 0, x4 = 0, x5 = 1, x6 = (1/2), z = 25/2 This is a new b.f.s since x4 now can be treated as a nonbasic variable (has value 0) and x1 is basic. (We need a little bit of caution here in saying that the new solution is a basic feasible solution since we must be able to obtain it by setting x2, x3, and x4 at 0 and obtain a unique solution after solving the remaining system of equations) OR-1 2011

Why could we find a basic feasible solution easily? Change the dictionary so that the new solution can be directly read off x1 : 0 (5/2), x4 : 5  0 So change the role of x1 and x4 . x4 becomes independent (nonbasic) variable and x1 becomes dependent (basic) variable. Why could we find a basic feasible solution easily? 1) all independent(nonbasic) variables appear at the right of equality (have value 0) 2) each dependent (basic) variable appears in only one equation 3) each equation has exactly one basic variable appearing ( z variable may be interpreted as a basic variable, but usually it is treated separately since it always remains basic and it is irrelevant to the description of the feasible solutions) So change the dictionary so that it satisfies the above properties. OR-1 2011

OR-1 2011

OR-1 2011

Equivalent to performing row operations

Note that the previous solution x1 = x2 = x3 = 0, x4 = 5, x5 = 11, x6 = 8, z = 0 and the new solution x1 = (5/2), x2, x3 = 0, x4 = 0, x5 = 1, x6 = (1/2), z = 25/2 satisfies the updated system of equations. Only difference is that the new solution can be read off directly from the new dictionary. We update the dictionary to read a new basic solution directly, but the set of solutions is not changed. OR-1 2011

x6 becomes 0 (changes status to nonbasic variable from basic variable) Next iteration: Select x3 as the nonbasic bariable to increase the value (called entering nonbasic variable). x6 becomes 0 (changes status to nonbasic variable from basic variable) Perform substitutions (elementary row operations) OR-1 2011

implies that z  13 for any nonnegative feasible solution New solution is It is optimal since any feasible solution must have nonnegative values and implies that z  13 for any nonnegative feasible solution Hence if the coefficients of the nonbasic variables in z- row are all non-positive, current solution is optimal (note that it is a sufficient condition for optimality but not a necessary condition) OR-1 2011

x1 = (5/2), x2, x3 = 0, x4 = 0, x5 = 1, x6 = (1/2), z = 25/2 Moving directions in Rn in the example x1 = (5/2), x2, x3 = 0, x4 = 0, x5 = 1, x6 = (1/2), z = 25/2 Then we obtained x1 = x0 +t d, where d = (1, 0, 0, -2, -4, -3) and t = 5/2 Note that the d vector can be found from the dictionary.( the column for x1) We make t as large as possible while x0 +t d  0. OR-1 2011

Geometric meaning of an iteration Notation x1=0 x2=0 x3 x3=0 x1 x2 OR-1 2011

Our example : assume x2 does not exist Our example : assume x2 does not exist. It makes the polyhedron 2 dimensional since we have 5 variables and 3 equations (except nonnegativity and obj row) x3=0 x6=0 A We move from A, which is an extreme point defined by 3 eq. and x1=x3= 0 to B defined by the 3 eq. and x3 = x4 = 0. x1=0 d x4=0 B OR-1 2011

Terminology Assume that we have max c’x, Ax = b, x  0, where A is m  (n + m) and full row rank. A solution x* is called a basic solution (기저해) if it can be obtained by setting n of the variables equal to 0 and then solving for the remaining m variables, where the columns of the A matrix corresponding to the m variables are linearly independent. (Hence provides a unique solution.) In the text, basic solution is defined as the solution which can be obtained by setting the right-hand side variables (independent var.) at zero in the dictionary. This is the same definition as the one given above. But the text does not make clear distinction between basic solution and basic feasible solution. OR-1 2011

Both viewpoints are useful. For a basic solution x*, the n variables which are set to 0 are called nonbasic variables (비기저변수) (independent var.) and the remaining m variables are called basic variables (기저변수) (dependent var.) The z-row may be considered as part of system of equations. In that case, z var. is regarded as basic variable. It always remains basic during the simplex iterations. On the other hand, z-row may be regarded as a separate equation which is used to read off objective function values and other equations and nonnegativity describes the solution set. Both viewpoints are useful. A solution x* is called a basic feasible solution (기저가능해) if it is a basic solution and satisfies x  0. (feasible solution to the augmented LP) OR-1 2011

The set of basic variables are called basis (기저) of the basic solution The set of basic variables are called basis (기저) of the basic solution. (note that the set of basic variables spans the subspace generated by the columns of A matrix.) In a simplex iteration, the nonbasic variable which becomes basic in that iteration is called entering (nonbasic) variable (도입변수) and the basic variable which becomes nonbasic is called leaving (basic) variable (탈락변수) Minimum ratio test (최소비율검사) : test to determine the leaving basic variable Pivoting : computational process of constructing the new dictionary (elementary row operations) OR-1 2011

Remarks For standard LP, the basic feasible solution to the augmented form corresponds to the extreme point of the feasible set of points. (If the given LP is not in standard form, we should be careful in saying the equivalence, especially when free variables exist.) Simplex method searches the extreme points in its iterations. Note that we used (though without proof) the equivalence of the extreme points (geometric definition) and the basic feasible solution (algebraic definition) for augmented form LP. OR-1 2011

Maximum number of b.f.s. in augmented form is In the simplex method, one nonbasic variable becomes basic and one basic variable becomes nonbasic in each iteration (except the z variable, it always remains basic.) In real implementations, we do not update entire dictionary ( or tableau). We maintain information about the current basis. Then entire tableau can be constructed from that information and the simplex iteration can be performed (called revised simplex method). OR-1 2011

Obtaining all optimal solutions If all coefficients in the z- row are < 0, it gives a sufficient condition for the uniqueness of the current optimal solution. OR-1 2011

Any feasible solution with x3 = 0 is an optimal solution. Another example Any feasible solution with x3 = 0 is an optimal solution. The set of feasible solutions with x3 = 0 is given by OR-1 2011

Tableau format OR-1 2011

Tableau format only maintains coefficients in the equations. It is convenient to carry out a simplex iteration in the tableau. OR-1 2011