Linear Programming Learning Notes (3) Degeneracy

Linear Programming Learning Notes (3) Degeneracy

All the resources come from Linear Programming: Foundations and Extensions by Professor Robert J. Vanderbei.
Explore the link below for further information:
LP Book Resources

Part 1

Basic Theory: The Simplex Method and Duality

Chapter 3 Degeneracy

Definition

We say a dictionary is degenerate if bi vanishes for some iB .
Problem arise when a degenerate dictionary produces degenerate pivots. A pivot is a degenerate pivot if one of the ratios in the calculation of the leaving variable is + .

Example

ζ=30.5x1+2x21.5w1
x3=10.5x10.5w1
w2=x1x2+w1          

As b2 is missing, this is a degenerate dictionary. Picking x2 as the entering variable, x2 cannot increase and ζ remains unchanged. This is a degenerate pivot. The values of the variables haven’t changed throug this pivot, they remains:
(x1,x2,x3,w1,w2)=(0,0,1,0,0)

It is usual typical that it can “break away” from the degeneracy. The real danger is that the simplex method will make a sequence of degenerate pivots and eventually return to a dictionary that has appeared before, which is called cycling .
It has been shown that if a problem has an optimal solution but cycles off-optimum, then the problem must involve dictionaries with at leat four(un-slack) variables and two constraints. If the simplex method cycles, then all the pivots within the cycle must be degenerate.
Also, there is a Theorem3.1 stating that:
If the simplex method fails to terminate, then it must cycle.

The problem of cycling is not as that common. Also, computer implementations of the simplex method written with floating point numbers can avoid this, because a zero will generally show up not as an exact zero but rather as a very small number. Therfore, the dictionary appears to be slightly off from actually being degenerate.
To solve the problem of cyclings, we can use a method similar to what the floating point numbers do, which is The Perturbation/Lexicographic Method.

The Pertubation/Lexicographic Method

We can write down a series of fixed perturbation for each constraint as:
0<ϵmϵm1...ϵ2ϵ1 all other data.
For example, consider the following degenerate dictionary:
ζ=6x14x2
w1=0+9x1+4x2
w2=04x12x2
w3=1x2
The first step is to introduce symbolic parameters:
0<ϵ3ϵ2ϵ1
to get a perturbed problem:
ζ=6x14x2
w1=0+ϵ1+9x1+4x2
w2=0+ϵ24x12x2
w3=1+ϵ3x2
Treating the ϵi as symbols, the method is called the lexicographic method. Using the method, we can get an optimal dictionary as:
ζ=2ϵ22w22x1
w1=0+ϵ1+2ϵ22w2+x1
x2=0+0.5ϵ20.5w22x1
w3=10.5ϵ2+ϵ3+0.5w2+2x1
Then we simply drop the symbolic ϵi parameters and get an optimal dictionary for the unperturbed problem:
ζ=2w22x1
w1=02w2+x1
x2=00.5w22x1
w3=1+0.5w2+2x1
Theorem3.2:
The simplex method always terminaes provided that the leaving variable is selected by the lexicographic rule.

Bland’s Rule

Another pivoting rule that can guarantee no cycle is called Bland’s rule. It stipulates that both the entering and the leaving variable be selected from their repective sets of choices by choosing the variable xk with the smallest index k .

Fundamental Theorem of Linear Programming

For and arbitrary linear program in standard form, the following statements are true:
(1)If there is no optimal solution, then the problem is either infeasible or unbounded.
(2)If a feasible solution exists, then a basic feasible solution exists.
(3)If an optimal solution exists, then a basic optimal solution exists.

Linear Programming Learning Notes (2) The Simplex Method

All the resources come from Linear Programming: Foundations and Extensions by Professor Robert J. Vanderbei.
Explore the link below for further information:
LP Book Resources

Part 1

Basic Theory: The Simplex Method and Duality

Chapter 2 The Simplex Method

An Example

maximize        5x1+4x2+3x3
s.t.                   2x1+3x2+x35
                        4x1+x2+2x311
                        3x1+4x2+2x38
                                     x1,x2,x30            (2.1)

Geometry

Now we want to talk more about the geometry of several thing in LP problem. Consider, for example, the following problem:
maximize        ζ=x1+2x2+3x3
s.t.                   x1+2x33
                        x2+2x32
                       x1,x2,x30      
Each constraint stands for a halfspace, and the feasible set consists of those points in space that satisfy all five inequalities. This set is the polyhedron shown below.
這裏寫圖片描述
Indeed, each facet corresponds precisely to some variable(either original or slack) vanishing. For instance, the front facet in the figure corresponds to w1=0 whereas the “left” facet corresponds to x2=0 . Each edge of the polyhedron corresponds to a pair of variables vanishing. And each vertex of the polyhedron corresponds to three variables vanishing.
Speaking of applying the simplex method to this problem. the basic feasible solutions stand in one-to-one correspondence with the vertices of the polyhedron. We can discover that the sequence of vertices visited by the algorithm is
(0,0,0)(0,0,1)(1,0,1)(3,2,0)
The example above has the nice property that everyvertex is formed by the intersection of exactly three of the facets.
But consider now the following problem:
maximize        ζ=x1+2x2+3x3
s.t.                   x1+2x32
                        x2+2x32
                       x1,x2,x30      
Look at the polyhedron of feasible solutions shown below:
這裏寫圖片描述
The vertex(0,0,1) is at the intersection of four of the facets, not three. This vertex therefor correspond to four degenerate basic feasible solutions.
Now we can consider the geometric effect of the perturbation method for resolving degeneracy. By perturbing the right-hand sides, the corresponding planes will be moved. Then the degenerate vertices get split into multiple nearby vertices in the perturbed problem. So the degenerate problem is solved.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章