Module Identifier CSM1610  
Module Title ARTIFICIAL INTELLIGENCE  
Academic Year 2000/2001  
Co-ordinator Mr Christopher Loftus  
Semester Available All Semesters  
Pre-Requisite CSM1220 , CSM1310  
Course delivery Contact Hours   34 Hours plus around 45 hours of self study and practical work  
Assessment Exam   2 Hours   80%  
  Course work     20%  

General description
This module concentrates on the technology and methodology of artificial intelligence (AI) practice, in particular, programming languages and software systems. The aim is to show how practical knowledge-based systems can be implemented, developed and evaluated.

Aims
This course aims to give students a good understanding of a variety of AI systems, from expert systems through machine learning to adaptive computing. This will enable them to appreciate what current AI systems can and cannot do, and the circumstances in which their use is appropriate.

Learning outcomes
On successful completion of this module students should:

Syllabus
Introduction
The range of applications and domains in which AI systems can be found. AI systems as software and their susceptibilility to the same problems as any other software.

Typical Knowledge Based System Applications
The different types of knowledge-based system (KBS) application and the techniques that have proved to be useful.

Knowledge Acquisition
These lectures will consider the issue of obtaining the knowledge to be used in an expert system. They will be based around the KADS formalism which will be briefly introduced. This formalism guides the expert system building through the process of task identification and knowledge acquisition.

Expert Systems
This section will build on the introduction to expert systems presented earlier. It will introduce the students to commercial expert system shells and will provide hands-on experience of at least one system. It will consider the issues associated with constructing expert systems and of rule-based representations.

Case Based Reasoning
Case-based reasoning (CBR) systems: the basic structure of a CBR system and the use of a case base, representation and indexing of cases, case retrieval and adaptation, and case repair. Strengths and weaknesses of CBR: when to apply and when not to apply it.

Neural Networks
The concept behind neural networks: the more important and useful neural network architectures. The application of neural computing in industry.

Genetic Algorithms and Classifier Systems
What is meant by a genetic algorithm or classifier system and how it is constructed. Theoretical aspects of genetic algorithms such as building blocks, and the factors which make a problem hard for a genetic algorithm. The lectures will introduce the various issues in evolutionary computing (such as representation, evaluation, selection, mutation and crossover) as well as available toolkits. To accompany these lectures practical sessions will be run where students will carry out various assessed assignments.

Machine Induction
There are a large number of applications which exploit the approach to machine learning known as induction. In particular a number of case-based systems and data mining applications have made machine induction commercially useful (and viable). In these lectures the ID3 algorithm, and its enhancements will be described and the commercial uses of these algorithms discussed.

Model-Based Reasoning
In this section of the course, functional model-based reasoning will be introduced. How a functional model-based system can be constructed and the problems and issues associated with such a task will be considered. In addition a functional model-based system constructed for engineers will be considered in detail. This case study will highlight the trade-offs which have to be made between ease of use and flexibility/power etc.

Reading Lists
Books
** Should Be Purchased
S J Russell and P Norvig. (1995) A I: A Modern Approach. Prentice-Hall