ECTS
6 crédits
Composante
UFR Sciences et Montagne
Description
Ce cours de Recherche Opérationnelle permet de comprendre les mathématiques qui permettent de résoudre des problèmes concrets à l’aide d’optimisation discrète et de programmer en Python ou MatLab les diverses méthodes.
Objectifs
L'objectif du cours est l'acquisition de certaines techniques de base en recherche opérationnelle : optimisation sous contraintes, modélisation mathématique, programmation par contraintes (principes de résolution, solveurs), programmation linéaire (algorithme du simplexe, dualité et analyse de sensibilité), optimisation combinatoire (méthodes énumératives, programmation dynamique, programmation linéaire en nombres entiers), techniques de résolution (complexité, méthodes exactes, méthodes approchées), applications (ordonnancement, transport, planification).
Heures d'enseignement
- CMCours Magistral24h
- TDTravaux Dirigés16,5h
- TPTravaux Pratiques16h
Pré-requis obligatoires
Optimisation convexe
Plan du cours
1) Théorie des graphes.
2) Codage des graphes.
3) Composantes connexes et parcours.
4) Algorithmes de plus courts chemins entre deux sommets (Dijkstra) et entre tous les sommets (Floyd).
5) Problème du voyageur de commerce : algorithme glouton, méthode du recuit simulé et algorithme par colonie de fourmis.
6) Programmation linéaire et méthode du simplexe
7) Méthodes de flot dans un graphe.
Compétences visées
Maîtriser les techniques de recherches opérationnelles.
Savoir programmer les différentes méthodes et également savoir utiliser les librairies disponibles en Python ou MatLab pour les résoudre.
Prendre un problème d’optimisation discrète et le modéliser pour pouvoir le résoudre.
Bibliographie
Précis de recherche opérationnelle ; méthodes et exercices d’application Robert Faure, Bernard Lemaire, Christophe Picouleau