Computer Laboratory

Course pages 2014–15

Artificial Intelligence II

Principal lecturer: Ivo Timoteo
Taken by: Part II
Past exam questions
Information for supervisors (contact lecturer for access permission)

No. of lectures: 8
Suggested hours of supervisions: 2
Prerequisite courses: Artificial Intelligence I, Logic and Proof, Algorithms I + II, Mathematical Methods for Computer Science, Discrete Mathematics I + II, Probability/Probability from the NST Mathematics course.
Please note that this course will not be examined this year


The aim of this course is to build on Artificial Intelligence I by moving beyond the purely symbolic view of AI and presenting methods developed for dealing with the critical concept of uncertainty. The central tool used to achieve the latter is probability theory. The course continues to exploit the primarily algorithmic and computer science-centric perspective that informed Artificial Intelligence I.

The course aims to provide further tools and algorithms required to produce AI systems able to exhibit limited human-like abilities, with an emphasis on systems able to deal with the uncertainty inherent in the environments that most real agents might be expected to perform within.


  • Uncertainty and Bayesian networks. Review of probability as applied to AI. Representing uncertain knowledge using Bayesian networks. Inference in Bayesian networks using both exact and approximate techniques. Other ways of dealing with uncertainty.

  • Uncertain reasoning over time. Markov processes, transition and sensor models. Inference in temporal models: filtering, prediction, smoothing and finding the most likely explanation. The Viterbi algorithm. Hidden Markov models.

  • Reinforcement learning. Learning from rewards and punishments. Markov decision processes. The problems of temporal credit assignment and exploration versus exploitation. Q-learning and its convergence. How to choose actions.

  • Further supervised learning I. Bayes theorem as applied to supervised learning. The maximum likelihood and maximum a posteriori hypotheses. What does this teach us about the backpropagation algorithm?

  • How to classify optimally. Bayesian decision theory and Bayes optimal classification. What does this tell us about how best to do supervised machine learning?


At the end of this course students should:

  • have gained a deeper appreciation of the way in which computer science has been applied to the problem of AI, and in particular for more recent techniques concerning knowledge representation, planning, inference, uncertainty and learning;

  • know how to model situations using a variety of knowledge representation techniques;

  • be able to design problem solving methods based on knowledge representation, inference, and learning techniques;

  • know how probability theory can be applied in practice as a means of handling uncertainty in AI systems.

Recommended reading

The recommended text is:

* Russell, S. & Norvig, P. (2010). Artificial intelligence: a modern approach. Prentice Hall (3rd ed.).

For some material you may find more specialised texts useful, in particular:

Bishop, C.M. (2006). Pattern recognition and machine learning. Springer.

Sutton, R.S. & Barto, A.G. (1998). Reinforcement learning: an introduction. MIT Press.