Cours de Recherche Operationnel
Cours de Recherche Operationnel
Cours de Recherche Operationnel
JOUDAR Nour-Eddine
n.joudar@um5r.ac.ma,
2021/2022
1 Objectifs de ce cours
2 Introduction
3 Programmation mathématique
Objectifs du
cours
Recherche opérationnelle
• S'initier à la modélisation et la résolution de problèmes du monde réel et de
Introduction problèmes d'optimisation surgissant en sciences d’ingénieurs.
• Comprendre les qualités et les limites de différents modèles par rapport aux
Programmation hypothèses, à la complexité et l’effort de résolution.
mathématique • Expérimenter la résolution de problèmes à l'aide de modèles mathématiques en
utilisant les logiciels disponibles, et interpréter correctement les résultats.
Problèmes des • Acquérir les compétences de concevoir des algorithmes à base théories des
graphes
graphes.
• …….
Problèmes des
graphes
Introduction
Un programme mathématique est défini comme suit:
Programmation
mathématique Ou
Problèmes des
graphes
Remarques
Objectifs du
cours • Dans toute la suite nous ne considérons que les programmes linéaires de
type (P). En effet,
Introduction
(1)
Programmation
mathématique • Dans le problème (P), il n’y a pas de contraintes égalités. En effet:
Introduction
• On appelle solution optimale ou optimum global de (P), une solution
réalisable qui minimise f(x) sur l’ensemble de toutes les solutions.
Programmation
mathématique Définition
Problèmes des
On dit que est un minimum local de (P) s’il existe un voisinage de
graphes tel que soit optimum global du problème suivant:
Programme linéaire
Objectifs du
Dans le cas où et où et toutes les et les sont des applications
cours linéaires, on dit qu’il s’agit d’un programme mathématique linéaire. Ce
programme s’écrit sous cette forme:
Introduction
Programmation
mathématique
Problèmes des
graphes Où, , et
❑ Toutes les contraintes s’écrivent avec des égalités ou avec des inégalités
Programmation larges.
mathématique
Autres classes des PM apparaissent dans la littérature à savoir:
Problèmes des
graphes
❑ Programmes mathématiques non linéaires.
❑ Programmes mathématiques quadratiques.
❑ Programmes mathématiques convexes
❑ …….
Avant de résoudre un problème issu des sciences d’ingénieurs, il faut bien commencer
par sa traduction par des relations mathématiques. Cette tâche exige l’identification de
quelque composantes relatives à ce problème:
Objectifs du
cours
❑ L’ensemble des actions: (Activités ou variables) qui s’offrent à l’agent de
Introduction décision
Problème du fleuriste
Objectifs du
cours
Un fleuriste dispose de 45 roses, 36 tulipes et 27 marguerites achetées a M MAD.
Il veut offrir a ses clients deux types de bouquets de fleurs:
Introduction
• Type 1: bouquet a 80 MAD composé de 10 roses, 4 tulipes et 2
marguerites.
• Type 2: bouquet a 60 MAD composé de 6 roses, 6 tulipes et 6
Programmation marguerites.
mathématique
Le soucis du fleuriste est de déterminer le nombre du bouquet de chaque type
afin de maximiser son revenu total.
Problèmes des
graphes
Question: quelles sont les informations dont doit disposer le fleuriste pour résoudre
son problème?
Objectifs du
Réponse: Il lui suffit de connaitre le nombre de bouquets à préparer de chaque type.
cours
Variables
Notons par
Introduction ❑ : nombre de bouquets à préparer de type 1.
❑ : nombre de bouquets à préparer de type 2.
Programmation
mathématique
Fonction objectif
Question: quel revenu tirera le fleuriste de la vente de tous les bouquets préparés ?
Problèmes des Réponse: c’est la somme des revenus tirés des deux types des bouquets.
graphes
Le revenu total à tirer de la vente de tous les bouquets préparés est donné par:
(3)
JOUDAR NOUR-EDDINE, cours de recherche opérationnelle, 2021/2022
Modélisation mathématique
Objectifs du
cours
Le fleuriste souhaite augmenter le maximum possible son revenu. Il lui suffirait
de laisser augmenter ou pour que z prenne une valeur aussi grande qu’il
Introduction
le souhaite.
(4)
Programmation
mathématique
Remarque: il y a bien sur des empêchement naturels, appelées les contraintes, qui
freinent le rêve d’un profit infini.
Problèmes des
graphes Contraintes
Contrainte de disponibilité: il faut que le nombre des fleurs utilisées de chaque
catégorie ne dépasse pas leur disponibilité .
(5)
o Le fleuriste dispose de 36 tulipes:
(6)
Objectifs du
cours o Le fleuriste dispose de 27 marguerites:
(7)
Introduction
Contrainte de non négativité et d’intégrité: il faut que le nombre des bouquets soit
un entier positif ou nul: et des entiers
Programmation
mathématique Modèle obtenu
Problèmes des
Solution optimale:
graphes
Problème du régime
(Problème de régime). Le self-service d'un hôtel offre chaque jour à ses clients
Objectifs du quatre plats : plat1, plat2, plat3, plat4. Le prix d'une unité du plat1 vaut 20Dh, du
cours
plat2 vaut 30Dh, du plat3 vaut 40Dh et du plat4 vaut 100Dh. Le tableau suivant
nous donne la quantité de vitamines V1, V2, V3 et V4 dans une unité de chaque
Introduction plat :
Problème du régime
Problèmes des
Aliment Protéines Fibres Dh/Kg
graphes
orge 0.09 0.02 10.5
Un programme linéaire est dit mis sous forme standard si toutes les
contraintes du problème sont des contraintes d’égalité.
Objectifs du
cours
Introduction
Où,
Programmation
mathématique
Remarque.
Problèmes des
graphes Nous pouvons toujours mettre un programme linéaire sous forme
standard en introduisant des variables supplémentaires appelées
variables d’écart ou variables de surplus.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Le problème (P) peut être écrit sous la forme standard en ajoutant une variable d’écart à
chaque contrainte.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Remarque.
Les problèmes (PL) et (PS) sont équivalents, c’est-à-dire que (PL) et (PS) ont les
mêmes solutions.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Le problème (P) peut être écrit sous la forme standard en ajoutant une variable d’écart a
chaque contrainte.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Remarque.
Les problèmes (PL) et (PS) sont équivalents, c’est-à-dire que (PL) et (PS) ont les
mêmes solutions.
Objectifs du
cours
Introduction
Avec A une matrice d’ordre (m,n).
Si , on dit qu’une contrainte est redondante si elle est répétée ou elle forme
une combinaison linéaire d’autres contraintes.
Objectifs du
cours
Introduction
Programmation
mathématique
La i -ème contrainte donnée par:
Problèmes des
graphes
définit un hyperplan (une droite si n=2) qui divise l’espace en deux demi espace (demi
plans) cet hyperplan est la frontière des demi-espaces.
Un demi-espace est dit fermé ou ouvert selon la frontière en fait partie ou non.
Un ensemble C est dit convexe si tout segment de droite dont les extrémités appartiennent à
C est inclus dans C.
Objectifs du
cours Modèle non borné.
Un modèle mathématique est dit non borné si son domaine réalisable est non borné, c.-à-d.,
Introduction
au moins une variable peut tendre vers l’infini sans quitter le domaine réalisable.
Programmation Polytope.
mathématique
Un polytope est un sous-ensemble de qui s’exprime comme l’intersection d’un nombre
Problèmes des fini de demi espaces fermés de .
graphes Un polytope borné est dit un polyèdre
Point extrême.
Un point est dit point extrême du domaine réalisable D si l’on peut pas l’écrire sous forme
une combinaison convexe des deux autre points du domaine D.
JOUDAR NOUR-EDDINE, cours de recherche opérationnelle, 2021/2022
Résolution d’un programme mathématique
Exemple
Considérons le programme linéaire (PL):
Objectifs du
cours
Introduction
Programmation
mathématique Dresser le polyèdre associé au problème (P)?
Remarque.
Objectifs du Toute solution réalisable est une combinaison convexe de points extrêmes.
cours
Introduction
Propriété
Programmation Si un modèle mathématique admet une solution optimale, cette solution correspond a un
mathématique point extrême.
Principe.
Il s’agit de remplacer les points extrêmes dans la fonction objectif, puis chercher celui qui
Objectifs du minimise (maximise) cette fonction.
cours
Introduction
X Z
(6,0) 12
Programmation
mathématique (18,0) 36
(0,9) 45
Objectifs du
cours
Programmation
mathématique La solution du problème vérifie la condition suivante:
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Programmation
mathématique La solution du problème vérifie la condition suivante:
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Si la fonction objectif doit être maximisée et si toutes les contraintes sont des inéquations
du type < ou = , on dit que le programme linéaire se présente sous une forme canonique.
Objectifs du Matriciellement, un problème de programmation linéaire se présente sous sa forme
cours canonique de la manière suivante :
Programmation
mathématique
Problèmes des
graphes
Exemple.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Le problème (P) peut être écrit sous la forme standard en ajoutant une variable d’écart à
chaque contrainte.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Remarque.
Les problèmes (PL) et (PS) sont équivalents, c’est-à-dire que (PL) et (PS) ont les
mêmes solutions.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Le problème (P) peut être écrit sous la forme standard en ajoutant une variable d’écart a
chaque contrainte.
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Remarque.
Les problèmes (PL) et (PS) sont équivalents, c’est-à-dire que (PL) et (PS) ont les
mêmes solutions.
Remarque.
Problèmes des
graphes
Méthode du simplexe
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Méthode du simplexe
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Méthode du simplexe
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Méthode du simplexe
Programmation Lorsque toutes les variables hors base sont nulles, , on obtient:
mathématique
Problèmes des
graphes On appelle solution de base la solution :
Méthode du simplexe
Exemple
Introduction
Programmation
mathématique
Problèmes des
graphes
Principe
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Principe
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Forme standard
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Tableau initiale
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Forme standard
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Variable entrante
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Variable sortante
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Variable sortante
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Etape 5: Pivotage
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Etape 5: Pivotage
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Itération suivante
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Pivotage
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes
Fin de l’exemple
Objectifs du
cours
Introduction
Programmation
mathématique
Problèmes des
graphes