This repository contains the implementations to reproduce the simulation results of Lehnert et al. 2020. Please view the individual jupyter notebook files for instructions on how to reproduce all results.
This repository and all data generated by the implemented simulations can also be downloaded as a Docker container form Docker Hub. This Docker container also contains all software needed to run the notebooks and implemented experiments. Note that the container has a size of 12.9GB.
To use the container, first install Docker Desktop on your computer and then download the container:
docker pull lucasdocker/rewardpredictive
The container can be run with
docker run -it -p 8888:8888 lucasdocker/rewardpredictive:latest
Then point your browser to localhost:8888 to access the jupyter notebook server. The Docker container can also be used to reproduce each simulation by running
docker run -it lucasdocker/rewardpredictive:latest python -m main -e [ExperimentName]
The included simulation data can be extracted by running
docker cp [CONTAINER]:/workdir/rewardpredictive/data [DEST_PATH]
where [CONTAINER]
is the container ID of the downloaded container and [DEST_PATH]
is the path location where the
data will be copied on the host.
To run the jupyter notebooks and reproduce the simulations, first clone the repository, create a python 3.7 virtual environment, and install the required dependencies:
git clone https://github.com/lucaslehnert/rewardpredictive.git
cd rewardpredictive
pip install -r requirements.txt
The jupyter notebooks can be viewed by running
jupyter notebook
from the project's root directory (the directory this README file is stored in). All simulations can be reproduced by running the main script from the root directory:
python -m main -e [ExperimentName]