Course Description
Artificial Intelligence (AI) is a vast field. Nowadays, people often think that AI is nothing but machine learning, mainly due to the widespread use of machine learning. However, machine learning is just a part of the domain of AI. This course will explore the full breadth of AI, encompassing logic, probability, reasoning, learning, decision making, and action. We will define AI as the study of intelligent agents, where each agent receives percepts from the environment and acts upon them. We will discuss goal-based models, knowledge-based models, and delve into different modules like problem-solving (e.g., Sudoku solver), planning, and acting under uncertainty. Applications of AI in various fields like natural language processing, perception (computer vision), and robotics will be covered.
Prerequisites
- Basic knowledge of computer science such as algorithms, data structures, probability, and linear algebra.
Textbook
- Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig.
Syllabus
- Introduction: Intro to AI, Agents and Environments
- Problem Solving: Solving problems by Searching, Informed search and exploration, Constraint satisfaction problems, Adversarial search
- Planning: Planning and acting, Uncertain knowledge and reasoning, Making simple and complex decisions
- Learning: Learning from observation, Supervised and unsupervised learning (overview), Reinforcement learning
- Bayesian Network: Probability, BNs: Representation, Independence, Inference, Sampling, Decision Networks / VPI
- Hidden Markov Models: HMMs, Particle Filtering and Apps of HMMs, Naive Bayes
- Application: Robotics, Computer Vision, Natural Language Processing, Computer Games (Deep Reinforcement Learning)
Course Objectives
- Understand the fundamental concepts of Artificial Intelligence (AI), including intelligent agents, environments, and the broad scope of AI beyond machine learning.
- Learn various problem-solving strategies such as searching, informed exploration, and constraint satisfaction, and apply them to solve complex problems.
- Explore planning techniques and decision-making processes in the presence of uncertainty, including probabilistic reasoning and making both simple and complex decisions.
- Gain an overview of learning methodologies, including supervised, unsupervised, and reinforcement learning, and understand their applications in AI problem-solving.
- Understand the principles of Bayesian Networks and Hidden Markov Models (HMMs), including their representations, inference methods, and applications in real-world scenarios.
- Explore the diverse applications of AI in fields such as robotics, computer vision, natural language processing, and computer games, including deep reinforcement learning techniques.
Course Outcomes
- Analyze and identify problems suitable for the application of AI techniques across various domains, including but not limited to problem-solving, planning, and decision-making.
- Implement selected AI techniques to effectively address and solve complex problems, demonstrating proficiency in foundational AI concepts such as problem-solving by searching, constraint satisfaction, and adversarial search.
- Evaluate and apply state-of-the-art AI techniques, including probabilistic reasoning, reinforcement learning, and Bayesian Networks, to address real-world challenges in diverse fields such as robotics, computer vision, and natural language processing.
- Demonstrate a comprehensive understanding of key AI principles and methodologies, as outlined in the course syllabus, including the principles of intelligent agents, uncertain knowledge and reasoning, and learning algorithms.
- Critically assess the applicability of basic and advanced AI techniques to different problem domains, making informed decisions about selecting and implementing appropriate methods based on problem characteristics and constraints.
- Through a combination of theoretical understanding, practical application, and critical analysis, students will develop the necessary skills and knowledge to contribute effectively to the field of Artificial Intelligence and apply AI techniques to solve complex real-world problems.
Grade Distribution
- Quizzes: 20%
- Projects and/or Assignments: 30%
- Midterm Exam: 20%
- Final Exam: 30%
Course Outline
The weekly coverage might change as it depends on the progress of the class. However, you must keep up with the earlier lectures and reading assignments. There will be 10 or more quizzes throughout the semester.
- Week 1: Introduction, Intelligent Agents and Environments
- Week 2: Problem Solving: Solving problem by searching
- Week 3: Problem Solving: Informed search and exploration
- Week 4: Problem Solving: Constraint satisfaction problem
- Week 5: Problem Solving: Adversarial Search
- Week 6: Uncertain Knowledge and Reasoning: Uncertainty
- Week 7: Uncertain Knowledge and Reasoning: Probabilistic reasoning
- Week 8: Uncertain Knowledge and Reasoning: Making simple decisions
- Week 9: Uncertain Knowledge and Reasoning: Making complex decisions
- Week 10: Learning: Brief overview of various learning methods
- Week 11: Learning: Reinforcement learning
- Week 12: Bayes Net (1)
- Week 13: Bayes Net (2)
- Week 14: Application: Computer vision, Natural Language Processing
- Week 15: Deep Reinforcement Learning
- Week 16: Course Wrap-up