A summary of the AI techniques explored in Dr. Zhu's AI class
cap6635.agents
define the different search and decision-making algorithms.- See sub-directories for more details on the agents
cap6635.environment
creates and populates the world with various obstacles or other states.cap6635.utilities
hosts various helper functions for searching, environment manipulation, animation and more.
pip install -r requirements.txt cap6635
Run the vacuums.py
example with the optional paramters. The output gets saved as a vacuum?.gif
animation.
# Type of agent defaults to random type (if not provided)
# 1 --> Simple Reflex Vacuum
# 2 --> Model-based Vacuum
# 3 --> Goal-based Vacuum
# World Height & Width defaults to random int (if not provided)
python 1_vacuums.py [type_of_agent] [height_of_world] [width_of_world]
# Hill Climbing
python 2_hill_climbing.py [number_of_queens]
# Simulated Annealing
python 3_simulated_annealing.py [number_of_queens]
# Genetic Algorithm
python 4_genetic.py [number_of_queens]
# Minimax + Alpha-Beta Pruning
# Algorithm {1 --> Minimax, 0 --> Alpha-Beta Pruning}
# First Player {1 --> Human, 2 --> AI}
python 5_minimax.py [Algorithm] [First Player]
# e.g. Minimax (Alpha-Beta Pruning) - Player is X
python 5_minimax.py 0 1