Title: Chapter 5 The Simplex Method
1Chapter 5The Simplex Method
The most popular method for solving Linear
Programming Problems We shall present it as an
Algorithm
2General Structure of Algorithms
Initialise
Check for desired results
Yes
Stop
Iterate
No
Perform a sequence of repetitive steps
3Construct a feasible extreme point
Is this point optimal ?
Yes
Stop
Iterate
No
Move along an edge to a better extreme point
4Missing Details
- Initialisation
- How do we represent a feasible extreme point
algebraically? - Optimality Test
- How do we determine whether a given extreme point
is optimal? - Iteration
- How do we move a long an edge to a better
adjacent extreme point?
55.1 initialisation
- Transform the LP problem given in a standard form
into a canonical form. - This involves the introduction of slack
variables, one for each functional constraint. - Thus if we start with n variables and m
functional constraints, we end up with nm
variables and m functional equality constraints.
6Standard Form
- optmax
- ???
- bi 0 , for all i.
7 Canonical Form
8Observation
- The i-th slack variable measure the distance of
the point x(x1,...,xn) from the hyperplane
defining the i-th constraint (This is not a
Euclidean distance). - Thus, if the i-th slack variable is equal to zero
the point x (x1,...,xn) is on the i-th
hyperplane. Otherwise it is not. - The original variables measure the distance to
the hyperplanes defining the respective
non-negativity constraints.
9Example
x3,x4,x5 are slack variables
10Why do we do this?
- If we use the slack variables as a basis, we
obtain a feasible extreme point !!!
115.5.1 Definition
- A basic feasible solution is a basic solution
that satisfies the non-negativity constraint. - Observation
- A basic feasible solution is an extreme point of
the feasible region. - Thus
- Initialisation involves constructing a basic
feasible solution using the slack varaibles.
12Example
x3,x4,x5 are slack variables
- Initial basic feasible solution x
(0,0,40,30,15), namely - x1 0 x2 0 x3 40 x4 30 x5 15
13Summary of the Initialisation Step
- Select the slack variables as basic
- Comments
- Simple
- Not necessarily good selection the first basic
feasible solution can be (very) far from the
optimal solution.