PyCon UK 2015

Tit for Tat, Evolution, Game Theory and the Python Axelrod Library

Vince Knight

This talk will begin with the origin of species. More precisely with a discussion of Darwin's theory of evolution and how Game Theory has been used to explain/illustrate aspects of cooperation in complex dynamics.

In 1980, professor Robert Axelrod created a computer tournament inviting submissions of code snippets that would compete against each other. A large amount of academic study has concentrated on the outcomes of this experiment. The particularity of the outcome, was that even when the tournament was repeated with a much larger number of strategies, a very simple strategy was victorious: Tit for Tat. This strategy tries it's best to cooperate with other strategies!

The talk will briefly discuss all of this but will concentrate on a new Python library (pip install axelrod). This project, hosted on github allows anyone to recreate the tournament but also (and arguably more importantly) submit strategies via pull request!

It is anticipated that this talk would be appreciated by coders of all levels as it gives a very low entry level for a contribution to an open source project. It should also be of interest to the more experienced coders as it is hoped that novel strategies will be devised and submitted. Indeed, historically strategies have been mainly devised by mathematicians and economists, surely the pyconuk attendees will bring something new to the repository?

Finally, for those who are perhaps not interested in 'playing along' the talk will also describe the newest addition to the project which is a Django project aiming to bring this study of evolution to a popular audience.