LINEAR PROGRAMMING 2. In many business and policy making situations the following type of problem is encountered:

Similar documents
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

Review Solutions, Exam 2, Operations Research

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

MATH2070 Optimisation

Farkas Lemma, Dual Simplex and Sensitivity Analysis

Sensitivity Analysis

END3033 Operations Research I Sensitivity Analysis & Duality. to accompany Operations Research: Applications and Algorithms Fatih Cavdur

Systems Analysis in Construction

In Chapters 3 and 4 we introduced linear programming

Part 1. The Review of Linear Programming

The Simplex Method. Formulate Constrained Maximization or Minimization Problem. Convert to Standard Form. Convert to Canonical Form

Special cases of linear programming

1 Review Session. 1.1 Lecture 2

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

CPS 616 ITERATIVE IMPROVEMENTS 10-1

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

OPRE 6201 : 3. Special Cases

Worked Examples for Chapter 5

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

The Simplex Method. Lecture 5 Standard and Canonical Forms and Setting up the Tableau. Lecture 5 Slide 1. FOMGT 353 Introduction to Management Science

Chap6 Duality Theory and Sensitivity Analysis

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

UNIT-4 Chapter6 Linear Programming

Understanding the Simplex algorithm. Standard Optimization Problems.

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

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

(P ) Minimize 4x 1 + 6x 2 + 5x 3 s.t. 2x 1 3x 3 3 3x 2 2x 3 6

Summary of the simplex method

Sensitivity Analysis and Duality in LP

AM 121 Introduction to Optimization: Models and Methods Example Questions for Midterm 1

3. Duality: What is duality? Why does it matter? Sensitivity through duality.

OPTIMISATION 3: NOTES ON THE SIMPLEX ALGORITHM

Summary of the simplex method

MS-E2140. Lecture 1. (course book chapters )


21. Solve the LP given in Exercise 19 using the big-m method discussed in Exercise 20.

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

Introduction to the Simplex Algorithm Active Learning Module 3

Math Models of OR: Sensitivity Analysis

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

Note 3: LP Duality. If the primal problem (P) in the canonical form is min Z = n (1) then the dual problem (D) in the canonical form is max W = m (2)

The Simplex Method of Linear Programming

(b) For the change in c 1, use the row corresponding to x 1. The new Row 0 is therefore: 5 + 6

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

AM 121: Intro to Optimization

Chapter 1 Linear Programming. Paragraph 5 Duality

DEPARTMENT OF STATISTICS AND OPERATIONS RESEARCH OPERATIONS RESEARCH DETERMINISTIC QUALIFYING EXAMINATION. Part I: Short Questions

OPERATIONS RESEARCH. Linear Programming Problem

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

56:270 Final Exam - May

MVE165/MMG631 Linear and integer optimization with applications Lecture 5 Linear programming duality and sensitivity analysis

Linear Programming: Chapter 5 Duality

Optimisation. 3/10/2010 Tibor Illés Optimisation

Metode Kuantitatif Bisnis. Week 4 Linear Programming Simplex Method - Minimize

March 13, Duality 3

The Strong Duality Theorem 1

Slide 1 Math 1520, Lecture 10

MS-E2140. Lecture 1. (course book chapters )

SAMPLE QUESTIONS. b = (30, 20, 40, 10, 50) T, c = (650, 1000, 1350, 1600, 1900) T.

Linear Programming. H. R. Alvarez A., Ph. D. 1

OPERATIONS RESEARCH. Michał Kulej. Business Information Systems

9.5 THE SIMPLEX METHOD: MIXED CONSTRAINTS

Brief summary of linear programming and duality: Consider the linear program in standard form. (P ) min z = cx. x 0. (D) max yb. z = c B x B + c N x N

MATH 445/545 Test 1 Spring 2016

The Dual Simplex Algorithm

CSCI5654 (Linear Programming, Fall 2013) Lecture-8. Lecture 8 Slide# 1

3 The Simplex Method. 3.1 Basic Solutions

Introduction. Very efficient solution procedure: simplex method.

Simplex Method for LP (II)

56:171 Operations Research Fall 1998

Introduction to linear programming using LEGO.

MATH 210 EXAM 3 FORM A November 24, 2014

Non-Standard Constraints. Setting up Phase 1 Phase 2

Part III: A Simplex pivot

CO350 Linear Programming Chapter 6: The Simplex Method

UNIVERSITY OF KWA-ZULU NATAL

TIM 206 Lecture 3: The Simplex Method

Review Questions, Final Exam

Week 3: Simplex Method I

Part 1. The Review of Linear Programming

4.4 The Simplex Method and the Standard Minimization Problem

Lecture 5. x 1,x 2,x 3 0 (1)

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

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

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

Lecture 11 Linear programming : The Revised Simplex Method

UNIVERSITY OF CALICUT SCHOOL OF DISTANCE EDUCATION B Sc. Mathematics (2011 Admission Onwards) II SEMESTER Complementary Course

Answer the following questions: Q1: Choose the correct answer ( 20 Points ):

Optimisation and Operations Research

1. Introduce slack variables for each inequaility to make them equations and rewrite the objective function in the form ax by cz... + P = 0.

...(iii), x 2 Example 7: Geetha Perfume Company produces both perfumes and body spray from two flower extracts F 1. The following data is provided:

Midterm Review. Yinyu Ye Department of Management Science and Engineering Stanford University Stanford, CA 94305, U.S.A.

Week_4: simplex method II

Gauss-Jordan Elimination for Solving Linear Equations Example: 1. Solve the following equations: (3)

56:171 Operations Research Midterm Exam - October 26, 1989 Instructor: D.L. Bricker

2. Linear Programming Problem

Example Problem. Linear Program (standard form) CSCI5654 (Linear Programming, Fall 2013) Lecture-7. Duality

F 1 F 2 Daily Requirement Cost N N N

MA 162: Finite Mathematics - Section 3.3/4.1

CO350 Linear Programming Chapter 8: Degeneracy and Finite Termination

Transcription:

LINEAR PROGRAMMING 2 In many business and policy making situations the following type of problem is encountered: Maximise an objective subject to (in)equality constraints. Mathematical programming provides techniques by which limited resources may be allocated optimally among various activities. The simplest and most widely applied of these is Linear Programming. The basic ideas were developed by L.V. Kantarovich, a Russian mathematician, in the late 1930s but the computational procedure is due to George Dantzig, a US mathematician working on air force scheduling problems in World War II. Before studying the method we should note that LP problems must have: 1. a well-specified objective function e.g. maximising profits or minimising costs 2. alternative courses of action must be possible. 3. all resource constraints and objectives must be in linear form. A function f(x) = f(x1, x2,..., xn) is linear if f(x1,x2,...,xn) = a1 x1 + a2 x2 +... + an xn for any constant parameters a1,..., an. Note that intercepts are ruled out and this assumption implies constant returns to scale 4. resources must be limited in supply - the traditional assumption of scarcity.

AN EXAMPLE: max 8 X1 + 10 X2 subject to 4.5 X1 + 2 X2 36 (1) 3 X1 + 5 X2 45 (2) 4 X1 + 4 X2 40 (3) X1, X2 0 Introduce slack variables S1, S2, S3 to transform inequalities to equalities. Problem becomes: max 8 X1 + 10 X2 + 0 S1 + 0 S2 + 0 S3 subject to 4.5 X1 + 2 X2 + S1 = 36 (1') 3 X1 + 5 X2 + S2 = 45 (2') 4 X1 + 4 X2 + S3 = 40 (3') There are 5 variables: X1, X2, S1, S2, S3 0 There are 3 constraints: 1', 2', 3'

Graphical Representation (Maximisation Problem) X1 6 Feasible set Basic solution points S2 Objective function contour 5 S3 1 2 7 3 S1 9 0 4 8 X2 At any Basic Solution point: exactly 3 variables will be non-zero and 2 will be zero 0 S1, S2, S3 > 0 5 X1, S2 > 0, S1 < 0 1 X1, S2, S3 > 0 6 X1 > 0, S1, S2 < 0 2 X1, X2, S2 > 0 7 X1, X2 > 0, S3 < 0 3 X1, X2, S1 > 0 8 X2, S1 > 0, S2 < 0 4 X2, S1, S3 > 0 9 X2 > 0, S2, S3 < 0 Points 0-4 are in feasible set. Points 5-9 are not.

Graphical Representation (Minimisation Problem) Feasible set X1 0 X2

Infeasible Problem Problems that Can t be Solved X1 X1+X2 10; X1+2X2 30 X2 0 Unbounded Problem X1 X1 10; X1+X2 20 0 X2

DEFINITIONS The Feasible Set The feasible set is the set of all points that satisfy all the constraints of the problem. Basic Solution A basic solution is a point where the number of non-zero variables is equal to the number of binding constraints Basic Variable A basic variable is one that is non-zero in a basic solution. Zero variables are non basic. The Fundamental Theorem of Linear Programming An optimal solution can be found by considering only basic solutions. => optimal solution will be at corner (extreme) point Shadow Price of Resource How much does the objective function change if 1 more (or 1 less) unit of a resource is available? The shadow price of a resource constraint is only non-zero when the constraint is binding.

DUALITY : The Primal Problem max b1 X1 + b2 X2 subject to a11 X1 + a12 X2 c1 (1) a21 X1 + a22 X2 c2 (2) a31 X1 + a32 X2 c3 (3) X1, X2 0 2 Variables: X1, X2 3 Constraints: (1), (2), (3) DUALITY: The Dual Problem min c1 Y1 + c2 Y2 + c3 Y3 subject to a11 Y1 + a21 Y2 + a31 Y2 b1 (4) a12 Y1 + a22 Y2 + a32 Y2 b2 (5) Y1, Y2, Y3 0 3 Variables: Y1, Y2, Y3 2 Constraints: (4), (5) What is the interpretation of variables:y1,y2,y3? Y1,Y2,Y3 correspond to shadow prices of the resource constraints in the primal problem.

Using the Software There are two LP programs. the first is a graphical display restricted to 2 variables only. Nevertheless it can handle a large number of constraints and provides useful information on the nature of the problem. The Data Entry Method provides a choice of free form or tabular input and it is simplest to choose Free Form initially. A request for Objective Function data comes next: select MAX or MIN depending on the problem. Then enter the objective function directly e.g. for the example problem 8 X1+10 X2. Note that no * is required for multiplication. Each constraint is identified by a number, so that constraint 1 is written: 1 4.5 X1 + 2 X2 <= 36, constraint 2 is written as 3X1+5X2<=45 and 3 as 3 4X1+4X2<=40. Note that constraints are specified using the character pair <= and as the character pair >=. There are only 3 constraints so that when constraint 4 is requested simply type GO. The program asks whether you want to modify entries or to proceed to solution. When you are ready to proceed, a graphical presentation appears which enables the user to find the optimal solution by moving the objective function line within the feasible region. the Basic Solution Points can be highlighted (F5) as can the optimal point (F6) and the program offers limited rescaling and re-drawing features. Solution values can be listed together with slack values for each constraint. Extreme points can be listed (10 in the example). An ending menu enables modification of data, printing of results or saving data to a file. A printed file (ASCII) can be input into a word processing package to create a report.

The Simplex Algorithm Select initial set of basic variables Solve equations to determine solution for basic variables Is solution optimal??? Yes Stop No Select new basic variable to add (pivot column) Select basic variable to drop (pivot row)

A Simplex Tableau Cj 8 10 0 0 0 0 S1 4.5 2 1 0 0 36 0 S2 3 5 0 1 0 45 0 S3 4 4 0 0 1 40 Zj 0 0 0 0 0 0 Cj-Zj 8 10 0 0 0 1 The columns of the simplex tableau represent the variables in the problem plus the right hand side of the constraints. 2 The first row Cj gives the coefficients in the objective function. 3 The subsequent (shaded) rows give for each basic (non-zero) variable the coefficients in the corresponding equation. 4 The columns of the tableau represent how much of the basic variables are required to produce 1 unit of the column variable. 5 The Zj row gives for each column variable, the opportunity cost of producing one extra unit of that variable defined by Zj = i Ci aij 6 The final Cj-Zj row gives the net improvement to the objective function of producing one unit of variable j. If any of the elements of this row are positive, then the solution can be improved by substituting variable j for one of the current basic variables. The variable to add is the one with the largest value of Cj-Zj. The corresponding column is known as the pivot column. 7 As more of the new variable is added eventually a constraint will become binding and one of the basic variables will go to zero. The row for this variable then disappears from the tableau. The variable that disappears is the one for which the ratio of RHS / pivot column is smallest. The corresponding row is called the pivot row. 8 The intersection of pivot column and pivot row is called the pivot element.

Simplex Tableau 1 Cj 8 10 0 0 0 0 S1 4.5 2 1 0 0 36 0 S2 3 5 0 1 0 45 0 S3 4 4 0 0 1 40 Zj 0 0 0 0 0 0 Cj-Zj 8 10 0 0 0 There are positive elements in Cj-Zj column so solution not optimal. Pivot column is X2 which has highest Cj-Zj (10) Pivot row is S2 which has smallest RHS / Pivot column (45/5) Solving the equations of Tableau 1 Step 1: Divide pivot row by pivot element (5) * 0.2 X2 0.6 1 0 0.2 0 9 Step 2: Subtract pivot row * pivot column element from each other row S1 S1 4.5 2 1 0 0 36-2*X2 2*X2 1.2 2 0 0.4 0 18 = S1 3.3 0 1-0.4 0 18 S3 S3 4 4 0 0 1 40-4*X2 4*X2 2.4 4 0 0.8 0 36 = S3 1.6 0 0-0.8 1 4

Simplex Tableau 2 Cj 8 10 0 0 0 0 S1 3.3 0 1-0.4 0 18 10 X2 0.6 1 0 0.2 0 9 0 S3 1.6 0 0-0.8 1 4 Zj 6 10 0 2 0 90 Cj-Zj 2 0 0-2 0 There are still positive elements in Cj-Zj column so not optimal. Pivot column is X1 which has highest Cj-Zj (2) Pivot row is S3 which has smallest RHS / Pivot column (4/1.6) Solving the equations of Tableau 2 Step 1: Divide pivot row by pivot element (1.6) * 0.625 X1 1 0 0-0.5 0.625 2.5 Step 2: Subtract pivot row * pivot column from each other row S1 S1 3.3 0 1-0.4 0 18-3.3*X2 3.3*X1 3.3 0 0-1 1.25 8.25 = S1 0 0 1 1.25 0 9.75 X2 X2 0.6 1 0 0.2 0 9-0.6*X2 0.6*X1 0.6 0 0-0.3 0.375 1.5 = X2 0 1 0 0.5-0.375 7.5 Simplex Tableau 3 Cj 8 10 0 0 0 0 S1 0 0 1 1.25 0 9.75 10 X2 0 1 0 0.5-0.375 7.5 8 X1 1 0 0-0.5 0.625 2.5 Zj 8 10 0 1 1.25 95 Cj-Zj 0 0 0-1 -1.25 This is optimal since all Cj-Zj are 0. Solution: X1=2.5, X2=7.5;