Module code: COM3013

Module provider

Computer Science

Module Leader

JIN Y Prof (Computer Sci)

Number of Credits


ECT Credits



FHEQ Level 6

JACs code


Module cap (Maximum number of students)


Module Availability

Semester 1

Overall student workload

Independent Study Hours: 106

Lecture Hours: 24

Laboratory Hours: 20

Assessment pattern

Assessment type Unit of assessment Weighting

Alternative Assessment


Prerequisites / Co-requisites

Good skill in C/C++ programming, good knowledge in mathematics (calculus)

Module overview

This module gives an introductory yet up-to-date description of the fundamental technologies of computational Intelligence, including evolutionary computation, neural computing and their applications. Main streams of evolutionary algorithms and meta-heuristics, including genetic algorithms, evolution strategies, genetic programming, particle swarm optimization will be taught. Basic neural network models and learning algorithms will be introduced. Interactions between evolution and learning, real-world applications to optimization and robotics, and recent advances will also be discussed.

Module aims

The module aims to demonstrate how computing techniques can be used to understanding natural intelligence, such as evolution, learning and development. Meanwhile, the module intends to show how knowledge gained from understanding natural intelligence be effectively used for solving engineering problems. Finally, this module should arouse students' interest in researching into nature-inspired computing techniques for understanding nature and problem solving. This module also aims to train the students for doing independent research, such as doing literature search, making a research proposal and presenting research results.

Learning outcomes

Attributes Developed
Understand the main principles of computational intelligence C
Gain hands-on knowledge and experience on designing evolutionary algorithms and neural network based learning algorithms for problem solving K
Perform in-depth research on topics related to computational intelligence PT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Module content

Lesson 1: Introduction

Natural intelligence
Computational intelligence
Understanding nature and solving engineering problems
Professional organizations, major journals and conferences


Lesson 2: Evolutionary Algorithms

A generic framework
Genetic representations
Genetic variations

Selection schemes


Lesson 3:  Swarm Intelligence

Swarm intelligence in nature
Particle swarm optimization
Adaptive PSO


Lesson 4: Multi-Objective Evolutionary Algorithms

Dynamic weighted aggregation
Dominance-based selection
Elitist non-dominated sorting genetic algorithms
Performance measures


Lesson 5: Neural Network Models

Multi-layer perceptrons
Radial-basis-function networks
Other neural network models


Lesson 6: Learning Algorithms

Supervised learning
Unsupervised learning
Other learning schemes


Lesson 7: Hybrid Systems I

Evolutionary optimization of neural networks
Knowledge extraction from neural networks
Knowledge incorporation into neural networks


Lesson 8: Hybrid Systems II

Memetic algorithms
Baldwin learning
Lamarckian learning
Meta-memetic algorithms


Lesson 9: Surrogate-Assisted Evolutionary Optimization

Evolutionary computation for expensive problems
Basic model management
Advanced model management
Evolutionary optimization of aerodynamic structures


Lesson 10: Evolutionary Optimization in Uncertain Environments

Changing environments
Search for robust solutions
Tracking moving optima


Lesson 11: Evolutionary Developmental  Systems

Linden-Myer Systems

Grammar encoding

Gene regulatory networks

Methods of Teaching / Learning

The learning and teaching strategy is designed to train students the ability to independently learn knowledge and solve problems by reusing learning knowledge. The module involves many real-world problems from industry on optimisation and prediction. 


The learning and teaching methods include:

The delivery pattern will consist of:

2-hour lectures (week 1-11)

2-hour lab, including coursework and assignments (week 2-11)

2-hour review (week 12)

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate not only their ability to learn new knowledge, but also the ability to reuse the learned knowledge. This will be done in a step by step approach by training students for solving small, simple problems in terms of  assignments, and then two pieces of major coursework that require programming skills and ability to solve new problems.  

Thus, the summative assessment for this module consists of:

·     A number of assignments will be given to the students for practice in each lecture. Minor programming tasks for using a c/c++ library will also be assigned to students for the lab session.

·     Two coursework will be released to students at least 4 weeks before the submission deadline. The duration of final exam is 2 hours. The feedback on the coursework will be given to    the students within two weeks after the submission deadline.


Formative assessment and feedback

·         For assignments, reference solutions will be given to the students

·         For coursework, feedback in terms of comments will be given to the students within 2 week time.

·         A discussion of the issues will be given for each coursework.

Reading list


Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2017/8 academic year.