Dissertation: Datenstrukturen und Lernverfahren in der Zustandsraumsuche Die Dissertation betrit den algorithmischen Kern der kunstlichen Intelligenz. Hier wird das Problemlosen als Suche in einem Zustandsraum modelliert, da heit, man geht aus von einem Startzustand, der das gegebene Problem beschreibt und hat U bergangsregeln, um von einem Zustand zu einem oder mehreren Nachfolgezustanden zu kommen. Diese U bergangsregeln mussen dann solange angewandt werden, bis ausgehend vom Startzustand schlielich ein gewunschter Endzustand erreicht ist. In der Regel ist man an einer kurzestmoglichen Folge derartiger U bergange interessiert. Zwar kann man relativ einfach zeigen, da es kein allgemeines Verfahren gibt, das fur eine Menge von U bergangsregeln feststellt, ob der Zielzustand vom Startzustand mit Hilfe der U bergangsregeln uberhaupt erreichbar ist. In der Praxis hat sich aber diese Problemsicht insbesondere zur Losung von Ein-Personen-Spielen (Puzzles) doch bewahrt, und man hat viele Techniken entwickelt, um in konkreten Fallen zu einer Losung zu kommen. 1 Zustandsraumsuche Ob materiell oder ideell, wir alle suchen. Der eine sucht sein Kleidungsstuck im Schrank, die andere ein geeignetes Fernsehprogramm. Vergeliche Menschen suchen noch ein wenig mehr. Ein Fuballspieler sucht den Weg in das Tor und viele Menschen suchen Geborgenheit und Ruhe. Forschung ist die Suche nach unbewaltigten Problemenstellungen bzw. der Losung selbiger, und die groe Unrast menschlichen Seins ist die Suche nach dem Sinn des Lebens. Kurzum, dieses Grundverstandnis des Wortes Suche lat sich zur Begrisbildung nutzen, denn so allgemein, wie der Begri Suche im menschlichen Umgang erscheint, ist er auch in der Informatik: Jeder Handlungsablauf oder Algorithmus sucht nach Losungen fur ein gestelltes Problem. Wir illustrieren demnach die Begriichkeit der Zustandsraumsuche an einem Beispiel aus der Alltagswelt. Ein Mann sucht den Ausgang aus einem groen Amtsgebaude, sagen wir, um ein geplantes Essen mit seiner Geliebten nicht zu verpassen. Der Zustandsraum ist durch die Menge der Raume und Flure, der Startzustand durch den gegenwartigen Standort und der Zielzustand durch 1 den Ausgang gegeben. Kann aus verschiedenen Ausgangen alternativ gewahlt werden, so gibt es gleich mehrere Zielzustande. Ist die Position der Ausgange unbekannt, so liegen die Zielzustande nicht explizit vor, sondern werden durch ange die Anwendung eines Pradikates beschrieben. Desweiteren werden Uberg speziziert, die es erlauben, einen Zustands- bzw. Raumwechsel durchzufuhren, z.B. hoch, runter, vor, zuruck, rechts oder links. In einer graphischen Reprasentation der Suche nutzt man Knoten fur die einzelnen Zustande und Kanten fur die jeweiligen U bergange. Der Problemgraph entspricht in unserem Beispiel einer U bersichtskarte des Gebaudes. Die U bergange konnen gewichtet sein, um die unterschiedlichen Schwierigkeiten verschiedener Operatoren zu betonen. So ist die Bewaltigung einer Treppe fur unseren Hauptdarsteller ungleich schwerer als der Gang uber eine Turschwelle. Der Mann hat dadurch, da er in das Gebaude hineingegangen ist, eine gewisse Schatzung der Weglange und damit der einzukalkulierenden Zeit. Diese Einschatzung wird als Heuristik bezeichnet. Fur eine eziente Problemlosung ist es gunstig, wenn die Heuristik die tatsachliche minimale Weglange zum Ziel immer unterschatzt. In diesem Fall sprechen wir von einer unteren Schranke oder auch von einer optimistischen Heuristik. Da die beiden Liebenden mittlerweile einmutig beieinander sitzen und sich tief in die Augen schauen, ziehen wir uns zuruck und widmen uns einer generellen Betrachtung der Suchaufgabe: Aufbauend auf die untere Schranke kann durch eine Neugewichtung der Kanten in dem Problemgraphen das klassische Suchverfahren A* von Hart, Nilsson und Raphael auf den Graphsuchverfahren von Dijkstra zuruckgefuhrt werden. Dazu mussen zur Behandlung der dadurch evtl. negativ werdenen Kanten einmal expandierte Knoten zwischengespeichert werden. Diese unubliche Sichtweise von A* zeigt auf, da es ein ezientes und theoretisch fundiertes Graphsuchverfahren ist. 2 Informierte Symbolische Suche Der Hauptnachteil des A*-Verfahrens ist der hohe Speicheraufwand, da alle einmal generierten Knoten im Hauptspeicher verwaltet werden mussen. Im Gegensatz dazu lassen sich mit binaren Entscheidungsdiagrammen (BDDs) eine groe Menge von Zustanden sehr kompakt beschreiben [3]: Die einzelnen Problemsituationen werden binar codiert und die charakteristischen Funktionen von mehreren Stellungen zusammengefat in einem BDD darstellt. Die Ersparnis wird an folgendem Extrembeispiel oenbar: der vollstandige Zustandsraum lat sich einem einzigen Knoten (der Einssenke) darstellen. In dem Algorithmus BDDA* wird in der Dissertation erstmalig versucht, die Vorteile des A*-Verfahrens mit denen der auf traditionellen BDDs basierenden Breitensuche zu verbinden. Damit wird ein neuer Mittelweg zwischen Zeit- und Speicheranforderungen beschritten. Die Komplexitat von BDDA* wird untersucht und der Ansatz exemplarisch im 15-Puzzle und im Sokobanspiel evaluiert. 2 3 Bestimmung des Verzweigungsgrades Der asymptotische Verzweigungsgrades eines Suchbaumes ist ein wichtige Groe, da sie im wesentlichen die Komplexitat des zugrundeliegenden Suchproblemes bestimmt. Bisher gab es keine Methode, diesen Wert fur nicht regulare Baume exakt zu bestimmen. Existiert ein eindeutiger Verzweigungsgrad, so ist er ein Eigenwert einer aus einem Rekursionsgleichungssystem gebildeten Matrix. Insbesondere fur die mit endlichen Automaten beschnittenen Zustandsraume, wie sie beispielsweise beim 15-Puzzle oder Zauberwurfel auftreten, kann der Verzweigungsgrad auf diese Weise exakt bestimmt werden, ohne den Suchbaum explizit aufzubauen. 4 Automatische Duplikatserkennung Die Duplikatserkennung erlaubt es, den Suchaufwand durch Beschneiden des Zustandsraumes erheblich zu reduzieren. U blicherweise speichert man die generierten Zustande in einer Hashtabelle ab; der Duplikatstest wird dann durch den Vergleich des neu generierten Zustandes mit den gespeicherten Elementen durchgefuhrt. In aller Regel sind die Zustandsraume jedoch so gro, da nur ein Teil der generierten Knoten gespeichert werden kann. Eine zu ublichen Speicherplatz-beschrankten Suchverfahren (vergl. [4]) ganzlich andere Moglichkeit zur Duplikatserkennung wurde von Taylor und Korf vorgeschlagen: Alle gefundenen Duplikatspfade werden in einem endlichen Automaten abgelegt, in dem akzeptierende Zustande Duplikate reprasentieren. Bei hoher Regularitat ist diese Speicherung sehr kompakt, da jedem Knoten eine ganze Klasse von Zustanden entspricht. Taylor und Korf unterscheiden eine Lern- und eine Suchphase. In der Lernphase werden gefundene Duplikatspfade in den Automaten eingefugt und in der anschlieenden Suchphase wird der Automat zur Duplikatserkennung genutzt, aber nicht mehr verandert. In der Dissertation wird aufgezeigt, da die beiden bisher strikt getrennten Phasen durch ein inkrementelles Lernverfahren ersetzt werden konnen, das on-line die wahrend der Suche gefundenen Duplikate einfugt. Diese inkrementelle Lernstrategie ist notwendig, da selbst einfache Duplikate in restringierten Suchraumen nicht aus allen Anfangszustanden direkt aufzunden sind. Ein in dem Ansatz von Taylor und Korf genutztes Zeichenkettenworterbuch basierend auf dem Automat von Aho und Corasick fuhrt durch die Neuberechnung der Fehlerfunktion zu groen Ezienzverlusten. Hierzu werden Multi-Suxbaume als Datenstruktur vorgeschlagen, in der die Teilstringsuche ohne Ruckgri auf vorherige Zeichen in amortisiert-konstanter Zeit ermoglicht wird. 3 5 Lernen von Sackgassen In vielen Fallen ist der Problemgraph gerichtet und enthalt Sackgassen, das sind Zustande, die nicht mehr zu einem Zielzustand fuhren konnen. In der Dissertation wird eine Form der Suchbaumbeschneidung untersucht, die im SokobanPuzzle Merkmale von Sackgassen aufspurt, generalisiert und in dem Suchbaum nach oben weiterleitet. Die Verallgemeinerung beruht auf der Tatsache, da meist nur Teilbereiche einer Spielstellung fur deren Unlosbarkeit verantwortlich sind. Diese Idee, durch die Aufwartspropagierung komplexere, unlosbare Muster zu nden, wurde in dem vergleichbaren Ansatz von Junghanns und Schaeer nicht untersucht. Es wird gezeigt, da die gelernten Muster in einem BDD so gespeichert werden konnen, da die Suchzeit nach einem Muster linear in der binaren Codierungslange der Zustande ist. 6 Realzeitsuche Zu einem wichtigen Bereich konnte die Realzeitsuche werden. In der Realzeitsuche mussen Aktionen bereits zu einem Zeitpunkt ausgefuhrt sein, bevor alle sich daraus ergebenden Konsequenzen bestimmt werden konnen. Die Realzeitsuche wird notwendig, wenn fur die Entscheidungsndung eine Zeitbeschrankung vorgegeben ist, nur unzureichende Information uber die Domane vorliegt oder der Suchraum sich verandert, z.B. durch Interaktion mit der Umgebung. In diesem Kontext wurde u. a. das Lernen von Bewertungsfunktionen untersucht. Es wird gezeigt, da fur das von Korf vorgeschlagene Verfahren LRTA* die gelernte Bewertung nur sehr langsam gegen eine optimale Bewertung konvergiert. Das lat sich durch die vorgeschlagen Verfahren SLRTA* und CRTA* verbessern. 7 Suche nach bewegten Zielen Ein anderes Problem, das in diesen Kontext gehort, ist das Suchen nach beweglichen Zielen in einem Labyrinth. Chimura und Tokoro stellten einen Algorithmus vor, der dieses Problem unter starken Einschrankungen an die Problemdomane lost. So wird u. a. vorausgesetzt, da das sich bewegende Objekt eine Spur hinterlat. Bei diesem Verfahren wird zwischen einer Such- und einer Jagdphase unterschieden. Das Kernproblem besteht nun darin, mit Beginn der Jagdphase den kurzesten Verbindungsweg zwischen zwei vorgegebenen Orten anzugeben. Es wird gezeigt, da es eine geeignete Datenstruktur gibt, um den Verwaltungsaufwand der fur die Spurensuche notwendigen kurzesten Wegekarte zu verringern, was auch zu einer Beschleunigung der Jagdphase selbst fuhrt. 4 8 Anwendungsgebiete und Ausblick In dem Gebiet des Planens erwiesen sich Verfahren der symbolischen Suche als sehr wirksam, da die Verzweigungsgrade gro sind und die Operatoren lokal wirken. Neben der Spezikation eines Problems durch Start und Ziel, durch Operatoren und ihrer Eekte ist kein zusatzliches Domanenwissen verfugbar. Im Anschlu an die Dissertation entwickelten wir einen Planer, der in einem zweischrittigen Verfahren Planungsprobleme mitunter besser lost als bestehende (z.B. auf Graphplan basierende) Systeme. In einem zweistugen Verfahren wird aus der Problembeschreibung durch Exploration implizites Wissen in einer sehr ezienten Zustandskodierung erschlossen, um in einem zweiten Schritt eine symbolische Exploration des Zustandsraumes durchzufuhren [5, 6]. Auch in der Protokollvalidation und in der Hardwareverikation nehmen Suchverfahren, die auf BDDs basieren, einen breiten Raum ein. Bestehende Suchansatze in der Modellprufung mit BDDs bestimmen die Menge aller erreichbaren Zustande [1] und konnen problemspezische untere Schranken nicht zu einer Reduktion des Suchaufwandes ausnutzen. In der praktischen Fehlersuche mittelgroer Hardwarespezikationen erwies sich der in der Dissertation vorgestellte BDDA* Ansatz als sehr eektiv [7]. Eine Anbindung der verschiedenen Such- und Planungsverfahren an eine Visualisierungsschnittstelle ist mit dem am Lehrstuhl entwickelten Tool Vega mittlerweile gelungen [2]. Die Client-Server Architektur bietet durch ein JavaInterface auf der einen Seite hohe Portabilitat und durch die in c++ implementierten Verfahren auf der anderen Seite groe Ezienz. Das Ziel ist es, eine Werkbank fur eziente Algorithmen und Datenstrukturen aufzubauen, die sich aktuellen Herausforderungen in den unterschiedlichen Gebieten in der Kunstlichen Intelligenz stellen kann. Derzeit wurden die symbolischen Exploration von Zweipersonenspielen, Constraint Satisfaction Problemen und Diagnosefragestellungen zu den symbolischen und nicht symbolischen Planungs- und Suchverfahren aufgenommen. In naher Zukunft sollen einige maschinelle Lernverfahren, wie z.B. Neuronale Netze und Entscheidungsbaume, folgen. Danksagung In dem Projekt Protokollvalidation in der Heuristischen Suche werden die Bemuhungen um neue Wege in der Zustandsraumsuche von der Deutschen Forschungsgemeinschaft unter der Nummer Ot 11-1/3 unterstutzt. Desweiteren bedanke ich mich bei bei Jurgen Eckerle fur die Mithilfe bei der schriftlichen Ausarbeitung dieses Artikels. Literatur [1] A. Biere. Eziente Modellprufung mit binaren Entscheidungsdiagrammen. 5 [2] [3] [4] [5] [6] [7] PhD thesis, Institut fur Logik, Komplexitat und Deduktionssysteme, Universitat Karlsruhe, 1997. C. A. Brocker. Verteilte Visualisierung geometrischer Algorithmen und Anwendungen auf Navigationsverfahren in unbekannter Umgebung. PhD thesis, Institut fur angewandte Wissenschaften, Universitat Freiburg, 1999. Eingereicht. R. E. Bryant. Symbolic manipulation of boolean functions using a graphical representation. In Proceedings of the 22nd ACM/IEEE Design Automation Conference, pages 688{694. IEEE Computer Society Press, 1985. J. Eckerle. Heuristische Suche unter Speicherbeschrankung. PhD thesis, Institut fur angewandte Wissenschaften, Universitat Freiburg, 1997. DISKI, Inx, Band 185. S. Edelkamp and M. Helmert. Exhibiting knowledge in planning problems to minimize state encoding length. Submitted to ECP'99 European Conference on Planning. S. Edelkamp and F. Reel. Deterministic state space planning with BDDs. Submitted to ECP'99 European Conference on Planning. F. Reel and S. Edelkamp. Error detection with directed symbolic model checking. Accepted to FM'99 World Congress On Formal Methods. Datenstrukturen und Lernverfahren in der Zustandsraumsuche, Stefan Edelkamp, in der Reihe \Dissertationen zur Kunstlichen Intelligenz", Band 201, Sankt Augustin, Inx Verlag, 1999, http://www.informatik.uni-freiburg.de/~edelkamp/dissertation.ps.gz Stefan Edelkamp: Studium der Informatik mit Nebenfach Mathematik an der Universitat Dortmund mit einem einjahrigen Auslandsaufenthalt am University College Dublin, Irland. Diplomarbeitsthema: Weak-Heapsort, ein schnelles Sortierverfahren. Anschlieend Promotion als Stipendiat der deutschen Forschungsgemeinschaft im Graduiertenkolleg fur Menschliche und Maschinelle Intelligenz in Freiburg. Mitarbeit an dem Lehrstuhl fur Algorithmen und Datenstrukturen von Prof. Dr. Ottmann. Derzeitiger Status: Wissenschaftlicher Assistent. 6