Wegplanung mit Fast Forward

26
Wegplanung mit Fast Forward

description

Wegplanung mit Fast Forward. Inhalt. Klassisches Planen Verschiedene Planerstrategien Fast Forward Allgemeines Systemarchitektur Heuristik Suchfunktion Zusammenfassung Ausblick. Klassisches Planen. Situationskalkül von McCarthy und Hayes: Situationen (states) : - PowerPoint PPT Presentation

Transcript of Wegplanung mit Fast Forward

Page 1: Wegplanung mit Fast Forward

Wegplanung mit Fast Forward

Page 2: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 2

Inhalt• Klassisches Planen• Verschiedene Planerstrategien• Fast Forward

– Allgemeines– Systemarchitektur– Heuristik– Suchfunktion

• Zusammenfassung• Ausblick

Page 3: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 3

Klassisches Planen

Situationskalkül von McCarthy und Hayes:• Situationen (states):

Schnappschüsse einer Umgebung zu einem Zeitpunkt

• Aktionen (actions):Überführung einer Situation in eine Nachfolgesituation

• keine Betrachtung von Zeit im eigentlichen Sinn

Page 4: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 4

Verschiedene Planerstragegien

• Mengenbasiertes Planen– STRIPS (Stanford Research Institute Problem

Solver)

• Planbasiertes Planen– POP (Partial Order Planner)

• Graphbasiertes Planen– GRAPHPLAN

Page 5: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 5

FF – Allgemeines

• domainunabhängiger Planer

• entwickelt an Uni Freiburg

• einer der schnellsten Planer auf der AIPS-2000

• basiert auf HSPErweiterungen:

• Verbesserte Heuristik (GRAPHPLAN)

• Verbesserte Suchfunktion

• Verfahren um den Suchgraph zu verkleinern

Page 6: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 6

FF – Systemarchitektur

Heuristik

SuchfunktionAufgabe Lösung / Fehlschlag

Abstand zum Ziel

„helpful actions“Zustand

Page 7: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 7

FF – Heuristik

Aufgabe: liefert den Abstand eines Zustands vom Ziel zurück

Problem: Berechnung des optimalen Abstands ist NP-schwer

Lösung: möglichst genaue Annäherung

Page 8: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 8

FF – HeuristikDefinitionen:1. Zustand (State)

eine endliche Menge boolescher Atome

2. Aktion (STRIPS Action):

3. Aufgabe (Planning Task):

4. vereinfachte Aufgabe (Relaxed Planning Task):

l

}))(),(),((|)0),(),({( OodeloaddopreoaddopreO ),,( GIOP

),,( GIOP

))(),(),(( odeloaddopreo

}))(),(),((|)0),(),({( OodeloaddopreoaddopreO ),,( GIOP

),,( GIOP

))(),(),(( odeloaddopreo

Page 9: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 9

FF – Heuristik

Originaler GRAPHPLAN – Algorithmus:1. Aufbau eines „Schichtgraphs“ (layered graph)

• füge abwechselnd Propositionsschicht und Aktionsschicht an ("time step")

• markiere mutex-RelationenBedingungen für mutex-Relationen in der Aktionsschicht:

» Inkonsistente Nachbedingungen» Interferenz» Konkurrierende Vorbedingungen

Bedingungen für mutex-Relationen in der Propositionsschicht:» Inkonsistente Vorbedingungen» komplementäre Literale

• mit dem Anfügen solange fortsetzen bis in einer Propositionsschicht alle Ziele vorhanden sind (nicht mutex)

Page 10: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 10

FF – Heuristik

Originaler GRAPHPLAN – Algorithmus:2. Lösungsextraktion

1. wähle für jedes Ziel eine erzeugende Aktion in der vorherigen Aktionsschicht (ohne mutex-Relationen)

2. wenn für ein Ziel keine mutex-freie Erzeugeraktion gefunden wird, versuche für das vorherige Ziel eine andere Erzeugeraktion zu finden ("backtracking")

3. ist für jedes Ziel eine Erzeugeraktion gefunden, wiederhole den Algorithmus ab Schritt 1 in der nächstniedrigeren Propositionsschicht mit den Voraussetzungen der gewählten Aktionen als Zielen.

4. sobald bei Schicht 0 angelangt, ist eine Lösung gefunden5. falls keine Lösung ohne mutex-Relationen gefunden werden

kann, expandiere den Graph um einen weiteren "Zeitschritt"

Page 11: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 11

FF - Heuristik

GRAPHPLAN – Beispiel:

RuheSchmutz :ungNachbeding - :ngVorbedingusaugen

sHandSchmutz :ungNachbeding - :ngVorbedinguwischen

Blumen :ungNachbeding Ruhe : ngVorbedingu bluva

Dinner :ungNachbeding sHand :ngVorbedingukochen

SchmutzBlumenDinner :ionZielsituatRuhe sHand Schmutz :tionStartsitua

Page 12: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 12

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 13: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 13

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 14: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 14

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 15: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 15

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 16: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 16

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 17: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 17

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

zurück

Page 18: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 18

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

wischen

saugen

kochen

bluva

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 19: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 19

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

wischen

saugen

kochen

bluva

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 20: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 20

FF - Heuristik

GRAPHPLAN – Beispiel:

Schmutz

sHand

Ruhe

wischen

saugen

kochen

bluva

NOOP

NOOP

NOOP

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

wischen

saugen

kochen

bluva

Schmutz

sHand

Ruhe

Schmutz

sHand

Ruhe

Dinner

Blumen

Page 21: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 21

FF – Heuristik

"relaxed Graphplan":• Verwendung von "relaxed actions"

– keine mutex-Relationen mehr

– kein Backtracking mehr notwendig

– durchlaufen des Graphs in polynomialer Zeit

• Berechnung des Abstands zur Zielschicht:

1,...,0

)(mi

iOSh

Beispielplan

Page 22: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 22

FF – Suchfunktion

"enforced Hill-climbing":S := I

while h(S) != 0 do

suche nähsten Zustand S' mit h(S') < h(S)

if S' nicht gefunden then

stop

endif

füge Pfad von S nach S' dem Plan hinzu

S := S'

endwhile

Page 23: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 23

FF – Suchfunktion

Algorithmen zur Einschränkung des Suchraums:

• "helpful actions"

Beschränken auf Aktionen die näher zum Ziel führen

• "added goal deletion"

Entfernen von Pfaden die bestimmte Ziele zu früh erreichen

Page 24: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 24

Zusammenfassung

• Erstellen eines Schichtgraphs

• Erweiterung des Graphs bis alle Ziele erreicht sind

• Suche nach einer Lösung durch Aneinanderreihung von Zuständen mit immer geringerem Abstand zum Ziel

Page 25: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 25

Ausblick

• keine Möglichkeit zur Angabe von Ressourcen / Zeit

• erzeugter Plan ist nicht optimal

• nur eine Aktion pro Zeitschritt

Page 26: Wegplanung mit Fast Forward

03.07.2001 Andreas Bauer 26

Fin