Skip to content

My version of the Chrome Dino Game is nearly identical to the original, with an accurate physics model, infinite scroll, soundfx, and a saved high score. I then modified it with a neural network that learns to play the game over time and consistently got better.

Notifications You must be signed in to change notification settings

Gautham-Raju/Dino

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌟 AI learns Chrome Dino Game 🌟

⭐ Inspiration

I've always been interested in the making of video games, and even got my start programming by building simple games. In order to learn python, I decided to do a mini-project that would introduce me to various modules. I decided to remake the popular dino game on chrome that shows up when you go offline. I was also learning about some basic AI concepts at school and I wanted to apply that to this project so I then modified the game to include a neural network that would learn to play the game by itself.

🚀 What it Does

My version of the Chrome Dino Game is nearly identical to the original, with an accurate physics model, infinite scroll, soundfx, and a saved high score. I then modified it with a neural network that learns to play the game over time and consistently got better.

💎 How I built it

  • Python's PyGame and Math model
  • Neuroevolution of augmenting topologies(NEAT) neural network for training

🤘 Challenges I ran into

  • This was one of my first exposures to python so I had to learn the language and the modules that came along with it
  • I had to learn about Neural Networks and how they worked
  • Had to understand the NEAT pattern
  • I had to play around with various labels in the network to get an ideal, "smart" model

🏆 Accomplishments that I'm proud of

  • This project was one of my favorites because I genuinely enjoyed everything that I was learning about. I got a little insight into the complexities of a player model in video games with things such as boundaries, collision detection, and physics.
  • I also enjoyed learning about neural networks and the science and math behind them.

🦋 Prerequisite

  • Python Installed

  • Python Basics Understanding

  • Git Installed

  • Git Basic Understanding

🛠️ Installation Steps

  1. Clone the repository
git clone https://github.com/Gautham-Raju/Dino.git
  1. Change the working directory
cd Dino

👷 Built with

  • Python: Primary Coding Language

  • PyGame : Cross-platform video game module

  • NEAT : Genetic algorithm for neural networks

🎊 Future Updates

  • I want to explore other machine learning models and compare their performances to learn which one would perform the best.

🧑🏻 Author

Gautham Raju

About

My version of the Chrome Dino Game is nearly identical to the original, with an accurate physics model, infinite scroll, soundfx, and a saved high score. I then modified it with a neural network that learns to play the game over time and consistently got better.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages