Segédanyagok
Segédanyagok
- Az előadáson levetített diasor: http://home.mit.bme.hu/~eredics/mi/game/documents/AgentGame.ppt
- Részles könyv a Jason működéséről (különösen ajánlott!): http://www.mit.bme.hu/oktatas/targyak/vimia313/jegyzet/jason/Programming...
- Bevezető: http://www.mit.bme.hu/oktatas/targyak/vimia313/jegyzet/jason/MI-BSc-2010...
- Jason összefoglaló: http://www.mit.bme.hu/oktatas/targyak/vimia313/jegyzet/jason/Jason-ismer...
- Jason ismertető: http://www.mit.bme.hu/oktatas/targyak/vimia313/jegyzet/jason/Overview-of...
Példaprogramok
- A minimum követelmény (Simple) ágens: http://home.mit.bme.hu/~eredics/mi/game/examples/simple.asl
- A támadás cselekvést bemutató példa:
http://project.mit.bme.hu/agentgame/node/16
Az ágensek érzékelései (összefoglalás)
mypos(X,Y)
: Az ágens pillanatnyi pozíciója.
X - az x koordináta
Y - az y koordinátamydir(D)
: Az ágens pillanatnyi látási orientációja.
D - az orientáció (0 = fel; 1 = jobbra; 2 = le; 3 = balra)myenergy(E)
: Az ágens pillanatnyi energiája
E - az ágens energiaszintjemyteam(T)
: Az ágens csapata
T - a csapat azonosító száma, ami alapján a csapattagok felismerhetik egymásttime(T)
: Az aktuális (virtuális) idő a játékon belül
T - az idő minden lépésben növekvő értékelastattacker([Id,X,Y])
: Az ágenst legutóbb megtámadó másik ágens lekérdezése.
Id - a támadó ágens azonosítója
X - a támadó x koordinátája a támadás idején
Y - a támadó y koordinátája a támadás idejénfood ([[D,V,X,Y],...])
: Az által látott ennivalók listája.
D - az adott étel távolsága az ágenstől (lépésben)
V - az étel értéke
X - az étel x koordinátája
Y - az étel y koordinátájaagent([[D,Id,T,E,X,Y,O],...])
: Az ágens által látott más ágensek listája.
D - a másik ágens távolsága
Id - a másik ágens azonosítója
T - a másik ágens csapat azonosítója
E - a másik ágens energiája
X - a másik ágens x koordinátája
Y - a másik ágens y koordinátája
O - a másik ágens látási orientációja
Az ágensek cselekvései (összefoglalás)
Ezek közül az ágensnek minden körben pontosan egyet kell végrehajtania. Amennyiben az ágens nem kíván semmit tenni, akkor a wait
cselekvés végrehajtásával várakozhat.
wait()
: Várakozás, az adott körben az ágens nem tesz semmilyen külső cselekvést - számításokat természetesen végezhet ezt megelőzően.turn(D)
: Az ágens a D irányba fordul.step(D)
: Az ágens a D irány be tesz egy lépést.eat()
: Az ágens megeszi a pillanatnyi pozícióján található ennivalót.transfer(T,A)
: Az ágens a vele azonos cellán tartózkodó T csapattársának átad A (tranzakciós veszteséggel csökkentett) energiát.attack(Id)
: Az ágens látóterében tartózkodó Id azonosítójú ágens megtámadása.setlabel(label)
: Az ágens által a grafikus felületen megjelenített szám azonosító lecserélése a label értékére. Ezáltal a grafikus felületen egyértelműen azonosíthatók az egyes különböző (forráskódú vagy funkciójú) ágensek.