A "computerised system composed of multiple interacting intelligent agents". AI in an academic context. Images shown are of a visualisation of my system.
Built in the agent modelling software "Repast", this university assignment presents an abstraction of competing organisms over time.
By adding a wide range of traits and properties, with corresponding alleles that are inherited based on dominance and can infrequently mutate, I created enough depth to allow for truly emergent and unforseen behaviour:
In some runs of the simulation, two vastly different species became genetically close enough to interbreed, allowing the carnivorous of the two to inherit increased attack strength and metabolism, driving their consumption up and collapsing the ecosystem.
In others, members of an otherwise extinct species of herbivores managed to survive due to mutations that protected them from a world of predators.
As visible below, a bias towards space with more like species and an incidental choice in path-finding creates a flow that the creatures follow.
How i did it
In one four day stretch, with only Repast's documentation as a reference. I built out a organism super-class, built out derived classes and plugged them into the simulator as agents. Along the way I did some hacky XML stuff to skip a lot of manual set-up, and extended the visualiser class to allow me to dynamically change the shape of the agents in the model.
What i Learned
Beyond Repast's API, this project also allowed me to explore how behaviours defined at an individual level can have compounding emergent effects on the simulation at large, and how to exploit these systems to create desired trends. I also made great use of the programs graphing tools, plotting the changes in the species over time and discovering relationships between seemingly decoupled systems.