Artificial Intelligence I

Lecturer: Dr S.B. Holden

No. of lectures: 12

Suggested hours of supervisions: 3

Prerequisite courses: Algorithms I. In addition the course
requires some mathematics, in particular some use of vectors and
some calculus. Part IA Natural Sciences Mathematics or equivalent,
and Discrete Mathematics I + II, are likely to be helpful although
not essential. Similarly, elements of Algorithms II, Mathematical
Methods for Computer Science, Probability, Logic and Proof, Prolog
and Complexity Theory are likely to be useful.

This course is a prerequisite for the Part II courses Artificial Intelligence II and Natural Language Processing.

The aim of this course is to provide an introduction to some fundamental
issues and algorithms in artificial intelligence (AI). The course
approaches AI from an algorithmic, computer science-centric
perspective; relatively little reference is made to the complementary
perspectives developed within psychology, neuroscience or elsewhere.
The course aims to provide some fundamental tools and algorithms required to
produce AI systems able to exhibit limited human-like abilities,
particularly in the form of problem solving by search, representing
and reasoning with knowledge, planning, and learning. Historically
this corresponds roughly to the era prior to when probability became
the standard method for dealing with the crucial concept of
uncertainty. More recent material on uncertain reasoning is
covered in Artificial Intelligence II.

Introduction. Alternate ways of thinking about
AI. Agents as a unifying view of AI systems. The basic
structure of an agent. Interaction of an agent with the
environment. Assessment of agents. What does this course cover, and
what is left out? [1 lecture]

Search I. How can search serve as a fundamental
paradigm for intelligent problem-solving? Simple, uninformed
search algorithms. Tree search and graph search. More
sophisticated heuristic search algorithms. The
A* algorithm and its properties. Improving memory
efficiency: the IDA* and recursive best first search
algorithms. Local search and gradient descent.
[2 lectures]

Search II. Search in an adversarial
environment. Computer game playing. The minimax algorithm and its
shortcomings. Improving minimax using alpha-beta pruning.
[1 lecture]

Knowledge representation and reasoning I. How can we
represent and deal with commonsense knowledge and other forms of
knowledge? Semantic networks, frames and rules. How can we use
inference in conjunction with a knowledge representation scheme to
perform reasoning about the world and thereby to solve problems?
Inheritance, forward and backward chaining. [1 lectures]

Knowledge representation and reasoning II. Knowledge
representation and reasoning using first order logic. The frame,
qualification and ramification problems. The situation
calculus. [2 lectures]

Planning. Methods for planning in advance how to solve a
problem. The STRIPS language. Achieving preconditions, backtracking
and fixing threats by promotion or demotion: the partial-order
planning algorithm. [1 lecture]

Learning. A brief introduction to supervised learning from
examples. Learning as fitting a curve to data. The
perceptron. Learning by gradient descent. Multilayer perceptrons and
the backpropagation algorithm. [2 lectures]