270 likes | 542 Views
On Generating All Shortest Paths and Minimal Cut-sets. By: Beth Hayden, Daniel MacDonald July 20, 2005 Advisor: Dr. Endre Boros, RUTCOR. Problem Statement.
E N D
On Generating All Shortest Paths and Minimal Cut-sets By: Beth Hayden, Daniel MacDonald July 20, 2005 Advisor: Dr. Endre Boros, RUTCOR
Problem Statement • We are concerned with generating all short paths in a graph, and also with generating all minimal cut-sets in that graph such that all short paths are blocked.
Definitions • A short path is defined as any path that is less than or equal to a certain threshold L • A minimal cut-set is one that cuts all short paths. Furthermore, if any of the edges in the cut-set were to be put back into the original graph, a short s-t path would occur (this is what is meant by minimality).
An Example of a Minimal Cut-set L=3 t s t t s s [B] [A]
Independence Systems and our Problem: How do They Relate? • Given a set E={1,2, … ,n}, a family F of subsets • Ii E is independent when any subset of Ii is also in the family of sets. • An independent I set is maximal when there exists no I` I in the family of subsets.
Application of Independence Systems • Define an independent set I in our case as a subset of a graph’s edge set E. I is independent if there exists no short path within I. • Hence, an independent set I is maximal if when you add an additional edge to I, a short path now exists.
Maximal/Minimal: Complements • The notion of maximal independent set in a graph as defined previously corresponds directly to the notion of minimal cutset that is part of our problem.
Maximal Independence – NP Complete? • In a paper by Lawler, Lenstra and Rinnooy Kan (1980), a procedure known as the “I {j} problem” is shown to reduce the complexity of the general maximal independence set problem.
Another Definition • Given E={1,2, … ,n}, we say a family of independent sets Ik is maximal through some k<n when all independent sets are maximal in the given subset K={1,2, …,k}.
The I {j} Problem • The problem stated formally is: Given the family of maximally independent sets within j-1, consider, for each Ij-1 the addition of the next element j. Test for maximality for each independent set. • Recall: we defined E={1,2, … ,n}. This implies that labeling is an essential part of our procedure.
Labeling: Problems? t t s s
The Algorithm t • Black edges are labeled arbitrarily. • Red edges are labeled according to a hierarchy based on the edge’s distance from the center vertex. s
The Algorithm 2 t 6 7 • Black edges are labeled arbitrarily. • Red edges are labeled according to a hierarchy based on the edge’s distance from the center vertex. 10 11 14 15 17 16 12 13 9 8 5 3 4 s 1
The Algorithm: Getting Started t • Pick threshold L = 4. • Begin with the empty set of red edges. • Add red edges in lexicographic order. s
t • Add next lexicographic red edge, j=1. • Do shortest path algorithm. • If there are no short paths, then the whole set of edges is an independent set I1. s 1
2 t • Add next lexicographic red edge, j=2. • Do shortest path algorithm. • If there are no short paths, then the whole set of edges is an independent set I2. s 1
2 t • List short paths within : 12, l, n, 14 13, m, n, 14 • Find all maximal independent sets: 6 7 10 11 14 n m l 12 13 9 8 5 3 4 s 1
List short paths within : 12, l, o, 15 13, m, o, 15 • Find all maximal independent sets: • Repeat for each I generated before, then continue to add red edges. 2 t 6 7 10 11 14 15 o m l 12 13 9 8 5 3 4 s 1
But… • How can we generate all maximal independent sets for each in a systematic way?
Boolean Function: The Goal • The goal of the Boolean function is to find the minimal cut-sets. • We do this by representing each path as a disjunction of its edges, and take the “product” of each disjunction. When simplified, this gives us the minimal cut-sets.
The Boolean Function t 10 11 14 15 • Form a tree of the short paths, with each edge of a short path represented by a node of the tree j k n o 16 s
The Boolean Function t 10 11 14 15 • Form a tree of the short paths, with each edge of a short path represented by a node of the tree: j k n o j 10 n 16 14 15 16 s o 11 k
The Boolean Function • 4 short paths: j 10 n 14 16 15 o • To find minimal cuts: compute the conjunctive normal form of all the short paths: 11 k
Reducing the Complexity j 10 n n 14 16 16 15 o o 11 k • First compute the conjunction of the branch farthest from the source node. • Use the results of the conjunction to form a single path from the branching node, with minimal cut represented by a node on the unified path. • Continue until the whole tree is one single path.
j 10 n n 14 16 16 15 o o 11 k 16
Conclusions We have found that for a specific type of graph, a good algorithm for generating the minimal cut-sets in the “I {j}” problem exists. We have also found a good algorithm for generating the short paths.
Acknowledgments • Lawler, Lenstra, Rinnooy Kan. Generating all Maximal Independent Sets: NP-Hardness and Polynomial-Time Algorithms, Society for Industrial and Applied Mathematics, 1980. • Thanks to Dr. Boros, Kate Davidson, and Craig Bowles.