Proofs: Network simplex method
These are the human proofs of Network simplex method, at full length.
The network simplex method with strongly feasible trees is correct and finite full
This proof shows: correctness, termination.
Setting. is directed with finite capacities , costs of any sign, and supplies with . The extended network adds a root and one artificial edge per vertex, of cost and unlimited capacity, as in line L1. Edges of capacity 0 are fixed at 0 and ignored below. , and , so .
A tree solution is a spanning tree of and a feasible flow of in which every non-tree edge is empty or full. For a direction of travel along an edge, the residual is when walking from tail to head, and when walking from head to tail. is strongly feasible if, for every vertex , every edge of the tree path from to , walked toward , has positive residual. Potentials and reduced costs are as on the page; tree edges have .
Lemma 1 (start). The first tree is a strongly feasible tree solution.
Proof. The artificial flows meet every supply: carries out of , and carries into , and is balanced since . Real edges are empty, which is a bound. A tree path from to is one artificial edge. If it is , walking toward follows the edge, whose capacity is unlimited. If it is , walking toward goes against it, with residual .
Lemma 2 (cost change). For any feasible flows , of and any potentials , .
Proof. , because has net outflow 0 at every vertex.
Lemma 3 (a pivot). Let be eligible, and let be its cycle, oriented as at line L5. Pushing units around keeps feasibility, keeps every non-tree edge at a bound after the exchange of line L8, and changes the cost by .
Proof. is the least residual along in its orientation, so no bound is crossed, and a push around a cycle keeps every net outflow. The edge has residual , so after the push it is at a bound and may leave the tree; is a spanning tree because lies on the unique cycle of . The entering edge has positive residual in its orientation, at least , and is finite because has finite capacity. By Lemma 2 with the old potentials, only has a nonzero reduced cost on , and it changes by in the direction that lowers the cost by .
Lemma 4 (strong feasibility is kept). If is strongly feasible and is chosen as at line L6, then is strongly feasible.
Proof. Let be the apex. Walk in its orientation from ; splits the walk into the part before and the part after . Removing and adding , the vertices of after reach in by continuing along the orientation, and the vertices before reach by going back against it. Vertices off keep their path to or to , and the path from to is unchanged; its edges have positive residual toward by strong feasibility of , and the push did not touch them.
After . Every edge of after is not blocking, by the choice of as the last blocking edge, so its residual in the orientation was larger than , and after the push it is still positive.
Before . Walking against the orientation, the residual of each edge rose by . If , it is positive. If , we show that is on the path from to the start of ; then the edges before lie on that path, and walking against the orientation there goes up the tree toward , where had positive residuals, which the push of 0 units did not change. The walk after goes from the end of up the tree to , so those edges have positive residual by strong feasibility, and they are not blocking. The entering edge has residual . So every blocking edge, and in particular, lies on the path from down to .
So every vertex has a path to in with positive residuals toward .
Lemma 5 (potentials rise in a degenerate pivot). If , the new potentials agree with outside the subtree that cut off from , and for .
Proof. By Lemma 4, is on the path from down to , so is the part below , and it contains and not the other end of . Tree edges inside and outside are unchanged, so differs from by a constant on and agrees with it outside, with . The new tree edge needs reduced cost 0. If was empty, gives . If was full, gives .
Theorem. The method stops. At the end, if an artificial edge carries flow, has no feasible flow; otherwise the flow on the real edges is a minimum-cost feasible flow of .
Proof. Termination. A tree solution is determined by and by which non-tree edges are full, so there are finitely many. By Lemma 3 a pivot with lowers the cost, and by Lemma 5 a pivot with keeps the cost and raises , which depends only on . So the pair (cost, ) decreases strictly in the lexicographic order at every pivot, no tree solution repeats, and the loop ends.
Optimality in . At the end no edge is eligible: tree edges have , empty edges , full edges . For any feasible of , each term of Lemma 2 is : where , and ; where , and . So is optimal in .
Artificial flow. If uses no artificial edge, its restriction is a feasible flow of , and it is optimal in since every flow of is a flow of of the same cost. Suppose instead uses an artificial edge but has a feasible flow , extended by 0 on artificial edges. Then has net outflow 0 everywhere, and it splits into simple cycles with weights , each conformal to : it walks forward only where and backward only where . Some cycle uses an artificial edge, since is positive there. A simple cycle through uses exactly two artificial edges, both forward because on them, and at most real edges, so its cost is at least . Subtracting from for all such cycles gives a flow that lies between and on every edge, hence is feasible in , and . This contradicts the optimality of . So artificial flow at the end means that has no feasible flow.