260 likes | 703 Views
The Simplex Method. Updated 15 February 2009. Main Steps of the Simplex Method. Put the problem in Row-Zero Form . Construct the Simplex tableau . Obtain an initial basic feasible solution (BFS). If the current BFS is optimal then go to step 9.
E N D
The Simplex Method Updated 15 February 2009
Main Steps of the Simplex Method • Put the problem in Row-Zero Form. • Construct the Simplex tableau. • Obtain an initial basic feasible solution (BFS). • If the current BFS is optimal then go to step 9. • Choose a non-basic variable to enter the basis. • Use the ratio test to determine which basic variable must leave the basis. • Perform the pivot operation on the appropriate element of the tableau. • Go to Step 4. • Stop.
LP in Row-0 Form Maximize z s.t. z - 4.5 x1 - 4 x2 = 0 30 x1 + 12 x2 + x3 = 6000 10 x1 + 8 x2 + x4 = 2600 4 x1 + 8 x2 + x5 = 2000 x1, x2, x3, x4, x5 0 Original LP Maximize 4.5 x1 + 4 x2 s.t. 30 x1 + 12 x2 6000 10 x1 + 8 x2 2600 4 x1 + 8 x2 2000 x1, x2 0 Step 1
Steps 2 and 3 Initial BFS: BV = {z, x3, x4, x5}, NBV = {x1, x2} z = 0, x3 = 6,000, x4 = 2,600, x5 = 2,000 x1 = x2 = 0
Steps 4 and 5 x1 and x2 are eligible to enter the basis. Select x1 to become a basic variable
Step 6 • How much can we increase x1? • Constraint in Row 1: 30 x1 + 12 x2 + x3 = 6000 implies x3= 6000 - 30 x1 - 12 x2. • x2 = 0 (it will stay non-basic) • x30 forces x1 200.
Step 6 • How much can we increase x1? • Constraint in Row 2: 10 x1 + 8 x2 + x4 = 2600 implies x4 = 2600 - 10 x1 - 8 x2 • x2 = 0 (it will stay non-basic) • x40 forces x1 260.
Step 6 • How much can we increase x1? • Constraint in Row 3: 4 x1 + 8 x2 + x5= 2000 implies x5 = 2000 - 4 x1 - 8 x2 • x2 = 0 (it will stay non-basic) • x50 forces x1 500.
Step 6 • From constraint 1, we see that we can increase x1 up to 200, if simultaneously reduce x3to zero. • From constraint 2, we see that we can increase x1 up to 260, if we simultaneously reduce x4 to zero. • From constraint 3, we see that we can increase x1 up to 500, if we simultaneously reduce x5 to zero. • Since x3 is the limiting variable, we make it non-basic as x1 becomes basic.
Step 6: Ratio Test for x1 Row 1: 30 x1 + 12 x2 + x3 = 6000 => 30 x1 + x3 = 6000 => x1 6000/30 = 200. Row 2: 10 x1 + 8 x2 + x4 = 2600 => 10 x1 + x4 = 2600 => x1 2600/10 = 260. Row 3: 4 x1 + 8 x2 + x5 = 2000 => 4 x1 + x5 = 2000 => x1 2000/4 = 500.
Step 6: Ratio Test for x1 The minimum ratio occurs in Row 1. Thus, x3 leaves the basis when x1 enters.
Step 7: Pivot x1 in and x3 out Pivot on the x1 column of Row 1 to make x1 basic and x3 non-basic. First ERO: divide Row 1 by 30
Step 7: Pivot x1 in and x3 out First ERO: divide Row 1 by 30 Second ERO: Add –10 times Row 1 to Row 2
Step 7: Pivot x1 in and x3 out Second ERO: Add –10 times Row 1 to Row 2 Third ERO: Add –4 times Row 1 to Row 3
Step 7: Pivot x1 in and x3 out Third ERO: Add –4 times Row 1 to Row 3 Fourth ERO: Add 4.5 times Row 1 to Row 0
Step 7: Pivot x1 in and x3 out Fourth ERO: Add 4.5 times Row 1 to Row 0
Steps 4 and 5 BV = {z, x1, x4, x5}, NBV = {x2, x3} z = 900, x1 = 200, x4 = 600, x5 = 1200 Increasing x2 may lead to an increase in z.
Step 6: Ratio Test for x2 The minimum ratio occurs in Row 2. Thus, x4 leaves the basis when x2 enters.
Step 7: Pivot x2 in and x4 Out BV = {z, x1, x2, x5}, NBV = {x3, x4} z = 1230, x1 = 140, x2 = 150, x5 = 240
Steps 4 and 5 x3 is eligible to enter the basis
Step 6: Ratio Test for x3 If x3 enters the basis, then x2 will increase as well.
Step 6: Ratio Test for x3 If x3 enters the basis, then x5 will leave the basis.
Steps 4 and 8 BV = {z, x1, x2, x3}, NBV = {x4, x5} z = 1250, x1 = 100, x2 = 200, x3 = 600 This an optimal BFS.