Skip to main content

Reproduce the Axelrod iterated prisoners dilemma tournament

Project description

https://img.shields.io/pypi/v/Axelrod.svg https://zenodo.org/badge/19509/Axelrod-Python/Axelrod.svg https://github.com/Axelrod-Python/Axelrod/workflows/CI/badge.svg

Join the chat at https://gitter.im/Axelrod-Python/Axelrod

Axelrod

Goals

A Python library with the following principles and goals:

  1. Enabling the reproduction of previous Iterated Prisoner’s Dilemma research as easily as possible.
  2. Creating the de-facto tool for future Iterated Prisoner’s Dilemma research.
  3. Providing as simple a means as possible for anyone to define and contribute new and original Iterated Prisoner’s Dilemma strategies.
  4. Emphasizing readability along with an open and welcoming community that is accommodating for developers and researchers of a variety of skill levels.

Features

With Axelrod you:

The library has 100% test coverage and is extensively documented. See the documentation for details and examples of all the features: http://axelrod.readthedocs.org/

An open reproducible framework for the study of the iterated prisoner’s dilemma: a peer reviewed paper introducing the library (22 authors).

Installation

The library requires Python 3.6 or greater.

The simplest way to install is:

$ pip install axelrod

To install from source:

$ git clone https://github.com/Axelrod-Python/Axelrod.git
$ cd Axelrod
$ python setup.py install

Quick Start

The following runs a basic tournament:

>>> import axelrod as axl
>>> players = [s() for s in axl.demo_strategies]  # Create players
>>> tournament = axl.Tournament(players, seed=1)  # Create a tournament
>>> results = tournament.play()  # Play the tournament
>>> results.ranked_names
['Defector', 'Grudger', 'Tit For Tat', 'Cooperator', 'Random: 0.5']

Examples

Contributing

All contributions are welcome!

You can find helpful instructions about contributing in the documentation: http://axelrod.readthedocs.org/en/latest/tutorials/contributing/index.html

Publications

You can find a list of publications that make use of or cite the library on the citations page.

Contributors

The library has had many awesome contributions from many great contributors. The Core developers of the project are:

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Axelrod, version 4.10.0
Filename, size File type Python version Upload date Hashes
Filename, size Axelrod-4.10.0-py2.py3-none-any.whl (193.2 kB) File type Wheel Python version 3.7 Upload date Hashes View
Filename, size Axelrod-4.10.0.tar.gz (202.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page