Prerequisites
Common core courses
Python programming
Learning objectives
Understand the general principles of artificial intelligence algorithms for problem solving.
Understand the general principles of Artificial Intelligence algorithms for adversarial problem solving.
Be able to implement and adapt these general Artificial Intelligence algorithms to various use cases.
Understand how machine learning can be used to improve fundamental algorithms.
Description of the programme
Artificial Intelligence is celebrating its 60th anniversary. It covers a set of problems and various techniques that aim to create programs for tasks that require intelligence when performed by human beings. If modern AI is essentially based on Machine Learning, older techniques allow to tackle complex tasks such as problem solving, two-player games and more generally strategy games, and benefit today from the advances of machine learning.
This elective introduces the artificial intelligence techniques and tools needed to create artificial players for two-player games (Chess, Go, Backgammon...) and more generally for multi-player games in general (Pacman) or strategy games.
The course successively covers :
- A brief introduction to A.I.: The field of A.I., its history and the current state of affairs
- Problem solving by exploration, or how to write programs that solve problems by themselves (the eight queens problem, etc.) by efficiently exploring sequences of actions.
- Two-player games, or how to write a program that plays against a human in games with a limited number of actions, such as chess, checkers with alpha-beta type algorithms and its variants.
- Two-player games and Machine Learning, or how to improve an artificial player with machine learning.
- Markov Decision Process and reinforcement algorithms: a particular learning strategy adapted to the design of autonomous agents such as robots, also exploitable for games with a large number of actions such as Go.
The module is taught for half in class sessions and for half in machine sessions (in Python).
Generic central skills and knowledge targeted in the discipline
This module contributes to giving a broad vision of the scientific and technological issues in the field of digital technology and artificial intelligence.
It trains the engineer to model sequential decision problems in order to solve them with adapted Artificial Intelligence tools.
- Scientific and technical innovation
- Mastering the complexity of systems
How knowledge is tested
1 project rendering per game (Problem Solving, 2-player games, 2-player games and Machine Learning)
1 final exam
Bibliography
Artificial Intelligence: A Modern Approach, 4th US ed. by Stuart Russell and Peter Norvig : http://aima.cs.berkeley.edu/
Teaching team
Thierry Artières (ECM)
- Total hours of teaching40h
- Master class14h
- Directed work16h
- 10h