Based on an example in "Growing Artifical Societies" by Epstein and Axtell, page 170-176. I figured this would be a good starting point for attempting to build a multi-agent environment.
- Spice grows a random amount up to it's max per cycle.
- Agents cannot move into a space occupied by another agent.
- Agents can only move in one direction.
- Agents can only move up to their field of vision.
- Agents move to the space with the highest spice.
- Agents eat spice equal to their metabolism at the end of each turn.
- Agents who don't have enough food die.
- All spice grows. As they aren't affected by anything this can be done in any order.
- Each agent moves. this is done in a random order to minimize bias in turn order.
- What happens if an agent burns spice equal to what they move?
- What happens if an agent can see it's current space instead of move?
- How does having spice grow to max affect outcome?
- Add AgentAttributes to track aspects of agents (genes, memes, immune systems)
- Build better interface
- Expand Map types
- More controllable environments