Nichtdeterministische Planung
Vorlesung Handlungsplanung
Stefan Edelkamp
1 Uberblick ¨
- Transitionssysteme & Zustandsaktionstabellen - Ausf ¨uhrungsstrukturen und Pfade
- Schwache, Starke und Stark-Zyklische Pl ¨ane - BDD Explorationsalgorithmen
- Konformantes Planen - . . . mit BDDs
- . . . mit SAT/QBF
- . . . mit heuristischer Suche - . . . alternativ
2 Nichtdeterministisches Planen
Eine nichtdeterministisches Planungsproblem wird oft in einem Transitionssystem
¨uber eine Transitionsrelation
R ⊆ S × O × S
Unterschiede zum deterministischen Planen
• Ausf ¨uhrung einer Aktion in m ¨oglicherweise mehrere unterschiedliche Zust ¨ande
• Mehrere Initialzust ¨ande, d.h. I ⊆ S, sind m ¨oglich
• Pl ¨ane sind Ausf ¨uhrungseinheiten, eingebettet in einer Umgebung
Pl ¨ane als Ausf ¨ uhrungseinheiten
Die ausf ¨uhrbaren Aktionen im Zustand S sind
Act(S) = {O | ∃S0 : R(S, O, S0)}.
Die Ausf ¨uhrung von O ist die Menge
Exec(S, O) = {S0 | R(S, O, S0)}
Pl ¨ane sind im nichtdeterministischen Kontext Ausf ¨uhrungseinheiten oder Zustandsaktionstabellen (von Cimatti et al. vorgeschlagen)
Zustandsaktionstabellen ¨ahneln universellen Pl ¨anen und Politiken
Zustandsaktionstabellen
Zustandsaktionstabelle π einer Planungsdom ¨ane P: {(S, O) | S ∈ S, O ∈ O}
- Gibt es nur eine Aktion O f ¨ur jedes S, so ist das Problem deterministisch.
- Die Zust ¨ande von π werden mit S(π) abgek ¨urzt
Die Ausf ¨uhrung von Pl ¨anen π geschieht in einer Schleife in einer umgebenden Welt.
Solange der aktuelle Zustand S in S(π) liegt, 1. wird die passende Aktion in π ausgew ¨ahlt 2. in der Umgebung ausgef ¨uhrt und
3. der resultierende Weltzustand erfragt
Ausf ¨ uhrungsstruktur
Die von π induzierte Ausf ¨uhrungsstruktur K = (Q, T) mit - Q ⊆ S und
- T ⊆ S × S
bzgl. dem Initialzustand I ist rekursiv definiert:
• I ⊆ Q.
• Falls mit jedem S ∈ Q und (S, O) ∈ π mit R(S, O, S0) gilt, ist S0 ∈ Q und T(S, S0).
. . . entsprechen Kripke-Strukturen.
Ausf ¨ uhrungspfad
Ausf ¨uhrungspfad in K von S0 ∈ I:
m ¨oglicherweise unendliche Folge S0, S1, S2, . . . von Zust ¨anden in Q, so dass F ¨ur alle Zust ¨ande Si
• entweder Si ein Endzustand ohne Nachfolger ist, oder
• T(Si, Si+1) gilt
3 Schwache und Starke bzw. Stark-Zyklische Pl ¨ane
F ¨ur ein Planungsproblem P bzgl. I induzierter Ausf ¨uhrungsstruktur K = (Q, T) nennen wir einen deterministischen Plan π
schwache L ¨osung , falls f ¨ur jeden Zustand in I ein Endzustand aus der Zielmenge G erreichbar ist;
starke L ¨osung , falls K azyklisch ist und alle Endzustust ¨ande aus K in G enthalten sind; und
stark-zyklische L ¨osung falls von jedem Zustand in Q ein Endzustand erreichbar ist und alle Endzustust ¨ande aus K in G enthalten sind.
Intuition
Schwache Pl ¨ane: Planziel kann aber muss nicht erreicht werden
Starke Pl ¨ane: Planziel wird unabh ¨angig vom Nichtdeterminismus immer erreicht Stark-Zyklische Pl ¨ane: Formalisieren die intuitive Notation von g ¨ultigen
Versuch-und-Irrtum Strategien:
Alle Ausf ¨uhrungspfade haben eine M ¨oglichkeit zur Terminierung und sichern das Erreichen des Ziels.
Nichtdeterministischer Plan
Ein nichtdeterministischer Plan in Form einer Zustandsaktionstabelle ist schwach, stark, bzw. stark-zyklisch:
wenn alle deterministischen Teilpl ¨ane mit gleicher Zustandsmenge schwach, stark bzw. stark-zyklisch sind.
Es gilt: Stark-zyklische Pl ¨ane sind auch stark und starke Pl ¨ane sind auch schwach.
Hier: Schwaches und starkes Planen.
Implementation mit BDDs
Allein die explizite Repr ¨asentation der ¨Ubergangsmatrix der Gr ¨oße |S| × |O| kann die zu Verf ¨ugung stehenden Resourcen sprengen.
⇒ repr ¨asentiere Pl ¨ane als BDDs
Annahme: (monolithische oder partitionierte) BDDs f ¨ur Transitionsrelation
R ¨ uckw ¨artsexploration
Exploration des Zustandsraumes: Am besten r ¨uckw ¨arts beginnend mit den Zielknoten und einem leeren Plan.
Berechnung der Vorg ¨angermenge: F ¨ur das starke und schwache Planen unterschiedlich.
F ¨ur schwache Pl ¨ane fordern wir nur die Existenz eines Nachfolgers, der das Ziel erreicht, . . .
. . . w ¨ahrend wir f ¨ur starke Pl ¨ane, diese Bedingung von alle Nachfolgern einfordern.
Starke und Schwache Urbilder
WeakPreImage(S, O) = {S | R(S, O, S0), S0 ∈ S}
Menge aller Zust ¨ande, von denen aus man mit O in S landen kann und
SrongPreImage(S, O) = {S | ∅ 6= Exec(S, O) ⊆ S}
Menge aller Zust ¨ande, in denen O anwendbar ist und jede Ausf ¨urung in S landet.
Procedure PreImage(S)
if (Strong) return ∀e : (T → S) ∧ Applicable if (Weak) return ∃e : T ∧ S
Algo. zur schwachen bzw. starken Planfindung
Zustandsaktionstabelle wird in jedem Schritt um die Bildberechnung zum Vorg ¨anger erweitert.
Bezeichnungen
• Alte Tabelle π0,
• neue Tabelle mit π
Algorithmus terminiert, falls sich keine weitere Ver ¨anderung von π0 nach π ergibt.
Alternativen Abbruch, wenn BFS vom Ziel ausgehend alle Initialzust ¨ande umfasst.
Pseudo-Code Implementation
Procedure Nondeterministic π0 ← 1
π ← 0
S ← G ∨ S(π)
while (π 6= π0) ∧ (I 6⊆ S) π0 ← π
Π ← PreImage(S) Π ← Π[p ↔ e]
π ← π ∨ (Π ∧ ¬S) S ← G ∨ S(π)
Temporale Ziele
Stark zyklische Pl ¨ane k ¨onnen in den Kontext temporal erweiterter Ziele eingegliedert werden.
Hierbei geht es darum mit dem Planziel eine temporallogische Formel zu verbinden, die den G ¨ultigkeitsbereich des Zieles festlegt.
Vorgeschlagen wurde der temporallogische Kalk ¨ul CTL (Branching Time Logic) In CTL steht A f ¨ur always, G f ¨ur generally, E f ¨ur existential, und F f ¨ur eventually.
Die ¨Uberpr ¨ufung, ob eine temporallogische Formel φ in einem Modell M gilt, wird in der Modellpr ¨ufung untersucht.
Alternative: Linear Temporal Logic (LTL)
Schwache und Starke Pl ¨ane in CTL
Forderung nach einem schwachen Plan zum Ziel φ, durch Formel EF φ. Forderung nach einem starken Plan zum Ziel φ, durch Formel AG φ.
Forderung nach einem stark-zyklischer Plan zum Ziel φ, durch Formel AGEF φ.
AGEF φ liest sich als: es ist f ¨ur alle Auswahlen von Pfaden immer gegeben, dass es einen ausgehenden Weg gibt, bei dem Formel φ erf ¨ullt ist.
4 Konformantes Planen
Aufgabe: Sequenz von Aktionen - Gegebene Unsicherheit ¨uber den Initialzustand und ¨uber Effekte von Aktionen - ohne Informationsgewinn ¨uber den aktuellen
Zustand
Ein konformanter Plan ist somit eine Welten das Planziel erreicht.
Ein Plan ist konformant, falls
• die Menge der Startzust ¨ande I in π enthalten ist, kurz I ⊆ S(π) und
• die Ausf ¨uhrung von π in I das Ziel erreicht, also Exec(π,I) ⊆ G.
Konformantes Planen mit BDDs
Der symbolische Ansatz zum konformanten Planen nutzt Zustandsplantabellen SP, die Paare (S, π) mit S ⊆ S und π ∈ O∗ beschreiben.
Dabei sei der leere Plan.
Die Eingabe des Algorithmus sind die Mengen I und G.
Menge aller konformanter Pl ¨ane in der Tabelle SP durch
GetPlans(G, SP) = {π | ∃(S, π) ∈ SP ∧ S ⊆ G}
Weitere Teilroutinen
ConformantImage generiert eine neue SP Tabelle, die alle Erweiterung der konformanter Pl ¨ane der L ¨ange i − 1 betreffen.
ConformantImage(SP) =
{((S, π), O)| ∃(S0, π) ∈ SP ∧ O ∈ Act(S0) ∧ S = Exec(O, S0)}
ConformantPrune: L ¨oschungen neu generierter Tabelle SP von den Pl ¨anen, die entweder von anderen Pl ¨anen gleicher oder geringerer L ¨ange subsumiert werden.
ConformantPrune(SP, i) =
Pseudo-Code: Symbolisch Konformantes Planen
Procedure ConformantPlan(I,G) i ← 0
SP0 ← {I, }
Π ← GetPlans(G, SP0)
while (SPi 6= ∅) ∧ (Π = ∅) i ← i + 1
SPi ← ConformantImage(SPi−1) SPi ← ConformantPrune(SPi−1, i) Π ← GetPlans(G, SPi)
if (SPi = ∅) exit
else
return Π
Eigenschaften
Terminierung:
Satz ConformantPlan terminiert immer.
Wird durch die Monotonie der Mengen konformanter Pl ¨ane gesichert.
Optimalit ¨at:
Satz ConformantPlan liefert optimal kurzen konformanten Plan.
Breitendurchlaufordungung sichert, dass ein konformante Plan mit k ¨urzester Planl ¨ange als erstes gefunden wird.
BDD Codierung
Propositionen p: mit je einer Variablen codiert.
Menge von Zust ¨anden: Durch eine Boole’sche Formel φ codiert.
Transitionsrelation: R(S, O, S0)
⇒ Pl ¨ane der L ¨ange k in den SP-Tabellen ¨uber die Planvariablen o1, . . . , ok f ¨ur O1, . . . , Ok geschehen kann.
So repr ¨asentiert o1 ∧ ¬o2 mit k = 2 einen Plan (O1, O2).
Die Formel ¬O1 mit k = 2 ist eine kompakte Repr ¨asentation f ¨ur die zwei Pl ¨ane (O2, O2) und (O2, O1).
Implementation: Model Based Planner (MBP)
Konformantes Planen als Erf ¨ ullbarkeitsproblem
Eine M ¨oglichkeit ist die Kodierung des Planungsproblems als quantifizierte Boole’sche Formel (QBF):
Ist f0 = Q1x1 . . . Qnxn f(x) mit Qi ∈ {∃,∀} und Boole’scher Formel f erf ¨ullbar?
Dabei werden die Quantoren schon in sogenannter Pr ¨anexform nach vorn gestellt.
Modellierung: Nichtdeterminismus sei es im Initialzustand oder bei der Operatorausf ¨uhrung jeweils durch Quantoren
Satz: QBF Erf ¨ullbarkeit ist PSPACE-vollst ¨andig
⇒ Komplexit ¨atstheorie
Idee Polynomialit ¨at
Jede 2-Sat Formel a ∨ b ist ¨aquivalent zu ¬a → b bzw. ¬b → a.
Bilde Graph Gf mit Knotenmenge {x1, . . . , xn} ∪ {¬x1, . . . ,¬xn}, der diese Formeln als Kanten darstellt.
Es existiert eine erf ¨ullende Belegung f ¨ur f ⇔ Gf hat keinen Zyklus der Form xi →∗ ¬xi →∗ xi
Linearzeit-Implementation ¨uber starken Zshg.-Komponenten und Anfragen der Form f ind(x) = f ind(¬x).
Analog zur Belegung in 2-SAT erfolgen f ¨ur 2-QBF die Festlegung der Variablen von links nach rechts.
Planungsans ¨atze
QBF-L ¨oser z.B. von Rintanen oder Giunchiglia et al. nutzen eine Erweitertung der Davis Dutnam Prozedur.
Konformantes Planen:
1. Generalisierung von SATPLAN auf nicht-deterministische Problemstellungen 2. Generate-and-Test Ansatz von Ferraris & Giunchiglia,
Im generate Schritt werden innerhalb der Davis-Putnam Prozedur nach und nach Pl ¨ane generiert, die (getestet) werden, ob sie die Menge der Initialzust ¨ande in den Zielzustand ¨uberf ¨uhren.
5 Alternative Ans ¨atze zum Konformanten Planen
Conformant Graphplan: Planungsgraph f ¨ur jede m ¨ogliche Folge von m ¨oglichen Welten (Initialzust ¨anden) gebildet.
Konformanz-Bedingungen werden zwischen den Planungsgraphen propagiert.
FragPlan: Behandelt Planfragmente verschiedener Welten, die nach und nach zu einem konformanten Plan erg ¨anzt werden.
Ein Fragment ist ein Plan zumindest f ¨ur eine Welt.
Hoffnung: Nur wenige Welten begr ¨unden den konformanten Plan
Konformantes Planen als Heuristisch Suche
Ohne konditionale Effekte: Anstatt die Propositionen zu betrachten, die wahr sind, muss er Propositionen betrachten, die gesichert wahr sind.
Konditionale Effekte e einer STRIPS Aktion a = (P, A, D):
Tripel (C(e), A(e), D(e)), die in Zustand S ∈ S anwendbar sind, wenn die Bedingungen P ⊆ S und C(e) ⊂ S erf ¨ullt sind.
Annahme: A ∩ D = ∅ und A(e) ∩ D(e) = ∅
Unsicherheit im Initialzustand
Propositionen p werden als unbekannt markiert.
Disjunktion: l1 ∨ . . . ∨ lk von markierten Literalen l1, . . . , lk sagt aus, dass alle m ¨oglichen Initialzust ¨ande diese Formel erf ¨ullen.
⇒ Menge von Initialzust ¨anden I ⊆ S mit bekannt positiven bzw. bekannt negativen und unbekannten Propositionen.
π konformanter Plan: Wenn Anwendung f ¨ur jedes I ∈ I einen Zustand liefert, der das Ziel erf ¨ullt.
Achtung: Konditionale Effekte k ¨onnen f ¨ur unterschiedliche Zust ¨ande unterschiedliche Resultate liefern k ¨onnen.
Unterscheidung
Weltzust ¨anden, die aus einer Menge von Propositionen bestehen und
Suchzust ¨anden, die aus einer Menge von m ¨oglichen Weltzust ¨anden bestehen.
Suchzustand S entspricht einem zum Teil ausgef ¨uhrten Plan πk (als Prefix von π).
• Proposition p ist in S positiv bekannt, falls f ¨ur alle I ∈ I die Anwendung π(I) in einen Weltzustand f ¨uhrt, in dem p enthalten ist.
• Proposition p ist in S negativ bekannt, falls f ¨ur alle I ∈ I die Anwendung π(I) in einen Weltzustand f ¨uhrt, in dem p nicht enthalten ist.
• Alle weder positiv oder negativ bekannten Propositionen sind unbekannt.
Komplexit ¨at Bekanntheit
Die Entscheidung, ob f ¨ur ein gegebenen Suchzustand S und Teilplan πk eine Proposition p bekannt ist, ist co-NP vollst ¨andig.
Beweis fehlt.
Analog: Problem zu entscheiden, ob eine Proposition p negativ bekannt ist, co-NP vollst ¨andig ist.
⇒ Problem zu entscheiden, ob eine Proposition p unbekannt ist, NP-vollst ¨andig.
Beweis gilt ¨ubrigens auch f ¨ur ein relaxierten Plan, d.h. in einem Plan ohne negative Effekte.
. . . gibt bessere M ¨oglichkeit, als die Generierung aller Initialzust ¨ande
SAT L ¨ osen
In dem Algorithmus wird eine Boolesche Formel φ(πk) erzeugt, die Proposition pk genau dann impliziert, falls p im Suchzustand S = πk(I) positiv bekannt ist.
F ¨ur jeden Zustand S und jede Proposition p wird ein SAT-L ¨oser mit der Formel φ(πk) ∧ ¬pk aufgerufen.
Ist die Formel unerf ¨ullbar, so ist p positiv bekannt.
Analog wird der L ¨oser mit φ(πk) ∧ pk aufgerufen.
Ist diese Formel unerf ¨ullbar, so ist p unbekannt.
Der Aufbau von φ ( π
k)
F ¨ur die Menge von Initialzust ¨anden wird Klausel p0 f ¨ur alle positiv bekannten p und Klausel ¬p0 f ¨ur alle negativ bekannten p gesetzt.
F ¨ur die unbekannten Literale, die mit l1 ∨ . . . lk die Unsicherheit im Initialzustand beschreiben, wird die Klausel l01 ∨ . . . lk0 gesetzt.
Nun betrachten wir die erste Aktion O1 ∈ πk.
Axiome
Effekt Axiome F ¨ur jeden Effekt e in Aktion O1 mit Bedingung
C(e) = {p1, . . . , pm} und jeder Proposition p ∈ A(e) f ¨ugen wir die Klausel
¬p10 ∨ . . . ∨ ¬pm0 ∨ p1 hinzu. F ¨ur jede Proposition p ∈ D(e) f ¨ugen wir die Klausel ¬p10 ∨ . . . ∨ ¬pm0 ∨ ¬p1 hinzu
Frame Axiome F ¨ur jede Proposition p seien e1, . . . , en die Effekte von O1 mit p ∈ D(ei). F ¨ur jedes Tupel p1, . . . , pm mit pi ∈ C(e) wird
¬p0 ∨p10 ∨. . .∨ ¬pm0 ∨p1 eingef ¨ugt (p wahr und nicht gel ¨oscht → p bleibt wahr) Analog seien f ¨ur jede Proposition p, e1, . . . , en die Effekte von O1 mit
p ∈ A(ei). F ¨ur jedes Tupel p1, . . . , pm mit pi ∈ C(e) wird nun die Klausel p0 ∨ p10 ∨ . . . ∨ ¬pm0 ∨ ¬p1 eingef ¨ugt (p falsch und nicht gesetzt → p bleibt falsch)
Rest
Die Konstruktion wird gleichermaßen f ¨ur den Rest von πk, also die Aktionen O2, . . . , Ok, durchgef ¨uhrt
Die Klauseln werden zu φ(πk) hinzugef ¨ugt.
Sie sichern
• dass f ¨ur jeden gew ¨ahlten Initialzustand I ∈ I und Proposition p exakt eine erf ¨ullende Belegung existiert und
• dass p nach Ausf ¨uhrung von φ(πk) in I gilt.
Beispiel
Angenommen ein Roboter ist initial an einer von zwei Positionen X und Y
⇒ I entspricht Formel ((at X) ∨ ¬(at X)) ∧ ((at Y) ∨ ¬(at Y)). Das Ziel ist sicher in die Position Y zu gelangen.
Die einzige Aktion ist (moveright) mit leerer Vorbedingungsliste und einem bedingten Effekt ((at X),(at Y),(at X)).
Der konditionale Plan π1 bestehe nur aus der Aktion (moveright).
Beispiel (ctd.)
Die Formel φ(p1) besteht aus den Kauseln f ¨ur den Initialzustand (at X)0 ∨ ¬(at X)0
und ¬(at Y)0 ∨ ¬(at Y)0.
Desweiteren kommen zwei Klauseln Effekt-Axiome f ¨ur (moveright):
¬(at X)0 ∨ (at Y)1 (Add-Effekt) und
¬(at X)0 ∨ ¬(at X)1 (Delete-Effekt).
Frame-Axiome
¬(at X)0 ∨ (at X)0 ∨ (at X)1 (positiv f ¨ur (at X)),
¬(at Y)0 ∨ ¬(at Y)1 (positiv f ¨ur (at Y)),
(at X)0 ∨ ¬(at X)1, (negativ f ¨ur (at X)), und
(at Y)0 ∨ ¬(at X)0 ∨ ¬(at Y)1 (negativ f ¨ur (at Y)).
Test auf Bekanntheit
Um zu pr ¨ufen, ob (at X) in S nach Ausf ¨uhrung von π1 positiv bekannt ist, l ¨osen wir φ(π1) ∧ ¬(at X)1.
Es gibt eine erf ¨ullende Belegung, so dass (at X) nicht bekannt ist.
Um zu pr ¨ufen, ob (at Y) in S nach Ausf ¨uhrung von π1 positiv bekannt ist, l ¨osen wir φ(π1) ∧ ¬(at Y)1. Die Formel ist unerf ¨ullbar, also ist (at Y) in S positiv bekannt.
Analog ist (at X) in S negativ bekannt.
Erweitere relaxierter Pl ¨ane
. . . um bekannte Propositionen Pi+ und unbekannte Propositionen Pi− in Schicht i - Ai: Menge der Aktionen mit Vorbedingungen in Pi+
- Pi+1+ : Vereinigung der Add-Effekte in Ai - Pi+1− ← Pi− \ Pi+1+ (nun bekannt)
- Propositionen in Pi+1− , die erf ¨ullt werden k ¨onnen: P(e) ∈ Pi− ∪ Pi+ → A(e) ∈ Pi+1−
Zus ¨atzlich: ∀p ∈ P− pr ¨ufe, ob inferierbar ⇒ Bewege p von P− nach P+
Reduktion der Komplexit ¨at
Letzter Schritt eigentlich ein SAT Problem → NP vollst ¨andig Bekanntheit selbst ohne Delete-Listen NP vollst ¨andig
→ W ¨ahle nur 2 Literale in jeder SAT Klausel aus
→ Polynomielle Komplexit ¨at
→ Verwalte zus ¨atzlich einen Abh ¨angigkeitsgraphen
Abh ¨angigkeitsgraph
Betrachte Schicht i im relaxierten Plan:
Graph GI enth ¨alt Kanten (l(t), l0(t)) und (l(t), l0(t + 1)) zwischen zeitlichen Literalen mit −n ≤ t ≤ i
- Zeiten t < 0 entsprechen ausgef ¨uhrtem Pl ¨anen - Zeiten ≥ 0 entsprechen relaxiertem Plan
Kanten (l(t), l0(t)) und (l(t), l0(t + 1)) werden gesetz falls l und l0 zu den betrachteten Zeitpunkten unbekant sind
- Es gibt wieder Initialkanten, Aktionskanten und Frame-Axiom-Kanten
−
Conformant-FF
Suche: Enforced Hill-Climbing oder Bestensuche Heuristik: Planla ¨ange relaxierter Plan
SAT-L ¨oser: Eigene Implementation
Helpful Actions: Restriktion auf Aktionen, die in Schicht 1 des relaxierten Planes f ¨uhren.
Hier: Teilziel hinzugef ¨ugt,
Experimente: Bombs-in-Toilet, Omlette, Ring, Safe, Blocks, Logistics, Grid, etc.
Resultate: Wesentlich besser als BDD basierter Planer MBP in vielen aber nicht allen Problemen