This work was done as a part of the course project of CS 419 - Introduction to Machine Learning, under Prof. Abir De.
The details about the project, previous work, our contributions, and our results can be found in the report and the presentation
Pong | Breakout | Boxing |
---|---|---|
conda create -n env # create new conda environment
conda activate env # activate the conda environment
pip install -r requirements.txt # install dependencies
jupyter notebook <path/to/notebook> # opens the required notebook in jupyter
# run all cells in the notebook
Repository Structure:
.
├── DQN
│ ├── DeepRL_boxing.ipynb
│ ├── DeepRL_breakout.ipynb
│ ├── DeepRL_pong.ipynb
│ ├── Param.py
│ ├── model.py
│ ├── models
│ │ ├── # saved model weights checkpoints for multiple games
│ ├── replay_memory.py
│ ├── utils.py
│ ├── videos
│ │ ├── # videos of agent playing multiple games
│ └── wrappers.py
├── Double-DQN
│ ├── DeepRL_boxing_modified.ipynb
│ ├── DeepRL_breakout_modified.ipynb
│ ├── DeepRL_pong_modified.ipynb
│ ├── Param_modif.py
│ ├── model.py
│ ├── models_modified
│ │ ├── # saved model weights checkpoints for multiple games
│ ├── replay_memory.py
│ ├── utils_modif.py
│ ├── videos_modified
│ │ ├── # videos of agent playing multiple games
│ └── wrappers.py
├── README.md
├── report.pdf
└── requirements.txt
Note: The two DQN and Double-DQN folders in the top directory are standalone folders containing the respective implementation. Also, each game has a separate IPython notebook as indicated in the tree above.