COMPM057 - Evolutionary and Natural Computation
Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).- Code
- COMPM057 (Also taught as: COMPGI06)
- Year
- 4
- Prerequisites
- Successful completion of years 1 and 2 of the Computer Science programme
- Term
- 1
- Taught By
- Chris Watkins (50%)
- Mark Herbster (50%)
- Aims
- This course introduces the ideas and practical techniques behind the various sub-fields that make up evolutionary computation (EC). The course will focus on the established evolutionary paradigms as well as the most significant new developments, covering genetic algorithms, genetic programming, evolutionary programming, evolutionary strategies, ant-colony optimisation, artificial immune systems, swarm intelligence and artificial life, amongst other topics. Students will be taught how these approaches identify and exploit biological processes in nature, allowing a wide range of applications to be solved in business and industry. Key problem domains will be examined, such as design, scheduling, function regression, fraud detection, anomaly detection, robot control and some of the newer domains such as music composition and the generation of art may be covered.
- Learning Outcomes
- To be able to: understand the concepts, advantages and disadvantages of the techniques in evolutionary computation, be able to design suitable genetic representations with appropriate fitness functions for simple problems, to know of the key issues in using these techniques for search of difficult search-spaces, to be aware of the different approaches and different applications in the field.
Content:
- Context
- Role of biologically inspired software
Difficulties in search, optimisation and machine learning - Evolution
- Overview of natural evolution and its abilities
Genetic Algorithms
Genetic Programming
Evolutionary Programming/Evolutionary Strategies
Issues in evolutionary search
Applying an evolutionary algorithm - New topics in EC
- Artificial Immune Systems
Computational Embryology
Artificial Life
Ant colony optimisation
Swarm intelligence - Application areas
- Optimisation, function regression
Scheduling
Fraud detection
Anomaly detection
Design
Robot or agent control
Interactive tools such as music composition and art generation
Method of Instruction:
Lecture presentations with associated class problems.
Assessment:
The course has the following assessment components:
- Written Examination (2.5 hours, 50%)
- Coursework Section (1 piece, 50%)
To pass this course, students must:
- Obtain an overall pass mark of 50% for all sections combined
The examination rubric is:
Answer THREE questions out of FOUR. All questins carry equal marks.

