Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaGyöngyi Ballané Megváltozta több, mint 10 éve
1
Tervkészítés PDDL alapon 2009.05.15 Konzulens: Kovács Dániel László Intelligens rendszerek tanszék email: dkovacs@mit.bme.hu Budapest Műszaki és Gazdaságtudományi egyetem Villamosmérnöki és Informatikai kar Méréstechnika és Információs Rendszerek Tanszék Készítette: Kovács Dávid Balázs Intelligens rendszerek Bsc ágazat email: davidkovaccs@gmail.com
2
Tartalom Bevezetés Alkalmazási területek Tervkészítés lényege Tervkészítési algoritmusok PDDL (Planning Domain Definition Language) Saját tervkészítő megvalósítás Demonstráció Összefoglalás
3
Motiváció Sussman anomália Cél Állapot Kiinduló állapot Tervkészítés ?
4
Motiváció Sussman anomália
5
Alkalmazási területek Pakolási problémák Marsjáró Hadműveletek tervezése Ütemezési feladatok (pl. gyártósorok ütemezése) AUV (Autonom Underwater Vehicle) Számítógépes játékok
6
Állapottérben start cél on c a on a asztal Állapot Cselekvés on c asztal Tervtérben Részleges tervek Tervmódosító cselekvés move c asztal move b c move c asztal move b c move c asztal move b c move a b Cél - Megoldás Keresés start cél Állapot Cselekvés Tervkészítés lényege
7
Tervkészítési algoritmusok (A*) RRT(WARPLAN), FRRT(pl. WARPLAN-C), HDRRT (pl. UCPOP, SHOP2) SAT (pl. SATPLAN, CO-PLAN, LPG) Modellellenőrzéses (pl. MBP) CTL (pl. FF Planner) Graphplan (pl. LPGP)
8
PDDL (Planning Domain Definition Language) Probléma leírás (define (problem sussman) (:domain sussman) (:objects a b c) (:init (on c table) (on a table) (on b table)) (:goal (and (on a b) (on b c) (on c table)))) Tárgyterület leírás ((define (domain sussman) (:requirements :strips :equality) (:constants table) (:predicates (on ?x ?y)) (:action move :parameters (?cube ?from ?to) :precondition (and (on ?cube ?from) (not (= ?from ?to)) (not (exists ?y) (on ?y ?cube) (or (= ?to table) (not (exists ?y) (on ?y ?to))) :effect (and (on ?cube ?to) (not (on ?cube ?from)))))
9
Megvalósítás (1/3): reprezentáció Támogatott elemek Strips Egyenlőség Negált kifejezések Típusok Feltételes következmények Tervezett elemek Diszjuntív formulák Egzisztenciális kvantorok Univerzális kvantorok Numerikus formulák (pl. hasznosság) Folytonos cselekvések
10
Megvalósítás (2/3): algoritmus on(c a) Kezdeti feltételek on(c asztal) on(b asztal) not on (c asztal) not on (a c) Generált cselekvés halmaz move (c asztal) move (b c) Graphplan algoritmus – Tervkészítési gráf on (c asztal) not on (c a) on (b c) not on (b asztal) Cselekvések következményei S0 A0S1 A1
11
Megvalósítás (3/3): Szoftver Implementáció részletei: –Haskell (funkcionális nyelv) –GHC (Glasgow Haskell Compiler) 6.10.1 –Interpreter vagy natív bájtkód Parser Gráf építő Terv kereső Blokkséma:
12
Teszteredmények Tapasztalatok: – Cselekvések paramétereinek száma, objektumok száma nagyon növeli a komplexitást (lusta kiértékelés problémája) –Nagy gráfokban keresés jelentősen növeli a futási időt 3 kocka5 kocka7 kocka Futási idő0.4 sec0.5 -1 perc~ 10 perc Memória használat 65 kb70kb100kb
13
Demonstráció Probléma: –Sussmann anomália: Megoldás:
14
Összefoglalás és kitekintés Irodalomkutatás: –Tervkészítés alapjai –Graphplan –PDDL Továbblépési lehetőségek: –Optimalizálás (párhuzamosítás) –Problémaleírónyelv kiterjesztése Numerikus formulák Bizonytalan cselekvések –Tervkészítés realisztikusabb problémákon
15
Köszönöm a figyelmet! Kérdések?
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.