Gomory-Hu Trees and Min-Cut Representations in Graph Structures

succinct graph structures and their applications n.w
1 / 34
Embed
Share

Explore Gomory-Hu trees and efficient min-cut representations for graph structures, highlighting the significance of minimum cuts and their applications. Understand the Triangle Inequality Lemmas, submodularity, and the importance of tree-based computations in graph theory.

  • Graph Structures
  • Gomory-Hu Trees
  • Min-Cut
  • Triangle Inequality Lemmas
  • Submodularity

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Succinct Graph Structures and Their Applications Spring 2020 Class 9: Gomory-Hu Trees

  2. Min-Cut Representation A cut is a partitioning of graph vertices into two subsets ? and ? ? The value of a cut is ??? = ? ?(?,? ?)?(?) ? Minimum-cut value ? = min ? ???(?) Minimum ?-? cut ??(?,?)= ? ?,? ?,? ???(?) min ?\S Goal: Succinct representation of all minimum cuts Efficient computation of all minimum cuts

  3. Gomory-Hu Tree Given is a graph ? = (?,?,?). A Gomory-Hu tree is a weighted tree ? = (?,? ,?)such that ? ? = ? ? ???,? = ???{?(?) ? ??(?,?)} Special Bonus: computed by applying ? 1 min-cut computations

  4. Example ? 8 3 ? ? ? 1 6 6 7 2 ? ? 1 1 ? ? 6 2 7 ? ? ? 4 8 ?

  5. Min-Cut Follows the Triangle Inequality Lemma 1: ???,? min ???,? ,??(?,?) for every ?,?,? ? ? Case 1: ? ? ???,? ??(?,?) Case 2: ? ? ???,? ??(?,?) ? ? ? = ?\A

  6. Min-Cut Follows the Triangle Inequality Lemma 2: for every sequence [?,?1,?2, ,??,?] it holds that ???,? ??? ???,??,????,??, ,??(??,?) ? ? Proof: repetitive applications of Lemma 1. ? ? ? = ?\A

  7. Tree with ?(?2) Min-Cut Computations Let ? = (?,? ,?) be a ? ? ?(?) clique where ? ?,? = ??(?,?) Compute a maximum spanning tree ? ? Lemma 3: for every ?,?it holds that ???,? = ??? {? ? ? ???,? } Proof: Trivial for ?,? ?.Assume otherwise. By the triangle inequality: ???,? ???{? ?,??,? ?,??, ,?(??,?)} Since ?,? ? ?:???,? ???{? ?,??,? ?,??, ,?(??,?)} As ? is a max spanning tree

  8. Tree with ?(?2) Min-Cut Computations Let ? = (?,? ,?) be a ? ? ?(?) clique where ? ?,? = ??(?,?) Compute a maximum spanning tree ? ? Lemma 3: for every ?,?it holds that ???,? = ??? {? ? ? ???,? } Main Drawback: requires (?2) min-cut computations.

  9. Nice Properties of Cuts Submodularity: Given a finite set ? , a function ?:?? is submodular if for all ?,? ?? it holds that ? ? + ? ? ? ? ? + ?(? ?) Equivalent Definition (Decreasing marginal value): ?is sub-modular if ? ? + ? ? ? ? ? + ? ?(?)for all ? ?and ? ?. Symmetric Submodular: ? ? = ?(? ?)for all ? ?

  10. Nice Properties of Cuts ? In our case graph ?(?,?) and ?:?? where ? ? = ?(?) ? ? Lemma: The cut function is submodular Diagram with all classes of edges (except fully inside ?,?,? (? ?)) ? ? ? ? ? + ? ? = ? + ? + 2? + ? + ? + 2? ? ? ? ? ? = ? + ? + ? ? ? ? ? ? = ? + ? + ? ? ? ? + ? ? ? = ? + ? + 2? + ? + ? ? ? + ?(?) ?

  11. Nice Properties of Cuts A function ?:?? is posi-modular if ? ? + ? ? ? ? ? + ?(? ?) Obs.: Any submodular and symmetric function is posi-modular ? ? + ? ? = ? ? ? + ? ? ? ? ? ? + ? ? ? ? =? ? ? + ? ? ? ? = ? ? ? + ?(? ?) The cut function ? ? = ?(?) is posi-modular

  12. The Key Lemma Key Lemma: Let ?(?)be an ?,? minimum-cut in a graph ?. For every ?,? ? there is a min ?,? cut ?(?) in ? where ? ?. ? ? This implies that the min ? ?cut in a graph ? obtained by contracting all nodes in ? ? is the same as the ? ? cut in ? ? ? ? ? ? ? ? ? ? ? ?

  13. Key Lemma: Let ?(?)be an ?,? minimum-cut in a graph ?. For every ?,? ? there is a min ?,? cut ?(?) in ? where ? ?. Let ?(?) be any ?,? min cut that crosses ?. W.l.o.g. assume that ? ?,? ? and ? ? Case 1: ? ?. ? ? + ? ? ? ? ? + ?(? ?) ? ? submodularity ?(? ?) is ? ? cut ?(? ?) is ? ? cut ? ? ? ?(?) ? ? ? ?(?) ? ? ? ? ? + ? ? ? ? ? + ?(? ?) ? ? ? = ? ? ?

  14. Key Lemma: Let ?(?)be an ?,? minimum-cut in a graph ?. For every ?,? ? there is a min ?,? cut ?(?) in ? where ? ?. Let ?(?) be any ?,? min cut that crosses ?. W.l.o.g. assume that ? ?,? ? and ? ? Case 2: ? ?. ? ? + ? ? ? ? ? + ?(? ?) ? Posi-modularity ? ?(? ?) is ? ? cut ?(? ?) is ? ? cut ? ? ? ?(?) ? ? ? ?(?) ? ? ? ? ? + ? ? ? ? ? + ?(? ?) ? ? ? = ? ? ?

  15. High-Level Intuition Compute an ? ? minimum cut for an arbitrary pair ?,? ? ? ? ? By the key lemma: For every x,y ?, ? ? internal in ? For every x,y ?, ? ? internal in ?

  16. High-Level Intuition Compute a ? ? minimum cut for arbitrary pair ?,? ? ??(?,?) ? Break the task into two independent computations! ? ? Compute tree ?? for ?? ?? ? ?? ? Compute tree ?? for ?? ?? ??

  17. High-Level Intuition Collapsing a set ? into a vertex ??: For each ? ? add edge (?,??) of weight ? ?,?? = |{ ?,? ? ? ?}| ? ?? ??

  18. High-Level Intuition Compute a ? ? minimum cut for an arbitrary pair ?,? ? ??(?,?) ? Break the task into two independent computations! ? ? ? ??(?,?) ?? Compute tree ?? for ?? ?? Compute tree ?? for ?? ?

  19. Gomory-Hu Algorithm ?(?) = {??} and ? ? = Repeat until all vertices in ? are singletons: Pick a non-singleton ?? ?? 1. Define ? by collapsing each vertex ?? ?? {??} 2. Compute ? ? min-cut ?,? in ? for arbitrarily chosen pair ?,? ? 3. ?? (?,?) ? ?2 ? ?1 ? ? ? ? ? ? ?

  20. Gomory-Hu Algorithm ?(?) = {?} and ? ? = Repeat until all vertices in ? are singletons: Pick a non-singleton v? ?? Define ? by collapsing each vertex ?? ?? ?? Compute ? ? min-cut ?,? in ? for arbitrarily chosen pair ?,? ? 1. 2. 3. Split ? into ??= ? ?and ??= ? ? and add ? ???,???= ?? (?,?) 4. For every earlier edge ??,?? do: 5. If ? ?, replace it with ??,??1(same weight as ??,??) 1. Otherwise, replace with ??,??2 (same weight as ??,??) 2.

  21. Illustration 3 ? ? 1 6 ?,?,?, ?,?,? 2 1 1 ? ? 2 7 ? ? 4 1. Pick ?,? ? 6 ?,? ?,?,?,?

  22. 2. Pick ?,? ? 3 ? ? ? 4 6 1 6 2 1 1 ?? ? ? ? 2 2 7 ? ? 4 8 6 ?,?,?,? ? ?

  23. 2. Pick ?,? ? 3 3 ? ? ? ? 1 6 1 6 2 2 1 1 ? 1 1 ? ? 2 2 7 ? ? 7 ? ? 4 4 8 6 8 ? ?,?,? ? ?

  24. 2. Pick ?,? ? 3 ? 3 ? ? ? 6 1 1 6 2 1 2 1 ? ? 1 1 ? ? 2 2 ? 7 ? 7 ? ? 4 4 8 6 8 ?,? ? ? ? 7 ?

  25. 2. Pick ?,? ? 3 3 ? ? ? ? 6 1 1 6 2 2 1 1 1 1 ? ? ? 2 2 7 ? ? 7 ? ? 4 4 6 6 8 8 ? ? ? ? ? 7 ?

  26. Correctness Analysis Claim: ?? (?,?)=??(?,?) ?? (?,?) ?2 ? ?1 ? ? ? ?

  27. Correctness Analysis Lemma: ???,? = min{ ? ? ? ???,? } Observation: ???,? min{ ? ? ? ???,? } This holds as every edge in ???,? corresponds to a ? ?cut in ? Can be shown by induction on the length of the path.

  28. Correctness Analysis Lemma: ???,? = min{ ? ? ? ???,? } ? Observation: ???,? min{ ? ? ? ???,? } ?2 Claim: ???,? min{ ? ? ? ???,? } ?1 ?? Key Claim: For every edge ?,? ?,???,? = ?(?,?) ? ? Triangle ineq. ???,? min ? ?,?1,? ?1,?2, ,? ??,? = min ? ?,?1,? ?1,?2, ,? ??,?

  29. Correctness Analysis Key Claim: For every edge ?,? ?,???,? = ?(?,?) Step ? {?, ,? ?}: Weighted tree ?? Each node ?? ? ?? corresponds to a subset ? of vertices in ?(?) Claim: For every edge ??,?? ?? there exists ? ?,? ?such that ? ??,?? = ??(?,?) Shown by induction on ?

  30. Correctness Analysis Claim: For every edge ??,?? ?? there exists ? ?,? ?such that ? ??,?? = ??(?,?) Base of induction: ?1 has no edges, trivial Induction step ?:Split a super-vertex ?? ?? ?into ?1,?2 ?? (?1,?2) ?? ? ?? ?2 ?? ?? ?? 1 ?1 ?? ? ? ? ?

  31. Correctness Analysis Claim: For every edge ?,? ?? there exists ? ?,? ?such that ? ?,? = ??(?,?) Base of induction: ?1 has no edges, trivial Induction step ?:Split a super-vertex ? ?? ?into ?1,?2 ??(?1,?2) ?? ? ?? ?2 ?? ?? ?? 1 ?1 ?? ? ? ? ? Show that claim is preserved for ?1,? !

  32. Correctness Analysis Induction step ?:Split a super-vertex ? ?? ?into ?1,?2 ??(?1,?2) ?? ?2 ?? ?? ?? 1 ? ? ? ?1 ?? ?(?,?) ?? ? ? ? ? ? ? By induction assumption for ? ?: ? ? and ? ? such that ? ?,? = ?(?,?) If ? ?1 Otherwise, show ? ?? such that: ? ?,? = ???,? = ??? ,? = ?(??,?)

  33. ??(?1,?2) ?? By the triangle inequality: ?2 ?? ? ?1 ? ?,?? ???{? ?,? ,? ?,??,?(??,??)} ?? ?? ? By the key lemma: collapsing ?2 does not change value of ?(?,?1) ? ?,?? ???{? ?,? ,?(??,??)} The?? ?? min cut also separates ? and ?, thus ? ?,? ?(??,??) ???,?? ???,? As there is an ? ?? cut of value ???,? ???,?? = ???,?

  34. Implications For any undirected graph there is a pair of nodes ?,? such that there is an ? ?min cut that consists of a singleton node (a.k.a pendant pair). Let G be a graph such that deg(?) ? for all ? ? then there is a pair such that ???,? ? Submodularity and symmetry are sufficient conditions for tree representation with ? 1 computations.

Related


More Related Content