• search hit 12 of 19
Back to Result List

## Amortized analysis of exponential time- and parameterized algorithms: measure & conquer and reference search trees

### Amortisierte Analyse von exponentialzeit- und parameterisierten Algorithmen: Measure & Conquer und Reference Search Trees

• This work addresses the algorithmic tractability of hard combinatorial problems. Basically, we are considering \NP-hard problems. For those problems we can not find a polynomial time algorithm. Several algorithmic approaches already exist which deal with this dilemma. Among them we find (randomized) approximation algorithms and heuristics. Even though in practice they often work in reasonable time they usually do not return an optimal solution. If we constrain optimality then there are only two methods which suffice for this purpose: exponential time algorithms and parameterized algorithms. In the first approach we seek to design algorithms consuming exponentially many steps who are more clever than some trivial algorithm (who simply enumerates all solution candidates). Typically, the naive enumerative approach yields an algorithm with run time $\Oh^*(2^n)$. So, the general task is to construct algorithms obeying a run time of the form $\Oh^*(c^n)$ where $c<2$. The second approach considers an additional parameter $k$ besides the input size $n$. This parameter should provide more information about the problem and cover a typical characteristic. The standard parameterization is to see $k$ as an upper (lower, resp.) bound on the solution size in case of a minimization (maximization, resp.) problem. Then a parameterized algorithm should solve the problem in time $f(k)\cdot n^\beta$ where $\beta$ is a constant and $f$ is independent of $n$. In principle this method aims to restrict the combinatorial difficulty of the problem to the parameter $k$ (if possible). The basic hypothesis is that $k$ is small with respect to the overall input size. In both fields a frequent standard technique is the design of branching algorithms. These algorithms solve the problem by traversing the solution space in a clever way. They frequently select an entity of the input and create two new subproblems, one where this entity is considered as part of the future solution and another one where it is excluded from it. Then in both cases by fixing this entity possibly other entities will be fixed. If so then the traversed number of possible solution is smaller than the whole solution space. The visited solutions can be arranged like a search tree. To estimate the run time of such algorithms there is need for a method to obtain tight upper bounds on the size of the search trees. In the field of exponential time algorithms a powerful technique called Measure&Conquer has been developed for this purpose. It has been applied successfully to many problems, especially to problems where other algorithmic attacks could not break the trivial run time upper bound. On the other hand in the field of parameterized algorithms Measure&Conquer is almost not known. This piece of work will present examples where this technique can be used in this field. It also will point out what differences have to be made in order to successfully apply the technique. Further, exponential time algorithms for hard problems where Measure&Conquer is applied are presented. Another aspect is that a formalization (and generalization) of the notion of a search tree is given. It is shown that for certain problems such a formalization is extremely useful.
• Diese Arbeit diskutiert die algorithmische Handhabbarkeit schwieriger kombinatorischer Probleme. Grundsätzlich betrachten wir NP-schwere Probleme. Für diese Art von Problemen ist es unmöglich Polynomialzeit-Algorithmen zu finden. Mehrere algorithmische Ansätze existieren bereits, um diesem Dilemma zu entkommen. Darunter befinden sich (randomisierte) Approximations-Algorithmen und Heuristiken. Obwohl diese in annehmbarer Zeit eine Lösung liefern, ist diese im allgemeinen nicht optimal. Falls wir Optimalität voraussetzen dann gibt es nur zwei Methoden die dies gewährleisten: Exponentialzeit-Algorithmen und parameterisierte Algorithmen. Der erste Ansatz versucht Algorithmen zu finden, die intelligenter handeln als ein trivialer Algorithmus, der einfach alle Lösungskandidaten aufzählt. Typischerweise benötigt solch ein naiver Aufzählungsansatz eine Laufzeit von $\Oh^*(2^n)$. Deshalb ist die prinzipielle Aufgabe Algorithmen zu entwerfen, die eine Laufzeit der Form $\Oh^*(c^n)$, wobei $c<2$ gilt, garantieren. Der zweite Ansatz betrachtet einen weiteren Parameter $k$ neben der Größe der Eingabe $n$. Dieser Parameter soll weitere Information über das Problem zu Verfügung stellen und überdies eine typische Charakteristik beschreiben. Die Standard- Parameterisierung sieht $k$ als eine obere (beziehungsweise untere) Schrankev für die Größe der Lösung im Fall eines Minimierungsproblems (beziehungsweise Maximierungsproblems). Eine parameterisierter Algorithmus sollte dann in der Lage sein das Problem in einer Laufzeit $f(k)\cdot n^\beta$ zu l\"osen, wobei $\beta$ eine Konstante und $f$ unabhängig von $n$ ist. Prinzipiell versucht diese Methode die kombinatorische Komplexität bezüglich des Parameters $k$ zu messen, falls dies überhaupt möglich ist. Grundannahme hierbei ist, dass $k$ relativ klein ist verglichen mit der kompletten Eingabegrösse. In beiden Gebieten ist der Entwurf von Verzweigungs-Algorithmen eine Standard-Technik. Diese Algorithmen lösen das Problem indem sie auf eine ausgeklügelte Art und Weise den Lösungsraum traversieren. Schrittweise wählen sie ein Objekt aus der Eingabe aus und schaffen zwei neue Teilprobleme, eines in dem das Objekt der zukünftigen Lösung zugesprochen wird, und ein weiteres in dem es aus dieser Lösung ausgeschlossen wird. In beiden Fällen kann es sein, dass durch die Fixierung dieses einen Objekts weitere ebenfalls fixiert werden. Ist dies der Fall dann ist die Anzahl der besuchten möglichen Löungen kleiner als der gesamte Lösungsraum. Diese besuchten Lösungen können als Suchbaum betrachtet werden. Um die Laufzeit solcher Algorithmen zu bestimmen benötigt man eine Methode die scharfe obere Schranken bezüglich der Suchbaumgrösse bereitstellt. Zu diesem Zweck wurde im Bereich der Exponentialzeit-Algorithmen eine mächtige Methode entwickelte, die sich Measure & Conquer nennt. Sie wurde bereits erfolgreich auf viele Probleme angewandt, insbesondere auf Probleme wo andere Versuche fehlschlugen die triviale Laufzeitschranke zu unterbieten. Im Gegensatz dazu ist Measure&Conquer im Bereich der parameterisierten Algorithmen kaum bekannt. Diese Arbeit wird verschiedene Beispiele präsentieren, wo diese Methode in diesem Bereich angewandt werden kann. Darüber hinaus werden Exponentialzeit-Algorithmen für harte Probleme vorgestellt, die Measure\&Conquer anwenden. Ein weitere Aspekt ist, dass eine Formalisierung (und Generalisierung) des Begriffes Suchbaum gegeben wird. Es wird gezeigt, dass für bestimmte Probleme diese Formalisierung sehr nützlich ist.

$Rev: 13581$