Skip to content

A bot that plays switch games using reinforcement learning

License

Notifications You must be signed in to change notification settings

kaiergin/SwitchPlayer

Repository files navigation

Reinforcement Learning on the Nintendo Switch

Games to learn:

  • Tetris 99 (current)
  • Mario Maker 2

What is working?

Currently the OpenAI gym environment for playing Tetris 99 works properly. Reward is given on line clears and the environment can properly restart when a game is lost. An implementation of Rainbow DQN is being used for training but will be most likely replaced soon with a different method.

How does it work?

Deep Q networks have set some impressive milestones for playing games in the atari domain. Check here to learn more about how they work and the optimizations necessary to get good performance.

To do list

  • Train on in-game data (in-progress)
  • Swap to a model based method
  • Update to tensorflow 2
  • More work on reward function

Dependencies

I recommend creating a virtual envioronment with python 3.5-3.6 as keras 2.1.5 with tensorflow 1.14 is used
Then run

  • pip install -r requirements.txt

For GPU usage

  • pip install tensorflow-gpu==1.14

Currently only support for Windows machines

References

Repo for sending commands to switch
Repo for DQN

Hardware Used

About

A bot that plays switch games using reinforcement learning

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages