Last modification on 2019-01-29
IntroductionThis document offers an brief explanation of how Ecosim will work. For more detailed information on any one component, please see the specifications at the bottom of the page.
Project OverviewEcosim is an ecosystem simulator. It's main goal is to help illustrate and explore interconnectedness between various organisms within an environment, and how they can directly and indirectly affect one another.
The world these organisms inhabit will be a fairly simple one with minimal graphics, as the project is focused on the behaviours of them, which are the following:
- Avoidance of genetically non similar organisms
- Birth, via reproduction
- Consumption, both primary and secondary
- Death, as a result of a lack of consumption
- Evolution, via a genetic algorithm
- Flocking, via a Boid's type algorithm
- Reproduction, via splitting, as a result of adequate consumption
The second way a user can interact is via Vim style keybindings whilst the simulation is running. These enable the user to perform actions such as:
- Copying an organism
- Deleting an organism
- Inserting a predefined breed
- Inserting non-living entities (food)
- Pausing the simulation
This minimalistic way of interacting allows for the user interface to remain simple yet powerful, the only elements on screen being a small command strip along the bottom with the rest of the window being dedicated to the simulation.
As previously stated, the graphics of the simulation will be very simple and utilitarian. Each organism will be a single colored point, with their color being used to indicate their genetics and/or state. Any interaction between two agents will be brought to attention by graphically highlighting the area which the event took place.