03.10.2013 Aufrufe

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

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!