The purpose of this module is to introduce the students to the use and practice of the broad scope of artificial intelligence techniques within the computer science domain, specifically focusing on AI problems outside the scope of machine earning and Data-driven approaches.
The module will introduce students to the techniques involved in building modern complex intelligent systems.
There is a strong practical emphasis in the module to allow the students to gain experience of implementing and applying the various representations and algorithms for solving real-life problems.
Overview and history of AI
Solving problems by Searching
- Representing problems as state space
- Uninformed search strategies
- Informed (heuristics) search algorithms
- Heuristic function
- Local search and optimisation
Constraint satisfaction problems
Adversarial search
- Games. Optimal strategies
- Min-max algorithm
- Alpha-beta pruning
- Games that include element of chance
Logic as formalism for representation and reasoning
Knowledge representation
- Ontologies
- Knowledge graphs
Expert systems
Reasoning with uncertainty
Biologically-inspired formalisms
- Genetic algorithms
- Neural networks
Planning
The module will be delivered primarily through lectures and laboratory work. The material will be developed in an informal way during lectures. It is envisaged that the students will assimilate much of the material through problem solving and exercises.
It is important that students be able to link the concepts and techniques learnt in this module to real world problems through practical laboratory work.
| Module Content & Assessment | |
|---|---|
| Assessment Breakdown | % |
| Formal Examination | 60 |
| Other Assessment(s) | 40 |