Download - Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Transcript
Page 1: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Math 407A: Linear Optimization

Lecture 12

Math Dept, University of Washington

February 3

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 2: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule for Pivoting

Initialization

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 3: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Basis-Dictionary Correspondence

Fact:The simplex algorithm fails to terminate if and only if it cycles.The simplex algorithms can only cycle between degeneratedictionaries (or tableaus) with each dictionary (or tableau) in thecycle being associated with the same basic feasible solution andobjective value.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 4: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Degeneracy and Cycling

We have established that the simplex algorithm can only fail toterminate if it cycles, and that it can only cycle in the presence ofdegeneracy. In order to assure that the simplex algorithmsuccessfully terminates we need to develop a pivoting rule thatavoids cycling.

There are many anti-cycling pivoting rules. We present thesmallest subscript rule, also known as Bland’s Rule.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 5: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Degeneracy and Cycling

We have established that the simplex algorithm can only fail toterminate if it cycles, and that it can only cycle in the presence ofdegeneracy. In order to assure that the simplex algorithmsuccessfully terminates we need to develop a pivoting rule thatavoids cycling.There are many anti-cycling pivoting rules. We present thesmallest subscript rule, also known as Bland’s Rule.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 6: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule

xi = bi −∑

j∈N aijxj i ∈ B

z = z +∑

j∈N cjxj .(DB)

Choice of entering variable: xj0 for j0 ∈ N is the enteringvariable if cj0 > 0 and j0 ≤ j whenever cj > 0.

Choice of leaving variable: xi0 for i0 ∈ B is the leavingvariable if

bi0

ai0j0

= min

{bi

aij0

: i ∈ B, aij0 > 0

}and

i0 ≤ i wheneverbi0

ai0j0

=bi

aij0

i ∈ B.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 7: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule

xi = bi −∑

j∈N aijxj i ∈ B

z = z +∑

j∈N cjxj .(DB)

Choice of entering variable: xj0 for j0 ∈ N is the enteringvariable if cj0 > 0 and j0 ≤ j whenever cj > 0.

Choice of leaving variable: xi0 for i0 ∈ B is the leavingvariable if

bi0

ai0j0

= min

{bi

aij0

: i ∈ B, aij0 > 0

}and

i0 ≤ i wheneverbi0

ai0j0

=bi

aij0

i ∈ B.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 8: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule

xi = bi −∑

j∈N aijxj i ∈ B

z = z +∑

j∈N cjxj .(DB)

Choice of entering variable: xj0 for j0 ∈ N is the enteringvariable if cj0 > 0 and j0 ≤ j whenever cj > 0.

Choice of leaving variable: xi0 for i0 ∈ B is the leavingvariable if

bi0

ai0j0

= min

{bi

aij0

: i ∈ B, aij0 > 0

}and

i0 ≤ i wheneverbi0

ai0j0

=bi

aij0

i ∈ B.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 9: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule

Theorem: [R.G. Bland (1977)]The simplex algorithm terminates as long as the choice of variableto enter or leave the basis is made according to the smallestsubscript rule.

In what follows we abbreviate the Bland’s rule to SSR (smallestsubscript rule).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 10: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Bland’s Rule

Theorem: [R.G. Bland (1977)]The simplex algorithm terminates as long as the choice of variableto enter or leave the basis is made according to the smallestsubscript rule.

In what follows we abbreviate the Bland’s rule to SSR (smallestsubscript rule).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 11: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 12: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 13: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 14: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 15: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 16: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 17: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofProve Bland’s rule prevents cycling.

Assume to the contrary that a cycle exists:

D0,D1, . . . ,DN = D0 .

Each dictionary in the cycle D0, . . . ,DN identify the same BFS.

If a variable leaves the basis in one of the dictionaries D0, . . . ,DN ,then it must return to the basis in another of these dictionaries.

We call the variables that leave the basis in any of the dictionariesD0, . . . ,DN fickle since they move in and out of the basis.

Denote the set of fickle variables by F .

All fickle variables must take the value zero in the BFS associatedwith this cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 18: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Let ` be the largest subscript in F , and let

D xi = bi −∑j /∈B

aijxj , i ∈ B

z = v +∑j /∈B

cjxj

be a dictionary in the cycle where x` is leaving the basis and let xe

denote the entering variable.

Since xe is also fickle, e < ` (` is largest in F).

Let D∗ be a dictionary in the cycle with x` entering the basis.Since each dictionary in the cycle identifies the same BFS, theobjective value v stays constant throughout the cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 19: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Let ` be the largest subscript in F , and let

D xi = bi −∑j /∈B

aijxj , i ∈ B

z = v +∑j /∈B

cjxj

be a dictionary in the cycle where x` is leaving the basis and let xe

denote the entering variable.

Since xe is also fickle, e < ` (` is largest in F).

Let D∗ be a dictionary in the cycle with x` entering the basis.Since each dictionary in the cycle identifies the same BFS, theobjective value v stays constant throughout the cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 20: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Let ` be the largest subscript in F , and let

D xi = bi −∑j /∈B

aijxj , i ∈ B

z = v +∑j /∈B

cjxj

be a dictionary in the cycle where x` is leaving the basis and let xe

denote the entering variable.

Since xe is also fickle, e < ` (` is largest in F).

Let D∗ be a dictionary in the cycle with x` entering the basis.

Since each dictionary in the cycle identifies the same BFS, theobjective value v stays constant throughout the cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 21: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Let ` be the largest subscript in F , and let

D xi = bi −∑j /∈B

aijxj , i ∈ B

z = v +∑j /∈B

cjxj

be a dictionary in the cycle where x` is leaving the basis and let xe

denote the entering variable.

Since xe is also fickle, e < ` (` is largest in F).

Let D∗ be a dictionary in the cycle with x` entering the basis.Since each dictionary in the cycle identifies the same BFS, theobjective value v stays constant throughout the cycle.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 22: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofSince each dictionary in the cycle identifies the same BFS, the objectivevalue v stays constant throughout the cycle.

Write the objective row of D∗ (x` entering) as

z = v +m+n∑j=1

c∗j xj ,

where c∗j = 0 if xj is basic in D∗.

Note c∗` > 0, and c∗j ≤ 0 ∀ j 6= ` (why).Since the solution sets to D and D∗ coincide, the solution to D obtainedby setting xe = t, xj = 0 (j /∈ B, j 6= e) giving

xi = bi − aiet (i ∈ B) and z = v + cet

must satisfy D∗.

Hence v + cet = v + c∗e t +∑

i∈B c∗i (bi − aiet) for all t.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 23: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofSince each dictionary in the cycle identifies the same BFS, the objectivevalue v stays constant throughout the cycle.

Write the objective row of D∗ (x` entering) as

z = v +m+n∑j=1

c∗j xj ,

where c∗j = 0 if xj is basic in D∗.

Note c∗` > 0, and c∗j ≤ 0 ∀ j 6= ` (why).Since the solution sets to D and D∗ coincide, the solution to D obtainedby setting xe = t, xj = 0 (j /∈ B, j 6= e) giving

xi = bi − aiet (i ∈ B) and z = v + cet

must satisfy D∗.

Hence v + cet = v + c∗e t +∑

i∈B c∗i (bi − aiet) for all t.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 24: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofSince each dictionary in the cycle identifies the same BFS, the objectivevalue v stays constant throughout the cycle.

Write the objective row of D∗ (x` entering) as

z = v +m+n∑j=1

c∗j xj ,

where c∗j = 0 if xj is basic in D∗.

Note c∗` > 0, and c∗j ≤ 0 ∀ j 6= ` (why).

Since the solution sets to D and D∗ coincide, the solution to D obtainedby setting xe = t, xj = 0 (j /∈ B, j 6= e) giving

xi = bi − aiet (i ∈ B) and z = v + cet

must satisfy D∗.

Hence v + cet = v + c∗e t +∑

i∈B c∗i (bi − aiet) for all t.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 25: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofSince each dictionary in the cycle identifies the same BFS, the objectivevalue v stays constant throughout the cycle.

Write the objective row of D∗ (x` entering) as

z = v +m+n∑j=1

c∗j xj ,

where c∗j = 0 if xj is basic in D∗.

Note c∗` > 0, and c∗j ≤ 0 ∀ j 6= ` (why).Since the solution sets to D and D∗ coincide, the solution to D obtainedby setting xe = t, xj = 0 (j /∈ B, j 6= e) giving

xi = bi − aiet (i ∈ B) and z = v + cet

must satisfy D∗.

Hence v + cet = v + c∗e t +∑

i∈B c∗i (bi − aiet) for all t.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 26: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

ProofSince each dictionary in the cycle identifies the same BFS, the objectivevalue v stays constant throughout the cycle.

Write the objective row of D∗ (x` entering) as

z = v +m+n∑j=1

c∗j xj ,

where c∗j = 0 if xj is basic in D∗.

Note c∗` > 0, and c∗j ≤ 0 ∀ j 6= ` (why).Since the solution sets to D and D∗ coincide, the solution to D obtainedby setting xe = t, xj = 0 (j /∈ B, j 6= e) giving

xi = bi − aiet (i ∈ B) and z = v + cet

must satisfy D∗.

Hence v + cet = v + c∗e t +∑

i∈B c∗i (bi − aiet) for all t.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 27: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

v + cet = v + c∗e t +∑i∈B

c∗i (bi − aiet) for all t.

Grouping terms gives(ce − c∗e +

∑i∈B

c∗i aie

)t =

∑i∈B

c∗i bi for all t.

Since the right hand side is constant, it must be zero as is thecoefficient on the left:

ce − c∗e = −∑i∈B

c∗i aie .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 28: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

v + cet = v + c∗e t +∑i∈B

c∗i (bi − aiet) for all t.

Grouping terms gives(ce − c∗e +

∑i∈B

c∗i aie

)t =

∑i∈B

c∗i bi for all t.

Since the right hand side is constant, it must be zero as is thecoefficient on the left:

ce − c∗e = −∑i∈B

c∗i aie .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 29: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

v + cet = v + c∗e t +∑i∈B

c∗i (bi − aiet) for all t.

Grouping terms gives(ce − c∗e +

∑i∈B

c∗i aie

)t =

∑i∈B

c∗i bi for all t.

Since the right hand side is constant, it must be zero as is thecoefficient on the left:

ce − c∗e = −∑i∈B

c∗i aie .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 30: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

ce − c∗e = −∑i∈B

c∗i aie

xe enters in D ⇒ ce > 0

x` enters in D∗ and e < ` ⇒ c∗e ≤ 0 by the SSR

Therefore, ce − c∗e > 0.

Consequently,∑

i∈B c∗i aie < 0, so for some s ∈ B,

c∗s ase < 0 .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 31: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

ce − c∗e = −∑i∈B

c∗i aie

xe enters in D ⇒ ce > 0

x` enters in D∗ and e < ` ⇒ c∗e ≤ 0 by the SSR

Therefore, ce − c∗e > 0.

Consequently,∑

i∈B c∗i aie < 0, so for some s ∈ B,

c∗s ase < 0 .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 32: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

ce − c∗e = −∑i∈B

c∗i aie

xe enters in D ⇒ ce > 0

x` enters in D∗ and e < ` ⇒ c∗e ≤ 0 by the SSR

Therefore, ce − c∗e > 0.

Consequently,∑

i∈B c∗i aie < 0, so for some s ∈ B,

c∗s ase < 0 .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 33: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

ce − c∗e = −∑i∈B

c∗i aie

xe enters in D ⇒ ce > 0

x` enters in D∗ and e < ` ⇒ c∗e ≤ 0 by the SSR

Therefore, ce − c∗e > 0.

Consequently,∑

i∈B c∗i aie < 0, so for some s ∈ B,

c∗s ase < 0 .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 34: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

ce − c∗e = −∑i∈B

c∗i aie

xe enters in D ⇒ ce > 0

x` enters in D∗ and e < ` ⇒ c∗e ≤ 0 by the SSR

Therefore, ce − c∗e > 0.

Consequently,∑

i∈B c∗i aie < 0, so for some s ∈ B,

c∗s ase < 0 .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 35: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

for some s ∈ B, c∗s ase < 0.

Since s ∈ B, xs is basic in D, and since c∗s 6= 0, xs is nonbasic inD∗, so xs ∈ F which implies that s ≤ ` (since ` is largest).

We claim that s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 36: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

for some s ∈ B, c∗s ase < 0.

Since s ∈ B, xs is basic in D, and since c∗s 6= 0, xs is nonbasic inD∗, so xs ∈ F which implies that s ≤ ` (since ` is largest).

We claim that s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 37: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

for some s ∈ B, c∗s ase < 0.

Since s ∈ B, xs is basic in D, and since c∗s 6= 0, xs is nonbasic inD∗, so xs ∈ F which implies that s ≤ ` (since ` is largest).

We claim that s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 38: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

s ∈ B c∗s ase < 0 xs not basic in D∗

Show s < `.

x` leaves in D with xe entering, so a`e > 0.

x` enters in D∗, so c∗` > 0.

Consequently, c∗` a`e > 0, so s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 39: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

s ∈ B c∗s ase < 0 xs not basic in D∗

Show s < `.

x` leaves in D with xe entering, so a`e > 0.

x` enters in D∗, so c∗` > 0.

Consequently, c∗` a`e > 0, so s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 40: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

s ∈ B c∗s ase < 0 xs not basic in D∗

Show s < `.

x` leaves in D with xe entering, so a`e > 0.

x` enters in D∗, so c∗` > 0.

Consequently, c∗` a`e > 0, so s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 41: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

s ∈ B c∗s ase < 0 xs not basic in D∗

Show s < `.

x` leaves in D with xe entering, so a`e > 0.

x` enters in D∗, so c∗` > 0.

Consequently, c∗` a`e > 0, so s < `.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 42: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 43: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 44: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 45: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 46: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 47: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Proof

Since s < `, xs cannot be a candidate to enter the basis in D∗ bySSR, that is, c∗s < 0.

But then ase > 0, since c∗s ase < 0.

xs ∈ F and s ∈ B, so the value of xs in the BFS is zero, (bs = 0).

Since bs = 0 and ase > 0, xs is a candidate for leaving in D.

But x` leaves in D with s < `.

This contradicts the SSR, so no cycle can exist.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 48: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 49: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 50: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 51: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 52: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 53: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

Initialization

We have shown that if we are given a feasible dictionary (tableau)for an LP, then the simplex algorithm will terminate finitely if it isemployed with a anti-cycling rule.

The anti-cycling rule need only be applied on degenerate pivots,since cycling can only occur in the presence of degeneracy.

The simplex algorithm will terminate in one of two ways:

I The LP is determined to be unbounded.

I An optimal BFS is found.

We now address the question of how to determine an initialfeasible dictionary (tableau).

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 54: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b, 0 ≤ x .

Consider an auxiliary LP of the form

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

where 1 ∈ Rm is the vector of all ones.The ith row of the system of inequalities Ax − x01 ≤ b is

ai1x1 + ai2x2 + . . . + ainxn ≤ bi + x0 .

In block matrix form we write[1 A

]( x0

x

)≤ b .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 55: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b, 0 ≤ x .

Consider an auxiliary LP of the form

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

where 1 ∈ Rm is the vector of all ones.

The ith row of the system of inequalities Ax − x01 ≤ b is

ai1x1 + ai2x2 + . . . + ainxn ≤ bi + x0 .

In block matrix form we write[1 A

]( x0

x

)≤ b .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 56: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b, 0 ≤ x .

Consider an auxiliary LP of the form

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

where 1 ∈ Rm is the vector of all ones.The ith row of the system of inequalities Ax − x01 ≤ b is

ai1x1 + ai2x2 + . . . + ainxn ≤ bi + x0 .

In block matrix form we write[1 A

]( x0

x

)≤ b .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 57: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b, 0 ≤ x .

Consider an auxiliary LP of the form

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

where 1 ∈ Rm is the vector of all ones.The ith row of the system of inequalities Ax − x01 ≤ b is

ai1x1 + ai2x2 + . . . + ainxn ≤ bi + x0 .

In block matrix form we write[1 A

]( x0

x

)≤ b .

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 58: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

If the optimal value in the auxiliary problem is zero, then at theoptimal solution (x0, x) we have x0 = 0.

Plugging into Ax − x01 ≤ b, we get Ax ≤ b, i.e. x is feasible for P.

On the other hand, if x is feasible for P, then (x0, x) with x0 = 0 isfeasible for Q, so (x0, x) is optimal for Q.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 59: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

If the optimal value in the auxiliary problem is zero, then at theoptimal solution (x0, x) we have x0 = 0.

Plugging into Ax − x01 ≤ b, we get Ax ≤ b, i.e. x is feasible for P.

On the other hand, if x is feasible for P, then (x0, x) with x0 = 0 isfeasible for Q, so (x0, x) is optimal for Q.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 60: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

If the optimal value in the auxiliary problem is zero, then at theoptimal solution (x0, x) we have x0 = 0.

Plugging into Ax − x01 ≤ b, we get Ax ≤ b, i.e. x is feasible for P.

On the other hand, if x is feasible for P, then (x0, x) with x0 = 0 isfeasible for Q, so (x0, x) is optimal for Q.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 61: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

Q minimize x0

subject to Ax − x01 ≤ b, 0 ≤ x0, x .

If the optimal value in the auxiliary problem is zero, then at theoptimal solution (x0, x) we have x0 = 0.

Plugging into Ax − x01 ≤ b, we get Ax ≤ b, i.e. x is feasible for P.

On the other hand, if x is feasible for P, then (x0, x) with x0 = 0 isfeasible for Q, so (x0, x) is optimal for Q.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 62: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b,

0 ≤ x

Q minimize x0

subject to Ax − x01 ≤ b,0 ≤ x0, x

I P is feasible ⇔ the optimal value in Q is zero.

I P is infeasible ⇔ the optimal value in Q is positive.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 63: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b,

0 ≤ x

Q minimize x0

subject to Ax − x01 ≤ b,0 ≤ x0, x

I P is feasible ⇔ the optimal value in Q is zero.

I P is infeasible ⇔ the optimal value in Q is positive.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington

Page 64: Math 407A: Linear Optimizationburke/crs/407/... · Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington. Outline Bland’s Rule for Pivoting Initialization

Outline Bland’s Rule for Pivoting Initialization

The Auxiliary Problem

P maximize cT xsubject tp Ax ≤ b,

0 ≤ x

Q minimize x0

subject to Ax − x01 ≤ b,0 ≤ x0, x

I P is feasible ⇔ the optimal value in Q is zero.

I P is infeasible ⇔ the optimal value in Q is positive.

Lecture 12: Math 407A: Linear Optimization Math Dept, University of Washington


Top Related