Dr. David Sabel Institut für Informatik Fachbereich Informatik und Mathematik Goethe-Universität Frankfurt am Main Einführung in die Methoden der Künstlichen Intelligenz Wintersemester 2012/13 Aufgabenblatt Nr. 2 Abgabe: Montag, 5. November 2012 vor der Vorlesung Aufgabe 1 (15 Punkte) Betrachten Sie den folgenden Suchraum mit Startknoten S und Zielknoten Z: A C E G S Z B D F H Nehmen Sie an, dass die Nachfolgerfunktion Knoten stets in alphabetischer Reihenfolge berechnet (z.B. N F (S) = [A, B]). a) Geben Sie die ersten 20 Zustände in der Reihenfolge an, wie sie durch eine Tiefensuche ohne Sharing besucht werden. (5 Punkte) b) Geben Sie die Reihenfolge der Zustände an, wie sie von einer Tiefensuche mit Sharing vom Start zum Ziel besucht werden. (5 Punkte) c) Geben Sie die ersten 25 Zustände an, wie sie durch iteratives Vertiefen ohne Sharing besucht werden. (5 Punkte) Aufgabe 2 (15 Punkte) Betrachten Sie in dieser Aufgabe das folgende Problem: Gegeben sind zwei leere Wassereimer, deren maximale Füllmengen 3 bzw. 5 L sind. Zudem steht unbegrenzt Wasser zum Füllen der Eimer zur Verfügung. Ziel ist es durch Füllen, Leeren, Umfüllen den 5-Liter-Eimer mit genau 4 L Wasser zu füllen. a) Gegeben Sie eine (möglichst einfache) Modellierung für die auftretenden Zustände an. Geben Sie die Nachfolgerfunktion, Startzustand und Zieltest an. (10 Punkte) b) Geben Sie die durch eine Tiefensuche mit Sharing besuchten Zustände an und geben Sie einen erfolgreichen Pfad an, der das Problem löst. (5 Punkte) 1 Aufgabe 3 (20 Punkte) Wir betrachten das folgende Problem der Enten und Hühner. Es gibt vier Felder, zwei Hühner und eine Ente, die sich am Anfang wie folgt auf die vier nebeneinander liegenden Felder verteilen: Ziel ist es, dass sich die Ente rechts von beiden Hühnern befindet, d.h. einer der Zustände Es sind folgende Züge möglich und mit den folgenden Kosten (Energieverbrauch der Tiere) verbunden (die Abbildung rechts stellt alle möglichen Züge schematisch dar): • Auf jedem Feld kann höchstens ein Tier stehen. Alle Tiere können nach links und nach rechts ziehen. • Jedes Tier kann auf das freie Feld laufen, sofern es sich direkt neben ihm befindet. Die Kosten hierfür sind gering und schlagen mit 1 zu Buche. • Eine Ente kann ein Huhn überspringen, wenn das Feld hinter dem Huhn frei ist. Da die Ente sehr hoch springen muss, schlägt dieser Sprung mit 10 zu Buche. • Ebenso kann ein Huhn die Ente überspringen, wenn das Feld hinter der Ente frei ist. Da ein Huhn jedoch nicht so hoch springen muss wie die Ente, kostet dieser Zug 5. • Ein Huhn kann ein anderes Huhn überspringen, wenn das Feld dahinter frei ist. Dies kostet 7. Modellieren Sie den Zustand, die Nachfolgerfunktion und den Zieltest für obiges Problem. Führen Sie den A∗ -Algorithmus per Hand auf Papier aus, indem Sie die Open- und Closed-Mengen sowie den aktuellen Knoten, nach jedem Iterationsschritt angeben. Suchen Sie sich eine unterschätzende Heuristik dafür aus. Wie lautet der optimale Pfad an Zügen, der mit minimalem Energieaufwand zum Ziel führt? 2