https://github.com/vivek3141/rubiks-cube-ai
Using Deep Reinforcement Learning, a computer program learns how to solve the Rubik's Cube, the world's most popular toy.
https://github.com/vivek3141/rubiks-cube-ai
machine-learning q-learning reinforcement-learning rubiks-cube
Last synced: about 1 year ago
JSON representation
Using Deep Reinforcement Learning, a computer program learns how to solve the Rubik's Cube, the world's most popular toy.
- Host: GitHub
- URL: https://github.com/vivek3141/rubiks-cube-ai
- Owner: vivek3141
- Created: 2018-07-31T07:03:30.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-08-04T00:48:02.000Z (almost 8 years ago)
- Last Synced: 2023-03-02T04:25:50.510Z (over 3 years ago)
- Topics: machine-learning, q-learning, reinforcement-learning, rubiks-cube
- Language: Python
- Homepage:
- Size: 367 KB
- Stars: 18
- Watchers: 2
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rubik's Cube AI
The Rubik's Cube is the most popular toy right now. This
program uses deep-q learning and OpenAI baselines to learn how
to solve the cube.
## Requirements
You can run `sudo sh requirements.sh` to get all the requirements
If on windows, run `requirements`
## How it works
This program uses Deep Q learning and OpenAI's gym and baselines. I have experimented
with Keras also, however I found that baselines gave better results.
## Usage
To train, run
`python3 main.py train`
To run, run
`python3 main.py run`
## Debugging
Open main.py in your editor and you can edit all the variables for the classes `Run` and `Train`.
## Credits
@Robin Chiu for writing the base of the env. I fixed a few issues which is why it has been provided.