Applying various algorithms learned from the courses of Algorithms and Artificial Intelligence to solve real-world problems is intriguing, especially considering that most problems found in textbooks tend to be either trivial, theoretical, or oversimplified. In this poster, we present a challenging project where we apply a variety of common algorithms and their variations to solve the snake game. Our project’s primary goal is to develop a perfect snake algorithm, defined as one that collects food until the grid is entirely covered by the snake, indicating the completion of the game, ideally achieved in as few steps as possible. This project is particularly intriguing as it offers a novel approach to completing the game, a task that humans often find challenging.
We have explored a range of algorithms, including basic graph searching algorithms like BFS, advanced searching algorithms such as A*, modern techniques like deep Q learning, and a Hamiltonian circuit-based algorithm. Given the complexity of this problem, we have made modifications to most of the standard algorithms, utilizing both brute force and human intervention. Our aim is not only to demonstrate the feasibility of these algorithms but also to reach the exciting milestone of creating a perfect snake on a large grid, surpassing human capabilities.
In summary, this project has not only deepened students’ understanding of algorithms and enhanced students’ coding skills, but it has also exposed students to the complex challenges faced in real-world applications.