Partielle Beobachtbarkeit
Vorlesung Handlungsplanung
Stefan Edelkamp
1 Uberblick ¨
- Motivation
- Planen im Belief-Zustandsraum - Kontingentes Planen
- Dynamische Programmierung - Stochastische Erf ¨ullbarkeit - BDDs
2 Motivation
Beispiel Roboter Navigation: Nur ein Teil des Weltzustandes durch Sensor-Informationen erschlossen werden kann.
Beispiel Verteiler-Schaltkreis: Konfiguration von Schaltern, um ein Licht zum Leuchten zu bringen.
- Dr ¨ahte k ¨onnen fehlerhaft sein.
- Falls fehlerhafter Draht im nicht zug ¨anglichen System Strom f ¨uhrt, dann wird ein Generatorschalter zum Schutz ge ¨offnet.
- Nicht alle Schalter zuverl ¨assig auf gegebene Kommandos reagieren.
- Der einzige Sensor liegt ausserhalb der Schaltung und zeigt an, ob die Lampe brennt oder nicht.
Motivation 2
3 Planen Belief-Zustandsraum
Im klassischen Planen Zustandsraumproblem P = hS,O,I,Gi mit - einer endliche Menge S von Zust ¨anden,
- einem Initialzustand I ∈ S
- einer Zielzustandmenge G und
- einer Menge von Operatoren O ∈ O → definiert Transitionsfunktion T(S, O). Evtl.: Gewichtsfunktion w(O) die Kosten f ¨ur die Anwendung von O.
Unsicheres Planen
Unsicheres Planen: Zus ¨atzlich unsicheres Wissen ¨uber den aktuellen Zustand.
Modellierung als Zustandsraumproblem:
1. Einer endlichen Menge B = 2S von Belief-Zust ¨anden, kann als Boole’scher Vektor B = {S1, . . . , Sk} verstanden werden.
2. Einen initialen Belief B0 = {S01, . . . , S0k0} ∈ B.
3. Einer Menge von Belief-Zus ¨anden als Planungsziel BG = {B ∈ B | ∀S ∈ B : S ∈ G}.
4. Einer ¨Ubergangsfunktion f ¨ur Beliefzust ¨ande T0(B, O) = {S | ∃S0 ∈ S : S0 ∈ T(O, S)}.
5. Aktionskosten w(O).
Planen Belief-Zustandsraum 4
Kontingentes Planen
Kontingentes Planen: Konformantes Planen mit Beobachtungen W ∈ W(O, B) bei der Ausf ¨uhrung von O in B
Beobachtungsfunktion bildet B ∈ B auf BOW = {S | S ∈ BO ∧ W ∈ W(O, S)} ab Bellman-Gleichung f ¨ur die optimale (Belief-Zustand) Wertfunktion:
V ∗(B) = min
O∈O(B) w(O) + max
W∈W(O,B)
V ∗(BOW)
!
.
Dynamische Programmierung
Die Approximation der Bellman-Gleichung ist
V (B) ← min
O∈O(B)
w(O) + max
W∈W(O,B)
V (BOW)
!
.
Planen Belief-Zustandsraum 6
Dynamische Programming in Realzeit
L ¨osung von kontingenten Planungsproblemen:
1. F ¨ur alle O in B berechne Q(O, B) = w(O) + maxW∈W V (BOW). 2. W ¨ahle Aktion O, die Q(O, B) minimiert.
3. Setze V (B) auf Q(O, B).
4. Generiere zuf ¨allige Beobachtung von W(O, B). 5. Stoppe, wenn BOW Zielzustand ist.
Variante der Einzelzustandsraumsuchtechnik LRTA*.
In GPT von Bonet und Geffner implementiert. Somit erm ¨oglicht GPT konformantes und kontingentes Planen.
4 Stochastische SAT-Planung
Erf ¨ullbarkeitsproblem f ¨ur φ ¨uber x1, . . . , xn entspricht
∃x1 . . .∃xn : E[φ(x1, . . . , xn) = >] = 1
→ Existenz einer Zuweisung, mit Wahrscheinlichkeit 1 zur Erf ¨ullung von φ(x).
Stochastischer Erf ¨ullbarkeit (Papadimitriou): Zus ¨atzlicher randomisierte Quantor ¶ SSAT-Formel ein Tripel (φ, Q, θ), wobei
- φ eine disjunktive Formel in Normalform mit Variablen x1, . . . , xn, - Q eine Abbildung der Variablen zu den Quantoren ∃ bzw. ¶ und - 0 ≤ θ ≤ 1 eine Erf ¨ullbarkeitsgrenze.
Stochastische SAT-Planung 8
Beispiel
∃x1¶x2 : E[(x1 ∨ ¬x2) ∧ (¬x1 ∨ x2) = >] ≥ 0.75
“Existiert ein x1, so dass f ¨ur ein zuf ¨alliges, gleichverteilt gew ¨ahltes x2 die erwartete Wahrscheinlichkeit zur Erf ¨ullbarkeit der Formel ≥ 0.75?”
Wert val(φ, Q) von φ unter der Quantorenordnung Q (x1 weitest-außen):
1. Wenn φ die leere Klausel enth ¨alt, dann ist val(φ, Q) = 0. 2. Falls φ keine Klauseln enth ¨alt, dann ist val(φ, Q) = 1.
3. Falls Q(x1) = ∃, dann val(φ, Q) = max{val(φ|xi=0, Q), val(φ|xi=1, Q)}, 4. Falls Q(x1) = ¶, dann val(φ, Q) = val(φ|xi=0, Q) + val(φ|xi=1, Q).
⇒ (φ, Q, θ) genau dann wahr, falls val(φ, Q) ≥ θ.
Erf ¨ ullbarkeitsalgorithmus
L ¨osung von SSAT-Formeln beruht auf einer Erweiterung des Davis-Putnam-(Logmann-Loveland) Verfahrens.
Variable unit: kommt in einer einstelligen Klausel vor
Variable pure: kommt nur mit einem Vorzeichen in allen Klauseln vor.
Parameter: Neben φ zwei Grenzen θl und θh
- mit θ = θl = θh wird SSAT Entscheidungsproblem gel ¨ost
- mit θl = 0 und θh = 1 der Wert der SSAT-Formel exakt berechnet.
Die Grenzen erm ¨oglichen ein schnelleres Pruning
Stochastische SAT-Planung 10
Auswertung stochastischer Erf ¨ ullbarkeitsformeln
Procedure EvalSSAT(φ, Q, θl, θh) if (φ = ∅) return 1
if (φ contains empty clause) return 1
if (xi is unit or pure with sign b ∧ Q(xi) = ∃) return EvalSSAT(φ|xi=b, Q, θl, θh)
if (xi is unit with sign b ∧ Q(xi) = ¶)
return EvalSSAT(φ|xi=b, Q, θl/P r[xi = b], θh/P r[xi = b])P r[xi = b]
if (Q(xi) = ∃)
v0 ← EvalSSAT(φ|x1=0, Q, θl, θh); if (v0 ≥ θh) return v0
v1 ← EvalSSAT(φ|x1=1, Q, θl, θh); return max{v0, v1} if (Q(xi) = ¶)
v0 ← EvalSSAT(φ|x1=0, Q,(θl − v0P r[x1 = 1])/P r[x1 = 0],(θh/P r[x1 = 0]) if (v0P r[x1 = 0] +P r[x1 = 1] < θl) return v0P r[x1 = 0]
if (v0P r[x1 = 0] ≥ θh) return v0P r[x1 = 0]
v1 ← EvalSSAT(φ|x1=1, Q,(θl − v0P r[x1 = 0])/P r[x1 = 1], (θh − v0P r[x1 = 0])/P r[x1 = 1]) return v0P r[x1 = 0] + v1P r[x1 = 1]
Beispiel
Tiger -Dom ¨ane (Kaebeling): Propositionen tiger-behind-left-door, dead, rewarded, und hear-tiger-behind-left-door (beobachtbar)
Start: tiger-behind-left-door mit Wahrscheinlichkeit 0.5 wahr Ziel: rewarded und (not (dead)).
Aktionen: listen-for-tiger, open-left-door, und open-right-door. Belohnung: Tiger nicht hinter der T ¨ur.
listen-for-tiger: mit Wahrscheinlichkeit 0.85 ¨Ubereinstimmung mit den
Propositionen tiger-behind-left-door bzw. tiger-behind-right-door.
Stochastische SAT-Planung 12
Kovertierung zu SSAT
. . . entspricht einer zeitlichen Dehnung der Propositionen.
I: ¬ dead0 ∧ ¬ rewarded0, G: ¬ dead1 ∧ rewarded1 Nur eine Aktion pro Zeitschritt:
(listen-for-tiger1 ∨ open-left-door1 ∨ open-right-door1).
¶ quantifizierte zuf ¨allige Propositionen zur Modellierung von Beobachtungen:
(¬ listen-for-tiger1 ∨ ¬ open-left-door1 ∨ ¬ s1 ∨
hear-tiger-behind-left-door1), (¬ listen-for-tiger1 ∨ ¬ open-left-left-door1 ∨ s1 ∨ ¬ hear-tiger-behind-door1).
Belohnungen, z.B. (¬ listen-for-tiger1 ∨ ¬ rewarded0 ∨ rewarded1) bzw.
(¬ listen-for-tiger1 ∨ rewarded0 ∨ rewarded1) beschrieben.
5 Konditionales Planen mit BDDs
Im nichtdeterministischen Planen mit partieller Beobachtbarkeit bieten sich BDDs an: Jedes BDD entspricht einem Beliefzustand.
Beobachtungen: ∧-Knoten, d.h. f ¨ur jede m ¨ogliche Beobachtung soll der Plan die Zielfindung garantieren.
Gew ¨ohnliche Aktionen: ∨-Knoten
⇒ UND/ODER Baum.
Die Exploration kann als ein 2-stufigen Tiefensuchansatz im UND/ODER-Baumes angesehen werden, in dem ein Teilbaum gefunden werden soll.
Implementation einfach und gerichtet in MBP von Bertoli, Cimatti, Roveri und Traverso
Konditionales Planen mit BDDs 14
Beispiel Roboter Navigationsproblem
Gr ¨oße: 2 × 2. Einzige innere Wand zwischen NW und SW Propositionen: NW, NE, SW, und SE
Beobachtung WallX?: Existiert Wand in angegebener Himmelsrichtung X? I = {N W, SW} und G = {SW}
Konditionaler Plan: (goE, WallN ? goS : goW ).
Von den 16 m ¨oglichen 6 erreichbare Zust ¨ande:
1. {N W, SW}, 2. {N E, SE}, 3. {SE}, 4. {N E}, 5. {N W}, 6. {SW}.
Ausf ¨ uhrung von Schritten
Schritt Verarbeitet Besucht Fehlschlag Gel ¨ost Plan
1 1
2 12
3 123
4 1234
5 12345
6 1234 5 5(4)
7 123 54 5(4),4(3)
8 1236 54 5(4),4(3)
9 123 54 5(4),4(3) 6
10 12 54 5(4),4(3) 63 (GoW)
11 124 54 5(4),4(3) 63
12 12 5 5(4) 634 (GoS, GoW)
13 1 5(4) 6342 (WallN ? GoS: GoW)
14 5(4) 63421 (GoE, WallN ? GoS: GoW)
Konditionales Planen mit BDDs 16