+ All Categories
Home > Documents > Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4:...

Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4:...

Date post: 26-Apr-2018
Category:
Upload: truongduong
View: 220 times
Download: 2 times
Share this document with a friend
50
Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos´ e Rui Figueira Instituto Superior T´ ecnico Universidade de Lisboa ([email protected]) March 7-8, 2016
Transcript
Page 1: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Introduction to Operations Research(Week 4: Linear Programming:

More on Simplex and Post-Optimality)

Jose Rui Figueira

Instituto Superior TecnicoUniversidade de Lisboa

([email protected])

March 7-8, 2016

Page 2: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

This slides are currently available for personal use of IST LEGI FIOstudents in an unpublished draft form only. The slides cannot becopied, reproduced, or distributed in any form.

Page 3: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Part

The Termination of the Simplex

Method and Other Aspects

Page 4: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Contents

1. Introduction

2. Non-degenerate LPs: Theoretical results

3. Degeneracy and cycling

4. Avoiding degeneracy: The perturbation method

5. Avoiding cycling

6. The computational behavior of the simplex method

7. Numerical stability of the simplex method

8. Conclusions

Page 5: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

1. Introduction

Brief Introduction

I The simplex algorithm tries to increase the value of a non-basic variable xk.When there is no degeneracy, then xk will be positive after pivoting, whichleads to the improvement of the objective value function and the algorithmterminates after a finite number of iterations.

I When in presence of degeneracy, cycling may occurs. In such a situation,there is a sequence of pivots that starts from some basic feasible solution andends exactly at the same basic feasible solution. Simplex algorithm cyclesforever.

I How to prevent degeneracy? How to prevent cycling?

I What is the computational behavior of the simplex algorithm in theworst-case?

I What about the stability of the simplex algorithm?

J.R. Figueira (IST) FIO March 7-8, 2016 5 / 50

Page 6: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. Non-degenerate LPs: Theoretical results

Comments and Remarks

I If we are sure that all the basic feasible solutions are not degenerate thefollowing result holds.

If all basic feasible solutions are non-degenerate, then the simplex algorithmterminates (after performing a finite number of iterations), regardless of thechoice of the candidate entering variables (and the corresponding leavingvariables).

Theorem 1 (Termination of the simplex algorithm).

I The issue is that in practice we do not know wether an LP is free ofdegenerate basic feasible solutions.

I Degeneracy should be avoided since it may lead to cycling.

I Let us illustrate these two concepts.

J.R. Figueira (IST) FIO March 7-8, 2016 6 / 50

Page 7: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Degeneracy and cycling

An Example by Klee-Minty

max z(x) = 3/4x1 − 20x2 + 1/2x3 + 6x4 + 3

subject to: 1/4x1 − 8x2 − x3 + 9x4 6 0

1/2x1 − 12x2 − 1/2x3 + 3x4 6 0

x3 6 1

x1, x2, x3, x4 > 0

After introducing the slack variables, x5, x6, and x7, the following sequence of basesoccurs: (Please verify by making the necessary pivoting operations in the simplexTabeaus.)

1. x>B := (x5, x6, x7) := (0, 0, 1) and z = 3.

2. x>B := (x1, x6, x7) := (0, 0, 1) and z = 3.

3. x>B := (x1, x2, x7) := (0, 0, 1) and z = 3.

4. x>B := (x3, x2, x7) := (0, 0, 1) and z = 3.

5. x>B := (x3, x4, x7) := (0, 0, 1) and z = 3.

6. x>B := (x5, x4, x7) := (0, 0, 1) and z = 3.

7. x>B := (x5, x6, x7) := (0, 0, 1) and z = 3.

J.R. Figueira (IST) FIO March 7-8, 2016 7 / 50

Page 8: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Avoiding degeneracy: The perturbation method

Comments and Remarks

I Consider the following two problems, named P and Pε, respectively (ε is asmall enough positive value).

maxx∈Rn

{c>x : Ax = b, x ≥ 0

}(P)

maxx∈Rn

{c>x : Ax = bε, x ≥ 0

}(Pε)

I where the components of the perturbed RHS vector bε are the following

b1 + ε, b2 + ε2, . . . , bi + εi, . . . , bm + εm.

I The following result holds.

The simplex algorithm terminates for Pε. Moreover, if Pε is unbounded,then P is also unbounded; and, if Pε has an optimal solution, then thecorresponding basis is also optimal for P.

Theorem 2 (Termination of the simplex algorithm regained).

J.R. Figueira (IST) FIO March 7-8, 2016 8 / 50

Page 9: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Avoiding cycling

Comments and Remarks

I Good news: We do not really to have to deal with a concrete ε.

I Two important rules can be used to prevent cycling:

Lexicographic rule. Applied to the leaving variable (more details are needed).

Bland’s rule. Consider the strictly negative cj. The entering variable is the onecorresponding to the smallest index j. When in presence of ties for theselection of the leaving variable, chose the one with the smallest index i.

I The following result holds.

The simplex method terminates, if the Bland’s (lexicographic) rule is ap-plied when solving P.

Theorem 3 (Alternative termination result).

J.R. Figueira (IST) FIO March 7-8, 2016 9 / 50

Page 10: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. The computational behavior of the simplex method

Comments and Remarks

I Each solution provided by the simplex algorithm is a basic feasible solutionwith m basic variables (the number of functional constraints).

I The number of ways of selecting m basic variables out of n is equal ton!/(n−m)!m!, which is an upper bound on the number of basic feasiblesolutions.

I How many vertices can be visited by the simplex algorithm in the worst case?

I Klee and Minty (1972) created an LP with n variables and n constraints and2n vertices.

I The standard simplex algorithm passes through each one of the extremepoints before reaching the optimal solution (the exponential running timebehavior of simplex algorithm for general LPs).

I The example was built by distorting a cube (hypercube).

J.R. Figueira (IST) FIO March 7-8, 2016 10 / 50

Page 11: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. The computational behavior of the simplex method

The Klee-Minty Example

max z(x) = 2n−1x1 + 2n−2x2 + 2n−3x3 + . . . + 2xn−1 + xn

subject to: x1 6 54x1 + x2 6 258x1 + 4x2 + x3 6 125...

.

.

....

2nx1 + 2n−1x2 + 2n−2x3 + . . . + 4xn−1 + xn 6 5n

x1, x2, x3, . . . xn−1, xn > 0

J.R. Figueira (IST) FIO March 7-8, 2016 11 / 50

Page 12: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

7. Numerical stability of the simplex method

Comments and Remarks

I For implementation purposes, the revised simplex method is preferable (tothe full tableau method) due to its smaller memory requirements and smalleraverage running time.

I The revised simplex method is a variant of the simplex method in thematrix-vector form.

I We know the importance of the B−1 in this method.

I Every time this matrix is updated there is a risk of introducing roundoff ortruncation errors, which accumulate and might eventually lead to highlyinaccurate results.

I There are several ways of dealing with this problem, but they are out of thecontents of this course.

J.R. Figueira (IST) FIO March 7-8, 2016 12 / 50

Page 13: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

8. Conclusions

The future of simplex algorithms

Simplex for large size LPs.

I Improved revised versions of the simplex.

I Use the dual revised simplex.

I Exploiting parallelism.

J.R. Figueira (IST) FIO March 7-8, 2016 13 / 50

Page 14: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Part

Finding an Initial Basic

Feasible Solution

Page 15: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Contents

1. Introduction

2. A small example

3. The problem in the equality form

4. Introducing artificial variables

5. Solving the Big−M model by the simplex method

6. The two-phases application of the simplex method

7. Conclusions

Page 16: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

1. Introduction

Brief Introduction

I For a large amount of LPs, we do not dispose of a “good” starting basicfeasible solution.

I It occurs in particular whenever the LP contains a positive RHS andconstraints of the types > and =.

I There are two well-known techniques to find a feasible basic solutions whenthe polyhedron is not empty. But, if it is the case these techniques are ableto provide such an information.

I These two techniques are: the successive application of the simplex methodin two-phases and solving the big−M model.

I IOR Tutorial:http://www.mhhe.com/engcs/industrial/hillier/iortutorial/install/instruction.html

I References: [Bazaraa et al., 1990, Goldfarb and Todd, 1989,Hillier and Lieberman, 2005, Taha, 2010].

J.R. Figueira (IST) FIO March 7-8, 2016 16 / 50

Page 17: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. A small example

An Example: Equality-Inequality Form

min z(x1, x2) = x1 + 1/4x2

subject to: 3x1 + x2 = 34x1 + 3x2 > 6

x1 + 2x2 6 4x1, x2 > 0

I It is easy to see that we cannot start with the standard solution x1 = x2 = 0.

I This solution is not feasible.

I The first and the second constraints are not standard (as in the previousLectures).

I How to deal with the problem?

J.R. Figueira (IST) FIO March 7-8, 2016 17 / 50

Page 18: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. A small example

Graphical Method

x1

x2

0 1 2 3 40

1

2

3

4

D

C

A B

J.R. Figueira (IST) FIO March 7-8, 2016 18 / 50

Page 19: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. The problem in the equality form

An Example: Equality Form

Consider the problem in an equality form. The variable considered to transform aninequality of the type > into an equation is called a surplus variable. Slack andsurplus variables have a substantive meaning.

min z(x1, x2, x3, x4) = x1 + 1/4x2 − 0x3 + 0x4

subject to: 3x1 + x2 = 34x1 + 3x2 − x3 = 6

x1 + 2x2 + x4 = 4x1, x2, x3, x4 > 0

Let us try to construct an initial basis:? = 3 − 3x1 − x2

? = 6 − 4x1 − 3x2 + x3

x4 = 4 − x1 − 2x2

It is not possible!J.R. Figueira (IST) FIO March 7-8, 2016 19 / 50

Page 20: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Introducing artificial variables

Artificial Variables

Consider only the constraints and add two artificial variables:

3x1 + x2 + a1 = 34x1 + 3x2 − x3 + a2 = 6x1 + 2x2 + x4 = 4x1, x2, a1, x3, a2, x4 > 0

Now, construct an initial basis:a1 = 3 − 3x1 − x2

a2 = 6 − 4x1 − 3x2 + x3

x4 = 4 − x1 − 2x2

Artificial variables have no meaning. They should be removed from the basis assoon as possible. If they still in the basis at the optimum, then the problem hasno feasible solutions.

J.R. Figueira (IST) FIO March 7-8, 2016 20 / 50

Page 21: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Solving the Big−M model by the simplex method

Comments and Remarks

I The main objective is to remove artificial variables from the basis.

I When it is possible, we get a first basic feasible solution.

I If the artificial variables cannot be removed, the problem has no feasiblesolutions.

I In Big−M method we should form the following objective function (M is alarge enough positive value).

min z(x) = x1 + 1/4x2 + Ma1 − 0x3 + Ma2 + 0x4.

I The next step is just to apply simplex method as we know it.

I If the problem is a maximization problem, the coefficients in the objectivefunction are as follows −Ma1,...

I When an artificial variable leaves the basis we do not need to update itscolumn, unless we need to perform some kind of post-optimality analysis.

I Next slide contains the resolution of the example.

J.R. Figueira (IST) FIO March 7-8, 2016 21 / 50

Page 22: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Solving the Big−M model by the simplex method

cj 1 1/4 M 0 M 0Basis xj x1 x2 a1 x3 a2 x4 bi Ratio

M a1

�� ��3 1 1 0 0 0 3 (3/3 = 1)⇒M a2 4 3 0 −1 1 0 6 (6/4 = 1.5)0 x4 1 2 0 0 0 1 4 (4/1 = 4)

t = 0 zj 7M 4M M −M M 0A cj (7M− 1) ⇑ (4M− 1/4) 0 −M 0 0 9M

1 x1 1 1/3 0 0 0 1 (1 : 1/3 = 3)

M a2 0�� ��5/3 −1 1 0 2 (2 : 5/3 = 6/5)⇒

0 x4 0 5/3 0 0 1 3 (3 : 5/3 = 9/5)t = 1 zj 1 (1 + 5M)/3 −M M 0

B cj 0 (5M/3 + 1/12) ⇑ −M 0 0 1 + 2M

1 x1 1 0 1/5 0 3/5 (3/5 : 1/5 = 3)1/4 x2 0 1 −3/5 0 6/5 · · · · · · · · ·

0 x4 0 0�� ��1 1 1 (1/1 = 1)⇒

t = 2 zj 1 1/4 1/20 0C cj 0 0 1/20 ⇑ 0 9/10

1 x1 1 0 0 −1/5 2/51/4 x2 0 1 0 3/5 9/5

0 x3 0 0 1 1 1t = 3 zj 1 1/4 0 −1/20

D cj 0 0 0 −1/20 17/20

J.R. Figueira (IST) FIO March 7-8, 2016 22 / 50

Page 23: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. The two-phases application of the simplex method

Comments and Remarks

I The objective is the same: find a starting feasible basis, if possible.

I This should be done in two phases.

I The first phase consist of minimizing the following objective function (it isalways a minimization).

min a1 + a2.

I If the optimal value of this objective function is zero, it means we found astarting basic feasible solutions and we can go to the second phase.Otherwise, the problem has no feasible solutions.

I In Phase II, optimize the original objective function from the optimal solutionof Phase I.

min z(x) = x1 + 1/4x2.

I When the original problem is a maximization problem, the second phase isalso a maximization problem.

I Let us consider the same example.

J.R. Figueira (IST) FIO March 7-8, 2016 23 / 50

Page 24: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. The two-phases application of the simplex method

Phase I: (Consider the first objective function)

cj 0 0 1 0 1 0Basis xj x1 x2 a1 x3 a2 x4 bi Ratio

1 a1

�� ��3 1 1 0 0 0 3 (3/3 = 1)⇒1 a2 4 3 0 −1 1 0 6 (6/4 = 1.5)0 x4 1 2 0 0 0 1 4 (4/1 = 4)

t = 0 zj 7 4 1 −1 1 0A cj 7 ⇑ 4 0 −1 0 0 9

0 x1 1 1/3 0 0 0 1 (1 : 1/3 = 3)

1 a2 0�� ��5/3 −1 1 0 2 (2 : 5/3 = 6/5)⇒

0 x4 0 5/3 0 0 1 3 (3 : 5/3 = 9/5)t = 1 zj 1 5/3 −1 1 0

B cj 0 5/3 ⇑ −1 0 0 2

0 x1 1 0 1/5 0 3/50 x2 0 1 −3/5 0 6/50 x4 0 0 1 1 1

t = 2 zj 0 0 0 0C cj 0 0 0 0 0

At the end the objective function has value zero. Go to Phase II.

J.R. Figueira (IST) FIO March 7-8, 2016 24 / 50

Page 25: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. The two-phases application of the simplex method

Phase II: (Consider the last tableau of Phase I)

cj ? ? ? ?Basis xj x1 x2 x3 x4 bi Ratio

? x1 1 0 1/5 0 3/5? x2 0 1 −3/5 0 6/5? x4 0 0 1 1 1

zj ? ? ? ?cj ? ? ? ? ?

cj 1 1/4 0 0Basis xj x1 x2 x3 x4 bi Ratio

1 x1 1 0 1/5 0 3/51/4 x2 0 1 −3/5 0 6/5

0 x4 0 0�� ��1 1 1

t = 0 zj 1 1/4 1/20 0C cj 0 0 1/20 0 9/10

1 x1 1 0 0 −1/5 2/51/4 x2 0 1 0 3/5 9/5

0 x3 0 0 1 1 1t = 1 zj 1 1/4 0 −1/20

D cj 0 0 0 −1/20 17/20

J.R. Figueira (IST) FIO March 7-8, 2016 25 / 50

Page 26: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

7. Conclusions

Some conclusions

I These two techniques are used when there is no an obvious starting solution.

I You should apply the two techniques to a problem with no feasible solutions(see PB Classes).

I Unless post-optimality analysis will be required, you can discard the columnsof artificial variables once they leave the basis.

I Apply the two techniques to minimization as well as to maximizationproblems.

J.R. Figueira (IST) FIO March 7-8, 2016 26 / 50

Page 27: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Part

Post-Optimality and Economic

Interpretation

Page 28: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Contents

1. Introduction

2. A general product-mix allocation problem

3. Characterizing the resources

4. Sensitivity analysis: Graphical approach

5. Sensitivity analysis: Tabular computations

6. Sensitivity analysis: Matrix-vector computations

7. Conclusions

Page 29: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

1. Introduction

Brief Introduction

I The economic interpretation of the data and the results is extremelyimportant.

I Some post-optimality analysis can help in doing it.

I Post-optimality includes: adding/removing variables or/and constraints,discrete changes in data, parametric techniques, robustness analysis, stabilityanalysis, sensitivity analysis,...

I We shall deal with sensitivity analysis for each cj and bi, consideredseparately.

I In such a kind of analysis we are interested in identifying the range thatallows to maintain the structure of the optimal solution (i.e, basic andnon-basic variables will not change).

J.R. Figueira (IST) FIO March 7-8, 2016 29 / 50

Page 30: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. A general product-mix allocation problem

A Classical Maximization Problem

The CorkMaxPro Company is the largest Portuguese producer andexporter of cork made products. Over the last five years, the com-pany has gradually expanded the geography and the volume of itsproduction activities, which consist of producing a product mix (i.e., de-signing and making the product lines or assortments that the companyoffers to its clients), here generically denoted by P1, . . ., Pj, . . ., and Pn.

The company’s plants possess several resources, R1, . . ., Ri, . . ., andRm, to make the different assortments. The quantity available of eachresource is, b1, . . ., bi, . . ., and bm, respectively. The allocation of resourcesto the production is as follows: allocate aij units of the resource Ri to makeone unit of the assortment Pj.

The market absorbs all the production and the revenue per unit ofproduct sold is cj Euros. The Company’s CEO needs to know the next yearproduction plan (activity levels) in such a way that the resource constraintsshould be taken into account and the overall revenue to be earned from theselling of the assortments in the market should be maximized.

Example 2 (A Classical Product Mix Resource Allocation Problem).

J.R. Figueira (IST) FIO March 7-8, 2016 30 / 50

Page 31: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. A general product-mix allocation problem

Relevant Information from the Problem Description

I Sets:

P = {P1, . . . , Pj, . . . , Pn} is the set of products.

R = {R1, . . . , Ri, . . . , Rm} is the set of resources.

I Indices:

j ∈ {1, . . . , n} is the set of the product indices.

i ∈ {1, . . . , m} is the set of the resources indices.

I Parameters (Data):

bi is the available amount of resource Ri, i = 1, . . . , m.

aij is the amount of resource Ri, i = 1, . . . , m, allocated to the

production of one unit of product Pj, j = 1, . . . , n.

cj is the per unit revenue earned when Pj is sold, j = 1, . . . , n.

I Decision Variables:

xj is the amount of product Pj, j = 1, . . . , n, to be produced.

I . . .J.R. Figueira (IST) FIO March 7-8, 2016 31 / 50

Page 32: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

2. A general product-mix allocation problem

The Linear Programming (LP) Model

maximize z(x) = c1x1 + . . . + cjxj + . . . + cnxn

subject to: a11x1 + . . . + a1jxj + . . . + a1nxn 6 b1...

......

ai1x1 + . . . + aijxj + . . . + ainxn 6 bi...

......

am1x1 + . . . + amjxj + . . . + amnxn 6 bm

x1, . . . xj, . . . xn > 0

J.R. Figueira (IST) FIO March 7-8, 2016 32 / 50

Page 33: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Characterizing the resources

Some definitions (1)

From a technical point of view, in linear programming, a (non-negative)slack variable, say xn+i (or si instead), is a variable that is added to a (lowerthan or equal) inequality type constraint, ∑n

j=1 aijxj 6 bi, to transform it in

an equality type constraint:

ai1x1 + . . . + aijxj + . . . + ainxn + si = bi, si > 0

From an economic point of view, si represents theunused amount of resource availability, bi.

Definition 1 (Slack Variables).

J.R. Figueira (IST) FIO March 7-8, 2016 33 / 50

Page 34: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Characterizing the resources

Some definitions (2)

A constraint, i, is said biding when

ai1x1 + . . . + aijxj + . . . + ainxn = bi.

In other words, when the whole amount of resource Ri, bi, was allocatedto the production of Pj, for j = 1, . . . , n. In this situation si = 0.

When si > 0 the constraint is called non-biding. In such a case:

ai1x1 + . . . + aijxj + . . . + ainxn < bi,

and some amount of resource remains unused.

Definition 2 (Biding Constraints).

J.R. Figueira (IST) FIO March 7-8, 2016 34 / 50

Page 35: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Characterizing the resources

Some definitions (3)

A resource Ri is called scarce if it is associated with a biding constraint,i.e., when si = 0. Otherwise, it is called abundant (si > 0).

Definition 3 (Scarce and Abundant Resources).

This classification of resources is very important for an economical interpretationof the problem.

J.R. Figueira (IST) FIO March 7-8, 2016 35 / 50

Page 36: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Characterizing the resources

Simplex method: Graphical Illustration

x1

x2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

201

1

2

23

3

4 4

5

5

6 6A

B C

D

J.R. Figueira (IST) FIO March 7-8, 2016 36 / 50

Page 37: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

3. Characterizing the resources

Comments and Remarks

I Constraint 1 is biding: resource R1 is scarce (Silicone).

I Constraint 2 is biding: resource R2 is scarce (Hight-Tech machine).

I Constraint 3 is non-biding: resource R3 is abundant (Robot 1).

I Constraint 4 is non-biding: resource R4 is abundant (Robot 2).

I In what follow, these information are very important.

J.R. Figueira (IST) FIO March 7-8, 2016 37 / 50

Page 38: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Relevant Questions: Sensitivity Analysis to the RHS

I When performing the sensitivity analysis of the availability of Resource 1, wedo not care about the other data (ceteris paribus condition):

bmin1 6 b1 6 bmax

1 .

I As for a scarce resource, the most relevant question is to know how much wecan increase its availability (this leads always to improve the value of theobjective function).

I As for an abundant resource, the most relevant question is to know howmuch we can decrease its availability (this does not change the value ofobjective function).

I For instance, during crises periods, it is also important to how much we candecrease the availability of a scarce resource (this leads always to adegradation of the value of the objective function).

I Increase the availability of an abundant resource is not relevant (it can beincreased till infinite).

J.R. Figueira (IST) FIO March 7-8, 2016 38 / 50

Page 39: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Graphical Illustration: Upper Bound of b1

x1

x2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

201

1

2

23

3

4 4

5

5

6 6

D H

J.R. Figueira (IST) FIO March 7-8, 2016 39 / 50

Page 40: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Graphical Illustration: Lower bound of b1

x1

x2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

201

1

2

23

3

4 4

5

5

6 6

D

C

J.R. Figueira (IST) FIO March 7-8, 2016 40 / 50

Page 41: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Comments and Remarks

I Compute bmax1 . Observe the graphical representation.

- When increasing the resource availability we can reach point H = (8, 3.5).

- At this point the availability is 19.5.

- Thus, bmax1 = 19.5.

I At point H the value of the objective function is 38.

- When increasing the availability of R1 from 18 to 19.5, the objective functionincreases from 37 to 38.

- The unitary impact is thus (38− 37)/(19.5− 18) = 2/3.

I Compute bmin1 .

- The availability of R1 can be decreased till point C = (3, 6).

- Thus, bmin1 = 12.

I Conclusion: 12 6 b1 6 19.5.

J.R. Figueira (IST) FIO March 7-8, 2016 41 / 50

Page 42: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Upper bound of c1 Lower bound of c2

x1

x2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

201

1

2

23

3

4 4

5

5

6 6

D

J.R. Figueira (IST) FIO March 7-8, 2016 42 / 50

Page 43: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

4. Sensitivity analysis: Graphical approach

Objective function coefficients

I In the sensitivity analysis of cj, we should stay at point D.

I If we rotate clockwise the objective function we can reach the cmax1 .

I It reaches its maximum value when the slope of the objective function is thesame as the slope of the Constraint 1.

I It suffices to perform such a slope analysis.

I From the objective function:

cmax1 x1 + 4x2 = K ⇔ x2 = K/4− (cmax

1 /4)x1

I From the Equation 1:

2x1 + x2 = 18 ⇔ x2 = 18− 2x1

I Conclusion:−cmax

1 /4 = −2 ⇔ cmax1 = 8.

J.R. Figueira (IST) FIO March 7-8, 2016 43 / 50

Page 44: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Sensitivity analysis: Tabular computations

cj 3 4 0 0 0 0Basis xj x1 x2 x3 x4 x5 x6 bi Ratio

0 x3 2 1 1 0 0 0 18 + ∆10 x4 1 2 0 1 0 0 150 x5 1 0 0 0 1 0 80 x6 0

�� ��1 0 0 0 1 6 ⇒t = 0 zj 0 0 0 0 0 0

A zj − cj −3 −4 ⇑ 0 0 0 0 0

0 x3 2 0 1 0 0 −1 12 + ∆1

0 x4

�� ��1 0 0 1 0 −2 3 ⇒0 x5 1 0 0 0 1 0 84 x2 0 1 0 0 0 1 6

t = 1 zj 0 4 0 0 0 4B zj − cj −3 ⇑ 0 0 0 0 4 24

0 x3 0 0 1 −2 0�� ��3 6 + ∆1 ⇒

3 x1 1 0 0 1 0 −2 30 x5 0 0 0 −1 1 2 54 x2 0 1 0 0 0 1 6

t = 2 zj 3 4 0 3 0 −2C zj − cj 0 0 0 3 0 −2 ⇑ 33

J.R. Figueira (IST) FIO March 7-8, 2016 44 / 50

Page 45: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Sensitivity analysis: Tabular computations

cj 3 4 0 0 0 0Basis xj x1 x2 x3 x4 x5 x6 bi Ratio

0 x6 0 0 1/3 −2/3 0 1 2 + 1/3∆13 x1 1 0 2/3 −1/3 0 0 7 + 2/3∆10 x5 0 0 −2/3 1/3 1 0 1− 2/3∆14 x2 0 1 −1/3 2/3 0 0 4− 1/3∆1

t = 3 zj 3 4 2/3 5/3 0 0D zj − cj 0 0 2/3 5/3 0 0 37 + 2/3∆1

I Construct the system: 2 + 1/3∆1 > 0 (∆1 > −6)7 + 2/3∆1 > 0 (∆1 > −21/2)1− 2/3∆1 > 0 (∆1 6 3/2)4− 1/3∆1 > 0 (∆1 6 12)

I Thus, −6 6 ∆1 6 1.5

I Consequently,12 6 b1 6 19.5

J.R. Figueira (IST) FIO March 7-8, 2016 45 / 50

Page 46: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

5. Sensitivity analysis: Tabular computations

cj (3 + δ1) 4 0 0 0 0Basis xj x1 x2 x3 x4 x5 x6 bi Ratio

0 x6 0 0 1/3 −2/3 0 1 2(3 + δ1) x1 1 0 2/3 −1/3 0 0 7

0 x5 0 0 −2/3 1/3 1 0 14 x2 0 1 −1/3 2/3 0 0 4

t = 3 zj (3 + δ1) 4 (2/3 + 2/3δ1) (5/3− 1/3δ1) 0 0D zj − cj 0 0 (2/3 + 2/3δ1) (5/3− 1/3δ1) 0 0 37 + 7δ1

I Construct the system: {2/3 + 2/3δ1 > 0 (δ1 > −1)5/3− 1/3δ1 > 0 (δ1 6 5)

I Thus, −1 6 δ1 6 5

I Consequently,2 6 c1 6 8

J.R. Figueira (IST) FIO March 7-8, 2016 46 / 50

Page 47: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

6. Sensitivity analysis: Matrix-vector computations

Matrix computations

I As for b1 we have to guarantee that B−1b∆1 ≥ 0.1/3 −2/3 0 12/3 −1/3 0 0−2/3 1/3 1 0−1/3 2/3 0 0

18 + ∆11586

0000

2 + 1/3∆17 + 2/3∆11− 2/3∆14− 1/3∆1

0000

I As for the coefficients of the objective function there are two cases:

Our x1 is basic: (cδ1B )>B−1N− (cδ1

B )> ≥ 0.

When xj is non-basic we have: zj − (cj + δj) > 0

J.R. Figueira (IST) FIO March 7-8, 2016 47 / 50

Page 48: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

7. Conclusions

Results

I Resource R1: 12 6 b1 6 19.5.

I Resource R2: 12 6 b2 6 18.

I Resource R3: 7 6 b3 6 +∞.

I Resource R4: 4 6 b4 6 +∞.

I Coefficient of x1: 2 6 c1 6 8.

I Coefficient of x2: 1.5 6 c2 6 6.

J.R. Figueira (IST) FIO March 7-8, 2016 48 / 50

Page 49: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

Part

Bibliography

Page 50: Introduction to Operations Research - ULisboa · Introduction to Operations Research (Week 4: Linear Programming: More on Simplex and Post-Optimality) Jos e Rui Figueira Instituto

References

Bazaraa, M., Jarvis, J., and Sherali, H. (1990).

Linear Programming and Network Flows.John Wiley & Sons, New York, USA, second edition.

Goldfarb, D. and Todd, M. J. (1989).

Linear programming.In Nemhauser, G. L., Rinnoy Kan, A. H. G., and Todd, M. J., editors, Optimization, volume 1 of Handbooks in Operations Research andManagement Science, pages 141–170. North Holland, Amsterdam, The Netherlands.

Hillier, F. and Lieberman, G. (2005).

Introduction to Operations Research.The McGraw-Hill Companies, Inc., New York, USA, eighth edition.

Taha, H. (2010).

Operations Research: An Introduction.Prentice-Hall, Upper Saddle River, New Jersey, USA, 9th edition.


Recommended