{"id":13689393,"url":"https://github.com/Axelrod-Python/Axelrod","last_synced_at":"2025-05-01T23:34:13.785Z","repository":{"id":27479641,"uuid":"30959449","full_name":"Axelrod-Python/Axelrod","owner":"Axelrod-Python","description":"A research tool for the Iterated Prisoner's Dilemma","archived":false,"fork":false,"pushed_at":"2024-11-04T16:44:30.000Z","size":8863,"stargazers_count":726,"open_issues_count":63,"forks_count":264,"subscribers_count":29,"default_branch":"dev","last_synced_at":"2024-11-06T15:55:00.884Z","etag":null,"topics":["computer-science","evolutionary-game-theory","game-theory","mathematics","prisoners-dilemma","python","reproducible-research"],"latest_commit_sha":null,"homepage":"http://axelrod.readthedocs.org/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Axelrod-Python.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.md","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-02-18T09:37:17.000Z","updated_at":"2024-10-22T15:48:28.000Z","dependencies_parsed_at":"2023-02-18T08:46:00.501Z","dependency_job_id":"f1b33e08-c219-4957-93f8-d165e06d0e58","html_url":"https://github.com/Axelrod-Python/Axelrod","commit_stats":{"total_commits":4730,"total_committers":90,"mean_commits":52.55555555555556,"dds":0.6763213530655391,"last_synced_commit":"784cdd361bc40119b828e97801d0bb58db3a5669"},"previous_names":[],"tags_count":97,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axelrod-Python%2FAxelrod","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axelrod-Python%2FAxelrod/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axelrod-Python%2FAxelrod/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Axelrod-Python%2FAxelrod/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Axelrod-Python","download_url":"https://codeload.github.com/Axelrod-Python/Axelrod/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224282260,"owners_count":17285796,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computer-science","evolutionary-game-theory","game-theory","mathematics","prisoners-dilemma","python","reproducible-research"],"created_at":"2024-08-02T15:01:46.018Z","updated_at":"2024-11-12T13:31:38.101Z","avatar_url":"https://github.com/Axelrod-Python.png","language":"Python","readme":".. image:: https://img.shields.io/pypi/v/Axelrod.svg\n    :target: https://pypi.python.org/pypi/Axelrod\n\n.. image:: https://zenodo.org/badge/19509/Axelrod-Python/Axelrod.svg\n    :target: https://zenodo.org/badge/latestdoi/19509/Axelrod-Python/Axelrod\n\n.. image:: https://github.com/Axelrod-Python/Axelrod/workflows/CI/badge.svg\n    :target: https://github.com/Axelrod-Python/Axelrod/actions\n\nAxelrod\n=======\n\nGoals\n-----\n\nA Python library with the following principles and goals:\n\n1. Enabling the reproduction of previous Iterated Prisoner's Dilemma research\n   as easily as possible.\n2. Creating the de-facto tool for future Iterated Prisoner's Dilemma\n   research.\n3. Providing as simple a means as possible for anyone to define and contribute\n   new and original Iterated Prisoner's Dilemma strategies.\n4. Emphasizing readability along with an open and welcoming community that\n   is accommodating for developers and researchers of a variety of skill levels.\n\nFeatures\n--------\n\nWith Axelrod you:\n\n- have access `to over 200 strategies\n  \u003chttps://axelrod.readthedocs.io/en/stable/reference/strategy_index.html\u003e`_, including original and classics like Tit\n  For Tat and Win Stay Lose Shift. These are extendable through parametrization\n  and a collection of strategy transformers.\n- can create `head to head matches\n  \u003chttps://axelrod.readthedocs.io/en/stable/tutorials/new_to_game_theory_and_or_python/match.html\u003e`_ between pairs of strategies.\n- can create `tournaments\n  \u003chttps://axelrod.readthedocs.io/en/stable/tutorials/new_to_game_theory_and_or_python/tournament.html\u003e`_ over a number of strategies.\n- can study population dynamics through `Moran processes\n  \u003chttps://axelrod.readthedocs.io/en/stable/tutorials/new_to_game_theory_and_or_python/moran.html\u003e`_ and an `infinite\n  population model\n  \u003chttps://axelrod.readthedocs.io/en/stable/how-to/run_axelrods_ecological_variant.html\u003e`_.\n- can analyse detailed `results of tournaments\n  \u003chttps://axelrod.readthedocs.io/en/stable/tutorials/new_to_game_theory_and_or_python/summarising_tournaments.html\u003e`_ and matches.\n- can `visualise results\n  \u003chttps://axelrod.readthedocs.io/en/stable/tutorials/new_to_game_theory_and_or_python/visualising_results.html\u003e`_ of tournaments.\n\n  .. image:: http://axelrod.readthedocs.io/en/stable/_images/demo_strategies_boxplot.svg\n     :height: 300 px\n     :align: center\n\n- can reproduce a number of contemporary research topics such as `fingerprinting \u003chttps://axelrod.readthedocs.io/en/stable/how-to/fingerprint.html\u003e`_ of\n  strategies and `morality metrics\n  \u003chttps://axelrod.readthedocs.io/en/stable/how-to/calculate_morality_metrics.html\u003e`_.\n\n  .. image:: https://github.com/Axelrod-Python/Axelrod-fingerprint/raw/master/assets/Tricky_Defector.png\n     :height: 300 px\n     :align: center\n\nThe library has 100% test coverage and is extensively documented. See the\ndocumentation for details and examples of all the features:\nhttp://axelrod.readthedocs.org/\n\n`An open reproducible framework for the study of the iterated prisoner's\ndilemma \u003chttp://openresearchsoftware.metajnl.com/article/10.5334/jors.125/\u003e`_:\na peer reviewed paper introducing the library (22 authors).\n\nInstallation\n------------\n\nThe library is tested on Python versions 3.8, 3.9, and 3.10.\n\nThe simplest way to install is::\n\n    $ pip install axelrod\n\nTo install from source::\n\n    $ git clone https://github.com/Axelrod-Python/Axelrod.git\n    $ cd Axelrod\n    $ python setup.py install\n\nQuick Start\n-----------\n\nThe following runs a basic tournament::\n\n    \u003e\u003e\u003e import axelrod as axl\n    \u003e\u003e\u003e players = [s() for s in axl.demo_strategies]  # Create players\n    \u003e\u003e\u003e tournament = axl.Tournament(players, seed=1)  # Create a tournament\n    \u003e\u003e\u003e results = tournament.play()  # Play the tournament\n    \u003e\u003e\u003e results.ranked_names\n    ['Defector', 'Grudger', 'Tit For Tat', 'Cooperator', 'Random: 0.5']\n\n\nExamples\n--------\n\n- https://github.com/Axelrod-Python/tournament is a tournament pitting all the\n  strategies in the repository against each other.\n- https://github.com/Axelrod-Python/Axelrod-notebooks contains a set of example\n  Jupyter notebooks.\n- https://github.com/Axelrod-Python/Axelrod-fingerprint contains fingerprints\n  (data and plots) of all strategies in the library.\n\nContributing\n------------\n\nAll contributions are welcome!\n\nYou can find helpful instructions about contributing in the\ndocumentation:\nhttps://axelrod.readthedocs.io/en/stable/how-to/contributing/index.html\n\nPublications\n------------\n\nYou can find a list of publications that make use of or cite the library\non the `citations \u003chttps://github.com/Axelrod-Python/Axelrod/blob/master/citations.md\u003e`_ page.\n\nContributors\n------------\n\nThe library has had many awesome contributions from many `great\ncontributors \u003chttps://github.com/Axelrod-Python/Axelrod/graphs/contributors\u003e`_.\nThe Core developers of the project are:\n\n- `drvinceknight \u003chttps://github.com/drvinceknight\u003e`_\n- `gaffney2010 \u003chttps://github.com/gaffney2010\u003e`_\n- `marcharper \u003chttps://github.com/marcharper\u003e`_\n- `meatballs \u003chttps://github.com/meatballs\u003e`_\n- `nikoleta-v3 \u003chttps://github.com/Nikoleta-v3\u003e`_\n\n.. |Join the chat at https://gitter.im/Axelrod-Python/Axelrod| image:: https://badges.gitter.im/Join%20Chat.svg\n   :target: https://gitter.im/Axelrod-Python/Axelrod?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge\n","funding_links":[],"categories":["Python","Simulation, Forecasting and Macro Modeling"],"sub_categories":["Game Theory and Mechanism Design"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAxelrod-Python%2FAxelrod","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAxelrod-Python%2FAxelrod","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAxelrod-Python%2FAxelrod/lists"}