Simplex Method for Linear Programming: Solving an Example using the Simplex Algorithm, Study notes of Production and Operations Management

An explanation of the simplex method for linear programming, focusing on an example of maximizing a linear objective function subject to linear constraints. The concept of a dictionary, feasible solutions, and the simplex method's iterations. It also discusses unboundedness, initialization, and infeasibility.

Typology: Study notes

Pre 2010

Uploaded on 03/28/2010

koofers-user-8sz
koofers-user-8sz 🇺🇸

10 documents

1 / 11

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
OPIM 913
Optimization
Lecture 2
1
pf3
pf4
pf5
pf8
pf9
pfa

Partial preview of the text

Download Simplex Method for Linear Programming: Solving an Example using the Simplex Algorithm and more Study notes Production and Operations Management in PDF only on Docsity!

OPIM 913

Optimization

Lecture 2

1

Simplex Method for Linear Programming

An Example.

maximize − x 1 +^3 x 2 −^3 x 3 subject to 3 x 1 − x 2 − 2 x 3 ≤ 7 − 2 x 1 − 4 x 2 + 4 x 3 ≤ 3 x 1 − 2 x 3 ≤ 4 − 2 x 1 + 2 x 2 + x 3 ≤ 8 3 x 1 ≤ 5 x 1 , x 2 , x 3 ≥ 0.

Rewrite with slack variables:

maximize ζ = − x 1 + 3 x 2 − 3 x 3 subject to w 1 = 7 − 3 x 1 + x 2 + 2 x 3 w 2 = 3 + 2 x 1 + 4 x 2 − 4 x 3 w 3 = 4 − x 1 + 2 x 3 w 4 = 8 + 2 x 1 − 2 x 2 − x 3 w 5 = 5 − 3 x 1 x 1 , x 2 , x 3 , w 1 , w 2 , w 3 ≥ 0.

Notes:

  • This layout is called a dictionary.
  • Setting x 1 , x 2 , and x 3 to 0, we can read off the values for the other variables: w 1 = 7, w 2 = 3, etc. This specific solution is called a dictionary solution.
  • All the variables in the current dictionary solution are nonnegative. Such a solution is called feasible.
  • The initial dictionary solution need not be feasible—we were just lucky above.
  • Dependent variables, on the left, are called basic variables.
  • Independent variables, on the right, are called nonbasic variables.

Simplex Method—Second Pivot

Recall the dictionary after the first pivot:

Now, let x 1 increase. Of the basic variables, w 5 hits zero first. So, x 1 enters and w 5 leaves the basis.

New dictionary is:

It’s optimal (no pink)!

Agenda

  • Discuss unboundedness; (today)
  • Discuss initialization/infeasibility; i.e., what if initial dictionary is not fea- sible. (today)
  • Discuss degeneracy. (next lecture)

Initialization

Consider the following problem:

maximize − 3 x 1 +^4 x 2 subject to − 4 x 1 − 2 x 2 ≤ − 8 − 2 x 1 ≤ − 2 3 x 1 + 2 x 2 ≤ 10 − x 1 + 3 x 2 ≤ 1 − 3 x 2 ≤ − 2 x 1 , x 2 ≥ 0.

Phase-I Problem

Modify problem by (a) subtracting a new variable, x 0 , from each constraint and (b) replacing objective function with − x 0 :

maximize − x 0 subject to − x 0 − 4 x 1 − 2 x 2 ≤ − 8 − x 0 − 2 x 1 ≤ − 2 − x 0 + 3 x 1 + 2 x 2 ≤ 10 − x 0 − x 1 + 3 x 2 ≤ 1 − x 0 − 3 x 2 ≤ − 2 x 0 , x 1 , x 2 ≥ 0.

Clearly feasible: pick x 0 large, x 1 = 0 and x 2 = 0.

If optimal solution has obj= 0, then original problem is feasible and final phase-I basis can be used as initial phase-II basis (ignoring x 0 there- after).

If optimal solution has obj< 0, then original problem is infeasible.

Initialization—First Pivot

Applet depiction shows both the Phase-I and the Phase-II objectives:

Dictionary is infeasible even for Phase-I. One pivot needed to get feasible. Entering variable is x 0. Leaving variable is one whose current value is most negative, i.e. w 1.

After first pivot:

Feasible!

Initialization—Third Pivot

Going into third pivot:

x 2 must enter. x 0 must leave.

After third pivot:

Optimal for Phase-I (no yellow highlights). obj= 0, therefore original problem is feasible.

Phase-II

Recall last dictionary:

For Phase-II: (a) Ignore column with x 0 in Phase-II. (b) Ignore Phase-I objective row.

w 5 must enter. w 4 must leave.

After pivot:

Optimal!