Liste des UE (toutes à 2.5 ECTS)

[AI] TC1: MACHINE LEARNING
Responsable : Sebag Michele
Goals: The objective of this course is to provide the essential bases in machine learning or machine learning: the main families of models and the associated algorithms (inference and learning). In particular, will be treated: - the theoretical bases of learning - probabilistic models and Bayesian learning - Linear models and SVM content: - General framework: representation, loss function, generalization and over-learning, entropy, supervised / unsupervised - Bayesian frame and models - Linear Models and Vector Machines Support Practical part: projects and case studies based on Kaggle competitions
Prérequis :
Language :
[AI] TC2: OPTIMIZATION
Responsable : Auger Anne
The objective of the course is to teach the basic theoretical and practical knowledge in continuous and discrete optimization. In discrete optimization the lecture will cover complexity theory, dynamic programming, approximation algorithms and heuristics to linear programming. For continuous optimization, optimality conditions for unconstraint and constraint optimization, convex optimization will be covered. Gradient based, Newton, quasi-Newton and derivative-free algorithms will be presented.
Prérequis : PRE2: Mathematics for Data Science
Language : English
[ANO] Blockchain
Responsable :
Prérequis :
Language :
[ANO] Evaluation de performances
Responsable :
Prérequis :
Language :
[ANO] Internet of Things
Responsable :
Description : Wireless networks and Internet of Things represent one of the major elements of our life in the next decades. Humans, Robots, Drones, vehicles and all type of things are going to be connected through wireless connections to a global Internet that we call the Internet of Things. The objectives is offer to students a complete and detailed landscape on the different protocols and technologies that will be used to realize the new system in which we are going to evolve.
Prérequis :
Language :
[ANO] Optimisation dans les graphes
Responsable :
Objectifs : savoir reconnaitre quel problème issu du domaine des réseaux doit être modélisé sous forme de graphe plutôt qu’une autre formulation mathématique. Description : Les graphes font partie des modélisations importantes et possibles (autre que la programmation mathématique) concernant les problèmes de réseaux pour lesquels il s'agit non seulement d'évaluer un problème de routage (par exemple) mais également d'optimiser un critère tel que le cout, l'efficacité énergétique ou encore la qualité de service. Voici les notions qui seront abordées dans ce cours. Représentation des graphes. Cheminements et connexité. Arbres et arborescences. Parcours de graphes. Plus courts chemins. Arbres couvrants minimums. Réseaux de transports, telecom, de drones. Compétences : modélisation des problèmes de réseaux à travers les graphes.
Prérequis : Éléments de base de la théorie des graphes, programmation de base.
Language :
[ANO] Optimisation discrète non linéaire
Responsable :
Objectifs : savoir reconnaitre quel problème issu du domaine des réseaux doit être modélisé sous la forme d’un programme mathématique et savoir comment le résoudre. Ce cours se déroule en deux étapes. La première consiste à faire un tour d’horizon des modèles (de programmation mathématique non linéaires en variables) les plus utilisés pour formuler des problèmes réels provenant des réseaux : programmes quadratiques en nombres entiers (convexes, non convexes), fractionnaires en variables mixtes, logarithmiques, arc tangente, bi-niveaux. La seconde étape propose d’étudier les méthodes de résolution associées aux modèles présentés dans un premier temps : reformulation d’un programme non linéaire sous la forme d’un programme linéaire qui peut être résolu via un solveur de programmation linéaire. Compétences : modélisation des problèmes de réseaux à travers la programmation mathématique non linéaire en variables mixtes.
Prérequis : Éléments de base de la théorie des graphes, programmation de base.
Language :
[ANO] Optimisation multi-objectifs
Responsable :
Objectifs : savoir reconnaitre quel problème issu du domaine des réseaux qui doit être modélisé sous la forme d’un programme bi-objectif et savoir le résoudre. L’optimisation multi-objectifs apparait quand on doit optimiser simultanément plusieurs objectifs contradictoires, ce qui amène à choisir une solution de compromis parmi une multitude de solutions possibles. Ce cours propose dans un premier temps les principes de l'optimisation multi-objectifs en décrivant les méthodes permettant de résoudre ce type de problème, et ce, en se basant sur des études de cas réels. Dans un second temps, il sera intéressant de voir comment évaluer les performances de ces méthodes et choisir la méthode la mieux adaptée à un problème donné. Compétences : modélisation des problèmes de réseaux comportant plusieurs critères.
Prérequis : éléments de base de la programmation mathématique, programmation de base.
Language :
[ANO] Programmation MPI
Responsable :
Prérequis :
[ANO] Programmation système et réseaux
Responsable : Martin Steven
Introduction aux réseaux Ad-hoc sans fil sous GNU/Linux et au développement sur systèmes embarqués Description. Ce module forme les étudiants à la programmation système et réseau dans un environnement TCP/IP pour l'embarqué. Les étudiants y apprennent la manipulation d'un système GNU/Linux pour configurer et utiliser un réseau WiFi en mode Ad-hoc, la compilation croisée (cross-compilation) pour le développement d'applications sur systèmes embarqués, ainsi que la mise en pratique d'algorithmes de la théorie des graphes pour optimiser l'utilisation d'un réseau dont la topologie est connue. À la suite de ce module, les étudiants auront acquis des compétences rares et très recherchés sur le marché professionnel des réseaux et systèmes embarqués.
Prérequis :
Language :
[ANO] Réseaux mobiles
Responsable :
Description : Ce cours sera dédié à l’étude de plusieurs notions essentielles des nouvelles générations de réseaux telles que la qualité de service (QoS), la mobilité (MIP) ou encore la signalisation dans IP (SIP, VoIP). Une série de travaux dirigés et de travaux pratiques permettront d’assimiler et de mettre en application les différentes notions étudiées.
Prérequis :
Language :
[ANO] Réseaux sans fil
Responsable :
Cette unité d’enseignement a pour objectif de présenter plusieurs notions avancées des réseaux informatiques et de télécommunications. Elle sera consacrée aux fondements et concepts de base des réseaux cellulaires : concept cellulaire, techniques d’accès au support radio (FDMA, TDMA, CDMA, CSMA-CA), en détaillant le fonctionnement de quelques systèmes représentatifs tels que la 3G, la 4G et la 5G.
Prérequis :
Language :
[ANO] Tests fonctionnels de protocoles
Responsable : Fatiha Zaïdi, Stéphane Maag
Ce cours aborde la spécification et le test de systèmes distribués de protocoles de communication. Après des rappels sur les automates et les types abstraits de données, le cours présente une algèbre de processus et le langage SDL. On illustre leur utilisation sur des protocoles réalistes et réels. Ces spécifications permettent la dérivation de cas de tests. Nous aborderons les problématiques de génération de tests d’architecture de tests. Nous verrons comment générer des tests dans le format TTCN3 et enfin nous aborderons le test à partir de traces d’exécution à savoir le test passif.
Prérequis :
Language :
[ANO] Théorie des jeux
Responsable :
Objectifs : savoir reconnaitre quel problème issu du domaine des réseaux doit être traité au moyen de la théorie des jeux. La théorie des jeux est largement employée dans le domaine des réseaux, ce domaine proposant de nombreuses techniques de modélisation et de résolution des problèmes liés aux comportement des utilisateurs ou des fournisseurs dans les réseaux. Les éléments étudiés dans ce cours en lien avec des applications réseaux telles que le routage par exemple sont les suivants : jeux coopératifs, non coopératifs ; jeux sous forme stratégique (dominance, Nash, Stackelberg) ; jeux dynamiques. Compétences : Savoir se servir de la théorie des jeux pour étudier le comprtement des usagers d’un réseau
Prérequis : éléments de base de la théorie des jeux, programmation de base.
Language :
[ANO] Virtualisation et cloud
Responsable :
Prérequis :
Language :
[DS] Distributed Systems for Massive Data Management
Responsable : Groz Benoît
Ce cours donne un panorama des différents systèmes de gestion de données distribués, et les concepts mis en œuvre dans ces systèmes. Le cours abordera les points suivants : partitionnement, indexation, réplication, panorama des systèmes NoSQL, quelques éléments d'architecture et systèmes et structures de données et algorithmes utilisés dans ces systèmes. Le cours abordera ces notions à travers de nombreux systèmes NoSQL, et en comparant ces systèmes avec les technologies relationnelles similaires.
Prérequis : Bases de données avancées
Language :
[PDCS] Calcul Haute Performance
Responsable : Kaya Oguz
FR: Ce cours a pour but d’acquérir des compétences pour développer des programmes parallèles rapides capables d’exploiter les architectures parallèles pour résoudre des problèmes réels à grande échelle. Nous nous intéressons d’abord à la programmation parallèle sur une machine multi-cœurs en utilisant la bibliothèque OpenMP et discutons de la parallélisation des boucles, de l'ordonnancement et des techniques de parallélisation basée sur les tâches, ainsi que des opérations atomiques, des conditions de concurrence et du partage erroné. Nous étudions ensuite la parallélisation au sein d’un seul cœur en utilisant des techniques de vectorisation et un parallélisme au niveau des instructions. Enfin, nous discutons des problèmes de performances liés à la hiérarchie de la mémoire et des moyens de l'améliorer. EN: The goal of this course is to acquire competence in developing fast parallel programs that are capable of exploiting modern parallel computer architectures for solving large-scale real-world problems. We first focus on parallel programming on a multi-core machine using OpenMP and discuss loop parallelization, scheduling and task-based parallelization techniques as well as atomic operations, race conditions, and false sharing. We then investigate the parallelization within a single core by using vectorization techniques and instruction level parallelism. Finally, we discuss performance issues related to the memory hierarchy and ways to improve data access.
Prérequis : FR: -Connaissance du Français ou de l'Anglais. Le matériel sera fourni en Français et en Anglais -Connaissances de bases en algorithmique, en programmation (C/C++) et en architecture des ordinateurs. -Algorithmique parallèle PDCS M1 (recommandé). EN: -Fluency in French or English. The course material will be provided in French and in English. -Familiarity with algorithms, programming (C/C++), and computer architecture. -Parallel algorithms PDCS M1 (recommended).
Language : English