COMS 4701, Artificial Intelligence
Artificial intelligence (AI) is a broad, interdisciplinary, and fast-growing subfield of computer science concerned with the construction and deployment of intelligent agents. This course provides an overview of the methods and applications of AI, with a focus on algorithms and computation. Topics include search and planning problems and game-playing, sequential decision problems and reinforcement learning, probabilistic models and inference, and supervised and deep learning. Students will develop intuition and algorithmic thinking through written as well as programming problems in Python. By the end of the course, students will be able to build intelligent agents that can solve problems through search, make decisions and reason in the face of uncertainty, and learn simple models from data.
Course Objectives
- Formulate planning problems and implement uninformed, informed, and local search algorithms.
- Model games as adversarial search problems and implement efficient search algorithms to solve them.
- Model sequential decision problems as Markov decision processes and solve them using dynamic programming and reinforcement learning methods.
- Model probabilistic reasoning problems using hidden Markov models and Bayesian networks.
- Implement inference, sampling, and learning methods for probabilistic models.
- Implement and effectively use common machine learning algorithms, including decision trees, linear classification, and neural networks.
Prerequisites
- Data structures
- Familiarity with basic probability theory (discrete distributions, conditioning, Bayes’ rule)
- Familiarity with basic linear algebra (vector and matrix operations)
- Experience with Python or similar programming language
General List of Topics
- Overview and history of AI
- Intelligent agents
- Uninformed and informed search
- Local search methods
- Constraint satisfaction problems
- Games and adversarial search
- Monte Carlo tree search
- Multi-armed bandits
- Markov decision processes
- Dynamic programming
- Reinforcement learning
- Hidden Markov models
- Inference and learning in HMMs
- Bayesian and decision networks
- Inference and learning in BNs
- Probabilistic learning
- Decision trees and random forests
- Linear classifiers and perceptrons
- Neural networks and deep learning
- Bias and fairness