Modules - 2002


Modules for 2002/2003

Degree Programmes for 2002/2003

WARNING: Some of the Syllabus Pages linked from the module codes may be for earlier academic years, if an updated version for 2002/2003 is not yet available. Such Syllabus Pages are subject to change.

Note to module providers: if you wish to change your syllabus, see the instructions in MDs-XML-Notes.

Table of Modules

Level Code Module Title Sem1 Sem2 Lecturer(s) Reviewer E-mail List Taught with Number
1/C 11349 AI Programming A 10 x-arh (Jeremy Wyatt) Manfred Kerber
1/C 11351 AI Programming B 10 jfm Manfred Kerber
1/C 11352 AI Techniques A 10 jxb Jeremy Wyatt
1/C 11353 AI Techniques B 10 axe Jeremy Wyatt
1/C 06147 Communication Skills & Professional Issues 10 :5 (William Edmondson) Antoni Diller
1/C 11337 Introduction to Computer Science A 10 udr Mark Ryan
1/C 11338 Introduction to Computer Science B 10 mhe Mark Ryan
1/C 08752 Introduction to Software & Hardware Engineering A 10 gkt Unknown/Left
1/C 08755 Introduction to Software & Hardware Engineering B 10 pxc Jim Yandle *
1/C 11224 Introduction to Software Engineering 10 [pxc] [Jim Yandle] 08755
1/C 02316 Logic 10 [vxs] [Unknown/Left] 08764.2
1/C 08762.1 Mathematics & Logic A: i 10 x-rwk
1/C 08762.1 Mathematics & Logic A: ii 10 x-adg
1/C 08764.2 Mathematics & Logic B: i 10 mmk Unknown/Left
1/C 08764.2 Mathematics & Logic B: ii 10 vxs
1/C 08744 Software Workshop 1 A 20 aps Paul Levy *
1/C 08745 Software Workshop 1 B 20 :13.33, :6.67 (Jon Rowe) Alan Sexton *
1/C 08747 Software Workshop 1(A) A 10 [aps] [Paul Levy] 08744
1/C 08750 Software Workshop 1(A) B 10 [jer] [Alan Sexton] 08745
2/I 08776 Algorithms & Methods for Bioinformatics 10 x-apw (Peter Coxhead) Xin Yao
2/I 02381 Databases 1 10 aps Martin Escardo
2/I 02504 Graphics 1 10 exc Hayo Thielecke
2/I 08167 Human-Computer Interaction 1 10 axe William Edmondson
2/I 08775 Introduction to AI 10 jlw Ela Claridge
2/I 02360 Introduction to Neural Networks 10 [jxb] [Jon Rowe] 12412
2/I 02640 Machine Learning 10 :5 Unknown/Left
2/I 05934 Models of Computation 10 axj Uday Reddy
2/I 02495 Natural Language Processing 1 10 pjh John Barnden
2/I 02324 Real-Time Systems Programming 10 tha Eike Ritter
2/I 11579 Software Engineering A 10 x-jxj (Peter Coxhead) Peter Coxhead
2/I 11580 Software Engineering B 10 :5 (Peter Coxhead) Peter Coxhead
2/I 11582 Software Workshop Haskell 10 x-mxv (Martin Escardo) Peter Hancox
2/I 08163 Software Workshop Java 10 mdr Alan Sexton *
2/I 02630 Software Workshop Prolog 10 pjh Paul Levy
2/I 08165 Software Workshop Team Java 10 :5 (Uday Reddy) Alan Sexton
2/I 02440 Software Workshop Team Prolog or Pop-11 10 mgl Mark Ryan
3/H 02489 Automatic Verification 10 :5 (Mark Ryan) Eike Ritter
3/H 02363 Commercial Programming 10 :5 (John Barnden) William Edmondson
3/H 02578 Compilers & Languages 10 hxt Achim Jung *
3/H 05933 Computer Networks 10 gkt Unknown/Left
3/H 02525 Databases 2 10 aps Unknown/Left
3/H 06798 Distributed Systems 10 bxb Ela Claridge
3/H 02411 Evolutionary Computation 10 [xin] [Unknown/Left] 12414
3/H 02651 Human-Computer Interaction 2 10 whe Mark Lee
3/H 02523 Image Understanding 10 kxc Jeremy Wyatt
3/H 15506 Individual Study 1 10 (Martin Escardo) Hayo Thielecke
3/H 13520 Intelligent Robotics 20 jlw Ela Claridge *
3/H 11223 Natural Language Processing & Applications 10 pxc John Barnden
3/H 02648 Natural Language Processing 2 10 :8 Peter Hancox
3/H 14410 Nature Inspired Design (A) 10 [jfm] [Manfred Kerber] 12418
3/H 15258 Operating Systems 10 exr Unknown/Left *
3/H 02512 Parallel Computer Architecture 10 tha Unknown/Left
3/H 02483 Philosophy of Cognitive Science 10 ard William Edmondson
3/H 02562 Planning 10 mmk Jon Rowe
3/H 02552 Principles of Programming Languages 10 hxt Uday Reddy
3/H 02596 Project - E&SE/BEng 10 30 [ (Mark Ryan)] [Jon Rowe] none 0
3/H 02451 Reasoning about Mental States 10 jab Antoni Diller
3/H 15500 Software Design Study 10 20 [ (Unknown/Left)] [Mark Lee] none 0
3/H 02386 Software Project 20 20 [ (Mark Ryan)] [Jon Rowe] none 0
3/H 08166 Software Workshop Java (A) 20 [mdr] [Paul Levy] 08163
3/H 02645 Virtual Reality 10 x-lxj Hayo Thielecke
4/M C 06995.1 Fundamentals of Computer Science: Introduction to Computer Science 10 :5 Peter Hancox
4/M C 06995.1 Fundamentals of Computer Science: Programming Methodology 10 exr
4/M C 06995.2 Fundamentals of Computer Science: Data Structures 10 jry
4/M C 13584 Fundamentals of Databases 10 axj Mark Lee
4/M C 06997 Project - Conversion MSc [ (Unknown/Left)] [Martin Escardo] none 0
4/M C 06994.1 Software Workshop: i 20 rjh Achim Jung
4/M C 06994.2 Software Workshop: ii 20 :10
4/M 15267 Intelligent Robotics (Extended) 20 [jlw] [Ela Claridge] 13520
4/M 15257 Operating Systems (Extended) 10 [exr] [Unknown/Left] 15258
4/M 02456 Project - E&SE/MEng 30 30 [ (Mark Ryan)] [Jon Rowe] none 0
4/M A 14409 Behaviour of Complex Systems 10 x-lxj Peter Coxhead
4/M A 07953 First semester mini-project 30 [ (Ela Claridge)] [Unknown/Left] none 0
4/M A 12414 Introduction to Evolutionary Computation 10 xin Unknown/Left *
4/M A 12411 Introduction to Molecular and Quantum Computation 10 jfm Eike Ritter
4/M A 12412 Introduction to Neural Computation 10 :10, :2.5 (John Bullinaria) Jon Rowe *
4/M A 12415.1 NC mini-project 1: Research Skills 10 [pjh] [Uday Reddy] 06991
4/M A 12415.1 NC mini-project 1: Mini-project 20 [ (Ela Claridge)] none
4/M A 12418 Nature Inspired Design 10 jfm Manfred Kerber *
4/M A 12417 Nature Inspired Learning 10 kxc Xin Yao
4/M A 12416 Nature Inspired Optimisation 10 jer Unknown/Left
4/M A 02637 Project - Advanced MSc [ (Ela Claridge)] [Martin Escardo] none 0
4/M A 06991 Research Skills 10 pjh Uday Reddy *
4/M A 07954 Second semester mini-project 30 [ (Ela Claridge)] [Unknown/Left] none 0



Modules are arranged by Level (and then by Title). The University is moving from a numerical labelling of Levels (1-4) to a letter-based labelling (C = Certificate, I = Intermediate, H = Honours, M = Masters).

Any additional letter is only for use within the School.

Level 0 modules are intended for the Foundation Year (Foundation Academy).

For Levels 1/C to 3/H, 'I' after the level designation marks modules only available to the Intercalated Year, 'Q' those only available as a Module Outside the Main Discipline.

For Level 4/M, 'U' marks modules available only for undergraduate MEng/MSci programmes, 'C' only the conversion MSc, 'A' only advanced MSc programmes.

Module Codes

All university modules have an official Module Code, often called the "Banner" code. Codes consist of a two digit "area" code followed by a five digit code for the module. Currently these five digit codes are unique, i.e. the area code is redundant. The area code for Computer Science is 06, and is omitted in the table above.

The Module Codes in the table are linked to "Syllabus Pages". These in turn link to the School of Computer Science Module Description. (Note to module providers: if you wish to change your syllabus page/module description, see the instructions in MDs-XML-Notes.)

Pseudo-Module Codes of the form 06-N#### are used when a module has not yet been assigned an official Module Code.

See below for submodules.

Module Title

Unfortunately, different University databases contain different variants of module titles, partly because the maximum number of characters allowed varies. The module code is the only sure guide.

Submodules have no status outside the School, merely reflecting the way the module is taught. They are designated by a Module Code with digits after a decimal point: thus 12345.2 would be the code for the second submodule for the module with code 12345. Text after a colon in a Module Title gives the title of the submodule, reflecting the way the module is taught.


Parentheses around a lecturer's name indicate co-ordination, i.e. that the number of lectures involved is either none or very few.

Where no coordinator is given, the FIRST-named lecturer is responsible for coordinating the module (except in the case of linked modules, where the coordinator for the SECOND module is responsible for combining assessment marks).

Square brackets around a lecturer's name indicate significant overlap of teaching with another module. The Taught With column indicates which other module or submodule the unit is taught with.


Numbers are generally estimates, particularly for optional modules. Where no number is given and the lecturer name is in [..], the number has been included in the overlapping module.

E-mail List

The e-mail list for each module is automatically derived from the School's database. Changes to module registrations made via the School Office should normally be reflected in the e-mail list overnight. Note that the e-mail lists are strictly one per module; where modules are taught together all relevant e-mail lists need to be used in order to contact students.

Taught With

A non-blank entry in this column indicates that the (sub)module is taught with some other (sub)module(s). * indicates that it is considered the 'base' unit, i.e. there will at least one other (sub)module taught with this module. A (sub)module code in this column gives the code of the 'base' unit it is taught with.