Smallest Enclosing Balls of Balls
Total Page:16
File Type:pdf, Size:1020Kb
DISS. ETH NO. 16168, 2005 Smallest enclosing balls of balls Combinatorial structure & algorithms A dissertation submitted to the Swiss Federal Institute of Technology, ETH Z¨urich for the degree of Doctor of Technical Sciences presented by Kaspar Fischer Dipl. Ing. Inf. ETH born 23rd May 1975 citizen of Switzerland accepted on the recommendation of Prof. Dr. Emo Welzl, ETH Z¨urich, examiner Dr. Bernd G¨artner, ETH Z¨urich, co-examiner Prof. Dr. Jiˇr´ıMatouˇsek, co-examiner Acknowledgments I would like to thank all the people without whom this thesis would not have been written. In the first place, my thanks go to Emo Welzl for giving me the opportunity to work in his research group and the graduate program Combinatorics, Geometry, and Computation. I would like to express my deep gratitude to my advisor Bernd G¨artner. His support, character, and working style were a warm com- panion during my stay at ETH. And without the interesting time I spent doing my diploma thesis under his guidance I would not have started my PhD in the first place. I also want to warmly thank Jirka Matouˇsek for being my third su- pervisor and for taking the time to read and provide feedback. Oscar Chinelato, Menelaos Karavelas, Sylvain Pion and others on the Cgal mailing list helped me a lot with ideas, discussions, and program- ming knowledge. I also owe a big thank you to Martin Kutz; working with him was inspiring. Good memories come from and go to the members of the Gremo group: Andreas Razen, Bettina Speckmann, Dieter Mitsche, Eva Schu- bert, Falk Tschirschnitz, Floris Tschurr, Frans Wessendorp, Franziska Hefti, Joachim Giesen, Leo R¨ust, Matthias John, Michael Hoffmann, MiloˇsStojakovi´c,Philipp Zumstein, Robert Berke, Shankar Ram Lak- shminarayanan, Tibor Szab´o, Uli Wagner, and Yoshio Okamoto. In par- ticular, I am very thankful to Ingo Schurr (for tons of good moments) and P´eter Csorba (for the best humour on the floor). Behind the scenes there were, of course, other people who helped and influenced me substantially during my PhD time. I thank my girlfriend Nicole Schmidlin, my best friends Klaus Labhardt and Florian D¨ublin, and my sister Alexandra Ryser—no, not just for feeding me. Katharina Adiecha, B´eatrice Goetz, Joachim Dietiker and Miriam K¨undig, together with a dozen of anonymous Tango dancers all over the world changed a lot inside me. Last but not least, I would like to thank my parents, Elisabeth Zumthor and Franz Fischer, for their lively and lovely support. Abstract This subject of this thesis is the miniball problem which asks for the smallest ball that contains a set of balls in d-dimensional Euclidean space. We try to answer three main questions concerning this problem. What structural properties does the ‘miniball’ exhibit? What practical algorithms can be used to compute it? And how efficiently can instances in high dimensions be tackled? In all these questions, it is of interest how the problem and algorithms for it compare to the more specific variant of the problem in which all input balls are points (all radii zero). In connection with the first question, we show that many of the al- ready known properties of the miniball of points translate also to the miniball of balls. However, some important properties (that allow for subexponential algorithms in the point case, for instance) do not gener- alize, and we provide counterexamples and appropriate new characteri- zations for the balls case. The change in structure between the point and ball case also reflects itself in the algorithmic picture, and we demonstrate that Welzl’s algo- rithm does not work for balls in general, and likewise a known reduction to unique sink orientations does not apply either. Our main result here is that under a simple general-position assumption, both the correctness of Welzl’s algorithm and a reduction to unique sink orientations can be established. The result has an appealing geometric interpretation and practical significance in that it allows for pivoting algorithms to solve the problem; the latter have the potential of being very fast in practice. As a byproduct, we develop a deeper (but not yet complete) understanding of the general applicability of Welzl’s algorithm to certain optimization problems on the combinatorial cube. Our contributions concerning the last question are twofold. One the one side, we provide a combinatorial, simplex-like algorithm for the point case that turns out to be very efficient and robust in practice and for which we can show that in theory it does not cycle. On the other hand, we formulate the problem with balls as input as a mathematical pro- gram and show that the latter can be solved in subexponential time by using G¨artner’s algorithm for abstract optimization problems. In fact, our method works for other convex mathematical programs as well, and as a second application of it we present a subexponential algorithm for finding the distance between two convex hulls of balls. Zusammenfassung Diese Arbeit besch¨aftigt sich mit dem Miniballproblem, welches nach der kleinsten Kugel verlangt, die eine gegebene Menge von Kugeln im d-di- mensionalen Euklidschen Raum einschließt. Drei Fragen versuchen wir zu beantworten: Welche strukturellen Eigenschaften weist der ‘Miniball’ auf? Wie kann man ihn in der Praxis schnell berechnen? Und wie verh¨alt sich die Komplexit¨at des Problems in hohen Dimensionen? Von speziel- lem Interesse ist dabei, wie sich das Problem und die Algorithmen von der Variante unterscheiden, in welcher alle Eingabekugeln Punkte sind. Im Zusammenhang mit der ersten Frage zeigen wir, daß sich viele der schon bekannten Eigenschaften des Miniball von Punkten auf den Ballfall ¨ubertragen lassen. Einige wichtige Merkmale jedoch—sie erm¨oglichen es zum Beispiel, das Problem im Punktfall in subexponentieller Zeit zu l¨osen—verallgemeinern sich nicht, was wir anhand von Gegenbeispielen und angepaßten Charakterisierungen aufzeigen. Der strukturelle Unterschied zwischen dem Punkt- und Ballfall dr¨uckt sich auch in den Algorithmen aus. Wir stellen fest, daß Welzl’s Punkt- Algorithmus f¨urB¨alle nicht mehr funktioniert und gleichfalls eine Reduk- tion zu Unique Sink Orientations (USO) scheitert. Unser Beitrag dazu zeigt auf, daß eine einfache Annahme ¨uber die Lage der Eingabekugeln sowohl die Korrektheit von Welzl’s Algorithmus garantiert als auch eine Reduktion zum USO-Problem erm¨oglicht. Das Resultat kommt mit einer anschaulichen geometrischen Erkl¨arung und ist von praktischer Bedeu- tung, da damit Pivotieralgorithmen angewandt werden k¨onnen, die in der Praxis oft sehr schnell sind. Als Nebenprodukt entwickeln wir ein tieferes (aber noch unvollst¨andiges) Verst¨andnis f¨urjene Optimierungsprobleme, auf welche Welzl’s Algorithmus angewandt werden kann. Unser Beitrag zur dritten Frage ist zweigeteilt. Zum einen liefern wir einen kombinatorischen, Simplex-artigen Algorithmus f¨urden Punktfall. Dieser ist in der Praxis sehr effizient und robust, und wir beweisen, daß er nicht ‘zykeln’ kann. Zum anderen formulieren wir dass urspr¨ungliche Problem als mathematisches Programm und zeigen, daß sich dieses mit- tels G¨artner’s Algorithmus f¨ur Abstract Optimization Problems in subex- ponentieller Zeit l¨osen l¨aßt. Die resultierende Methode erfaßt auch an- dere mathematische Programme, insbesondere erhalten wir einen subex- ponentiellen Algorithmus zur Berechnung der Distanz zwischen den kon- vexen H¨ullen zweier Kugelmengen. Contents 1 Introduction 1 1.1 Background.......................... 1 1.2 Contributions and outline of the thesis . 7 2 Combinatorial frameworks 11 2.1 Complexitymodel ...................... 11 2.2 TheLP-typeframework . 14 2.2.1 LP-type problems . 15 2.2.2 Basis-regularity . 19 2.2.3 The MSW-algorithm . 21 2.3 TheAOPframework..................... 25 2.4 TheUSOframework ..................... 28 2.5 Weak LP-type problems . 30 2.5.1 Reducibility . 36 2.6 Strong LP-type problems . 43 3 Properties of the smallest enclosing ball 49 3.1 The problem . 49 3.2 Properties........................... 52 3.3 Properties of mb(U, V ).................... 62 3.4 LP-type formulations . 70 3.5 Smallest superorthogonal ball . 73 4 Smallest enclosing balls of points 79 4.1 Sketch of the algorithm . 79 4.2 The algorithm in detail . 81 4.3 Remarks............................ 87 v vi Contents 5 Smallest enclosing balls of balls 89 5.1 Welzl’s algorithm . 90 5.2 Algorithm msw ........................ 94 5.3 Signed balls and shrinking . 97 5.4 Inversion............................101 5.4.1 A dual formulation for sebb0 ............101 5.4.2 The distance to the convex hull . 104 5.5 Smallcases ..........................108 5.5.1 The unique sink orientation . 118 5.5.2 Symbolic perturbation . 123 6 More programs in subexponential time 127 6.1 A mathematical program for sebb0 .............128 6.2 Overview of the method . 131 6.3 Theoracle...........................135 6.3.1 The primitive for sebb0 ...............139 6.4 Thedetails ..........................142 6.5 Themainresult........................149 6.6 Further applications . 150 6.6.1 Smallest enclosing ellipsoid . 150 6.6.2 Distance between convex hulls of balls . 153 6.7 Remarks............................163 Bibliography 165 Notation N ....................................the natural numbers including 0 Rd .................................the d-dimensional Euclidean space d d d R+ ........................the positive orthant x R x 0 of R im(f) ..................the image f(x) x dom({ ∈f) of| a≥ function} f sgn(α) ..................the sign of{ a real| number∈ α (with} sgn(0) = 0) d Uδ(x) . the open δ-neighborhood x′ R x′ x < δ of the point x {Rd ∈for real| k radius− kδ > 0} ∈ d U˙ δ(x) ..................the dotted neighborhood Uδ(x) x of x R 2T ....................... V V T , i.e., the power set\ { of} the set∈ T U V ..................the{ symmetric| ⊆ } difference of the sets U and V U ⊕ V .......................U is any subset of V (U = V is possible) U ⊆ V .............