Table of Contents

Správy zo servera

Správu zo servera agent dostáva približne každých 0.02s, pričom každá tretia takáto správa obsahuje informácie o tom, čo agent vidí (podľa simspark wiki by mala každá druhá správa obsahovať informácie o tom, čo agent počuje).

Typ S-výrazu Význam
timeČas
GSStav hry (game state)
GYRGyroskop (gyro rate)
ACCAkcelerometer (accelerometer)
HJOtočný kĺb (hinge joint)
SeeČo agent vidí
FRP(Force Resistance)
AgentStateStav agenta (teplota a batéria)
Hear*Čo agent počuje

Tabuľka 1: S- výrazy, ktoré sa môžu vyskytnúť v správe zo servera (prvých 6 sa nachádza aj v odchytených správach, zvyšné pochádzajú zo simspark wiki)

*Agenti môžu medzi sebou komunikovať iba prostredníctvom servera (procesy agentov nesmú komunikovať medzi sebou priamo).

Správy zo servera
(time (now 90.00))(GS (t 0.00) (pm BeforeKickOff))(GYR (n torso) (rt 0.00 0.00 0.00))(ACC (n torso) (a 0.00 0.00 9.81))(HJ (n hj1) (ax 0.00))(HJ (n hj2) (ax -0.00))(HJ (n raj1) (ax -0.00))(HJ (n raj2) (ax -0.00))(HJ (n raj3) (ax 0.00))(HJ (n raj4) (ax -0.00))(HJ (n laj1) (ax -0.00))(HJ (n laj2) (ax -0.00))(HJ (n laj3) (ax 0.00))(HJ (n laj4) (ax -0.00))(HJ (n rlj1) (ax -0.00))(HJ (n rlj2) (ax 0.00))(HJ (n rlj3) (ax 0.00))(HJ (n rlj4) (ax 0.00))(HJ (n rlj5) (ax 0.00))(HJ (n rlj6) (ax 0.00))(HJ (n llj1) (ax -0.00))(HJ (n llj2) (ax -0.00))(HJ (n llj3) (ax 0.00))(HJ (n llj4) (ax 0.00))(HJ (n llj5) (ax 0.00))(HJ (n llj6) (ax -0.00))

(time (now 90.02))(GS (t 0.00) (pm BeforeKickOff))(GYR (n torso) (rt 0.00 0.00 0.00))(ACC (n torso) (a 0.00 0.00 9.81))(HJ (n hj1) (ax 0.00))(HJ (n hj2) (ax -0.00))(HJ (n raj1) (ax -0.00))(HJ (n raj2) (ax -0.00))(HJ (n raj3) (ax 0.00))(HJ (n raj4) (ax -0.00))(HJ (n laj1) (ax -0.00))(HJ (n laj2) (ax -0.00))(HJ (n laj3) (ax 0.00))(HJ (n laj4) (ax -0.00))(HJ (n rlj1) (ax -0.00))(HJ (n rlj2) (ax 0.00))(HJ (n rlj3) (ax 0.00))(HJ (n rlj4) (ax 0.00))(HJ (n rlj5) (ax 0.00))(HJ (n rlj6) (ax 0.00))(HJ (n llj1) (ax -0.00))(HJ (n llj2) (ax -0.00))(HJ (n llj3) (ax 0.00))(HJ (n llj4) (ax 0.00))(HJ (n llj5) (ax 0.00))(HJ (n llj6) (ax -0.00))

(time (now 90.04))(GS (t 0.00) (pm BeforeKickOff))(GYR (n torso) (rt 0.00 0.00 0.00))(ACC (n torso) (a 0.00 0.00 9.81))(HJ (n hj1) (ax 0.00))(HJ (n hj2) (ax -0.00))(See (G2R (pol 20.66 -22.62 0.51)) (G1R (pol 19.87 -17.46 0.64)) (F1R (pol 19.28 8.92 -1.40)) (F2R (pol 25.51 -41.64 -1.19)) (P (team Infinity) (id 1) (rlowerarm (pol 0.19 -35.37 -21.18)) (llowerarm (pol 0.19 33.23 -21.35))) (L (pol 8.03 -60.05 -4.12) (pol 5.03 36.89 -6.41)) (L (pol 25.47 -41.58 -1.26) (pol 19.25 8.67 -1.58)) (L (pol 19.26 9.08 -1.50) (pol 3.50 59.91 -9.03)) (L (pol 25.51 -41.60 -1.20) (pol 19.66 -60.12 -1.58)) (L (pol 17.65 -13.18 -1.79) (pol 19.89 -29.93 -1.62)) (L (pol 17.65 -13.23 -2.04) (pol 19.42 -11.73 -1.48)) (L (pol 19.91 -29.99 -1.38) (pol 21.50 -27.82 -1.46)) (L (pol 9.24 -49.27 -3.51) (pol 8.11 -46.06 -3.89)) (L (pol 8.11 -46.11 -4.03) (pol 6.90 -48.02 -4.45)) (L (pol 6.91 -47.89 -4.53) (pol 6.14 -56.50 -5.24)) (L (pol 6.15 -56.40 -5.08) (pol 6.17 -59.87 -5.15)) (L (pol 9.98 -59.92 -3.22) (pol 9.93 -55.64 -3.38)) (L (pol 9.95 -55.63 -3.32) (pol 9.25 -49.66 -3.26))) (HJ (n raj1) (ax -0.00))(HJ (n raj2) (ax -0.00))(HJ (n raj3) (ax 0.00))(HJ (n raj4) (ax -0.00))(HJ (n laj1) (ax -0.00))(HJ (n laj2) (ax -0.00))(HJ (n laj3) (ax 0.00))(HJ (n laj4) (ax -0.00))(HJ (n rlj1) (ax -0.00))(HJ (n rlj2) (ax 0.00))(HJ (n rlj3) (ax 0.00))(HJ (n rlj4) (ax 0.00))(HJ (n rlj5) (ax 0.00))(HJ (n rlj6) (ax 0.00))(HJ (n llj1) (ax -0.00))(HJ (n llj2) (ax -0.00))(HJ (n llj3) (ax 0.00))(HJ (n llj4) (ax 0.00))(HJ (n llj5) (ax 0.00))(HJ (n llj6) (ax -0.00))

Tabuľka 2: dchytené správy zo servera (zvýraznené s-výrazy s informáciami o tom čo agent

Stav hry

(GS (t <čas_hry>) (pm <playmode>))

S-výrazPlayMode objektVýznam / kedy nastane
BeforeKickOffBEFORE_KICK_OFFPred začiatkom polčasu
PlayOnPLAY_ONPočas hry (ak nenastala iná z udalostí)
KickOffLeftKICK_OFF_LEFT
KickOffRightKICK_OFF_RIGHT
KickInLeftKICK_IN_LEFT
KickInRightKICK_IN_RIGHT
CornetKickLeftCORNER_KICK_LEFT
CornerKickRightCORNER_KICK_RIGHT
GoalKickLeftGOAL_KICK_LEFT
GoalKickRightGOAL_KICK_RIGHT
GameOverGAME_OVERPo 600s (koniec hry)
GoalLeftGOAL_LEFT
GoalRightGOAL_RIGHT
FreeKickLeftFREE_KICK_LEFT
FreeKickRightFREE_KICK_RIGHT

Tabuľka 3: S-výrazy a objekty typu PlayMode

Obrázok 1: Jednotlivé stavy hry a vzťahy medzi nimi

Čo agent vidí

S-výrazObjekt
F1L, F1R, F2L, F2RVlajky v rhoch ihriska
G1L, G1R, G2L, G2RStĺpy bránky
PHráč
BLopta
LČiara

Tabuľka 4: S-výrazy a objekty, ktoré agent vidí

(pol <vzdialenosť> <uhol1> <uhol2>)
<vzdialenosť> - vzdialenosť k bodu
<uhol1> - horizontálny uhol, pod ktorým vidí bod, v stupňoch, s odchýlkou 2 stupne
<uhol2> - vertikálny uhol, pod ktorým vidí bod, v stupňoch, s odchýlkou 2 stupne
(P (team <tím>) (id <id>) (<časť_robota> (pol …) (…) ) )
<tím> - názov tímu
<Id> - číslo hráča v danom tíme
<časť_robota> - ktorú časť robota vidí agent: (head, rlowerarm, llowerarm, rfoot, lfoot)

Rohové vlajky, stĺpy bránok a loptu vidí agent ako jeden bod (obsahuje s-výraz pol), čiary vidí ako dva koncové body (koncové body časti čiary, ktorú vidí, nie nevyhnutne celú čiaru).
S-výraz informujúci o hráčovi obsahuje informácie, do ktorého tímu patrí hráč, aké má číslo a ktoré časti robota vidí (ako body (pol)).
Agent vidí okrajové čiary ihriska (4x), stredovú čiaru (1x), čiary bránkoviska (3x) a stredový kruh ako 10 úsečiek.

Obrázok 2: Poradie čiar v akom sú posielané zo servera.


Pozri aj: Analýza Fyzikálneho Modelu, Graf Dát Model Sveta, Komunikácia Agenta so Serverom