CS188: PAC-MAN PLAYS ITSELF
This year, I’ve built a series of AI/ML projects concerning Pac-Man! I have completed, with 100% accuracy, the following:
Students implement depth-first, breadth-first, uniform cost, and A* search algorithms. These algorithms are used to solve navigation and traveling salesman problems in the Pacman world.
Classic Pacman is modeled as both an adversarial and a stochastic search problem. Students implement multiagent minimax and expectimax algorithms, as well as designing evaluation functions.
Students implement model-based and model-free reinforcement learning algorithms, applied to the AIMA textbook’s Gridworld, Pacman, and a simulated crawling robot.
Students implement probabilistic models and use inference to eat ghosts that are only detectable by noisy sonar. Models are used, such as implementing a hidden Markov model and a joint particle filter.
The specifications are available here: https://inst.eecs.berkeley.edu/~cs188/fa21/projects/
Games That Play Themselves
Sitting in the library as I watch pac-man navigate around his maze while avoiding ghosts was a moment I am very proud of in college. It taught me a lot about how these complicated topics often discussed in the news, notably AI, are truly not that challenging to understand once the time and energy is dedicated to understanding them.
Every now and then, pac man would walk into a ghost or get stuck in a corner, and I am reminded that technology is not perfect. Sure, after awhile pac man may not make any mistakes, but there’s always a chance that he will. Such is life.
If you want to teach pac man how to play itself, I’d recommend starting with an introduction to software engineering! I’ll make videos and classes soon, so stay tuned.