Perturbation method, lexicographic method

21
OR-1 2012 1 Perturbation method, lexicographic method Idea: Avoid the appearance of degenerate solutions since it is a precondition of cycling ( If the solution is not degenerate, the objective function value increases strictly in the next iteration, hence the same basis does not appear again because the objective function value never decreases during the simplex iterations (same basis same dictionary same objective value)). So add very small positive to the r.h.s of equations so that the solution values are unchanged practically but degeneracy is avoided. But the ’s added to the r.h.s may cancel out each other during elementary row operations, again causing degeneracy. Remedy: Add different values of i ’s to different r.h.s. so that cancellation does not occur. (Perturbation method)

description

Perturbation method, lexicographic method - PowerPoint PPT Presentation

Transcript of Perturbation method, lexicographic method

Page 1: Perturbation method, lexicographic method

OR-1 2012 1

Perturbation method, lexicographic methodIdea: Avoid the appearance of degenerate solutions since it is a precondition

of cycling ( If the solution is not degenerate, the objective function value increases strictly in the next iteration, hence the same basis does not ap-pear again because the objective function value never decreases during the simplex iterations (same basis same dictionary same objective value)). So add very small positive to the r.h.s of equations so that the solution values are unchanged practically but degeneracy is avoided.

But the ’s added to the r.h.s may cancel out each other during elementary row operations, again causing degeneracy.

Remedy: Add different values of i’s to different r.h.s. so that cancellation does not occur. (Perturbation method)

Page 2: Perturbation method, lexicographic method

OR-1 2012 2

Add to the r.h.s., with the following property.(3.4)

Then, it can be shown that the values of the basic variables never become 0 in subsequent simplex iterations, hence no cycling oc-curs. (In practice, precision can cause problems.)(In actual implementation, 1= , 2= 2, 3= 3, … may be used or random numbers in [0, ] for some fixed small are used. )

Page 3: Perturbation method, lexicographic method

OR-1 2012 3

Perturbation Method (tableau form)

371

264321

154321

105.05.15.0095.25.55.0

xxxxxxx

xxxxx

0 249 57 10 4321 xxxxz

321765

371

32763

327642

25225~0~0100~0~

2120~ ~0181180420300

xxxxxxxxxxxxz

(after two iterations, op-timal solution obtained)

(0+21 )

(0+22 )

(1+3 )

Page 4: Perturbation method, lexicographic method

OR-1 2012 4

Note that we can obtain the optimal solution and optimal value correctly after disregarding terms. The coefficients of do not affect the coeffi-cients of other variables.

Perturbation method usually refers to the method which actually adds small to the right hand sides during simplex iterations. For lexicographic method, the idea is the same as the perturbation method. But we do not actually add some positive numbers to the r.h.s., but treat as symbols representing indefinite quantities, which sat-isfy (3.4).

Page 5: Perturbation method, lexicographic method

OR-1 2012 5

Lexicographic ordering of numbers :

Consider r = r0 + r1 1 + …. + rm m, s = s0 + s1 1 + …. + sm m

If r s, there is the smallest subscript k such that rk sk .

We say that r is lexicographically smaller than s if rk < sk .

(Similar terminology is used for vectors too)

Then if , is lexicographically smaller than if and only if is numerically smaller than .

Ex) r = 2 + 211 + 19 2 + 200003

s = 2 + 211 + 202 + 203 + 154 + 145

is lexicographically smaller than .

Page 6: Perturbation method, lexicographic method

OR-1 2012 6

Can cycling be prevented?

Thm 3.2: The simplex method terminates as long as the leaving vari-able is selected by the lexicographic rule in each iteration.Pf) see the proof in the text.For an arbitrary row with r.h.s. value , the proof shows that at least one of is distinct from zero. Hence no degenerate solution appears.

We may consider somewhat different logic to prove the result. The coefficient matrix for variables in the constraints remain non-singular after applying elementary row operations. (Elementary row operation is equivalent to premultiplying the corresponding nonsingu-lar matrix to the coefficient matrix of constraints. Since the matrix for variables is identity matrix initially, it is nonsingular. Hence we also obtain nonsingular coefficient matrix after elementary row operations are performed to the constraint matrix). In other words, no row with all 0 elements appear in the -matrix. Hence the values of basic variables never become 0 in lexicographic sense.

Page 7: Perturbation method, lexicographic method

OR-1 2012 7

We can read the real solution value by ignoring the terms in the cur-rent dictionary (tableau). It is also observed that the lexicographic method can be started and stopped at any time during the simplex iterations. We just add or drop the terms at any time and it does not affect the real solution value and the coefficients of other variables in the tableau.

Page 8: Perturbation method, lexicographic method

Practical Implementation of the Lexicographic Method

In real implementation of the lexicographic method, we do not actually add terms to the r.h.s., but read the coefficients of terms from the coefficients of other variables.

Note that, in the example, the coefficient matrix for the basic variables x5, x6, x7 and the coefficient matrix for 1, 2, 3 are the same identity matrices in the beginning of the lexicographic method.

Since we use the elementary row operations in the simplex pivots, those two coefficient matrices have the same elements in the following iterations. Hence, we can read the coefficients of 1, 2, 3 from the coefficients of x5, x6, x7 . So we do not actually need to add 1, 2, 3 to the tableau.

OR-1 2012 8

Page 9: Perturbation method, lexicographic method

OR-1 2012 9

Hence, in the example, we actually do not need to add . We first per-form ratio test using the entering column and the r.h.s. If ties occur, then perform ratio test (only for tied rows) again using the entering column and the column for , and then the column for , and then for , until tie is broken (lexicographic comparison of numbers).

Page 10: Perturbation method, lexicographic method

OR-1 2012 10

Example of real implementation

371

264321

154321

105.05.15.0095.25.55.0

xxxxxxx

xxxxx

0 249 57 10 4321 xxxxz

321765

371

32763

327642

25225~0~0100~0~

2120~ ~0181180420300

xxxxxxxxxxxxz

(after two iterations)

(0+21 )

(0+22 )

(1+3 )(after two iterations, op-timal solution obtained)

Page 11: Perturbation method, lexicographic method

OR-1 2012 11

Initialization (two-phase method) We need an initial b.f.s to start the simplex method. If we have for some constraint , the value of the slack variable vio-

lates nonnegativitiy constraint.maximize subject to , (1)

Consider easily obtained solution for all in (1) and then subtract some positive number from all left-hand sides so that it becomes fea-sible solution to (1), i.e. for all , .Now, if we can find a feasible solution to (1) with , it is a feasible solu-tion to (1) using original variables.

Page 12: Perturbation method, lexicographic method

OR-1 2012 12

Hence solve the following problem using the easily obtained initial feasible solution and simplex method to find an optimal solution with . Note that x0 is a nonnegative variable.

maximize (min )subject to , (2)

(1) has a feasible solution (2) has an optimal solution with optimal value 0 ()

If we find an optimal solution with , we can obtain a feasible solu-tion to (1) by disregarding .One point to be careful is that we need a basic feasible solution to perform the simplex method subsequently.

Page 13: Perturbation method, lexicographic method

OR-1 2012 13

Example

321 max xxx

0,, 12 5 32

4 22 s.t.

321

321

321

321

xxxxxxxxxxxx

0 ,,,,,, 21

325 224

6543210

03216

03215

03214

xxxxxxxxxxxxxxxxxxxxxx0 xw

0- max x

0,,, 1 2 5 32

4 22 s.t.

3210

0321

0321

0321

xxxxxxxxxxxxxxxx

We cannot perform simplex iteration in this dictionary since the basic solu-tion is not feasible (nonnegativity vio-lated)However a feasible dictionary can be easily obtained by one pivot.

Page 14: Perturbation method, lexicographic method

OR-1 2012 14

Current basic solution is not feasible. Let enter basis and the slack variable with most negative value leaves the basis (It is not a simplex iteration. Just perform the pivot, not considering the ob-jective value. It does not change the solution set.)

53216

5324

53210

3434 2 9

325

xxxxxxxxxxxxxx

5321 325 xxxxw

0614

06512

06513

2 3 6.02.04.06.02.2

8.06.02.02.06.1

xxxxxxxxxxxxxx

0 0 xw

0 ,,,,,, 21

325 224

6543210

03216

03215

03214

xxxxxxxxxxxxxxxxxxxxxx0 xw

Perform simplex method. Af-ter two iterations, we get the optimal dictionary

Page 15: Perturbation method, lexicographic method

OR-1 2012 15

We obtained optimal solution with value 0. Hence the current op-timal solution gives a b.f.s. to the original problem. Drop (no more needed) and replace the objective function with the original one. z-row is used to read the objective value of a given solution, hence it can be added or dropped without affecting the feasible so-lution set to the LP. Note that the current b.f.s. is a b.f.s. to the original problem (We don’t have as a basic variable).

0614

06512

06513

2 3 6.02.04.06.02.2

8.06.02.02.06.1

xxxxxxxxxxxxxx

0 0 xw

614

6512

6513

3 2.04.06.02.2

6.02.02.06.1

xxxxxxxxxxx

321 0 xxxz

Page 16: Perturbation method, lexicographic method

OR-1 2012 16

Express it in dictionary form (only nonbasic variables appear in the r.h.s.) by substituting the basic variables in the objective function.

Now, restart the simplex method with the current dictionary

651

6516511

321

4.02.02.06.0 )6.02.02.06.1()2.04.06.02.2(

xxxxxxxxxxz

xxxz

614

6512

6513

3 2.04.06.0 2.2

6.02.02.0 6.1

xxxxxxxxxxx

651 4.02.02.06.0 xxxz

Page 17: Perturbation method, lexicographic method

You need to understand that (i) can be added or dropped from the dictionary, but the set of feasible solutions to LP (disregarding variable ) doesn’t change since the coefficients of in the dictionary don’t affect the coefficients of other variables as long as we perform elementary row operations (simplex pivots). The additional variable is used temporarily for the purpose of identifying a ba-sic feasible solution to the original problem. Once the value of becomes 0 (as a nonbasic variable), can be eliminated without affecting the values of the cur-rent solution.Also (ii) the objective row can be exchanged by another objective row at any time, but the set of feasible solutions to LP doesn’t change because the set of feasible solutions to LP has not been affected by the objective row during the simplex pivots.

See the next slides for the two phase method, which are expressed with tableau format.

OR-1 2012 17

Page 18: Perturbation method, lexicographic method

-w -x0 = 0

2x1 - x2 + 2x3 - x0 + x4 = 4

2x1 - 3x2 + x3 - x0 + x5 = -5

-x1 + x2 - 2x3 - x0 + x6 = -1

OR-1 2012 18

0 , 21

325 224

6543210

03216

03215

03214

xx,x,x,x,x,xxxxxxxxxxxxxxxx0 xw

-w -2x1 + 3x2 - x3 - x5 = -5

2x2 + x3 + x4 - x5 = 9

-2x1 + 3x2 - x3 + x0 - x5 = 5

-3x1 + 4x2 - 3x3 - x5 + x6 = 4

53216

5324

53210

3434 2 9

325

xxxxxxxxxxxxxx

5321 325 xxxxw

-w - x0 = 0

0.2x1 + x3 +0.8x0 - 0.2x5 - 0.6x6 = 1.6

-0.6x1 + x2 +0.6x0 - 0.4x5 - 0.2x6 = 2.2

x1 -2x0 + x4 + x6 = 3

0614

06512

06513

2 3 6020406022

8060202061

xxxxx.x.x.x..xx.x.x.x..x

0 0 xw

tableau form

elmentary row operations

Page 19: Perturbation method, lexicographic method

OR-1 2012 19

-w - x0 = 0

0.2x1 + x3 +0.8x0 - 0.2x5 - 0.6x6 = 1.6

-0.6x1 + x2 +0.6x0 - 0.4x5 - 0.2x6 = 2.2

x1 -2x0 + x4 + x6 = 3

-z + x1 - x2 + x3 = 0

0.2x1 + x3 - 0.2x5 - 0.6x6 = 1.6

-0.6x1 + x2 - 0.4x5 - 0.2x6 = 2.2

x1 + x4 + x6 = 3

-z + 0.2x1 - 0.2x5 + 0.4x6 =

0.6 0.2x1 + x3 - 0.2x5 - 0.6x6 =

1.6 -0.6x1 + x2 - 0.4x5 - 0.2x6 =

2.2 x1 + x4 + x6 =

3

• Note that the coefficients of x0 do not affect the coefficients of other vari-ables in the simplex pivots.

• Suppose we perform the same pivots, disregarding variable x0. Then we ob-tain the same final tableau without x0.

• The 3 constraints in the initial tableau without variable x0 defines feasible solution set of the augmented LP (with nonnegativity of variables)

• Therefore, the final tableau (without x0) describes the same feasible solu-tion set of the LP, i.e. feasible solu-tions to the equations have not changed.

• Now, we can replace the objective function with the original one, and express it in the formal tableau form.

Page 20: Perturbation method, lexicographic method

OR-1 2012 20

Algorithm strategy in phase one: choose as leaving variable in case of ties in the minimum ratio test.

2 possible cases in phase one optimal solution1. nonzero ( ), basic original problem is infeasible

2. nonbasic drop , express original objective function in terms of nonbasic variables, continue the simplex method.(Note that basic can’t happen by our strategy)

Similar idea can be used when the original LP is given in equality form and we do not have an initial basic feasible solution at hand. (Without replacing an equality with two inequalities, simplex method can be used directly to solve the equality form. More in Chapter 8.)

Page 21: Perturbation method, lexicographic method

OR-1 2012 21

(Fundamental theorem of LP)

Every LP in standard form has the following properties.1. If no optimal solution either unbounded or infeasible.2. If feasible solution a basic feasible solution.3. If optimal solution a basic optimal solution.