EcoSim
EcoSim is an individual-based predator-prey ecosystem simulation in which agents can evolve. It has been designed to investigate several broad ecological questions, as well as long-term evolutionary patterns and processes such as speciation and macroevolution. EcoSim has been designed by Robin Gras at the University of Windsor in 2009 and it is still currently used for research in his Bioinformatics and Ecosystem Simulation Lab. Main concepts. The agents have a behavior model which allows the evolutionary process to modify the behaviors of the predators and prey. Furthermore, there is a speciation mechanism which allows to study  global patterns as well as species-specific patterns. In EcoSim, an individual's genomic data codes for its behavioral model and is represented by a fuzzy cognitive map (FCM). The FCM contains sensory concepts such as foodClose or predatorClose, internal states such as fear or hunger, and motor concepts such as escape or reproduce. The FCM is represented as an array of floating-point values which represent the extent to which one concept influences another. For example, it would be expected that the sensory concept predatorClose would positively affect the internal concept fear, which would then positively affect the escape  motor concept. These relationships among concepts evolve over time, sometimes giving a new meaning to a concept. Furthermore, the FCM is heritable, meaning that a new agent is given an FCM which is a combination of that of its parents with possible mutations. EcoSim subscribes to the “genotypic cluster” definition of a species. Speciation has been implemented using a 2-means clustering algorithm technique designed to allow the splitting of an existing species into two species, by clustering the individuals that initially belonged to the first species into one of the new two species, each one of them containing the  agents that are mutually the most similar. Since EcoSim has the capacity to allow speciation events to occur, it is possible to track speciation events throughout a run of the simulation and construct the actual phylogenetic tree. Each agent also possesses several physical characteristics such as: maximum and current ages, minimum age for mating, maximum and current speeds, vision distance, maximum and current levels of energy, and the amount of energy transmitted to the offspring. Energy is provided to individuals by the resources (grass or meat) they find in their environment. An agent consumes some energy each time it performs  an action and proportionally to the complexity (number of edges) of its FCM. If an individual uses all its energy, it dies. A typical run lasts several tens of thousands of time steps. Each time step involves the time needed for each agent to perceive its environment, use its behavioral model to make a decision, perform its action as well as the time to update the species membership, including speciation events and all the world parameters. In a typical run, more than one billion of agents can be born and several thousands of species can be generated, which allows new  behaviors to emerge and agents to adapt to a constantly changing environment. In addition, a food chain consisting of three levels, primary producers, predators and preys, has been implemented allowing complex interactions between agents and co-evolution to occur. All events, the mental state and action of every agent, are saved for every time step of every run. This allows a deep statistical analysis of the whole system using several dedicated tools that we have conceived to extract, measure and correlate any possible facts that could be useful to understand the underlying and emerging properties of the system. Research publications . Several studies have already been done using EcoSim. For example, Devaurs and Gras have analyzed the species abundance patterns observed in the communities generated by EcoSim, based on Fisher's log series. This study shows that the communities of species generated by the simulation follow the same lognormal law as natural communities and that EcoSim can help to evaluate the overall level of diversity of a given community. In other studies, the chaotic behavior of the system with multi-fractal properties has been proven in as it also has been observed for real ecosystems. Mashayekhi and Gras investigated the effect  of spatial distribution and spatiotemporal information on speciation. In more recent research, Golestani et al. investigated how small, randomly distributed physical obstacles influence the distribution of populations and species, the level of population connectivity (e.g., gene flow), as well as the mode and tempo of speciation.