Apply a DQN model to play Mario games by Shiqi Zheng. Final Project for CIS4930 Deep Learning for Computer Graphics Fall 2020 instructed by Dr. Corey Toler-Franklin at University of Florida.
Demo
DQN Super Mario Player Structure Overview
To read more details, please view Deep Reinforcement Learning with Mario Games.pdf.
conda create -n DQN_SuperMario python=3.7 jupyter # You can also use other environment.
pip install -r requirements.txt
Use jupter notebook
to run DQN_super_mario.ipynb.
It takes a while to train, and if you do not want to wait, Local_DQN_Mario_big_4 is a trained model that can be used to play the game.
Use jupter notebook
to run Mario_Play.ipynb with the model created in the Training.
The 100 times rewards results are summarized in Table 1.
The last 100 reward trend is shown in Figure 2.
- Part of the code is built based on Playing Atari with Deep Reinforcement Learning by Mnih, Volodymyr, et al.
- Also thanks to John N Tsitsiklis and Benjamin Van Roy and their paper An analysis of temporal-difference learning with function approximation. Automatic Control, IEEE Transactions on, 42(5):674–690, 1997.
- Thanks to Deep-Reinforcement-Learning-Hands-On and REINFORCEMENT LEARNING (DQN) TUTORIAL.