Niveau d'étude visé
Bac +5
ECTS
60 crédits
Durée
1 an
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées), Grenoble INP - Ensimag (Informatique, mathématiques appliquées et télécommunications), UGA
Langue(s) d'enseignement
Anglais
Présentation
Le semestre 9 correspond à la formation de spécialisation, le semestre 10 est constitué d'un stage en entreprise ou en laboratoire de 5 à 7 mois qui représente 30 ECTS.
Les objectifs scientifiques affichés sont de former les étudiants aux fondements et méthodes de la recherche opérationnelle (programmation mathématique, théorie des graphes, complexité, programmation stochastique, heuristiques, algorithmes d’approximation etc) et de préparer les étudiants à l’utilisation et au développement de ces méthodes pour résoudre des applications industrielles complexes (supply chain, ordonnancement, transport, revenue management etc) et implémenter les solutions logicielles correspondantes.
Le parcours est labellisé "Core AI" par MIAI.
Compétences
Certaines UEs du parcours, de tronc commun ou étiquetées recherche, permettent d’acquérir des compétences organisationnelles et liées au travail du chercheur
- Formuler un problème de recherche et proposer une solution
- Positionner un problème de recherche dans la littérature scientifique
- Évaluer et valider une solution à un problème de recherche
- Rédiger une publication scientifique
- Communiquer les résultats d'un travail de recherche
- Développer et utiliser les outils mathématiques et informatiques
Maîtriser les logiciels et matériels informatiques
- Communiquer en anglais et en français
Formation internationale
Formation tournée vers l’international
Dimension internationale
Etudier à l’international en échange
Dans le cadre de cette formation, vous avez la possibilité de partir étudier durant un semestre ou une année dans un établissement partenaire de l’UGA à l’international.
Le correspondant relations internationales de votre composante pourra vous renseigner.
Plus d’informations sur : https://international.univ-grenoble-alpes.fr/partir-a-l-international/partir-etudier-a-l-etranger-dans-le-cadre-d-un-programme-d-echanges/
Possibilité de faire un double diplôme avec l'Université de Swansea.
Organisation
Programme
Spécificités du programme
Programme en cours de construction - en attente de vote CFVU
Sélectionnez un programme
Master 2e année parcours classique
UE Advanced models and methods in operations research
6 créditsUE Combinatorial optimization and graph theory
6 créditsUE Optimization under uncertainty
6 créditsAu choix : 4 à 9 parmi 27
UE Constraint Programming, applications in scheduling
3 créditsUE Graph and discrete structures
3 créditsUE Advanced heuristic and approximation algorithms
3 créditsUE Advanced mathematical programming methods
3 créditsUE Academic and industrial challenges
3 créditsUE Transport Logistics and Operations Research
6 créditsUE Advanced parallel system
6 créditsUE Multi-agent systems
3 créditsUE Fundamentals of Data Processing and Distributed Knowledge
6 créditsUE Scientific methodology regulatory and ethical data usage
6 créditsUE Large-scale data management and distributed systems
6 créditsUE Cryptographic engineering, protocols and security models, data privacy, coding and applications
6 créditsUE From Basic Machine Learning models to Advanced Kernel Learning
6 créditsUE Mathematical Foundations of Machine Learning
6 créditsUE Learning, Probabilities and Causality
6 créditsUE Statistical learning: from parametric to nonparametric models
6 créditsUE Mathematical optimization
6 créditsUE Safety Critical Systems: from design to verification
6 créditsUE Information vizualisation
3 créditsUE GPU Computing
6 créditsUE Robotics
6 créditsUE Cloud Computing, from infrastructure to applications
6 créditsUE Advanced Machine Learning: Applications to Vision, Audio and Text
6 créditsUE Natural Language Processing & Information Retrieval
6 créditsUE Information Security
6 créditsUE Human Computer Interaction
6 créditsUE Next Generation Software Development
6 crédits
UE Stage
30 crédits
Master 2e année parcours Graduate School
UE GS_MSTIC_Ethique de la recherche
6 créditsUE Advanced models and methods in operations research
6 créditsUE Combinatorial optimization and graph theory
6 créditsUE Optimization under uncertainty
6 créditsUE Constraint Programming, applications in scheduling
3 créditsUE Graph and discrete structures
3 créditsUE Advanced heuristic and approximation algorithms
3 créditsUE Advanced mathematical programming methods
3 créditsUE Academic and industrial challenges
3 créditsUE Transport Logistics and Operations Research
6 crédits
UE Stage
30 crédits
UE Advanced models and methods in operations research
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course presents advanced methods and technics for Operations Research.
Reminder :
Linear Programming, Dynamic Programming, MIP modelling and BB
Complexity (P, NP, Co-NP)
Advanced MIP :
formulation, cuts, bounds
applications
lagragian relaxation
column generation
Benders decomposition
Solvers
Constraint Programming
Heuristics
local search
approximation algorithms
UE Combinatorial optimization and graph theory
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The aim of this course is to provide a broad knowledge of fundamental problems in Combinatorial Optimization to show their algorithmic solutions and to derive min-max results on them. In order to achieve this goal a new object called a polyhedron is introduced. This polyhedral approach helps to shed new light on some classic results of Combinatorial Optimization.
Syllabus: Study of polyhedra associated to problems of Combinatorial Optimization ; Theory of blocking polyhedra ; Connectivity: shortest paths, spanning trees and spanning arborescences of minimum weight ; Flows: Edmonds-Karp Algorithm, Goldberg-Tarjan Algorithm, minimum cost flows ; Matchings: Hungarian method, Edmonds' Algorithm, Chinese postman problem; Matroids: greedy algorithm, intersection of two matroids ; Graph coloring ; Applications coming from various areas of Operations Research.
UE Optimization under uncertainty
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The objective of this course is to present different techniques to handle uncertainty in decision problems. These techniques will be illustrated on several applications e.g. inventory control, scheduling, energy, machine learning.
Syllabus : Introduction to uncertainty in optimization problems; Reminders (probability, dynamic programming, ...); Markov chains; Markov decision processes; Stochastic programming; Robust optimization
UE Constraint Programming, applications in scheduling
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Graph and discrete structures
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The aim of this course is to learn how to use the structure of graphs and other discrete objects to obtain general results on them, and in particular efficient algorithms solving important problems.
We will cover the following topics:
- Structural Graph Theory: we will study the structure of important graph classes with nice algorithmic properties (planar graphs, interval graphs, comparability graphs, ...) and show several concrete problems that can be solved thanks to their structural properties.
- Graph Drawing: with the rise of Big Data, representing huge data sets is a fundamental challenge. Efficient ways to represent large graphs will be presented.
- Codes: we will see various codes (dominating, locating, identifying, ...) in graphs and their applications.
- Extremal combinatorics: the typical question in this field is "what global condition do we need to impose in some graph in order to make sure that some nice structure appears locally?" We will introduce a powerful tool called "the probabilistic method", an show how it can be applied to solve problems in this important area of research.
UE Advanced heuristic and approximation algorithms
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Advanced mathematical programming methods
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Academic and industrial challenges
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course offers the possibility for the students to gain some experience by facing open/difficult combinatorial problems.
The goal is to model and solve a combinatorial problem with direct industrial applications. We expect the students to take a variety of approaches (local search, compact/extended linear programming formulations, constraint programming, ...) and establish useful results (lower bounds, cuts, complexity,...).
The experimental results will be compared to the litterature (a known academic open benchmark will be available in this case) or will be validated by the industrial partner.
UE Transport Logistics and Operations Research
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Presenting models and tools for solving problems of company location and transport management in a supply chain.
Description:
This course presents two aspects: strategic design of a distribution network in a supply chain and tactical-operational aspects of network management.
For each aspect the course develops two key points:
- in network design, the choice of location and the establishment of services (production site, warehouse, logistics platform) and the synthesis of the transport network (connections / roads between production sites, warehouses, logistics centres)
- in network management, planning and modes of distribution transport (planning delivery rounds, number and types of vehicles).
For each of the three problem areas: location, delivery rounds and network design, students will study both modelling and techniques for accurate resolution (Branch-and-Bound) plus techniques for approximate resolutions (Lagrangian relaxation , metaheuristics) and how they are set up in commercial software (OPL-CPLEX Studio, Excel solver), or free software (COIN, lp-solve) or ad-hoc.
Evaluation :
Individual written exam (1/2 of the final mark) and group project (1/2 of the final mark).
UE Advanced parallel system
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Today, parallel computing is omnipresent across a large spectrum of computing platforms, from processor cores or GPUs up to Supercomputers and Cloud platforms. The largest Supercomputers gather millions of processing units and are heading towards Exascale (a quintillion or 10^18 flops - http://top500.org). If parallel processing was initially targeting scientific computing, it is now part of many domains like Big Data analytics and Deep Learning. But making an efficient use of these parallel resources requires a deep understanding of architectures, systems, parallel programming models, and parallel algorithms.
Overview:
The class is organized around weekly lectures, discussions and help time. The presented materials that will be available each week on the class web page. To get practical experience and good understanding of the main concepts the students are expected to develop short programs and experiments. Students will also have to prepare a presentation or a written report on research articles. Students will have access to Grid'5000 parallel machines and the SimGrid simulator for experiments.
This class is organized around 2 main blocks:
Overview of parallel systems:
-
- Introduction to parallelism from GPU to supercomputers.
- Hardware and system considerations for parallel processing (multi-core architectures, process and thread handling, cache efficiency, remote data access, atomic instructions)
- Parallel programming: message passing, one-sided communications, task-based programming, work stealing based runtimes (MPI, Cilk, TBB, OpenMP).
- Modeling of parallel programs and platforms. Locality, granularity, memory space, communications.
- Parallel algorithms, collective communications, topology aware algorithms.
- Scheduling: list algorithms; partitioning techniques. Application to resource management (PBS, LSF, SGE, OAR).
- Large scale scientific computing: parallelization of Lagrangian and Eulerian solvers, parallel data analytics and scientific visualization.
- AI and HPC: how parallelism is used at different levels to accelerate machine learning and deep learning using supercomputers.
Functional parallel programming:
We propose to study a clean and modern approach to the design of parallel algorithms: functional programming. Functional languages are known to provide a different and cleaner programming experience by allowing a shift of focus from "how to do" on "what to do".
If you take for example a simple dot product between two vectors. In c language you might end up with:
unsigned int n = length(v1); double s = 0.0; for (unsigned int i = 0 ; i < n ; i++) { s += v1[i] * v2[i]; }
In python however you could write:
return sum(e1*e2 for e1, e2 in zip(v1, v2))
You can easily notice that the c language code displayed here is highly sequential with a data-flow dependence on the i variable. It intrinsically contains an ordering of operations because it tells you how to do things to obtain the final sum. On the other end the python code exhibits no dependencies at all. It does not tell you how to compute the sum but just what to compute: the sum of all products.
In this course we will study how to express parallel operations in a safe and performant way. The main point is to study parallel iterators and their uses but we will also consider classical parallel programming schemes like divide and conquer. We will both study the theoretical complexity of different parallel algorithms and practice programming and performance analysis on real machines.
All applications will be developed in the RUST programming language around the Rayon parallel programming library.
No previous knowledge of the rust language is required as we will introduce it gradually during the course. You need however to be proficient in at least one low level language (typically C or C++)
UE Multi-agent systems
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course introduces the field of MAS, various theoretical aspects (agent architectures, reasoning, interactions, game theory, social choice, etc), as well as practical applications from recent research. The focus is mostly on agent-based social simulation, and how to integrate psychological aspects in agents (so-called “human factors”: emotions, biases…) to make them more human-like and realistic. Applications discussed include epidemics modelling, computational economy, crisis management, urban planning, serious games, etc. The practical part of the course comprises several tutorials with various agent-based modelling platforms (in particular GAMA and Netlogo), scientific papers discussions, and analysis and/or extension of existing models.
UE Fundamentals of Data Processing and Distributed Knowledge
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Modern computing increasingly takes advantage of large amounts of distributed data and knowledge. This is grounded on theoretical principles borrowing to several fields of computer science such as programming languages, data bases, structured documentation, logic and artificial intelligence. The goal of this course is to present some of them, the problems that they solve and those that they uncover. The course considers two perspectives on data and knowledge: interpretation (what they mean), analysis (what they reveal) and processing (how can they be traversed efficiently and transformed safely).
The course offers a semantic perspective on distributed knowledge. Distributed knowledge may come from data sources using different ontologies on the semantic web, autonomous software agents learning knowledge or social robots interacting with different interlocutors. The course adopts a synthetic view on these. It first presents principles of the semantics of knowledge representation (RDF, OWL). Ontology alignments are then introduced to reduce the heterogeneity between distributed knowledge and their exploitation for answering federated queries is presented. A practical way for cooperating agents to evolve their knowledge is cultural knowledge evolution that is then illustrated. Finally, the course defines dynamic epistemic logics as a way to model the communication of knowledge and beliefs.
The course also introduces a perspective on programming language foundations, algorithms and tools for processing structured information, and in particular tree-shaped data. It consists in an introduction to relevant theoretical tools with an application to NoSQL (not only SQL) and XML technologies in particular. Theories and algorithmic toolboxes such as fundamentals of tree automata and tree logics are introduced, with applications to practical problems found for extracting information. Applications include efficient query evaluation, memory-efficient validation of document streams, robust type-safe processing of documents, static analysis of expressive queries, and static type-checking of programs manipulating structured information. The course also aims at presenting challenges, important results, and open issues in the area.
UE Scientific methodology regulatory and ethical data usage
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The course aims to provide the fundamental basis for a sound scientific methodology of experimental evaluation in computer science. This lecture emphasizes on methodological aspects of measurement and on the statistics needed to analyze computer systems, human-computer interaction systems, and machine learning systems. We first sensibilize the audience to reproducibility issues related to empirical research in computer science as well as to ethical and scientific integrity aspects. Then we present tools that help address the aforementioned issues and we give the audience the basis of probabilities and statistics required to develop sound experiment designs. The content of the lecture is therefore both theoretical and practical, illustrated by a lot of case studies and practical sessions. The goal is not to provide analysis recipes or techniques that researchers can blindly apply but to make students develop critical thinking and understand some simple (and possibly not-so-simple) tools so that they can both readily use and explore later on.
UE Large-scale data management and distributed systems
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The course is divided in two complementary parts: distributed systems and data management.
Part 1: Distributed systems
Summary
Distributed systems are omnipresent. They are formed by a set of computing devices, interconnected by a network, that collaborate to perform a task. Distributed systems execute on a wide range of infrastructures: from Cloud datacenters to wireless sensor networks.
The goal of this course is to study the main algorithms used at the core of Distributed systems. These algorithms must be efficient and robust. An algorithm is efficient when it sustains a high level of performance. Performance can be measured using various metrics such as throughput, latency, response time. An algorithm is robust when it is able to operate despite the occurrence of various types of (network and/or machine) and attacks.
Content
During the course, we will cover several topics that are listed below:
- Event-driven formalisms for distributed algorithms
- Basic abstractions: processes, links
- Failure detector algorithms
- Leader election algorithms
- Broadcasting algorithms
- Distributed shared memory algorithms
- Consensus algorithms
- Epidemic algorithms
- Performance models for distributed systems
Part 2: Data management
Summary
The ability to process large amounts of data is key to both industry and research today. As computing systems are getting larger, they generate more data that need to be analyzed to extract knowledge.
Data management infrastructures are growing fast, leading to the creation of large data centers and federations of data centers. Suitable software infrastructures should be used to store and process data in this context. Big Data software systems are built to take advantage of a large set of distributed resources to efficiently process massive amounts of data while being able to cope with failures that are frequent at such a scale.
In addition to the amount of data to be processed, the other main challenge that such Big Data systems need to deal with is time. For some use cases, the earlier the results of a data analysis is obtained, the more valuable the result is. Some Big Data systems especially target stream processing where data are processed in real time.
Through lectures and practical sessions, this course provides an overview of the software systems that are used to store and process data at large scale. The following topics will be covered:
- Map-Reduce programming model
- In-memory data processing
- Stream processing (data movement and processing)
- Large scale distributed data storage (distributed file systems, NoSQL databases)
Throughout the lectures, the challenges associated with performance and fault tolerance will also be discussed.
UE Cryptographic engineering, protocols and security models, data privacy, coding and applications
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The course present the main cryptographic primitives and security protocols, focusing on security parameters and properties.
Pedagogical goals:
- generic cryptographic primitives: one-way, trap-door and hash functions; random generators; symmetric and assymertic cipher; interactive protocols;
- security properties : complexity and reduction proofs; undistinguidhability; non-malleability; soundness, completeness and zero-knowledge; confidentiality; authentication; privacy; non-repudiation
- use, deployment and integration of protocols in standard crypro lib (eg open-ssl)
- security proofs : fundations and verification based on tools (eg avispa)
UE From Basic Machine Learning models to Advanced Kernel Learning
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Statistical learning is about the construction and study of systems that can automatically learn from data. With the emergence of massive datasets commonly encountered today, the need for powerful machine learning is of acute importance. Examples of successful applications include effective web search, anti-spam software, computer vision, robotics, practical speech recognition, and a deeper understanding of the human genome. This course gives an introduction to this exciting field. In the first part, we will introduce basic techniques such as logistic regression, multilayer perceptrons, nearest neighbor approaches, both from a theoretical and methodological point of views. In the second part, we will focus on more advanced techniques such as kernel methods, which is a versatile tool to represent data, in combination with (un)supervised learning techniques that are agnostic to the type of data that is learned from. The learning techniques that will be covered include regression, classification, clustering and dimension reduction. We will cover both the theoretical underpinnings of kernels, as well as a series of kernels that are important in practical applications. Finally we will touch upon topics of active research, such as large-scale kernel methods and the use of kernel methods to develop theoretical foundations of deep learning models.
UE Mathematical Foundations of Machine Learning
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Machine Learning is one of the key areas of Artificial Intelligence and it concerns the study and the development of quantitative models that enables a computer to perform tasks without being explicitly programmed to do them. Learning in this context is hence to recognize complex forms and to make intelligent decisions. Given all existing entries, the difficulty of this task lies in the fact that all possible decisions is usually very complex to enumerate. To get around that, machine learning algorithms are designed in order to gain knowledge on the problem to be addressed based on a limited set of observed data extracted from this problem. To illustrate this principle, consider the supervised learning task, where the prediction function, which infers a predicted output for a given input, is learned over a finite set of labeled training examples, where each instance of this set is a pair constituted of a vector characterizing an observation in a given vector space, and an associated desired response for that instance (also called desired output). After the training step, the function returned by the algorithm is sought to give predictions on new examples, which have not been used in the learning process, with the lowest probability of error. The underlying assumption in this case is that the examples are, in general, representative of the prediction problem on which the function will be applied. We expect that the learning algorithm produces a function that will have a good generalization performance and not the one that is able to perfectly reproduce the outputs associated to the training examples. Guarantees of learnability of this process were studied in the theory of machine learning largely initiated by Vladimir Vapnik. These guarantees are dependent on the size of the training set and the complexity of the class of functions where the algorithm searches for the prediction function. Emerging technologies, particularly those related to the development of Internet, reshaped the domain of machine learning with new learning frameworks that have been studied to better tackle the related problems. One of these frameworks concerns the problem of learning with partially labeled data, or semi-supervised learning, which development is motivated by the effort that has to be made to construct labeled training sets for some problems, while large amount of unlabeled data can be gathered easily for these problems. The inherent assumption, in this case, is that unlabeled data contain relevant information about the task that has to be solved, and that it is a natural idea to try to extract this information so as to provide the learning algorithm more evidence. From these facts were born a number of works that intended to use a small amount of labeled data simultaneously with a large amount of unlabeled data to learn a prediction function.
The intent of this course is to propose a broad introduction to the field of Machine Learning, including discussions of each of the major frameworks, supervised, unsupervised, semi-supervised and reinforcement learning.
UE Learning, Probabilities and Causality
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Causality is at the core of our vision of the world and of the way we reason. It has long been recognized as an important concept and was already mentioned in the ancient Hindu scriptures: “Cause is the effect concealed, effect is the cause revealed”. Even Democritus famously proclaimed that he would rather discover a causal relation than be the king of presumably the wealthiest empire of his time. Nowadays, causality is seen as an ideal way to explain observed phenomena and to provide tools to reason on possible outcomes of interventions and what-if experiments, which are central to counterfactual reasoning, as ‘‘what if this patient had been given this particular treatment?’’
UE Statistical learning: from parametric to nonparametric models
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course is related to mathematical and statistical methods which are very used in supervised learning.
It contains two parts.
In the first part, we will focus on parametric modeling. Starting with the classical linear regression, we will describe several families of estimators that work when considering high-dimensional data, where the classical least square estimator does not work. Model selection and model assessment will particularly be described.
In the second part, we shall focus on nonparametric methods. We will present several tools and ingredients to predict the future value of a variable. We shall focus on methods for non parametric regression from independent to correlated training dataset. We shall also study some methods to avoid the overfitting in supervised learning.
This course will be followed by practical sessions with the R software.
UE Mathematical optimization
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Safety Critical Systems: from design to verification
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Information vizualisation
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Interactive Information Visualization (InfoVis)
InfoVis is the study of interactive graphical representations of abstract data (e.g. graphs linking people in social networks, series of stock options values evolving over time).
Graphical representations are a powerfull way to leverage the human perceptual capabilities to allow the user to explore and make sense of abstract data, and also to expose findings and convey ideas.
But to be efficient, a visualization has to be designed using knowledge about the human visual perception, the characteristics of the data, the kind of task that will be performed on those data.
The aim of this course is to provide the keys, both theoretical and practical, to build usable and useful interactive visualizations.
program summary:
- foundations: human visual perception, graphical variables, data types, the visualization pipeline.
- linked data: tree and graph visualization
- tabular data: time series and spatial data visualization
- dealing with large data: aggregation, multiple views, interaction
- validating visualization: visualization tasks, evaluation
UE GPU Computing
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
In this course, we will introduce parallel programming paradigms to the students in the context of applied mathematics. The students will learn to identify the parallel pattern in numerical algorithm. The key components that the course will focus on are : efficiency, scalability, parallel pattern, comparison of parallel algorithms, operational intensity and emerging programming paradigm. Trough different lab assignments, the students will apply the concepts of efficient parallel programming using Graphic Processing Unit. In the final project, the students will have the possibility to parallelize one of their own numerical application developed in a previous course.
- Introduction to parallelism
- Introduction to general context of parallelism
- Models of parallel programming
- Description of various model of parallelism
- Paradigm of parallelism
- Templates of parallelism
- Parallel architectures
- Programming tools: Cuda
UE Robotics
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
A robot is a mechatronic system with perception, decision and action capabilities design to perform in an autonomous way different tasks in the real world. Whatever the robot (e.g. mobile robot, industrial arm, mobile manipulator) and the task that it has been assigned, the robot will have to move (move its whole body or a part of its body, e.g. arm, hand). Accordingly, motion autonomy is an essential skill for a robot. To achieve motion autonomy, it is required to solve a number of challenging problems in areas as diverse as sensor data processing, situation understanding, motion planning, obstacle avoidance and control. The purpose of the course is to present the main concepts, tools and techniques that Roboticists have developed in the past fifty years in order to address these challenges. The course has three parts that focus on different aspects: The first part is about robot state estimation and world modeling. It presents the most popular approaches to perform state estimation. The basic equations of the Bayes filter are derived first. Then, the Extended Kalman Filter is introduced. These methods are then used to explore the following fundamental estimation problems: 1) robot localization, 2) Simultaneous Localization and Mapping (SLAM), 3) cooperative localization, and 4) simultaneous localization and self-calibration. The structural properties of these problems are studied. In particular, it is shown how the computational complexity scales with the size of the state. Finally, more theoretical aspects related to estimation with special focus on state observability are discussed. The second part focuses on the decision-making aspects. Motion planning is addressed first in the seminal configuration space framework, the main configuration space-based motion planning techniques are reviewed. Then, to deal with the uncertainty of the real world and the discrepancy between the world and its model, reactive collision avoidance techniques are presented. Finally, motion safety is formally studied thanks to the Inevitable Collision State concept. The third part is an introduction to control theory for articulated robots. The objectives are to understand basic concepts about the kinematics and dynamics of articulated robots and basic control theory in order to approach classical control methods, as well as a few selected advanced topics. The kinematics of articulated robots is introduced first, covering advanced topics such as singularities, hierarchies of objectives, inequality constraints. A brief reminder about Newton, Euler and Lagrangian equations of motion as well as basic Lyapunov stability theory is also provided before discussing standard motion control schemes such as Proportional-Derivative, Computed Torque, Operational Space and Task Function approaches. Advanced topics such as space robots, biped robots, Viability theory and optimal control are also touched.
UE Cloud Computing, from infrastructure to applications
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course provides an overview of cloud computing principles, building blocks and applications.
Over the past 15 years, the emergence of cloud computing infrastructures has fundamentally impacted the way to design and deploy software, in most application domains. At the core of IT infrastructures, cloud computing is today the main platform for implementing and deploying robust, scalable, potentially geo-distributed, elastic applications. Together with DevOps methods, it allows IT companies to rapidly deliver reliable software.
The course studies :
- The low-level mechanisms enabling the cost-efficiency, performance, scalability and resilience of cloud infrastructures,
- The software design principles involved in the construction of (distributed) cloud applications,
- The cloud services facilitating the implementation of cloud-native applications.
Through lectures, practical sessions, and the study of recent research publications (from academia and industry), students will learn about the core principles and usage of:
- Virtualization technologies (hypervisors, kernels, and containers) enabling flexible, efficient, safe and secure hosting of code and data on a shared hardware and software infrastructure;
- The fundamental aspects of cloud infrastructures, services, and design patterns for the construction of efficient, scalable and resilient distributed applications;
- Microservice architectures, allowing organizations to design, develop and manage complex software services in an extremely modular way.
UE Advanced Machine Learning: Applications to Vision, Audio and Text
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The course is split into two parts. During the first part, a wide range of machine learning algorithms will be discussed. The second part will focus on deep learning, and presentations more applied to the three data modalities and their combinations. The following is a non-exhaustive list of topics discussed:
- Computing dot products in high dimension & Page Rank
- Matrix completion/factorization (Stochastic Gradient Descent, SVD)
- Monte-carlo, MCMC methods: Metropolis-Hastings and Gibbs Sampling
- Unsupervised classification: Partitionning, Hierarchical, Kernel and Spectral clustering
- Alignment and matching algorithms (local/global, pairwise/multiple), dynamic programming, Hungarian algorithm,…
- Introduction to Deep Learning concepts, including CNN, RNN, Metric learning
- Attention models: Self-attention, Transformers
- Auditory data: Representation, sound source localisation and separation.
- Natural language data: Representation, Seq2Seq, Word2Vec, Machine Translation, Pre-training strategies, Benchmarks and evaluation
- Visual data: image and video representation, recap of traditional features, state-of-the-art neural architectures for feature extraction
- Object detection and recognition, action recognition.
- Multimodal learning: audio-visual data representation, multimedia retrieval.
- Generative Adversarial Networks: Image-image translation, conditional generation
UE Natural Language Processing & Information Retrieval
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The automatic processing of languages, whether written or spoken, has always been an essential part of artificial intelligence. This domain has encouraged the emergence of new uses thanks to the arrival in the industrial field of many technologies from research (spell-checkers, speech synthesis, speech recognition, machine translation, …). In this course, we present the most recent advances and challenges for research. We will discuss discourse analysis whether written or spoken, text clarification, automatic speech transcription and automatic translation, in particular recent advances with neural models.
Information access and retrieval is now ubiquitous in everyday life through search engines, recommendation systems, or technological and commercial surveillance, in many application domains either general or specific like health for instance. In this course, we will cover Information retrieval basics, information retrieval evaluation, models for information retrieval, medical information retrieval, and deep learning for multimedia indexing and retrieval
UE Information Security
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Course content
Part 1: Access Control, or how to prevent unauthorized people from entering or accessing a system?
This part deals with:
- Cryptology for authentication and trust;
- security needs : confidentiality, availability, integrity, non-repudiation (CAI/DICP);
- cryptology primitives : private and public key ; trusted infrastructure (PKI and ledgers).
- zero-knowledge protocols; secret sharing and multiparty computation / or Practical work with Open SSL
- Access control mechanisms (MAC, DAC, RBAC, ABAC) and their implementations
- The detection and remediation of security breaches such as intrusions and insider attacks
- The deployment of control filters in applications and proxies.
The presented approach is built on the model-driven security paradigm (MDS). It refers to the process of modeling security requirements at a high level of abstraction, and generating technical security implementations. Security models are transformed into enforceable security rules including the run-time security management (e.g. entitlements/authorisations). Three labs are planned:
- B4MSecure: we will apply a formal language with animation and model-checking facilities to identify security breaches in Access Control policies.
- Snort: in this practical session you will set a local environment to simulate two machines, the target machine and the attacker. You will learn how to create firewall rules, monitor your network and how to react when an attack is detected.
- Metasploit: you will discover technology intelligence for vulnerabilities through a practical session where you will reproduce an exploit to hack and take control over a web-based server.
Part 2: Overview of modern attacks on systems, protocols, and networks and countermeasures
This part is devoted to modern attacks carried out on the Internet scale, in particular attacks on the DNS system (Domain Name System), such as cache or zone poisoning attacks, reflection and amplification of DDoS attacks (Distributed Denial of Service), IP spoofing - the root cause of DDoS attacks, botnets (e.g., Mirai), domain generation algorithms used for command-and-control communications, modern malware (e.g., Emotet trojan, Avalanche), spam, phishing, and business email compromise (BEC) scams.
The module will discuss preventative measures and security protocols to fight modern attacks, such as DDoS protection services, IP source address validation (SAV) known as BCP 38, Sender Policy Framework, and DMARC protocols as the first line of defense against email spoofing and BEC fraud, and DNSSEC to prevent DNS manipulation attacks. It will also discuss large-scale vulnerability measurements (a case study of the zone poisoning attack) and the challenges of deploying current security technologies by the system and network operators.
This part will be concluded with a practical team assignment in which students will be divided into groups and will have to configure a secure system in a real-world environment. The goal is to secure their system against the various types of discussed attacks and exploit other groups' systems.
UE Human Computer Interaction
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Next Generation Software Development
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Stage
Niveau d'étude
Bac +5
ECTS
30 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Printemps (janv. à avril/mai)
UE GS_MSTIC_Ethique de la recherche
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Cette UE est obligatoire pour les étudiant.e.s inscrit.e.s dans le PT MSTIC.
Elle est constituée d'une projet tutoré et d'un MOOC consacré à l'éthique de la Science.
UE Advanced models and methods in operations research
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course presents advanced methods and technics for Operations Research.
Reminder :
Linear Programming, Dynamic Programming, MIP modelling and BB
Complexity (P, NP, Co-NP)
Advanced MIP :
formulation, cuts, bounds
applications
lagragian relaxation
column generation
Benders decomposition
Solvers
Constraint Programming
Heuristics
local search
approximation algorithms
UE Combinatorial optimization and graph theory
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The aim of this course is to provide a broad knowledge of fundamental problems in Combinatorial Optimization to show their algorithmic solutions and to derive min-max results on them. In order to achieve this goal a new object called a polyhedron is introduced. This polyhedral approach helps to shed new light on some classic results of Combinatorial Optimization.
Syllabus: Study of polyhedra associated to problems of Combinatorial Optimization ; Theory of blocking polyhedra ; Connectivity: shortest paths, spanning trees and spanning arborescences of minimum weight ; Flows: Edmonds-Karp Algorithm, Goldberg-Tarjan Algorithm, minimum cost flows ; Matchings: Hungarian method, Edmonds' Algorithm, Chinese postman problem; Matroids: greedy algorithm, intersection of two matroids ; Graph coloring ; Applications coming from various areas of Operations Research.
UE Optimization under uncertainty
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The objective of this course is to present different techniques to handle uncertainty in decision problems. These techniques will be illustrated on several applications e.g. inventory control, scheduling, energy, machine learning.
Syllabus : Introduction to uncertainty in optimization problems; Reminders (probability, dynamic programming, ...); Markov chains; Markov decision processes; Stochastic programming; Robust optimization
UE Constraint Programming, applications in scheduling
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Graph and discrete structures
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
The aim of this course is to learn how to use the structure of graphs and other discrete objects to obtain general results on them, and in particular efficient algorithms solving important problems.
We will cover the following topics:
- Structural Graph Theory: we will study the structure of important graph classes with nice algorithmic properties (planar graphs, interval graphs, comparability graphs, ...) and show several concrete problems that can be solved thanks to their structural properties.
- Graph Drawing: with the rise of Big Data, representing huge data sets is a fundamental challenge. Efficient ways to represent large graphs will be presented.
- Codes: we will see various codes (dominating, locating, identifying, ...) in graphs and their applications.
- Extremal combinatorics: the typical question in this field is "what global condition do we need to impose in some graph in order to make sure that some nice structure appears locally?" We will introduce a powerful tool called "the probabilistic method", an show how it can be applied to solve problems in this important area of research.
UE Advanced heuristic and approximation algorithms
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Advanced mathematical programming methods
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
UE Academic and industrial challenges
Niveau d'étude
Bac +5
ECTS
3 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
This course offers the possibility for the students to gain some experience by facing open/difficult combinatorial problems.
The goal is to model and solve a combinatorial problem with direct industrial applications. We expect the students to take a variety of approaches (local search, compact/extended linear programming formulations, constraint programming, ...) and establish useful results (lower bounds, cuts, complexity,...).
The experimental results will be compared to the litterature (a known academic open benchmark will be available in this case) or will be validated by the industrial partner.
UE Transport Logistics and Operations Research
Niveau d'étude
Bac +5
ECTS
6 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Automne (sept. à dec./janv.)
Presenting models and tools for solving problems of company location and transport management in a supply chain.
Description:
This course presents two aspects: strategic design of a distribution network in a supply chain and tactical-operational aspects of network management.
For each aspect the course develops two key points:
- in network design, the choice of location and the establishment of services (production site, warehouse, logistics platform) and the synthesis of the transport network (connections / roads between production sites, warehouses, logistics centres)
- in network management, planning and modes of distribution transport (planning delivery rounds, number and types of vehicles).
For each of the three problem areas: location, delivery rounds and network design, students will study both modelling and techniques for accurate resolution (Branch-and-Bound) plus techniques for approximate resolutions (Lagrangian relaxation , metaheuristics) and how they are set up in commercial software (OPL-CPLEX Studio, Excel solver), or free software (COIN, lp-solve) or ad-hoc.
Evaluation :
Individual written exam (1/2 of the final mark) and group project (1/2 of the final mark).
UE Stage
Niveau d'étude
Bac +5
ECTS
30 crédits
Composante
UFR IM2AG (informatique, mathématiques et mathématiques appliquées)
Période de l'année
Printemps (janv. à avril/mai)
Admission
Conditions d'admission
La deuxième année est accessible sur dossier (et / ou entretien) aux candidats ayant validé la 1re année d'un parcours compatible ou bien via une validation d'études ou d'acquis selon les conditions déterminées par l’université ou la formation.
Public formation continue : Vous relevez de la formation continue :
- si vous reprenez vos études après 2 ans d'interruption d'études
- ou si vous suiviez une formation sous le régime formation continue l’une des 2 années précédentes
- ou si vous êtes salarié, demandeur d'emploi, travailleur indépendant
Si vous n'avez pas le diplôme requis pour intégrer la formation, vous pouvez entreprendre une démarche de validation des acquis personnels et professionnels (VAPP)
Pour plus d'informations, consultez la page web de la Direction de la formation continue et de l’apprentissage
Candidature
Vous souhaitez candidater et vous inscrire ? Sachez que la procédure diffère selon le diplôme envisagé, le diplôme obtenu, ou le lieu de résidence pour les étudiants étrangers.
Et après
Poursuite d'études
Ce parcours permet une poursuite en thèse. Son fort encrage industriel permet en particulier aux étudiants de trouver dans de très bonnes conditions des thèses industrielles (Cifre, contrat…)
Secteur(s) d'activité(s)
- Ingénieur consultant recherche opérationnelle
- Ingénieur technico-commercial en logistique
- Ingénieur développement en optimisation
- Enseignant/chercheur en recherche opérationnelle et combinatoire
Métiers visés
Les étudiants sortant de ce parcours ont vocation à, en fonction de leurs préférences :
- S’orienter vers les métiers de la recherche (thèse académique ou industrielle)
- Intégrer, en tant qu’ingénieur spécialiste, des grands services de R&D en optimisation (SNCF, IBM, Air France, Amadeus etc)
- Intégrer des cabinets de conseil en optimisation (Eurodécision, Artelys etc)
Ils pourront aussi intégrer des entreprises moins spécialisées en mettant en avant leur capacité à analyser méthodologiquement les problèmes opérationnels et en s’affichant ainsi comme des éléments potentiels clefs dans l’amélioration des performances de l’entreprise (en faisant le lien avec les cabinets spécialisés ou en développant des méthodes en interne). A plus long terme, les étudiants qui s’orientent vers le monde industriel devraient pouvoir, fort de leur expérience dans l’amélioration des performances de l’entreprise et d’une bonne connaissance « métier », accéder naturellement à des postes de décideurs à haut niveau de responsabilité.