Topics › Artificial Life

Evolving arthropods

Fractal Arthropod

Recently, while searching for an picture of evolution (specifically, the famous image of the progression from ape to man), I came across an interesting and beautiful evolution simulation. The website is actually about a piece of software called Nodebox that uses Python to draw and manipulate images. The site has loads of amazing examples of its power. Sadly, I don’t have a Mac, so I can’t use the software myself. However, since I’ve been learning create SVG files with Python, I thought I create my own simple version.


Heterocyst Simulation

An old simulation of a type of cyanobacterium and its evolution, which was originally written in QBASIC. Includes analysis of the results from this simulation

Evolving ant behaviour

Example of simple ant behaviour - spiralling

I've been thinking for a while about how to program ant behaviour in my simulation. The difficulty is that even relatively simple behaviours (such as following a pheromone trail) are difficult to code as a behaviour at the agent (or ant) level. While I probably could come with a reasonable behaviour if I thought about it and tested various parameters, it seems a lot simpler to evolve a suitable behaviour. After all, that’s what ants did.

Short cell simulation update

Once again I’ve been neglecting my blog. I think I have a good excuse, which is that I was writing my thesis. That hasn’t stopped me from doing the odd spot of programming however. I’ve made some progress with my microbe simulation, notably, making a GUI to visualise where on the DNA various proteins bind. I have also started a separate microbe simulation, which is more of a game to see who can evolve the fittest microbe in the primordial soup. The game elements are all there, but the program is ugly and the game limited; a bit more work is required to make it fun to play.

Starting an ant colony

The ants move randomly, leaving a trail of pheromones.

I have started to remake a simulation of an ant colony that I once made in QBASIC. The idea (which I am by no measure, the first to contemplate) is to create an ant colony that can harvest surrounding food (seeds or leaves – the green ovals in the picture) in an intelligent manner, despite the individual ants having very limited intelligence or information to work with.

Macrophage simulation

While discussing some of my programming projects in the pub, I mentioned using biological approaches to creating a Artificial Intelligence to play Go. I was initially thinking of evolving solutions, but the conversation gradually moved into a biological analogy for Go: two teams of macrophages, one black, one white, trying to engulf one another.

Simulating life and more

[Originally from my Wordpress blog, but with added links]

I'm still working out what categories to include on this blog. I intend to write about various simulations I have written, am in the process of writing or plan to write, but I'm not sure of the best way to categorise them. I could have a general science category as I do at the moment, or I could put them under programming. Or I could be more specific and have an Artificial Life category to complement an Artificial Intelligence (for Go) category. Or maybe it isn't important.