# Slides

This page contains slides from David Poole and Alan Mackworth, Artificial Intelligence: foundations of computational agents, 2nd edition, Cambridge University Press, 2017.

All lecture materials are copyright © Poole and Mackworth, 2017 and are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

These slides are in PDF format and can be read using the free acrobat reader or with recent versions of Ghostscript. You can get a zip file of the latest distribution of all of the slides that includes the sources. They were written using the LaTeX beamer class. To regenerate them you will also need the figures, and our beamer style file Note that the sources may change frequently.

We have divided the slides roughly into lectures. The division is largely on logical separation, rather than what can be carried out in one say 50 or 90 minute slot. We have found that one lecture here takes between 30 and 100 minutes to explain in class (augmented with class discussion and more detailed examples). These slides may be more terse than some instructors may prefer to put on slides; they need to be augmented with worked out examples, such as those on our online learning resources. There is another collection of slides for a course based on the book that are made available by Giuseppe Carenini.

We haven't attempted to cover every topic in these lectures; rather, we have attempted to give a deeper view of fewer topics. Revising these slides is an ongoing activity; we would appreciate any feedback you would like to give.

## Chapter 1: Artificial Intelligence and Agents

- Lecture 1: introduction to artificial intelligence and the role of agents.
- Lecture 2: dimensions of complexity.
- Lecture 3: applications domains.
- Lecture 4: introduction to knowledge representation.

## Chapter 2: Agent Architectures and Hierarchical Control

## Chapter 3: Searching for Solutions

- Lecture 1: searching and graphs.
- Lecture 2 uninformed search strategies.
- Lecture 3 heuristic search, including best-first search and A* search.
- Lecture 4 refinements to search strategies, including loop checking, multiple-path pruning, bidirectional search, and dynamic programming.
- Lecture 5 bounded search, iterative deepening, branch and bound.

## Chapter 4: Reasoning with Constraints

- Lecture 1 constraint satisfaction problems and consistency algorithms (arc consistency).
- Lecture 2 local search, randomized algorithms and genetic algorithms for solving CSPs.
- Lecture 3 CSPs revisited, including dual representations and variable elimination.

## Chapters 5: Propositions and Inference

- Lecture 1 propositional reasoning and definite clauses.
- Lecture 2 bottom-up proof procedure.
- Lecture 3 top-down proof procedure.
- Lecture 4 ask-the-user and knowledge-level explanation and debugging.
- Lecture 5 proof by contradiction, conflicts, and consistency-base diagnosis.
- Lecture 6 complete knowledge assumption and negation as failure.
- Lecture 7 assumption-based reasoning.
- Lecture 8 default reasoning.
- Lecture 9 evidential and causal reasoning.

## Chapter 6: Planning with Certainty

- Lecture 1 action semantics and representations.
- Lecture 2 forward planning.
- Lecture 3 regression planning.
- Lecture 4 constraint-based planning.

## Chapter 7: Supervised Machine Learning

- Lecture 1 introduction to machine learning and the issues facing any learning algorithm.
- Lecture 2 simplest cases of learning
- Lecture 3 basic models of supervised learning (decision trees, linear classifiers, Bayesian classifiers)
- Lecture 4 handling overfitting (regularization and cross validation).
- Lecture 5 composite models, neural networks and ensembles.
- Lecture 6 case-based reasoning.

## Chapter 8: Reasoning with Uncertainty

- Lecture 1 probability.
- Lecture 2 conditional independence and belief networks.
- Lecture 3 properties of conditional independence, representing conditional probabilities.
- Lecture 4 exact inference using variable elimination.
- Lecture 5 probabilistic reasoning and time; Markov models.
- Lecture 6 approximate inference using stochastic simulation.

## Chapter 9: Planning with Uncertainty

- Lecture 1 utility theory.
- Lecture 2 decision theory and finite stage decision networks
- Lecture 3 decision processes.

## Chapter 10: Learning with Uncertainty

- Lecture 1: learning probabilities.
- Lecture 2: unsupervised learning.
- Lecture 3: learning belief networks.
- Lecture 4: Bayesian learning.

## Chapter 11: Multiagent Systems

- Lecture 1 introduction to game theory.

## Chapter 12: Learning to Act

- Lecture 1 reinforcement learning.

## Chapter 13: Individuals and Relations

- Lecture 1 Datalog: syntax and semantics
- Lecture 2 semantics of variables
- Lecture 3 proof procedures with variables
- Lecture 4 complete knowledge assumption and negation-as-failure
- Lecture 5 logic for natural language processing

## Chapter 14: Ontologies and Knowledge-Based Systems

- Lecture 1 flexible representations, semantic networks, frames, and property inheritance.
- Lecture 2 knowledge sharing and ontologies.
- Lecture 3 knowledge-based systems architectures and ask-the-user.
- Lecture 4 knowledge-based explanation and debugging.
- Lecture 5 meta-interpreters.
- Lecture 6 more-advanced meta-interpreters.

## Chapter 15: Relational Planning, Learning, and Probabilistic Reasoning

- Lecture 1 relational representations of actions and situation calculus.
- Lecture 2 relational learning.
- Lecture 3 probabilistic relational models.

## Chapter 16: Retrospect and Prospect

- Lecture 1 overview, future and ethics.

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Last updated 2017-03-12, David Poole, Alan Mackworth