School of Computer Science

Module 06-26949 (2014)

Nature Inspired Optimisation

Level 3/H

Christine Zarges Shan He Semester 2 20 credits
Co-ordinator: Shan He
Reviewer: Xin Yao

The Module Description is a strict subset of this Syllabus Page.


Natural Computation is the study of computational systems that use ideas and get inspiration from a variety of natural systems. Its powerful techniques can be applied not only to optimisation but also to learning and design. Example topics covered include variants of local search, evolutionary computation, swarm intelligence, and artificial immune systems. While the focus is on the applications of such techniques, theoretical foundations are also studied.


The aims of this module are to:

  • introduce the main concepts, techniques and applications in the field of randomised search heuristics and nature-inspired computing with a focus on (but not limited to) optimisation.
  • give students some experience on when such techniques are useful, how to use them in practice and how to implement them with different programming languages.

Learning Outcomes

On successful completion of this module, the student should be able to:

  1. Demonstrate a good understanding of different nature-inspired design techniques and how they are applied to solve real world problems
  2. Demonstrate an understanding of the relations, similarities and differences between the most important heuristics and nature-inspired algorithms presented in the module and other search and optimisation techniques
  3. Design and adapt nature-inspired algorithms including operators, representations, fitness functions and potential hybridisations for non-trivial problems




Teaching methods

Large Group Lectures

Contact Hours:



Sessional: 2 hr Examination (80%) Continuous Assessment (20%)

Supplementary (where allowed): 2 hr Examination (100%)

Detailed Syllabus

  1. Introduction to Randomised Search Heuristics including Randomised Local Search, Metropolis Algorithm, Simulated Annealing, and Tabu search
  2. Evolutionary Computation including modules of evolutionary algorithms, typical evolutionary algorithms in discrete and continuous domains, fitness landscapes, multi-objective optimisation, optimisation in dynamic environments, niching methods, co-evolution and other techniques
  3. Swarm Intelligence, in particular Particle Swarm Optimisation and Ant Colony Optimisation
  4. Artificial Immune Systems
  5. Introduction to theory of nature-inspired algorithms
  6. Applications: A case study of selected methods covered in the module
  7. Selected other topics from nature-inspired optimisation

Programmes containing this module