Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Felix Mühlbauer, 4.7.2001 Wegeplanung mit Domainunabhängigen Planern realisieren Projektseminar 2001: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn)

Ähnliche Präsentationen


Präsentation zum Thema: "Felix Mühlbauer, 4.7.2001 Wegeplanung mit Domainunabhängigen Planern realisieren Projektseminar 2001: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn)"—  Präsentation transkript:

1 Felix Mühlbauer, 4.7.2001 Wegeplanung mit Domainunabhängigen Planern realisieren Projektseminar 2001: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) Felix Mühlbauer

2 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 2 Übersicht Domainunabhängige Planer PDDL (Planning Domain Definition Language) traindomain.pddl (unsere Eisenbahndomain) Implementierung

3 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 3 Domainunabhängige Planer domainunabhängige Planung ist sehr jung planning competition AIPS-98 (Artificial Intelligence Planning Systems) http://www.cs.cmu.edu/~aips98http://www.cs.cmu.edu/~aips98 AIPS Komitee definiert PDDL Standard Bsp: IPP, FF, talplaner, …

4 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 4 PDDL PDDL Vorfahren: Pednaults ADL (Aussagen) UMCP (Aktionen) UCPOP SIPE-2 Prodigy-4.0 Unpop

5 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 5 PDDL domains domain Beispiel: (define (domain ChuChu) (:requirements :strips :typing :conditional-effects :existential-preconditions) (:types track engine) (:predicates (at ?eng - engine ?t - track) (connects ?t1 - track ?t2 - track)...... )

6 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 6 PDDL domains domain Beispiel: (define (domain ChuChu) (:requirements :strips :typing :conditional-effects :existential-preconditions)) (:types track engine) (:predicates (at ?eng - engine ?t - track) (connects ?t1 - track ?t2 - track)...... )

7 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 7 PDDL domains domain Beispiel: (define (domain ChuChu) (:requirements :strips :typing :conditional-effects :existential-preconditions) (:types track engine) (:predicates (at ?eng - engine ?t - track) (connects ?t1 - track ?t2 - track)...... )

8 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 8 PDDL domains domain Beispiel: (define (domain ChuChu) (:requirements :strips :typing :conditional-effects :existential-preconditions) (:types track engine) (:predicates (at ?eng - engine ?t - track) (connects ?t1 - track ?t2 - track))...... )

9 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 9 PDDL domains domain Beispiel: (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (or (connects ?from ?to) (connects ?to ?from)) :effect (and (at ?eng ?to) (not (at ?eng ?from)) )

10 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 10 PDDL domains domain Beispiel: (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (or (connects ?from ?to) (connects ?to ?from)) :effect (and (at ?eng ?to) (not (at ?eng ?from)) )

11 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 11 PDDL domains domain Beispiel: (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (or (connects ?from ?to) (connects ?to ?from)) :effect (and (at ?eng ?to) (not (at ?eng ?from)) )

12 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 12 PDDL domains domain Beispiel: (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (or (connects ?from ?to) (connects ?to ?from)) :effect (and (at ?eng ?to) (not (at ?eng ?from)) )

13 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 13 PDDL facts facts Beispiel: (define (problem fact1) (:domain chuchu) (:objects t1 t2 t3 t4 - track eng1 - engine)) (:init (connects t1 t2) (connects t2 t3) (connects t3 t4) (connects t4 t1) (at eng1 t1)) (:goal (at eng1 t3)) )

14 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 14 PDDL facts facts Beispiel: (define (problem fact1) (:domain chuchu) (:objects t1 t2 t3 t4 - track eng1 - engine)) (:init (connects t1 t2) (connects t2 t3) (connects t3 t4) (connects t4 t1) (at eng1 t1)) (:goal (at eng1 t3)) )

15 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 15 PDDL facts facts Beispiel: (define (problem fact1) (:domain chuchu) (:objects t1 t2 t3 t4 - track eng1 - engine)) (:init (connects t1 t2) (connects t2 t3) (connects t3 t4) (connects t4 t1) (at eng1 t1)) (:goal (at eng1 t3)) )

16 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 16 PDDL facts facts Beispiel: (define (problem fact1) (:domain chuchu) (:objects t1 t2 t3 t4 - track eng1 - engine)) (:init (connects t1 t2) (connects t2 t3) (connects t3 t4) (connects t4 t1) (at eng1 t1)) (:goal (at eng1 t3)) )

17 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 17 FF Ausgabe FF (Fast-Forward von Jörg Hoffmann) Bildschirmausgabe: ff: parsing domain file domain 'CHUCHU' defined... done. ff: parsing problem file problem 'FACT1' defined... done. ff: found legal plan as follows step 0: MOVE ENG1 T1 T2 1: MOVE ENG1 T2 T3 time spent: 0.06 seconds instantiating 0 easy, 840 hard action templates 0.00 seconds reachability analysis, yielding 84 facts and 36 actions 0.00 seconds creating final representation with 32 relevant facts 0.00 seconds building connectivity graph 0.00 seconds searching, evaluating 3 states, to a max depth of 1 0.06 second s total time

18 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 18 traindomain.pddl Aufgabenstellung: Wegeplanung mit domainunabhängigen Planern realisieren

19 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 19 traindomain.pddl ein Gleisplanbeispiel

20 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 20 traindomain.pddl Problem: In welche Richtung fährt die Lok ? (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (or (connects ?from ?to) (connects ?to ?from)) :effect (and (at ?eng ?to) (not (at ?eng ?from)) )

21 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 21 traindomain.pddl domain Erweiterung: (:predicates (at ?eng - engine ?t - track) (connects ?t1 - track ?t2 - track) (connects-rev ?t1 - track ?t2 - track) (switch ?from - track ?to1 - track ?to2 - track) (switch-rev ?from - track ?to1 - track ?to2 - track) (moves-rev ?eng - engine) (can-turn ?eng - engine) (is-turner ?t1 - track ?t2 - track) (noturn ?t – track) (turnok ?eng – engine) )

22 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 22 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

23 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 23 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

24 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 24 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

25 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 25 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

26 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 26 traindomain.pddl (:action move... :effect (and (at ?eng ?to) (not (at ?eng ?from)) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (moves-rev ?eng)) (not (moves-rev ?eng))) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (not (moves-rev ?eng))) (moves-rev ?eng))) )

27 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 27 traindomain.pddl (:action move... :effect (and (at ?eng ?to) (not (at ?eng ?from)) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (moves-rev ?eng)) (not (moves-rev ?eng))) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (not (moves-rev ?eng))) (moves-rev ?eng))) )

28 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 28 traindomain.pddl (:action move... :effect (and (at ?eng ?to) (not (at ?eng ?from)) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (moves-rev ?eng)) (not (moves-rev ?eng))) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (not (moves-rev ?eng))) (moves-rev ?eng))) )

29 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 29 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

30 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 30 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

31 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 31 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

32 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 32 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

33 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 33 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

34 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 34 traindomain.pddl (:action toggle-switch :parameters (?from - track ?to1 - track ?to2 - track) :precondition (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1) (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) :effect (and (when (or (switch ?from ?to1 ?to2) (switch ?from ?to2 ?to1)) (and (connects ?from ?to1) (connects-rev ?to1 ?from) (not (connects ?from ?to2)) (not (connects-rev ?to2 ?from)))) (when (or (switch-rev ?from ?to1 ?to2) (switch-rev ?from ?to2 ?to1)) (and (connects-rev ?from ?to1) (connects ?to1 ?from) (not (connects-rev ?from ?to2)) (not (connects ?to2 ?from)))))))

35 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 35 traindomain.pddl Problem beim vorhandenem Wegplaner: Im Rangiermodus darf die Weiche nicht schalten, wenn sich noch Wagons darauf befinden. Die Lok muss nach der Weiche noch weiterfahren bevor sie wieder über die Weiche zurückfährt.

36 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 36 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (not (noturn ?from)) (and (noturn ?from) (turnok ?eng))) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

37 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 37 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (not (noturn ?from)) (and (noturn ?from) (turnok ?eng))) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

38 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 38 traindomain.pddl (:action move :parameters (?eng - engine ?from - track ?to - track) :precondition (and (at ?eng ?from) (not (= ?from ?to)) (not (exists (?e - engine) (and (not (= ?e ?eng)) (at ?e ?to)))) (or (and (can-turn ?eng) (or (not (noturn ?from)) (and (noturn ?from) (turnok ?eng))) (or (connects ?from ?to) (connects-rev ?from ?to))) (and (not (can-turn ?eng)) (or (and (moves-rev ?eng) (connects-rev ?from ?to)) (and (not (moves-rev ?eng)) (connects ?from ?to))))))

39 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 39 traindomain.pddl (:action move... :effect (and (at ?eng ?to) (not (at ?eng ?from)) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (moves-rev ?eng)) (not (moves-rev ?eng))) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (not (moves-rev ?eng))) (moves-rev ?eng)) (when (noturn ?from) (turnok ?eng)) (when (not (noturn ?from)) (not (turnok ?eng))))) )

40 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 40 traindomain.pddl (:action move... :effect (and (at ?eng ?to) (not (at ?eng ?from)) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (moves-rev ?eng)) (not (moves-rev ?eng))) (when (and (or (is-turner ?from ?to) (is-turner ?to ?from)) (not (moves-rev ?eng))) (moves-rev ?eng)) (when (noturn ?from) (turnok ?eng)) (when (not (noturn ?from)) (not (turnok ?eng))))) )

41 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 41 traindomain.pddl (define (problem fact2) (:domain chuchu) (:objects t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 - track tu1 tu2 tu3 tu4 - track e1 e2 - engine) (:init ;;tracks n switches (connects t2 t3) (connects-rev t3 t2) (switch t10 t1 t11) (noturn t10) (switch-rev t2 t1 t11) (noturn t2) (switch t3 t4 tu1) (noturn t3) (switch t4 t5 tu2) (noturn t4) (connects t5 t6) (connects-rev t6 t5) (connects t6 t7) (connects-rev t7 t6) (switch-rev t8 t7 tu3) (noturn t8) (switch-rev t9 t8 tu4) (noturn t9) (connects t9 t10) (connects-rev t10 t9) ;; turners (connects tu1 tu2) (connects tu2 tu1) (is-turner tu1 tu2) (connects-rev tu3 tu4) (connects-rev tu4 tu3) (is-turner tu3 tu4) ;; engines (at e1 t1) ) (:goal (at e1 t11)) )

42 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 42 traindomain.pddl Ausgabe von FF: step 0: TOGGLE-SWITCH T3 TU1 T4 1: TOGGLE-SWITCH T2 T1 T11 2: MOVE E1 T1 T2 3: TOGGLE-SWITCH T2 T11 T1 4: MOVE E1 T2 T3 5: MOVE E1 T3 TU1 6: MOVE E1 TU1 TU2 7: TOGGLE-SWITCH T4 TU2 T5 8: TOGGLE-SWITCH T3 T4 TU1 9: MOVE E1 TU2 T4 10: MOVE E1 T4 T3 11: MOVE E1 T3 T2 12: MOVE E1 T2 T11

43 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 43 traindomain.pddl Zusammenfassung traindomain.pddl: Aktionen für Lok bewegen und Weiche schalten Kollisionsvermeidung Rangiermodus Lok wendet nicht auf oder direkt nach einer Weiche

44 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 44 Implementierung der Gleisplan liegt als Graph von class gleisBauteil Objekten vor. ein PDDL facts file wird generiert und FF aufgerufen. die Ausgabe wird geparst (nur MOVE actions) und ein Vektor von class gleisBauteil erzeugt. Im Vektor sind nun die von der Lok abzufahrenden Gleisbauteile gespeichert. die übergeordnete Schicht übernimmt die Steuerung der Lok (auch Weichen schalten).

45 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 45 Domainunabhängige Planer PDDL (Planning Domain Definition Language) Syntax anhand von Beispielen traindomain.pddl – unsere Eisenbahndomain; mit funktionalen Erweiterungen im Vergleich zum bestehenden Algorithmus Implementierung mit Planern könnten sämtliche Aktionen (nicht nur Wegplanung) gesteuert werden. Zusammenfassung

46 Felix Mühlbauer, 4.7.2001 Projektseminar: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn) 46 ChuChu Vielen Dank für Ihre Aufmerksamkeit Ende


Herunterladen ppt "Felix Mühlbauer, 4.7.2001 Wegeplanung mit Domainunabhängigen Planern realisieren Projektseminar 2001: ChuChu Sprachgesteuerte Geräte (Modelleisenbahn)"

Ähnliche Präsentationen


Google-Anzeigen