NetLogo User Community Models
## WHAT IS IT?
A model of natural/artificial selection with bugs who compete for food. By controlling different aspects of the environment and gene mutation one can observe how the population of bugs adapt and the selection of genes differ.
The model shows adaption of a population through natural selection. There is no adaption on the agent level, rather it is probability that drives mutation of the genes which manifests as a battle of who can get more food and reproduce.
## HOW IT WORKS
Bugs wander around the area looking for food. Moving consumes energy and if energy reaches zero the bug dies. Eating refills energy. If energy reaches 100 the bug will reproduce and lower it's energy to 50.
When reproducing, an exact copy of the bug will hatch. However, there is a chance set by sliders that each "gene" of the bug will mutate. Speed, size and vision can mutate higher or lower.
- Higher speed can help a bug reach more food in shorter time but comes at a higher cost of energy.
- Larger size allows bugs to eat smaller sized bugs (possible when double the size of another bug) which effectively supplies the environment with more possible food. Larger size also comes with a higher cost of energy.
- Greater vision allows bugs to see food at a further distance and move towards it and has no higher cost of energy.
## HOW TO USE IT
FOOD-VALUE and PREY-VALUE controls how much energy a bug receives from eating a piece of food and another bug (prey) respectively.
COST-OF-SPEED and COST-OF-SIZE controls how the cost of energy co-varies with speed and size. Meaning, how much more energy should be consumed by increasing size/speed.
MUTATION-RATE controls how likely it is that a gene will mutate between two generations.
MUTATION-AMOUNT controls how much a gene can change between two generations.
FOOD-GROWTH controls the regrowth of food. This could be said to indicate if the bugs live in an environment of abundance or scarcity.
# Plots and monitors
The POPULATION plot on the left side shows population of bugs and food.
The SPEED, SIZE and VISION histograms show the distribution of values of the three genes.
The MEAN plots beneath them plots the mean value in the population of each gene. It also has a line for food-growth to visualize where changes were made during a run.
The BUGS PLOTTED BY SPEED AND SIZE plot each bug as a dot on a xy-plane with speed and size on the axes.
## THINGS TO NOTICE
Remember, evolution takes a very long time. For each run of the model, let it run for at least a couple thousands of ticks to see the long term effect on the population.
There is a tradeoff between size and speed which makes it energy expensive to be both.
Predators appear as the difference in size between bugs reaches a ratio of 2 when the larger bugs can eat the smaller. When this happens, the large "family" of bugs tends to reproduce quickly and take over parts or the whole environment.
Notice how vision, without having a cost of energy, is still subject to natural selection and is not always optimal to increase. Why?
When reaching extreme states the population takes longer to adapt to a change in FOOD-GROWTH. Why?
## THINGS TO TRY
- Investigate how the population evolves at different levels of food-growth.
- See if you can produce two different species co-existing e.g. one big slow and one small fast type of bug.
- Let the population adapt to one level of food growth then set it to a new level and see how the population adapts. Note that this can take many thousands of ticks.
- Move between the extreme values of food-growth.
- Change the cost-of-speed/size and prey/food-value to see how this affects the propensity of adaptation and predation.
## EXTENDING THE MODEL
The bugs have no flight behaviour in this model. This could be added to make the predator/prey relationship more authentic.
A cone of vision could be used instead of 360 which would be more realistic and decrease the risk of bugs changing direction too often.
Further sliders for starting energy and reproduction thresholds could be added.
## RELATED MODELS
- Vision evolution
## CREDITS AND REFERENCES
This model was created as a part of the Introduction to Agent-Based Modeling course on Complexity Explorer: https://www.complexityexplorer.org/courses/96-introduction-to-agent-based-modeling.
(back to the NetLogo User Community Models)