This repository contains a series of AI-focused projects developed for the CS 565: Introductory Artificial Intelligence course at Binghamton University. Each project applies a different AI concept in the context of Pac-Man, providing a fun, visual, and challenging way to understand real-world AI techniques.
These projects serve as a hands-on introduction to core AI techniques, including:
- State-space search algorithms
- Adversarial and stochastic decision-making
- Reinforcement learning
- Machine learning
These are foundational concepts that support applications in areas such as natural language processing, computer vision, and robotics.
Pac-Man offers a complex yet intuitive environment that mirrors real-world AI challenges. The projects are structured with minimal boilerplate code, allowing more time to focus on algorithm development and problem solving. Visual feedback makes it easier to understand and debug implementations.
Implemented classic search algorithms to navigate through Pac-Man mazes:
- Depth-First Search (DFS)
- Breadth-First Search (BFS)
- Uniform Cost Search (UCS)
- A* Search
These methods solve both simple navigation problems and more complex traveling salesman-style tasks.
Modeled Pac-Man as a multi-agent system, where decisions must consider adversarial or uncertain agents:
- Minimax algorithm
- Expectimax algorithm
- Custom evaluation functions
This simulates environments with intelligent opponents, such as ghosts with unpredictable behavior.
Developed agents that learn from their environment using:
- Value Iteration
- Q-Learning
Training began in Gridworld and progressed to controlling a robot simulator (Crawler) and eventually Pac-Man.
Introduced core machine learning concepts through classification tasks:
- Digit classification
- Language identification
Algorithms implemented include:
- Perceptron
- Non-linear regression