This repository accompanies the paper "Resolving social dilemmas with minimal reward transfer", arXiv, containing the code required to reproduce its results.
Install the dependencies using conda
conda create -f environment.yml
Activate the environment and add the repo to the PYTHONPATH
conda activate rtm
export PYTHONPATH="$(pwd)/src"
src.rtm.algorithms contains Algorithm 1 (called find_T_star), which returns a minimal reward transfer matrix for a normal-form social dilemma. It also has a simpler algorithm to find the symmetrical self-interest level of a game, and algorithm to maximise the off-diagonal entropy of a reward transfer matrix.
In order to produce the results from the paper, call
python3 src/rtm/solver_lp.py --game <GAME_NAME>
To see the options, use
python3 src/rtm/solver_lp.py --help