Skip to content
Discussion options

You must be logged in to vote

Sorry for getting back so late.

No, agents don't act simultaneously by default. When you use self.agents.do("step"), they go one by one in whatever order they're in the AgentSet. Each agent sees the changes from agents that went before them.

Why shuffle_do() exists: It just randomizes who goes first. This matters because if Agent A always acts before Agent B, that could create biases in your model. Shuffling keeps things fair and adds some randomness to the order.

If you want actual simultaneous actions, you can use the two-phase approach that replaced SimultaneousActivation:

self.agents.do("step")      # Everyone decides what to do
self.agents.do("advance")   # Everyone does it

In your a…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@PigeonZow
Comment options

Answer selected by PigeonZow
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants