Antrag auf Gewährung einer Sachbeihilfe bei der Deutschen ... - TZI
Antrag auf Gewährung einer Sachbeihilfe bei der Deutschen ... - TZI
Antrag auf Gewährung einer Sachbeihilfe bei der Deutschen ... - TZI
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Antrag</strong> <strong>auf</strong> <strong>Gewährung</strong> <strong>einer</strong> <strong>Sach<strong>bei</strong>hilfe</strong> <strong>bei</strong><br />
<strong>der</strong> <strong>Deutschen</strong> Forschungsgemeinschaft im<br />
Rahmes des Schwerpunktprogramms<br />
Algorithm Engineering<br />
Neuantrag<br />
12. Juli 2007<br />
1 Allgemeine Angaben<br />
1.1 <strong>Antrag</strong>steller<br />
• PD Dr. Stefan Edelkamp, Dortmund<br />
• (Derzeit: Emmy-Nöther-Nachwuchsgruppenleiter)<br />
• Geburtsjahr: 1969, Nationalität: deutsch<br />
• Fachbereich Informatik <strong>der</strong> Universität Dortmund<br />
Otto-Hahn-Straße 14, Raum 111<br />
44221 Dortmund<br />
Tel.: (0231) 755-5809<br />
Fax.: (0231) 755-5802<br />
• privat:<br />
Hainallee 2<br />
44139 Dortmund<br />
Tel.: (0231) 1891055<br />
1
1.2 Thema<br />
Externe zielgerichtete Suche in impliziten Graphen<br />
1.3 Kennwort<br />
External Goal-Directed Implicit Graph Search<br />
1.4 Fachgebiet und Ar<strong>bei</strong>tsrichtungen<br />
• Fachgebiet: Theoretische Informatik<br />
• Das Forschungsfeld <strong>der</strong> impliziten Graphsuche verbindet die Teilgebiete<br />
Algorithm Engineering, Künstliche Intelligenz und Verifikation.<br />
Ar<strong>bei</strong>tsrichtungen: Künstliche Intelligenz, Effiziente Algorithmen und<br />
Datenstrukturen, Graphenalgorithmen, Verteilte Systeme<br />
1.5 Voraussichtliche Gesamtdauer<br />
5 Jahre<br />
1.6 <strong>Antrag</strong>szeitraum<br />
2 Jahre<br />
1.7 Voraussichtlicher Beginn <strong>der</strong> För<strong>der</strong>ung<br />
1. Juni 2007<br />
1.8 Zusammenfassung<br />
Heutige externe Speichermedien (z.B. Festplatten o<strong>der</strong> Flashkarten) haben<br />
ein großes Volumen, sind verhältnismäßig preiswert, allerdings – verglichen<br />
mit Hauptspeicherstrukturen – sehr langsam. Aufgrund <strong>der</strong> langen Zugriffszeiten<br />
benötigt man demnach <strong>bei</strong> <strong>der</strong> Exploration von großen Problemen eine<br />
vom Betriebssystem abweichende und dem Suchverfahren angepasste, externe<br />
Datenorganisation. Die in den Anwendungen <strong>auf</strong>gespannten impliziten<br />
Problemgraphen übertreffen die Hauptspeichergröße innerhalb kurzer Zeit<br />
2
schnell um ein Vielfaches. Die zielgerichtete Exploration dient dazu, einen<br />
möglichst kleinen Teil des erzeugten Zustandsraumes anzuschauen, kann aber<br />
letztendlich nicht verhin<strong>der</strong>n, dass <strong>der</strong> Speicherplatzbedarf über die Hauptspeicherplatzgrenzen<br />
ansteigt.<br />
Mit diesem Projekt sollen die bereits erzielten Ergebnisse in <strong>der</strong> gerichteten,<br />
impliziten, symbolischen, externen und parallelen Suche gefestigt und<br />
<strong>auf</strong> weitere Anwendungsfel<strong>der</strong> ausgedehnt werden.<br />
2 Themenstellung<br />
Das Thema <strong>der</strong> externen, zielgerichteten Suche in impliziten Graphen verbindet<br />
die KI- mit <strong>der</strong> Sekundärspeicherplatzsuche.<br />
2.1 Algorithmik <strong>der</strong> Zielgerichteten Suche<br />
In etablierten Lehrbüchern <strong>der</strong> KI wie [85], tauchen zielgerichtete Suchverfahren<br />
selten als das <strong>auf</strong>, was sie eigentlich sind [40]: Kürzeste-Wege-Algorithmen<br />
in, durch eine Untere-Schranken-Funktion, umgewichteten Graphen. Auf <strong>der</strong><br />
an<strong>der</strong>en Seite haben Basisalgorithmen wie A* [47] bis <strong>auf</strong> einige wenige Ausnahmen<br />
[74] keinen Eingang in graphtheoretische Standardwerke gefunden.<br />
Diese Situation beginnt sich mit dem rasant wachsenen Forschungsgebiet<br />
Algorithm Engineering zu wandeln, da immer mehr praktisch orientierte Algorithmiker<br />
<strong>auf</strong> das A*-Verfahren setzen [95, 84].<br />
Gerade auch um die Verbindung von zielgerichteten KI-Such- und Graphsuchverfahren<br />
zu stärken, haben wir zusammen mit Stefan Schrödl und<br />
Sven König ein Lehrbuch mit dem Titel: Heuristic Search, Theory and Applications)<br />
verfasst, das <strong>bei</strong> Morgan K<strong>auf</strong>mann (Elsevier Science) unter Vertrag<br />
steht und 2007 erscheinen wird. Das Forschungsgebiet <strong>der</strong> Heuristischen<br />
Suche wird dort, wie auch im Schwerpunktprogramm Algorithm Engineering<br />
verankert, in die Bereiche Grundlagen (Algorithmen und Komplexitätsbetrachtungen)<br />
und Anwendungen (Handlungsplanung, Systemverifikation,<br />
Navigation, algorithmische Biologie und Robotik) geglie<strong>der</strong>t.<br />
Die Festlegung von Explorationsverfahren <strong>auf</strong> eine Suche im impliziten<br />
Zustandsgraphen erfor<strong>der</strong>t zeit- und platzeffiziente Implementierungen für<br />
Wörterbücher zur Verwaltung <strong>der</strong> besuchten und expandierten Knoten. Zur<br />
internen Speicherung gibt es <strong>auf</strong>bauend <strong>auf</strong> <strong>der</strong> Ar<strong>bei</strong>t von [15] zum perfek-<br />
3
ten Hashing aktuelle Studien, die den Platzverbrauch weiter bis an die informationstheoretische<br />
Grenze drücken, ohne die konstante Zeitkomplexität zu<br />
beeinträchtigen [80]. So ist Cuckoo Hashing [81] ein leicht zu implementierendes<br />
Verfahren, das die Daten <strong>auf</strong> zwei Tabellen verteilt. In [73] untersuchen<br />
wir inkrementelle Hashadressberechnungen in konstanter Zeit. Mit Suffixlisten<br />
[38] stellen wir eine einfache Methode zur Platzoptimierung vor, die<br />
die Bitcodierung eines Zustandes in zwei Teile <strong>auf</strong>teilt. Die Implementierung<br />
nutzt Puffer, wie sie auch <strong>bei</strong> Externspeicherplatzverfahren verwendet werden.<br />
In A* werden Zustandsmengen entlang <strong>einer</strong> Kostenfunktion f = g +h in<br />
<strong>einer</strong> Vorrangwarteschlange verwaltet (g entspricht den bisherigen Pfadkosten<br />
und h dem Schätzwert <strong>der</strong> verbleibenden Zieldistanz). In [42, 41] schlagen<br />
wir eine effiziente Implementierung mit Weak-Heaps vor. Relaxed Weak-<br />
Queues [44] weiten Weak-Heaps zu <strong>einer</strong>, den etablierten Fibonacci-Heaps in<br />
allen Belangen vorzuziehenden, Datenstruktur aus. Die von Fibonacci-Heaps<br />
bekannten Komplexitäten sind in <strong>einer</strong> zudem einfacheren Implementierung<br />
worst-case, anstatt amortisiert.<br />
Ein entscheiden<strong>der</strong> Schritt in Richtung effektiver Heuristiken sind Musterdatenbanken<br />
[16]. Sie haben zur erstmaligen optimalen Lösung zufälliger<br />
Konstellationen des Zauberwürfels geführt [65], und die Erweiterung <strong>auf</strong> mehrere,<br />
disjunkte Datenbanken hat im (n 2 −1)-Puzzle den Effekt um Größenordnungen<br />
verstärkt [67]. Musterdatenbanken sind jedoch sehr speicherintensiv,<br />
da sie vollständigen Explorationen von Problemabstraktionen entsprechen.<br />
Sie liefern untere Schranken, die wie<strong>der</strong>um optimale Lösungen in <strong>der</strong> konkreten<br />
Suche garantieren.<br />
2.2 Externspeicherplatzalgorithmen<br />
Aufgrund <strong>der</strong> rasanten Entwicklungen <strong>der</strong> Computer-Hardware ergibt sich<br />
eine immer größer werdende Diskrepanz existieren<strong>der</strong> Technologie zum Standardmodell<br />
<strong>der</strong> von-Neumann-Architektur. Wesentlich dazu <strong>bei</strong>getragen hat<br />
die Speicherhierarchie heutiger Rechner [86] 1 , die sich in Register, (Multi-<br />
Level) Cache(s), Hauptspeicher und verschiedene Sekundärspeichermedien<br />
glie<strong>der</strong>t. Zudem werden sich die Unterschiede im Zugriffsverhalten <strong>auf</strong>einan-<br />
1 Mit einem Übersichtsartikel in [86] haben wir eine erste Brücke zwischen <strong>der</strong> Speicherplatzproblematik<br />
in <strong>der</strong> KI und Externspeicherplatzgraphalgorithmen geschlagen.<br />
4
<strong>der</strong>folgen<strong>der</strong> Speicherschichten in <strong>der</strong> Zukunft wohl weiter vergrößern.<br />
Externspeicherplatzmedien immer preiswerter. Heutzutage kann z.B. für<br />
ca. 500 Euro eine Festplattenkapazität von einem Terabyte und mehr erreicht<br />
werden, während die <strong>der</strong>zeitigen Hauptspeichergrößen selten wenige Gigabytes<br />
übersteigen. Im Folgenden konzentrieren wir uns demnach <strong>auf</strong> Externspeicherplatzalgorithmen,<br />
kurz externe Algorithmen, die den Sekundärspeicher<br />
kontrolliert nutzen anstatt sich <strong>auf</strong> die Speicherverwaltung des Betriebssystemes<br />
zu verlassen. Damit können Explorationsfragestellungen auch oberhalb<br />
<strong>der</strong> Hauptspeicherplatzgrenze effizient behandeln werden.<br />
Externspeicherplatzverfahren [86] werden in <strong>der</strong> Anzahl von Blockzugriffen<br />
(I/Os) gemessen, da die interne Verar<strong>bei</strong>tungszeit im Vergleich zum Externzugriff<br />
oft vernachlässigbar klein ist 2 . Des Weiteren nimmt man in <strong>der</strong><br />
Theorie externer Verfahren einen unbegrenzten Speicher an. Zur vereinfachenden<br />
Notation werden externe Algorithmen relativ zur Sortierkomplexität<br />
sort(N), d.h. <strong>der</strong> Zahl von I/Os zur Sortierung von N Objekten, und <strong>der</strong> Lesekomplexität<br />
scan(N), d.h. <strong>der</strong> Zahl von I/Os zum Lesen von N Objekten<br />
bewertet.<br />
Die externe Exploration expliziter Graphen ist in <strong>der</strong> praktischen Entwicklung<br />
von Algorithmen (bzw. im Algorithm Engineering) ein schon seit<br />
geraumer Zeit intensiv studiertes Gebiet [1, 61]. Hier<strong>bei</strong> geht man davon aus,<br />
dass alle Knoten und Kanten eines Graphen <strong>auf</strong> <strong>der</strong> Festplatte als Eingabe<br />
für den Algorithmus vorliegen. Durch die Relevanz in vielen Bereichen ist es<br />
wenig erstaunlich, das in einem hochdotierten internationalen Wettbewerb<br />
(9th DIMACS Challenge 3 ) die Wegsuche in Hauptspeicher übersteigenden<br />
Graphen zur Kernfrage des Algorithm Engineering <strong>auf</strong>gestiegen ist. Viele<br />
externe expliziten Graphsuchverfahren sind verglichen mit Suche in impliziten<br />
(d.h. durch die Anwendung von Transformationsregeln <strong>auf</strong>gespannten)<br />
Graphen verhältnismäßig ineffizient. So benötigt die I/O-effiziente Breitensuche<br />
von Munagala und Ranade in ungerichteten Graphen G = (V, E) insgesamt<br />
O(|V | + sort(|V | + |E|)) I/Os [77], wo<strong>bei</strong> O(|V |) I/Os zum Zugriff<br />
<strong>der</strong> Knotenadjazenzen einen Flaschenhals darstellen. Für planare (und an<strong>der</strong>e<br />
reguläre) Graphen mit |E| = O(|V |) können kürzeste Wege hingegen<br />
in O(sort(|V |)) I/Os gefunden werden [90]. Ein verbesserte Komplexität für<br />
2 In unseren Experimenten haben wir festgestellt, dass in vielen Fällen die interne Ar<strong>bei</strong>t<br />
substantiell ist. Neben <strong>der</strong> Ar<strong>bei</strong>tsverteilung von interner und externer Ar<strong>bei</strong>t, führen<br />
mehrere Prozessoren somit oft zu <strong>einer</strong> signifikanten Geschwindigkeitssteigerung.<br />
3 Siehe http://www.dis.uniroma1.it/∼challenge9.<br />
5
externes BFS in ungerichteten Graphen liefert das Resultat von [75] mit<br />
O <br />
|V | · scan(|V | + |E|) + sort(|V | + |E|) <br />
I/Os. Mittlerweile wurde die-<br />
ser Algorithmus erfolgreich implementiert [2]. Zumindest für die explizite<br />
Repräsentation eines Graphen ist auch die externe Tiefensuche nicht aussichtslos.<br />
Falls die interne Besucht-Liste den Hauptspeicher sprengt, werden<br />
einfach alle besuchten Nachfolger in den Adjazenzlisten <strong>auf</strong> Platte gelöscht<br />
(markiert). Da <strong>der</strong> Fall maximal O(|V |/|M|) mal <strong>auf</strong>tritt, erreicht man eine<br />
L<strong>auf</strong>zeit von O(|V |/|M| · scan(|E|) I/Os.<br />
Im Bereich <strong>der</strong> externen Suche impliziter Graphen gibt es erst in <strong>der</strong> letzten<br />
Zeit vermehrt einschlägige Ar<strong>bei</strong>ten [66, 96, 63]. Eines <strong>der</strong> bemerkenswertesten<br />
Resultate ist die vollständige Breitensuche des 15-Puzzles mit insgesamt<br />
16!/2 = 10, 461, 394, 944, 000 Zuständen [68]. Hier<strong>bei</strong> wurden nicht weniger<br />
als 1.4 Terabyte Festplattenspeicher und mehr als drei Wochen Rechenzeit<br />
beansprucht. Das 30 Scheiben (4 Stapel) Tower-of-Hanoi Problem spannt<br />
einen Zustandsraum von 4 30 = 1, 152, 921, 504, 606, 846, 976 Zuständen <strong>auf</strong><br />
und wurde mit <strong>einer</strong> Mehrzahl von Techniken <strong>auf</strong> 1.3 Terabytes Festplattenspeicher<br />
in 28 Tagen optimal gelöst [64].<br />
Eng verwandt mit <strong>der</strong> Externalisierung ist auch die Verteilung <strong>auf</strong> mehrere,<br />
von einan<strong>der</strong> unabhängig operierende Prozessoren. Die geringe Kommunikation<br />
zwischen den Instanzen wird über Dateien geregelt. Global zugängliche<br />
Ar<strong>bei</strong>tswarteschlangen steuern den organisierten Abl<strong>auf</strong>. Tiefensuch-basierte<br />
Verfahren eigenen sich schlecht zur Parallelisierung, da sie – im Gegensatz<br />
zur Breitensuche – inhärent sequentiell sind [83]. Neue Ar<strong>bei</strong>ten von Gerard<br />
Holzmann 4 belegen, dass <strong>auf</strong> Multi-Core Architekturen durch eine Aufteilung<br />
des Suchbaumes in Schichten sehr gute Beschleunigungen erreicht werden<br />
können. Er stellt in s<strong>einer</strong> Ar<strong>bei</strong>t damit die Partitionierung des Suchraumes<br />
anhand <strong>einer</strong> Hashfunktion wegen des großen Kommunikations<strong>auf</strong>wandes in<br />
Frage.<br />
Die Hauptbeobachtung von unserer Forschungsgruppe ist, dass diejenigen<br />
Algorithmenentwürfe, die sich vorerst an <strong>einer</strong> effektiven Externalisierung<br />
und dann an <strong>einer</strong> Parallelisierung orientieren, <strong>auf</strong> Mehrprozessormaschinen<br />
und sogenannten Clustern für größere Probleme einen sehr guten Parallelisierungsgrad<br />
erreichen. Dies mag unter an<strong>der</strong>em daran liegen, dass parallele<br />
Suchalgorithmen [60] entwe<strong>der</strong> <strong>auf</strong> dem recht wirklichkeitsfremden PRAM-<br />
Modell entwickelt o<strong>der</strong> für spezielle Hardware-Architekturen konzipiert wer-<br />
4 Vortrag im Rahmen <strong>der</strong> Verleihung des Ehrendoktors Dezember 2006 in Twente<br />
6
den, jedoch die Speicherplatzproblematik nicht ausreichend berücksichtigen.<br />
3 Eigene Ar<strong>bei</strong>ten<br />
In unserer Nachwuchsforschergruppe haben wir uns hauptsächlich <strong>auf</strong> Fragestellungen<br />
in <strong>der</strong> externen Handlungsplanung und Verifikation konzentriert.<br />
Eine Ausnahme macht die externe Routenplanung. Hier liegen die Graphen<br />
z.B. <strong>auf</strong> Flashkarten o<strong>der</strong> CD/DVD vor. Sie sollen nach einem (mehreren)<br />
Start-Zielpfaden durchsucht werden. Als eine Beschleunigungstechnik dient<br />
die zielgerichtete Suche mit <strong>der</strong> Luftdistanz zwischen dem aktuellen und<br />
dem Zielort als untere Schranke. Ausgangspunkt unserer ersten Untersuchung<br />
in [40] war es, die Anzahl <strong>der</strong> Seitenfehler durch eine gesteigerte Lokalität<br />
und einen geringen Mehr<strong>auf</strong>wand in <strong>der</strong> Anzahl <strong>der</strong> betrachteter Knoten drastisch<br />
zu veringern. Da<strong>bei</strong> wurde <strong>der</strong> in <strong>der</strong> Ebene eingebettete Graph nach<br />
Koordinaten eingeteilt. Die Ar<strong>bei</strong>t manifestiert die erste gelungene Kombination<br />
von gerichteten Such- und Externspeicherplatzverfahren. Neuere Ar<strong>bei</strong>ten<br />
unserer Forschungsgruppe beschäftigen sich in dem Themengebiet mit<br />
<strong>der</strong> automatischen Inferenz von Karten aus GPS-Spuren zur verbesserten<br />
Navigation. Wir haben sowohl ein <strong>auf</strong> geometrischen Ansätzen basierendes<br />
Off-Line Verfahren [34] als auch ein On-Line Lernalgorithmus [9] entwickelt.<br />
Der erste Algorithmus setzt LEDA [76] ein und das zweite Verfahren nutzt<br />
eine hierarchischen Glie<strong>der</strong>ung <strong>der</strong> Welt (wie sie z.B. <strong>bei</strong> Google Earth verwendet<br />
wird 5 ). Beide Verfahren lassen sich gut externalisieren. Im ersten Fall<br />
bieten sich externe geometrische Algorithmen an [86] (z.B. aus den Bibliotheken<br />
LEDA-SM [13], STXXL [14] und TPIE [91] 6 ), im zweiten Fall findet<br />
eine verteilte Verar<strong>bei</strong>tung <strong>auf</strong> <strong>der</strong> Karte statt, wenn die betroffenen Kacheln<br />
zweier zu verar<strong>bei</strong>ten<strong>der</strong> Spuren paarweise disjunkt sind.<br />
3.1 Externe Handlungsplanung<br />
Handlungsplanung [78] ist die Aufgabe, für eine Problembeschreibung (in<br />
einem allgemeinen Beschreibungsformalismus) eine möglichst kostengünstige<br />
Auswahl von Aktionen zur Verwirklichung eines Planzieles zu berechnen.<br />
5 Erste positive Ergebnisse <strong>der</strong> Anbindung an Google Map liegen im Rahmen <strong>einer</strong><br />
gerade abgeschlossenen Diplomar<strong>bei</strong>t vor.<br />
6 http://www.cs.duke.edu/TPIE<br />
7
In [33] stellen wir die erste Ar<strong>bei</strong>t zur gerichteten externen Planung vor.<br />
Das Verfahren External-A* verbindet die Komponenten Frontier-Suche [69],<br />
verspätete Duplikatserkennung [66] und A* [82] zu einem Algorithmus. Der<br />
Algorithmus ist zeitgleich zu [63] entstanden, wo<strong>bei</strong> jeweils zwei Komponenten<br />
verbunden wurden (so ist die Frontier-Suche mit verspäteter Duplikatserkennung<br />
eine implizite Graphsuchvariante des Algorithmus von Munagala<br />
und Ranade). Zusammen mit den Ar<strong>bei</strong>ten von Zhou und Hansen zur externen<br />
strukturierten Duplikatserkennung basierend <strong>auf</strong> geeignete Problemabstraktionen<br />
[96, 97, 98] bilden wir somit einen <strong>der</strong> drei Grundpfeiler <strong>der</strong> externen<br />
KI-Exploration. Die strukturierte Duplikatserkennung in Handlungsplanungsdomänen<br />
beruht desweiteren <strong>auf</strong> unserem Ansatz zur automatischen<br />
Abstraktion und Zustandsminimierung [24]. Jedem abstrakten Zustand entspricht<br />
eine Datei. Da die Nachbarschaftsbeziehung in <strong>der</strong> Abstraktion zum<br />
Teil erhalten bleibt, können alle Duplikate von Nachfolgern <strong>einer</strong> (<strong>auf</strong> einen<br />
abstrakten Zustand abgebildeten) Zustandsmenge in den durch die Abstrakte<br />
Adjazenz definierten Nachbardateien gefunden werden. Nur sie müssen zur<br />
internen Duplikatselimination in den Hauptspeicher geladen werden.<br />
Die symbolische Handlungsplanung nutzt binäre Entscheidungsdiagramme<br />
(BDDs) zur effizienten Repräsentation <strong>der</strong> Zustandsmengen [25]. Trotz<br />
symbolischer Verfahren wird <strong>der</strong> Hauptspeicher oft zu klein. Dieser Speicherengpass<br />
kann <strong>bei</strong> <strong>der</strong> automatischen Generierung von Schätzwerten durch<br />
symbolischen Musterdatenbanken [37, 16, 17] entstehen o<strong>der</strong> <strong>bei</strong> <strong>der</strong> eigentlichen<br />
Exploration. Im zweiten Fall greift die organisierte A*-Suche innerhalb<br />
<strong>einer</strong> Matrix von Zustandsmengen, die von g- bzw. h-Werten <strong>auf</strong>gespannt<br />
wird [39]. Jedem Matrixeintrag wird ein BDD zugeordnet. In <strong>der</strong> entsprechenden<br />
Externalisierung werden die BDDs in Dateien ausgelagert [19]. Der<br />
Speicherplatzgewinn im Vergleich zu internen Verfahren ist deutlich.<br />
Wir haben für den internationalen Planungswettbewerb 2006 erfolgreich<br />
an zwei wesentlichen Erweiterungen unseres Planungssystems MIPS [18] zur<br />
Bear<strong>bei</strong>tung von Plan- bzw. Präferenzconstraints [45] gear<strong>bei</strong>tet. Inklusive<br />
2006 wurde MIPS nach 2000 und 2002 somit dreimal in Folge prämiert 7 .<br />
Die Variante MIPS-BDD [21, 20] nutzt eine Verbesserung <strong>der</strong> Zustandscodierung<br />
und symbolische Entscheidungsdiagramme, kurz BDDs zur opti-<br />
7 Im Jahre 2004 waren wir gemeinsam mit Jörg Hoffmann Ausrichter dieses alle zwei<br />
Jahre stattfindenden Wettbewerbs und konnte folglich nicht als Teilnehmer antreten, siehe<br />
[52, 51]. Eine Veröffentlichungsinitiative des Wettbewerbs 2006 (voraussichtlich Journal<br />
of Artificial Intelligence) läuft <strong>der</strong>zeit noch.<br />
8
malen Planfindung. In 2006 wurde die Exploration den Anfor<strong>der</strong>ungen <strong>einer</strong><br />
kostenoptimalen Suche angepasst; <strong>der</strong> Schlüssel dazu ist eine effiziente<br />
BDD-Darstellung <strong>der</strong> (linearen) Kostenfunktion [5]. Derzeit aussichtreichster<br />
Kandidat für Suchheuristiken zur optimalen Handlungsplanung sind automatisch<br />
erzeugte, symbolische Musterdatenbanken die <strong>auf</strong> Problemabstraktionen<br />
beruhen. Eine aktuelle Erweiterung sind Optimierungen von Musterdatenbanken<br />
mittels genetische Algorithmen [23], einem wichtigen Schritt in<br />
die Richtung <strong>einer</strong> automatischen Generierung von Heuristiken.<br />
Der zweite Ansatz [22, 32] versucht, die explizite Planung zu verbessern.<br />
Im Limit liefert das Verfahren kostenoptimale Ergebnisse [27], wurde aber<br />
<strong>auf</strong>grund <strong>der</strong> Realzeitbedingungen im Wettbewerb <strong>auf</strong> suboptimale Pläne<br />
eingeschränkt. Ausgehend von Metric-FF [49] ermöglicht die Variante MIPS-<br />
XXL die temporale Planung inklusive Zeitfenstern und neuerdings auch metrische<br />
Planung mit Plan- und Präferenzconstraints. MIPS-XXL ist das einzige<br />
teilnehmende Planungssystem, das Festplattenspeicherplatz nutzt. Es<br />
zeigte Effizienzvorteile selbst unter den restriktiven Wettbewerbsbedingungen<br />
von maximal einem Gigabyte RAM und 30 Minuten Rechenzeit. Die<br />
größte Exploration (außerhalb des Wettbewerbes) benötigte 450 Gigabytes<br />
Festplattenspeicher <strong>bei</strong> konstantem Hauptspeicher von weniger als einem Gigabyte.<br />
Unser Bemühen zur besseren Akzeptanz und Nutzung von Handlungsplanungssystemen<br />
wird durch eine flexible Oberfläche gestützt, die u.a. interaktiv<br />
die Modellierung <strong>einer</strong> Planungsdomäne unterstützt. Mit unserer<br />
Entwicklung haben wir 2005 an dem internationalen Knowledge-Engineering<br />
Wettbewerb teilgenommen, den wir 2007 zusammen mit Jeremy Frank (NA-<br />
SA/AMES) ausrichten. Die Idee des Wettbewerbs ist, in <strong>einer</strong> Client-Server<br />
Architektur Simulatoren mit integrierten Planungssystemen zu steuern.<br />
3.2 Externe Modellprüfung<br />
Die Modellprüfung [12] validiert die Korrektheit (<strong>einer</strong> Sicherheits- o<strong>der</strong> Lebendigkeitseigenschaft<br />
innerhalb) eines formalen Systems. Häufig werden Automaten<br />
genutzt, um sowohl das Modell als auch die gewünschte Eigenschaft<br />
zu beschreiben. Der Lehrheitstest des Schnitts zwischen den Sprachen des<br />
Modells und <strong>der</strong> Spezifikation kann zurückgeführt werden <strong>auf</strong> die Suche nach<br />
einem akzeptierenden Zyklus im (synchronen) Produkt <strong>der</strong> <strong>bei</strong>den Automaten.<br />
Tarjan’s Linearzeitalgorithmus zur Berechnung aller starken Zusammen-<br />
9
hangskomponeten [89] ist zur Modellanalyse ungeeignet, da er den gesamten<br />
Zustandsgraphen (einmal vorwärts und einmal rückwärts) durchläuft. Um<br />
akzeptierende Zyklen zu finden, berechnet die geschachtelte Tiefensuche den<br />
globalen Zustandsgraphen hingegen durch eine inkrementelle Konstruktion<br />
<strong>der</strong> Schnittmenge on-the-fly [56].<br />
Ein großer Anteil <strong>der</strong> von uns entwickelten Verfahren betrifft die gerichtete<br />
Exploration nach Designfehlern in Softwaremodellen. Die wohl sichtbarsten<br />
Modellprüfer SPIN [55] und UPPAAL/CORA [6] wurden erfolgreich<br />
externalisiert. In [57] wurde ein erstes Verfahren zur gerichteten Analyse von<br />
verteilter Software vorgestellt. Da<strong>bei</strong> wurde, neben theoretischen Resultaten<br />
über die erzielte optimale Komplexität von O(scan(|V |) + sort(|E|)) I/Os,<br />
das in <strong>der</strong> Dissertation von Alberto Lluch-Lafente [71] entwickelte, gerichtete<br />
SPIN-Derivat HSF-SPIN erfolgreich externalisiert. Mit <strong>der</strong> Externalisierung<br />
konnten Promela-Modelle (die Eingabesprache für SPIN) bis weit über die<br />
Hauptspeicherplatzgrenze hinaus analysiert werden. Wir haben so <strong>auf</strong> ca.<br />
3 Terabytes Festplattenspeicher mit 3.6 Gigabytes RAM eine Verschränkung<br />
in einem Kommunikationsprotokoll gefunden (noch nicht publiziert). Die vergleichend<br />
durchgeführte Exploration dauerte 20 Tage <strong>auf</strong> einem Prozessor.<br />
Der strukturierte Abl<strong>auf</strong> zur gerichteten Fehlersuche in IO-HSF-SPIN<br />
wurde in [58] dazu genutzt, die obige externe Exploration mit mehreren<br />
Prozessoren durchzuführen. Eine <strong>auf</strong> 4 Dualprozessoren durchgeführte Exploration<br />
reduzierte die Rechenzeit <strong>auf</strong> 8 Tage. Selbst <strong>auf</strong> <strong>einer</strong> Einprozessormaschine<br />
kann ein signifikanter L<strong>auf</strong>zeitvorteil erreicht werden (während<br />
<strong>der</strong> eine Prozess sich um die Dateibehandlung kümmert kann <strong>der</strong> zweite<br />
Prozess sich <strong>der</strong>weil intern um die Generierung <strong>der</strong> Nachfolger und <strong>der</strong>en<br />
Bewertung kümmern. Eine aktuelle Ar<strong>bei</strong>t [28] betrifft die erfolgreiche Behandlung<br />
von LTL-Eigenschaften. Hier stellt sich das Problem, das sich die<br />
geschachtelte Tiefensuche, wie sie in SPIN verwendet wird, nicht zur Externalisierung<br />
eignet und sich Tarjans klassischer Algorithmus nicht zur On-the-<br />
Fly Analyse eignet. Der Schlüssel zum Erfolg liegt in <strong>der</strong> Konvertierung eines<br />
Lebendigkeits- in ein Sicherheitseigenschaftsproblem [88]. Da<strong>bei</strong> wird <strong>der</strong><br />
Zustandsvektor verdoppelt, um die Suche nach einem Zyklus von <strong>der</strong> Suche<br />
des Zyklenbeginns zu trennen. Basierend <strong>auf</strong> die Idee konnten wir monotone<br />
Schätzfunktionen angeben und den externen Modellprüfer IO-HSF-SPIN mit<br />
signifikantem Speed-Up <strong>auf</strong> die parallele Eigenschaftsprüfung erweitern.<br />
Wir haben auch den <strong>auf</strong> zeitlichen Automaten (engl. priced timed automata<br />
[3]) beruhenden Modellprüfer UPPAAL/CORA erfolgreich externali-<br />
10
siert [59]. Zeitliche Automaten sind eine Teilmenge hybri<strong>der</strong> Automaten [48]<br />
durch eine Mehrzahl von zurücksetzbaren Uhren gekennzeichnet. UPPAAL<br />
selbst nutzt die effiziente Darstellung und Verar<strong>bei</strong>tung von zeitlicher Unschärfe<br />
durch Kürzeste-Wege-Netze ein. Die Erweiterung UPPAAL/CORA<br />
ergänzt zur Erreichbarkeitsanalyse basierend <strong>auf</strong> Zeitzonen (Sammlung von<br />
Hyperebenen zur symbolischen Darstellung von Uhrzeiten) eine Kostenanalyse.<br />
Sie wird in <strong>der</strong> Praxis insbeson<strong>der</strong>e zur Berechnung eines kostenoptimalen<br />
und ressourcenbeschränkten Scheduling eingesetzt. Im Gegensatz zu den vorangehenden<br />
Algorithmen, wurde nicht <strong>der</strong> A*-Algorithmus nachempfunden,<br />
son<strong>der</strong>n <strong>der</strong> Branch-and-Bound Algorithmus. Wir haben dazu eine Strategie<br />
des externen, iterativen Erweiterns entwickelt, die schnell zu guten und<br />
letztendlich zu optimalen Lösungen führt.<br />
Im Bereich <strong>der</strong> Programmverifikation setzt die Gruppe um Wilhelm Visser<br />
(NASA/AMES) in Kooperation mit uns <strong>auf</strong> heuristische Suchverfahren. Der<br />
Java-Pathfin<strong>der</strong> (JPF) nimmt den Java Byte-Code als Ausgangspunkt und<br />
exploriert den Suchraum aller möglichen nebenläufigen Prozeßabläufe. Er<br />
baut somit <strong>auf</strong> <strong>einer</strong> virtuelle Machine <strong>auf</strong>. In <strong>der</strong> dem <strong>Antrag</strong>steller betreuten<br />
Dissertation von Tilman Mehler [72] wurde inspiriert von JPF ein c/c++-<br />
Modellprüfer entwickelt, <strong>der</strong> <strong>auf</strong> <strong>einer</strong> virtuellen Maschine zur Interpretation<br />
von Maschinensprachcode basiert. Mittlerweile wurde <strong>der</strong> von Tilman entwickelte<br />
Programmmodellprüfer um verschiedene Externalisierungsmöglichkeiten<br />
erweitert [31]. Da<strong>bei</strong> wird intern ein Suchbaum an Minizuständen verwaltet<br />
und die immens großen Systemzustände <strong>auf</strong> Festplatte verteilt (Stichwort:<br />
external collapse compression. An das Suchverfahren angepasste, Datenstruktur<br />
minimieren die Anzahl von Plattenzugriffen. Eine weitere Studie<br />
betrifft die Externalisierung von partiellen Hashverfahren [26].<br />
Unsere Algorithmen sind in <strong>der</strong> Anwen<strong>der</strong>puffergröße frei skalierbar (von<br />
wenigen bis zu Millionen Einträgen). Sind die Anwen<strong>der</strong>puffer groß, dann<br />
erfor<strong>der</strong>t dies weniger Explorationszeit (da viel Ar<strong>bei</strong>t im Haupspeicher erledigt<br />
werden kann); sind diese aber (z.B. <strong>auf</strong>grund mobiler Hardware) klein,<br />
dann kann <strong>der</strong> mangelnde interne Speicherplatz durch eine größere Explorationszeit<br />
ausgeglichen werden.<br />
11
4 Ar<strong>bei</strong>tsplan<br />
In den ersten 2 <strong>der</strong> beantragten 5 Jahre beabsichtigen wir die folgenden<br />
Schwerpunkte zu setzen.<br />
4.1 Ar<strong>bei</strong>tspaket I: Externe Exploration in Unendlichen<br />
Zustandsräumen<br />
Nummerische Probleme spannen einen unendlichen Suchraum <strong>auf</strong>, den Planungssysteme<br />
wie LPG [46] und SGPlan [94] aber auch MIPS-XXL selektiv<br />
analysieren. Auf <strong>der</strong> an<strong>der</strong>en Seite inferieren aktuelle SAT-Planer [53] für<br />
ausgewählte Probleme eine endliche Zustandsbeschreibung (Es fehlt <strong>der</strong>zeit<br />
noch ein Vergleich zwischen SAT- und BDD-Algorithmen, den wir liefern<br />
wollen). Mit <strong>einer</strong> Automatendarstellung für Zustandsmengen, die aus <strong>der</strong><br />
Presburger Arithmetik gewonnen werden, ist jedoch auch eine symbolische<br />
Planung in unendlichen Räumen durchaus möglich [62]. Der Grundgedanke<br />
ist, dass die Automatendarstellung von Zustandsmengen (und Operatoren)<br />
die BDD-Darstellung in <strong>der</strong> symbolischen Suche ablöst [7, 4, 43].<br />
Derzeit entwickeln wir einen Planer, <strong>der</strong> minimierte Automaten für Initialund<br />
Zielzustandsmengen, sowie den Aktionen erstellt und über eine symbolische<br />
Bildberechnung (eine Kombination aus Projektion und Automatenprodukt)<br />
den Zustandsraum <strong>auf</strong>spannt. Der funktionierende Prototyp basiert<br />
<strong>auf</strong> <strong>einer</strong> (in <strong>einer</strong> Projektgruppe) erstellten Automaten-Bibliothek. Wir beabsichtigen<br />
die <strong>der</strong>zeit ungerichtete Suche – wie im Fall von BDDs – <strong>auf</strong><br />
das Planungsziel auszurichten. Der Planungsprozess erfor<strong>der</strong>t viel Zeit und<br />
Platz. Insbeson<strong>der</strong>e <strong>bei</strong> <strong>der</strong> Berechnung eines Bildes (relationalen Produktes)<br />
sehen wir unter Einsatz von externen Algorithmen theoretischen, wie auch<br />
praktische Verbesserungsmöglichkeiten.<br />
Weiterhin ist die Erweiterung <strong>der</strong> natürlichen <strong>auf</strong> die reelen Zahlen wünschenswert.<br />
Mit <strong>der</strong> erfolgreichen Externalisierung von UPPAAL/CORA [29]<br />
haben wir die Grundlage gelegt, größere Realzeitsysteme zu prüfen. Es gab<br />
an unserem Lehrstuhl eine Zusammenar<strong>bei</strong>t mit IKEA, <strong>bei</strong> <strong>der</strong> ein Verteilungslager<br />
in UPPAAL/CORA modelliert wurde. Die interne Exploration<br />
scheiterte an den bestehenden Ressourcengrenzen, so dass wir External UP-<br />
PAAL/CORA und MIPS-XXL vergleichend einsetzen wollen.<br />
12
4.2 Ar<strong>bei</strong>tspaket II: Externe Musterdatenbanken<br />
Insbeson<strong>der</strong>e <strong>bei</strong> Berechnung optimaler Pläne wird die Hauptspeichergrenze<br />
zum Flaschenhals in <strong>der</strong> Exploration. In [19] mit <strong>der</strong> externen und symbolischer<br />
Berechnung von Musterdatenbanken haben wir die optimale STRIPS-<br />
Planung erfolgreich externalisiert. Ein Fazit <strong>der</strong> Studie ist <strong>der</strong> empfohlene<br />
Einsatz von extern erzeugten symbolischen Musterdatenbanken in <strong>der</strong> externen<br />
expliziten Suche. Die Kombination von mehreren symbolischen Musterdatenbanken<br />
und die geeignete Parallelisierung bleiben weiterhin wichtig.<br />
In <strong>einer</strong> Fallstudie wollen wir möglichst große und letztendlich zufällige<br />
Instanzen des 35-Puzzles lösen, das mit 36! ≈ 10 42 Zuständen einen astronomisch<br />
großen Zustandsraum <strong>auf</strong>spannt. Eine erfolgreiche (noch unveröffentlichte)<br />
externe Exploration <strong>einer</strong> 35-Puzzle-Instanz mit symbolischen Musterdatenbanken<br />
verbrauchte in ca. 14 Tagen mehr als 1.2 Terabytes Festplattenspeicher.<br />
Die Verbesserung <strong>der</strong> Datenbanken führte zu <strong>einer</strong> erfolgreichen<br />
505 G Exploration in ca. 7 Tagen. Mittlerweile sind wir da<strong>bei</strong> den Ansatz zu<br />
parallelisieren, wir konnten eine Instanz erfolgreich <strong>auf</strong> 36 Prozessoren lösen.<br />
Der symbolisch-externe Planungsansatz führte zu <strong>einer</strong> disjunktive Bildberechnung:<br />
Teilbil<strong>der</strong> (eines für die Anwendung <strong>einer</strong> jeden Aktion <strong>auf</strong><br />
die <strong>der</strong>zeitige Zustandsmenge) werden <strong>auf</strong> Festplatte geschrieben und miteinan<strong>der</strong><br />
verbunden. Diese Externalisierungsoption war z.B. zur erfolgreichen<br />
Berechnung <strong>einer</strong> symbolischen Musterdatenbank mit 7 Plättchen (≈<br />
42.072.307.200 Zustände) für das 35-Puzzle (in ca. einem Monat) existenziell.<br />
Auf jeden Fall wollen wir die methodischen Erkenntnisse <strong>der</strong> initiierten<br />
Studie <strong>auf</strong> an<strong>der</strong>e Planungsprobleme übertragen. Desweiteren wollen wir in<br />
diesem Teilprojekt die computer-gesteuerte Auswahl von Abstraktionsmustern<br />
[23], zur automatischen Erzeugung von unteren Schranken analysieren.<br />
4.3 Ar<strong>bei</strong>tspaket III: Externe und Parallele Sequenzenalignierung<br />
Die DNA- o<strong>der</strong> Protein-Sequenzenalignierung ist ein immer noch nicht zufriedenstellend<br />
gelöstes Problem in <strong>der</strong> algorithmischen Biologie. Sieht man von<br />
den biologisch bedingten Ähnlichkeitsmaßen ab, handelt es sich <strong>bei</strong> diesem<br />
Problem um ein klassisches Editierdistanzproblem für Zeichenketten, das mit<br />
Hilfe <strong>der</strong> Dynamischen Programmierung gelöst werden kann.<br />
In <strong>der</strong> Praxis sind die Tabellen jedoch so immens groß (O(n k ) mit n ∼ 200<br />
13
als die maximale Länge und k ∼ 5 als die Anzahl <strong>der</strong> zu alignierenden Zeichenketten),<br />
dass sie nicht vollständig im Hauptspeicher gehalten werden<br />
können. Die effizientesten Verfahren beruhen <strong>auf</strong> <strong>einer</strong> Graphrepräsentation<br />
<strong>der</strong> Tabelle mit Knoten die die Zellen repräsentieren, und Kanten die<br />
Nachbarschaften zwischen den Zellen ausdrücken. Es werden Varianten <strong>der</strong><br />
gerichteten Suche eingesetzt, die <strong>auf</strong> azyklische Graphen ausgelegt sind und<br />
die Hauptspeicher sparen [69]. Die Parallelisierung <strong>der</strong> Suche nach einem<br />
optimalen Alignment ist in [79] gelungen.<br />
Einer <strong>der</strong> effizientesten Löser des Sequenzenalignierungsproblems [87] liegt<br />
uns im Quelltext vor. Er beruht <strong>auf</strong> die heuristische Suche und inkrementelle,<br />
gerichtete dynamische Programmierung. Wir haben den Algorithmus<br />
nahezu abschließend externalisiert. Als Testinstanzen dienen Balibase (1)-<br />
Instanzen, von denen wir bis <strong>auf</strong> eine alle erfolgreich behandeln können. Die<br />
letzte Instanz wird gerade berechnet und läuft seit ca. 2 Wochen <strong>auf</strong> einem<br />
Linux-Cluster. Wir werden den Algorithmus im nächsten Schritt parallelisieren.<br />
4.4 Ar<strong>bei</strong>tspaket IV: Externe Exploration von Problemen<br />
mit Unsicherheit<br />
Unsicherheit ist eine <strong>der</strong> Kernprobleme <strong>der</strong> KI [85], während alle unseren<br />
bisherigen Externalisierungen <strong>auf</strong> deterministische Probleme ausgerichtet.<br />
Die Behandlung von Unsicherheit über den Initialzustand ist in <strong>der</strong> externen<br />
Suche schon jetzt kein Problem, da sie <strong>auf</strong> Zustandsmengen <strong>auf</strong>baut.<br />
Bei Unsicherheit in <strong>der</strong> Aktionsausführung wird jedoch eine Suche im Belief-<br />
Zustandsraum benötigt, für die es erste Erkenntnisse mit BDDs [11, 10] und<br />
heuristischer Suche [50] gibt. K<strong>einer</strong> dieser Ansätze nutzt Externspeicher,<br />
obwohl die Explorationen zumeist speicherplatzbeschränkt sind.<br />
Das adäquate probabilistische Modell sind Markov’sche Entscheidungsprozessprobleme,<br />
kurz MDPs. Startend mit <strong>der</strong> Wertiteration [85] haben wir<br />
erste (noch unveröffentlichte) Erfolge <strong>bei</strong> <strong>der</strong> externen Analyse von MDPs geschaffen.<br />
Wir haben erfolgreich die Wertiteration externalisiert (Ar<strong>bei</strong>t noch<br />
unveröffentlicht). Mit Learning DFS [8] haben zudem angefangen, ein System<br />
zu externalisieren, das schneller zu Lösungen von MDPs kommt. Durch<br />
die Wahl <strong>einer</strong> alternativen Explorationsstrategie wird <strong>der</strong> da<strong>bei</strong> entstehende<br />
Algorithmus wohl External Learning BFS heißen.<br />
14
5 Zusammenar<strong>bei</strong>ten<br />
In dem Projekt beabsichtigen wir mehrere Zusammenar<strong>bei</strong>ten anzustreben<br />
und zu stärken. Wir orientieren uns da<strong>bei</strong> an Personen.<br />
Ulrich Meyer / Kurt Mehlhorn Ulrich Meyer hat am MPI im Bereich<br />
expliziter I/O-effizienter Graphsuche promoviert. Er ist mit Kurt Mehlhorn<br />
mit mehreren Fachpublikationen u.a. zur externen Breitensuche als Theorieexperte<br />
im Algorithm-Engineering ausgewiesen.<br />
Gemeinsam wollen wir das Zusammenspiel <strong>der</strong> impliziten und externen<br />
Graphsuche erörtern, um die <strong>der</strong>zeitige Komplexitätskarte (siehe Anhang)<br />
auch für erweiterte Problemstellungen wie die stochastische Kürzeste-Wege-<br />
Suche verf<strong>einer</strong>n. Bezug: Teilrojekt IV.<br />
Peter San<strong>der</strong>s / Dorothea Wagner Peter San<strong>der</strong>s hat am MPI an I/Oeffizienten<br />
Algorithmen geforscht. Er hat den LNCS-Band über die Speicherhierarchie<br />
wesentlich geprägt und ar<strong>bei</strong>tet neben vielen theoretischen<br />
Erkenntnissen (z.B. über I/O-effiziente Heaps) an <strong>einer</strong> externen Version <strong>der</strong><br />
Standard Template Library [14].<br />
Gemeinsam zielen wir <strong>auf</strong> den Einsatz von externen Kürzesten-Wege-<br />
Containern [92, 93], die wir in Zusammenar<strong>bei</strong>t schon erfolgreich im Routenplanen<br />
eingesetzt haben [34]. Die Container erweitern Musterdatenbanken<br />
<strong>auf</strong> unbekannte Ziele. Bezug: Teilprojekt II.<br />
Jan Vahrenhold / Petra Mutzel Jan Vahrenholds Spezialität sind externe<br />
geometrische Algorithmen sowie Suchalgorithmen <strong>auf</strong> speziellen Graphklassen.<br />
Jan Vahrenhold ist dem Lehrstuhl von Petra Mutzel angeglie<strong>der</strong>t.<br />
Der Name des Lehrstuhls stimmt mit dem des Schwerpunktprogramms überein.<br />
Wir fanden signifikante Übereinstimmungen von Forschungszielen und<br />
Zusammenar<strong>bei</strong>ten.<br />
Wir betreuen eine Diplomar<strong>bei</strong>t zur automatischen Inferenz von GPS-<br />
Spuren und erforschen gemeinsam verschiedene Ansätze zur Lösung des Sequenzenalignierungsproblems.<br />
Bezug: Teilprojekt III.<br />
Thomas Hofmeister / Ingo Wegener Der <strong>Antrag</strong>steller kennt Ingo Wegener<br />
bereits aus s<strong>einer</strong> Studienzeit. Im Bereich des sequentiellen Sortierens<br />
15
hat sich die Zusammenar<strong>bei</strong>t als sehr fruchtbar erwiesen. Auf seine Erfahrung<br />
konnten wir immer zurückgreifen.<br />
In <strong>der</strong> Zusammenar<strong>bei</strong>t mit Thomas Hofmeister (im Zimmer neben uns)<br />
bauen wir <strong>auf</strong> die externe Lösung von Suchproblemen in <strong>der</strong> algorithmischen<br />
Biologie, für die wir zusammen über einen steigenden Kenntnisstand<br />
verfügen. Derzeit betreuen wir gemeinsam eine Diplomar<strong>bei</strong>t zur Externalisierung<br />
des Sequenzenalignierungsproblems. Bezug: Teilprojekt III.<br />
Dragan Bosnacki / Alberto Lluch-Lafuente / Stefan Leue Mit Dragan<br />
Bosnacki organisieren wir den nächsten SPIN-Workshop in Berlin. Er hat<br />
mit Gerard Holzmann und Alberto Lluch-Lafuente mehrere Artikel über die<br />
Partialordnungsverfahren geschrieben und forscht <strong>der</strong>zeit über Pfadprobleme<br />
in <strong>der</strong> Bio-Informatik und Multi-Core Modellprüfungsverfahren. Alberto<br />
Lluch-Lafuente hat mit uns erstmalig Musterdatenbanken in <strong>der</strong> expliziten<br />
Modellprüfung eingesetzt [37]. Stefan Leue ist Mitautor mehrerer Papiere<br />
in <strong>der</strong> gerichteten Modellprüfung [35, 36]. Mit seinem Mitar<strong>bei</strong>ter Husain<br />
Aljazzar ar<strong>bei</strong>ten wir in <strong>der</strong> gerichteten probabilistischen Suche zusammen.<br />
Wir wollen u.a. gemeinsam einen Übersichtsartikel über die gerichtete,<br />
probabilistische, und externe Modellprüfung veröffentlichen und die Partialordnungreduktion<br />
zusammen externalisieren. Bezug: Teilprojekte II und IV.<br />
Barbara König / Arend Rensink Unsere Gruppe hat erste Gehversuche<br />
in <strong>der</strong> Exploration von Graphtransitionssystemen [30] gemacht. Da<strong>bei</strong> haben<br />
wir die Explorationswerkzeuge AGUR (von Barbara König) und Groove (von<br />
Arend Rensink) kennen- und schätzen gelernt. Ein Export als Planungsproblem<br />
ist in vielen Fällen möglich. Die impliziten Explorationen bzw. Approximationen<br />
solcher Systeme stoßen selbst für kl<strong>einer</strong>e Probleme schnell an<br />
die Hauptspeichergrenze. Die Ergebnisse, die wir mit HSF-SPIN erzielt haben<br />
legen einen möglichen Einsatz von externen Verfahren nahe, obwohl eine<br />
gekonnte Externalisierung direkt in die Tools integriert werden sollte.<br />
Die Lösung dieser spannenden Aufgabe haben wir uns für die zweite För<strong>der</strong>ungsperiode<br />
vorgenommen, schließen jedoch nicht aus, das wir schon eher<br />
Ergebnisse vorlegen können.<br />
Jörg Hoffmann / Sebastian Kupferschmidt Mit Jörg Hoffmann haben<br />
wir den internationalen Planungswettbewerb IPC-4 geleitet, eine fast 1-jähri-<br />
16
ge enge Zusammenar<strong>bei</strong>t <strong>auf</strong> vielen Ebenen. Mit Sebasitan Kupferschmidt<br />
hat er UPPAAL um automatisch generierte Heuristiken erweitert [54, 70].<br />
Wir planen eine Integration <strong>der</strong> <strong>bei</strong>den UPPAAL-Erweiterungen, d.h. wir<br />
wollen die automatischen Schätzfunktionen und die Externalisierung zusammenbringen.<br />
Bezug: Teilprojekt I.<br />
Bernhard Steffen / Tiziana Magaria Die Unterstützung <strong>der</strong> Knowledge-Engineering<br />
Wettbewerbs zum Einsatz des am Lehrstuhl propagierten<br />
Systems jABC/jETI wird gerade ausgelotet. Die <strong>bei</strong>den ar<strong>bei</strong>ten desweiteren<br />
an <strong>der</strong> automatischen Inferenz eines konsistenten Modells von einem l<strong>auf</strong>enden<br />
System. Das auch von uns zur Inferenz von Kontrollstrukturen eingesetzte<br />
maschinelle Lernverfahren nutzt interpretierte Traces als Trainings<strong>bei</strong>spiele<br />
und einen Modellprüfer als Orakel.<br />
Wir suchen eine Zusammenar<strong>bei</strong>t insbeson<strong>der</strong>e in den angesprochenen<br />
Bereichen <strong>der</strong> externen Traversierung von Realzeit-Modellen (z.B. IKEA) mit<br />
UPPAAL/CORA und wollen auch für das Lernproblem eine externe Variante<br />
einzusetzen. Bezug: Teilprojekt I.<br />
5.1 Personalbedarf<br />
An <strong>der</strong> Universität Dortmund leitet <strong>der</strong> <strong>Antrag</strong>steller bereits eigenständig eine<br />
Ar<strong>bei</strong>tsgruppe (ohne den Status eines Juniorprofessors). In Shahid Jabbar<br />
betreut er einen Doktoranten im Themengebiet Gerichtete Externe Exploration,<br />
<strong>der</strong> Anfang 2007 promovieren wird. Ein weiterer Doktorant, Tilman Mehler,<br />
hat in März 2006 im Themengebiet Gerichtete c++-Programmverifikation<br />
erfolgreich promoviert. Herr Mehler ar<strong>bei</strong>tet in <strong>der</strong> Industrie. Wir beantragen<br />
Personalmittel für die Einstellung von<br />
• 1 Wissenschaftlicher Mitar<strong>bei</strong>ter (BAT IIa Äquivalent, für 2 Jahre)<br />
• 1 Studentische Hilfskraft (19 Std. pro Woche für 2 Jahre)<br />
Die Nachwuchsforschergruppe bleibt vorerst am Lehrstuhl 5 <strong>der</strong> Universität<br />
Dortmund.<br />
17
5.2 Ar<strong>bei</strong>ts<strong>auf</strong>teilung<br />
Wir beabsichtigen im den zwei Jahren fundierte Ergebnisse in allen vier Bereichen<br />
vorlegen zu können. Die Ar<strong>bei</strong>t wollen wir wie folgt <strong>auf</strong>teilen.<br />
• Ar<strong>bei</strong>tspaket I: Björn Borowski (halbe Mitar<strong>bei</strong>terstelle)<br />
• Ar<strong>bei</strong>tspaket II: Stefan Edelkamp (<strong>Antrag</strong>steller)<br />
• Ar<strong>bei</strong>tspaket III: Peter Kissmann (halbe Mitar<strong>bei</strong>terstelle)<br />
• Ar<strong>bei</strong>tspaket IV: Shahid Jabbar (Doktorand)<br />
5.3 Abgrenzung<br />
Die Weiterentwicklungen <strong>der</strong> Modellprüfer STEAM und IO-HSF-SPIN sollen<br />
weiterhin im Projekt Directed Model Checking DFG Ed 74/2 geschehen und<br />
wurden in den Teilprojekten dieses <strong>Antrag</strong>s nicht berücksichtigt.<br />
Die abschließenden Ar<strong>bei</strong>ten im Aktionsprogramm Informatik (Projekt<br />
Heuristische Suche ED 74/3) werden in das Projekt einfließen. Demnach<br />
gibt es notwendigerweise in <strong>der</strong> Ausrichtung des aktuellen Projektantrags<br />
eine Überschneidung mit dem bestehenden Projekt. Zur Abgrenzung fallen<br />
die Ar<strong>bei</strong>ten von Shahid Jabbar im Ar<strong>bei</strong>tspaket IV dem Aktionsprogramm<br />
und die Ar<strong>bei</strong>tspakete I-III dem neu beantragten Projekt zu.<br />
5.4 Apparative Ausstattung<br />
Für aussagekräftige empirische Resultate benötigen wir einen High-End Multi-<br />
Core PC-Computer mit 2-4 Prozessoren und 2 Terrabyte Fest- und 16 Gigabyte<br />
Hauptspeicher im Werte von insgesamt ca. 4.000 Euro. Vielleicht läßt<br />
sich im Rahmen des Schwerpunktprogramms zudem ein Zugang zu einem<br />
Compute-Cluster realisieren. Unsere Erfahrungen mit LIDO, dem Linux-<br />
Cluster in Dortmund sind sehr positiv. Lei<strong>der</strong> ist die Auslastung <strong>auf</strong> LI-<br />
DO mittlerweile so hoch (> 85%), dass wir nur erschwert Explorationen <strong>auf</strong><br />
mehreren Prozessoren anstoßen können.<br />
18
5.5 Tagungsbesuche<br />
Mitar<strong>bei</strong>ter <strong>der</strong> Ar<strong>bei</strong>tsgruppe sollen regelmäßig über ihre Ar<strong>bei</strong>ten <strong>auf</strong> internationalen<br />
Konferenzen und Workshops berichten. Dafür werden 4.000 Euro<br />
angesetzt.<br />
6 Erklärung<br />
Ein <strong>Antrag</strong> <strong>auf</strong> die Stelle wurde <strong>bei</strong> k<strong>einer</strong> an<strong>der</strong>en Stelle eingereicht. Der<br />
<strong>Antrag</strong>steller wird die Deutsche Forschungsgemeinschaft über einen solchen<br />
Schritt unverzüglich informieren. Der Vertrauensdozent <strong>der</strong> DFG an <strong>der</strong> Universität<br />
Dortmund wurde von <strong>der</strong> <strong>Antrag</strong>sstellung unterrichtet.<br />
7 Unterschrift<br />
Dortmund, den 12. Juli 2007<br />
8 Verzeichnis <strong>der</strong> Anlagen<br />
• Lebensl<strong>auf</strong> inkl. Publikationsliste<br />
• Ausgewählte Publikationen<br />
9 Anhang: I/O-Komplexitätsübersichtskarte<br />
19
Problem Graphstruktur Algorithmus I/O-Komplexität<br />
Optimale ungewichtet,<br />
Erreichbarkeit ungerichtet External A* Θ(sort(|E|) + scan(|V |))<br />
LTL Sicherheit gewichtet, gerichtet Directed External A* Θ(sort(|E|) + l · C · scan(|V |))<br />
+ l · C · scan(|V |))<br />
LTL Sicherheit gewichtet, gerichtet Parallel External A* O( scan(|E|)<br />
p<br />
LTL Lebendigkeit gewichtet, gerichtet External A* L2S O(sort(|E| · |F |) + l · C · scan(|V | · |F |))<br />
+ l · C · scan(|V | · |F |))<br />
scan(|E|·|F |)<br />
p<br />
LTL Lebendigkeit gewichtet, gerichtet Parallel External A* L2S O(<br />
Kostenoptimale ungewichtet, gerichtet External RTBFS<br />
20<br />
Erreichbarkeit monotone Kosten Broadening RTBFBnB O(D · (sort(|E|) + l · scan(|V |)))<br />
Kostenoptimale ungewichtet, gerichtet External<br />
Erreichbarkeit nichtmonotone Kosten Cost-Optimal BFS O(sort(|E|) + l · scan(|V |))<br />
Suboptimale ungewichtet, External<br />
Erreichbarkeit ungerichtet Enforced Hill-Climbing O(h(I) · (sort(|E|) + l · scan(|V |)))<br />
Tabelle 1: Notation. V : Zustandsmenge; E: Transitionsmenge; h: Heuristik; l Lokalität; C: Maximales<br />
Kantengewicht; D: Lösungstiefe, p Prozessoranzahl.
Literatur<br />
[1] A. Aggarwal and J. S. Vitter. The input/output complexity of sorting<br />
and related problems. Journal of the ACM, 31(9):1116–1127, 1988.<br />
[2] D. Ajwani, R. Dementiev, and U. Meyer. A computational study of<br />
external memory BFS algorithms. In Symposium on Discrete Algorithms<br />
(SODA), pages 601–610, 2006.<br />
[3] R. Alur and D. L. Dill. The theory of timed automata. In Proceedings<br />
of the Real-Time: Theory in Practice, REX Workshop, pages 45–73.<br />
Springer, 1992.<br />
[4] C. Bartzis and T. Bultan. Efficient symbolic representations for arithmetic<br />
constraints in verification. Int. J. Found. Comput. Sci., 14(4):605–<br />
624, 2003.<br />
[5] C. Bartzis and T. Bultan. Efficient BDDs for bounded arithmetic constraints.<br />
International Journal on Software Tools for Technology Transfer,<br />
8(1):26–36, 2006.<br />
[6] G. Behrmann, A. Fehnker, T. Hune, K. Larsen, P. Petterson, J. Romijn,<br />
and F. W. Vaandrager. Efficient guiding towards cost-optimality in<br />
uppaal. In Tools and Algorithms for Construction and Analysis of<br />
Systems (TACAS), pages 174–188, 2001.<br />
[7] B. Boigelot, S. Jodogne, and P. Wolper. An effective decision procedure<br />
for linear arithmetic over the integers and reals. ACM Transaction on<br />
Computational Logic, 6:614–633, 2005.<br />
[8] B. Bonet and H. Geffner. Learning depth-first search: A unified approach<br />
to heuristic search in deterministic and non-deterministic settings, and<br />
its application to MDPs. In International Conference on Automated<br />
Planning and Scheduling (ICAPS), pages 142–151, 2006.<br />
[9] R. Brüntrup, S. Edelkamp, S. Jabbar, and B. Scholz. Incremental map<br />
generation with GPS traces. In International Conference on Intelligent<br />
Transportation Systems (ITSC), 2005.<br />
21
[10] A. Cimatti, M. Roveri, and P. Bertoli. Conformant planning via symbolic<br />
model checking and heuristic search. Artificial Intelligence, 159(1-<br />
2):127–206, 2004.<br />
[11] A. Cimatti, M. Roveri, and P. Traverso. Automatic OBDD-based generation<br />
of universal plans in non-deterministic domains. In National<br />
Conference on Artificial Intelligence (AAAI), pages 875–881, 1998.<br />
[12] E. M. Clarke, O. Grumberg, and D. A. Peled. Model Checking. MIT<br />
Press, 1999.<br />
[13] A. Crauser and K. Mehlhorn. LEDA-SM: Extending LEDA to secondary<br />
memory. In Workshop on Algorithm Engineering (WAE), pages 228–242,<br />
1999.<br />
[14] R. Dementiev, L. Kettner, and P. San<strong>der</strong>s. Standard template library<br />
for XXL data sets. In European Symposium on Algorithms (ESA), pages<br />
640–651, 2005.<br />
[15] M. Dietzfelbinger, A. R. Karlin, K. Mehlhorn, F. M. <strong>auf</strong> <strong>der</strong> Heide,<br />
H. Rohnert, and R. E. Tarjan. Dynamic perfect hashing: Upper and<br />
lower bounds. SIAM Journal on Computing, 23(4):738–761, 1994.<br />
[16] S. Edelkamp. Planning with pattern databases. In European Conference<br />
on Planning (ECP), 2001. 13-24.<br />
[17] S. Edelkamp. Symbolic pattern databases in heuristic search planning.<br />
2002.<br />
[18] S. Edelkamp. Taming numbers and durations in the model checking<br />
integrated planning system. Journal of Artificial Intelligence Research,<br />
20:195–238, 2003.<br />
[19] S. Edelkamp. External symbolic heuristic search with pattern databases.<br />
In International Conference on Automated Planning and Scheduling<br />
(ICAPS), pages 51–60, 2005.<br />
[20] S. Edelkamp. Cost-optimal symbolic pattern database planning with<br />
state trajectory and preference constraints. In ICAPS-Workshop on<br />
Preferences and Soft Constraints in Planning, 2006.<br />
22
[21] S. Edelkamp. Cost-optimal symbolic planning with state trajectory and<br />
preference constraints. In European Conference on Artificial Intelligence<br />
(ECAI), 2006.<br />
[22] S. Edelkamp. On the compilation of plan constraints and preferences.<br />
In International Conference on Automated Planning and Scheduling<br />
(ICAPS), pages 374–377, 2006.<br />
[23] S. Edelkamp. Automated creation of pattern database search heuristics.<br />
In Model Checking and Artificial Intelligence (MOCHART), volume<br />
4428 of Lecture Notes in Computer Science, 2007.<br />
[24] S. Edelkamp and M. Helmert. Exhibiting knowledge in planning problems<br />
to minimize state encoding length. In European Conference on<br />
Planning (ECP), pages 135–147, 1999.<br />
[25] S. Edelkamp and M. Helmert. The model checking integrated planning<br />
system MIPS. AI-Magazine, 2001.<br />
[26] S. Edelkamp and S. Jabbar. Accelerating external search with bitstate<br />
hashing. In KI-Workshop on on New Results in Planning, Scheduling<br />
and Design, 2005.<br />
[27] S. Edelkamp and S. Jabbar. Cost-optimal external planning. In National<br />
Conference on Artificial Intelligence (AAAI), pages 821–826, 2006.<br />
[28] S. Edelkamp and S. Jabbar. Large-scale directed model checking LTL.<br />
In Model Checking Software (SPIN), number 3925 in Lecture Notes in<br />
Computer Science, pages 1–18. Springer, 2006.<br />
[29] S. Edelkamp and S. Jabbar. Real-time model checking on secondary<br />
storage. In Model Checking and Artificial Intelligence (MOCHART),<br />
volume 4428 of Lecture Notes in Computer Science, 2007.<br />
[30] S. Edelkamp, S. Jabbar, and A. Lluch-Lafuente. Heuristic search for<br />
the analysis of graph transition systems. In International Conference<br />
on Graph Transformation (ICGT), number 4178 in Lecture Notes in<br />
Computer Science. Springer, 2006.<br />
23
[31] S. Edelkamp, S. Jabbar, D. Midzic, D. Rikowski, and D. Sulewski. External<br />
program model checking. Künstliche Intelligenz, 2007.<br />
[32] S. Edelkamp, S. Jabbar, and M. Nazih. Cost-optimal planning with<br />
constraints and preferences in large state spaces. In ICAPS-Workshop<br />
on Preferences and Soft Constraints in Planning, 2006.<br />
[33] S. Edelkamp, S. Jabbar, and S. Schroedl. External A*. In German<br />
Conference on Artificial Intelligence (KI), number 3238 in Lecture Notes<br />
in Computer Science, pages 226–240. Springer, 2004.<br />
[34] S. Edelkamp, S. Jabbar, and T. Willhalm. Geometric travel planning. In<br />
International Conference on Intelligent Transportation Systems (ITSC),<br />
volume 2, pages 964–969, 2003.<br />
[35] S. Edelkamp, S. Leue, and A. Lluch Lafuente. Directed explicit-state<br />
model checking in the validation of communication protocols. International<br />
Journal on Software Tools for Technology Transfer, 5(2-3):247–<br />
267, 2003.<br />
[36] S. Edelkamp, S. Leue, and A. Lluch-Lafuente. Partial or<strong>der</strong> reduction<br />
and trail improvement in directed model checking. International Journal<br />
on Software Tools for Technology, 6(4):277–301, 2004.<br />
[37] S. Edelkamp and A. Lluch-Lafuente. Abstraction in directed model<br />
checking. In ICAPS-Workshop on Connecting Planning Theory with<br />
Practice, 2004.<br />
[38] S. Edelkamp and U. Meyer. Theory and practice of time-space trade-offs<br />
in memory limited search. In German Conference on Artificial Intelligence<br />
(KI), pages 169–184, 2001.<br />
[39] S. Edelkamp and F. Reffel. OBDDs in heuristic search. In German<br />
Conference on Artificial Intelligence (KI), pages 81–92, 1998.<br />
[40] S. Edelkamp and S. Schrödl. Localizing A*. In National Conference on<br />
Artificial Intelligence (AAAI), pages 885–890, 2000.<br />
[41] S. Edelkamp and P. Stiegeler. Implementing HEAPSORT with n log n−<br />
0.9n and QUICKSORT with n log n + 0.2n comparisons. ACM Journal<br />
of Experimental Algorithmics, 10(5), 2002.<br />
24
[42] S. Edelkamp and I. Wegener. On the performance of WEAK-<br />
HEAPSORT. In Symposium on Theoretical Aspects in Computer<br />
Science Computer Science (STACS), pages 254–266, 2000.<br />
[43] J. Eisinger and F. Klaedtke. Don’t care words with an application to<br />
the automata-based approach for real addition. In CAV, pages 67–80,<br />
2006.<br />
[44] A. Elmasry, C. Jensen, and J. Katajainen. Relaxed weak queues: An<br />
alternative to run-relaxed heaps. Technical Report CPH STL Report<br />
2005-2, Department of Computing, University of Copenhagen, 2005.<br />
[45] A. Gerevini and D. Long. Plan constraints and preferences in PDDL3.<br />
Technical report, Department of Electronics for Automation, University<br />
of Brescia, 2005.<br />
[46] A. Gerevini and I. Serina. Fast plan adaptation through planning graphs:<br />
Local and systematic search techniques. In AIPS, pages 112–121, 2000.<br />
[47] P. E. Hart, N. J. Nilsson, and B. Raphael. A formal basis for heuristic<br />
determination of minimum path cost. IEEE Transaction on SSC, 4:100,<br />
1968.<br />
[48] T. A. Henzinger, P. W. Kopke, A. Puri, and P. Varaiya. What’s decidable<br />
about hybrid automata? In ACM Symposium on Theory of Computing<br />
(STOC), pages 373–382, 1995.<br />
[49] J. Hoffmann. The Metric FF planning system: Translating “Ignoring the<br />
delete list” to numerical state variables. Journal of Artificial Intelligence<br />
Research, 20:291–341, 2003.<br />
[50] J. Hoffmann and R. Brafman. Conformant planning via heuristic forward<br />
search: A new approach. Artificial Intelligence, 170(6–7):507–541,<br />
2006.<br />
[51] J. Hoffmann and S. Edelkamp. The deterministic part of IPC-4: An<br />
overview. Journal of Artificial Intelligence Research, 24:519–579, 2005.<br />
[52] J. Hoffmann, S. Edelkamp, R. Englert, F. Liporace, S. Thiebaux, and<br />
S. Trüg. Engineering benchmarks for planning: The domains used in the<br />
deterministic part of IPC-4. Artificial Intelligence Research, 2006.<br />
25
[53] J. Hoffmann, C. Gomez, B. Selman, and H. Kautz. SAT Encodings of<br />
State-Space Reachability Problems in Numeric Domains. In International<br />
Joint Conference on Artificial Intelligence (IJCAI), 2007.<br />
[54] J. Hoffmann, J.-G. Smaus, A. Rybalchenko, S. Kupferschmid, and A. Podelski.<br />
Using predicate abstraction to generate heuristic functions in<br />
UPPAAL. In Model Checking and Artificial Intelligence (MOCHART),<br />
volume 4428 of Lecture Notes in Computer Science, 2007.<br />
[55] G. J. Holzmann. The SPIN Model Checker. Addison-Wesley, 2003.<br />
[56] G. J. Holzmann, D. Peled, and M. Yannakakis. On nested depth first<br />
search. The SPIN Verification System, pages 23–32, 1972.<br />
[57] S. Jabbar and S. Edelkamp. I/O efficient directed model checking. In<br />
Conference on Verification, Model Checking and Abstract Interpretation<br />
(VMCAI), pages 313–329, 2005.<br />
[58] S. Jabbar and S. Edelkamp. Parallel external directed model checking<br />
with linear I/O. In Conference on Verification, Model Checking and Abstract<br />
Interpretation (VMCAI), number 3855 in Lecture Notes in Computer<br />
Science, pages 237–251. Springer, 2006.<br />
[59] S. Jabbar and S. Edelkamp. Resource-optimal scheduling via iterative<br />
external breadth-first branch-and-bound. In International Conference<br />
on Automated Planning and Scheduling (ICAPS), 2006. Submitted.<br />
[60] J. JaJa. An Introduction to Parallel Algorithms. Addison-Wesley, 1992.<br />
[61] I. Katriel and U. Meyer. Elementary graph algorithms in external memory.<br />
This volume.<br />
[62] F. Klaedtke. On the automata size for Presburger arithmetic. In Symposium<br />
on Logic in Computer Science (LICS), pages 110–119, 2004.<br />
[63] R. Korf. Best-first frontier search with delayed duplicate detection. In<br />
National Conference on Artificial Intelligence (AAAI), 2004. 650–657.<br />
[64] R. Korf and A. Felner. Recent progress in heuristic search: A case<br />
study of the four-peg towers of hanoi problem. In International Joint<br />
Conference on Artificial Intelligence (IJCAI), 2007.<br />
26
[65] R. E. Korf. Finding optimal solutions to Rubik’s Cube using pattern<br />
databases. In National Conference on Artificial Intelligence (AAAI),<br />
pages 700–705, 1997.<br />
[66] R. E. Korf. Breadth-first frontier search with delayed duplicate detection.<br />
In Model Checking and Artificial Intelligence (MOCHART), pages<br />
87–92, 2003.<br />
[67] R. E. Korf and A. Felner. Disjoint pattern database heuristics. In<br />
J. Schaeffer and H. J. van den Herik, editors, Chips Challenging Champions:<br />
Games, Computers and Artificial Intelligence, pages 13–26. Elsevier<br />
Sience, 2002.<br />
[68] R. E. Korf and P. Schultze. Large-scale parallel breadth-first search. In<br />
National Conference on Artificial Intelligence (AAAI), pages 1380–1385,<br />
2005.<br />
[69] R. E. Korf and W. Zhang. Divide-and-conquer frontier search applied<br />
to optimal sequence alignment. In National Conference on Artificial<br />
Intelligence (AAAI), pages 910–916, 2000.<br />
[70] S. Kupferschmid, K. Dräger, J. Hoffmann, B. Finkb<strong>einer</strong>, H. Dierks,<br />
A. Podelski, and G. Behrmann. Uppaal/DMC – Abstraction-based<br />
Heuristics for Directed Model Checking. In Tools and Algorithms for<br />
Construction and Analysis of Systems (TACAS), 2007.<br />
[71] A. Lluch-Lafuente. Directed Search for the Verification of Communication<br />
Protocols. PhD thesis, Institute of Computer Science, University of<br />
Freiburg, 2003.<br />
[72] T. Mehler. Challenges and Applications of Assembly-Level Software Model<br />
Checking. PhD thesis, University of Dortmund, 2005.<br />
[73] T. Mehler and S. Edelkamp. Dynamic incremental hashing in program<br />
model checking. Electronic Notes in Theoretical Computer Science<br />
(ENTCS), 149(2), 2006.<br />
[74] K. Mehlhorn. Data Structures and Algorithms, volume 2 : NP Completeness<br />
and Graph Algorithms. EATCS Monographs on Theoretical<br />
Computer Science. Springer-Verlag, 1984.<br />
27
[75] K. Mehlhorn and U. Meyer. External-memory breadth-first search with<br />
sublinear I/O. In European Symposium on Algorithms (ESA), pages<br />
723–735, 2002.<br />
[76] K. Mehlhorn and S. Näher. The LEDA Platform of Combinatorial and<br />
Geometric Computing. Cambridge University Press, 1999.<br />
[77] K. Munagala and A. Ranade. I/O-complexity of graph algorithms. In<br />
Symposium on Discrete Algorithms (SODA), pages 87–88, 2001.<br />
[78] D. Nau, M. Ghallab, and P. Traverso. Automated Planning: Theory &<br />
Practice. Morgan K<strong>auf</strong>mann, 2004.<br />
[79] R. Niewiadomski, J. N. Amaral, and R. C. Holte. Sequential and parallel<br />
algorithms for frontier A* with delayed duplicate detection. In National<br />
Conference on Artificial Intelligence (AAAI), pages 1039–1044, 2006.<br />
[80] R. Pagh. Low redundancy in static dictionaries with constant query<br />
time. SIAM Journal on Computing, 31(2):353–363, 2001.<br />
[81] R. Pagh and F. F. Rodler. Cuckoo hashing. In European Symposium on<br />
Algorithms (ESA), pages 121–133, 2001.<br />
[82] J. Pearl. Heuristics. Addison-Wesley, 1985.<br />
[83] J. H. Reif. Depth-first search is inherently sequential. Information Processing<br />
Letters, 20:229–234, 1985.<br />
[84] K. R<strong>einer</strong>t, J. Stoye, and T. Will. Combining divide-and-conquer, the<br />
A*-algorithm, and successive realignment approaches to speed up multiple<br />
sequence alignment. In German Conference on Bioinformatics<br />
(GCB), pages 17–24, 1999.<br />
[85] S. Russell and P. Norvig. Artificial Intelligence: A Mo<strong>der</strong>n Approach.<br />
Prentice Hall, 2003.<br />
[86] P. San<strong>der</strong>s, U. Meyer, and J. F. Sibeyn. Algorithms for Memory Hierarchies.<br />
Springer, 2002.<br />
[87] S. Schroedl. An improved search algorithm for optimal multiple sequence<br />
alignment. Journal of Artificial Intelligence Research, 23:587–623, 2005.<br />
28
[88] V. Schuppan and A. Biere. From distribution memory cycle detection<br />
to parallel model checking. International Journal on Software Tools for<br />
Technology Transfer, 5(2–3):185–204, 2004.<br />
[89] R. Tarjan. Depth-first search and linear graph algorithms. SIAM Journal<br />
of Computing, (1):146–160, 1972.<br />
[90] L. Thoma and N. Zeh. I/O-efficient algorithms for sparse graphs. In<br />
P. San<strong>der</strong>s, U. Meyer, and J. F. Sibeyn, editors, Memory Hierarchies,<br />
2002.<br />
[91] J. S. Vitter. External memory algorithms and data structures: Dealing<br />
with massive data. ACM Computing Surveys, 33(2):209–271, 2001.<br />
[92] D. Wagner and T. Willhalm. Geometric speed-up techniques for finding<br />
shortest paths in large sparse graphs. In European Symposium on<br />
Algorithms (ESA), pages 776–787, 2003.<br />
[93] D. Wagner, T. Willhalm, and C. Zaroliagis. Dynamic shortest path containers.<br />
In Algorithmic Methods and Models for Optimization of Railways,<br />
2003.<br />
[94] B. Wah and Y. Chen. Constrained partitioning in penalty formulations<br />
for solving temporal planning problems. Artificial Intelligence, 2006.<br />
[95] T. Willhalm. Shortest Paths and Layout Algorithms for Large Graphs.<br />
PhD thesis, University of Karlsruhe, 2005.<br />
[96] R. Zhou and E. Hansen. Structured duplicate detection in externalmemory<br />
graph search. In National Conference on Artificial Intelligence<br />
(AAAI), 2004. 683–689.<br />
[97] R. Zhou and E. Hansen. Domain-independent structured duplicate detection.<br />
In National Conference on Artificial Intelligence (AAAI), pages<br />
1082–1087, 2006.<br />
[98] R. Zhou and E. Hansen. Edge partitioning in external-memory graph<br />
search. In International Joint Conference on Artificial Intelligence (IJ-<br />
CAI), 2007.<br />
29