160 likes | 267 Views
Chapter 3. Pitfalls. Initialization Ambiguity in an iteration Finite termination? Resolving ambiguity in each iteration Selection of the entering variable: set of nonbasic variables Any nonbasic variable with can enter basis.
E N D
Chapter 3. Pitfalls • Initialization • Ambiguity in an iteration • Finite termination? • Resolving ambiguity in each iteration • Selection of the entering variable: set of nonbasic variables Any nonbasic variable with can enter basis. (However, performance of the algorithm depends on the choice of the entering variable. examples of the rules : largest coefficient rule, maximum increase rule, steepest ascent rule, …)
Selection of leaving variable: • No restriction in minimum ratio test : can increase the value of the entering variable indefinitely while satisfying the constraints (including nonnegativity), hence problem is unbounded Ex) • Current point is (0, 5, 0, 0, 7). We want to increase from 0 to , while keeping and at 0, then direction of movement should be (0, 2, 1, 0, 0) 0 so that the new point satisfies the equations. ( let( 0, 2, 1, 0, 0) ) • Also, new point satisfies nonnegativity of variables for any since (0, 2, 1, 0, 0) . Objective value increases by ( 1 is coefficient of in the row). Hence objective value becomes as, so the problem is unbounded. (Unboundedness of LP can be shown by identifying a direction such that is feasible for any, and objective value becomes as.)
Also note that Note that if we want to move from to , then we must have so that the new point satisfies the equations . Then holds if and only if . So the direction of movement must satisfy for the vector to be a feasible direction of movement ( is in the null space of ).
Ties (=1/2) Some basic variables have value 0 after pivot. b) In case of ties in the minimum ratio test :
In the next iteration, ( entering, leaving ) Though cannot be increased, we perform the pivot as usual, making as basic and as nonbasic. No change in the solution, but basic and nonbasic status changes for two variables. Later, we will examine what this means in geometry.
Terminology: degenerate solution (퇴화해) : basic feasible solution with one or more basic variables having 0 values. degenerate iteration (pivot) : simplex iteration that does not change the current basic solution (only basis changes). • Observations: • Given a nondegenerateb.f.s., we must have ties in the minimum ratios so that we have a degenerate solution after the pivot. • A degenerate pivot occurs only if we have a degenerate solution, but the converse is not true (i.e. we may have a nondegenerate pivot although we have a degenerate solution).
Geometric meaning of a degenerate iteration x2=0 x2=0 x5=0 x5=0 x1=0 x1=0 x6=0 x6=0 A A ( used) ( used)
(ex- continued) In the first dictionary, the point is identified by using the three equations in and setting at equalities. The nonnegativityconstraints for nonbasic variables (here are used to identify point ( provides 5 equalities together with ). After pivot, the solution point is not changed. But it is identified now by using at equalities together with . Hence a degenerate iteration changes the defining equations one at a time, but the solution point is not changed.
x2=0 • Getting out of degenerate iterations: x5=0 x1=0 x6=0 A x30 (x3=0, x5=0 used) We changed the data in the previous dictionary a little bit. Now, enters (takes value 1) and leaves the basis, and it is a nondegenerate pivot. Geometrically, we still satisfy the equation , but do not need to satisfy . As we increase the value of up to 1, becomes 0, hence the equation is now used (together with and ) to define a new point.
Degenerate iteration is the process of identifying the same point (solution) using different defining equations (different nonnegativity constraints). If we are lucky enough to obtain defining equations that correctly guides the moving direction, we move to a different point with a nondegenerate pivot. • If we have a degenerate solution, pivot may continue indefinitely (Example in text p.31, pivoting rule is largest coefficient for entering variable and smallest subscript for leaving variable in case of ties. Then we have the initial dictionary again after 6 pivots.) • Terminology: • Cycling : appearance of the same dictionary (tableau) again in the simplex iterations.
In practice, cycling hardly occurs. However, during the degenerate iterations, the algorithm stalls and it may hamper the performance of the algorithm. Such phenomenon is of practical concern and affects the performance of the algorithm (especially, for problems with some special structures and large problems). • We also need mechanisms to avoid cycling for any problem instances. Otherwise, the simplex method may not terminate finitely. • Cycling is the only reason that simplex method may fail to terminate (i.e. simplex method terminates in a finite number of iterations as long as cycling is avoided).
Thm: If simplex method fails to terminate, it must cycle. Pf) Number of ways to choose basic variables are finite. Hence, if simplex fails to terminate, same basis must appear again. Show same basis same dictionary. Hence same dictionary appears, i.e. cycles. Suppose the same basis appears again and consider the dictionaries (1) (2), where is the set of basic variables. (1) and (2) have the same set of solutions (ignore nonnegativity constraints here) Let be a nonbasic variable and be a number. Consider a solution to (1) given as the following:
This solution satisfies (1). So it also satisfies (2), hence These equalities must hold for any real number . Therefore, we have We can use any nonbasic variable in the above proof, so dictionaries are identical. • The theorem can be proved easily if we use matrices, but the above proof uses only algebraic arguments.
The proof of the theorem shows that if we have the same basis, then the dictionaries (tableaus) are the same. Since there are only a finite number of ways to choose the basis, the simplex method terminates finitely if the same basis (the same dictionary) does not appear again, i.e. cycling is avoided.
Avoid cycling • Perturbation method, Lexicographic method • Smallest-subscript rule (Bland’s rule) • Smallest-subscript rule (Bland’s rule) : Choose the variable having the smallest index among possible candidates (any nonbasicvariable with ) as the entering variable. Also, if ties occur while choosing the leaving variable, select the smallest indexed variable among the candidates (tied variables in the minimum ratio test) as the leaving variable. See the proof in the text if time permits.
Ties (=1/2) Ties (=0) • Examples of smallest subscript rule: enters, leaves are candidates for leaving.) enters, leaves. are candidates for entering and are candidates for leaving.)