Network Simplex Method and Basis Matrix Conversion
210 likes | 299 Vues
This text discusses the relationship between spanning trees, basic feasible solutions, and basis matrices in network optimization problems. It covers the conversion process and matrix operations involved.
Network Simplex Method and Basis Matrix Conversion
E N D
Presentation Transcript
The Network Simplex Method Spanning Trees and Basic Feasible Solutions
BFS Spanning Tree • Theorem 11.10: Every spanning tree of G defines a basis of the MCNFP LP and every basis of the MCNFP LP defines a spanning tree of G. • There is a one-to-one correspondence between spanning trees and basic solutions.
4 2 (0,4,5) (0,10,2) -3 1 3 5 (0,10,4) (0,5,8) -7 10 (0,5,10) 4 (0,5,5) (0,4,7) -4 MCNFP Example (, u, c)
Flow Balance Constraints We can drop one of the constraints.
Basic Feasible Solutions (BFS) • We can drop the flow balance constraint for one of the nodes. • The flow balance constraints form a system of 4 equations with 7 variables. • Thus, A BFS will have 4 basic variables and 7- 4 = 3 non-basic variables.
An initial BFS (Solution 1) • Basic arcs (variables) B = {(1,3), (2,5), (3,5), (4,5)} • Non-basic arcs at their lower bounds L = {(1,2), (1,4)} • Non-basic arcs at their upper bounds. U = {(3,4)}
Flow Balance Constraints Drop flow balance for node 5 and substitute and u values for non-basic arcs.
The Basis Matrix • Let B be a set of n-1 arcs. • Let AB be the n-1 by n-1 submatrix of the node-arc incidence matrix formed by taking the columns corresponding to the arcs in B and removing one row. • The Basis Matrix AB must have an inverse in order for it to correspond to a BFS.
Results from Linear Algebra • The determinant of a lower triangular matrix is the product of its diagonal elements. • A set of n-1 column vectors with n-1 elements each has an inverse if and only if the matrix comprised of these columns has a non-zero determinant.
Vector-Matrix Form of the Flow-Balance Constraints This basis matrix is lower triangular. All diagonal elements are 1. Thus, this matrix has an inverse.
Converting Spanning Trees to Basis Matrices • Perform a DFS of the underlying, undirected tree. • Traverse the nodes with a reverse thread: visit node i before pred(i) • Order the nodes (rows) according to the order they were visited in the reverse thread. • Order the arcs (columns): visit the nodes in order, and for each node i visited, select the unique arc incident to i on the path in the DFS tree.
BFS 2 2 1 3 5 4
0 0 0 -1 0 0 1 -1 0 0 0 -1 0 1 1 Converting the Spanning Tree to a Basis Matrix 1 Arc Order: (4,5) (2,5) (1,2) (1,3) 4 1 5 -1 3 2 0 2 0 3 5 1 0 Reverse Thread: visit i before pred(i). 4
(4,5) (2,5) (1,2) (1,3) 4 1 0 0 0 5 -1 -1 0 0 1 -1 0 0 2 0 0 -1 0 3 LowerTriangular Basis Matrix All diagonal elements are +1 or –1.
BFS 3 2 1 3 5 4
0 0 0 -1 0 0 0 -1 0 0 1 -1 1 0 1 Converting the Tree to a Basis Matrix 1 Arc Order: Reverse Thread (3,4) (1,3) (2,5) (1,2) 4 -1 3 1 3 2 0 5 0 2 5 4 1 0
General Case • Suppose arc (i, j) is in the spanning tree and assume j = pred(i) in the DFS. • Consider the column corresponding to arc (i, j): • This column will have a +1 or a –1 in the row (r) corresponding to node i. • The only other non-zero entry in the column will be in the row for node j which will be below row r. • Thus, the matrix is always lower triangular with +1 or –1 in all the diagonal elements.
Tree => Basis Matrix • Theorem 11.9: The rows and columns of the node-arc incidence matrix of any spanning tree can be rearranged to be lower triangular. • Every spanning tree of G corresponds to a basis of the minimum-cost network flow problem.
Cycle => Not a Basis Matrix j i k (k, i) column is a linear combination of (i, j) and (j, k) columns.