Prírodou inšpirované algoritmy

študijné materiály pre projekt mobilnej triedy umelej inteligencie

Späť ku kurzom triedy
Obsah
Ako urobiť spustiteľnú aplikáciu v jednom .jar súbore?
Ako je možné zastaviť alebo pozastaviť simuláciu z vnútra modelu?
Agenti zobrazujú príliš veľa informácií, keď sú sondované. Ako ich môžem limitovať?
Ako je možné pridať do lišty nástrojov v RePast-e svoje vlastné tlačidlo?
Chcem, aby môj model vykonal akciu X keď stlačím klávesu. Ako to urobiť?
Chcem, aby môj model vykonal akciu X pri kliknutí na tlačidlo na nástrojovej lište. Ako to urobiť?
Chcem vytvoriť vlastný Display. Aký je najlepší spôsob?
Ako má vyzerať metóda main v spustiteľnej triede modelu?



Ostatné kapitoly
Swarm
RePast
LEM
SDML
Eos
DDLab


Tutoriály
 Celulárne automaty
 Morfogenéza
 Simulátory
 Evolučné algoritmy
 Chaos
 Roboty
 Rôzne


Ako je možné zastaviť alebo pozastaviť simuláciu z vnútra modelu?

Od RePast-u verzie 1.3 trieda SimModelImpl (a teda aj všetky jej podtriedy) implementujú dve nové metódy: public void stop() a public void pause(). Volaním týchto metód je možné model zastaviť alebo pozastaviť zvnútra. Ako všetky verejné metódy, aj tieto sú plánovateľné (angl. schedulable), a tak je možné naplánovať ich volanie v určitých intervaloch alebo v špecifickom čase. Napríklad

   

int pauseTick = -1; ... private void buildSchedule() { schedule.scheduleActionAt(pauseTick, this, "pause", Schedule.LAST); ... } public void setPauseTick(int val) { pauseTick = val; schedule.scheduleActionAt(pauseTick, this, "pause", Schedule.LAST); } public int getPauseTick() { return pauseTick; }

umožní plánovať pozastavenia pomocou GUI.

Hore
Kontakt: Marek Bundzel