Course Structures

The two MScs Intelligent Systems & Robotics (ISR) and Intelligent Systems (IS) are almost the same. Both consist of eight taught modules plus a project (worth four modules) and seven of the modules are the same for both programmes. The main difference is that MSc ISR has two robotics modules whilst MSc IS has one; the second being replaced by a Data Mining module.

Two week induction programme:
Both MSc ISR and MSc IS have an induction programme. For distance learning students this is provided as an e-learning activity though you will be invited to attend as much or as little of the on-site induction programme as this will usually be taking place at the same time. If you live near to Leicester this may be an option for you and would give you an opportunity to meet the staff and the on-site MSc students. A variety of activities are scheduled for this two week period. There will be a welcome session and some social activities; introductory sessions on the use of Matlab; Programming skills (theory and pracial) for robotics programming; library induction for postgraduate students; careers advice; and others.


The MSc ISR course structure is as follows:
(Click on module to jump to detailed module section on bottom of this page)

Semester 1 modules:
    Fuzzy Logic
    Research Methods
    Artificial Intelligence Programming
    Mobile Robots

Semester 2 modules:
    Artificial Neural Networks
    Evolutionary Computing
    Applied Computational Intelligence
    Intelligent Mobile Robots (MSc ISR only)
    Data Mining (MSc IS only)
    Final project*

*The final project takes place over the period and is equivalent to four modules.
The MScs can also be studied in part time mode on-site, usually by studying two modules per semester over 2 years and then spending a third year on the project.


For distance learning students, you would normally study either 1 or 2 modules from each of the semester 1 and semester 2 modules.
Typically, distance student take either one module per semester for four years or two modules per semester for two years plus a further year for the project. Variations of this study pattern can be discussed with the course leader.

All modules are assessed by coursework only, there are no examinations. All modules have some kind of communication activity e.g. contributions to the discussion board and these are assessed. This is to encourage students to interact with each other whether they are studying on-site or at a distance and to help build a community amongst the students. Contributions are not assessed on their quality but rather just that everyone has made a contribution for each week's activity. Staff also use this as a way of checking that students understand the various topics & provide feedback on the discussion board activities. It has proved to be a very useful approach.

Need more info?

For more information please contact the MSc ISR and MSc IS course leader:
    Dr Jenny Carter
    email: jennyc@dmu.ac.uk
    tel. (+44) 116 250 6449

To apply, please contact the Admissions Team at
    email: pgcse@dmu.ac.uk
    tel. (+44) 116 257 7456
    fax. (+44) 116 257 7693
    www: http://www.dmu.ac.uk/cse/

Course module details:




Fuzzy Logic

Aims of the Module:
This module provides an overview of several aspects of fuzzy logic. It provides a history of the subject and then covers in more detail the various fuzzy paradigms which have become established as useful computational tools. Applications will be discussed and students will be introduced to problem domains where problem instances may be amenable to solution by fuzzy logic techniques. Current research topics will be explored via journals and conference papers.

After studying the module students should:
    1. be able to critically evaluate fuzzy logic approaches to solve computational problems exhibiting uncertainty and imprecision.
    2. be able to implement a variety of fuzzy logic paradigms.
    3. have a comprehensive understanding of the successful applications of fuzzy logic to several problem domains and be capable of judging whether the fuzzy paradigm might be fruitful in a novel situation.

Module Outlines:
The lessons will cover the theoretical aspects of fuzzy logic and provide directions to significant uses of the paradigm. You are expected to read research papers and conference proceedings to develop an in depth understanding of particular topics and to complete the practical work. The practical work requires the use of Matlab (student version provided). The aim is to provide a mechanism whereby you are able to set an appropriate balance between in depth knowledge and an overview of the subject.

Topics include:
• Historical account
• Fuzzy Sets
• Operations on Fuzzy Sets
• Mamdani Inferencing
• Sugeno Inferencing
• Other inferencing approaches
• ANFIS
• Type-2 fuzzy sets
• Operations on type-2 fuzzy sets
• Current research issues in fuzzy logic

...back to top




Research Methods

Aims of the Module:
This module provides the research methods required at MSc level, looking at both quantitative and qualitative approaches including laboratory evaluation, surveys, case studies and action research. Example research studies from artificial intelligence are analysed to obtain an understanding of types of research problems and applicable research methods. The research process is considered, examining how problems are selected, literature reviews, selection of research methods, data collection and analysis, development of theories and conclusions; and the dissemination of the research. Project management is studied as well as methods of obtaining funding. There is an overview of ethical considerations when conducting research. The module exposes students to a variety of research approaches, encourages analysis of research papers and supports students in coming to conclusions concerning directions for MSc projects.

After studying the module students should:
    1. Critically appraise a given research method and justification its application to appropriate research problems.
    2. Write a research proposal which demonstrates and understanding of the research process and its application to a given research problem.
    3. Identify and critically discuss managerial, political, economic and ethical problems associated with the development and execution of a research project.

Module Outlines:
Introduction:
Nature and purpose of research.. Overview of research process. Consideration of outcomes: publications, products, and change.

Analysis of Research Papers and Classification of Research:
Examples of research. Introduction and overview of key selected papers in artificial intelligence. Analysis of papers: what is the problem? How is it tackled? Where do the authors get their data? How do they interpret it? What conclusions do they come to? What is the contribution of the paper?
Developing a classification of research types. Classifying the problem. Classifying the approach. Examples: Qualitative versus quantitative, positivist versus interpretive, field versus laboratory.
Classifying the approach to analysis: statistical, content analysis, grounded theory.

The Research Process:
Defining and selecting the problem. Problem search. Motivation. Sponsors and audience Effect of previous work. Need. Interest,.
Reviewing previous work. The Literature review. Search and selection of sources. Evaluating and criticising previous work. Developing the story. Use of Internet sources.
Developing a theoretical framework. Adding to existing theory. Drawing theory from other disciplines. Examples from sociology and psychology. Developing hypotheses.
Selection of a research method. Relating method to problems and theory. Discussion of some available methods. Survey. Case studies. Experiments. Focus Groups. Participant Observation. Interviewing. Document analysis. Developing and evaluating a computer system. Structured evaluation studies.
Execution of research. Data collection. Bias. Access to organisations. Tools to support data collection. Metaanalysis. Designing computer system evaluations.
Analysis of research data. Overview of statistical and quantitative methods. Common statistical approaches. Dependent and independent variables. Variance. Correlation. Cronbach Alpha. Supporting and refuting hypotheses. Qualitative methods. Content analysis. Analysis of case studies.
Development of theories and conclusions. Extending existing theory. Developing conclusions.
Dissemination and presentation. Audiences. Conferences and papers. Developing the research paper. Communicating with researchers, practitioners and the public.

Research Support:
Project Planning and Management. Identifying resource requirements. Planning the research project.
Terms of Reference. Controlling the project and modifying project plans. The uncertainty of the research process.
Getting support. Introduction to research councils and the process of applying for a grant. Getting industrial support.
Ethics. Examples of projects. Are they ethical? What are the ethical issues? Involving participants.

...back to top




Artificial Intelligence Programming

Aims of the Module:
This module focuses on the logical programming skills essential for artificial intelligence. It introduces the Prolog language syntax, considers its applications and enables students to investigate ways of applying AI logic into programming. It provides practical experience of using appropriate knowledge representation, searching and reasoning techniques and the theoretical underpinning to facilitates engagement in solving complex applications in natural language processing, route planning, machine learning and expert systems.

Upon successful completion of the module you will be able to:
    1. Develop the knowledge of the use of logic programming and reasoning, in order to apply AI techniques in the real world and contemplate purposeful activity in business organisations.
    2. Develop knowledge relevant to declarative programming and predicate calculus.
    3. Engender an understanding and appreciation of the use of artificial intelligence technology to improve business management and performance.

Module Outlines:
Lesson 1: Introduction to Prolog
Lesson 2: Syntax and meaning of Prolog programs
Lesson 3: List, operator, arithmetic
Lesson 4: Controlling backtracking
Lesson 5: Programming technique
Lesson 6: Assignment 1
Lesson 7: State space and depth first search
Lesson 8: Breadth-first search and intelligent search
Lesson 9: Natural language processing
Lesson 10: Expert systems
Lesson 11: Machine learning
Lesson 12: Assignment 2

...back to top




Mobile Robots

Aims of the Module:
This module covers the essentials of mobile robots. It initiates analytical review of the hardware and software architectures used to build real-world mobile robot systems. It introduces all the necessary topics required to enable students to develop software to create intelligent autonomous robots, including: low-level programming of I/O devices, sensor systems, and artificial intelligence.

After studying the module students should:
    1. Demonstrate a comprehensive understanding of the principles and techniques used in building and controling autonomous mobile robots by the design and implementation of adaptable controllers for autonomous mobile robots on a real robot system.
    2. Demonstrate a comprehensive understanding of the theoretical principles of the techniques used in building and controling autonomous mobile robots and of the advances that are being made in this field.

Module Outlines:
1. Introduction to mobile robotics:
Definitions, foundations of mobile robotics research, early examples. Current implementations, applications and research issues.
2. Sensors and actuators:
Physical principles of sensors and actuators, sensor signal processing, sensor data interpretation.
3. Real-Time Programming:
Introduction to low-level programming in C/C++. Polling and interrupts. Digital and Analogue I/O and interfacing requirements. Concurrency.
4. Intelligent Robots:
Introduction to machine learning, definitions, artificial neural networks reinforcement learning, practical applications of machine learning in mobile robotics, planning.

...back to top




Artificial Neural Networks

Aims of the Module:
This module provides a detailed appraisal of several aspects of neural network computing. It provides a history of the subject and then covers in detail the various network paradigms which have become established as useful computational tools.
Applications will be discussed and students will be introduced to problem domains where problem instances may be amenable to solution by neural network techniques.
Whilst the module will concentrate on an Engineering approach there will also be discussion of the use of networks for cognitive modelling.

After studying the module students should:
    1. Be able to apply modelling approaches which use neural networks to solve computational problems.
    2. Be able to implement a variety of network solutions.
    3. Have a comprehensive knowledge of the successful application of neural networks to several problem domains and be capable of judging whether the neural computational approach might be fruitful in a novel situation.

Module Outlines:
Topics include:
• Historical account
• Learning paradigms
• Feed Forward Networks (Classical and Modern approaches)
• Self-organising maps
• Recurrent Networks

Applications to:
• pattern recognition
• classification problems
• data modelling
• time series
• cognitive modelling

...back to top




Evolutionary Computing

Aims of the Module:
Genetic algorithms (GA) use the principle of natural selection to artificially ‘evolve’ a population of candidate solutions through simulated reproduction and mutation. GAs have been used successfully for engineering optimisation tasks, and hard to compute problems.
This module will provide students with a deep knowledge of theoretical issues of evolutionary computing, including the Genetic Algorithm (GA), Evolutionary systems (ES), data representation, genetic operators and properties of GAs. Both GAs and ES will be studied in practical laboratory sessions.

After studying the module students should:
    1. Show a comprehensive understanding of one of the principal techniques of ‘soft’ artificial intelligence, namely evolutionary computing.
    2. Be able to critically evaluate, select and ultimately apply evolutionary techniques to the solution of problems such as optimisation in an uncertain environment.

Module Outlines:
Overview of Genetic Algorithms:
concepts of evolutionary computing, evolutionary algorithms, genetic algorithms and genetic programming, the standard genetic algorithm, operators: reproduction, crossover, mutation, inversion
Issues in GAs:
data representation, binary v. floating point representations, ordering problems, e.g. the travelling salesman problem, selection strategies, ‘roulette wheel’, elitism, ‘advanced’ operators, mutation rates, sexual operators, convergence properties
Applications of GAs:
Eg. Optimization problems, training neural networks

...back to top




Applied Computational Intelligence

Aims of the Module:
The purpose of this module is to enable students to appreciate the historical, philosophical and future implications of AI in relation to both theoretical and practical aspects.

After studying the module students should:
    1. Have an in depth understanding of the core concepts of AI, search and the balance of exploration and exploitation.
    2. Students should fully appreciate the fundamental approaches to AI; symbolic and non-symbolic (behavioural) and understand the applications.
    3. Students should be able to analyse the relationships between models of brain, behaviour and symbolic processing and the philosophical differences between them.
    4. Students should be able to recognise the multi-disciplinary nature of AI in terms of both source material e.g neuroscience and applications eg robot control.

Module Outlines:
• History of AI: Definition of intelligence, definition of AI, mechanical models, symbolic models, computer models, behaviour models. Test of intelligence; Turing, emergence tests. Maths, code breaking, game playing and expert systems. Early applications eg game playing, Robotics.
• Fundamental core properties of AI: search and the balance between exploration and exploitation.
• Philosophy of AI: mental states, identity theory.
• Biologically inspired models : GA, neural networks; the role of neuroscience; example applications such as perception and recognition tasks
• Symbolic AI: physics inspired models, the role of quantum theory. Fuzzy logic approaches; example applications such as expert systems
• The future: soft AI, GOFAI; new applications and robotics.

...back to top




Intelligent Mobile Robots

Aims of the Module:
This module builds on the material covered in Mobile Robots to provide a comprehensive understanding of autonomous mobile robots and intelligent autonomous agents. The aim of the course is to enable the student to comprehend and argue constructively the software issues of controlling autonomous mobile robots.
In this module students will be required to analyise and evalute a wider range of sensor processing, architectures and control mechanisms for mobile robots. Issues related to the sensing, representing and modelling of the environment will be assessed. Some algorithmic solutions will be synthesised and assessed. Advanced issues such as adaptive behaviour and social (group) behaviour of robots will be critically discussed.

After studying the module students should:
    1. Demonstrate a comprehensive understanding of the various approaches to incorporating intelligence in mobile robot behaviour.
    2. Demonstrate the ability to critically evaluate and hence determine the most important paradigms currently proposed for mobile robot behaviour, including the ability to reason.

Module Outlines:
Lecture 1: Introduction to the module
Lecture 2: Introduction to mobile robots (Recap Mobile Robots)
Lecture 3: Sensors
Lecture 4: Data Fusion
Lecture 5: Knowledge Representation
Lecture 6: Behaviour Representation - 1
Lecture 7: Behaviour Representation - 2
Lecture 8: Mapping and Localization
Lecture 9: Planning and Control
Lecture 10: Navigation and Path Planning
Lecture 11: Pose Maintenance
Lecture 12: Machine Learning
Lecture 13: Communication
Lecture 14: Adaptive and Feedback Controllers
Lecture 15: Cooperative Multi-Robots
Lecture 16: Applications I
Lecture 17: Applications II
Lecture 18: Advanced Topic – Cognitive Robots
Lecture 19: Advanced Topic - Multi agent based robots and controls
Lecture 20: Advanced Topic - alternative robots

...back to top




Data Mining

Aims of the Module:
The purpose of this module is to enable students to appreciate the need for data mining as a collection of tools and techniques and also as a process and methodology for applying these techniques. The module will enable the student to develop an in depth knowledge of the available approaches so that they will then be able to select and apply appropriate techniques in relevant problem domains.
Current research topics and application areas will be explored via journal and conference papers. Students will be expected to critically evaluate recent articles as part of the assessed work as a way of ensuring the appropriate depth of understanding of the issues and developments associated with this subject area.

After studying the module students should:
    1. Have an in depth understanding of the core concepts of and the different approaches to data mining.
    2. Be able to critically evaluate, select and ultimately apply appropriate data mining techniques for particular problem domains.
    3. Critically interpret current research and novel application areas in data mining.

Module Outlines:
• Background to data mining
• Data mining methodology
• Regression in data mining
• Cluster analysis
• Decision trees
• Neural networks in data miming
• Data warehousing
• Introduction to web log mining
• Current research and novel application areas

...back to top




Final Project

Aims of the Module:
This module provides the opportunity to develop and to demonstrate skills acquired from the taught course in the solution of a real practical problem. The module typically involves the analysis, design and implementation of a computer system. The project would be expected to draw on the content of several of the taught modules. Support is provided through a Project Management Panel. The module includes an introduction to some of the necessary project skills required to run a one-person project and present the results of the project in the most favourable way. Deliverables include a dissertation and an oral presentation/viva.

After studying the module students should:
    1. Undertake comprehensive background research of a problem area and produce a literature review.
    2. Undertake and complete a significant, practical systems based project.
    3. Critically evaluate the resultant product.

Module Outlines:
Apart from technical issues, typical project skills covered in other modules includes: Project management techniques, Feasibility studies, Cost benefit analyses, Software evaluation, Documentation, Interviewing skills, etc.
The project skills aspects will include: Personal time management, Project management, Project selection, Written and verbal communication, Giving demonstrations, Learning Strategies.

...back to top

Case study

Why did you apply for the MSc CIR/ISR?
I wanted to focus on a specialised area of computing. Since studying some introductory material (in BSc Computer Science at DMU) I have been fascinated with CI and robotics. Prior to applying I chatted with several course lecturers to learn more about the course and its content. I was impressed with the course content, experience of the department and the recent RAE grade of 4. Leicester is a lively, vibrant and diverse city with much to offer - much fun can be had here!

What did you do before? (i.e. what degree? training? jobs? Where did you live?)
I grew up in a sleepy village in Kent and attended the local grammar school in a neighbouring town. I wanted to explore new opportunities, experiences and places and so chose to attend De Montfort University in Leicester. I have always had a passion for computers and wanted to understand more. I completed the BSc Computer Science course at De Montfort University which included a 1 year placement at NCR corporation. De Montfort University offered an excellent postgraduate course in a specialist area which I decided to undertake.

What were the best things about the course for you, what did you get out of it?
A comfortable and exciting department Really enjoyed learning about current leading research within the CCI, this was very inspiring. The freedom to define several of our own individual courseworks as well as our thesis taught us how to generate and create innovative ideas. My personal qualities have developed further as well as my academic skills and knowledge. At the end of a long day the free sandwiches in The Graduate bar were excellent!

What do you plan to do next (or what are you doing if you've already finished).?
I am very keen to continue my studies at De Montfort University by undertaking a PhD within the CCI. During the MSc CIR course I really enjoyed working towards my thesis, this confirmed that I wanted to do embark on a research career. I am currently writing research proposals for funding a PhD at De Montfort University.

Would you recommend the course to future applicants?
Definitely. I have learnt a tremendous amount over the past years and have enjoyed a rich experience both within the CCI and Leicester itself. The available facilities are very good - there is a dedicated laboratory with are a variety of robots. It is an exciting and interesting course that offers good tuition and the opportunity to develop your own ideas in a friendly environment.

What advice would you give them before they start?
Do something you enjoy. Arrange an informal chat with a course lecturer/leader so that you can ask any questions that you may have. Look into the course content to identify what you will be learning. Perhaps brainstorm some ideas on paper: what are your interests?; why do these interest you?; what do you want from this course? etc. Regularly update your CV.