SlideShare ist ein Scribd-Unternehmen logo
1 von 34
-Simplex Algorithm
 Aizaz Ahmad
 Ghaffar Farooq
 Khwaja Bilal
 Sarwan Pasha
1
Linear Programming
Overview
 Introduction
 Simplex Algorithm/Method
 Steps For Simplex Algorithm
1. Conversion to Slack Format
2. Simplex Tableau
3. Pivot Column
4. Theta Ratio and Pivot Row
5. Pivoting
1. Calculate Rownew
2. Calculate Row – C.Rownew
 Cycling – Bland’s Rule
 Software Simulation
 Efficiency
 Other Variants of the Algorithm
 Summary of Algorithm
 Links
 Acknowledgement 2
Simplex Method
 Last week, we covered on using the graphical approach in deriving solutions
for LP problem
 Question:
 Can we solve all LP problems using graphical approach ?
3
Answer is “NO”
 Why?
 Consider the following scenario:
For 10 equations with 15 variables there exists a huge number ( 10
15
𝐶 = 3003) of basic
feasible solutions. In such a case, inspection of all the solutions one-by-one is not
practically feasible.
 It is extremely difficult to use a graphical approach to find its
maximized/minimized solution.
 Thus, we need another systematic approach to solve an LP problem -
known as Simplex Method/Algorithm.
4
Simplex Method
 The most popular method used for the solution of Linear Programming Problems
(LPP) is the simplex method.
 The journal Computing in Science and Engineering listed it as one of the top 10
algorithms of the twentieth century.
 An American Mathematical Scientist, George Bernard Dantzig is known for his
development of the simplex algorithm. That’s why we also name it Dantzig’s
Algorithm.
 The algorithm is derived from the geometrical concept of Simplex
(plural simplexes or simplices).
 Simplex Algorithm can solve an equation for many variables (dimensions).
5
Steps for Simplex Algorithm
1. Conversion to Slack Form
We need to convert our standard equation into a slack format first.
We refer slack format here as.
 It must be a maximization problem.
 All constraints are in a form of “equation”
 i.e. not equation of ≥ or ≤
 All variables must be required to be nonnegative
6
Slack Format
7
Consider the following 5 types of possible equation in a LP problem:
Slack Format
8
We will tell you why we need this format later!
Where, S is a slack variable
Sample of an LP problem

9
Converting it to slack format would be like…
Slack Format

10
Difference b/w Standard and Slack Format

11
Standard Format Slack Format
Slack Variables!

More Example on Slack Format
12
 Consider the following:
We can see that min has be converted to max and slack variables are added.
Transform the following linear
equation into slack format
2. Simplex Tableau
13
Simplex Tableau
 The simplex method progresses through a series of adjacent extreme points
(basic feasible solutions) with increasing values of the objective function
 Each such point can be represented by a simplex tableau, a table storing the
information about the basic feasible solution corresponding to the extreme
point.
 For Example:
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒
3𝑥 + 5𝑦 + 0𝑢 + 0𝑣
𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜
𝑥 + 𝑦 + 𝑢 = 4
𝑥 + 3𝑦 + + 𝑣 = 6
𝑥, 𝑦, 𝑢, 𝑣 ≥ 0.
14
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒
3𝑥 + 5𝑦
𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜
𝑥 + 𝑦 ≤ 4
𝑥 + 3𝑦 ≤ 6
𝑥, 𝑦, 𝑢, 𝑣 ≥ 0.
Simplex Tableau
𝑢
𝑣
1 1 1 0 4
1 3 0 1 6
-3 -5 0 0 0
𝑥 𝑦 𝑢 𝑣
Initialized by the
coefficients of the
objective function. The
signs are reversed in this
row (objective row)
We have constraints + 1
rows and variables +1
columns
Pivot Column/Entering Variable.
In our example, its Y
15
Simplex Tableau
3.Pivot Column
 Objective Row:
 The objective row is used by the simplex method to check whether the current
tableau represents an optimal solution.
 It does have the optimum solution if all the entries in the objective row—except, possibly,
the one in the last column—are nonnegative.
 Pivot Column/Entering Variable:
 Select the minimum number in the objective row, such a choice yields the largest
increase in the objective function’s value per unit of change in a variable’s value.
The most negative one selected will be the pivot column with an entering variable.
It is indicated by the up arrow.
16
Simplex Tableau
4. Calculating the Theta Ratio and Departing Variable
 Departing Variable:
 Also called leaving variable or pivot row i.e., a basic variable to become non basic
in the next tableau. Indicated by
 How to calculate:
 For each positive entry in the pivot column, compute the θ-ratio by dividing the
row’s last entry by the entry in the pivot column.
 The row with the smallest θ-ratio determines the departing variable, i.e., the
variable to become non basic.
 If there are no positive entries in the pivot column, no θ-ratio can be computed,
which indicates that the problem is unbounded and the algorithm stops.
17
Simplex Tableau
Calculating the Theta Ratio and Departing Variable
𝑢
𝑣
1 1 1 0 4
1 3 0 1 6
-3 -5 0 0 0
𝑥 𝑦 𝑢 𝑣
Pivot Column/Entering Variable
𝜃 − 𝑟𝑎𝑡𝑖𝑜 =
4
1
= 4
𝜃 − 𝑟𝑎𝑡𝑖𝑜 =
6
3
= 2
The row with the smallest θ-ratio determines the
departing variable. For our example, it is variable v.
The intersecting element of Pivot Column and Pivot
Row is the pivot.
In the next tableau the intersected element will
become 1 and the rest of elements will become 0 in
the pivot column.
Departing Variable / Leaving Variable/ Pivot Row
18
5. Pivoting
 To transform the current tableau into the next one and increase the value of
the objective function to the next feasible solution. We have to take some
steps. Called Pivoting
 Pivoting, is similar to the principal step of the Gauss-Jordan elimination
algorithm for solving systems of linear equations.
 Steps:
1. First, divide all the entries of the pivot row by the pivot, its entry in the pivot
column, to obtain Rownew
2. Then, replace each of the other rows, including the objective row, by the
difference
 𝑅𝑜𝑤 − 𝑐. 𝑅𝑜𝑤 𝑛𝑒𝑤
 Where c is the row’s entry in the pivot column.
19
Pivoting
1. Calculating Rownew
𝑢
𝑣
1 1 1 0 4
1 3 0 1 6
-3 -5 0 0 0
𝑥 𝑦 𝑢 𝑣
𝑅𝑜𝑤 𝑛𝑒𝑤 =
1
3
3
3
0
3
1
3
6
3
𝑅𝑜𝑤 𝑛𝑒𝑤 =
1
3
, 1, 0,
1
3
, 2
The pivot row will be replaced by the Rownew we calculated.
20
Pivoting
2. Calculating Row – c.Rownew
 As we have calculated the 2nd row. Now we will apply this formula on the rest
of the rows. i.e. Row 1 and Row 3 in our example.
 For Row 1:
 Row 1 – C. Rownew where C = 1
 1 − 1.
1
3
1 − 1.1 1 − 1.0 0 − 1.
1
3
4 − 1.2

2
3
0 1 −
1
3
2
 For Row 3:
 Row 3 – C. Rownew where C = -5
 −3 − −5 .
1
3
− 5 − (−5). 1 0 − (−5). 0 0 − (−5).
1
3
0 − (−5). 2
 −
4
3
0 0
5
3
10
Now we will replace all the rows with their new respective rows in order to make the
new tableau.
21
Pivoting
Next Tableau
𝑢
𝑦
2/3 0 1 -1/3 2
1/3 1 0 1/3 2
-4/3 0 0 5/3 10
𝑥 𝑦 𝑢 𝑣
Now we can see that the intersected element became 1 and the rest of them
became zero in pivot column. (Canonical Unit Vector)
The Entering variable Y took the place of departing variable V.
But…
We cannot finish here, because the objective row has still a negative value. We
have to eliminate it by doing further iterations.
22
2nd Iteration
 We have to go through all the steps again. Including the selection of pivot column calculating
pivot row and then pivoting.
 So our Rownew would be: 1 0
3
2
−
1
2
3
 For Other Rows:
 For Row 2:
 Row 2 – C. Rownew where C = 1/3

1
3
−
1
3
. 1 1 −
1
3
. (0) 0 −
1
3
. (
3
2
)
1
3
−
1
3
. (−
1
2
) 2 −
1
3.
. 3
 0 1 −
1
2
1
2
1
 For Row 3:
 Row 3 – C. Rownew where C = -4/3
 −
4
3
− −
4
3
. 1 0 − −
4
3
. 0 0 − −
4
3
.
3
2
5
3
− −
4
3
. (−
1
2
) 10 − −
4
3
. 3
 0 0 2 1 14
Put in next tableau…
23
2nd Iteration Tableau
𝑥
𝑦
1 0 3/2 -1/2 3
0 1 -1/2 1/2 1
0 0 2 1 14
𝑥 𝑦 𝑢 𝑣
We can see that the last row has no negative value left. We can safely stop our
iterations here.
We can conclude our maximized solution as:
𝑥 = 3
𝑦 = 1
𝑢 = 0
𝑣 = 0
𝑀𝑎𝑥 = 14
We choose u and v equal
to 0, because their
column has all distinct
values. If they were like
x and y, they’d have
some value.
24
Cycling – Bland’s Rule
 When an objective function’s values “stall” for several iterations in a row and
that the algorithm cycles back to a previously considered point and hence
never terminate. This phenomenon is called cycling.
 Although, it rarely happens, but when it does - A simple modification of the
simplex method, called Bland’s rule, eliminates even the theoretical
possibility of cycling.
25
Cycling – Bland’s Rule
 Assuming that the variables are denoted by a subscripted letter (e.g., x1,
x2,..., xn), this rule can be stated as follows:
1. Among the columns with a negative entry in the objective row, select the
column with the smallest subscript in choosing pivot column.
2. Resolve a tie among the smallest θ-ratios by selecting the row labeled by the
basic variable with the smallest subscript in choosing pivot row.
26
Software Simulation
 Simplex Method has became so efficient that its calculation packages are
even available online. One of them is as follows:
 For ease, we will copy the same problem to the online tool and check
whether it gives us the same result:
maximize p = 3x +5y
subject to x + y = 4, x+3y = 6
 Simplex Method Online Tool
27
Efficiency
How efficient is the simplex method?
28
Efficiency of Simplex Algorithm
 Since we know that the algorithm progresses through a sequence of adjacent
points of a feasible region. Right?
 So, one should probably expect bad news because the number of extreme
points is known to grow exponentially with the problem size.
 The worst-case efficiency of the simplex method has been shown to be
exponential.
 But Fortunately!
 More than half a century of practical experience with the algorithm has
shown that the number of iterations in a typical application ranges between
m and 3m, with the number of operations per iteration proportional to mn,
where m and n are the numbers of equality constraints and variables,
respectively.
29
Other Variants of the Algorithm
 Ellipsoid Method:
 An important mile- stone in the history of such algorithms was the proof by L. G.
Khachian showing that the ellipsoid method can solve any linear programming
problem in polynomial time.
 However, ellipsoid method was much slower than the simplex method in practice
 Karmarker’s Method
 Narendra Karmarkar published an algorithm that not only had a polynomial worst-
case efficiency but also was competitive with the simplex method. This method
generates a sequence of feasible solutions that lie within the feasible region
rather than going through a sequence of adjacent extreme points as the simplex
method does. (Interior Point Methods).
30
Summary of Simplex Algorithm
 Step 0
 Initialization. Present a given linear programming problem in standard form and set up an initial
tableau with non negative entries in the rightmost column.
 Step 1
 Optimality test. If all the entries in the objective row are nonnegative—stop: the tableau
represents an optimal solution whose basic variables’ values are in the rightmost column and
the remaining, non basic variables’ values are zeros.
 Step 2
 Finding the entering variable. Select the most negative entry from among the first n elements
of the objective row.
 Step 3
 Finding the departing variable. For each positive entry in the pivot column, calculate the θ-
ratio. Find the row with the smallest θ-ratio.
 Step 4
 Forming the next tableau. Divide all the entries in the pivot row by its entry in the pivot
column. Subtract from each of the other rows, including the objective row, the new pivot row
multiplied by the entry in the pivot column of the row in question. (This will make all the
entries in the pivot column 0’s except for 1in the pivot row.) Replace the label of the pivot row
by the variable’s name of the pivot column and go back to Step 1. 31
Links
 Simplex Method Online Tool
 Online Graphical Representation Tool
 Click here to download the file
 Helpful Website on Simplex Method
 Infeasible Solution
32
Acknowledgment
The material presented in this lecture is adopted from:
 Anany Levitin. Introduction to Design and Analysis of Algorithms, 3rd Edition
 Thomas H. Cormen. Introduction to Algorithms, 3rd Edition
33
Thank You!
34

Weitere ähnliche Inhalte

Was ist angesagt? (20)

Linear Programming Problems : Dr. Purnima Pandit
Linear Programming Problems : Dr. Purnima PanditLinear Programming Problems : Dr. Purnima Pandit
Linear Programming Problems : Dr. Purnima Pandit
 
Linear programming
Linear programmingLinear programming
Linear programming
 
Unit.2. linear programming
Unit.2. linear programmingUnit.2. linear programming
Unit.2. linear programming
 
Simplex method
Simplex method Simplex method
Simplex method
 
Simplex method
Simplex methodSimplex method
Simplex method
 
Linear programing
Linear programingLinear programing
Linear programing
 
Lecture28 tsp
Lecture28 tspLecture28 tsp
Lecture28 tsp
 
Maxima and minima
Maxima and minimaMaxima and minima
Maxima and minima
 
Chapter 4 Simplex Method ppt
Chapter 4  Simplex Method pptChapter 4  Simplex Method ppt
Chapter 4 Simplex Method ppt
 
Simplex Method
Simplex MethodSimplex Method
Simplex Method
 
Coordinate Descent method
Coordinate Descent methodCoordinate Descent method
Coordinate Descent method
 
PRIMAL & DUAL PROBLEMS
PRIMAL & DUAL PROBLEMSPRIMAL & DUAL PROBLEMS
PRIMAL & DUAL PROBLEMS
 
Linear programming graphical method
Linear programming graphical methodLinear programming graphical method
Linear programming graphical method
 
linear programming
linear programming linear programming
linear programming
 
Simplex method - Maximisation Case
Simplex method - Maximisation CaseSimplex method - Maximisation Case
Simplex method - Maximisation Case
 
Queuing theory and its applications
Queuing theory and its applicationsQueuing theory and its applications
Queuing theory and its applications
 
Simplex algorithm
Simplex algorithmSimplex algorithm
Simplex algorithm
 
CH3.pdf
CH3.pdfCH3.pdf
CH3.pdf
 
Lecture27 linear programming
Lecture27 linear programmingLecture27 linear programming
Lecture27 linear programming
 
simplex method
simplex methodsimplex method
simplex method
 

Andere mochten auch

Simplex Method
Simplex MethodSimplex Method
Simplex MethodSachin MK
 
A Modular Genetic Algorithm Specialized for Linear Constraints
A Modular Genetic Algorithm Specialized for Linear ConstraintsA Modular Genetic Algorithm Specialized for Linear Constraints
A Modular Genetic Algorithm Specialized for Linear ConstraintsStefano Costanzo
 
An algorithm for solving integer linear programming problems
An algorithm for solving integer linear programming problemsAn algorithm for solving integer linear programming problems
An algorithm for solving integer linear programming problemseSAT Journals
 
Numerical analysis genetic algorithms
Numerical analysis  genetic algorithmsNumerical analysis  genetic algorithms
Numerical analysis genetic algorithmsSHAMJITH KM
 
Genetic programming
Genetic programmingGenetic programming
Genetic programmingMeghna Singh
 
Mba i qt unit-1.3_linear programming in om
Mba i qt unit-1.3_linear programming in omMba i qt unit-1.3_linear programming in om
Mba i qt unit-1.3_linear programming in omRai University
 
Transportation+method
Transportation+methodTransportation+method
Transportation+methodvideoaakash15
 
Optimization in scilab
Optimization in scilabOptimization in scilab
Optimization in scilabScilab
 
Mba i ot unit-1.1_linear programming
Mba i ot unit-1.1_linear programmingMba i ot unit-1.1_linear programming
Mba i ot unit-1.1_linear programmingRai University
 
Operation Research Techniques
Operation Research Techniques Operation Research Techniques
Operation Research Techniques Lijin Mathew
 
Foreign Exhange Rate
Foreign Exhange RateForeign Exhange Rate
Foreign Exhange RateNikhil Dhiman
 
Dynamic Programming - Part 1
Dynamic Programming - Part 1Dynamic Programming - Part 1
Dynamic Programming - Part 1Amrinder Arora
 
Karmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemKarmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemAjay Dhamija
 
operation research
operation researchoperation research
operation researchujal70
 
Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Mohit Bathineni
 

Andere mochten auch (20)

Simplex Algorithm
Simplex AlgorithmSimplex Algorithm
Simplex Algorithm
 
Simplex Algorithm
Simplex AlgorithmSimplex Algorithm
Simplex Algorithm
 
Simplex Method
Simplex MethodSimplex Method
Simplex Method
 
A Modular Genetic Algorithm Specialized for Linear Constraints
A Modular Genetic Algorithm Specialized for Linear ConstraintsA Modular Genetic Algorithm Specialized for Linear Constraints
A Modular Genetic Algorithm Specialized for Linear Constraints
 
An algorithm for solving integer linear programming problems
An algorithm for solving integer linear programming problemsAn algorithm for solving integer linear programming problems
An algorithm for solving integer linear programming problems
 
Numerical analysis genetic algorithms
Numerical analysis  genetic algorithmsNumerical analysis  genetic algorithms
Numerical analysis genetic algorithms
 
Genetic programming
Genetic programmingGenetic programming
Genetic programming
 
Mba i qt unit-1.3_linear programming in om
Mba i qt unit-1.3_linear programming in omMba i qt unit-1.3_linear programming in om
Mba i qt unit-1.3_linear programming in om
 
Bounded var
Bounded varBounded var
Bounded var
 
Transportation+method
Transportation+methodTransportation+method
Transportation+method
 
Optimization in scilab
Optimization in scilabOptimization in scilab
Optimization in scilab
 
Dynamic programming
Dynamic programming Dynamic programming
Dynamic programming
 
Mba i ot unit-1.1_linear programming
Mba i ot unit-1.1_linear programmingMba i ot unit-1.1_linear programming
Mba i ot unit-1.1_linear programming
 
T P
T PT P
T P
 
Operation Research Techniques
Operation Research Techniques Operation Research Techniques
Operation Research Techniques
 
Foreign Exhange Rate
Foreign Exhange RateForeign Exhange Rate
Foreign Exhange Rate
 
Dynamic Programming - Part 1
Dynamic Programming - Part 1Dynamic Programming - Part 1
Dynamic Programming - Part 1
 
Karmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemKarmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming Problem
 
operation research
operation researchoperation research
operation research
 
Foreign exchange rate impact (1)
Foreign exchange rate impact (1)Foreign exchange rate impact (1)
Foreign exchange rate impact (1)
 

Ähnlich wie Simplex Algorithm

SIMPLEX METHOD.pptx
SIMPLEX METHOD.pptxSIMPLEX METHOD.pptx
SIMPLEX METHOD.pptxTista3
 
Ch06_1-2_Simplex_Method.pdf
Ch06_1-2_Simplex_Method.pdfCh06_1-2_Simplex_Method.pdf
Ch06_1-2_Simplex_Method.pdfFredCuenca
 
Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05Charlton Inao
 
performance management and Resource optimization part-2.pptx
performance management and Resource optimization part-2.pptxperformance management and Resource optimization part-2.pptx
performance management and Resource optimization part-2.pptxtefera21
 
control system Lab 01-introduction to transfer functions
control system Lab 01-introduction to transfer functionscontrol system Lab 01-introduction to transfer functions
control system Lab 01-introduction to transfer functionsnalan karunanayake
 
Meeting w6 chapter 2 part 3
Meeting w6   chapter 2 part 3Meeting w6   chapter 2 part 3
Meeting w6 chapter 2 part 3Hattori Sidek
 
Meeting w6 chapter 2 part 3
Meeting w6   chapter 2 part 3Meeting w6   chapter 2 part 3
Meeting w6 chapter 2 part 3mkazree
 
Scilab as a calculator
Scilab as a calculatorScilab as a calculator
Scilab as a calculatorScilab
 
DSP_FOEHU - MATLAB 03 - The z-Transform
DSP_FOEHU - MATLAB 03 - The z-TransformDSP_FOEHU - MATLAB 03 - The z-Transform
DSP_FOEHU - MATLAB 03 - The z-TransformAmr E. Mohamed
 
Chapter 3.Simplex Method hand out last.pdf
Chapter 3.Simplex Method hand out last.pdfChapter 3.Simplex Method hand out last.pdf
Chapter 3.Simplex Method hand out last.pdfTsegay Berhe
 
Inverse laplacetransform
Inverse laplacetransformInverse laplacetransform
Inverse laplacetransformTarun Gehlot
 

Ähnlich wie Simplex Algorithm (20)

SIMPLEX METHOD.pptx
SIMPLEX METHOD.pptxSIMPLEX METHOD.pptx
SIMPLEX METHOD.pptx
 
Ch06_1-2_Simplex_Method.pdf
Ch06_1-2_Simplex_Method.pdfCh06_1-2_Simplex_Method.pdf
Ch06_1-2_Simplex_Method.pdf
 
Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05Wk 6 part 2 non linearites and non linearization april 05
Wk 6 part 2 non linearites and non linearization april 05
 
EPE821_Lecture3.pptx
EPE821_Lecture3.pptxEPE821_Lecture3.pptx
EPE821_Lecture3.pptx
 
performance management and Resource optimization part-2.pptx
performance management and Resource optimization part-2.pptxperformance management and Resource optimization part-2.pptx
performance management and Resource optimization part-2.pptx
 
control system Lab 01-introduction to transfer functions
control system Lab 01-introduction to transfer functionscontrol system Lab 01-introduction to transfer functions
control system Lab 01-introduction to transfer functions
 
Meeting w6 chapter 2 part 3
Meeting w6   chapter 2 part 3Meeting w6   chapter 2 part 3
Meeting w6 chapter 2 part 3
 
Meeting w6 chapter 2 part 3
Meeting w6   chapter 2 part 3Meeting w6   chapter 2 part 3
Meeting w6 chapter 2 part 3
 
Scilab as a calculator
Scilab as a calculatorScilab as a calculator
Scilab as a calculator
 
DSP_FOEHU - MATLAB 03 - The z-Transform
DSP_FOEHU - MATLAB 03 - The z-TransformDSP_FOEHU - MATLAB 03 - The z-Transform
DSP_FOEHU - MATLAB 03 - The z-Transform
 
L06
L06L06
L06
 
Chapter 3.Simplex Method hand out last.pdf
Chapter 3.Simplex Method hand out last.pdfChapter 3.Simplex Method hand out last.pdf
Chapter 3.Simplex Method hand out last.pdf
 
Python_Module_2.pdf
Python_Module_2.pdfPython_Module_2.pdf
Python_Module_2.pdf
 
Inverse laplacetransform
Inverse laplacetransformInverse laplacetransform
Inverse laplacetransform
 
n7-LP-simplex.ppt
n7-LP-simplex.pptn7-LP-simplex.ppt
n7-LP-simplex.ppt
 
Regression.pptx
Regression.pptxRegression.pptx
Regression.pptx
 
Regression.pptx
Regression.pptxRegression.pptx
Regression.pptx
 
Daa unit 1
Daa unit 1Daa unit 1
Daa unit 1
 
Systems of linear equations; matrices
Systems of linear equations; matricesSystems of linear equations; matrices
Systems of linear equations; matrices
 
Linear programming
Linear programmingLinear programming
Linear programming
 

Kürzlich hochgeladen

A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingTeacherCyreneCayanan
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...PsychoTech Services
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 

Kürzlich hochgeladen (20)

A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 

Simplex Algorithm

  • 1. -Simplex Algorithm  Aizaz Ahmad  Ghaffar Farooq  Khwaja Bilal  Sarwan Pasha 1 Linear Programming
  • 2. Overview  Introduction  Simplex Algorithm/Method  Steps For Simplex Algorithm 1. Conversion to Slack Format 2. Simplex Tableau 3. Pivot Column 4. Theta Ratio and Pivot Row 5. Pivoting 1. Calculate Rownew 2. Calculate Row – C.Rownew  Cycling – Bland’s Rule  Software Simulation  Efficiency  Other Variants of the Algorithm  Summary of Algorithm  Links  Acknowledgement 2
  • 3. Simplex Method  Last week, we covered on using the graphical approach in deriving solutions for LP problem  Question:  Can we solve all LP problems using graphical approach ? 3
  • 4. Answer is “NO”  Why?  Consider the following scenario: For 10 equations with 15 variables there exists a huge number ( 10 15 𝐶 = 3003) of basic feasible solutions. In such a case, inspection of all the solutions one-by-one is not practically feasible.  It is extremely difficult to use a graphical approach to find its maximized/minimized solution.  Thus, we need another systematic approach to solve an LP problem - known as Simplex Method/Algorithm. 4
  • 5. Simplex Method  The most popular method used for the solution of Linear Programming Problems (LPP) is the simplex method.  The journal Computing in Science and Engineering listed it as one of the top 10 algorithms of the twentieth century.  An American Mathematical Scientist, George Bernard Dantzig is known for his development of the simplex algorithm. That’s why we also name it Dantzig’s Algorithm.  The algorithm is derived from the geometrical concept of Simplex (plural simplexes or simplices).  Simplex Algorithm can solve an equation for many variables (dimensions). 5
  • 6. Steps for Simplex Algorithm 1. Conversion to Slack Form We need to convert our standard equation into a slack format first. We refer slack format here as.  It must be a maximization problem.  All constraints are in a form of “equation”  i.e. not equation of ≥ or ≤  All variables must be required to be nonnegative 6
  • 7. Slack Format 7 Consider the following 5 types of possible equation in a LP problem:
  • 8. Slack Format 8 We will tell you why we need this format later! Where, S is a slack variable
  • 9. Sample of an LP problem  9 Converting it to slack format would be like…
  • 11. Difference b/w Standard and Slack Format  11 Standard Format Slack Format Slack Variables! 
  • 12. More Example on Slack Format 12  Consider the following: We can see that min has be converted to max and slack variables are added. Transform the following linear equation into slack format
  • 14. Simplex Tableau  The simplex method progresses through a series of adjacent extreme points (basic feasible solutions) with increasing values of the objective function  Each such point can be represented by a simplex tableau, a table storing the information about the basic feasible solution corresponding to the extreme point.  For Example: 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 3𝑥 + 5𝑦 + 0𝑢 + 0𝑣 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 𝑥 + 𝑦 + 𝑢 = 4 𝑥 + 3𝑦 + + 𝑣 = 6 𝑥, 𝑦, 𝑢, 𝑣 ≥ 0. 14 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 3𝑥 + 5𝑦 𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜 𝑥 + 𝑦 ≤ 4 𝑥 + 3𝑦 ≤ 6 𝑥, 𝑦, 𝑢, 𝑣 ≥ 0.
  • 15. Simplex Tableau 𝑢 𝑣 1 1 1 0 4 1 3 0 1 6 -3 -5 0 0 0 𝑥 𝑦 𝑢 𝑣 Initialized by the coefficients of the objective function. The signs are reversed in this row (objective row) We have constraints + 1 rows and variables +1 columns Pivot Column/Entering Variable. In our example, its Y 15
  • 16. Simplex Tableau 3.Pivot Column  Objective Row:  The objective row is used by the simplex method to check whether the current tableau represents an optimal solution.  It does have the optimum solution if all the entries in the objective row—except, possibly, the one in the last column—are nonnegative.  Pivot Column/Entering Variable:  Select the minimum number in the objective row, such a choice yields the largest increase in the objective function’s value per unit of change in a variable’s value. The most negative one selected will be the pivot column with an entering variable. It is indicated by the up arrow. 16
  • 17. Simplex Tableau 4. Calculating the Theta Ratio and Departing Variable  Departing Variable:  Also called leaving variable or pivot row i.e., a basic variable to become non basic in the next tableau. Indicated by  How to calculate:  For each positive entry in the pivot column, compute the θ-ratio by dividing the row’s last entry by the entry in the pivot column.  The row with the smallest θ-ratio determines the departing variable, i.e., the variable to become non basic.  If there are no positive entries in the pivot column, no θ-ratio can be computed, which indicates that the problem is unbounded and the algorithm stops. 17
  • 18. Simplex Tableau Calculating the Theta Ratio and Departing Variable 𝑢 𝑣 1 1 1 0 4 1 3 0 1 6 -3 -5 0 0 0 𝑥 𝑦 𝑢 𝑣 Pivot Column/Entering Variable 𝜃 − 𝑟𝑎𝑡𝑖𝑜 = 4 1 = 4 𝜃 − 𝑟𝑎𝑡𝑖𝑜 = 6 3 = 2 The row with the smallest θ-ratio determines the departing variable. For our example, it is variable v. The intersecting element of Pivot Column and Pivot Row is the pivot. In the next tableau the intersected element will become 1 and the rest of elements will become 0 in the pivot column. Departing Variable / Leaving Variable/ Pivot Row 18
  • 19. 5. Pivoting  To transform the current tableau into the next one and increase the value of the objective function to the next feasible solution. We have to take some steps. Called Pivoting  Pivoting, is similar to the principal step of the Gauss-Jordan elimination algorithm for solving systems of linear equations.  Steps: 1. First, divide all the entries of the pivot row by the pivot, its entry in the pivot column, to obtain Rownew 2. Then, replace each of the other rows, including the objective row, by the difference  𝑅𝑜𝑤 − 𝑐. 𝑅𝑜𝑤 𝑛𝑒𝑤  Where c is the row’s entry in the pivot column. 19
  • 20. Pivoting 1. Calculating Rownew 𝑢 𝑣 1 1 1 0 4 1 3 0 1 6 -3 -5 0 0 0 𝑥 𝑦 𝑢 𝑣 𝑅𝑜𝑤 𝑛𝑒𝑤 = 1 3 3 3 0 3 1 3 6 3 𝑅𝑜𝑤 𝑛𝑒𝑤 = 1 3 , 1, 0, 1 3 , 2 The pivot row will be replaced by the Rownew we calculated. 20
  • 21. Pivoting 2. Calculating Row – c.Rownew  As we have calculated the 2nd row. Now we will apply this formula on the rest of the rows. i.e. Row 1 and Row 3 in our example.  For Row 1:  Row 1 – C. Rownew where C = 1  1 − 1. 1 3 1 − 1.1 1 − 1.0 0 − 1. 1 3 4 − 1.2  2 3 0 1 − 1 3 2  For Row 3:  Row 3 – C. Rownew where C = -5  −3 − −5 . 1 3 − 5 − (−5). 1 0 − (−5). 0 0 − (−5). 1 3 0 − (−5). 2  − 4 3 0 0 5 3 10 Now we will replace all the rows with their new respective rows in order to make the new tableau. 21
  • 22. Pivoting Next Tableau 𝑢 𝑦 2/3 0 1 -1/3 2 1/3 1 0 1/3 2 -4/3 0 0 5/3 10 𝑥 𝑦 𝑢 𝑣 Now we can see that the intersected element became 1 and the rest of them became zero in pivot column. (Canonical Unit Vector) The Entering variable Y took the place of departing variable V. But… We cannot finish here, because the objective row has still a negative value. We have to eliminate it by doing further iterations. 22
  • 23. 2nd Iteration  We have to go through all the steps again. Including the selection of pivot column calculating pivot row and then pivoting.  So our Rownew would be: 1 0 3 2 − 1 2 3  For Other Rows:  For Row 2:  Row 2 – C. Rownew where C = 1/3  1 3 − 1 3 . 1 1 − 1 3 . (0) 0 − 1 3 . ( 3 2 ) 1 3 − 1 3 . (− 1 2 ) 2 − 1 3. . 3  0 1 − 1 2 1 2 1  For Row 3:  Row 3 – C. Rownew where C = -4/3  − 4 3 − − 4 3 . 1 0 − − 4 3 . 0 0 − − 4 3 . 3 2 5 3 − − 4 3 . (− 1 2 ) 10 − − 4 3 . 3  0 0 2 1 14 Put in next tableau… 23
  • 24. 2nd Iteration Tableau 𝑥 𝑦 1 0 3/2 -1/2 3 0 1 -1/2 1/2 1 0 0 2 1 14 𝑥 𝑦 𝑢 𝑣 We can see that the last row has no negative value left. We can safely stop our iterations here. We can conclude our maximized solution as: 𝑥 = 3 𝑦 = 1 𝑢 = 0 𝑣 = 0 𝑀𝑎𝑥 = 14 We choose u and v equal to 0, because their column has all distinct values. If they were like x and y, they’d have some value. 24
  • 25. Cycling – Bland’s Rule  When an objective function’s values “stall” for several iterations in a row and that the algorithm cycles back to a previously considered point and hence never terminate. This phenomenon is called cycling.  Although, it rarely happens, but when it does - A simple modification of the simplex method, called Bland’s rule, eliminates even the theoretical possibility of cycling. 25
  • 26. Cycling – Bland’s Rule  Assuming that the variables are denoted by a subscripted letter (e.g., x1, x2,..., xn), this rule can be stated as follows: 1. Among the columns with a negative entry in the objective row, select the column with the smallest subscript in choosing pivot column. 2. Resolve a tie among the smallest θ-ratios by selecting the row labeled by the basic variable with the smallest subscript in choosing pivot row. 26
  • 27. Software Simulation  Simplex Method has became so efficient that its calculation packages are even available online. One of them is as follows:  For ease, we will copy the same problem to the online tool and check whether it gives us the same result: maximize p = 3x +5y subject to x + y = 4, x+3y = 6  Simplex Method Online Tool 27
  • 28. Efficiency How efficient is the simplex method? 28
  • 29. Efficiency of Simplex Algorithm  Since we know that the algorithm progresses through a sequence of adjacent points of a feasible region. Right?  So, one should probably expect bad news because the number of extreme points is known to grow exponentially with the problem size.  The worst-case efficiency of the simplex method has been shown to be exponential.  But Fortunately!  More than half a century of practical experience with the algorithm has shown that the number of iterations in a typical application ranges between m and 3m, with the number of operations per iteration proportional to mn, where m and n are the numbers of equality constraints and variables, respectively. 29
  • 30. Other Variants of the Algorithm  Ellipsoid Method:  An important mile- stone in the history of such algorithms was the proof by L. G. Khachian showing that the ellipsoid method can solve any linear programming problem in polynomial time.  However, ellipsoid method was much slower than the simplex method in practice  Karmarker’s Method  Narendra Karmarkar published an algorithm that not only had a polynomial worst- case efficiency but also was competitive with the simplex method. This method generates a sequence of feasible solutions that lie within the feasible region rather than going through a sequence of adjacent extreme points as the simplex method does. (Interior Point Methods). 30
  • 31. Summary of Simplex Algorithm  Step 0  Initialization. Present a given linear programming problem in standard form and set up an initial tableau with non negative entries in the rightmost column.  Step 1  Optimality test. If all the entries in the objective row are nonnegative—stop: the tableau represents an optimal solution whose basic variables’ values are in the rightmost column and the remaining, non basic variables’ values are zeros.  Step 2  Finding the entering variable. Select the most negative entry from among the first n elements of the objective row.  Step 3  Finding the departing variable. For each positive entry in the pivot column, calculate the θ- ratio. Find the row with the smallest θ-ratio.  Step 4  Forming the next tableau. Divide all the entries in the pivot row by its entry in the pivot column. Subtract from each of the other rows, including the objective row, the new pivot row multiplied by the entry in the pivot column of the row in question. (This will make all the entries in the pivot column 0’s except for 1in the pivot row.) Replace the label of the pivot row by the variable’s name of the pivot column and go back to Step 1. 31
  • 32. Links  Simplex Method Online Tool  Online Graphical Representation Tool  Click here to download the file  Helpful Website on Simplex Method  Infeasible Solution 32
  • 33. Acknowledgment The material presented in this lecture is adopted from:  Anany Levitin. Introduction to Design and Analysis of Algorithms, 3rd Edition  Thomas H. Cormen. Introduction to Algorithms, 3rd Edition 33