Tervkészítési feladatkiírás

Bevezetés

A tervkészítési feladat során egy informális, természetes nyelvű, leírás alapján kell egy STRIPS-es tervkészítő ágens környezetét formális PDDL (Planning Domain Definition Language) nyelven elkészíteni. Az elkészült formális leírást ki is kell próbálni egy - a feladathoz tartozó - alkalmas kezdeti- és célállapot felvételével, valamint egy megadott tervkészítő alkalmazás meghívásával. A feladat megoldása akkor helyes, ha a formális leírás lényegében megfelel az informális kiírásnak, és a kiadott tervkészítő alkalmazás a formális leírást elfogadva (azaz konzisztensnek találva) kiszámítja a feladatot megoldó tervet.

A feladat informális leírása minden hallgató számára testreszabott. Ezt a házi feladat portálon a tervkészítési feladat kiválasztása után a feladatkiírás box "Egyéni feladat leírása" pontja alól lehet elérni.

A feladat megodásához elengedhetetlen, hogy először alaposan áttanulmányozza és megértse az informálisan megadott feladat szövegét. Határozza meg, hogy a feladatban szereplő tervkészítő ágens mely cselekvéseit szükséges reprezentálni, illetve hogy az azokból kialakított terv valóban az informálisan megfogalmazott feladat megoldását adja-e! Ne feledkezzen meg arról, hogy a készülő formalizmusba netán olyan segédcselekvéseket is célszerű bevezetni a PDDL reprezentáció szintjén, melyekre a feladat szövegében nem szerepel explicit utalás. Elképzelhető, hogy ezek nélkül csak nehézkesen, vagy egyáltalán nem lenne lehetséges a szükséges előfeltételek és hatások megfelelő kialakítása. Az előfeltételek és hatások definiálásához fel kell venni a feladat szövegében előforduló tulajdonságokhoz tartozó logikai predikátumok nevét, ügyelve arra, hogy használatuk következetes legyen, és elegendőek legyenek a szükséges feltételek leírásához. A predikátumok mellett meg kell ragadni azokat a logikai objektumokat is (pl. tárgyakat, fogalmakat), amelyek a logikai univerzumot benépesítik. Az objektumok logikai típusát is meg kell adni, továbbá ezek hierarchiáját (ontológia). Bővebb információért tanulmányozza a házi feladat segédletét, és az előadásjegyzetet!

Fontos megjegyzések:

  • A formális modell felállításánál igyekezzen a feladat leírásába olyan kötöttségeket illetve sorrendiségeket NEM BEVEZETNI, amiket a feladat tényleges végrehajtása/reprezentációja NEM IGÉNYEL. Próbáljon meg tehát minél általánosabb formális reprezentációt adni a feladatra! Ennek során hagyatkozzon saját kreativitására, és találékonyságára. Az informális leírás ugyanis legtöbbször nem teljesen specifikus, és így teret enged annak, hogy az ésszerűség határain belül saját elképzelései szerint értelmezze. Díjazzuk a pozitív értelemben vett kreativitást.
  • Viszont mivel az informális kiírás értelmezése is része a házi feladatnak, ezért nem áll módunkban segíteni benne (se email-ben, se személyesen, se egyéb módon)! A kiírás értelmezése a megoldóra van bízva! A reprezentáció elkészítésében a segédlet (lásd. alább) nyújt további segítséget.

A feladat lényegében tehát az, hogy a kiadott, testreszabott informális leírás alapján egy helyes, formális, PDDL nyelvű tudásreprezentációt (domain + probléma leírást) készítsen, majd az elkészült formális leírást a kiadott tervkészítő alkalmazással megoldja, és a megoldási tervet a megfelelő dokumentációval együtt leadja. A következő anyagok határidőre történő leadása szükséges tehát (egyetlen szabványos ZIP fájlba csomagolva):

 

  1. Domain leírás (PDDL)

  2. Probléma leírás (PDDL)

  3. Megoldási terv (SOL)

  4. Dokumentáció (PDF)

 

Formális leírás

Az informális szöveges leírást reprezentáló, PDDL nyelvű formális leírás 2 részre tagolódik: domain (avagy tárgyterület) leírása, és a domain-en belüli konkrét probléma (kezdőállapot, objektumok, cél) leírása. Mindkét leírás lényegében egy text-fájl (ISO-8859-1 karakterkódolással, ékezetes és egyéb extra karakterek nélkül). Mindkét fájl kiterjesztése .pddl. A formális leírás elkészítéséhez az előadási anyagokon túl a következőkre van szükség:

  • A formális reprezentáció elkészítéséhez és megoldásához szükséges segédletet ITT találja.
  • A formális reprezentáció megoldásához szükséges tervkészítő alkalmazás Windows-os változatát ITT, Linux-os változatát pedig ITT találja.

A domain- és probléma-leírást tehát úgy kell elkészíteni, hogy értelmileg maximálisan megfeleljen a informális szöveges leírásnak, továbbá az LPG (Local search in Planning Graphs) tervkészítő alkalmazás bementére adva megfelelő megoldási terv álljon elő, amely a szöveges feladat helyes formális megoldásának tekinthető.

A domain leírásban a :strips és :equality követelményeket használja. Szükség esetén a :typing követelményt is használja (ha úgy látja jónak, ha megkönnyíti, egyszerűbbé és átláthatóbbá teszi a tudásreprezentációt), azaz szükség esetén mind a domain, mind pedig a probléma leírásba bevezetheti az objektumok típusát, viszont a :fluents követelmény (azaz a numerikus változók) használatát lehetőleg kerüljük el, ha egy mód van rá, mivel ez már nem része a tananyagnak, és az LPG is robusztusabb nem-numerikus esetben.

Amennyiben az LPG futtatása során hibát tapasztal, vagy kérdése merül fel, a választ először a GyIK (Gyakran Ismételt Kérdések) közt keresse!!

 

Formális megoldás

A feladat megoldását (a megoldási tervet) az LPG generálja "-quality" opcióval.

 

A megoldás dokumentációja

A házi feladat megoldásának rövid, de átfogó (3-10 oldalas) dokumentációját szabványos Adobe PDF formátumban kérjük beadni. A dokumentációnak tartalmaznia kell egy előlapot (cím, beadó neve, neptun kódja, e-mail címe, dátum), továbbá a formális leírás felépítésének és a megoldási tervnek egy érthető, átfogó, ámde tömör magyarázatát (domain és probléma különválasztása, predikátumok, cselekvések, típusok, objektumok, kezdeti állapot, cél bevezetése, futási eredmények értelmezése, stb). A dokumentáció nem tartalmazhatja a formális leírásokat (legfeljebb rövid részleteket).

 

Példa

A jobb megértés érdekében álljon itt egy példa. A következő ábra szemlélteti a példát.

Megjegyzés: Látható, hogy a megoldásban szándékosan nem folyamodtunk a típusok bevezetéséhez. Ez itt most a példa egyszerűségébol adódik - nem volt rájuk szükség. Viszont a kiadott házi feladat kapcsán jó esély van arra, hogy célszerű tipizálni az objektumokat. De, végső soron, önnek kell eldöntenie, hogy szükség van-e típusokra. Önnek kell eldönteni, hogy feladata értelmesen reprezentálható-e típusok bevezetése nélkül, vagy sem...

 

Értékelés

A feladatra 0, vagy 7 vagy 8 pont kapható (köztes pontszám nincs). A 7 pont feltételei az alábbiak:

  • A formális leírás (a szabad értelmezés határain belül) megfelel az informális kiírásnak.
  • A domain és problem fájlok alapján a LPG képes tervet előállítani, mely terv nem triviális, és a kiírásban megfogalmazott feladatra megoldást jelent.
  • A dokumentáció elfogadható minőségű (legalább 3 oldal és kitér a megoldás minden lényeges pontjára).

A feladatra 0 pont jár, amennyiben:

  • a formális reprezentáció túlzottan egyszerűsített, vagy
  • az LPG nem képes megoldást generálni (hibát dob), vagy
  • az LPG nem képes 15 percnél hamarabb megoldást adni egy standard asztali PC-n (2GB RAM, Intel Core 2-es ~2 GHz-es CPU), vagy
  • a dokumentáció erősen hiányos, vagy
  • hiányzik valamely leadandó fájl (vagy a domain, vagy a probléma leírás, vagy a kigenerált terv, vagy a dokumentáció).

A különösen igényes megoldásokat 8 ponttal jutalmazzuk.

© 2010-2024 BME MIT | Hibajelentés | Használati útmutató