Skip to content

macbrayne/extended-ipd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IPD : the Extended Iterated Prisoner's Dilemma

For more information about the original project visit https://github.com/cristal-smac/ipd

In their paper[1] the authors propose an interesting extended version of the iterated prisoner's dilemma. However no existing project for simulating the prisoner's dilemma has implemented such a variation. I adapted the work from the SMAC team and created a version of their library specifically for simulating the extended version of the prisoner's dilemma.

As a result of using a existing project all classic strategies should remain functional and are cross-compatible.

Installation

To use the library or run the experiments you first have to install matplotlib, pandas and numpy. This can be accomplished using pip:

$ pip3 install numpy pandas matplotlib

Running example experiments

Running the experiments using the newly implemented strategies:

$ python ./extended_tests.py

Running the experiments using the original strategies

$ python ./classic_tests.py

Strategies

I've implemented the following six strategies from [1]:

  • Hard,
  • Tester-4,
  • Tit-for-Tat-with-Threshold,
  • First,
  • Second and
  • Third

The latter three were the winners of a tournament held in cooperation with Pour La Science, the french version of the monthly Scientific American.

Using the new strategies

from lib.ipd import *
from lib.extended_strategies import *
from lib.pour_la_science import *

bag=[First(g), Second(g), Third(), Hard(), Tester4(), TftWithThreshold(g)]
t= Tournament(g,bag)        # default: length=1000
e= Ecological(t)            # default: pop=100
e.run()
e.tournament.matrix
e.historic
e.drawPlot()

Reference

[1] Delahaye, J. & Mathieu, P., 1994. ‘Complex Strategies in the Iterated Prisoner's Dilemma’, Proceedings of the 1994 Chaos and Society conference, Hull, Canada, July the 1st–2nd 1994. pp 283–292.

About

For more information visit https://github.com/cristal-smac/ipd

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages