Linear Programming: © Bruce F. Wollenberg, University of Minnesota 1
Linear Programming: © Bruce F. Wollenberg, University of Minnesota 1
Linear Programming: © Bruce F. Wollenberg, University of Minnesota 1
Linear Programming
© Bruce F. Wollenberg, University of Minnesota 1
LP Problem
Maximize Production of 2 Plants
6 (2,6)
3x1 + 2x2 ≤ 18
5 (0,6)
x1 ≥ 0 4
3 FEASIBLE (4,3)
REGION
2
x1 ≤ 4
1
(0,0) (4,0)
X1
1 2 3 4 5 6
x2 ≥ 0
−1
x1 1 0 1 4 2
x4 = 0
Set 1: x2 =0 1 0 6 = 6 ⇒ z =−36 (∗)
x5 = 0
x3 3 2 0 18 2
−1
x1 1 0 0 4 4
x3 = 0
Set 2: x2 =0 1 1 6 = 3 ⇒ z =−27
x5 = 0
x4 3 2 0 18 3
−1
x1 1 1 0 4 6
x2 = 0
Set 4: x3 =0 0 1 6 = −2 ⇒ OUT fails condition that all x are ≥ 0
x5 = 0
x4 3 0 0 18 6
−1
x1 1 1 0 4 ∞
x2 = 0
Set 5: x3 = 0 0 0 6 = ∞ ⇒ OUT A matrix singular
x4 = 0
x5 3 0 1 18 ∞
−1
x1 1 0 0 4 4
x2 = 0
Set 6: x4 =0 1 0 6 = 6 ⇒ z =−12
x3 = 0
x5 3 0 1 18 6
−1
x2 0 1 0 4 6
x1 = 0
Set 8: x3 =1 0 0 6 = 4 ⇒ z =−30
x4 = 0
x5 2 0 1 18 6
−1
x2 0 0 0 4 ∞
x1 = 0
Set 9: x4 = 1 1 0 6 = ∞ ⇒ OUT A matrix singular
x3 = 0
x5 2 0 1 18 ∞
−1
x3 1 0 0 4 4
x1 = 0
Set 10: x4 = 0 1 0 6 = 6⇒=
z 0 x2 = 0
x5 0 0 1 18 18
Minimize z = cT x
Subject to A x = b
x ≥ 0
We partition the A matrix and the x and c vectors into basic and non-basic parts:
=
Minimize z cBT xB + cTN xN
Subject to B xB + N xN = b
xB ≥ 0
xN ≥ 0
xB B −1b − B −1 NxN
=
cBT B −1b − cBT B −1 NxN + cTN xN
z=
b ≡ B −1b
λ T ≡ cBT B −1
Y ≡ B −1 N
We will now define d T ≡ λ T N − cTN as the reduced cost vector, and this allows us to write the new
standard form as:
Minimize z = cTB b - d T xN
Subject to x B = b - Y xN
xB ≥ 0
xN ≥ 0
• If some Y 's are positive, the corresponding basic variables xBi ’s decrease if the non-
ij
basic variable xNj increases
• The non-basic variable xNj can be increased until the first basic variable becomes zero,
2. find out if the current solution is the minimizer: if all d < 0 stop, the current solution is the
j
minimizer; otherwise go on
3. find out which non-basic variable enters the basis, xNj (most positive d j )
Minimum bi
4. find out which basic variable x leaves the basis, :Yij >0
Bi 1 ≤ i ≤ m Yij
3.07. go to 2