Detailseite
Projekt Druckansicht

Entscheidungs- und Optimierungsprobleme für Graphen mit gegebener Baumzerlegung

Fachliche Zuordnung Theoretische Informatik
Förderung Förderung von 2008 bis 2015
Projektkennung Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 77821027
 
Erstellungsjahr 2017

Zusammenfassung der Projektergebnisse

Der Satz von Courcelle besagt, dass jedes in monadischer Prädikatenlogik zweiter Stufe (MSO) formulierbare Problem auf Graphen mit kleiner Baumweite in Linearzeit lösbar ist. In der Theorie findet dieses Resultat breite Anwendung, etwa im Bereich der parametrisierten Komplexitätstheorie. Das übergeordnete Ziel des vorliegenden Projektes war es, ein praxistaugliches Werkzeug zu entwickeln, welches entsprechend des Satzes von Courcelle für eine große Klasse von graphentheoretischen Problemen einsetzbar ist. Inzwischen ist dieses Werkzeug unter dem Namen "Sequoia" entstanden und steht unter einer liberalen Open-Source-Lizenz öffentlich zur Verfügung. Um das übergeordnete Ziel zu erreichen, musste in drei verschiedenen Bereichen gearbeitet werden. Der erste und zeitlich längste Teil bestand in der Schaffung der theoretischen Grundlagen. Der klassische Beweis beruht auf Automatentheorie und ist zwar konstruktiv, aber entsprechende Versuche anderer, daraus ein Werkzeug zu bauen, zeigten, dass dieser Ansatz zumindest direkt nicht erfolgversprechend ist. Die Konstruktion der Automaten stellte sich als unmöglich heraus. Inzwischen gibt es von Bruno Courcelle ein angepasstes Verfahren, das die Baumautomaten nicht vollständig konstruiert, sondern während ihres Laufs nur soweit aufbaut wie notwendig. Dieser Ansatz hat sich ebenfalls als funktionsfähig herausgestellt. Unser Ansatz war ein spieltheoretischer, welcher ebenfalls sehr darauf achtet, möglichst wenig unnötige Information zu speichern. Es liegt in der Natur dynamischen Programmierens, dass nicht nur das Ergebnis selbst, sondern auch viele weitere Nebenergebnisse berechnet werden. Der spieltheoretische Ansatz führt die Evaluierung einer Formel auf ein Spiel zwischen zwei Spielern zurück. Dabei dürfen sie auch auf dem "noch unbekannten" und "schon vergessenen" Teil des Graphen Züge durchführen, die aber stark abstrahiert werden. Durch sie kann aber der Spielbaum klein gehalten werden. Die sehr teuren Züge werden auf den Knoten eines aktuellen Bags der Baumzerlegung durchgeführt. Dieser grundsätzliche Ansatz kann auf verschiedene Arten umgesetzt werden und im Laufe der Projektlaufzeit wurde er immer wieder modifiziert und dadurch verbessert. Gleichzeitig wurde er auf Erweiterungen von MSO verallgemeinert und auch auf Clique- und Rankwidth-Zerlegungen ausgedehnt. (Letztere wurden nicht implementiert, da wir uns auf Baumzerlegungen konzentrieren wollten.) Im zweiten, praktischen Teil mussten diese Algorithmen korrekt und möglichst effizient implementiert, getestet und evaluiert werden. Dabei wurden Schwachstellen entdeckt, die dann wieder durch theoretische Verbesserungen am Algorithmus repariert wurden; ein Zyklus, der sich immer wieder wiederholte. Um ein wirklich nützliches Werkzeug zu schaffen, mussten in einem kleineren dritten Teil des Projekts schließlich auch Verbesserungen der Implementierung durchgeführt werden, die nicht auf dem Algorithmus beruhten. Hier handelte es sich um Techniken, die zum Beispiel bereits berechnete Ergebnisse effizient in einem Cache halten, besonders angepasste Hashfunktionen, Isomorphietests zwischen Spielbäumen usw. Diese Verbesserungen haben die Laufzeit und den Speicherverbrauch extrem reduzieren können, auch wenn sie asymptotisch eine kleinere Rolle spielen als die rein algorithmischen Verbesserungen. Heute kann man routinemäßig verschiedenste Optimierungs- und Entscheidungsprobleme mit "Sequoia" in kurzer Zeit lösen. Damit ist es zum Beispiel geeignet, schnelle Prototypen zu entwickeln oder Tests für andere Tools zu erstellen. Für Graphen, die gleichzeitig groß sind, aber kleine Baumweite haben, ist "Sequoia" in manchen Szenarien das einzige generische Werkzeug, welches überhaupt zum Ziel führt.

Projektbezogene Publikationen (Auswahl)

 
 

Zusatzinformationen

Textvergrößerung und Kontrastanpassung