Artificial intelligence aims to tackle complex real-world problems (e.g., web search, speech recognition, face recognition, machine translation, autonomous driving) with rigorous mathematical tools. In this course, students will learn the foundational principles that drive these applications and practice implementing some of these systems. This course covers a broad range of AI-related topics at a fast pace, focusing on understanding the fundamental concepts and principles on each topic. Accordingly, programming assignments will be implementing the core ideas with native python rather than blindly using AI libraries or tools.
- Simple Python tasks
- Stochastic Gradient Descent
- K-means Clustering
- UCS
- Word Segmentation
- Vowel Insertion
- A* Search
- Value Iteration
- Q Learning
- Minimax
- Alpha-beta pruning
- Expectimax
- CSP solving
- Handling n-ary factors
- Bayesian Network
- Particle Filtering
- Propositional logic
- Logical Inference