An open API service indexing awesome lists of open source software.

https://github.com/pintamonas4575/rl-model-the-simpsons

Implementation of a Reinforcement Learning (RL) model to learn to scratch the less possible surface on the scratch game of the Badulaque of the app "The Simpsons Springfield".
https://github.com/pintamonas4575/rl-model-the-simpsons

custom-environment deep-learning deep-q-learning machine-learning pytorch q-learning reinforcement-learning reinforcement-learning-environment scratch-game simpsons-app streamlit web-deployment

Last synced: 4 months ago
JSON representation

Implementation of a Reinforcement Learning (RL) model to learn to scratch the less possible surface on the scratch game of the Badulaque of the app "The Simpsons Springfield".

Awesome Lists containing this project

README

          

# ๐Ÿค– TFM-RL-model-The-Simpsons ๐Ÿค–
Implementation of a Reinforcement Learning (RL) model to learn to scratch the less possible surface on the scratch game of the Badulaque of the app "The Simpsons Springfield".

---
๐Ÿ™‹โ€โ™‚๏ธ This project, and as a consequence, its files, belongs to the **masterยดs final project** (thesis) of **Alejandro Mendoza** in **Machine Learning and Big Data master degree** of the Polytechnic University of Madrid (UPM).

# ๐Ÿงญ Workflow
1. Generate random tickets in every execution
2. Generate tickets with scrathing surface above
3. Automated scratching
4. Obtain percentage of scratched surface
5. Animate/Warn when a symbol is fully discovered
6. (Esthetic look of window)
7. RL model for scratching
1. Test to remove all the frames with the agent to see if the game works
2. (random scratching strategy)
3. Reward scratching stategy

# ๐Ÿ† Modelยดs objective
Obtain the less scrathced surface as possible, obviously showing the three symbols. There arenยดt any rewards for same symbols.

**NOTE:** Symbols change in every ticket generation.

# ๐Ÿ“˜ Notebooks "auxiliar" and "contours"
*"auxiliar.ipynb"* is used for different tests.

*"contours.ipynb"* is used for showing the creation of the pixel mask and obtaining the valid contours.

# ๐Ÿ“œ Scripts "phaseX.py"
Incremental versions of the game until having the complete functionality. You can execute "phase6-final-game.py" to play yourself.

# ๐Ÿ“‚ Folder "checkpoint-photos"
Different phases that a ticket has during the game.

# ๐Ÿ“‚ Folder "emojis"
Emoji images used for generating the tickets. Downloaded from the Emojipedia.

# ๐Ÿ“‚ Folder "utils"
Some useful files like the window background of the tickets or the script to plot the training process.

# ๐Ÿ“‚ Folder "results"
Results of all agents of all versions of the game.

# ๐Ÿ› ๏ธ Used resorces
Github emojis: [ikatyang](https://github.com/ikatyang/emoji-cheat-sheet)

Emojipedia (downloaded last iOS emoji versions): [Emojipedia](https://emojipedia.org/)

Tkinter 8.6 (later unsed): [Poor Python documentation](https://docs.python.org/3.11/library/tkinter.html)

PyQT5 (later, the one used): [Official web](https://www.riverbankcomputing.com/static/Docs/PyQt5/) [Qt.io](https://doc.qt.io/qt-5/classes.html)

ChatGPT: [ChatGPT](https://chatgpt.com/)

Perplexity: [Perplexity](https://www.perplexity.ai/)

Github Copilot: [Github Copilot](https://github.com/features/copilot)

Stackoverflow: [Searching questions](https://stackoverflow.com/)

# โš–๏ธ License
Spanish governement surely scratches the money out of our pockets.

# ๐Ÿ‘ค Contact
Any doubt or suggestion contact with the author:

Alejandro Mendoza: alejandro.embi@gmail.com