1991 - Evolve Modelling Software

'Evolve' was software I developed for my Biology A-Level coursework.
The program explored an artificial, speeded-up model of evolution.

It created a small ecosystem where creatures roam, compete for scarce resources, and reproduce.
This allowed population dynamics and behaviour to be modelled and analysed.

screenshot with population at the top, analysis of current population bottom left, genotypes bottom right

Each species is represented by a specific colour, with behaviour set by its genotype -
a sequence of a dozen or so fixed genes or instructions.

Animals feed on 'grass' which grows at a slow rate, introducing the element of scarcity.
If an organism's energy level drops to zero, it died. Reproduction had energy costs too.
Food availability, grazing patterns and reproductive cycles were critical for survival.

Evolution needs variation, naturally from mutations, transcription errors and sex.
The software introduced random changes to genotypes of offspring
(at a frequency artificially determined by the mutation rate)
to create new patterns of behaviour, and new species.

the bottom left corner shows a map of the current Evolve world
the magenta beasties are doing pretty well on the population graph (top of screen, log scale)
having overtaken the dark greens in about the 200th round

In this simple model reproduction was asexual.
Successful reproduction produced either a clone organism, or a new mutated species.
Models with sexual reproduction (exchange of genes) would be interesting to investigate.
More complex, seemingly 'intelligent' behaviour patterns might have evolved more rapidly.

A gene creating behaviour where creatures could feed off one other was introduced,
but no stable communities of pure carnivores emerged during my tests -
usually because they tended to eat one another out of existence!

Less drastic feeding mechanisms than 'kill-and-eat' might have been interesting,
allowing parasitic feeding relationships to develop.

This model allowed me to explore, in a novel way, some key theoretical disputes in biology.
In the early 90's, what we would now call genetic algorithms were mostly theoretical,
but rapidly increasing computer power was making more interesting simulations possible.

We saw examples of punctuated equilibria but also gradual changes to the ecosystem
while the dominance of some organisms might be best analysed with economic game theory.
Reproductive and intergenerational strategies, and the 'role' of ageing, raised unexpected questions.
(I had to introduce an artificial cut-off age - immortality and evolution seemed incompatible.)
Changes which were clearly random also led to what seemed like complex 'intelligent' designs.


BBC Micro (left) forerunner of the insanely powerful Acorn Archimedes (right)

All of this needed serious computing muscle to get useful results.
'Evolve' was programmed with BASIC VI on the Acorn Archimedes,
with a smattering of direct OS calls and shareware modules.

This was a very fast, and intensely smug, programming language
which followed even the simplest commands, such as

PRINT 'Hello'
with how few microseconds it took to compute,
just to remind you of its utter contempt for the human race.
(If I ever could have owned one, I would have called it Marvin.)

The model has to run for many generations to produce interesting behaviour.
I ran about twelve Arc's overnight for a week, giving a total of about 720 hours -
and over a million turns in the virtual worlds created.
Checking the screens each morning was always exciting!

Starting from slightly different conditions, quite different ecosystems developed.
Properties shared with recognisably natural ecosystems repeatedly emerged,
sometimes to my complete surprise considering the simplicity of the system -
e.g. clear cyclical patterns in population levels.

I really liked the 'Arc's - they were well designed, open, and blisteringly fast.
They were developed from an unusual BBC project - yes, that same BBC -
which is now dabbling in educational technology again with the Micro Bit.

As for the Archimedes itself, you are unlikely to ever see one now -
although, surprisingly, you may actually have one in your pocket!

Their extraordinary speed came from a new, and much simpler, design for chips.
Reduced Instruction Set Computing meant simpler, but much faster, processors.
This also led to low power consumption - which later was critical for mobile devices.

The RISC architecture developed for the Archimedes was spun off by Acorn in 1990
to a company now known as ARM, and is by far the most widely used in the world.
Most mobile hardware - including Android, iOS, Windows Phone and Blackberry -
are all descendents of the humble BBC Micro and the Acorn Archimedes.

ARM co-founder John Biggs once quipped

"You know how people say you're never more than 3m away from a rat?
You're probably never more than 3m away from an ARM chip."

ARM chips are now in set-top boxes, netbooks, game consoles and tablet PCs,
smart TVs, Chromecast dongles, sat-navs, smartwatches and fridges,
Bluetooth SoCs, Roombas, hard disks, chip-and-PIN cards,
washing machines, food processor, cuddly toy
(yes, I guessed at those last two)
iPods, NEST thermostats,
even brake pads.

We can now find Marvin everywhere
doing our most menial tasks
completely ignored
and, I imagine,
sarcastically.

Computing.
Evolved.