Nanodegree key: nd898
Version: 2.0.0
Locale: en-us
Become an expert in the core concepts of artificial intelligence and learn how to apply them to real-life problems.
Content
Part 01 : Foundations of AI
-
Module 01: Introduction to the Nanodegree
-
Lesson 01: Welcome to Artificial Intelligence
Welcome to Term 1 of the Artificial Intelligence Nanodegree program!
- Concept 01: Welcome to the Artificial Intelligence Nanodegree Program
- Concept 02: Meet Your Instructors
- Concept 03: Projects You Will Build
- Concept 04: Deadline Policy
- Concept 05: Udacity Support
- Concept 06: Community Guidelines
- Concept 07: Weekly Lesson Plans
- Concept 08: References & Resources
- Concept 09: Get Started
- Concept 10: Lesson Plan: Week 1
-
Lesson 02: Introduction to AI
An introduction to basic AI concepts with real world examples.
- Concept 01: Welcome to AI!
- Concept 02: Navigation
- Concept 03: Game Playing
- Concept 04: Quiz: Tic Tac Toe
- Concept 05: Tic Tac Toe: Heuristics
- Concept 06: Quiz: Monty Hall Problem
- Concept 07: Monty Hall Problem: Explained
- Concept 08: Quiz: What is Intelligence?
- Concept 09: Defining Intelligence
- Concept 10: Agent, Environment And State
- Concept 11: Perception, Action and Cognition
- Concept 12: Quiz: Types of AI Problems
- Concept 13: Rational Behavior And Bounded Optimality
-
Lesson 03: Applying AI to Sudoku
In this lesson, you'll get taste of the power of Artificial Intelligence by developing an algorithm to solve every Sudoku puzzle. Enjoy the fun of building your first AI agent and get coding!
- Concept 01: Intro
- Concept 02: Solving a Sudoku
- Concept 03: Setting up the Board
- Concept 04: Encoding the Board
- Concept 05: Strategy 1: Elimination
- Concept 06: Strategy 2: Only Choice
- Concept 07: Constraint Propagation
- Concept 08: Harder Sudoku
- Concept 09: Strategy 3: Search
- Concept 10: Coding the Solution
-
Lesson 04: Setting up with Anaconda
Get your environment set up using Anaconda, an extremely popular way to manage your environments and packages in python.
-
-
Module 02: Career Services
-
Lesson 01: Jobs in AI
Learn about common jobs in artificial intelligence, and get tips on how to stay active in the community.
-
Lesson 02: Optimize Your GitHub Profile
Other professionals are collaborating on GitHub and growing their network. Submit your profile to ensure your profile is on par with leaders in your field.
- Concept 01: Prove Your Skills With GitHub
- Concept 02: Introduction
- Concept 03: GitHub profile important items
- Concept 04: Good GitHub repository
- Concept 05: Interview with Art - Part 1
- Concept 06: Identify fixes for example “bad” profile
- Concept 07: Quick Fixes #1
- Concept 08: Quick Fixes #2
- Concept 09: Writing READMEs with Walter
- Concept 10: Interview with Art - Part 2
- Concept 11: Commit messages best practices
- Concept 12: Reflect on your commit messages
- Concept 13: Participating in open source projects
- Concept 14: Interview with Art - Part 3
- Concept 15: Participating in open source projects 2
- Concept 16: Starring interesting repositories
- Concept 17: Next Steps
-
Lesson 03: Strengthen Your Online Presence Using LinkedIn
Find your next job or connect with industry peers on LinkedIn. Ensure your profile attracts relevant leads that will grow your professional network.
- Concept 01: Get Opportunities with LinkedIn
- Concept 02: Use Your Story to Stand Out
- Concept 03: Why Use an Elevator Pitch
- Concept 04: Create Your Elevator Pitch
- Concept 05: Use Your Elevator Pitch on LinkedIn
- Concept 06: Create Your Profile With SEO In Mind
- Concept 07: Profile Essentials
- Concept 08: Work Experiences & Accomplishments
- Concept 09: Build and Strengthen Your Network
- Concept 10: Reaching Out on LinkedIn
- Concept 11: Boost Your Visibility
- Concept 12: Up Next
-
-
Module 03: Search and Optimization
-
Lesson 01: Introduction to Game Playing
In this lesson, you'll learn about how to build a Game Playing AI Agent. You'll focus on an agent that wins in the board game Isolation! You'll learn some of the seminal techniques in AI Game Playing including Adversarial Search and Minimax Trees.
- Concept 01: Lesson Plan: Week 2
- Concept 02: Course Introduction
- Concept 03: Overview
- Concept 04: The Minimax Algorithm
- Concept 05: Isolation
- Concept 06: Building a Game Tree
- Concept 07: Coding: Building a Game Class
- Concept 08: Which of These Are Valid Moves?
- Concept 09: Coding: Game Class Functionality
- Concept 10: Building a Game Tree (Contd.)
- Concept 11: Isolation Game Tree with Leaf Values
- Concept 12: How Do We Tell the Computer Not to Lose?
- Concept 13: MIN and MAX Levels
- Concept 14: Coding: Scoring Min & Max Levels
- Concept 15: Propagating Values Up the Tree
- Concept 16: Computing MIN MAX Values
- Concept 17: Computing MIN MAX Solution
- Concept 18: Choosing the Best Branch
- Concept 19: Coding: Minimax Search
- Concept 20: (DEPRECATED) Mini-Project: Coding Minimax
- Concept 21: Searching Simple Games Reading
- Concept 22: Lesson Plan: Week 3
- Concept 23: Max Number of Nodes Visited
- Concept 24: Max Moves
- Concept 25: The Branching Factor
- Concept 26: Number of Nodes in a Game Tree
- Concept 27: The Branching Factor (Contd.)
- Concept 28: Max Number of Nodes
- Concept 29: Depth-Limited Search
- Concept 30: Coding: Depth-Limited Minimax
- Concept 31: Evaluation Function Intro
- Concept 32: Testing the Evaluation Function
- Concept 33: Testing the Evaluation Function Part 2
- Concept 34: Testing Evaluation Functions
- Concept 35: Testing the Evaluation Function Part 3
- Concept 36: Quiescent Search
-
Lesson 02: Advanced Game Playing
In this lesson, you'll build a Game-Playing agent that defeats opponents in Isolation. Along the way, you'll learn about advanced Game-Playing techniques such as Iterative Deepening, Alpha-Beta Pruning, and Expectimax.
- Concept 01: A Problem
- Concept 02: Iterative Deepening
- Concept 03: Understanding Exponential Time
- Concept 04: Exponential b=3
- Concept 05: Varying the Branching Factor
- Concept 06: Horizon Effect
- Concept 07: Horizon Effect (Contd.)
- Concept 08: Good Evaluation Functions
- Concept 09: Evaluating Evaluation Functions
- Concept 10: Alpha-Beta Pruning
- Concept 11: Minimax Quiz
- Concept 12: Alpha-Beta Pruning Quiz 1
- Concept 13: Alpha-Beta Pruning Quiz 2
- Concept 14: Thad’s Asides
- Concept 15: Searching Complex Games Reading
- Concept 16: Lesson Plan: Week 4
- Concept 17: Solving 5x5 Isolation
- Concept 18: 3-Player Games
- Concept 19: 3-Player Games Quiz
- Concept 20: 3-Player Alpha-Beta Pruning
- Concept 21: Multi-player Alpha-Beta Pruning Reading
- Concept 22: Probabilistic Games
- Concept 23: Sloppy Isolation
- Concept 24: Sloppy Isolation Expectimax
- Concept 25: Expectimax Alpha-Beta Pruning
- Concept 26: Probabilistic Alpha-Beta Pruning
- Concept 27: Improving Minimax
-
Lesson 04: Search
In this lesson, you'll learn how to implement some of the seminal search algorithms that are a cornerstone of AI including Breadth-First Search, Depth-First Search, and finally A Star Search. You'll then put your skills to the test by teaching Pac-Man to navigate his world and complete complex tasks such as finding the fastest path through the map while maximizing points scored.
- Concept 01: Lesson Plan: Week 5
- Concept 02: Introducing Peter Norvig
- Concept 03: Introduction
- Concept 04: What Is A Problem?
- Concept 05: Example: Route Finding
- Concept 06: Quiz: Tree Search
- Concept 07: Tree Search Continued
- Concept 08: Quiz: Graph Search
- Concept 09: Quiz: Breadth First Search 1
- Concept 10: Breadth First Search 2
- Concept 11: Quiz: Breadth First Search 3
- Concept 12: Breadth First Search 4
- Concept 13: Breadth First Search 5
- Concept 14: Quiz: Uniform Cost Search
- Concept 15: Quiz: Uniform Cost Search 1
- Concept 16: Quiz: Uniform Cost Search 2
- Concept 17: Quiz: Uniform Cost Search 3
- Concept 18: Quiz: Uniform Cost Search 4
- Concept 19: Uniform Cost Search 5
- Concept 20: Quiz: Search Comparison
- Concept 21: Search Comparison 1
- Concept 22: Quiz: Search Comparison 2
- Concept 23: Search Comparison 3
- Concept 24: On Uniform Cost
- Concept 25: Quiz: A* Search
- Concept 26: Quiz: A* Search 1
- Concept 27: Quiz: A* Search 2
- Concept 28: Quiz: A* Search 3
- Concept 29: Quiz: A* Search 4
- Concept 30: A* Search 5
- Concept 31: Optimistic Heuristic
- Concept 32: Quiz: State Spaces
- Concept 33: State Spaces 1
- Concept 34: Quiz: State Spaces 2
- Concept 35: State Spaces 3
- Concept 36: Quiz: Sliding Blocks Puzzle
- Concept 37: Sliding Blocks Puzzle 1
- Concept 38: Sliding Blocks Puzzle 2
- Concept 39: Problems with Search
- Concept 40: A Note on Implementation
- Concept 41: Peter's take on AI
- Concept 42: Introduction to the Lab
- Concept 43: Exercise: Teaching Pac-Man to Search (Optional)
- Concept 44: (Coding) Workspace: Pacman Search
-
Lesson 05: Simulated Annealing
In this lesson, you'll learn how to explore spaces and avoid local optima by using Simulated Annealing. In the process, you'll solve the famous n-Queens problem using this advanced AI technique!
- Concept 01: Lesson Plan: Week 6
- Concept 02: Introduction to Simulated Annealing
- Concept 03: Iterative Improvement Problems: TSP
- Concept 04: 4-Queens
- Concept 05: 5-Queens Quiz
- Concept 06: n-Queens Heuristic Function
- Concept 07: n-Queens Local Minima
- Concept 08: Hill Climbing
- Concept 09: Local Maximum
- Concept 10: Random Restart
- Concept 11: Hill Climbing Quiz
- Concept 12: Step Size Too Small
- Concept 13: Step Size Too Large
- Concept 14: Hill Climbing Quiz 2
- Concept 15: Annealing
- Concept 16: Simulated Annealing
- Concept 17: Simulated Simulated Annealing
- Concept 18: Local Beam Search
- Concept 19: Representing n-Queens
- Concept 20: 8-Queens Representation
- Concept 21: Genetic Algorithms
- Concept 22: GA Crossover
- Concept 23: GA Mutation
- Concept 24: GA Crossover Quiz
- Concept 25: Similarities Between Optimizers
- Concept 26: Challenge Question Revisited
- Concept 27: Readings on Simulated Annealing
- Concept 28: Lab: Simulated Annealing (Optional)
-
Lesson 06: Constraint Satisfaction
In this lesson we'll return to one of the main techniques we used to solve Sudoku - constraint propagation. We'll see how to use known constraints to solve a wide variety of problems including Map Coloring problems, and simple puzzles.
- Concept 01: Lesson Plan: Week 7
- Concept 02: Introduction
- Concept 03: Map Coloring
- Concept 04: Constraint Graph
- Concept 05: Map Coloring Quiz
- Concept 06: Constraint Types
- Concept 07: Backtracking Search
- Concept 08: Improving Backtracking Efficiency
- Concept 09: Backtracking Optimization Quiz
- Concept 10: Forward Checking
- Concept 11: Constraint Propagation and Arc Consistency
- Concept 12: Constraint Propagation Quiz
- Concept 13: Structured CSPs
- Concept 14: Iterative Algorithms
- Concept 15: Readings on Constraint Satisfaction
- Concept 16: Lab: Constraint Satisfaction Problems (Optional)
-
-
Module 04: Logic, Reasoning, and Planning
-
Lesson 01: Logic and Reasoning
In this lesson you'll learn to build intelligent systems that can reason using logic! This is in many ways one of the foundational pieces of intelligence - the ability to arrive at new conclusions from a given set of facts.
- Concept 01: Introduction
- Concept 02: Background and Expert Systems
- Concept 03: Propositional Logic
- Concept 04: Truth Tables
- Concept 05: Truth Table Question
- Concept 06: Propositional Logic Question
- Concept 07: Terminology
- Concept 08: Propositional Logic Limitations
- Concept 09: First Order Logic
- Concept 10: Models
- Concept 11: Syntax
- Concept 12: Vacuum World
- Concept 13: FOL Question
- Concept 14: FOL Question 2
-
Lesson 02: Planning
Explore how we can use logic and search to plan out complex itineraries. Many of these planning approaches are the same ones used to power Self-Driving Cars!
- Concept 01: Lesson Plan: Week 8
- Concept 02: Problem Solving vs Planning
- Concept 03: Planning vs Execution
- Concept 04: Vacuum Cleaner Example
- Concept 05: Quiz: Sensorless Vacuum Cleaner Problem
- Concept 06: Partially Observable Vacuum Cleaner Example
- Concept 07: Quiz: Stochastic Environment Problem
- Concept 08: Infinite Sequences
- Concept 09: Finding a Successful Plan
- Concept 10: Quiz: Finding a Successful Plan Question
- Concept 11: Problem Solving via Mathematical Notation
- Concept 12: Tracking the-Predict Update Cycle
- Concept 13: Classical Planning 1
- Concept 14: Classical Planning 2
- Concept 15: Progression Search
- Concept 16: Regression Search
- Concept 17: Regression vs Progression
- Concept 18: Plan Space Search
- Concept 19: Sliding Puzzle Example
- Concept 20: Situation Calculus 1
- Concept 21: Situation Calculus 2
- Concept 22: Situation Calculus 3
-
-
Module 05: Probabilistic Models
-
Lesson 01: Probability
Learn to model uncertainty in the real world using probability theory.
- Concept 01: Lesson Plan: Week 9
- Concept 02: Intro to Probability and Bayes Nets
- Concept 03: Quiz: Probability / Coin Flip
- Concept 04: Quiz: Coin Flip 2
- Concept 05: Quiz: Coin Flip 3
- Concept 06: Quiz: Coin Flip 4
- Concept 07: Quiz: Coin Flip 5
- Concept 08: Probability Summary
- Concept 09: Quiz: Dependence
- Concept 10: What We Learned
- Concept 11: Quiz: Weather
- Concept 12: Quiz: Weather 2
- Concept 13: Quiz: Weather 3
- Concept 14: Quiz: Cancer
- Concept 15: Quiz: Cancer 2
- Concept 16: Quiz: Cancer 3
- Concept 17: Quiz: Cancer 4
- Concept 18: Bayes Rule
- Concept 19: Readings on Probability
-
Lesson 02: Bayes Nets
Learn to encode probability distributions using compact graphical models that enable efficient analysis.
- Concept 01: Introduction
- Concept 02: Quiz: Bayes Network
- Concept 03: Computing Bayes Rule
- Concept 04: Quiz: Two Test Cancer
- Concept 05: Quiz: Two Test Cancer 2
- Concept 06: Quiz: Conditional Independence
- Concept 07: Quiz: Conditional Independence 2
- Concept 08: Quiz: Absolute And Conditional
- Concept 09: Quiz: Confounding Cause
- Concept 10: Quiz: Explaining Away
- Concept 11: Quiz: Explaining Away 2
- Concept 12: Quiz: Explaining Away 3
- Concept 13: Conditional Dependence
- Concept 14: Lesson Plan: Week 10
- Concept 15: Quiz: General Bayes Net
- Concept 16: Quiz: General Bayes Net 2
- Concept 17: Quiz: General Bayes Net 3
- Concept 18: Value Of A Network
- Concept 19: Quiz: D Separation
- Concept 20: Quiz: D Separation 2
-
Lesson 03: Inference in Bayes Nets
In this lesson, you will learn about probabilistic inference using Bayes Nets, i.e. how to answer questions that you are interested in, given certain inputs.
- Concept 01: Probabilistic Inference
- Concept 02: Quiz: Overview and Example
- Concept 03: Quiz: Enumeration
- Concept 04: Quiz: Speeding Up Enumeration
- Concept 05: Quiz: Speeding Up Enumeration 2
- Concept 06: Quiz: Speeding Up Enumeration 3
- Concept 07: Quiz: Speeding Up Enumeration 4
- Concept 08: Causal Direction
- Concept 09: Quiz: Variable Elimination
- Concept 10: Quiz: Variable Elimination 2
- Concept 11: Quiz: Variable Elimination 3
- Concept 12: Variable Elimination 4
- Concept 13: Lesson Plan: Week 11
- Concept 14: Approximate Inference
- Concept 15: Quiz: Sampling Example
- Concept 16: Approximate Inference 2
- Concept 17: Rejection Sampling
- Concept 18: Quiz: Likelihood Weighting
- Concept 19: Likelihood Weighting 1
- Concept 20: Likelihood Weighting 2
- Concept 21: Gibbs Sampling
- Concept 22: Quiz: Monty Hall Problem
- Concept 23: Monty Hall Letter
-
Lesson 04: Hidden Markov Models
Learn to process sequences and time-series data using Hidden Markov Models.
- Concept 01: Pattern Recognition through Time
- Concept 02: Dolphin Whistles
- Concept 03: Problems Matching Dolphin Whistles
- Concept 04: Warping Time
- Concept 05: Euclidean Distance Not Sufficient
- Concept 06: Dynamic Time Warping
- Concept 07: Sakoe Chiba Bounds
- Concept 08: Readings on DTW
- Concept 09: Hidden Markov Models
- Concept 10: Lesson Plan: Week 12
- Concept 11: HMM Representation
- Concept 12: Sign Language Recognition
- Concept 13: Delta-y Quiz
- Concept 14: HMM: "I"
- Concept 15: HMM: "We"
- Concept 16: I vs We Quiz
- Concept 17: Viterbi Trellis: "I"
- Concept 18: "I" Transitions Quiz
- Concept 19: Viterbi Trellis: "I" (continued)
- Concept 20: Nodes for "I"
- Concept 21: Viterbi Path
- Concept 22: "We": Transitions Quiz
- Concept 23: "We": Transition Probabilities Quiz
- Concept 24: "We": Output Probabilities Quiz
- Concept 25: "We": Viterbi Path
- Concept 26: Which Gesture is Recognized?
- Concept 27: New Observation Sequence for "I"
- Concept 28: New Observation Sequence for "We"
- Concept 29: HMM Training
- Concept 30: Baum Welch
- Concept 31: Readings on HMMs
- Concept 32: Multidimensional Output Probabilities
- Concept 33: Using a Mixture of Gaussians
- Concept 34: HMM Topologies
- Concept 35: Phrase Level Recognition
- Concept 36: Stochastic Beam Search
- Concept 37: Context Training
- Concept 38: Statistical Grammar
- Concept 39: State Tying
- Concept 40: HMM Resources
- Concept 41: Segmentally Boosted HMMs
- Concept 42: SBHMM Resources
- Concept 43: Using HMMs to Generate Data
- Concept 44: HMMs for Speech Synthesis
-
Lesson 06: Wrapping Up Term 1
Links to lesson plans for weeks 13 & 14 of term 1.
-