Pseudoforest Partitions and the Approximation of Connected Subgraphs of High Density
Total Page:16
File Type:pdf, Size:1020Kb
PSEUDOFORESTPARTITIONS ANDTHEAPPROXIMATIONOF CONNECTEDSUBGRAPHSOFHIGHDENSITY Dissertation zur Erlangung des Grades „Doktor der Naturwissenschaften“ am Fachbereich Physik, Mathematik und Informatik der Johannes Gutenberg-Universität in Mainz vorgelegt von Markus Andreas Daniel Blumenstock geboren in Frankfurt am Main Mainz, den 8. Januar 2020 Typographisch korrigierte Fassung vom 19. Juni 2020 erstberichterstatter: Prof. Dr. Ernst Althaus zweitberichterstatter: Prof. Dr. Andreas Hildebrandt drittberichterstatter: Prof. Dr. Ulrich Meyer Datum des Kolloquiums: 12.11.2019 D77 ZUSAMMENFASSUNG In dieser Arbeit werden das Problem, in einem einfachen Graphen einen Subgraphen mit maximaler Dichte d∗ zu finden, sowie verwand- te Probleme diskutiert. Die ganzzahlige Variante des dazu dualen Problems ist, eine Orientierung mit kleinstmöglichem maximalen Ein- gangsgrad zu finden. Dieser Eingangsgrad ist gleich der kleinsten Anzahl an Pseudowäldern, in die der Graph zerlegt werden kann, und wird daher als Pseudoarborizität p bezeichnet. Es wird gezeigt, wie Kowaliks Approximationsschema dazu ver- wendet werden kann, die balancierte binäre Suche des Algorithmus von Gabow und Westermann zu beschleunigen und eine Laufzeit von p (m3/2 log log p) für die Bestimmung von p zu erreichen, wobei O m die Anzahl der Kanten des Graphen ist. Ein Subgraph mit Dichte größer d 1 kann mit derselben asymptotischen Laufzeit bestimmt d ∗e − werden. Es werden zudem Laufzeiten verschiedener Algorithmen zur Bestimmung von p experimentell verglichen. Mit aktueller Hardwa- re können die Berechnungen für soziale Netzwerke mit hunderten Millionen Kanten in wenigen Minuten ausgeführt werden. Aufbauend auf Kowaliks Approximationsschema wird ein Appro- ximationsschema für die Arborizität eines Graphen mit derselben Laufzeit entwickelt. Im Gegensatz zu früheren Ansätzen approximiert dieses nicht nur den Wert der Arborizität, sondern berechnet auch eine dazugehörige Zerlegung in Wälder. Dies wird durch eine schnelle Konvertierung von k Pseudowäldern in k + 1 Wälder erreicht. Basierend auf dem Konzept der maximalen Dichte kann ein gemischt- ganzzahliges lineares Programm (MILP) aufgestellt werden, um zu- sammenhängende Subgraphen zu finden, die eine lineare Funktion minimieren. Dieses Problem, das eng mit dem Steinerbaumproblem auf Graphen verwandt ist, ist im Allgemeinen NP-schwer. Für den Fall, dass die Anzahl der Knoten des Subgraphen genau k betragen soll, wird das MILP mit einer anderen bestehenden Formulierung, den generalized subtour elimination constraints (GSEC), sowohl theoretisch als auch experimentell verglichen. Eine weiteres Thema, das beleuchtet wird, ist die Approximation des Steinerbaumproblems auf Graphen mithilfe der bidirected cut re- laxation (BCR), welche äquivalent zu GSEC ist. Es wird gezeigt, dass der Algorithmus von Byrka et al. eine 1,354-Approximation berechnet, wenn die Instanzen keine Steinerklauen enthalten. Es wird zudem eine Idee zur Generierung schwieriger Instanzen vorgestellt, die jedoch nicht in verbesserten unteren Schranken an das integrality gap von BCR resultiert. iii ABSTRACT This thesis deals with the problem of finding a subgraph of maximum density d∗ in a simple graph and related problems. The integral variant of the dual problem is to find an orientation with the smallest possible maximum indegree. This indegree is equal to the smallest number p of pseudoforests into which the graph can be partitioned, and is therefore called pseudoarboricity. It is shown that Kowalik’s approximation scheme can be employed to accelerate the balanced binary search of the Gabow–Westermann p algorithm in order to obtain a runtime of (m3/2 log log p) for deter- O mining p, where m is the number of edges in the graph. A subgraph of density greater than d 1 can be determined within the same d ∗e − asymptotic runtime. In addition, the runtimes of several algorithms for determining p are compared experimentally. On current hardware, the computations can be carried out in minutes for social networks with hundreds of millions of edges. Building upon Kowalik’s approximation scheme, an approximation scheme for the arboricity with the same asymptotic runtime is devel- oped. In contrast to previous approaches, it does not only approximate the value of the arboricity, but also computes a corresponding forest partition. This is achieved using a fast conversion of k pseudoforests into k + 1 forests. Based on the concept of maximum density, a mixed integer linear program (MILP) can be formulated for finding a connected subgraph that minimizes a linear function. This problem, which is closely related to the Steiner tree problem on graphs, is NP-complete in general. For the case where the number of vertices is required to be exactly k, the MILP is compared to an existing formulation, the generalized subtour elimination constraints (GSEC), both in theory and in practice. Another topic under scrutiny is the approximation of the Steiner tree problem on graphs with the bidirected cut relaxation (BCR), which is equivalent to GSEC. It is shown that the algorithm of Byrka et al. computes a 1.354-approximation if the instances do not contain Steiner claws. Furthermore, an idea for generating hard instances is presented, yet it does not result in improved lower bounds on the integrality gap of BCR. v ACKNOWLEDGEMENTS First and foremost, I want to thank my advisor, Professor Ernst Alt- haus. He always had a friendly ear to my questions and valuable advice, and he let me freely pursue my interests in both research and teaching to a remarkable degree. I am also indebted to the supervisor of my three-month stay at the University of Waterloo in Canada, Professor Jochen Könemann. He took a lot of time to meet with me and discuss ideas, and invited me to a workshop at the Banff International Research Station. My colleagues at the Institute of Computer Science in Mainz also deserve credit for the wonderful working climate and the occasional get-together. I want to highlight the members of the Algorithmics group: Björn Beber, Domenico Mosca, Udo Muttray, and Sarah Ziegler, as well as ‘honorary member’ Frank Fischer. Last, but not least, I want to thank my wife Katharina for her support and our son Adrian, who fills both our lives with joy. vii CONTENTS 1 introduction1 1.1 Historical Background and Motivation . 1 1.2 Structure and Outline of the Thesis . 4 1.3 Collaboration and Publications . 6 2 preliminaries7 2.1 Basic Definitions . 7 2.1.1 Set-Theoretic Foundations . 7 2.1.2 Propositional Calculus . 8 2.2 Graphs . 9 2.2.1 Vertices and Edges . 9 2.2.2 Undirected and Simple Graphs . 10 2.2.3 Adjacency and Incidence . 10 2.2.4 Degrees and Orientations . 10 2.2.5 Subgraphs, Induced Subgraphs, and Matchings 11 2.2.6 Paths, Cycles, and Connected Components . 11 2.2.7 Trees and Planarity . 12 2.3 Asymptotics . 13 2.4 Probability Theory . 15 2.4.1 The Coupon Collector Problem . 17 2.5 Algorithms and Machine Models . 18 2.6 Complexity Classes . 19 2.7 Approximation Algorithms . 22 2.8 Breadth-First and Depth-First Search . 22 2.9 Linear Algebra . 24 2.10 Matroid Theory . 25 2.11 Linear Programming . 26 2.11.1 Linear Programs and the Canonical Form . 26 2.11.2 Polyhedra and Extreme Points . 27 2.11.3 Duality . 28 2.11.4 Total Unimodularity . 29 2.11.5 Algorithms to Solve Linear Programs . 30 2.11.6 Integer Linear Programs . 30 2.11.7 Branch-and-Bound and Branch-and-Cut . 32 2.12 The Maximum Flow Problem . 33 2.12.1 Flows as Linear Programs . 33 2.12.2 The Minimum Cut Problem . 35 2.12.3 Maximum Flows by Augmenting Paths . 36 2.12.4 Flow Algorithms and Their Runtimes . 39 2.13 Dinitz’s Algorithm . 40 2.14 Almost Unit Capacity Networks . 42 2.15 Dinitz’s Algorithm on AUC Networks . 44 ix x contents 3 the densest subgraph problem 47 3.1 Definition and Properties . 47 3.2 Bounds on the Maximum Density . 53 3.3 Algorithms for the Densest Subgraph Problem . 54 3.3.1 0-1 Fractional Programming . 54 3.3.2 The Provisioning Problem . 55 3.3.3 Goldberg’s Method . 56 3.4 Integral Test Values and Smaller Search Intervals . 60 3.5 Linear Programs for the Densest Subgraph Problem . 63 3.6 The Bipartite Orientation Network . 65 3.7 Streaming Algorithms . 73 4 the orientation problem 75 4.1 The Re-Orientation Algorithm . 75 4.2 Kowalik’s Approximation Scheme . 81 4.3 Applications and Generalizations . 84 5 balanced binary search 87 6 accelerated binary search 91 6.1 Fractional Orientations . 93 6.2 Bottleneck Maximum Cardinality Matching . 95 7 constant-factor approximations 97 7.1 The Greedy Algorithm . 97 7.2 The Algorithm of Asahiro et al. 99 7.3 Kowalik’s Scheme for Fixed e ............... 103 8 arboricity and pseudoarboricity 105 8.1 Forests and Pseudoforests . 105 8.2 Matroid Partitioning and Covering Numbers . 108 8.3 Runtimes for Computing the (Fractional) Arboricity . 114 8.4 Bounds for Arboricity and Pseudoarboricity . 116 9 conversion of pseudoforests into forests 121 9.1 Conversion by Divide-and-Conquer . 122 9.2 Linear-Time Conversions for Small k ........... 125 9.2.1 A Linear-Time 5/3-Conversion . 125 9.2.2 A Linear-Time 3/2-Conversion . 126 9.2.3 A Linear-Time 4/3-Conversion . 127 9.2.4 The Nine Dragon Tree Theorem . 133 9.2.5 An Application to Planar Graphs . 135 9.2.6 Partitioning a Planar Graph into Three Forests . 135 10 a constructive arboricity approximation scheme 137 10.1 The Surplus Graph . 137 10.2 Exchanging Edges on Cycles . 141 10.3 Finding the Exchange Edge . 143 11 preprocessing orientations 145 12 experimental comparisons for the orientation problem 149 12.1 Related Work . 149 12.2 Selection of Algorithms . 149 contents xi 12.3 LP Solver and Hardware Configuration . 151 12.4 Input Graphs . 151 12.5 Results . 152 13 problems involving connected subgraphs 157 14 the k-cardinality tree problem 159 14.1 Integer Linear Programs .