AI automated decision making agents are taking the world by storm, from NASA extraterrestrial robots exploring distant planets, to self-driving cars charting routes and avoiding road hazards, medical decision support systems making diagnostic and treatment recommendations, virtual agents scheming against human players in computer games, and automated day-traders making stock exchange orders in split seconds.
This introductory course offers a window into a the emerging field of AI automated agents, the most common algorithms used to build and improve them, and some of the confounding factors and challenges that make this growing science exciting and interesting.
Whether you are a hi-tech professional looking to expand your skills, a computer science enthusiast curious about this topic, or a business executive interested in gaining a technical perspective, this course serves as a good starting point for your learning journey.
What am I going to get from this course?
- Understand the foundational concepts and terms related to automated planning and decision making
- Build simple decision-making agents leveraging a suite of commonly used AI algorithms
- Grow and expand by following the latest publications, talks and breakthroughs
Prerequisites and Target Audience
What will students need to know or do before starting this course?
- Familiarity with computer science or computer engineering basics
- College-level mathematics
- Basic programming skills (needed only for programming tutorials/challenges)
Who should take this course? Who should not?
Computer science professionals, executives, and enthusiasts who are curious about and unfamiliar with automated planning and decision making.
Module 1: Automatic Planning and Decision Making
A brief introduction to the course material, structure, goals, and intended audience.
Why learn about automated planning and decision making?
Module 2: Planning in a Simplified World
Simplifying assumptions, and modeling abstractions helpful to frame the planning problem for easy analysis
Basic Decision Theory
Formal mathematical formulation to the planning problem
Basic Decision Theory Example
A navigation example from daily life to help explain the mathematical formulations of decision theory.
State Space Search
A methodical way to explore decision options and arrive at workable action plans
Uninformed State Space Search
Using Sudoku puzzles to illustrate the power of multiple state-space search algorithms to solve complex planning problems
Tutorial 1: Sudoku Solver
Hands on session exploring the code for a Sudoku solving AI agent
Informed State Space Search
An overview of state-space search algorithms that employ pruning and heuristics to find optimal plans faster
Frugal State Space Search
An overview of cost-aware state-space search algorithms like A*, used to solve path-navigation problems etc.
Tutorial 2: Maze Solver
Hands on session exploring the code for a maze navigation solving AI agent
Module 3: Planning in the Real World
Simplified vs real world problems
An analytical approach to modeling planning problems that involve concurrent actions and non-trivial action dependencies
Planning Graph Example
A robotics example from to help explain the concept and utility of planning graphs
A general overview of GraphPlan algorithm using robotics as a working example
Statistical Decision Theory
A generalization of the basic mathematical formulations explored in Module 2, expanded to include world models that incorporate uncertainty
Statistical Decision Theory Example
A navigation example from daily life to help explain the mathematical formulations of statistical decision theory
Markov Decision Processes
An analytical approach to modeling decision planning problems that incorporates aspects of the world's inherent uncertainty
MDP Policy Extraction
A TV-game show example to help develop an algorithm for using Markov Decision Processes to arrive at optimal plans
Tutorial 3: Who Wants to be a Millionnaire Planner
Hands on session exploring the code for an AI agent to find optimal strategies for a popular TV game show
An overview of an increasingly popular approach to model decision making in the context of obscure knowlege and inherent world ambiguity
Let's Play Blackjack
A card game example to help explain the central concepts of reinforcement learning
Hands on session exploring the code for an AI-based blackjack player
A summary of the key learning and takeaway from this course, further reading, and recommended next steps.