The main objective of this module is to introduce a selection of topics from artificial intelligence (AI), and to provide the student with the background to implement AI techniques for solving complex problems. This module will cover topics from classical AI, as well as more recent AI paradigms. These topics include: search methods, game playing, knowledge representation and reasoning, machine learning, neural networks, genetic algorithms, artificial life, planning methods, and intelligent agents. In the practical part of this module, students will get experience in implementing (1) game trees and evolving game-playing agents; (2) a neural network and applying it to solve a real-world problem; and (3) a genetic algorithm and applying it to solve a real-world problem.
The module will introduce the concepts of model-driven analysis and design as a mechanism to develop and evaluate complex software systems.