Cours de recherche opérationnelle I

Dimension: px
Commencer à balayer dès la page:

Download "Cours de recherche opérationnelle I"

Transcription

1 1 Cours de recherche opérationnelle I Grenoble, Nadia.Brauner@g-scop.inpg.fr

2 Auteurs Ont participé à la rédaction de ce cours (par ordre d arrivée) Nadia Brauner Christophe Rapine Julien Moncel Laurent Beaudou Ont aidé, corrigé, relu et donné des idées Gerd Finke Yann Kieffer Van Dat Cung Ont donné les TD et proposé des exercices Ayse Akbalik Sergei Lenglet 2

3 Formations à Grenoble Formation initiale RO à l UJF (L3 info, M1 Info, L3 Miage, Polytech RICM2) Gestion de la production à l UJF (M1 Miage) Outils Formels et Graphes (Polytech RICM2) RO à l ENSIMAG (1A, 2A, LOSI) RO à l ENSGI (1A, 2A, LOSI) Master 2 Recherche Mathématiques et Informatique, Option Recherche Opérationnelle, Combinatoire et Optimisation Formation continue Recherche opérationnelle (tous les ans, 4 jours) Graphes et optimisation (tous les ans, 3 jours) 3

4 La recherche opérationnelle

5 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 5

6 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 6

7 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle ou Science de la Décision Définitions Cambridge Dictionary Operational research UK (US operations research) The systematic study of how best to solve problems in business and industry Wikipedia Operations research, operational research, or simply OR, is the use of mathematical models, statistics and algorithms to aid in decision-making Roadef Recherche Opérationnelle : approche scientifique pour la résolution de problèmes de gestion de systèmes complexes N. Brauner 7

8 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Définitions Méthodes scientifiques pour résoudre des problèmes d optimisation liés aux organisations du monde réel Une discipline à la croisée des mathématiques et de l informatique prolongement de l algorithmique manipulant des structures plus élaborées : graphes, polyèdres... domaine d application de la théorie de la complexité algorithmique Une boite à outils de méthodes, tant positives que négatives, pour aborder sainement et sereinement les problèmes d optimisation N. Brauner 8

9 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 9

10 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Voyageur de commerce (TSP) Un voyageur de commerce, basé à Toulon, doit visiter ses clients à travers la France. Il souhaite effectuer la tournée la plus courte possible. N. Brauner 10

11 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Voyageur de commerce Instance : n villes avec une matrice de distances Solution : tournée visitant chaque ville et revenant à Toulon N. Brauner 11

12 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Algorithme Glouton pour le TSP N. Brauner 12

13 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Applications Feuille de TD : Recherche opérationnelle, Introduction Exercice 1 : Vente de téléphones portables Exercice 2 : Transport de lecteurs MP3 N. Brauner 13

14 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Transport graphe biparti orienté avec pondération quantité d une marchandise aux sommets coûts de transport, distance sur les arcs trouver le meilleur plan de distribution a i i c ij j b j A B min c ij x ij x ij a i j B x ij b j i A x ij 0 N. Brauner 14

15 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Applications Feuille de TD : Recherche opérationnelle, Introduction Exercice 3 : Planification de projet N. Brauner 15

16 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Applications Plus court chemin Quel est le trajet le plus court entre Grenoble et Nice en voiture? N. Brauner 16

17 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle 24h de RO 8h : optimisation de la récolte et du dépôt des déchets recyclables... 15h : placement automatique des véhicules pour une association de partage de voitures 16h : gestion des retards dans les transports publics pour minimiser l impact sur les passagers... N. Brauner 17

18 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Domaines d application Conception, configuration et exploitation de systèmes techniques complexes (réseaux de communication, systèmes d information) gestion de la chaîne logistique (transports, production, stocks... ) gestion stratégique d investissements et aussi santé, instruction publique, voirie, ramassage et distribution de courrier, production et transport d énergie, télécommunications, banques, assurances... N. Brauner 18

19 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Domaines d application Production : maximiser le profit selon disponibilité de la main d œuvre, demande du marché, capacité de production, prix de revient du matériau brut... Transport : minimiser distance totale parcourue selon quantités de matériaux à transporter, capacité des transporteurs, points de ravitaillement en carburant... grande importance dans le milieu industriel : production, transport, emploi du temps, finance... N. Brauner 19

20 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 20

21 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Face à un problème pratique de décision Aspects mathématiques contraintes, objectifs, simplifications Modélisation graphes, programmation linéaire, PPC... Analyse des modèles et résolution étude de complexité : que peut-on espérer pour le temps de résolution imparti? mise au point d algorithmes Implémentation et analyse des résultats valider par rapport à la demande itérer avec le demandeur si nécessaire Déploiement des solutions Intégration logicielle N. Brauner 21

22 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 22

23 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Programmation linéaire min le coût / max le profit min / max c 1 x 1 + c 2 x 2... c n x n satisfaire la demande a 1 x 1 + a 2 x 2... a n x n b 1 avec des ressources limitées a 1 x 1 + a 2 x 2... a nx n b 1 quantités produites x 1, x 2... x n 0 N. Brauner 23

24 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Optimisation Combinatoire Trouver la meilleure solution parmi un nombre fini mais très grand de choix Un problème d OC se caractérise par : La présence de choix, à faire parmi un ensemble fini d alternatives Une notion de coût, ou de gain, ou de perte La nécessité de faire globalement les bons choix, de manière à optimiser la valeur objective exemples : emplois du temps... Combinatoire échiquier tronqué N. Brauner 24

25 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Graphes 5 sommet arête 3 Valuation des arêtes = coûts, temps, distance, capacités... meilleur chemin de i à j meilleurs parcours passant par chaque ville passant par chaque arête... N. Brauner 25

26 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle Autre Files d attente Stochastique Simulation À l interface de Informatique : algorithmique Mathématiques : modélisation Économie : gestion, stratégie N. Brauner 26

27 La Recherche Opérationnelle Applications Méthodologie Outils Références Plan 1 La Recherche Opérationnelle 2 Applications 3 Méthodologie 4 Outils 5 Références N. Brauner 27

28 La Recherche Opérationnelle Applications Méthodologie Outils Références Bibliographie de Werra, D., Liebling, T.-M., and Hêche, J.-F. Recherche Opérationnelle pour Ingénieurs, Tome 1. Presses Polytechniques et Universitaires Romandes, Sakarovitch, M. Optimisation Combinatoire, Graphes et Programmation Linéaire. Hermann, Enseignement des sciences, Paris, Sakarovitch, M. Optimisation Combinatoire, Programmation Discrète. Hermann, Enseignement des sciences, Paris, Wolsey, L. A. Integer Programming. Wiley-Interscience, N. Brauner 28

29 La Recherche Opérationnelle Applications Méthodologie Outils Références Webographie Cours La RO sur wikipedia Poly de cours Compléments au cours Vie de la RO en France Société française de RO Groupe de Recherche en RO du CNRS Séminaire de RO à Grenoble N. Brauner 29

30 La Recherche Opérationnelle Applications Méthodologie Outils Références Webographie Collection de ressources pour la RO Logiciels pour la RO Blogs sur la RO Problèmes difficiles N. Brauner 30

31 La Recherche Opérationnelle Applications Méthodologie Outils Références Entreprises françaises Des entreprises françaises spécialisées en RO EURODECISION Conseil en optimisation des ressources et planification de la production, outils d aide à la décision ILOG Optimization tools and engines, Visualization software components, Supply chain applications ARTELYS Solutions en optimisation Des entreprises grenobloises qui font de la RO Opti-time Equitime Alma N. Brauner 31

32 La Recherche Opérationnelle Applications Méthodologie Outils Références Entreprises françaises Des entreprises françaises qui ont un pôle R&D en RO Airfrance SNCF EDF/GDF France Telecom Bouygues Bouygues Telecom Amadeus N. Brauner 32

33 La Recherche Opérationnelle Applications Méthodologie Outils Références Recherche Opérationnelle En conclusion faire le mieux coût min, meilleur profit, plus courte distance, le plus rapide... avec les ressources disponibles temps machine, postes de travail, mémoire, ressource homme, matière première, camions... N. Brauner 33

34 Programmation par contraintes

35 Programmation par contrainte Modélisation Résolution Plan 6 Programmation par contrainte 7 Modélisation 8 Résolution N. Brauner 35

36 Programmation par contrainte Modélisation Résolution Sudoku Précis de Sudoku, N. Jussien N. Brauner 36

37 Programmation par contrainte Modélisation Résolution Sudoku et PPC Raisonnement par élimination on ne cherche pas directement une valeur pour les variables mais plutôt les valeurs qui peuvent être prises par une variable : réduction du domaine Raisonnement local : contraintes considérées indépendamment vérifier choix cohérents : tests satisfiabilité éliminer valeurs impossibles : filtrage Transmission des déductions aux autres régions les contraintes communiquent et interagissent par l intermédiaire des variables, lorsque le domaine courant d une variable change, toutes les contraintes dans lesquelles elles apparaissent sont réveillées : propagation = principes au cœur de la programmation par contraintes N. Brauner 37

38 Programmation par contrainte Modélisation Résolution On se trouve où? Un problème, une solution : la solution est-elle une solution du problème? simulation, vérification Un problème : trouver une solution du problème programmation par contrainte (CSP) Un problème : trouver la meilleure solution du problème programmation linéaire N. Brauner 38

39 Programmation par contrainte Modélisation Résolution Un premier exemple Domaine des variables x, y {0, } Contraintes x y = 6 x + y = 5 x > y N. Brauner 39

40 Programmation par contrainte Modélisation Résolution La PPC, qu est-ce que c est? Des idées en vrac Outil informatique pour résoudre des problèmes combinatoires Minimise l étape de conception : modélisation facile, langage proche des concepts des utilisateurs Contraindre = maintenir dans les limites permet d éliminer rapidement des solutions non réalisables Bien séparer modélisation et résolution Notion naturelle de contraintes : affecter stages à étudiants ranger des objets dans une boite planifier le trafic aérien établir un menu équilibré et appétissant N. Brauner 40

41 Programmation par contrainte Modélisation Résolution La PPC, qu est-ce que c est? Définition plus formelle CSP : ensemble de problèmes définis par des contraintes et consistant à chercher une solution les respectant Résolution d un CSP combinatoire : envisager très grand nombre de combinaisons avant d en trouver une qui satisfait toutes les contraintes Trop long introduire des raisonnements ou heuristiques pour réduire la combinatoire et orienter la recherche Solveur de contraintes : on décrit les contraintes et le solveur prend en charge automatiquement la résolution inspiré cours de Christine Solnon N. Brauner 41

42 Programmation par contrainte Modélisation Résolution Application de la PPC inspiré de Gilles Pesant Modélisation de gestion de projet Puzzle combinatoire Conception de matériel informatique vérification de circuits, connexions des couches de circuits moins efficace que le code dédié, mais plus flexible Placement d objets placement des containers dans un port remplissage des containers N. Brauner 42

43 Programmation par contrainte Mode lisation Re solution Application de la PPC Proble mes de de coupage Minimiser les pertes lors de la de coupe du papier, du verre, du bois, du me tal, etc. La performance de pend du contexte et de la difficulte des contraintes Papier : facile donc la programmation line aire fonctionne bien Pie ces me talliques : plus difficile donc utiliser la PPC Cuir et tissus : trop difficile seules les heuristiques fonctionnent N. Brauner 43

44 Programmation par contrainte Modélisation Résolution Application de la PPC Allocation d espace Portes pour les avions Quais pour les trains ou les bateaux Allocation de fréquences Trouver des fréquences radio pour les cellulaires, les communications radios, l armée, etc. Ordonnancement de la production Planifier des tâches sur des machines dans une usine Plus important succès de la PPC Librairies dédiés à l ordonnancement (ex. ILOG Scheduler) Conception d horaires académiques Planifier l horaire des cours ou des examens, en tenant compte des différentes ressources (étudiants, professeurs, locaux) N. Brauner 44

45 Programmation par contrainte Modélisation Résolution Application de la PPC Tournée de véhicules Confection de routes sujet à beaucoup de contraintes. Librairies spécialisées, contraintes dédiées Construction d horaires de personnel Affecter les gens à des tâches précises Santé, commerce de détail, usine, etc. Permet de modéliser les contraintes complexes N. Brauner 45

46 Programmation par contrainte Modélisation Résolution Plan 6 Programmation par contrainte 7 Modélisation 8 Résolution N. Brauner 46

47 Programmation par contrainte Modélisation Résolution La programmation par contraintes Objectif Trouver une solution réalisable Qui respecte des contraintes faciles à vérifier Formules mathématiques simples, tableaux de valeurs possibles Avec des ensembles de valeurs possibles pour les variables de décision N. Brauner 47

48 Programmation par contrainte Modélisation Résolution Domaines Définition X 1, X 2... X n les variables de décision Domaine La variable X i doit prendre ses valeurs dans le domaine D i discret fini ou infini N. Brauner 48

49 Programmation par contrainte Modélisation Résolution Domaines Exercice Sont-ce des domaines? {1, 2, 3, 4} L ensemble des entiers naturels. L ensemble des réels Les entiers naturels impairs L intervalle [ 1, 1] Les points à coordonnées entières du plan N. Brauner 49

50 Programmation par contrainte Modélisation Résolution Contraintes C est quoi? Variables Domaines } Contraintes Une contrainte restreint les valeurs que l on peut affecter simultanément à des variables Exemples : 2x + 3y = 12 3x 2 = 3 A B C x 3y (ABC) forme un triangle isocèle x, y, z distincts deux à deux N. Brauner 50

51 Programmation par contrainte Modélisation Résolution Contraintes Déclaration d une contrainte 2 types de déclaration : extension : on énumère les valeurs admises (x = 1 et y = 2) ou (x = 2 et y = 4) ou (x = 3 et y = 0) intension : on utilise les signes mathématiques connus x < y N. Brauner 51

52 Programmation par contrainte Modélisation Résolution Contraintes Caractéristiques des contraintes Relationnelle : non dirigée comme une fonction qui définit la valeur d une variable en fonction des autres variables x 2y = z permet de déterminer z si x et y sont connues mais aussi x si y et z sont connues et y si x et z sont connues déclarative : spécifie la relation entre les variables, sans donner de procédure pour assurer/vérifier cette relation x 2y = z, on ne s occupe pas de donner un algorithme permettant de résoudre cette équation ordre des contraintes non significatif N. Brauner 52

53 Programmation par contrainte Modélisation Résolution Contraintes Arité d une contrainte : le nombre de variables dans la contrainte unaire : arité = 1 x x = 4 ou est-un-triangle(y) binaire : arité = 2 x y ou A B = A ternaire : arité = 3 x + y < 3 z 4 ou (non x) ou y ou z = vrai n-aire : arité = n Si n est le nombre de variables : contrainte globale toutesdifférentes(e), où E est un ensemble de variables N. Brauner 53

54 Programmation par contrainte Modélisation Résolution Contraintes Exemples supplémentaires Contraintes logiques Si x = 4 alors y = 5 x = y ou x = 2y Contraintes globales Toutes les variables sont différentes Méta-contraintes La valeur 5 est utilisée exactement 3 fois N. Brauner 54

55 Programmation par contrainte Modélisation Résolution Problème de satisfaction de contraintes (X, D, C) tel que X = {X 1, X 2,..., X n } D = {D 1, D 2,..., D n } C = {C 1, C 2,..., C m } l ensemble des variables où D i est le domaine de X i l ensemble des contraintes Exemple X = {a, b, c, d} D(a) = D(b) = D(c) = D(d) = {0, 1} C = {a b, c d, a + c < b} N. Brauner 55

56 Programmation par contrainte Modélisation Résolution Solution d un CSP Une affectation est le fait d instancier des variables. A = {(X 1, V 1 ), (X 3, V 3 ), (X 4, V 4 )} associe la valeur V 1 de D 1 à la variable X 1... Une affectation est : partielle ou totale consistante ou inconsistante Une solution est une affectation totale consistante N. Brauner 56

57 Programmation par contrainte Modélisation Résolution Solution d un CSP Problème X = {a, b, c, d} D(a) = D(b) = D(c) = D(d) = {0, 1} C = {a b, c d, a + c < b} A 1 = {(a, 1), (b, 0), (c, 0), (d, 0)} A 2 = {(a, 0), (b, 0)} A 3 = {(a, 1), (b, 0)} A 4 = {(a, 0), (b, 1), (c, 0), (d, 1)} N. Brauner 57

58 Programmation par contrainte Modélisation Résolution Le jeu du : CSP, pas CSP! Connaissant les pièces de mon porte-monnaie, puis-je rendre exactement 8 euros et 57 centimes? Connaissant les pièces de mon porte-monnaie, quelle est la meilleure façon de rendre 8 euros et 57 centimes? Est-il possible de colorier une carte avec 5 couleurs sans frontière monochrome? Sur un cercle, trouver un point à distance 2 d une droite. N. Brauner 58

59 Programmation par contrainte Modélisation Résolution CSP CSP surcontraint : n a pas de solution trouver une affectation totale qui maximise le nombre de contraintes satisfaites = max-csp affecter un poids à chaque contrainte (proportionnel à l importance de cette contrainte) et chercher une affectation totale qui minimise la somme des poids des contraintes violées = CSP valué (VCSP) CSP sous-contraint : admet beaucoup de solutions différentes, préférences entre les différentes solutions (fonction qui associe une valeur numérique à chaque solution) et trouver une solution du CSP qui maximise cette fonction = CSOP (Constraint Satisfaction Optimisation Problem) N. Brauner 59

60 Programmation par contrainte Modélisation Résolution Plan 6 Programmation par contrainte 7 Modélisation 8 Résolution N. Brauner 60

61 Programmation par contrainte Modélisation Résolution Un constat Un problème est rarement donné sous la forme d un CSP N. Brauner 61

62 Programmation par contrainte Modélisation Résolution Le problème des reines Jeu : placer 4 reines sur un échiquier 4 4 sans qu elles ne se menacent Modélisation variables L 1, L 2, L 3, L 4 et C 1, C 2, C 3, C 4 domaines L i {1, 2, 3, 4} et C i {1, 2, 3, 4} contraintes lignes, colonnes et diagonales différentes. N. Brauner 62

63 Programmation par contrainte Modélisation Résolution Modélisation Attention Il n y a pas qu une modélisation possible! Modélisation variables L 1, L 2, L 3, L 4 domaines L i {1, 2, 3, 4} contraintes i j, L i L j i j, L i + i L j + j L i i L j j N. Brauner 63

64 Programmation par contrainte Modélisation Résolution Modélisation Autre modélisation pour le problème des reines? N. Brauner 64

65 Programmation par contrainte Modélisation Résolution Modélisation Quelle est la meilleure modélisation? 1 Celle qui modélise le mieux la réalité du problème 2 Celle qui est la plus facile à trouver 3 Celle qui permettra de résoudre le problème le plus efficacement N. Brauner 65

66 Programmation par contrainte Modélisation Résolution Exercice : le retour de monnaie On s intéresse à un distributeur automatique de boissons. L utilisateur insère des pièces de monnaie pour un total de T centimes d Euros, puis il sélectionne une boisson, dont le prix est de P centimes d Euros (T et P étant des multiples de 10). Il s agit alors de calculer la monnaie à rendre, sachant que le distributeur a en réserve E 2 pièces de 2=C, E 1 pièces de 1=C, C 50 pièces de 50 centimes, C 20 pièces de 20 centimes et C 10 pièces de 10 centimes. Modélisez ce problème sous la forme d un CSP. N. Brauner 66

67 Programmation par contrainte Modélisation Résolution Correction : le retour de monnaie N. Brauner 67

68 Programmation par contrainte Modélisation Résolution Exercice : Send More Money On considère l addition suivante : S E N D + M O R E = M O N E Y où chaque lettre représente un chiffre différent (compris entre 0 et 9). On souhaite connaître la valeur de chaque lettre, sachant que la première lettre de chaque mot représente un chiffre différent de 0. Modélisez ce problème sous la forme d un CSP. N. Brauner 68

69 Programmation par contrainte Modélisation Résolution Correction : Send More Money N. Brauner 69

70 Programmation par contrainte Modélisation Résolution Plan 6 Programmation par contrainte 7 Modélisation 8 Résolution N. Brauner 70

71 Programmation par contrainte Modélisation Résolution Résolution naïve Énumération On génère toutes les affectations totales possibles On vérifie si elles sont consistantes si on en trouve une consistante, c est gagné Avantage : très facile à mettre en œuvre Inconvénient : très gourmand en ressource temps N. Brauner 71

72 Programmation par contrainte Modélisation Résolution Résolution naïve Un problème à n variables qui peuvent prendre 2 valeurs affectations traitées par seconde. n nb d affectations temps d où l intérêt de bien choisir la modélisation N. Brauner 72

73 Programmation par contrainte Modélisation Résolution Les remèdes S arrêter quand une affectation partielle est inconsistante backtrack Restreindre les domaines des variables durant l exécution propagation de contraintes Utiliser des heuristiques Utiliser nos connaissances sur le problème étudié... N. Brauner 73

74 Programmation par contrainte Modélisation Résolution Backtrack Principe : On parcourt l arbre des affectations en profondeur Lorsqu une affectation partielle est inconsistante, on n explore pas le sous-arbre correspondant N. Brauner 74

75 Programmation par contrainte Modélisation Résolution Backtrack : jeu de dames Exemple d exécution N. Brauner 75

76 Programmation par contrainte Modélisation Résolution Backtrack Backtrack Moins d affectations considérées Toutes les contraintes sont testées à chaque affectation même partielle Facile à mettre en œuvre Importance de l ordre des variables Méthode naïve Toutes les affectations sont considérées On ne teste les contraintes que sur les affectations totales Très facile à mettre en œuvre N. Brauner 76

77 Programmation par contrainte Modélisation Résolution Propagation des contraintes Principe : On restreint le domaine d une variable avec les contraintes, on restreint les autres domaines Exemple 0 < x 10 et 3 y 9 contrainte : x > y Alors on peut restreindre le domaine de x à 4 x 10 N. Brauner 77

78 Programmation par contrainte Modélisation Résolution Propagation des contraintes Idée : à partir d un CSP, on cherche un CSP équivalent avec des domaines plus petits On propage : Quand un domaine est réduit Quand une des bornes du domaine est changée Quand un domaine est un singleton On propage : Une fois : nœud-consistance Deux fois : arc-consistance Ou plus... N. Brauner 78

79 Programmation par contrainte Modélisation Résolution Propagation des contraintes Nœud-consistance Formellement, un CSP (X, D, C) est consistant de nœud si pour toute variable X i de X, et pour toute valeur v de D(X i ), l affectation partielle (X i, v) satisfait toutes les contraintes unaires de C. Algorithmiquement, pour chaque variable X i non affectée dans A, on enlève de D(X i ) toute valeur v telle que l affectation A {(X i, v)} est inconsistante. N. Brauner 79

80 Programmation par contrainte Modélisation Résolution Propagation des contraintes Nœud-consistance N. Brauner 80

81 Programmation par contrainte Modélisation Résolution Propagation des contraintes Arc-consistance Formellement, un CSP (X, D, C) est consistant d arc si pour tout couple de variables (X i, X j ) de X, et pour toute valeur v i appartenant à D(X i ), il existe une valeur v j appartenant à D(X j ) telle que l affectation partielle {(X i, v i ), (X j, v j )} satisfasse toutes les contraintes binaires de C. Algorithmiquement, pour chaque variable X i non affectée dans A, on enlève de D(X i ) toute valeur v telle qu il existe une variable X j non affectée pour laquelle, pour toute valeur w de D(X j ), l affectation A {(X i, v), (X j, w)} soit inconsistante. N. Brauner 81

82 Programmation par contrainte Modélisation Résolution Propagation des contraintes Arc-consistance : exemple d exécution N. Brauner 82

83 Programmation par contrainte Modélisation Résolution Propagation de contraintes Nœud-consistance : Arc-consistance : Moins d affectations considérées Toutes les contraintes sont testées à chaque affectation même partielle Facile à mettre en œuvre Beaucoup moins d affectations considérées Établir l arc-consistance peut prendre beaucoup de temps selon les contraintes. Moins facile à mettre en œuvre N. Brauner 83

84 Programmation par contrainte Modélisation Résolution Systèmes Systèmes basés sur la programmation logique ECLiPSE Prolog GNU Prolog Systèmes basés sur des librairies ILOG soveur (C++) Choco (Java) Facile (Ocaml) N. Brauner 84

85 Exercice : Affectation de stock N entrepôts (coût d ouverture ouvre(i) ) M boutiques coûts d acheminement de chaque entrepôt à chaque boutique transfert(i, j) capacité : chaque entrepôt ne peut fournir qu un certain nombre de boutiques cap(i) Question : avec un budget de mille euros, puis-je subvenir aux besoins de mes boutiques? N. Brauner 85

86 Correction : Affectation de stock N. Brauner 86

87 Programmation linéaire

88 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Plan 9 Introduction à la programmation linéaire 10 Interprétation géométrique 11 Bases et points extrêmes 12 L algorithme du simplexe N. Brauner 88

89 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Plan 9 Introduction à la programmation linéaire 10 Interprétation géométrique 11 Bases et points extrêmes 12 L algorithme du simplexe N. Brauner 89

90 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Cadre de la PL Programmation linéaire nombre fini de variables réelles, contraintes linéaires, objectif linéaire Variables x 1, x 2... x n réelles Contrainte générique (contrainte i) : n a ij x j b i j=1 Fonction-objectif générique (à maximiser / minimiser) : n f (x 1, x 2... x n ) = c j x j j=1 N. Brauner 90

91 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Exemple : culture de courgettes et navets Contraintes concernant les quantités d engrais et d anti-parasites 8l engrais A disponible 2l/m 2 nécessaires pour courgettes, 1l/m 2 pour navets 7l engrais B disponible 1l/m 2 nécessaires pour courgettes, 2l/m 2 pour navets 3l anti-parasites disponible 1l/m 2 nécessaires pour navets Objectif : produire le maximum (en poids) de légumes, sachant que rendements = 4kg/m 2 courgettes, 5kg/m 2 navets N. Brauner 91

92 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Exemple : culture de courgettes et navets Variables de décision x c : surface de courgettes x n : surface de navets Fonction objectif max 4x c + 5x n Contraintes 2x c + x n 8 (engrais A) x c + 2x n 7 (engrais B) x n 3 (anti-parasites) x c 0 et x n 0 N. Brauner 92

93 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Intérêt de la PL Problème général d optimisation sous contraintes AUCUNE méthode GÉNÉRALE de résolution!! Problème linéaire quelconque existence de méthodes de résolution générales et efficaces Ces méthodes sont efficaces en théorie et en pratique existence de nombreux logiciels de résolution : Excel, CPLEX, Mathematica, LP-Solve... Cadre restrictif variables réelles contraintes linéaires objectif linéaire N. Brauner 93

94 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Représentation in extenso max 4x c + 5x n 2x c + x n 8 (engrais A) x c + 2x n 7 (engrais B) x n 3 (anti-parasites) x c 0 et x n 0 Représentation matricielle ( ) xc max (4 5) ( xc x n x n ) x c 0 x n 0 N. Brauner 94

95 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Représentation in extenso max z = s.c. j c jx j j a ijx j = b i i = 1, 2... m x j 0 j = 1, 2... n N. Brauner 95

96 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire second membre b = b 1 b 2. b m matrice de format m n a 11 a a 1n a 21 a a 2n A =... a m1 a m2... a mn coût (ou profit) c = (c 1, c 2... c n ) n var. de décision X = Représentation matricielle max z = cx s.c. Ax = x 1 x 2. x n b x 0 N. Brauner 96

97 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Vocabulaire x i variable de décision du problème x = (x 1,..., x n ) solution réalisable (admissible) ssi elle satisfait toutes les contraintes ensemble des solutions réalisables = domaine ou région admissible x = (x 1,..., x n ) solution optimale ssi elle est réalisable et optimise la fonction-objectif contraintes inégalité ou égalité linéaire a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 a 31 x 1 + a 32 x a 3n x n = b 3 fonction objectif (ou fonction économique) linéaire max / min c 1 x 1 + c 2 x c n x n N. Brauner 97

98 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Applications Feuille de TD : Programmation linéaire, Modélisation Exercice 1 : Production de vins Exercice 2 : Fabrication d huile d olives Exercice 3 : Compagnie aérienne Exercice 4 : Publicité N. Brauner 98

99 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Forme canonique d un PL maximisation toutes les variables sont non négatives toutes les contraintes sont des inéquations du type max z = j c jx j s.c. j a ijx j b i i = 1, 2... m forme matricielle x j 0 j = 1, 2... n max z = cx s.c. Ax b x 0 N. Brauner 99

100 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Forme standard d un PL maximisation toutes les variables sont non négatives toutes les contraintes sont des équations max z = j c jx j s.c. j a ijx j = b i i = 1, 2... m forme matricielle x j 0 j = 1, 2... n max z = cx s.c. Ax = b x 0 N. Brauner 100

101 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Passage entre les formes équation inéquation ax = b { ax b ax b max min max f (x) = min f (x) inéquation équation : ajouter une variable d écart ax b ax + s = b, s 0 ax b ax s = b, s 0 variable non contrainte variables positives x 0 { x = x + x x +, x 0 N. Brauner 101

102 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Passage entre les formes Feuille de TD : Programmation linéaire, Résolution Exercice 1 N. Brauner 102

103 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Linéariser un problème non linéaire e i : expression linéaire des variables de décision obj : min max{e 1, e 2... e n } { min y y e i i = 1, 2... n obj : max min{e 1, e 2... e n } { max y y e i i = 1, 2... n obj : min e 1 e = max(e, e) min y y e 1 y e 1 min e + + e e 1 = e + e e +, e 0 N. Brauner 103

104 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Linéariser un problème non linéaire Feuille de TD : Programmation linéaire, Résolution Exercice 2 N. Brauner 104

105 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Un peu d histoire années : Kantorovitch, économiste soviétique modèles linéaires pour la planification et l optimisation de la production années : Dantzig, mathématicien américain algorithme du simplexe application historique Opérations Vittles et Plainfare pour ravitaillement de la trizone pendant le blocus de Berlin par pont aérien (23 juin mai 1949) simplexe exécuté à la main (des milliers de variables), jusqu à tonnes de matériel par jour! 1975 : prix Nobel économie Kantorovitch XXIème siècle : logiciels de PL disponibles partout, utilisation de la PL dans tous les domaines industriels... N. Brauner 105

106 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Plan 9 Introduction à la programmation linéaire 10 Interprétation géométrique 11 Bases et points extrêmes 12 L algorithme du simplexe N. Brauner 106

107 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Interprétation géométrique Exemple : culture de courgettes et navets Variables de décision x c : surface de courgettes x n : surface de navets Fonction objectif max 4x c + 5x n Contraintes 2x c + x n 8 (engrais A) x c + 2x n 7 (engrais B) x n 3 (anti-parasites) x c 0 et x n 0 N. Brauner 107

108 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Interprétation géométrique Interpréter les contraintes courgettes et navets 2x + y 8 demi-plan de R 2 x + 2y 7 demi-plan y 3 demi-plan x 0 et y 0 demi-plans Ensemble des solutions réalisables = intersection de ces demi-plans : polyèdre y x N. Brauner 108

109 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Interprétation géométrique Optimiser l objectif Les lignes de niveau {4x + 5y = constante} sont des droites parallèles y 4x 5y=10 4x 5y=18 4x 5y=22 4x 5y=25 x N. Brauner 109

110 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Interprétation géométrique Géométrie d un PL L ensemble des solutions réalisables est toujours un polyèdre (intersection de demi-espaces) Les lignes de niveau {f = constante} de la fonction-objectif f sont des hyperplans affines (n = 2 droite, n = 3 plan...) N. Brauner 110

111 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Interprétation géométrique Géométrie d un PL Optimum atteint au bord L optimum de la fonction-objectif, s il existe, est atteint en (au moins) un sommet du polyèdre. Justification mathématique : les dérivées partielles de f (x) = c.x ne s annulent jamais, et le domaine {x n j=1 a ijx j b i, i = 1,..., m} est compact l optimum est atteint au bord... N. Brauner 111

112 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Programmation linéaire Solutions d un PL La région admissible peut être vide nb solutions optimales : 0 non vide, bornée nb solutions optimales : 1 ou non vide, non bornée nb solutions optimales : 0 ou 1 ou Proposer des exemples de PL pour chacun des cas Feuille de TD : Programmation linéaire, Résolution Exercice 3 N. Brauner 112

113 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Plan 9 Introduction à la programmation linéaire 10 Interprétation géométrique 11 Bases et points extrêmes 12 L algorithme du simplexe N. Brauner 120

114 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Rappels max z = cx s.c. Ax b x 0 Les contraintes définissent un polyèdre A matrice m n x = (x 1 x 2... x n ) b = (b 1 b 2... b m ) c = (c 1 c 2... c n ) La solution optimale est un sommet du polyèdre Comment énumérer les sommets d un polyèdre? N. Brauner 121

115 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Passage à la forme standard Forme standard On peut rajouter des variables d écart : n a ij x j b i j=1 n a ij x j + e i = b i, e i 0 j=1 PL standard : max z(x) = c.x s.c Ax = b x 0 On travaille dans un espace de dimension plus grande, mais toutes les contraintes sont des égalités. Manipulations algébriques plus aisées N. Brauner 122

116 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Passage à la forme standard max z = 4x + 5y s.c. 2x + y 8 x + 2y 7 y 3 x, y 0 y max z = 4x + 5y s.c. 2x + y + e 1 = 8 x + 2y + e 2 = 7 y + e 3 = 3 x, y, e 1, e 2, e points intéressants (intersection de contraintes) 5 points admissibles x énumération de ces 9 points comme solution de la forme standard (solutions de base) N. Brauner 123

117 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes s.c. 2x + y + e 1 = 8 x + 2y + e 2 = 7 y + e 3 = 3 x, y, e 1, e 2, e 3 0 x y e 1 e 2 e 3 sol de base admiss. pt extrême (0,0) (0,3) (4,0) (3,2) (1,3) {points extrêmes} {solutions de base admissibles} N. Brauner 124

118 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Système linéaire Ax=b A format m n, rang A = m n Base de A : sous-matrice B(m m) inversible de A A = (B, N) ( ) xb (B, N) = b ou Bx B + Nx N = b x N x B = B 1 b B 1 Nx N Solution de base associée à B : x N = 0 variables hors base x B = B 1 b variables de base N. Brauner 125

119 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Base et solution de base 2x + y + e 1 = 8 x + 2y + e 2 = 7 y + e 3 = 3 x, y, e 1, e 2, e 3 0 Base initiale? {e 1, e 2, e 3 } par exemple : 2x + y + e 1 = 8 x + 2y + e 2 = 7 y + e 3 = 3 e 1 = 8 2x y e 2 = 7 x 2y e 3 = 3 y e 1, e 2, e 3 = variables de base, x, y = variables hors base N. Brauner 126

120 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Base et solution de base e 1 = 8 2x y e 2 = 7 x 2y e 3 = 3 y on met les variables hors base à 0 on en déduit les valeur des variables de base e 1 = 8 2x y = 8 x = y = 0 e 2 = 7 x 2y = 7 e 3 = 3 y = 3 N. Brauner 127

121 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Ax = b, x 0 (x B, 0) associée à B est une solution de base admissible si x B 0 {points extrêmes du polyèdre} {solutions de base admissibles du système linéaire correspondant} nombre de points extrêmes C m n = n! m!(n m)! solution de base dégénérée : certaines variables de base sont nulles si A est inversible : solution de base unique N. Brauner 128

122 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Base voisine et pivotage Bases voisines Deux sommets voisins correspondent à deux bases B et B telles qu on remplace une variable de B pour obtenir B passer à un sommet voisin = changer de base (base voisine) principe du pivotage N. Brauner 129

123 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Bases et points extrêmes Qui faire entrer dans la base? Essayons avec y : quelle est la valeur max que pourra avoir y? e 1 = 8 2x y 0 y 8 e 2 = 7 x 2y 0 y 3.5 e 3 = 3 y 0 y 3 Bilan : y max = 3, pour y = y max on a e 1 = 5 2x, e 2 = 1 x, et e 3 = 0 candidat pour une nouvelle base : {e 1, e 2, e 3 } {y} \ {e 3 } = {e 1, e 2, y} (x, y, e 1, e 2, e 3 ) = (0, 3, 5, 1, 0) N. Brauner 130

124 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe Plan 9 Introduction à la programmation linéaire 10 Interprétation géométrique 11 Bases et points extrêmes 12 L algorithme du simplexe N. Brauner 131

125 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Vers un algorithme de résolution Méthode de résolution naïve : énumérer tous les sommets, calculer f sur ces points, prendre le sommet pour lequel f est optimisé : fonctionne : nombre fini de sommets limitation : ce nombre peut être très grand en général... L algorithme du simplexe (G. B. Dantzig 1947) Algorithme itératif permettant de résoudre un problème de programmation linéaire. N. Brauner 132

126 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Principe d amélioration locale À partir d un sommet, chercher un sommet voisin qui améliore l objectif. Principe d amélioration locale (maximisation) : Soit x 0 sommet non optimum. Alors il existe x, un sommet voisin de x 0, tel que f (x) > f (x 0 ). Méthode de résolution : on part d un sommet x 0 quelconque, on passe à un sommet voisin pour lequel f augmente, et ainsi de suite. Remarque : on passe d un problème continu (variables réelles) à un problème discret (nombre fini de sommets)... N. Brauner 133

127 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Illustration 2D : courgettes et navets x 0 = (0, 0), z = 0 x = (0, 3), z = 15 x 0 = (0, 3), z = 15 x = (1, 3), z = 19 x 0 = (1, 3), z = 19 x = (3, 2), z = 22 y z = 4x + 5y x = 3,2, z =22 x plus d amélioration locale possible optimum N. Brauner 134

128 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Illustration concrète Standardisation : Maximiser z = 4x + 5y 2x + y 8 x + 2y 7 s.c. y 3 x, y 0 Maximiser z = 4x + 5y 2x + y + e 1 = 8 x + 2y + e s.c. 2 = 7 y + e 3 = 3 x, y, e 1, e 2, e 3 0 Base initiale? {e 1, e 2, e 3 } par exemple : 2x + y + e 1 = 8 x + 2y + e 2 = 7 y + e 3 = 3 e 1 = 8 2x y e 2 = 7 x 2y e 3 = 3 y e 1, e 2, e 3 = variables de base, x, y = variables hors base N. Brauner 135

129 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Solution de base associée on met les variables hors base à 0 on en déduit : valeur des variables de base valeur de z e 1 = 8 2x y = 8 ici : x = y = 0 e 2 = 7 x 2y = 7 e 3 = 3 y = 3 et z = 4x + 5y = 0 N. Brauner 136

130 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Changement de base Observation essentielle : z = 4x + 5y = 0 on peut augmenter z si x ou y rentre dans la base. Essayons avec y : quelle est la valeur max que pourra avoir y? e 1 = 8 2x y 0 y 8 e 2 = 7 x 2y 0 y 3.5 e 3 = 3 y 0 y 3 Bilan : y max = 3, pour y = y max on a e 1 = 5 x, e 2 = 1 x, et e 3 = 0 candidat pour une nouvelle base : {e 1, e 2, e 3 } {y} \ {e 3 } = {e 1, e 2, y} N. Brauner 137

131 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Nouvelle base {e 1, e 2, y} e 1 = 8 2x y e 2 = 7 x 2y e 3 = 3 y e 1 = 8 2x y = 5 2x + e 3 e 2 = 7 x 2y = 1 x + 2e 3 y = 3 e 3 Exprimons z en fonction des variables hors base z = 4x + 5y = x 5e 3 Solution de base associée e 1 = 5 2x + e 3 = 5 x = e 3 = 0 e 2 = 1 x + 2e 3 = 1 y = 3 e 3 = 3 et z = 15 N. Brauner 138

132 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Itération z = x 5e 3 peut encore augmenter si x entre dans la base Si x entre, qui sort? Valeur max de x : e 1 = 5 2x + e 3 0 x 2.5 e 2 = 1 x + 2e 3 0 x 1 y = 3 e 3 0 aucune contrainte sur x Bilan : x max = 1 et e 2 sort. Nouvelle base {e 1, y, x} e 1 = 3 + 2e 2 3e 3 x = 1 e 2 + 2e 3 y = 3 e 3 z = 19 4e 2 + 3e 3 N. Brauner 139

133 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Itération (suite) z = 19 4e 2 + 3e 3 peut encore augmenter si e 3 entre dans la base Si e 3 entre, qui sort? Valeur max de e 3 : e 1 = 3 + 2e 2 3e 3 0 e 3 1 x = 1 e 2 + 2e 3 0 aucune contrainte sur e 3 y = 3 e 3 0 e 3 3 Bilan : e 3max = 1, e 1 sort. Nouvelle base {e 3, y, x} : e 3 = 1 + 2/3e 2 1/3e 1 x = 3 + 1/3e 2 2/3e 1 y = 2 2/3e 2 + 1/3e 1 z = 22 2e 2 e 1 N. Brauner 140

134 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Terminaison On a z = 22 2e 2 e 1, donc z 22 Or la solution de base x = 3, y = 2, e 3 = 1 donne z = 22 optimum La condition de terminaison concerne les coefficients de z exprimée avec les variables hors base. N. Brauner 141

135 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe max z = 20x x 2 s.c. x 1 + 2x x 1 + x x 1 70 x 2 50 x 1, x 2 0 forme standard max z s.c. z 20x 1 10x 2 = 0 x 1 + 2x 2 + s 1 = 120 x 1 + x 2 + s 2 = 100 x 1 + s 3 = 70 x 2 + s 4 = 50 N. Brauner 142

136 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Forme standard max z s.c. z 20x 1 10x 2 = 0 x 1 + 2x 2 + s 1 = 120 x 1 + x 2 + s 2 = 100 x 1 + s 3 = 70 x 2 + s 4 = 50 Forme tableau z x 1 x 2 s 1 s 2 s 3 s 4 z s s s s N. Brauner 143

137 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Coûts réduits B, une base de Ax = b la fonction objectif : z = cx = c B x B + c N x N = c B B 1 b (c B B 1 N c N )x N n = z 0 (c B B 1 a j c j )x j = z 0 j=1 n (z j c j )x j j=1 z j c j = c B B 1 a j c j est le coût réduit de la variable hors base x j N. Brauner 144

138 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe à chaque itération z x N x B z 1 coûts réduits 0 z 0 0 x B.... Id + 0 à l optimum z x N x B z z0 0 x B.... Id + 0 N. Brauner 145

139 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Principe heuristique : faire rentrer en base la variable avec le coefficient le plus négatif x 1 z x 1 x 2 s 1 s 2 s 3 s 4 z s s s s Qui faire sortir? N. Brauner 146

140 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe Principe du quotient minimal colonne pivot x 1 second membre 0 quotient a 1 0 b 1 - b a 2 > 0 b 2 2 a 2 b a 3 > 0 b 3 3 a 3 a 4 = 0 b 4 - { } ligne r = min bi a i a i > 0 faire sortir s 3 b r a r z x 1 x 2 s 1 s 2 s 3 s 4 z s s s s N. Brauner 147

141 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe exprimer la contrainte z avec les variables hors base x 2 et s 3 z 10x s 3 = 1400 diviser la ligne pivot par le coefficient de la variable entrante x 1 + s 3 = 70 supprimer x 1 des autres contraintes 2x 2 + s 1 s 3 = 50 c a.. ligne pivot p b colonne pivot x 2 + s 2 s 3 = 30 = a a b p c N. Brauner 148

142 Programmation linéaire Interprétation géométrique Bases et points extrêmes L algorithme du simplexe L algorithme du simplexe z x 1 x 2 s 1 s 2 s 3 s 4 z s s x s x 1, s 1, s 2, s 4 en base et x 2, s 3 hors base sol de base (70, 0, 50, 30, 0, 50) de valeur 1400 Faire rentrer x 2 quotient min faire sortir s 1 N. Brauner 149

Programmation par contraintes. Laurent Beaudou

Programmation par contraintes. Laurent Beaudou Programmation par contraintes Laurent Beaudou On se trouve où? Un problème, une solution : la solution est-elle une solution du problème? simulation, vérification 2 On se trouve où? Un problème, une solution

Plus en détail

Cours de recherche opérationnelle I

Cours de recherche opérationnelle I 1 Cours de recherche opérationnelle I Nadia Brauner Nadia.Brauner@imag.fr Grenoble, 2014-2015 Auteurs Ont participé à la rédaction de ce cours (par ordre d arrivée) Nadia Brauner Christophe Rapine Julien

Plus en détail

Programmation Linéaire - Cours 1

Programmation Linéaire - Cours 1 Programmation Linéaire - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Programmation linéaire

Programmation linéaire Programmation linéaire DIDIER MAQUIN Ecole Nationale Supérieure d Electricité et de Mécanique Institut National Polytechnique de Lorraine Mathématiques discrètes cours de 2ème année Programmation linéaire

Plus en détail

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA

Exercices du Cours de la programmation linéaire donné par le Dr. Ali DERBALA 75. Un plombier connaît la disposition de trois tuyaux sous des dalles ( voir figure ci dessous ) et il lui suffit de découvrir une partie de chacun d eux pour pouvoir y poser les robinets. Il cherche

Plus en détail

Programmation Par Contraintes

Programmation Par Contraintes Programmation Par Contraintes Cours 2 - Arc-Consistance et autres amusettes David Savourey CNRS, École Polytechnique Séance 2 inspiré des cours de Philippe Baptiste, Ruslan Sadykov et de la thèse d Hadrien

Plus en détail

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires Julien Jorge, Xavier Gandibleux Laboratoire d Informatique de Nantes Atlantique

Plus en détail

OUTILS EN INFORMATIQUE

OUTILS EN INFORMATIQUE OUTILS EN INFORMATIQUE Brice Mayag brice.mayag@dauphine.fr LAMSADE, Université Paris-Dauphine R.O. Excel brice.mayag@dauphine.fr (LAMSADE) OUTILS EN INFORMATIQUE R.O. Excel 1 / 35 Plan Présentation générale

Plus en détail

Programmation linéaire et Optimisation. Didier Smets

Programmation linéaire et Optimisation. Didier Smets Programmation linéaire et Optimisation Didier Smets Chapitre 1 Un problème d optimisation linéaire en dimension 2 On considère le cas d un fabricant d automobiles qui propose deux modèles à la vente, des

Plus en détail

Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique

Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique Contenu Introduction Modélisation Problèmes de satisfaction des contraintes Exemples des modèles PPC simples

Plus en détail

Chapitre 5 : Flot maximal dans un graphe

Chapitre 5 : Flot maximal dans un graphe Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d

Plus en détail

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.

Cours de Recherche Opérationnelle IUT d Orsay. Nicolas M. THIÉRY. E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery. Cours de Recherche Opérationnelle IUT d Orsay Nicolas M. THIÉRY E-mail address: Nicolas.Thiery@u-psud.fr URL: http://nicolas.thiery.name/ CHAPTER 1 Introduction à l optimisation 1.1. TD: Ordonnancement

Plus en détail

Conception de réseaux de télécommunications : optimisation et expérimentations

Conception de réseaux de télécommunications : optimisation et expérimentations Conception de réseaux de télécommunications : optimisation et expérimentations Jean-François Lalande Directeurs de thèse: Jean-Claude Bermond - Michel Syska Université de Nice-Sophia Antipolis Mascotte,

Plus en détail

Stratégie de recherche adaptative en programmation par contrainte

Stratégie de recherche adaptative en programmation par contrainte Université Paul Sabatier École Nationale de l Aviation Civile Master 2 Recherche Informatique et Télécommunication parcours Intelligence Artificielle Simon Marchal Stratégie de recherche adaptative en

Plus en détail

Contrainte de flot pour RCPSP avec temps de transfert

Contrainte de flot pour RCPSP avec temps de transfert Contrainte de flot et x-rcpsc T 1 Contrainte de flot pour RCPSP avec temps de transfert PS temp, s ij Cmax BENOIST Thierry BOUYGUES/e-Lab DIAMANTINI Maurice ENSTA/LMA Contrainte de flot et x-rcpsc T Présentation

Plus en détail

Cours 02 : Problème général de la programmation linéaire

Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la Programmation Linéaire. 5 . Introduction Un programme linéaire s'écrit sous la forme suivante. MinZ(ou maxw) =

Plus en détail

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h Télécom Physique Strasbourg Master IRIV Optimisation et programmation mathématique Professeur Michel de Mathelin Cours intégré : 20 h Programme du cours d optimisation Introduction Chapitre I: Rappels

Plus en détail

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1 Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation

Plus en détail

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé Baccalauréat ES Pondichéry 7 avril 204 Corrigé EXERCICE 4 points Commun à tous les candidats. Proposition fausse. La tangente T, passant par les points A et B d abscisses distinctes, a pour coefficient

Plus en détail

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. 1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le

Plus en détail

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,

Plus en détail

Ordonnancement robuste et décision dans l'incertain

Ordonnancement robuste et décision dans l'incertain Ordonnancement robuste et décision dans l'incertain 4 ème Conférence Annuelle d Ingénierie Système «Efficacité des entreprises et satisfaction des clients» Centre de Congrès Pierre Baudis,TOULOUSE, 2-4

Plus en détail

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera. Cours Optimisation Partie Optimisation Combinatoire 3ième année ISAE Année scolaire 2008-2009 Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.fr Septembre 2008 Résumé Ce document couvre

Plus en détail

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Baccalauréat ES/L Amérique du Sud 21 novembre 2013 Baccalauréat ES/L Amérique du Sud 21 novembre 2013 A. P. M. E. P. EXERCICE 1 Commun à tous les candidats 5 points Une entreprise informatique produit et vend des clés USB. La vente de ces clés est réalisée

Plus en détail

Optimisation Discrète

Optimisation Discrète Prof F Eisenbrand EPFL - DISOPT Optimisation Discrète Adrian Bock Semestre de printemps 2011 Série 7 7 avril 2011 Exercice 1 i Considérer le programme linéaire max{c T x : Ax b} avec c R n, A R m n et

Plus en détail

Jean-Philippe Préaux http://www.i2m.univ-amu.fr/~preaux

Jean-Philippe Préaux http://www.i2m.univ-amu.fr/~preaux Colonies de fourmis Comment procèdent les colonies de fourmi pour déterminer un chemin presque géodésique de la fourmilière à un stock de nourriture? Les premières fourmis se déplacent au hasard. Les fourmis

Plus en détail

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans Mathématique et Automatique : de la boucle ouverte à la boucle fermée Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans Maitine.Bergounioux@labomath.univ-orleans.fr Plan 1. Un peu de

Plus en détail

4.2 Unités d enseignement du M1

4.2 Unités d enseignement du M1 88 CHAPITRE 4. DESCRIPTION DES UNITÉS D ENSEIGNEMENT 4.2 Unités d enseignement du M1 Tous les cours sont de 6 ECTS. Modélisation, optimisation et complexité des algorithmes (code RCP106) Objectif : Présenter

Plus en détail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e

Plus en détail

Efficacité énergétique des réseaux de cœur et d accès

Efficacité énergétique des réseaux de cœur et d accès Efficacité énergétique des réseaux de cœur et d accès David Coudert Joanna Mouliérac, Frédéric Giroire MASCOTTE I3S (CNRS/Université Nice Sophia-Antipolis) INRIA Sophia-Antipolis Méditerranée 1 Contexte

Plus en détail

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer

Plus en détail

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction

Plus en détail

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments Recherche Opérationnelle Optimisation combinatoire : Applications et compléments Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 17 février 2014 Plan de

Plus en détail

Annexe 6. Notions d ordonnancement.

Annexe 6. Notions d ordonnancement. Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. Sophie.Demassey@mines-nantes.fr Résumé Ce document

Plus en détail

Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases)

Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases) Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases) Heuristique Constructive Itérativement, ajoute de nouvelles composantes à une solution partielle candidate Espace

Plus en détail

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1 Christophe CANDILLIER Cours de DataMining mars 2004 age 1 1. Introduction 2. rocessus du DataMining 3. Analyse des données en DataMining 4. Analyse en Ligne OLA 5. Logiciels 6. Bibliographie Christophe

Plus en détail

L apprentissage automatique

L apprentissage automatique L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer

Plus en détail

Introduction au maillage pour le calcul scientifique

Introduction au maillage pour le calcul scientifique Introduction au maillage pour le calcul scientifique CEA DAM Île-de-France, Bruyères-le-Châtel franck.ledoux@cea.fr Présentation adaptée du tutorial de Steve Owen, Sandia National Laboratories, Albuquerque,

Plus en détail

L apport du HPC pour l optimisation. Eric Jacquet-Lagrèze. FORUM TERATEC 28 juin 2011

L apport du HPC pour l optimisation. Eric Jacquet-Lagrèze. FORUM TERATEC 28 juin 2011 L apport du HPC pour l optimisation Eric Jacquet-Lagrèze FORUM TERATEC 28 juin 2011 Sommaire 1 / Recherche Opérationnelle et calcul scientifique 2 / Où se trouve la complexité et quels enjeux pour le HPC?

Plus en détail

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire CHAPITRE N5 FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION Code item D0 D2 N30[S] Items étudiés dans le CHAPITRE N5 Déterminer l'image

Plus en détail

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante

Plus en détail

INFO-F-310 - Algorithmique 3 et Recherche Opérationnelle

INFO-F-310 - Algorithmique 3 et Recherche Opérationnelle INFO-F- - Algorithmique et Recherche Opérationnelle Yves De Smet Bernard Fortz - Table des matières I Introduction Aide à la décision et modèles mathématiques Quelques exemples de modèles mathématiques

Plus en détail

Optimisation Combinatoire et Colonies de Fourmis Nicolas Monmarche April 21, 1999 Sommaire Inspiration biologiques Ant Colony Optimization Applications TSP QAP Flow Shop Problemes dynamiques 1 Historique

Plus en détail

Plus courts chemins, programmation dynamique

Plus courts chemins, programmation dynamique 1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique

Plus en détail

Présentation. Pour. Gilles ALAIS, Country Manager Barloworld Supply Chain Software France 20 Rue des Petits Hôtels, 75010 Paris

Présentation. Pour. Gilles ALAIS, Country Manager Barloworld Supply Chain Software France 20 Rue des Petits Hôtels, 75010 Paris Présentation Pour Gilles ALAIS, Country Manager Barloworld Supply Chain Software France 20 Rue des Petits Hôtels, 75010 Paris Email: galais@barloworldscs.com Tel : + 33 1 73 03 04 10 / + 33 6 08 01 52

Plus en détail

Correction du baccalauréat ES/L Métropole 20 juin 2014

Correction du baccalauréat ES/L Métropole 20 juin 2014 Correction du baccalauréat ES/L Métropole 0 juin 014 Exercice 1 1. c.. c. 3. c. 4. d. 5. a. P A (B)=1 P A (B)=1 0,3=0,7 D après la formule des probabilités totales : P(B)=P(A B)+P(A B)=0,6 0,3+(1 0,6)

Plus en détail

RECHERCHE OPERATIONNELLE

RECHERCHE OPERATIONNELLE RECHERCHE OPERATIONNELLE 0. Introduction. Ce cours a été enseigné jusqu en 2002, en année de licence, à la MIAGE de NANCY. L objectif principal de ce cours est d acquérir une connaissance approfondie de

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Maths MP Exercices Fonctions de plusieurs variables Les indications ne sont ici que pour être consultées après le T (pour les exercices non traités). Avant et pendant le T, tenez bon et n allez pas les

Plus en détail

Rappel sur les bases de données

Rappel sur les bases de données Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant

Plus en détail

Application de K-means à la définition du nombre de VM optimal dans un cloud

Application de K-means à la définition du nombre de VM optimal dans un cloud Application de K-means à la définition du nombre de VM optimal dans un cloud EGC 2012 : Atelier Fouille de données complexes : complexité liée aux données multiples et massives (31 janvier - 3 février

Plus en détail

Cours Fonctions de deux variables

Cours Fonctions de deux variables Cours Fonctions de deux variables par Pierre Veuillez 1 Support théorique 1.1 Représentation Plan et espace : Grâce à un repère cartésien ( ) O, i, j du plan, les couples (x, y) de R 2 peuvent être représenté

Plus en détail

Maîtriser les mutations

Maîtriser les mutations Maîtriser les mutations Avec UNE Supply chain AGILE La réflexion porte ses fruits www.cereza.fr TALAN Group Notre savoir-faire : maîtriser les mutations et en faire une force pour l entreprise Cereza,

Plus en détail

Amphi 3: Espaces complets - Applications linéaires continues

Amphi 3: Espaces complets - Applications linéaires continues Amphi 3: Espaces complets - Applications linéaires continues Département de Mathématiques École polytechnique Remise en forme mathématique 2013 Suite de Cauchy Soit (X, d) un espace métrique. Une suite

Plus en détail

La (les) mesure(s) GPS

La (les) mesure(s) GPS La (les) mesure(s) GPS I. Le principe de la mesure II. Equation de mesure GPS III. Combinaisons de mesures (ionosphère, horloges) IV. Doubles différences et corrélation des mesures V. Doubles différences

Plus en détail

Programmation linéaire

Programmation linéaire CHAPTER 1 Programmation linéaire 1.1. Qu'est-ce que la programmation linéaire 1.1.1. Exemple: le problème du régime de Polly [1, p.3]. Besoins journaliers: Énergie: 2000 kcal Protéines: 55g Calcium: 800

Plus en détail

Cours des Méthodes de Résolution Exactes Heuristiques et Métaheuristiques

Cours des Méthodes de Résolution Exactes Heuristiques et Métaheuristiques Université Mohammed V, Faculté des Sciences de Rabat Laboratoire de Recherche Mathématiques, Informatique et Applications Cours des Méthodes de Résolution Exactes Heuristiques et Métaheuristiques MASTER

Plus en détail

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante.

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante. Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante. Objectifs et formulation du sujet Le syndrome de l apnée du sommeil (SAS) est un problème de santé publique

Plus en détail

OPTIMISATION DE LA MAINTENANCE DES EQUIPEMENTS DE MANUTENTION DU TERMINAL A CONTENEURS DE BEJAIA (BMT)

OPTIMISATION DE LA MAINTENANCE DES EQUIPEMENTS DE MANUTENTION DU TERMINAL A CONTENEURS DE BEJAIA (BMT) OPTIMISATION DE LA MAINTENANCE DES EQUIPEMENTS DE MANUTENTION DU TERMINAL A CONTENEURS DE BEJAIA (BMT) LAGGOUNE Radouane 1 et HADDAD Cherifa 2 1,2: Dépt. de G. Mécanique, université de Bejaia, Targa-Ouzemour

Plus en détail

Modélisation multi-agents - Agents réactifs

Modélisation multi-agents - Agents réactifs Modélisation multi-agents - Agents réactifs Syma cursus CSI / SCIA Julien Saunier - julien.saunier@ifsttar.fr Sources www-lih.univlehavre.fr/~olivier/enseignement/masterrecherche/cours/ support/algofourmis.pdf

Plus en détail

Algèbre binaire et Circuits logiques (2007-2008)

Algèbre binaire et Circuits logiques (2007-2008) Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits

Plus en détail

OPTIMISATION À UNE VARIABLE

OPTIMISATION À UNE VARIABLE OPTIMISATION À UNE VARIABLE Sommaire 1. Optimum locaux d'une fonction... 1 1.1. Maximum local... 1 1.2. Minimum local... 1 1.3. Points stationnaires et points critiques... 2 1.4. Recherche d'un optimum

Plus en détail

Arbres binaires de décision

Arbres binaires de décision 1 Arbres binaires de décision Résumé Arbres binaires de décision Méthodes de construction d arbres binaires de décision, modélisant une discrimination (classification trees) ou une régression (regression

Plus en détail

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Logiciel Libre Cours 3 Fondements: Génie Logiciel Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

Cours d analyse numérique SMI-S4

Cours d analyse numérique SMI-S4 ours d analyse numérique SMI-S4 Introduction L objet de l analyse numérique est de concevoir et d étudier des méthodes de résolution de certains problèmes mathématiques, en général issus de problèmes réels,

Plus en détail

Simulation de Réseaux Ferroviaires

Simulation de Réseaux Ferroviaires Le projet de recherche Modélisation orientée objets dans le domaine ferroviaire a été conduit par l Institut des Transports et de Construction Routière et Ferroviaire (IVT, Institut für Verkehrsplanung,

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

Quantification Scalaire et Prédictive

Quantification Scalaire et Prédictive Quantification Scalaire et Prédictive Marco Cagnazzo Département Traitement du Signal et des Images TELECOM ParisTech 7 Décembre 2012 M. Cagnazzo Quantification Scalaire et Prédictive 1/64 Plan Introduction

Plus en détail

Modélisation de bases de données : Le modèle relationnel

Modélisation de bases de données : Le modèle relationnel Modélisation de bases de données : Le modèle relationnel Rappel chapitre 1 C est quoi un modèle? Type de modèle : Modèle hiérarchique Modèle réseau Modèle objet Modèle relationnel Cours BD Dr REZEG K 1

Plus en détail

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178 Thèse no. 7178 PROBLEMES D'OPTIMISATION DANS LES SYSTEMES DE CHAUFFAGE A DISTANCE présentée à l'ecole POLYTECHNIQUE FEDERALE DE ZURICH pour l'obtention du titre de Docteur es sciences naturelles par Alain

Plus en détail

UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE THESE

UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE THESE UNIVERSITE PARIS VII - DENIS DIDEROT U.F.R. D'INFORMATIQUE Année 1998 N attribué par la bibliothèque _ THESE pour obtenir le grade de DOCTEUR DE L'UNIVERSITE PARIS VII Discipline : Informatique présentée

Plus en détail

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Jade. Projet Intelligence Artificielle «Devine à quoi je pense» Jade Projet Intelligence Artificielle «Devine à quoi je pense» Réalisé par Djénéba Djikiné, Alexandre Bernard et Julien Lafont EPSI CSII2-2011 TABLE DES MATIÈRES 1. Analyse du besoin a. Cahier des charges

Plus en détail

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Modèles à Événements Discrets. Réseaux de Petri Stochastiques Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle

Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) IFT702 Planification en intelligence artificielle Francis BISSON (06 794 819) Kenny CÔTÉ (06 836 427) Pierre-Luc ROGER (06 801 883) PLANIFICATION DE TÂCHES DANS MS PROJECT IFT702 Planification en intelligence artificielle Présenté à M. Froduald KABANZA

Plus en détail

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé EXERCICE 1 5 points Commun à tous les candidats 1. Réponse c : ln(10)+2 ln ( 10e 2) = ln(10)+ln ( e 2) = ln(10)+2 2. Réponse b : n 13 0,7 n 0,01

Plus en détail

Master Informatique Aix-Marseille Université

Master Informatique Aix-Marseille Université Aix-Marseille Université http://masterinfo.univ-mrs.fr/ Département Informatique et Interactions UFR Sciences Laboratoire d Informatique Fondamentale Laboratoire des Sciences de l Information et des Systèmes

Plus en détail

Apprentissage Automatique

Apprentissage Automatique Apprentissage Automatique Introduction-I jean-francois.bonastre@univ-avignon.fr www.lia.univ-avignon.fr Définition? (Wikipedia) L'apprentissage automatique (machine-learning en anglais) est un des champs

Plus en détail

Optimisation des fonctions de plusieurs variables

Optimisation des fonctions de plusieurs variables Optimisation des fonctions de plusieurs variables Hervé Hocquard Université de Bordeaux, France 8 avril 2013 Extrema locaux et globaux Définition On étudie le comportement d une fonction de plusieurs variables

Plus en détail

Les 10 grands principes de l utilisation du data mining pour une gestion de la relation client réussie

Les 10 grands principes de l utilisation du data mining pour une gestion de la relation client réussie Les 10 grands principes de l utilisation du data mining pour une gestion de la relation client réussie Découvrir les stratégies ayant fait leurs preuves et les meilleures pratiques Points clés : Planifier

Plus en détail

Assises Métallerie 2013. ERP GPAO en métallerie: quelle offres, comment bien choisir son outil de gestion?

Assises Métallerie 2013. ERP GPAO en métallerie: quelle offres, comment bien choisir son outil de gestion? Assises Métallerie 2013 ERP GPAO en métallerie: quelle offres, comment bien choisir son outil de gestion? ERP dans une PME de métallerie ERP dans une PME de métallerie OBJECTIF DE LA PRESENTATION DEFINITION

Plus en détail

PLANIFICATION DE PROJET ET METHODES D ORDONNANCEMENT

PLANIFICATION DE PROJET ET METHODES D ORDONNANCEMENT P a g e 1 PLANIFICATION DE PROJET ET METHODES D ORDONNANCEMENT NOTION DE PROJET ET D ORDONNANCEMENT Lors de la réalisation d un projet industriel (construction d usine, d autoroute, recherche et développement

Plus en détail

TSTI 2D CH X : Exemples de lois à densité 1

TSTI 2D CH X : Exemples de lois à densité 1 TSTI 2D CH X : Exemples de lois à densité I Loi uniforme sur ab ; ) Introduction Dans cette activité, on s intéresse à la modélisation du tirage au hasard d un nombre réel de l intervalle [0 ;], chacun

Plus en détail

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Calculer avec Sage. Revision : 417 du 1 er juillet 2010 Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1

Plus en détail

Algorithmes de recherche

Algorithmes de recherche Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème

Plus en détail

Statistique : Résumé de cours et méthodes

Statistique : Résumé de cours et méthodes Statistique : Résumé de cours et méthodes 1 Vocabulaire : Population : c est l ensemble étudié. Individu : c est un élément de la population. Effectif total : c est le nombre total d individus. Caractère

Plus en détail

Rupture et plasticité

Rupture et plasticité Rupture et plasticité Département de Mécanique, Ecole Polytechnique, 2009 2010 Département de Mécanique, Ecole Polytechnique, 2009 2010 25 novembre 2009 1 / 44 Rupture et plasticité : plan du cours Comportements

Plus en détail

LES MÉTA-HEURISTIQUES : quelques conseils pour en faire bon usage

LES MÉTA-HEURISTIQUES : quelques conseils pour en faire bon usage LES MÉTA-HEURISTIQUES : quelques conseils pour en faire bon usage Alain HERTZ Ecole Polytechnique - GERAD Département de mathématiques et de génie industriel CP 679, succ. Centre-ville, Montréal (QC) H3C

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

Machines virtuelles Cours 1 : Introduction

Machines virtuelles Cours 1 : Introduction Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une

Plus en détail

UNIVERSITÉ DE LORRAINE Master MIAGE (Méthodes Informatiques Appliquées à la Gestion des Entreprises)

UNIVERSITÉ DE LORRAINE Master MIAGE (Méthodes Informatiques Appliquées à la Gestion des Entreprises) UNIVERSITÉ DE LORRAINE Master MIAGE (Méthodes s Appliquées à la Gestion des Entreprises) 1 Description générale L UFR Mathématiques et propose le Master avec trois spécialisations en deuxième année : ACSI

Plus en détail

Introduction à la théorie des graphes. Solutions des exercices

Introduction à la théorie des graphes. Solutions des exercices CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti

Plus en détail

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail

Enjeux mathématiques et Statistiques du Big Data

Enjeux mathématiques et Statistiques du Big Data Enjeux mathématiques et Statistiques du Big Data Mathilde Mougeot LPMA/Université Paris Diderot, mathilde.mougeot@univ-paris-diderot.fr Mathématique en Mouvements, Paris, IHP, 6 Juin 2015 M. Mougeot (Paris

Plus en détail

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée. ANALYSE 5 points Exercice 1 : Léonie souhaite acheter un lecteur MP3. Le prix affiché (49 ) dépasse largement la somme dont elle dispose. Elle décide donc d économiser régulièrement. Elle a relevé qu elle

Plus en détail