Skip to navigation | Skip to main content | Skip to footer

This is an archived syllabus from 2015-2016

Enrolment on this course unit is limited to 150 students.

COMP24111 Machine Learning and Optimisation syllabus 2015-2016

COMP24111 Machine Learning and Optimisation

Level 2
Credits: 10
Enrolled students: 152

Course leader: Gavin Brown

Additional staff: view all staff


  • Pre-Requisite (Compulsory): COMP14112
  • Pre-Requisite (Compulsory): COMP11120
  • Pre-Requisite (Compulsory): MATH10111

Additional requirements

  • Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.


    To enrol students are required to have taken  COMP11120  and COMP14112.  Or, if you are on a Computer Science and Maths programme you must have taken MATH10111.

Assessment methods

  • 50% Written exam
  • 50% Practical skills assessment
Sem 1 A Lab Toot 0 Thu 09:00 - 11:00 G
Sem 1 A Lab Toot 0 Fri 09:00 - 11:00 H
Sem 1 A Lab Toot 1 Thu 09:00 - 11:00 G
Sem 1 A Lab Toot 1 Fri 09:00 - 11:00 H
Sem 1 w1 Lecture Simon TH B Tue 13:00 - 15:00 -
Sem 1 w2-3,5,7-12 Lecture 1.1 Tue 13:00 - 15:00 -
Sem 1 w4 Lecture Roscoe TH A Mon 11:00 - 12:00 -
Sem 1 w5,10 Lab Toot 1 Fri 15:00 - 17:00 G+H
Themes to which this unit belongs
  • Learning and Search in Artificial Intelligence


Machine learning is concerned with creating mathematical "data structures" that allow a computer to exhibit behaviour that would normally require a human. Typical applications might be spam filtering, speech recognition, medical diagnosis, or weather prediction. The data structures we use (known as "models") come in various forms, e.g. trees, graphs, algebraic equations, probability distributions. The emphasis is on constructing these models automatically from data---for example making a weather predictor from a datafile of historical weather patterns. This course will introduce you to the concepts behind various Machine Learning techniques, including how they work, and use existing software packages to illustrate how they are used on data. The course has a fairly mathematical content although it is intended to be self-contained.


To introduce methods for extracting rules or learning from data, and provide the necessary mathematical background to enable students to understand how the methods work and how to get the best performance from them. This course covers basics of both supervised and unsupervised learning paradigms and is pitched towards any student with a mathematical or scientific background who is interested in adaptive techniques for learning from data as well as data analysis and modelling.


  • Introduction to Machine Learning
  • K Nearest Neighbour Classifier
  • Decision Trees
  • Model Selection and Empirical Methodologies
  • Linear Classifiers: Perceptron and SVM
  • Naive Bayes Classifier
  • Basics of Clustering Analysis
  • K-mean Clustering Algorithms
  • Hierarchical Clustering Algorithms

Teaching methods


22 in total, 2 per week


10 hours in total, 5 2-hour sessions, partly credited to COMP20910/COMP20920

Feedback methods

Face to face marking of all project work.

Study hours

  • Assessment written exam (2 hours)
  • Lectures (22 hours)
  • Practical classes & workshops (12 hours)

Employability skills

  • Analytical skills
  • Group/team working
  • Project management
  • Problem solving
  • Written communication

Learning outcomes

On successful completion of this unit, a student will be able to:

Learning outcomes are detailed on the COMP24111 course unit syllabus page on the School of Computer Science's website for current students.

Reading list

Introduction to machine learning (3rd edition)Alpaydin, Ethem9780262028189MIT Press2014
Artificial Intelligence: a modern approach (2nd edition)Russell, S. and P. Norvig0130803022Prentice Hall2003
Pattern recognition (4th edition)Theodoridis, Sergios and Konstantonis Koutroumbas9781597492720Elsevier2009

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.