L’objectif de cette unité d’enseignement est de présenter les principales techniques d’intelligence artificielle appliquées à la robotique, en mettant l’accent sur les méthodes d’apprentissage automatique, tout en permettant aux étudiants d’acquérir les concepts fondamentaux de l’apprentissage.
Le cours s’articule autour de trois parties :
- (i) Introduction à l’intelligence artificielle : historique, concepts de base, applications et défis, avec des exemples concrets en robotique, comme la navigation autonome de robots mobiles, la détection d’obstacles, la robotique chirurgicale et des applications en imagerie medicales.
- (ii) Apprentissage supervisé et non supervisé : principes et algorithmes clés, illustrés par des applications concrètes en vision par ordinateur, comme la regression, la classification d’objets et la detection.
- (iii) Principes des réseaux de neurones et introduction à l’apprentissage profond : fonctionnement des réseaux de neurones, apprentissage supervisé et non supervisé, avec des exemples en robotique et vision, tels que la reconnaissance d’objets par caméra, le suivi de trajectoires et la détection de gestes.
Les travaux pratiques ont pour objectif de familiariser les étudiants avec le langage Python ainsi qu’avec les principales bibliothèques de calcul scientifique et d’apprentissage automatique, notamment NumPy, Pandas, Matplotlib et scikit-learn. Ils couvrent notamment :
- Introduction aux concepts de base de la programmation scientifique en Python
- Prise en main des bibliothèques NumPy, Pandas et Matplotlib pour le calcul numérique, la manipulation et la visualisation des données
- Implémentation et analyse de la régression linéaire
- Mise en œuvre de méthodes de classification automatique comme l’algorithme des K plus proches, voisins (KNN), arbres de forest...
- Introduction aux réseaux de neurones convolutifs (CNN)
- Étude et utilisation des autoencodeurs
- Expérimentation sur des jeux de données variés, réels et simulés, ainsi qu’évaluation des performances des modèles