Integral Methods for Quadratic Programming: Theory and Implementation

Integral Methods for Quadratic Programming: Theory and Implementation

Diss. ETH No. 20657 Integral Methods for Quadratic Programming: Theory and Implementation A dissertation submitted to ETH ZÜRICH for the degree of DOCTOR OF SCIENCES presented by YVES DOMINIQUE BRISE Dipl. Informatik-Ing. ETH born July 27, 1980 citizen of Allschwil BL, Switzerland accepted on the recommendation of Prof. Dr. Emo Welzl, examiner Dr. Bernd Gärtner, co-examiner Prof. Dr. Friedrich Eisenbrand, co-examiner 2012 Dedicated to my first child, who is waiting to be born; and no less to Werner, who would have been one of the few people to actually read this book. Abstract The contributions of this thesis are twofold. We show two theoretical results that are both related to quadratic programming. The first one concerns the abstract optimization framework of viola- tor spaces and the randomized procedure called Clarkson’s algorithm, which is associated with solving violator spaces. Historically, Clark- son’s algorithm was developed to solve linear programs, and provided the earliest practical linear-time algorithm for linear programs. The underlying concept of the problems solvable by this algorithm was later expanded to LP-type problems, and finally to violator spaces. Quadratic programming is also an LP-type problem. In a nutshell, the algorithm randomly samples from a set of constraints, computes an optimal solution subject to these constraints, and then checks whether the ignored constraints agree with the solution. If not, some form of re-sampling occurs, until an optimal solution is found that satisfies all constraints. Originally, to make the analysis go through, there used to be a preliminary test whether the random sample is good in some sense. We show that this test is not necessary and we give evidence that the modified version of Clarkson’s approach is the easiest version that can still be analyzed successfully. The second contribution concerns quadratic programming more di- rectly. It is well-known that a simplex like procedure can be applied to v quadratic programming – similar to the simplex algorithm for linear programming. The main computational effort in this algorithm comes from solving a series of linear equation systems that change gradually. We develop a method that allows for efficiently solving these systems under the assumption that (i) we want to do exact computations us- ing some arbitrary precision number type, and (ii) the input may be sparse, and that should be exploited. In particular, the tool of choice is the LU factorization of the matrix to invert, and we call our al- gorithm the integral LU factorization. We also give an algorithm to update the factorization subject to low rank changes of the original matrix, which covers the gradual changes during simplex iterations that we mentioned. Last but not least, a considerable portion of the work included in this thesis was devoted to implementing the integral LU factorization in the framework of the existing quadratic programming solver in the Computational Geometry Algorithms Library (CGAL). In the last two chapters we describe our implementation and the experimental results we obtained. vi Zusammenfassung Der Beitrag dieser Arbeit ist zweigeteilt. Wir zeigen zwei theoretische Resultate, die beide im Zusammenhang mit quadratischen Program- men stehen. Das erste betrifft die abstrakte Klasse von Optimierungsproble- men, die wir Verletzerräume nennen; insbesondere Clarkson’s Algo- rithmus, der dazu verwendet wird, um Verletzerräume zu lösen. His- torisch gesehen wurde Clarkson’s Algorithmus entwickelt, um lineare Programme zu lösen, und stellt den ersten praktikablen Linearzeit- Algorithmus für ebendiese dar. Die zugrunde liegende Beschreibung der Probleme, die durch diesen Algorithmus lösbar sind, wurde später auf LP-Typ Probleme, und schliesslich auf Verletzerräume ausgedehnt. Quadratische Programme gehören auch zu den LP-Typ Problemen. Kurz gesagt, macht der Algorithmus Folgendes: Aus der Menge der Nebenbedingungen wird eine zufällige Auswahl getroffen. Dann wird eine optimale Lösung unter diesen Nebenbedingungen berechnet und überprüft, ob eine der bislang vernachlässigten Nebenbedingungen diese Lösung verletzt. Falls dies der Fall ist, wird die zufällige Auswahl modifiziert, und eine neue Lösung berechnet. Dies wird so lange iteriert, bis alle Nebenbedingungen durch die aktuelle Lösung erfüllt sind. Ursprünglich gab es bei jeder zufälligen Auswahl einen Test, der überprüft hat, ob die Auswahl in einem bestimmten Sinne gut sei. vii Dies wurde getan, um die Laufzeit erfolgreich zu analysieren. Wir zeigen, dass diese Tests nicht nötig sind, und führen aus, dass der resultierende Algorithmus vermutlich die einfachste Form von Clark- son’s Algorithmus darstellt, die noch erfolgreich analysiert werden kann. Der zweite Beitrag betrifft quadratische Programme direkter. Es ist bekannt, dass ein Simplex-artiger Algorithmus auf quadratische Programme angewendet werden kann, analog zum Simplex Algorith- mus für lineare Programme. Der grösste Berechnungsaufwand bei dieser Methode entsteht aus der Notwendigkeit, eine Reihe von lin- earen Gleichungssystemen zu lösen, die sich graduell verändern. Wir entwickeln eine Methode, die diese Gleichungssysteme effizient löst unter der Annahme, dass wir (i) exakte Berechnungen mit einem Zahlentyp durchführen wollen, der eine beliebige Präzision erlaubt, und (ii) die Eingabe dünn sein kann, was ausgenützt werden soll. Konkret stützen wir uns dabei auf die LU Zerlegung der Matrix, die es zu invertieren gilt, und wir nennen unseren Algorithmus die integrale LU Zerlegung. Zusätzlich geben wir einen Algorithmus an, mit dem man die Zerlegung einer Matrix aktualisieren kann, angenommen die Matrix habe sich durch einen additiven Term niedrigen Ranges verän- dert. Dies verwenden wir um die graduellen Veränderungen während eines Iterationsschrittes des Simplex Algorithmus zu behandeln. Zu guter Letzt besteht ein beträchtlicher Teil des Aufwandes, dessen Resultate in dieser Arbeit besprochen werden, daraus, die inte- grale LU Zerlegung im Rahmengerüst des Lösers für quadratische Pro- gramme in der Computational Geometry Algorithms Library (CGAL) zu implementieren. In den letzten beiden Kapiteln besprechen wir diese Implementierung und die experimentellen Resultate, die wir er- halten haben. viii Acknowledgments First and foremost my thanks and acknowledgements go to my super- visor Bernd Gärtner and my professor Emo Welzl for their continuing support, their patience, and valuable input during all stages of the thesis. Many thanks go to Friedrich Eisenbrand as well, for inviting me to Lausanne and for agreeing to review my thesis. Second and very importantly I would like to thank the colleagues who have kindly agreed to help me proofread parts of the thesis. In alphabetical order they are Timon Hertli, Martin Jaggi, Robin Moser, Andreas Razen, and Sebastian Stich. During the time of my thesis it has been a great pleasure to work as part of the CGAL development team. I enjoyed meeting those engag- ing and welcoming people, in particular: Eric Berberich, Mikhail Bog- danov, Yacine Bouzidi, Manuel Caroli, Guillaume Damiand, Olivier Devillers, Pavel Emeliyanenko, Efi Fogel, Bernd Gärtner, Marc Glisse, Michael Hemmer, Michael Hoffmann, Menelaos Karavelas, Alexander Kobel, Sébastien Loriot, Luis Peñaranda, Sylvain Pion, Marc Pouget, Laurent Rineau, Fabrice Rouillier, Stéphane Tayeb, Monique Teil- laud, and Mariette Yvinec. Former members who have worked on the CGAL project – and to who I feel a connection even though I have never met them – include Kaspar Fischer, Sven Schönherr, and Frans Wessendorp. They have ix worked hard on the quadratic programming solver, so I could take up their work and try to make it even better. I am indebted to my colleagues from the Gremo group at ETH, for scientific discussions as well as for the occasional game session orthe Saturday night out: Robert Berke, Tobias Christ, Andrea Francke, Bernd Gärtner, Heidi Gebauer, Anna Gundert, Franziska Hefti, Ti- mon Hertli, Michael Hoffmann, Martin Jaggi, Vincent Kusters, Robin Moser, Gabriel Nivasch, Andreas Razen, Leo Rüst, Andrea Salow, Piotr Sankowski, Dominik Scheder, Eva Schuberth, Sebastian Stich, Marek Sulovský, Tibor Szabó, Patrick Traxler, Hemant Tyagi, Uli Wagner, and Philipp Zumstein. Two former members of the Gremo group – who I had the pleasure of doing a semester thesis with as a student – are Joachim Giesen and Dieter Mitsche. Similarly, it was my great pleasure to supervise Manuel Wettstein’s thesis on the Clarkson dimension together with Bernd Gärtner. Finally, my mother Sirkka, my wife Lily, my godchildren Arthur, Iida, and Linus, the other members of my family and my friends helped me find the peace of mind and the serenity that are indispens- able for having the resolve to finish such a big project – and that wasn’t always the easiest job in the world. Many thanks to them! x Contents Abstractv Zusammenfassung vii Acknowledgments ix Contents xi 1. Introduction1 1.1. An Optimization Problem....................1 1.1.1. Quadratic Programming.................1 1.1.2. Applications.......................3 1.1.3. Solution Methods.....................8 1.1.4. Integral Factorization.................. 11 1.1.5. An Abstract View.................... 14 1.2. Statement of Results....................... 17 2. Violator Spaces 19 2.1. Introduction............................ 20 2.2. Prerequisites........................... 25 2.2.1. The Sampling Lemma.................. 25 2.2.2. Definition of Violator Spaces.............. 26 2.3. Clarkson’s Algorithm

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    230 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us