• Keine Ergebnisse gefunden

Planen mit automatischen Hilfestellungen

N/A
N/A
Protected

Academic year: 2021

Aktie "Planen mit automatischen Hilfestellungen"

Copied!
22
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Planen mit automatischen Hilfestellungen

Vorlesung Handlungsplanung

Stefan Edelkamp

(2)

1 Uberblick ¨

- Reduzierte Operatorlisten - Objektsymmetrien

- Generische Typen

Uberblick¨ 1

(3)

2 Reduzierte Operatorlisten

Ziel: Erh ¨ohen der Effektivit ¨at von Planungsverfahren

Weg: Planungsproblem P wird in ein Problem P0 ¨uberf ¨uhrt, mit O0 ⊆ O.

Beispiel: Operator (move a b c), der Block a von Block b auf Block c bef ¨ordert redundant, da durch (move a b t) und (move a t c) abgedeckt.

Proposition q ∈ F ist inkonsistent zur Menge Q ⊆ F, falls es keinen von I aus erreichbaren Zustand S gibt mit Q ⊂ S und q ∈ S.

Inc(Q): Menge der Propositionen, die inkonsistent zu Q sind.

(4)

Kummulation

Kummulativen Vorbedinungen und Effekte CP, CA, CD f ¨ur eine Folge von Operatoren:

- CP(O) = PO, - CA(O) = AO,

- CD(O) = DO und

CP(O1, . . . , On, O) = CP(O1, . . . , On) ∪ (PO − CA(O1, . . . , On)), CA(O1, . . . , On, O) = (CA(O1, . . . , On) \ DO) ∪ AO, bzw.

CD(O1, . . . , On, O) = (CD(O1, . . . , On) \ AO) ∪ DO, falls CD(O1, . . . , On) ∪ PO = ∅ und nicht definiert, sonst.

Reduzierte Operatorlisten 3

(5)

Kummulative Semantik

Lemma: Kummulativen Operatoren besitzen Strips-Semantik, d.h. wenn CP(O1, . . . , On) ⊆ S

dann ist der Nachfolger S0 = (S \ CD(O1, . . . , On)) ∪ CA(O1, . . . , On). Beweis: Vollst ¨andige Induktion ¨uber n.

(6)

Implementierung und Redundanz

Folge π von Operatoren (O1, . . . , On) implementiert O, falls O nicht in π enthalten ist, CP(O1, . . . , On) ⊆ PO, AO ⊆ CA(O1, . . . , On) ⊆ PO und

CD(O1, . . . , On) ⊆ DOInc(PO).

Operator O ∈ O ist redundant, wenn es eine Folge von Operatoren in O \ {O} gibt, die O implementiert. Eine Operatormenge O ist reduziert, wenn es keine

redundanten Operatoren in O gibt.

Beispiel: Kummulativer Effekt von (move a b t) und (move a t c) enth ¨alt das Atom (on-table a), das nicht von dem Operator (move a b c) gel ¨oscht wird.

Allerdings: Atom f ¨ur nahezu jeden Initialzustand inkonsistent mit (on a b), einer Vorbedingung des ausgetauschten Operators.

Reduzierte Operatorlisten 5

(7)

Korrektheit

Satz

Falls O redundant ist und Folge (O1, . . . , On) Operator O implementiert, dann ist (O1, . . . , On) in S andwendbar, falls O in S anwendbar ist.

Falls S0 das Resultat der Anwendung von O ist und S00 das Resultat der Anwendung seiner Impelementierung, gilt S0 ⊆ S00.

(8)

Beweis

Da S00 = (S \ CD(O1, . . . , On)) ∪ CA(O1, . . . , On), gilt f ¨ur jedes Atom q ∈ S0 = (S \ DO) ∪ AO): q ∈ S00 falls

- entweder a ∈ S und q 6∈ CD(O1, . . . , On) oder - q 6∈ CA(O1, . . . , On).

Erster Fall: q kann nicht in Inc(PO) liegen, da O in S anwendbar ist und PO ⊆ S gilt.

⇒ q 6∈ CD(O1, . . . , On) ⊆ DOInc(O). Zweiter Fall: AO ⊆ CA(O1, . . . , On),

⇒ q ∈ CA(O1, . . . , On) und q ∈ S00.

Reduzierte Operatorlisten 7

(9)

Komplexit ¨at

Im schlimmsten Fall ist die Entscheidung, ob ein Operator redundant ist so hart wie das Planungsproblem selbst.

Dieses l ¨aßt sich mit folgenden polynomiellen Transformation leicht einsehen:

PO = I, AO = G und DO = D(P) \ G.

→ Jeder Plan implementiert f ¨ur P Operator O

→ O ist redundant genau dann, wenn P eine L ¨osung hat.

(10)

3 Objektsymmetrien

Planungsdom ¨anen ¨ublicherweise parametrisiert

⇒ Tausch von Objekten in der Problembeschreibung f ¨ur die Dom ¨anenbeschreibung transparent.

Beispiele: Objekte in Zeno sind dan, city-a, und plane. Alle Objektsymmetrien: n!, n = |OBJ | Kandidaten.

Beschr ¨ankung von Objekten gleichen Typs bleiben

n

t1, t2, . . . , tk

= n!

t1! · t2! · . . . · tk!.

Symmetrien, wobei ti die Anzahl der Objekte vom Typ i, i ∈ {1, . . . , k} ist.

Objektsymmetrien 9

(11)

Objekttranspositionen

Maximal n(n − 1)/2 ∈ O(n2) Objekttranspositionen.

Objekttransposition (o, o0) ∈ M f ¨ur eine Proposition f = (p o1, . . . , ok(p)) ∈ F, kurz f[o ↔ o0], ist definiert als (p o01, . . . , o0

k(p)) mit o0i = oi, falls oi ∈ {o, o/ 0}, oi = o0, falls oi = o, und oi = o, falls oi = o0, i ∈ {1, . . . , k(p)}.

Eine Objekttransposition (o, o0) ∈ M f ¨ur eine Aktion O ∈ O ist analog definiert.

Es gilt f ¨ur alle f ∈ F, O ∈ O, und (o, o0) ∈ M: f[o ↔ o0] = f[o0 ↔ o], O[o ↔ o0] = O[o0 ↔ o], f[o ↔ o0][o ↔ o0] = f, O[o ↔ o0][o ↔ o0] = O.

Zeitkomplexit ¨at: f[o ↔ o0] ∈ F eigentlich O(k(p)), O(1) eine O(|M| · |F |) große

(12)

Zust ¨ande und Planungsprobleme

Eine Objekttransposition (o, o0) ∈ M angewendet auf den Zustand S ∈ S, kurz S[o ↔ o0], ist gleich {f0 ∈ F | f ∈ S ∧ f0 = f[o ↔ o0]}

Ein Planungsproblem P = hS,O, I,Gi ist symmetrisch zur Objekttransposition (o, o0) ∈ M, kurz P[o ↔ o0], falls I[o ↔ o0] = I und f ¨ur alle G ∈ G:

G[o ↔ o0] ∈ G.

Zeitkomplexit ¨at: Wird das Planungsziel mit p Propositionen beschrieben, dann ist der Aufwand zu tesen, ob P = hS,O,I,Gi symmetrisch zu (o, o0) ∈ M ist, gleich O(|M| · (p + |I|)).

Objektsymmetrien 11

(13)

Verfeinerungen

Symmetrien, die im Initialzustand gelten, k ¨onnen w ¨ahrend der Exploration verschwinden oder sich neu bilden.

Da sich innerhalb einer Vorw ¨artssuche das Planungsziel nicht ¨andert, muss nur der der aktuelle Zustand auf bestehende Symmetrien ¨uberpr ¨uft werden.

⇒ Verfeinerung der Menge M zu

M0 = (o, o0) ∈ M | ∀ G ∈ G : G[o ↔ o0] = G . Dabei ist |M0| oft viel kleiner als |M|.

Test, ob ein Planungsproblem mit derzeitgen Zustand C symmetrisch zu

(14)

Anwendung von Objekttranspositionen

Berechne Menge M00(C) = {(o, o0) ∈ M0 | C[o ↔ o0] = C} derjenigen Objektsymmetrien, die in C gelten.

Act(C): Menge der Aktionen, die in Zustand C ∈ S anwendbar sind.

Pruning-Menge: ∆(C,M00(C)) ⊂ Act(C) Menge aller Aktionen, die einen symmetrischen Partner haben, der nicht den minimalen Index hat.

∆(C,M00(C)): Menge aller O ∈ Act(C) mit der Eigenschaft:

∃ O0Act(C) : φ(O0) > φ(O) und ∃ (o, o0) ∈ M00(C) : O0 = O[o ↔ o0]. Reduktion von Act(C,M00(C)) ⊆ Act(C) bzgl. M00(C):

Act(C,M00(C)) = Act(C) \ ∆(C,M00(C)).

Wir schreiben Act0(C) f ¨ur Act(C,M00(C)) und ∆0(C) f ¨ur ∆(C,M00(C)).

Objektsymmetrien 13

(15)

Reduktion erh ¨alt Vollst ¨andigkeit

Die Reduktion der Menge Act(C) to Act0(C) w ¨ahrend der Exploration von P = hS,O,I,Gi erh ¨alt die Vollst ¨andigkeit.

Beweis Angenommen, dass f ¨ur einen Zustand C die Reduktion von Act(C) auf Act0(C) die Vollst ¨andigkeit zerst ¨ort.

Weiter sei C maximial in dieser Eigenschaft bzgl. der Explorationsreihenfolge gew ¨ahlt.

(16)

Beweis

⇒ ex. ein sequentieller Plan π = (O1 . . . , Ok) in PC = hS,O,C,Gi mit Zustandsfolge (S0 = C, . . . , Sk ⊆ G) und OiAct(Si−1), i ∈ {1, . . . , k}.

Durch die Wahl von C haben wir O1Act(S0) \ Act0(S0) = ∆0(S0).

Per Definition von ∆0(S0) existiert O10 = O1[o ↔ o0] mit minimalen Index, der in S0 anwendbar ist.

PC = hS,O,C,Gi = PC[o ↔ o0] = hS,O,C[o ↔ o0] = C,G[o ↔ o0] = Gi

⇒ existiert ein sequentieller Plan O1[o ↔ o0], . . . , Ok[o ↔ o0] mit Zustandsfolge (S0[o ↔ o0] = S0, S1[o ↔ o0], . . . , Sk[o ↔ o0] = Sk), der das Ziel G erreicht Dies widerspricht der Annahme, dass die Reduktion von Act(C) auf Act0(C) die Vollst ¨andigkeit verletzt.

Objektsymmetrien 15

(17)

4 Generische Typen

Generische Typen werden in der statischen Analyse erschlossen und basieren auf der Darstellung von sogenannten Eigenschaftsr ¨aumen durch endliche Automaten.

Zust ¨ande: Projektionen von Propositionen auf einer ihrer Argumente.

Beispiel Rocket-Dom ¨ane mit at1 in1, fuelled1 oder unfuelled1. Index gibt die jeweilige Argumentposition im Pr ¨adikat an.

Ubergange: Verlassen eines Zustands entspricht einer L ¨oschung, das Erreichen¨ eines Zustands entspricht der Hinzuf ¨ugung einer Eigenschaft.

Aktion drive beschreibt ¨Ubergang von fuelled1 zu unfuelled1. W ¨ahrend die

(18)

Regeln / Invarianzen

Ziel: Regeln der Form enablersstartend

enablers: Eigenschaft, die f ¨ur einen ¨Ubergang gelten muss

start bzw. end : Eigenschaft die bei einem ¨Ubergang bzw. verloren bzw.

hinzugewonnen werden.

Beispiel: fuelled1 ⇒ at1 → at1 Regel f ¨ur Rocket-Dom ¨ane. Dabei werden die verschiedenen Automaten zu ¨uberlagert.

Aus Menge von Regeln werden Invarianzen f ¨ur die Planungsdom ¨ane abgeleitet Beispiel Invarianz: Ein Objekt nur entweder an einem speziellen Ort oder in einem speziellen Objekt sein kann.

Diese Invarianzen erleichtern die Plangenerierung mitunter enorm.

Generische Typen 17

(19)

Klassifizierung

Gebrauchsmuster z.B. f ¨ur mobile Objekte, die sich wiederentdecken lassen.

Mobile Objekte werden durch ein Lokalisator, hier at, gefunden.

Bezogen auf ihn bewegt sich das mobile Objekt gem ¨aß der Regeln at → at auf Karten.

Hat man ein mobilies Objekt eindeutig klassifiziert, so kann man effizientere Verfahren nutzen, um z.B. den k ¨urzesten Weg bzgl. → auf der Karte zu finden.

(20)

Wiederverwendbarkeit

Man findet mobile Objekte nicht nur in klassischen Transport-Dom ¨anen, sondern auch in Dom ¨anen, wo man es nicht unbedingt erwarten w ¨urde.

In der PaintWall-Dom ¨ane werden die W ¨ande als Lokalisatoren festgestellt

Regeln der Form painted → painted weisen darauf hin, dass die Dekorationen auf den W ¨anden als mobile Objekte aufgefasst werden k ¨onnen.

Generische Typen 19

(21)

Weitere Gebrauchsmuster

Neben mobilen Objekten k ¨onnen auch

- bewegliche Objekte, wie z.B. Pakete, und

- deren Bef ¨orderungseinheiten wie z.B. Trucks, anhand der Automatstruktur erkannt werden.

Wandelung von at zu in: Eigenschaft beladen bzw. von in zu at Eigenschaft:

entladen.

Hier: Anwendung von effizienten Teilroutinen zum Finden eines guten Schedulings.

Allgemein: Teile des Planl ¨osungsprozesses werden an an spezielle L ¨oser

(22)

Generische Typen

Fox und Long sprechen in diesen Zusammenhang von generischen Typen, die f ¨ur verschiedene Dom ¨anen existieren.

Leider ist der Inferenzmechanismus zu komplex, um im Detail dargestellt zu werden.

Generischen Typen werden zwar automatisch erkannt, ihre Beschreibung jedoch vom Benutzer vorgegeben

. . . wurden f ¨ur das Planungssystem STAN entwickelt.

Generische Typen 21

Referenzen

ÄHNLICHE DOKUMENTE

Die Bewegung eines starren Körpers lässt sich immer durch eine Kombination von Translation und Rotation beschreiben, wobei die Wahl der Rotationsachse nicht eindeutig ist (muss

[r]

Rae dolupta pellaboriore volum simagnis inus maximi, isqui dolupta solupti onseque pa dit, totatiunt aut exped qui sum inverio blaccum reiunt el int atem eum non experum

• F ¨uge kein Objekt der Brieftasche hinzu, dass nicht in die Brieftasche bef ¨ordert werden

- Kontrahierte Leiter verschwindet in der Scheune - Tür schließt sich. - Leiter dehnt sich beim

Wird jedoch die Symmetrie des Paradoxons betrachtet, und Mirko als Raumfahrer behauptet, dass er sich nicht bewege, sondern sich die Erde relativ zu ihm entfernte keh- ren sich

• dient nur als Schablone für abgeleitete Klassen I abstrakte Klassen können nicht instanziert werden. • Compiler