Kidolgozásra vár.
Egy modell végrehajtásához szorosan hozzátartozik az események végrehajtása és ütemezése. Az eseményeket schedule-okon keresztül időzíthetjük. Schedul-okat mind modellekhez, mind ágensekhez definiálhatunk. Időpontokhoz rendelhetünk eseményeket, a sorrend ez alapján dől el. Ugyanarra az időpontra ütemezett feladatok között a globális véletlengenerátor dönt pártatlan ütemezés mellett.
Az általános szintaxisa a következő:
Ahol az egyes események definíciója a következő lehet:
Példa:
Példa:
A schedule-ok lehetnek ciklikusok is, amit a cyclic kulcsszóval jelezhetünk, majd egy természetes számmal megadjuk a mértékét:
Példa:
A schedule-ok dinamikusan elindíthatók és leállíthatók a startSchedule és stopSchedule standard library műveletekkel. Amikor egy modell elindul, akkor minden globális schedule-ja elindul. Amikor nincs már több végrehajtható schedule a végrehajtási sorban, akkor a modell futása befejeződik.
A time egy másik standard library függvény, ami visszaadja a az aktuális globális időt.
Az idők a schedule definíciókban mindig relatívak a kezdeti időpillanathoz, nem lehetnek negatívak, nem utemezhetők a “múltba”. A globális schedule-ok a 0. időpillanatban indulnak.
Példa:
A Fables környezet egyetlen globális pszuedó-random generátort használ a működése során. Ez garantálja a modell determinisztikusságát. Ennek a generátornak a működése a seed függvénnyel állítható be:
Elsőként hozzá kell adni a modell véletlen generátorainak listájához az StdLib addXXX műveletein keresztül (ahol XXX a kívánt eloszlás neve), innentől kezdve lesz használható.
Minden egyes alkalommal, amikor egy új generátort hozunk létre, be lehet állítani az ő seed() értékét is. Ha nincs megadva explicit érték, akkor implicit 0-ra inicializálódik az értéke.
Példa: