discrete time scheduler
No preview image
Model was written in NetLogo 5.1.0
•
Viewed 238 times
•
Downloaded 23 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
globals [current_time Rabbit_hunger_time Rabbit_fear_time ] breed [events event] breed [rabbits rabbit] events-own [ event_time event_target event_task] ;#Thanks @James, this is indeed a smart thing. now a turtle can schedule multiple future activities, independent of each othter ; eventscheduler to event_initiate [I_time I_target I_task] ;define the when-who-what of the vent set hidden? true set event_time current_time + I_time set event_target I_target set event_task I_task end to event_do_event ;the execution of an event set current_time event_time ;adjust the global time to the time at which this event takes place ask event_target [run [event_task] of myself] ;make the event happen die ;remove this event from the world end to go ;the event scheduler, take the first event and execute it while [any? events] [ if(PAUSE = true)[stop] ;this is to stop the while=loop. ask min-one-of events [event_time][event_do_event] ;the core of the scheduler ] end ;//##rabbit activity procedures## just some funny procedures to setup ca set Rabbit_hunger_time 3 set Rabbit_fear_time 20 create-rabbits 25 ;create 25 rabbits, call all the activities to put them on the events list... might probably be smarter [rabbit_eat rabbit_lookout rabbit_hop ] end to rabbit_eat set shape "rabbit_eat" hatch-events 1 [ event_initiate random-float rabbit_hunger_time myself task rabbit_eat] end to rabbit_lookout set shape "rabbit_lookout" hatch-events 1 [ event_initiate random-float Rabbit_fear_time myself task rabbit_lookout] end to rabbit_hop set shape "rabbit_hop" set heading random 360 fd 1 hatch-events 1 [event_initiate 1 myself task rabbit_hop] end
There is only one version of this model, created about 10 years ago by Geerten Hengeveld.
Attached files
No files
This model does not have any ancestors.
This model does not have any descendants.