All Projects → Axelrod-Python → Axelrod

Axelrod-Python / Axelrod

Licence: other
A research tool for the Iterated Prisoner's Dilemma

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Axelrod

Teaching
Teaching Materials for Dr. Waleed A. Yousef
Stars: ✭ 435 (-15.7%)
Mutual labels:  computer-science, mathematics
Cheatsheets
Quick reference material for techies
Stars: ✭ 66 (-87.21%)
Mutual labels:  computer-science, mathematics
Nashpy
A library for the computation of Nash equilibria in two player games
Stars: ✭ 164 (-68.22%)
Mutual labels:  computer-science, mathematics
C
Collection of various algorithms in mathematics, machine learning, computer science, physics, etc implemented in C for educational purposes.
Stars: ✭ 11,897 (+2205.62%)
Mutual labels:  computer-science, mathematics
alchemy
Generate any a-by-( b + c ) finite rectangle SVG containing potentially Infinitely many a-by-( 2 * b ) finite rectangles animated along a number line of ( ( c - b ) / a )^n scale symmetry.
Stars: ✭ 29 (-94.38%)
Mutual labels:  computer-science, mathematics
Dslsofmath
Domain Specific Languages of Mathematics
Stars: ✭ 159 (-69.19%)
Mutual labels:  computer-science, mathematics
Cs Roadmap
My Computer Science Curriculum
Stars: ✭ 239 (-53.68%)
Mutual labels:  computer-science, mathematics
C Plus Plus
Collection of various algorithms in mathematics, machine learning, computer science and physics implemented in C++ for educational purposes.
Stars: ✭ 17,151 (+3223.84%)
Mutual labels:  computer-science, mathematics
My NoteBook
サイエンス、テクノロジー、エンジニアリング関連の情報を記載したノート(忘備録)です。
Stars: ✭ 104 (-79.84%)
Mutual labels:  computer-science, mathematics
matematicaelementar
Matemática Elementar para Computação
Stars: ✭ 29 (-94.38%)
Mutual labels:  computer-science, mathematics
Analysissummary
Vorlesung Analysis für Informatiker WS16/17 an der TUM
Stars: ✭ 10 (-98.06%)
Mutual labels:  computer-science, mathematics
Algorithms
Free hands-on course with the implementation (in Python) and description of several computational, mathematical and statistical algorithms.
Stars: ✭ 117 (-77.33%)
Mutual labels:  computer-science, mathematics
Data Science Masters
Self-study plan to achieve mastery in data science
Stars: ✭ 179 (-65.31%)
Mutual labels:  computer-science, mathematics
ml-formulas
機械学習・統計学・理論計算科学などに出てくる等式・不等式を集めていきます
Stars: ✭ 55 (-89.34%)
Mutual labels:  computer-science, mathematics
ML-University
Machine Learning Open Source University
Stars: ✭ 423 (-18.02%)
Mutual labels:  computer-science, mathematics
Learn Something Every Day
📝 A compilation of everything that I learn; Computer Science, Software Development, Engineering, Math, and Coding in General. Read the rendered results here ->
Stars: ✭ 362 (-29.84%)
Mutual labels:  computer-science, mathematics
Gtsummary
Presentation-Ready Data Summary and Analytic Result Tables
Stars: ✭ 450 (-12.79%)
Mutual labels:  reproducible-research
Quadpy
Numerical integration (quadrature, cubature) in Python
Stars: ✭ 471 (-8.72%)
Mutual labels:  mathematics
Gap
Main development repository for GAP - Groups, Algorithms, Programming, a System for Computational Discrete Algebra
Stars: ✭ 447 (-13.37%)
Mutual labels:  mathematics
Waking Up
计算机基础(计算机网络/操作系统/数据库/Git...)面试问题全面总结,包含详细的follow-up question以及答案;全部采用【问题+追问+答案】的形式,即拿即用,直击互联网大厂面试🚀;可用于模拟面试、面试前复习、短期内快速备战面试...
Stars: ✭ 6,429 (+1145.93%)
Mutual labels:  computer-science

.. image:: https://img.shields.io/pypi/v/Axelrod.svg :target: https://pypi.python.org/pypi/Axelrod

.. image:: https://zenodo.org/badge/19509/Axelrod-Python/Axelrod.svg :target: https://zenodo.org/badge/latestdoi/19509/Axelrod-Python/Axelrod

.. image:: https://github.com/Axelrod-Python/Axelrod/workflows/CI/badge.svg :target: https://github.com/Axelrod-Python/Axelrod/actions

|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:

  • have access to over 200 strategies <http://axelrod.readthedocs.io/en/stable/reference/all_strategies.html>_, including original and classics like Tit For Tat and Win Stay Lose Shift. These are extendable through parametrization and a collection of strategy transformers.

  • can create head to head matches <http://axelrod.readthedocs.io/en/stable/tutorials/getting_started/match.html>_ between pairs of strategies.

  • can create tournaments <http://axelrod.readthedocs.io/en/stable/tutorials/getting_started/tournament.html>_ over a number of strategies.

  • can study population dynamics through Moran processes <http://axelrod.readthedocs.io/en/stable/tutorials/getting_started/moran.html>_ and an infinite population model <http://axelrod.readthedocs.io/en/stable/tutorials/further_topics/ecological_variant.html>_.

  • can analyse detailed results of tournaments <http://axelrod.readthedocs.io/en/stable/tutorials/getting_started/summarising_tournaments.html>_ and matches.

  • can visualise results <http://axelrod.readthedocs.io/en/stable/tutorials/getting_started/visualising_results.html>_ of tournaments.

    .. image:: http://axelrod.readthedocs.io/en/stable/_images/demo_strategies_boxplot.svg :height: 300 px :align: center

  • can reproduce a number of contemporary research topics such as fingerprinting <http://axelrod.readthedocs.io/en/stable/tutorials/further_topics/fingerprinting.html>_ of strategies and morality metrics <http://axelrod.readthedocs.io/en/stable/tutorials/further_topics/morality_metrics.html>_.

    .. image:: https://github.com/Axelrod-Python/Axelrod-fingerprint/raw/master/assets/Tricky_Defector.png :height: 300 px :align: center

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 <http://openresearchsoftware.metajnl.com/article/10.5334/jors.125/>_: 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 <https://github.com/Axelrod-Python/Axelrod/blob/master/citations.md>_ page.

Contributors

The library has had many awesome contributions from many great contributors <https://github.com/Axelrod-Python/Axelrod/graphs/contributors>_. The Core developers of the project are:

  • drvinceknight <https://github.com/drvinceknight>_
  • gaffney2010 <https://github.com/gaffney2010>_
  • marcharper <https://github.com/marcharper>_
  • meatballs <https://github.com/meatballs>_
  • nikoleta-v3 <https://github.com/Nikoleta-v3>_

.. |Join the chat at https://gitter.im/Axelrod-Python/Axelrod| image:: https://badges.gitter.im/Join%20Chat.svg :target: https://gitter.im/Axelrod-Python/Axelrod?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].