Vous êtes sur la page 1sur 106

REPUBLIQUE DU BENIN

MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA


RECHERCHE SCIENTIFIQUE

ECOLE SUPERIEUR LE FAUCON

Dr. Daniel SABI TAKOU


F
COURS DE RECHERCHE OPERATIONNELLE
ES

sabitakoudaniel11@gmail.com/ 66 46 48 76
1

I-Objectif général
Cette UE permet à l’étudiant de connaître et d’appliquer les notions de la recherche opéra-
tionnelle pour l’ingénierie.

II-Objectifs spécifiques
A la fin de cette UE, l’apprenant sera capable :
- de décrire un processus de décisions séquentielles typique : ces composants, un système dy-
namique à temps discret et une fonction coût additive dans le temps, les différentes étapes de la
gestion d’un tel processus, l’objectif recherché et le calcul d’une politique de décision optimale.
- d’utiliser le formalisme présenté pour modéliser un processus de décisions séquentielles.
- d’expliquer le principe général de l’algorithme de programmation dynamique et de le justifier
grâce au principe d’optimalité de Bellman.
- de calculer les tables optimales pour de petits problèmes et savoir les utiliser pour déterminer
une politique optimale ou une suite de décisions optimales.
F
- de savoir expliquer les particularités des programmes dynamiques déterministes: solution op-
ES

timale donnée par une suite de décisions optimales, formulation en avant et en arrière, relation
aux problèmes de plus courts chemins. - de connaître les trois grandes classes de performances
pouvant être optimisées à l’aide de la programmation dynamique, ainsi que les formes associées
des relations de récurrence.

III-Pré-requis
Analyse et Algèbre, Mathématique appliquée, Géométrie analytique et vectorielle.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Bibliography

[1] Edmond Maurel, Daniel Roux et Daniel Dupont - Eyrolles,Techniques opéra-


tionnelles d’ordonnancement - Fondées sur la méthode Pert (Potentiels-tâches)

[2] Jacques Teghem et Marc Pirlot - Hermès - Lavoisier, Optimisation approchée en


recherche opérationnelle - Recherches locales, réseaux neuronaux et satisfaction
de contraintes

[3] Roseaux - Dunod, Exercices et problèmes résolus de recherche opérationnelle -


F
Volume 1 - Graphes : leurs usages, leurs algorithmes - 2e cycle / Master - Ecoles
d’ingénieurs
ES

[4] Roseaux - Dunod, Recherche opérationnelle - Tome 3: Programmation linéaire


et extensions, problèmes classiques - 2es cycles / Master, écoles d’ingénieurs -
Exercices et problèmes résolus

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Table des matières

1 INTRODUCTION A LA RECHERCHE OPERATIONNELLE 5


1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Types de problèmes traités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Applications pratiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Implantation dans le monde des entreprises . . . . . . . . . . . . . . . . . . . . . 8
1.6 Principales (classes de) méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . 9
F
2 PROGRAMMATION LINEAIRE : RESOLTION PAR LA MRTHODE GRAPHIQUE 11
ES

2.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Formulation d’un programme linéaire . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4 Cas particuliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3 METHODE DU SIMPLEXE ET DUALITE 33


3.1 Méthode du simplexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.1.1 Forme canonique d’un Programme Linéaire . . . . . . . . . . . . . . . . . 33
3.1.2 Forme standard d’un Programme Linéaire . . . . . . . . . . . . . . . . . 34
3.1.3 Résolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4 NOTIONS ELEMENTAIRES SUR LES GRAPHES 56


4.1 GRAPHE ORIENTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2 REPRESENTATION D’UN GRAPHE . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.1 Représentation sagittale . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.2 Représentation par un dictionnaire . . . . . . . . . . . . . . . . . . . . . 57
4.3 NIVEAU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
TABLE DES MATIÈRES 4

4.4 RECHERCHE D’UN CHEMIN DE VALEUR MINIMALE . . . . . . . . . . . . 62

5 ORDONNANCEMENT MPM-PERT 63
5.1 MPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.1 Construction du graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.2 Calendrier au plus tôt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.3 Calendrier au plus tard . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.1.4 Marges totales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.1.5 Marges libres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.2 PERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.2.1 Construction du graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2.2 Calendrier au plus tôt des étapes . . . . . . . . . . . . . . . . . . . . . . 75
5.2.3 Calendrier au plus tôt des tâches . . . . . . . . . . . . . . . . . . . . . . 76
5.2.4 Calendrier au plus tard des étapes . . . . . . . . . . . . . . . . . . . . . . 76
5.2.5 Calendrier au plus tard des tâches . . . . . . . . . . . . . . . . . . . . . . 77
5.2.6 Marges totales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
F
5.2.7 Marges libres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
ES

5.3 Le diagramme de GANTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6 PERT probabiliste 83
6.1 Flot dans un réseau de transport . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.2 Différents temps utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.3 Probabilité de tenir le délai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7 PROBLEMES DE TRANSPORT ET D’AFFECTATION 88


7.1 Flot dans un réseau de transport . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7.2 Problème de transport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.2.1 Algorithme de Balas-Hammer . . . . . . . . . . . . . . . . . . . . . . . . 90
7.3 Méthode de Balas-Hammer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.3.1 Méthode du coin Nord-Ouest . . . . . . . . . . . . . . . . . . . . . . . . 96
7.4 Problème d’affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Premier

INTRODUCTION A LA RECHERCHE
OPERATIONNELLE

1.1 Introduction
La recherche opérationnelle (aussi appelée aide à la décision) peut être définie comme
l’ensemble des méthodes et techniques rationnelles orientées vers la recherche de la meilleure
façon d’opérer des choix en vue d’aboutir au résultat visé ou au meilleur résultat possible. Elle
fait partie des  aides à la décision dans la mesure où elle propose des modèles conceptuels
F
en vue d’analyser et de maitriser des situations complexes pour permettre aux décideurs de
ES

comprendre et d’évaluer les enjeux et d’arbitrer et/ou de faire les choix les plus efficaces. Le
domaine fait largement appel au raisonnement mathématique ( logique, probabilités, analyse
de données ) et à la modélisation des processus. Il est fortement lié à l’ingénierie des systèmes,
ainsi qu’au management du système d’information.

1.2 Historique
Dès le XV II e siècle, des mathématiciens comme Blaise Pascal tentent de résoudre des prob-
lèmes de décision dans l’incertain avec l’espérance mathématique. D’autres, au XV III e et
XIX e siècle, résolvent des problèmes combinatoires. Au début du XX e siècle, l’étude de la
gestion de stock peut être considérée comme étant à l’origine de la recherche opérationnelle
moderne avec la formule du lot économique (dite formule de Wilson) proposée par Harris en
1913. Mais ce n’est qu’avec la Seconde Guerre mondiale que la pratique va s’organiser pour la
première fois et acquérir son nom. En 1940, Patrick Blackett est appelé par l’état-major anglais à
diriger la première équipe de recherche opérationnelle, pour résoudre certains problèmes tels que
l’implantation optimale de radars de surveillance ou la gestion des convois d’approvisionnement.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Types de problèmes traités 6

Le qualificatif  opérationnelle  vient du fait que la première application d’un groupe de


travail organisé dans cette discipline avait trait aux opérations militaires. La dénomination est
restée par la suite, même si le domaine militaire n’est plus le principal champ d’application de
cette discipline. Après la guerre, les techniques se sont considérablement développées, grâce,
notamment, à l’explosion des capacités de calcul des ordinateurs. Les domaines d’application
se sont également multipliés.

1.3 Types de problèmes traités


La recherche opérationnelle peut aider le décideur lorsque celui-ci est confronté à un problème
combinatoire, aléatoire ou concurrentiel. Un problème est dit combinatoire lorsqu’il comprend
un grand nombre de solutions admissibles parmi lesquelles on cherche une solution optimale
ou proche de l’optimum. Exemple typique : déterminer où installer 5 centres de distribution
parmi 30 sites d’implantation possibles, de sorte que les coûts de transport entre ces centres
et les clients soient minimum. Ce problème ne peut être résolu par une simple énumération
F
des solutions possibles par l’esprit humain, puisqu’il en existe (30 × 29 × 28 × 27 × 26)/(1 ×
2 × 3 × 4 × 5) = 142506(!). Et même si un problème de cette taille peut être résolu par
ES

énumération par un ordinateur, les décideurs sont régulièrement confrontés à des problèmes
infiniment plus complexes, où le nombre de solutions acceptables se compte en milliards de
milliards (voir explosion combinatoire). Un problème est dit aléatoire s’il consiste à trouver
une solution optimale face à un problème qui se pose en termes incertains. Exemple typique :
connaissant la distribution aléatoire du nombre de personnes entrant dans une administration
communale en une minute et la distribution aléatoire de la durée de traitement du cas d’une
personne, déterminer le nombre minimum de guichets à ouvrir pour qu’une personne ait moins
de 5% de chances de devoir attendre plus de 15 minutes. Un problème est dit concurrentiel
s’il consiste à trouver une solution optimale face à un problème dont les termes dépendent de
l’interrelation entre ses propres agissements et ceux d’autres décideurs. Exemple typique : fixer
une politique de prix de vente, sachant que les résultats d’une telle politique dépendent de la
politique que les concurrents adopteront.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Applications pratiques 7

1.4 Applications pratiques


Les problèmes que la R.O. peut aider à résoudre sont soit stratégiques (on peut citer le choix
d’investir ou pas, le choix d’une implantation, le dimensionnement d’une flotte de véhicules
ou d’un parc immobilier· · · ) ou opérationnelles (notamment l’ordonnancement, la gestion de
stock, l’affectation de moyens (humains ou matériels) à des tâches, les prévisions de ventes· · · ).
La gestion de projets est une composante très importante de la communauté de recherche
opérationnelle. De nombreux travaux traitent de l’ordonnancement et de la gestion de pro-
jets, mais aussi de logistique (tournées de véhicule, conditionnement· · · ), de planification, et
de problèmes d’emploi du temps. Dans le cadre de l’industrie manufacturière, la recherche
opérationnelle permet notamment de trouver des plans de productions (ordonnancement de
production), de disposer au mieux les machines dans un atelier, de diminuer le gaspillage des
matières premières (problèmes de découpe) ou de l’énergie ou bien encore d’optimiser le condi-
tionnement et la livraison des produits intermédiaires ou finis. Dans le domaine de la finance, les
problèmes d’investissement sont des problèmes classiques de recherche opérationnelle. Ils con-
sistent en général à maximiser le profit (ou l’espérance de profit) obtenu à partir d’un montant
F
donné en combinant au mieux les différentes possibilités offertes à l’investisseur. La recherche
ES

opérationnelle a aussi des applications dans le domaine de l’énergie. Elle est couramment util-
isée dans l’industrie pétrolière, principalement dans l’établissement des plans de production,
l’approvisionnement des bruts, l’utilisation des unités de raffinage, et le choix des canaux de
distribution les plus rentables. De même, les opérateurs du Marché de l’électricité font large-
ment appel à la recherche opérationnelle tant pour des problèmes stratégiques (par exemple des
investissements sur le réseau) que pour des questions plus opérationnelles (stabilité du réseau,
prévisions· · · ). Pour plus de détails, voir Plans d’approvisionnement, de production et de dis-
tribution du pétrole Les applications dans le domaine de l’informatique sont très nombreuses
elles aussi. On peut citer, entre autres, le choix de la localisation et du nombre de serveurs à
mettre en place, de la capacité de stockage, de la puissance de calcul et du débit du réseau,
le choix d’une architecture informatique (application centralisée / distribuée, traitements en
temps réel ou en différé, réseau maillé ou en étoile, etc.), et l’ordonnancement dans les systèmes
d’exploitation.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Implantation dans le monde des entreprises 8

1.5 Implantation dans le monde des entreprises


Très peu d’entreprises emploient des chercheurs opérationnels pour aider le décideur à résoudre
ses problèmes. Lorsque de tels problèmes se posent, ils sont généralement soumis à un gros
cabinet de conseil ou au département de recherche opérationnelle d’une université (bien que
la tendance actuelle soit à l’externalisation de ces compétences universitaires via de petites
sociétés privées appelées spin-off, répondant mieux aux besoins du monde industriel). Certains
problèmes simples peuvent être résolus au sein même de l’entreprise, la plupart des universités
ayant intégré des cours d’introduction à la recherche opérationnelle dans les programmes des
ingénieurs, des mathématiciens, des informaticiens, des contrôleurs de gestion et, moins souvent,
des économistes. Malgré son importance intrinsèque, la R.O. est encore peu utilisée dans le
monde industriel, soit à cause du manque d’(in)formation des décideurs, soit par le manque de
pertinence de l’outil ou sa difficulté de mise en œuvre. Les principales craintes émises par le
décideur quant à l’application de modèles R.O. dans son entreprise sont:

• Une prise en compte limitée des facteurs pour les questions stratégiques, la réponse 
F
pure et parfaite  d’une solution mathématique semble rarement applicable de facto.
Même si la recherche opérationnelle intègre beaucoup de facteurs, si certains aspects sont
ES

relativement faciles à modéliser au sens mathématique du terme (le coût, la rentabilité,


la distance, la durée, la cadence, par exemple), d’autres éléments sont en revanche plus
difficiles à modéliser : contraintes légales, volonté commerciale de faire barrage à un con-
current, importance des relations avec les élus, climat social, etc. Le poids de ces éléments
dans la décision est pourtant important, parfois déterminant.

• Un investissement important L’outil mathématique lui-même exige un niveau élevé de


connaissances mathématiques, une bonne aptitude à modéliser les problèmes et décrire
les facteurs ; ces contraintes sont consommatrices de temps et d’argent (que ce soit par
développement interne, qui consomme des ressources; ou par développement externe, qui
consomme de l’argent). Il est alors nécessaire de trouver un équilibre entre l’investissement
nécessaire et les retombées prévues.

• Pour des événements peu fréquents L’entreprise ne bénéficie pas de l’effet d’expérience
: d’une fois sur l’autre, le problème concerne un service différent, ou les responsables
ont changé entre deux études. Il est donc difficile d’entretenir les compétences R.O. à
l’intérieur de l’entreprise. Le décideur devra prendre ces différents aspects en compte

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Principales (classes de) méthodes 9

lorsqu’il décidera ou non de mettre en œuvre des modèles de recherche opérationnelle


dans son entreprise.

Le décideur devra prendre ces différents aspects en compte lorsqu’il décidera ou non de mettre
en œuvre des modèles de recherche opérationnelle dans son entreprise.

1.6 Principales (classes de) méthodes


• Algorithmes polynomiaux: certains problèmes de recherche opérationnelle ne sont pas
NP-complets. Dans ce cas, on utilise un algorithme polynomial pour le résoudre, si le
polynôme est de degré raisonnable.

• Programmation dynamique: certains problèmes ont de bonnes caractéristiques qui per-


mettent de les résoudre à l’aide d’une formule de récurrence. Les méthodes de program-
mation dynamique peuvent alors éventuellement permettre de résoudre le problème avec
une complexité polynomiale ou pseudo- polynomiale.
F
• Processus stochastiques: les processus stochastiques concernent tous les problèmes aléa-
ES

toires, en particulier des problèmes de fiabilité (de systèmes, de composants électroniques· · · )


et des phénomènes d’attente.

• Simulation informatique: la simulation est souvent employée pour résoudre des problèmes
de RO, notamment dans le milieu non académique.

• Optimisation linéaire et non linéaire: l’optimisation linéaire est très souvent utilisée pour
résoudre des problèmes combinatoires. Elle permet de résoudre très efficacement les prob-
lèmes dans lesquels les variables sont continues. Lorsqu’il y a des variables discrètes,
optimisation linéaire et méthodes arborescentes (voir ci- après) peuvent être combinées.
L’optimisation non linéaire peut aussi être utilisée. La possibilité d’utiliser des contraintes
ou des fonctions objectifs non linéaires offre une puissance de modélisation très impor-
tante mais les algorithmes de résolution des problèmes d’optimisation non linéaire sont
significativement moins efficaces que ceux de l’optimisation linéaire.

• Méthodes de complémentarité linéaire et non linéaire

• Méthodes arborescentes
Les méthodes de type A∗ ou branch and bound sont couramment utilisées pour trouver

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Principales (classes de) méthodes 10

la solution exacte d’un problème de recherche opérationnelle. Pour une résolution effi-
cace, un soin particulier est apporté au calcul de bornes supérieures ou inférieures pour
la valeur de la solution. La programmation par contraintes permet de mettre en œu-
vre rapidement et efficacement de telles méthodes de recherche arborescente. Plusieurs
bibliothèques (logiciels) d’optimisation commerciales ou non reposent sur cette approche
(ILOG Solver, Chip, Mozart/Oz, FaCiLe). De nombreux logiciels d’optimisation de prob-
lèmes réels utilisent ainsi cette technologie.

• Heuristiques et métaheuristiques
Lorsque la solution optimale ne peut être obtenue en un temps raisonnable, on a souvent
recours à des méthodes approchées de type heuristique ou métaheuristique.
F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Deux

PROGRAMMATION LINEAIRE :
RESOLTION PAR LA MRTHODE
GRAPHIQUE

A partir de la fin de la Seconde Guerre mondiale, de nouvelles méthodes permirent de résoudre


des problèmes complexes là où les méthodes classiques échouaient. Ces méthodes furent connues
sous le nom de programmation linéaire, développées principalement par George B. Dantzig (né
F
le 8 novembre 1914), mathématicien américain et créateur de la méthode du Simplexe, et L.
Kantorovich (1912-1986). Danzig, outre la programmation linéaire, étudia entre autres la pro-
ES

grammation mathématique, la prise de décision et les modèles de planification à large échelle.


L’impact de son œuvre fut considérable en gestion et en économie et ses méthodes restent to-
talement d’actualité. De manière générale, la résolution de problèmes de programmation math-
ématique vise à déterminer l’allocation optimale (c’est-à-dire la meilleure combinaison possible)
de ressources limitées pour atteindre certains objectifs. Les allocations doivent minimiser ou
maximiser une fonction dite objectif. En économie, ces fonctions sont par exemple le profit ou le
coût. Ces problèmes, traités par la programmation mathématique, se distinguent des problèmes
d’optimisation classique par le fait que leurs solutions sont d’ordre numérique. Celles-ci sont
obtenues par une technique numérique itérative, alors que les solutions à un problème classique
sont en général données sous forme de formules fermées.

2.1 Définitions
On appelle Programmation Linéaire, le problème mathématique qui consiste à optimiser (max-
imiser ou minimiser) une fonction linéaire de plusieurs variables qui sont reliées par des relations
linéaires appelées contraintes. Les problèmes de programmations linéaires sont généralement liés

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Formulation d’un programme linéaire 12

à des problèmes d’allocations de ressources limitées, de la meilleure façon possible, afin de max-
imiser un profit ou de minimiser un coût. Le terme meilleur fait référence à la possibilité d’avoir
un ensemble de décisions possibles qui réalisent la même satisfaction ou le même
profit. Ces décisions sont en général le résultat d’un problème mathématique. La programma-
tion linéaire est définie donc comme étant un cas particulier de la programmation mathématique
pour laquelle la fonction objectif et les contraintes sont linéaires.

2.2 Formulation d’un programme linéaire

Exercice introductif:

Soit à résoudre le problème suivant:


Une usine fabrique 2 pièces P1 et P2 usinées dans deux ateliers A1 et A2 . Les temps d’usinage
sont
-pour P1 : de 3 heures dans l’atelier A1 et de 6 heures dans l’atelier A2
-pour P2 : de 4 heures dans l’atelier A1 et de 3 heures dans l’atelier A2 .
F
Le temps de disponibilité hebdomadaire de l’atelier A1 est de 160 heures et celui de l’atelier A2
ES

de 180 heures.
La marge bénéficiaire est de 1200 F pour une pièce P1 et 1000 F pour une pièce P2 .
Quelle production de chaque type doit-on fabriquer pour maximiser la marge hebdomadaire?
Le problème peut se formaliser de la façon suivante :
variables économiques ou d’activité: ce sont les inconnues
x1 = quantité de pièces P1 à fabriquer
x2 = quantité de pièces P2 à fabriquer

contraintes économiques 3x1 + 4x2 ≤ 160 contrainte due à l’atelier A1


6x1 + 3x2 ≤ 180 contrainte due à l’atelier A2
contraintes de signe x1 ≥ 0; x2 ≥ 0
fonction économique ou objectif z = 1200x1 + 1000x2 à maximiser

Les conditions de formulation d’un Programme Linéaire

La programmation linéaire comme étant un modèle admet des hypothèses (des conditions)
que le décideur doit valider avant de pouvoir les utiliser pour modéliser son problème. Ces
hypothèses sont :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Formulation d’un programme linéaire 13

1. Les variables de décision du problème sont positives

2. Le critère de sélection de la meilleure décision est décrit par une fonction linéaire de ces
variables, c’est à dire, que la fonction ne peut pas contenir par exemple un produit croisé
de deux de ces variables. La fonction qui représente le critère de sélection est dite fonction
objectif (ou fonction économique).

3. Les restrictions relatives aux variables de décision (exemple: limitations des ressources)
peuvent être exprimées par un ensemble d’équations linéaires. Ces équations forment
l’ensemble des contraintes.

Les paramètres du problème en dehors des variables de décisions ont une valeur connue avec
certitude.
Généralement il y a trois étapes à suivre pour pouvoir construire le modèle d’un programme
linéaire :

1. Identifier les variables du problème à valeur non connues (variable de décision) et les
représenter sous forme symbolique (exp. x1 , y1 ).
F
ES

2. Identifier les restrictions (les contraintes) du problème et les exprimer par un système
d’équations linéaires.

3. Identifier l’objectif ou le critère de sélection et le représenter sous une forme linéaire en


fonction des variables de décision. Spécifier si le critère de sélection est à maximiser ou à
minimiser.

Exemple 2.1 Problème de médecine


Un spécialiste en médecine a fabriqué un médicament (des pilules) pour guérir les sujets atteints
d’un rhume. Ces pilules sont fabriquées selon deux formats :

• Petite taille: elle contient 2 grains d’aspirine, 5 grains de bicarbonate et 1 grain de codéine.

• Grande taille : elle contient 1 grain d’aspirine, 8 grains de bicarbonate et 6 grains de


codéine. Pour guérir la maladie, le sujet a besoin de 12 grains d’aspirine, 74 grains de
bicarbonate et 24 grains de codéine. Déterminer le nombre de pilules minimales à prescrire
au sujet pour qu’il soit guérit.

Formulation du problème en un PL :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthodologie 14

Le problème de médecine présente certaines ressemblances avec le problème de l’agriculture,


dans les deux cas c’est un problème d’allocation de ressources. Les variables de décision qui
représentent des valeurs inconnues par le décideur qui est dans ce cas le spécialiste en médecine
sont :

• x1 : le nombre de pilules de petite taille à prescrire.

• x2 : le nombre de pilules de grande taille à prescrire.

On vérifie bien que les variables de décision x 1 et x 2 sont positives : x1 ≥ 0 , x2 ≥ 0.


Les contraintes imposées par le problème sur les valeurs possibles de x1 et x2 sont :

La prescription doit contenir des pilules avec au moins 12 grains d’aspirine. Sachant qu’une
petite pilule contient 2 grains d’aspirine et qu’une grande pilule contient un seul grain d’aspirine,
on obtient la contrainte suivante : 2x1 + x2 ≥ 12.

De la même façon que pour l’aspirine, la prescription du spécialiste en médecine doit contenir
au moins 74 grains de bicarbonate. Ainsi la contrainte suivante doit être satisfaite: 5x1 + 8x≥
2 74.
F
Finalement la contrainte imposée par le fait que la prescription doit contenir au moins 24 grains
de codéine est x1 + 6x2 ≥ 24.
ES

Etape 3 : Identification de la fonction objectif. On remarque qu’il y a plusieurs couples de


solutions ( x1 , x2 ) qui peuvent satisfaire les contraintes spécifiées à l’étape 2. La prescription
doit contenir le minimum possible de pilules. Donc le critère de sélection de la quantité de
pilules à prescrire est celle qui minimise le nombre total des pilules z = x1 + x2 .
Le programme linéaire qui modélise ce problème médical est donc le suivant:

M in x 1 + x2
s.c. 2x1 + x2 ≥ 12
5x1 + 8x2 ≥ 74
x1 + 6x2 ≥ 24
x1 ≥ 0, x2 ≥ 0

2.3 Méthodologie
Cette méthode n’est applicable que dans le cas où il n’y a que deux variables. Son avantage
est de pouvoir comprendre ce que fait la méthode générale du Simplexe, sans entrer dans la
technique purement mathématique. Les contraintes économiques et de signe sont représentées

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthodologie 15

graphiquement par des demi-plans dont l’intersection est un ensemble convexe (c.à.d. tout
segment de droite dont les extrémités appartiennent àl’ensemble est entièrement inclus dans
cet ensemble). Les solutions, si elles existent appartiennent donc àcet ensemble appelé région
des solutions admissibles.

Il s’agit donc de chercher à l’intérieur de ce domaine, le couple (x1 , x2 ) maximisant la


fonction objectif. Or l’équation 1200x1 + 1000x2 = z0 est représentée par une droite de pente
F
constante (−1, 2) dont tous les points (x1 , x2 ) fournissent la même valeur z0 pour la fonction
ES

économique. En particulier, la droite 1200x1 + 1000x2 = 0 passe par l’origine et donne une
valeur nulle à la fonction économique. Pour augmenter la valeur de z0 et donc la fonction
économique, il suffit d’éloigner de l’origine (dans le quart de plan x1 ≥ 0 ; x2 ≥ 0) la droite de
pente −1, 2. Pour respecter les contraintes, cette droite sera déplacée jusqu’à l’extrême limite
où il n’y aura plus qu’un point d’intersection (éventuellement un segment) avec la région des
solutions admissibles.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthodologie 16

On remarquera que la solution optimale se trouve nécessairement sur le pourtour de la


région des solutions admissibles. La solution se trouvant sur les deux droites d’équation
3x1 + 4x2 = 160
6x1 + 3x2 = 180
la résolution de ce système conduit à la solution x1 = 16 , x2 = 28, d’où z = 47200. Prenons
l’exemple 2 relatif au problème de médecine. Le programme linéaire est le suivant :

M in x 1 + x2
s.c. 2x1 + x2 ≥ 12
5x1 + 8x2 ≥ 74
x1 + 6x2 ≥ 24
x1 ≥ 0, x2 ≥ 0

Un bon choix se base sur une lecture des différents paramètres du programme linéaire. Dans
notre cas, on ne peut qualifier de bon, le choix de 20 comme unité dans les deux axes.
Pour l’exemple, on peut choisir le système d’axes suivant :
F
ES

Parmi les solutions possibles d’un problème, il y a ceux qui vont satisfaire toutes les con-
traintes du programme, appelés solutions réalisables, et ceux qui vont satisfaire une partie ou
aucune de ces contraintes, appelés solutions non réalisables.
Une représentation graphique des inégalités (des contraintes) va nous permettre de déterminer
l’ensemble des solutions réalisables. Revenons à l’exemple 2 du problème de médecine.
Une des contraintes de ce problème est celle relative au grain d’aspirine : 2x1 + x2 ≥ 12.
L’ensemble des solutions qui vérifient cette inégalité est le même que celui qui vérifie 2x1 +
x2 = 12 et 2x1 + x2 > 12.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthodologie 17

L’ensemble des solutions qui correspond à l’équation est l’ensemble des points de la droite l
définie par x2 = −2x1 + 12. Cette droite admet une valeur de la pente égale à −2 et intercepte
l’axe des ordonnées en 12 (voir figure ci-dessus).
L’inégalité 2x1 + x2 > 12 correspond à un demi-plan limité par la droite x2 = −2x1 + 12. Or
cette droite divise le plan en deux demi-plans ouverts donc quel est le demi- plan à choisir ?
F
ES

Pour ce faire, il suffit de prendre un point de l’un des demi-plans (c’est à dire n’appartenant
pas à la droite x2 = −2x1 + 12 ) et voir s’il vérifie l’inégalité 2x1 + x2 > 12.
Par exemple le point de coordonnées (0,0) ne vérifie pas l’inégalité 2x1 + x2 > 12 donc le demi-
plan π1 au-dessus de la droite est celui recherché (voir figure ci- dessus).
L’espace hachuré représente le demi-plan fermé des solutions qui vérifient la contrainte 2x1 +
x2 > 12.
Si on fait de même pour les deux autres contraintes du problème (voir figures ci-dessous), on
obtient les deux autres demi-plans π2 et π3 relatifs aux solutions vérifiant respectivement les
contraintes 5x1 + 8x≥
2 74 et x1 + 6x2 ≥ 24.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthodologie 18

Une solution possible du problème est dite réalisable si et seulement si elle vérifie toutes les
contraintes, c’est à dire si elle appartient aux trois demi-plans relatifs à chaque contrainte du
programme linéaire, en d’autre terme à π1 ∩ π2 ∩ π3 (voir figure).
F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 19

2.4 Cas particuliers

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 20

Exercice 2.2 .

1. Déterminer le maximum de (x + 3y) sous les contraintes suivantes :


F
x > 0, et y > 0
2x + 5y ≤ 10
ES

3x + 4y ≤ 12

2. Déterminer le maximum de (x − y) sous les contraintes suivantes:

x + y ≥ −3
2x + y ≤ 10
x + 2y ≤ 10

3. Déterminer le minimum de (x + 2y) sous les contraintes suivantes :

x et y ≥ 0
x + 6y ≥ 12
6x + y ≥ 12

4. Déterminer le minimum de (2x + 3y) sous les contraintes suivantes :

2x + y ≥ 0
x−y ≤3
x − y ≥ −5

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 21

Exercice 2.3 .
Le gérant d’un hôtel souhaite renouveler le linge de toilette de son établissement. Il a besoin
de : 90 draps de bain, 240 serviettes et 240 gants de toilette. Une première entreprise de vente
lui propose un lot A comprenant 2 draps de bain, 4 serviettes et 8 gants pour 200 francs. Une
deuxième entreprise vend pour 400 francs un lot B de 3 draps de bains, 12 serviettes et 6 gants
de toilettes. Pour répondre à ses besoins, le gérant achète x lots A et y lots B.

1. Traduire par un système d’inéquations les contraintes auxquelles satisfont x et y.

2. On considère un plan P rapporté à un repère orthonormé (0;~i, ~j). A tout couple (x ; y) on


associe le point M de P de coordonnées (x ; y), en prenant comme unité 2 cm pour 5 lots.
Représentez dans P l’ensemble des points M (x; y) satisfaisant aux inéquations:

x ≥ 0 et y ≥ 0
2x + 3y ≥ 90
x + 3y ≥ 60
4x + 3y ≥ 120
3. (a) Exprimez en fonction de x et de y la dépense en francs occasionnée par l’achat de x
F
lots A et de y lots B.
ES

(b) Est-il possible de procéder aux achats nécessaires avec 5 000 francs? Justifiez votre
réponse.

4. (a) Déterminez graphiquement, en précisant la démarche suivie, le nombre de lots A et de


lots B à acheter pour avoir une dépense minimale.
(b) Quelle est cette dépense minimale?

Exercice 2.4 .
Dans un lycée, un groupe d’élèves se charge de la distribution de pains au chocolat et de crois-
sants lors de la récréation de dix heures. Pour pouvoir satisfaire la demande, ils doivent disposer
au minimum de 108 pains au chocolat et de 96 croissants. Deux boulangers proposent pour le
même prix:
• l’un le lot A comprenant 12 pains au chocolat et 8 croissants;
• l’autre le lot B composé de 9 pains au chocolat et 12 croissants.
Le but de l’exercice est de déterminer le nombre de lots A et le nombre de lots B qui doivent
être achetés pour satisfaire la demande au moindre coût. On souhaite d’aider d’un graphique.
Pour cela, on rapporte le plan à un repère orthonormé (unité: graphique = 1cm) et, à l’achat
de x lots A et de y lots B, on associe le point de coordonnées (x, y).

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 22

1. Place
• le point E associé à l’achat de 13 lots A et de 14 lots B;
• Le point F associé à l’achat de 10 lots A et de 1 lot B.
Les achats associés aux points E et F permettent-ils de satisfaire la demande?

2. On s’intéresse à la satisfaction de la demande.

(a) Montrer que, pour que l’achat correspondant au point de coordonnées (x, y) permette
de satisfaire la demande, les nombres x et y doivent vérifier le système suivant:


 4x + 3y ≥ 36

2x + 3y ≥ 24

(b) Colorier ou hachurer la région du plan dans laquelle se trouvent les points dont les
coordonnées (x, y) ne sont pas solutions du système:




 x et y > 0


F
 4x + 3y ≥ 36



2x + 3y ≥ 24
ES

3. On cherche à minimiser le coût, c’est à dire le nombre (x + y) de lots achetés. Les points
associés à des achats d’un nombre de n lots sont situés sur la droite Dn d’équation: Dn :
x+y =n

4. (a) Tracer D9 et D11 .


(b) D’après le graphique, peut-on satisfaire la demande en achetant au total seulement 9
lots ?
En achetant au total 11 lots ? Expliquer les réponses fournies.
(c) En utilisant le graphique, déterminer l’achat qui permet de satisfaire la demande au
moindre coût. On ne demande d’expliquer la réponse fournie.

CORRECTIONS

Exercice 2.2

a)
On représente l’ensemble des points vérifiant le système. Pour cela, on trace les droites:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 23

• D1 : x = 0
• D2 : y = 0
• D3 : 2x + 5y = 10
• D4 : 3x + 4y = 12
On prend un point test (par exemple le point A de coordonnées : A(1; 1). On obtient alors la
figure suivante:

F
ES

Puis, on trace une droite D (a) d’équation : "x + 3y = a" sur cette figure.
Par exemple, on trace D (1) d’équation : " x + 3y = 1"
On a alors la figure suivante :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 24

Puis on trace une autre droite D (a) pour une valeur différente de a. Par exemple, la droite
D(2):

On constate que le fait d’augmenter la valeur de a déplace la droite D (a) dans le sens
F
croissant des abscisses.
ES

On cherche alors la droite D (a) passant par un point de l’ensemble des contraintes et corre-
spondant à la plus grande valeur possible de a.
Graphiquement, c’est le point A d’intersection des droites D1 et D3 de coordonnées A(0; 2).

Le maximum de (x + 3y) sous les contraintes (C) est donc atteint pour (x = 0) et (y = 2).

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 25

Ce maximum est: (0 + 2 ∗ 3) = 6.
b)
On utilise les trois droites:
• D1 : " x + y = −3"
• D2 : " 2x + y = 10"
• D3 : "x + 2y = 10"
pour représenter l’ensembles des contraintes. Puis, on introduit l’ensemble des droites 4(a)
d’équation : 4(a) : x − y = a On trace alors, par exemple, les droites 4(0) et 4(5). On
constate si a croit, la droite 4(a) se déplace dans le sens des "x" croissant. On constate alors
que le point appartenant à l’ensemble des contraintes et par où passe une droite D(a) avec a
maximum est le point appartenant à l’intersection de D1 et D2. C’est le point A de coordonnées
A(13; −16) que l’on détermine en prenant les équations de ces deux droites.
Le maximum de (x − y) sous les contraintes (C) est donc atteint pour (x = 13) et (y = −16)
et ce maximum est: M ax = 29.
F
ES

c)
On représente les contraintes en utilisant les droites suivantes:
• D1 d’équation "x = 0", qui est l’axe des ordonnées
• D2 d’équation "y = 0", qui est l’axe des abscisses
• D3 d’équation "x + 6y = 12"
• D4 d’équation "6x + y = 12"

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 26

Si on trace deux droites 4(a) d’équation " x + 2y = a", par exemple , sur la figure, on a
tracé 4(30) et 4(10), on constate que la droite 4(a) qui passe par un point des contraintes et
qui donne la plus petite valeur possible de a est celle passant par le point A d’intersection entre
F
D3 et D4 . Pour déterminer les coordonnées de A, on pose alors le système d’équation suivant:
ES


 2x + y = 10

 x + 2y = 10

62 48
La solution de ce système est: x = et y = 35 35

Les coordonnées de A sont donc: A 62 48



;
35 35
62
+ 2 48 158

Le minimum de (x + 2y) sous les contraintes ( C ) est donc: M in = 35 35
= 35
.
d)
On représente les contraintes (C) en utilisant les droites :
• D1 : " 2x + y = 0" • D2 : " x − y = 3" • D3 : " x − y = −5"
Puis on utilise les droites 4a d’équation " 2x + 3y = a". Sur la figure, on a tracé les droites
420 et 45 .

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 27

On constate alors que le point de l’ensemble des contraintes par lequel passe la droite 4a
avec la valeur "a" minimale est le point A d’intersection entre D1 et D2 . Ce point a pour
coordonnées : A(1; −2). Le minimum de (2x + 3y) sous les contraintes (C) est donc :
F
M in = 2.(1) + 3.(−2) = −4
ES

Exercice 2.3

1. Faisons un tableau pour résumer les contraintes du gérant de l’hôtel:

Comme x et y doivent être positifs, l’ensemble des contraintes du gérant peuvent alors
s’écrire :




 x et y ≥ 0



 2x + 3y ≥ 90

(C) :
4x + 12y ≥ 240







 8x + 6y ≥ 240

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 28

2. Le système dont on demande la représentation graphique est le système précédent après


simplification.
Considérons les droites suivantes:
• D1 d’équation "x = 0"
• D2 d’équation "y = 0"
• D3 d’équation "2x + 3y = 90"
• D4 d’équation "x + 3y = 60"
• D5 d’équation "4x + 3y = 120"
La représentation graphique de ce système donne alors:

F
ES

3. (a) Comme le prix d’un lot A est de 200 francs et que le prix d’un lot B est de 400 francs,
le prix total pour x Lots A et y lots B est: (200x + 400y) francs.
La dépense est donc : D(x, y) = 200x + 400y.

(b) On peut savoir simplement s’il est possible de procéder aux achats nécessaires avec 5
000 francs en traçant sur la figure précédente la droite D d’équation : D : 200x +
400y = 5000.
On obtient alors la figure suivante:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 29

On constate alors cette droite n’a aucun point commun avec le polygone des con-
traintes. Il n’est donc pas possible de procéder aux achats avec 5 000 francs.

4. Pour une dépense de N francs, les choix de x lots A et y lots B correspondent aux points
de la droite D N d’équation : DN : 200x + 400y = N Pour N quelconque, cette droite est
parallèle à la droite D. On remarque que pour N = 0, la droite DN passe par l’origine du
F
repère et est située à gauche de D. Donc, la valeur de N sera d’autant plus grande que la
droite DN sera éloignée et à droite de D. On cherche donc la droite D N parallèle à D,
ES

ayant des points communs avec (C) et la plus proche possible de D. Graphiquement, on
voit alors que c’est la droite passant par le point A d’intersection des droites D3 et D4 .

En utilisant les équations de D3 et D4 , on détermine alors les coordonnées du point A. On


trouve alors A(30; 10). La dépense minimale du gérant est donc de (200 ∗ 30 + 400 ∗ 10)
francs, c’est-à-dire:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 30

Dépense minimale = 10 000 francs


obtenue pour 30 lots A et 10 Lots B
Pour finir, on peut aussi préciser que le gérant, pour cette dépense aura:
•90 draps de bain,
•240 serviettes,
•300 gants de toilettes.

Exercice 2.4

1. Placer les points E et F ne pose aucun problème.


Le point E a pour coordonnées (13; 14) et correspondant à l’achat de 13 lots A et 14 lots
B.
Le nombre de pains au chocolat est alors: 13 ∗ 12 + 14 ∗ 9 = 282 ≥ 108
Le nombre de croissants est alors: 13 ∗ 8 + 14 ∗ 12 = 272 ≥ 96.
L’achat associé au point E permet de satisfaire la demande.
En revanche, le point F a pour coordonnées (10; 1).
F
Le nombre de pains au chocolat est alors: 10 ∗ 12 + 1 ∗ 9 = 129 ≥ 108.
ES

Le nombre de croissants est alors: 10 ∗ 8 + 1 ∗ 12 = 92 < 96.


Le nombre de croissants n’est pas suffisant pour satisfaire la demande.
L’achat associé au point F ne permet pas de satisfaire la demande.

2. Formons le tableau des contraintes, en appelant x le nombre de lots A et y le nombre de


lot B.

Les contraintes portant sur x et y sont alors :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 31

12x + 9y ≥ 108
8x + 12y ≥ 96

Ce système se simplifie et donne :

4x + 3y ≥ 36
2x + 3y ≥ 24

L’ensemble des points M de coordonnées (x; y) vérifiant ce système et, de plus les con-
traintes : x ≥ 0 et y ≥ 0 est alors, en considérant les droites:
• D1 : " 4x + 3y = 36 "
• D2 : " 2x + 3y = 24"
• Le point A est le point d’intersection de ces deux droites.
F
ES

3. Comme le prix des lots A et B est identiques, le coût total, en fonction de x et y est:
COU T T OT AL = p(x + y)
Minimiser le coût total revient donc à minimiser (x + y). Le nombre (x + y) est le nombre
de lots achetés au total.
a) Droites 49 et 411 . On remarque que 49 a une intersection vide avec l’ensembles des
points qui représentent les contraintes portant sur x et y. Donc, on ne peut pas satisfaire à

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Cas particuliers 32

F
la demande en achetant 9 lots au total. On remarque que 411 a une intersection non vide
avec l’ensembles des points qui représentent les contraintes portant sur x et y. On peut
ES

donc satisfaire à la demande en achetant 11 lots au total.


b) La droite correspondant à un achat au moindre coût est la droite parallèle aux droites
49 et 411 et passant par le point A appartenant aux droites 41 et 42 . Ce point a pour
coordonnées (4; 6). L’achat permettant de satisfaire la demande au moindre coût est donc:
4 lots A et 6 lots B

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Trois

METHODE DU SIMPLEXE ET
DUALITE

Ce chapitre est consacré à l’étude de la méthode du simplexe. Cette méthode est l’outil principal
de résolution des problèmes de programmation linéaire. Elle consiste à suivre un certain nombre
d’étapes avant d’obtenir la solution d’un problème donné. Il s’agit d’une méthode algébrique
itérative qui permet de trouver la solution exacte d’un problème de programmation linéaire en
un nombre fini d’étapes. La résolution graphique est inapplicable au-delà de deux variables. Il
F
est aussi nécessaire de recourir à une autre méthode : la méthode du simplexe dite également
méthode des tableaux ou méthode de Dantzig. Cette méthode, applicable quelque soit le nombre
ES

de variables, sera présentée pour des problèmes de maximisation dont toutes les contraintes
(autres que celles de positivité) sont de type ≤.

3.1 Méthode du simplexe

3.1.1 Forme canonique d’un Programme Linéaire


M ax z = c1 x 1 + c2 x 2 + · · · = cn x n
a11 x1 + a12 x2 + · · · + a1n xn ≤ b1
a21 x1 + a22 x2 + · · · + a2n xn ≤ b2
···············
am1 x1 + am2 x2 + · · · + amn xn ≤ bm
x1 ≥ 0, x2 ≥ 0, xm ≥ 0

Si la fonction objectif doit être maximisée et si toutes les contraintes sont des inéquations
du type ≤, on dit que le programme linéaire se présente sous une forme canonique.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 34

3.1.2 Forme standard d’un Programme Linéaire

On transforme les inégalités des contraintes économiques en égalités par introduction de vari-
ables supplémentaires positives ou nulles appelées variables d’écart. a11 x1 +a12 x2 +· · ·+a1n xn ≤
b1 devient a11 x1 + a12 x2 + · · · + a1n xn + t1 = b1 d’où la forme standard :

M ax z = c1 x 1 + c2 x 2 + · · · = cn x n
a11 x1 + a12 x2 + · · · + a1n xn + t1 = b1
a21 x1 + a22 x2 + · · · + a2n xn + t2 = b2
······························
am1 x1 + am2 x2 + · · · + amn xn + tm = bm
x1 ≥ 0, x2 ≥ 0, xm ≥ 0; t1 ≥ 0, t2 ≥ 0, · · · , tm ≥ 0.

Forme simpliciale:
Un programme est dit sous forme simpliciale si:
• elle est sous forme standard
• et les constantes du second membre sont toutes positives. Le programme doit être mis sous
F
forme simpliciale avant l’utilisation de l’algorithme de simplexe.
ES

3.1.3 Résolution

Afin de comparer avec la résolution graphique, nous pouvons considérer que nous sommes dans
un espace à n dimensions (nombre de variables d’activité). Les contraintes délimitent un polyè-
dre convexe, région des solutions admissibles; la fonction objectif est un hyperplan que l’on va
déplacer le plus loin possible de l’origine, jusqu’à l’extrême limite où il n’y aura plus qu’un point
d’intersection (éventuellement un segment, un plan...) avec la région des solutions admissibles.
La solution se trouvant forcément sur le pourtour du polyèdre admissible, la méthode du simplexe
consiste en itérations qui font passer d’un sommet du polyèdre à un autre en sélectionnant le
sommet adjacent maximisant la fonction objectif. Pour démarrer l’algorithme, il est nécessaire
d’avoir une solution initiale. Dans le cas simple, l’origine est solution, c.à.d. que la première
solution est x1 = 0 ; x2 = 0;· · · ; xn = 0 ; t1 = b1 ; t2 = b2 ; · · · ; tm = bm (ceci suppose que les b
i ne soient pas négatifs pour satisfaire les contraintes de signe).
L’algorithme, basé sur la méthode du pivot de Gauss pour la résolution des
systèmes d’équations linéaires, est présenté sous forme de tableau.
Soit à résoudre le programme linéaire suivant sous sa forme canonique:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 35

3x1 + 4x2 ≤ 160


6x1 + 3x2 ≤ 180
M ax 1200x1 + 1000x2
x1 ≥ 0, x2 ≥ 0

*Forme standard

3x1 + 4x2 + 1t1 + 0t2 = 160


6x1 + 3x2 + 0t1 + 1t2 = 180
M ax 1200x1 + 1000x2 + 0t1 + 0t2
x1 ≥ 0, x2 ≥ 0

* Tableau 0
en ne conservant que les coefficients des équations ci-dessus, on obtient le tableau de départ
F
ES

Ce tableau nous donne la première solution admissible:


• Les variables Hors Base (HB) (situées sur la première ligne du tableau) sont nulles :
x1 = 0; x2 = 0 (t1 et t2 en rouge ne sont pas hors base; elles ne sont présentes que pour
rappeler qu’il s’agit des colonnes des coefficients de ces deux variables ; lorsqu’on travaille sur
papier, il est préférable d’indiquer la position de ces variables par des points pour bien montrer
que seules x1 et x2 sont hors base). Cela signifie qu’on fabrique 0 pièces P1 et 0 pièces P2 .
• Les valeurs des variables dans la Base (B) (apparaissant dans la première colonne) se
lisent dans la colonne C: t1 = 160 et t2 = 180. Cela signifie qu’il reste 160 heures d’utilisation
possible de l’atelier A1 et 180 heures de l’atelier A2 .
• La dernière cellule (intersection de C et 4) donne la valeur de −z: −z = 0 donc z = 0.
Cela signifie que la marge est égale à 0.
• La ligne 4 donne les valeurs marginales ou taux marginal de substitution; elles s’interprètent
de la manière suivante: à ce stade de la solution, une augmentation de 1 unité de x1 ferait croître
la fonction objectif de 1200, et une augmentation de 1 unité de x2 ferait croître la fonction ob-
jectif de 1000. Cela signifie qu’à ce stade de la production si on augmente la production de 1

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 36

pièce de P1 , la marge va augmenter de 1200 F et si on augmente la production de 1 pièce de


P2 , la marge va augmenter de 1000F.
En effet, la solution actuelle est x1 = 0; x2 = 0 ; t1 = 160; t2 = 180
et z = 1200.x1 + 1000.x2 + 0.t1 + 0.t2 = 1200.0 + 1000.0 + 0.160 + 0.180 = 0.
Si on augmente x1 de 1 unité,
z = 1200.1 + 1000.0 + 0.0.160 + 0.180 = 1200

Si on augmente x2 de 1 unité,
z = 1200.0 + 1000.1 + 0.0.160 + 0.180 = 1000
* Tableau 1
On augmente la fonction objectif en faisant entrer une variable dans la base, prenant la
place d’une variable qui va sortir de la base.
F
ES

x1 entre donc dans la base

Pour sélectionner la variable sortant de la base, il est nécessaire de rajouter une colonne R
au tableau, obtenue en faisant le rapport membre à membre de la colonne C et de la colonne de
la variable entrant dans la base ( x1 ).

t2 sort donc de la base

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 37

On appelle pivot (égal à 6) l’intersection de la variable entrante et de la variable sortante


Pour obtenir le tableau 1, on applique les règles suivantes :

La règle du rectangle est la suivante:


F
ES

0
Remarque importante : d = d ⇐⇒ cb = 0 ⇐⇒ b = 0 ou c = 0 En conséquence, si dans
la colonne (resp. ligne) du pivot il y a un 0, toute la ligne (resp. colonne) correspondante reste
inchangée.
En appliquant ces règles on obtient le tableau 1:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 38

Ce tableau nous donne la deuxième solution admissible:


• Les variables Hors Base (HB) sont nulles: * x2 = 0; t2 = 0 ( x1 et t1 en rouge ne sont pas
hors base; elles ne sont présentes que pour rappeler qu’il s’agit des colonnes des coefficients de
ces deux variables). Cela signifie qu’on fabrique 0 pièces P2 et qu’il reste 0 heure d’utilisation
disponible à l’atelier A2 . La contrainte associée à t2 est dite saturée.
• Les valeurs des variables dans la Base (B) se lisent dans la colonne C: t1 = 70 et x1 = 30.
Cela signifie qu’on fabrique 30 pièces P1 et qu’il reste 70 heures d’utilisation disponible à l’atelier
A1 .
• La dernière cellule (intersection de C et 4) donne la valeur de −z : −z = −36000 donc
F
z = 36000. Cela signifie que la marge est égale à 36000 F.
• La dernière cellule (intersection de C et â) donne la valeur de - z : - z = -36000 donc z
ES

= 36000. Cela signifie que la marge est égale à 36000 F.


• La ligne 4 donne les valeurs marginales ou taux marginal de substitution; elles s’interprètent
de la manière suivante: à ce stade de la solution, une augmentation de 1 unité de x2 ferait croître
la fonction objectif de 400, et une augmentation de 1 unité de t2 ferait diminuer la fonction
objectif de 200 (il est à noter qu’une augmentation de 1 unité de la variable d’écart t2 revient à
diminuer le second membre de l’équation correspondante de 1 unité). Cela signifie qu’à ce stade
de la production si on augmente la production de 1 pièce de P2 , la marge va augmenter de 400
F et si on diminue la disponibilité de 1 heure à l’atelier A2 , la marge va diminuer de 200 F. La
ligne â donne les valeurs marginales ou taux marginal de substitution; elles s’interprètent de la
manière suivante: à ce stade de la solution, une augmentation de 1 unité de x2 ferait croître
la fonction objectif de 400, et une augmentation de 1 unité de t2 ferait diminuer la fonction
objectif de 200 (il est à noter qu’une augmentation de 1 unité de la variable d’écart t2 revient à
diminuer le second membre de l’équation correspondante de 1 unité).Cela signifie qu’à ce stade
de la production si on augmente la production de 1 pièce de P2 , la marge va augmenter de 400
F et si on diminue la disponibilité de 1 heure à l’atelier A2 , la marge va diminuer de 200 F.
En effet, la solution actuelle est x1 = 30; x2 = 0; t1 = 70; t2 = 0 et z = 1200.x1 + 1000.x2 +

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 39

0.t1 + 0.t2 = 1200.30 + 1000.0 + 0.70 + 0.0 = 36000.


Si on augmente x1 de 1 unité, on ne peut garder x1 = 30 car la 2ieme contrainte 6x1 + 3x2 +
0t1 + 1t2 = 180 est saturée. On doit donc déterminer la valeur de x1 permettant d’augmenter
x2 de 1 unité: 6.x1 + 3.1 + 0.70 + 1.0 = 180 ⇐⇒ 6x1 + 3 = 180 ⇐⇒ x1 = 29, 5 d’où z =
1200.29, 5 + 1000.1 + 0.70 + 0.0 = 36400, c.à.d. une augmentation de 400 F par rapport à la
solution précédente. Si on augmente t2 de 1 unité, la contrainte 6x1 + 3x2 + 0t1 + 1t2 = 180
devient 6.x1 + 3.x2 + 0.70 + 1.1 = 180 ou encore 6x1 + 3x2 = 179; on a donc bien 1 heure de
disponibilité en moins à l’atelier A2 . De plus puisque x2 = 0, on aura x1 = 179/6 au lieu de 30
d’où z = 1200.179/6 + 1000.1 + 0.70 + 0.1 = 35800, ce qui correspond à une baisse de 200 F.
Tableau 2 :
F
d’oú le tableau 2
ES

Ce tableau nous donne la troisième solution admissible:


• Les variables Hors Base (HB) sont nulles: t1 = 0; t2 = 0 ( x1 et x2 en rouge ne sont pas
hors base; elles ne sont présentes que pour rappeler qu’il s’agit des colonnes des coefficients de
ces deux variables). Cela signifie qu’il reste 0 heure d’utilisation disponible aux ateliers A1 et
A2 . Les contraintes associées à t1 et t2 sont saturées.
• Les valeurs des variables dans la Base (B) se lisent dans la colonne C : x2 = 28 et x1 = 16.
Cela signifie qu’on fabrique 16 pièces P1 et 28 pièces P2 .
• La dernière cellule (intersection de C et 4) donne la valeur de −z : −z = −47200 donc
z = 47200.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 40

Cela signifie que la marge est égale à 47200 F.


• La ligne 4 donne les valeurs marginales ou taux marginal de substitution; elles s’interprètent
de la manière suivante: à ce stade de la solution, une augmentation de 1 unité de t1 ferait dimin-
uer la fonction objectif de 160, et une augmentation de 1 unité de t2 ferait diminuer la fonction
objectif de 120 (il est à noter qu’une augmentation de 1 unité d’une variable d’écart revient à
diminuer le second membre de l’équation correspondante de 1 unité).

Remarques importantes :
• S’il existe une variable HB ayant un coefficient positif dans la ligne 4 et telle que tous les
coefficients correspondants dans le tableau soient nuls ou négatifs, alors la solution est infinie.
• Si, à la fin des itérations, une variable est HB avec un coefficient nul dans la ligne 4,
F
alors on a une arête (plan,...) optimale. Les autres sommets solutions sont obtenus en faisant
ES

rentrer cette variable dans la base.


• La résolution du problème à Minimum ne pose pas de difficulté; il suffit, dans le critère de
sélection de la variable entrant dans la base, de remplacer "plus grand coefficient positif "par
"plus grand coefficient négatif" et dans le critère d’arrêt des itérations de remplacer "coefficients
négatifs ou nuls " par "coefficients positifs ou nuls".
Interprétation graphique de la méthode du simplexe:
Les différentes solutions obtenues à chaque tableau correspondent respectivement aux som-
mets O (x1 = 0 ; x2 = 0), A (x1 = 30 ; x2 = 0), B (x1 = 16; x2 = 28) du graphique. On a
cheminé sur le pourtour du polyèdre des solutions admissibles, en sélectionnant parmi tous les
sommets possibles celui donnant la valeur maximale à la fonction objectif.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 41

F
ES

RETENONS
1) Pour un maximum, la variable entrante est celle qui, dans le tableau, a l’élément
strictement positif le plus grand sur la ligne de la fonction économique (appelé ligne 4 ci-
après). Les valeurs des variables de la base étant toujours positives, celle ayant le coefficient
positif de Z le plus élevé augmentera plus que les autres la valeur de la fonction économique.
• Si tous les éléments de la ligne â sont négatifs ou nuls, le programme est optimal:
-plus élevé augmentera plus que les autres la valeur de la fonction économique.
-si les seuls éléments nuls de la ligne 4 correspondent aux variables de base (ou d’écart), alors
le maximum est unique. C’est le cas lorsque la ligne de niveau la plus éloignée de l’origine
est tangente en un seul sommet du polyèdre convexe.
- sinon, il y a une infinité de solutions, car n’importe quelle autre variable ayant un 0 pour la
ligne 4 peut (ou aurait pu) entrer à la place d’une variable de base affectant les valeurs des
autres variables de base tout en gardant constant. C’est le cas lorsque la ligne de niveau la plus
éloignée de l’origine est confondue à tout un segment de la frontière du
• S’il existe un élément de la ligne 4 strictement positif tel que les éléments de la colonne

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 42

correspondante sont tous négatifs ou nuls, le problème n’a pas de solution optimale finie,
car il ne peut pas avoir de variable sortante. Ce cas "normalement" exclus du fait même de la
nature des programmes économiques se produit quand il y a erreur de modélisation.
• S’il existe un ou plusieurs éléments de la ligne 4 strictement positifs, on poursuit le
processus itératif, jusqu’à aboutir à l’un des deux cas ci-dessus.
2) Pour un minimum, la variable entrante est celle qui dans le tableau a le coefficient
(sur la ligne 4) négatif le plus grand en valeur absolue. Les valeurs des variables de base
étant toujours positives; celle ayant le coefficient négatif de 4 le plus élevé en valeur absolue
diminuera plus que les autres la valeur de la fonction économique.
* Si tous les éléments de la ligne 4 sont positifs ou nul, le programme est optimal:
- si les seuls éléments nuls de la ligne 4 correspondent aux variables de base (ou d’écart),
alors le minimum est unique. C’est le cas lorsque la ligne de niveau la plus proche de l’origine
est tangente en un seul sommet du polyèdre convexe.
- sinon, il y a une infinité de solutions, car n’importe quelle autre variable ayant un coeffi-
cient nul sur la ligne 4 peut (ou aurait pu) entrer à la place d’une variable de base affectant
F
les valeurs des autres variables de base tout en gardant Z constant. C’est le cas lorsque la ligne
de niveau la plus proche de l’origine est confondu à tout un segment de la frontière du polyèdre
ES

convexe.sur la ligne â peut (ou aurait pu) entrer à la place d’une variable de base affectant les
valeurs des
• S’il existe un élément de la ligne 4 strictement négatif tel que les éléments de la colone
correspondante sont tous négatifs ou nuls, le problème n’a pas de solution optimale finie, car il
ne peut pas avoir de variable sortante. Ce cas "normalement" exclus du fait même de la nature
des programmes économiques se produit quand il y a erreur de modélisation.
• S’il existe un ou plusieurs éléments de la ligne 4 strictement négatifs, on poursuit le
processus itératif, jusqu’à aboutir à l’un des deux cas ci-dessus.
La variable sortante est toujours celle qui correspond à la valeur finie positive la plus petite
de la colonne C/k "colonne entrante", qu’il s’agisse de maximiser ou de minimiser la fonction
économique. Comme ce rapport doit toujours être strictement positif, on comprend pourquoi
il ne peut avoir de variable sortante:
- dans le cas du maximum, ”S’il existe un élément de la ligne 4 strictement positif tel que
les éléments de la colone correspondante sont tous négatifs ou nuls”
- dans le cas du minimum, ”S’il existe un élément de la ligne 4 strictement négatif tel que
les éléments de la colone correspondante sont tous négatifs ou nuls”.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 43

Le pivot est la valeur située à l’intersection de la variable entrante et la variable sortante


de la base. Le nouveau tableau est construit en rendant unitaire le pivot et en faisant les trans-
formations de Gauss (méthode du rectangle) nécessaires pour avoir partout 0 dans la colonne
pivot y compris sur la ligne â de la fonction économique.

Exercice 3.1 .
Une société fabrique trois modèles de meubles : classique, rustique, moderne. Les standards
unitaires de production sont résumés dans le tableau suivant :

F
Déterminer les quantités à produire pour maximiser son résultat.
ES

Résolution 3.1
Forme canonique de ce programme Soit:
x: le nombre de mod ‘eles classiques ‘a produire
y: le nombre de mod ‘eles rustiques ‘a produire
z: le nombre de mod ‘eles modernes ‘a produire


5x + 8y + 5z ≤ 900







x + 2y + 3z ≤ 516






 2x + 2y + 0z ≤ 200



M axZ = 1000x + 960y + 1200z







 x ≥ 0, y ≥ 0, z ≥ 0.

Forme standard
La méthode du simplexe nécessite une mise sous forme standard : les inégalités sont trans-
formées en égalités grâce ‘a l’introduction des variables d’écart positives ou nulles notées . Il y
a une variable pour chaque contrainte (autre que contrainte de positivité).
Exemple: Etude de la contrainte relative au facteur bois

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 44

On obtient donc la forme standard


5x + 8y + 5z + t1 = 900










 x + 2y + 3z + t2 = 516


 2x + 2y + 0z t3 = 200



M axZ = 1000x + 960y + 1200z + 0t1 + t2 + t3







 x ≥ 0, y ≥ 0, z ≥ 0.

Tableau 0
F
ES

Interprétation de ce tableau :

Il s’agit de la solution admissible de départ qui respecte toutes les contraintes : ne rien
produire. La production est donc nulle (x = 0; y = 0; z = 0) et la valeur de la fonction objectif
est égale ‘a 0.
Les capacités disponibles des facteurs sont intactes. Ainsi, t1 = 900 signifie qu’il reste 900
unités de bois t2 = 516 signifie qu’il reste 516 unités de main d’œuvre, t3 = 200 signifie qu’il
reste 200 unités de centre finition.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 45

Cette solution peut être améliorée puisque les coefficients de la ligne 4 ne sont pas négatifs
ou nuls.
Continuer l’exemple en suivant l’exemple précédent.
On trouve :
x = 12, y = 0, z = 168, et, Z = 213600.
NB: Quel que soit le tableau, les coefficients de la derni ‘ere ligne (ligne 4) sont appelés
taux marginaux de substitution. Chaque taux marginal de substitution mesure l’apport ‘a la
fonction économique de l’entrée dans la base d’une unité d’une variable hors base.
2) Cas particulier: changement de variable
Soit le programme linéaire suivant:


2x + y + z ≤ 1550







5x + 2y + 2z ≤ 3500






 z ≥ 500

F


M axZ = 120x + 150y + 100z






ES


 x ≥ 0, y ≥ 0, z ≥ 0.

z ≥ 500 montre que la méthode présentée n’est pas applicable (en raison de la contrainte ≥).
La contrainte de signe z ≥ 0 est superflue en raison de la contrainte z ≥ 500, et peut donc être
supprimer. Un changement de variable permet de résoudre le problème posé par la contrainte
z ≥ 500.
Cette contrainte peut s’écrire z − 500 ≥ 0. Posons z1 = z − 500 et z = z1 + 500.
Le changement de variable donne le programme suivant





 2x + y + (z1 + 500) ≤ 1550



 5x + 2y + 2(z1 + 500) ≤ 3500

M axZ = 120x + 150y + 100(z1 + 500)









 x ≥ 0, y ≥ 0, z ≥ 0.

1

Soit

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 46





 2x + y + z1 ≤ 1550



 5x + 2y + 2z1 ≤ 3000

M axZ = 120x + 150y + 100z1 + 50000









 x ≥ 0, y ≥ 0, z ≥ 0.

1

La forme standard de ce programme se présente comme suit:





 2x + y + z1 + t1 ≤ 1050



 5x + 2y + 2z1 t2 ≤ 3000

M axZ = 120x + 150y + 100z1 + 50000 + 0t1 + 0t2









 x ≥ 0, y ≥ 0, z ≥ 0.

1

Tableau 0:
F
ES

Tableau 1:

L’optimum est atteint puisque tous les coefficients de la ligne 4 sont négatifs ou nuls. La
production est x = 0, y = 1050; z1 = 0 soit z = 0 + 500 = 500.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 47

3) DUAL
La notion de dualité a été introduite par Von Neumann en 1947, puis développée par Gale,
Kuhn et Tucker en 1951. Les propriétés fondamentales des problèmes de dualité ont été définies
par Goldman and Tucker en 1956.
A tout programme linéaire appelé PRIMAL correspond un programme linéaire appelé DUAL
obtenu de la manière suivante:

• La dualité permet de résoudre les problèmes de minimisation dont les contraintes (autres
que celles de positivité des signes) sont de sens ≥.
• Le nombre de variables du dual est égal au nombre de contraintes du primal. Elles doivent
F
être différenciées de celles du primal.
• Le nombre de contraintes du dual est égal au nombre de variables du primal.
ES

• Les coefficients des colonnes (lignes) du primal sont les coefficients des lignes (colonnes) du
dual.
• Les inégalités du dual sont de sens opposé à celles du primal.
• Les coefficients de la fonction économique du primal sont les contraintes du dual.
• Si le primal est une minimisation, le dual est une maximisation et inversement.
• Les coefficients de la fonction économique du dual sont les contraintes du primal.
• Le dual du dual est le primal.
• Un programme linéaire possède une solution optimale finie si et seulement si lui et son dual
possèdent des solutions réalisables.
• Si le problème primal possède une solution optimale infinie, alors le dual n’a pas de solution
réalisable.
• Si le dual ne possède pas de solution réalisable, alors que le primal en possède, alors la solution
du primal est une solution optimale infinie.
• Une contrainte est dite saturée lorsque la variable d’écart qui lui est associée est nulle à
l’optimum.
• Si pour une solution optimale d’un programme linéaire une contrainte n’est pas saturée, alors

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 48

la valeur optimale (duale) correspondante est nulle. La réciproque n’est pas (nécessairement)
vraie.
• Si la valeur optimale d’une variable n’est pas nulle, alors la contrainte duale correspondante
est saturée pour la solution optimale. Le corollaire est très utile pour résoudre un programme à
partir de la solution de son dual.
• Si pour une solution optimale d’un programme linéaire une contrainte n’est pas saturée, alors
la valeur optimale (duale) correspondante est nulle. En terme économique, par exemple, si
un bien est abondant (il n’y en a plus qu’on ne peut utiliser efficacement), son coût marginal
(une heure de location supplémentaire) considéré comme son prix d’équilibre (la variable duale
associée) est nul.
Exemple F
ES

A l’optimum, le primal et le dual sont liés par les règles suivantes:


• les fonctions objectifs z et w ont la même valeur optimale
• la valeur marginale d’une variable dans un programme est égale à l’opposé de la valeur opti-
male de la variable associée dans l’autre programme et réciproquement.
Exemple

Exercice 3.2 .
Une société fabrique, entre autres, deux produits P1 et P2 dont les marges sur coûts variables
sont respectivement de 16kF et de 10 kF. La production de ces produits nécessite le passage dans
trois ateliers pendant les temps de fabrication exprimés en heures dans le tableau suivant

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 49

Un donneur d’ordres s’adresse à la société pour un contrat de sous-traitance. Déterminer le


prix de location des ateliers pour que le coût soit minimal pour le donneur d’ordres et acceptable
pour la société.
Résolution 3.2
Soit:
x1 le prix de location de l’atelier 1
x2 le prix de location de l’atelier 2
x3 le prix de location de l’atelier 3
F
La production d’un produit P1 rapporte une marge sur coûts variables de 16 kF pour une le
ES

prix de location de l’atelier 3 consommation d’une heure de l’atelier 1, de 2 heures de l’atelier


2 et d’une heure de l’atelier 3. La location des ateliers doit donc générer un gain au moins
équivalent, d’où la contrainte
x1 + 2x2 + x3 ≥ 16.
Le même raisonnement est appliqué au produit P2 . Et on a
2, 5x1 + x2 + 1, 5x3 ≥ 10.
D’où le programme linéaire:




 x1 + 2x2 + x3 ≥ 16



 2, 5x1 + x2 + 1, 5x3 ≥ 10

M in Z = 195x1 + 160x2 + 120x3









 x ≥ 0, x ≥ 0, x ≥ 0.

1 2 3

La résolution graphique n’est pas applicable puisque le programme comporte plus de deux
variables. La méthode du simplexe n’a été présentée que pour des contraintes ≤.
La dualité permet de résoudre les problèmes de minimisation dont les contraintes (autres
que celles de positivité des signes) sont de sens ≥.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 50

Le dual est obtenu comme suit


y1 + 2, 5y2 ≤ 195







2y1 + y2 ≤ 160






 y1 + 1, 5y2 ≤ 120



M ax w = 16y1 + 10y2







 y1 ≥ 0, y2 ≥ 0, y3 ≥ 0.

Il s’agit de résoudre le primal. Il faudra donc déterminer la solution du programme primal


à partir de la résolution du programme dual.
La forme standard se présente comme suit:


y1 + 2, 5y2 + u1 = 195









 2y1 + y2 + u2 = 160
F



 y1 + 1, 5y2 + u3 = 120
ES




M ax w = 16y1 + 10y2 + 0u1 + 0u2







 y1 ≥ 0, y2 ≥ 0, y3 ≥ 0, u1 ≥ 0, u2 ≥ 0.

Tableau 0

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 51

Tableau 1

Tableau 2 F
ES

L’optimum du dual est atteint, mais il s’agit de résoudre le programme primal.


REGLE : SOLUTIONS DU PRIMAL
A l’optimum, la solution du programme primale est, au signe près, lue sur la
dernière ligne du tableau dans les colonnes des variables d’écart.
A l’optimum, la valeur de la fonction économique du dual est égale à celle du
primal.
La solution du primal est donc :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 52





 x1 = 0



 x2 = 7

x3 = 2








 Z = 1360

Exercice 3.3 .
Une entreprise de menuiserie envisage de produire des bureaux. Elle peut en faire de deux types
:
• un bureau ordinaire qu’elle pourrait vendre avec un profit de 400 euros. Le marché est de 800
unités ;
• un bureau de luxe pour lequel le profit serait de 1000 euros par unité vendue. Elle espère
pouvoir en vendre 700.
Les deux bureaux nécessitent une quantité égale de bois de 0,45 dm 3 de pin. Le fournisseur
habituel de l’entreprise ne peut en fournir, dans la qualité habituelle, que 600 dm3 . Il faut
F
également utiliser du latté de 15 mm : 0,5 m2 pour le bureau de luxe et 0,75 m2 pour le bureau
ES

ordinaire. Notre fournisseur peut nous livrer à concurrence de 1 000 m2 . Il faut 12 h de travail
pour monter un bureau normal et 24 h pour monter celui de luxe. La capacité annuelle est de
20 400 h de travail.
1) Vous êtes appelé en consultation pour déterminer le programme de fabrication optimum.
Vous utiliserez une méthode graphique.
2) Les capacités d’absorption du marché restent les mêmes. On envisage d’augmenter la produc-
tion pour atteindre un profit de 900 000 euros. Quel est le programme de fabrication permettant
d’obtenir ce résultat ? De combien doivent être augmentées la ou les ressources qui limitaient
précédemment la production ?

Exercice 3.4 .
M. Martin, qui tient une boulangerie haut de gamme sur les Champs élysées vous signale qu’il
est réoccupé par la commercialisation des pains et des baguettes. Il souhaite savoir quel est
le nombre optimum à fabriquer chaque jour de chacun de ces deux produits, qui constituent
l’essentiel de son chiffre d’affaires. Il vous a communiqué les informations suivantes:
Prix de vente hors taxe d’un pain de 400 g : 3,25 euros.
Prix de vente hors taxe d’une baguette de 250 g : 2,20 euros.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 53

On admettra que le coût variable du pain (quelle que soit la présentation, pain ou baguette)
s’établit à 3euros le kg. Le maximum de pâte à pain fournie est de 225 kg. Le four permet de
cuire en une heure 100 baguettes ou 75 pains, et peut fonctionner 8 h au maximum. Enfin,
M. Martin estime qu’il ne peut pas vendre en une journée plus de 500 pains et plus de 500
baguettes.
1) Ecrire le programme linéaire qui permet de maximiser le bénéfice " Boulangerie " de M.
Martin.
2) Donner une solution graphique.

Exercice 3.5 .
Reprendre l’exercice n1 et utiliser la méthode du simplexe.

Exercice 3.6 .
Un agriculteur dispose d’une superficie cultivable de 50 ha. Il peut écouler, au prix du marché,
tous les produits qu’il obtient et qui sont essentiellement des tomates, des laitues et des radis.
Les tomates se vendent 5 F le kg, la laitue se vend 3,5 F le pied et la livre de radis 2,5 F.
F
Les rendements moyens par ha sont respectivement de 2 tonnes, 4 000 pieds et 1 tonne, pour
ES

les tomates, la laitue et les radis. Pour obtenir ces résultats, il faut employer des engrais à
raison de100 kg/ha pour les tomates et pour les laitues et à raison de 50 kg/ha pour les radis.
D’autre part, les travaux d’aménagement du sol, de semence et de récolte demandent l’emploi de
dix hommes/jour par hectare pour les tomates, de six hommes/jour par hectare pour les radis
et de vingt hommes/jour par hectare pour la laitue. Compte tenu des disponibilités locales en
main-d’œuvre, le cultivateur ne peut employer que 400 hommes/jour. L’engrais revient à 50 F
le kg, le coût d’un homme/jour est de 350 F. Il s’agit de déterminer le meilleur programme de
production. Poser le problème sous forme de programme linéaire.
1) Déterminer la solution optimale à l’aide de la méthode du simplexe.
2) Peut-on améliorer le programme si on peut disposer de 200 hommes/jour de main d’œuvre
supplémentaire au prix de 400 F par homme/jour ?

Exercice 3.7 .

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 54

Résoudre le programme linéaire suivant:






 2x + y ≤ 10



 x−y ≤8

M ax z = 2x + y







 x ≥ 0, y ≥ 0

Exercice 3.8 .
Une société des carrières a pour objet l’extraction et la distribution de matériaux de carrière.
Elle doit assurer, pour des travaux routiers, la fourniture aux Ponts et Chaussées de graviers
en divers calibres.
Un marché portant sur les quantités suivantes :
Graviers calibre 1..................................13500 tonnes
Graviers calibre 2..................................11200tonnes
Graviers calibre 3..................................5000tonnes
a été adjugé pour un prix global de facturation.
F
La société exploite deux carrières P1 et P2 louées à une société civile qui perçoit une redevance
ES

par tonne de pierre extraite. Celle-ci est la suivante:


Pour P1 ..............................19, 40 euros par tonne
Pour P2 ..............................20, 00 euros par tonne
Après extraction la pierre et concassée. Les graviers ainsi obtenus sont triés selon leur calibre.
Chaque tonne de pierre fournit les quantités suivantes de gravier (exprimées en tonnes) : Pierre
de P1 : Pierre de P2 :
Graviers calibre 1 : 0,36 t Graviers calibre 1 : 0,45 t
Graviers calibre 2 : 0,40 t Graviers calibre 2 : 0,20 t
Graviers calibre 3 : 0,16 t Graviers calibre 3 : 0,10 t
(Le complément à une tonne représente du sable, actuellement considéré comme déchet sans
valeur marchande).
La direction souhaite définir son programme d’extraction de pierre de P1 et de P2 de façon à
minimiser le coût de redevances à la société civile.
1) Présenter le programme linéaire correspondant sous la forme canonique.
2) Donner la formulation du programme dual.
3) Résoudre le programme dual par la méthode du simplexe. L’optimisation du programme
conduit-elle à produire des graviers en excédent par rapport aux tonnages adjugés ?

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode du simplexe 55

Exercice 3.9 .
L’entreprise Duralumin fabrique pour des entreprises de quincaillerie, des pièces en inox. Ces
pièces sont de trois types : A,B,C. Elles sont fabriquées par lots de 50 dans un grand atelier où
sont rassemblées deux machines pour la découpe de l’inox, une machine pour l’emboutissage,
deux machines pour le polissage et la finition. Chaque machine fonctionne 120 heures par mois.
Les caractéristiques de fabrication sont rassemblées dans le tableau suivant:

Quel est le programme de production optimal ? On utilisera la méthode du simplexe.

Exercice 3.10 .
Une entreprise chimique utilise la matière première M. Lors de la première transformation
F
chimique T1 , on obtient 75% de produit fini B et 25 % de produit C. On peut retraiter tout ou
ES

partie des produits C. On obtient à l’issue de cette transformation T2 , 40% de produits B, 20%
de produits C et 20% de produits D.
L’entreprise utilise un minimum de 3 000 tonnes de produits B, de 500 tonnes de produits C
et de 500 tonnes de produits D. La transformation T1 coûte 100 euros par tonne. T2 coûte 200
euros par tonne.
1) Ecrire le programme linéaire qui permet de minimiser le coût, en fonction de la quantité de
matière M qui est passée par T1 , et de la quantité de produits C que l’on transforme par T2 .
2) Ecrire le programme dual et le résoudre par la méthode du simplexe.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Quatre

NOTIONS ELEMENTAIRES SUR LES


GRAPHES

4.1 GRAPHE ORIENTE


Un graphe orienté G est un couple (X,R) où X est un ensemble de sommets {x1 , · · · , xn et R
un ensemble de couples orientés (xi , xj ) appelés arcs.
Pour un arc (xi , xj ) d’origine xi et d’extrémité xj , xi est un précédent de xj , et xj est un
suivant de xi . Un chemin est une suite ordonnée (x1 , · · · , xn ) de sommets reliés par des arcs.
F
La longueur du chemin est le nombre d’arcs qu’il contient.
ES

Un circuit est un chemin (x1 , · · · , xn ) tel que x1 = xn .

4.2 REPRESENTATION D’UN GRAPHE

4.2.1 Représentation sagittale

Les sommets sont représentés par des points et les arcs par des flèches.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
REPRESENTATION D’UN GRAPHE 57

4.2.2 Représentation par un dictionnaire

Outre une représentation graphique sagittale, un graphe peut être représenté par un tableau,
appelé dictionnaire, qui à chaque sommet énumère les suivants et les précédents :

F
ES

L’existence d’un arc entre 2 sommets est représentée par:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
NIVEAU 58

4.3 NIVEAU
Dans un graphe sans circuit, le niveau d’un sommet x est la longueur du plus long chemin
d’extrémité x. La détermination des niveaux de l’exemple précédent se fait à partir du diction-
naire des précédents:

C0 = {sommets de niveau 0}
= sommets n’ayant pas de précédent={x1 }
Tous les sommets x1 sont barrés (en rouge ici),
d’où le tableau ci-dessous

Les sommets barrés (en rouge) sont considérés


F
comme n’existant plus.
ES

C1 = {sommets de niveau 1} = sommets


n’ayant pas de précédent={x3 }
Tous les sommets x3 sont barrés (en rouge
ici), d’où le tableau ci-dessous

Les sommets barrés (en rouge) sont considérés


comme n’existant plus.
C2 = {sommets de niveau 2} = {sommets
n’ayant pas de précédent}= {x2 }
Tous les sommets x2 sont barrés (en rouge ici),
d’où le tableau ci-dessous.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
NIVEAU 59

Les sommets barrés (en rouge) sont considérés


comme n’existant plus.
C3 = {sommets de niveau 3} = {sommets
n’ayant pas de précédent}= {x4 }
Tous les sommets x4 sont barrés (en rouge ici),
d’où le tableau ci-dessous

Les sommets barrés (en rouge) sont considérés


comme n’existant plus.
C4 = {sommets de niveau 4} = {sommets
n’ayant pas de précédent}= {x5 }
Tous les sommets x5 sont barrés (en rouge ici),
d’où le tableau ci-dessous
F
ES

Les sommets barrés (en rouge) sont considérés


comme n’existant plus.
C5 = {sommets de niveau 5} = sommets
n’ayant pas de précédent= {x6 }
Tous les sommets x6 sont barrés (en rouge ici),
d’où le tableau ci-dessous

Tous les sommets ayant été barrés,


l’algorithme est terminé. Les niveaux sont donc
C0 = {x1 }
C1 = {x3 }
C2 = {x2 }
C3 = {x4 }
C4 = {x5 }
C5 = {x6 }
Pratiquement, il n’est pas indispensable de reproduire à chaque fois le dictionnaire; il suffit

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
NIVEAU 60

de barrer au fur et à mesure les différents sommets sur le même tableau du dictionnaire des
précédents. La recherche des niveaux permet de construire le graphe ordonné par niveaux. Les
axes verticaux et les niveaux n’ont pas à être représentés; ils apparaissent ci-dessous pour mettre
en évidence le fait que les sommets de même niveau doivent être alignés sur la même verticale.

CHEMINS EXTREMAUX
A chaque arc (x,y) est associé un nombre positif V (x, y) appelé la valeur de l’arc. L’algorithme
de Ford va nous permettre de déterminer le chemin de valeur maximale entre un sommet D
(Départ) et un sommet F (Fin).
F
a) On ordonne le graphe par niveaux
b) On fait la représentation du graphe par niveaux. A partir de cette représentation, on sup-
ES

prime les sommets et les arcs par lesquels on ne peut pas passer pour aller de D à F.
c) En partant du sommet D de niveau le plus faible (le plus à gauche) jusqu’au sommet F de
niveau le plus fort (le plus à droite), on associe à chaque sommet x une marque m(x) corre-
spondant à la valeur du chemin de valeur maximale aboutissant à x.

La marque de F donnera donc la valeur du chemin le valeur maximale entre D et F. Le


chemin de valeur maximale est le chemin qui a permis d’aboutir à la marque de F. Il est obtenu
en partant de F et en regardant quel est le sommet précédent qui a permis d’obtenir m(F), et
ainsi de suite jusqu’à revenir en D.

Exemple 4.1 .

Considérons le graphe suivant ordonné par niveaux

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
NIVEAU 61

On désire chercher le chemin de valeur maximale entre le sommet 4 et le sommet 7. On


supprime donc les sommets et les arcs par lesquels on ne peut pas passer pour aller de 4 à 7,
c.à.d.
• les sommets 1 et 2, ainsi que les flèches issues de ces sommets • les sommets 8 et 9, ainsi que
les flèches aboutissant à ces sommets
F
ES

m(4) = 0
m(3) = m(4) + V (4, 3) = 0 + 5 = 5
m(5) = m(4) + V (4, 5) = 0 + 2 = 2
m(6) = M ax{m(3) + V (3, 6); m(5) + V (5, 6)} = M ax{5 + 5; 2 + 1} = M ax{10; 3} = 10
m(7) = M ax{m(3) + V (3, 7); m(6) + V (6, 7)} = M ax{5 + 3; 10 + 6} = M ax{8; 16} = 16
Le chemin de valeur maximale entre 4 et 7 a donc pour valeur 16. Pour déterminer quel est
ce chemin, en partant du sommet final, on regarde quel est le sommet précédent qui a permis
d’obtenir la marque retenue. Ci-dessous est repris l’algorithme précédent où le cheminement
suivi est surligné en rouge en partant du sommet final 7:
m(7) = M ax{m(3) + V (3, 7); m(6) + V (6, 7)} = M ax{5 + 3; 10 + 6} = M ax{8; 16} = 16

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
RECHERCHE D’UN CHEMIN DE VALEUR MINIMALE 62

Pour aboutir à 7, on est passé par 6


m(6) = M ax{m(3) + V (3, 6); m(5) + V (5, 6)} = M ax{5 + 5; 2 + 1} = M ax{10; 3} = 10
Pour aboutir à 6, on est passé par 3
m(3) = m(4) + V (4, 3) = 0 + 5 = 5
Pour aboutir à 3, on est passé par 4
m(4) = 0 4 est le sommet initial; d’où le chemin de valeur maximale (4,3,6,7).

4.4 RECHERCHE D’UN CHEMIN DE VALEUR MINI-


MALE
Pour un chemin de valeur minimale, il suffit de remplacer "max" par "min" dans l’algorithme.

Exercice 4.2 Soit le dictionnaire des suivants:

Sommes A B C D E F G
Sommets suivants C,D E B,E,F F E B,C
F
Déterminer le dictionnaire des précédents et représenter le graphe associé.
ES

Exercice 4.3 Soit le graphe valué suivant:

1. Ecrire le dictionnaire des précédents.

2. Déterminer le niveau de chaque sommet.

3. Présenter le graphe par niveaux.

4. Calculer les chemins extrémaux.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Cinq

ORDONNANCEMENT MPM-PERT

Un problème d’ordonnancement consiste à ordonner dans le temps un ensemble de tâches con-


tribuant à la réalisation d’un même projet. L’objectif est de minimiser la durée de réalisation du
projet compte tenu des contraintes d’antériorité reliant les différentes tâches. De plus, on déter-
mine les calendriers de réalisation de chacune de ces tâches ainsi que les marges de manœuvre
associées.

Exemple 5.1 Les opérations mises en jeu dans la construction d’un ensemble hydro-électrique
sont les suivantes :
F
a) Construction des voies d’accès
ES

b) Travaux de terrassement
c) Construction des bâtiments administratifs
d) Commande du matériel électrique
e) Construction de la centrale
f ) Construction du barrage
g) Installation des galeries et conduites forcées
h) Montage des machines
i) Essais de fonctionnement

Les contraintes d’antériorité sont les suivantes:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
MPM 64

Opérations durée(mois) opérations prérequises


A 4 -
B 6 a
C 4 -
D 12 -
E 10 b,c,d
F 24 b,c
G 7 a
H 10 e,g
I 3 f,h

Deux méthodes sont classiquement utilisées : la Méthode des Potentiels Metra (MPM),
et la méthode PERT (Programm Evaluation and Research Task). Toutes les deux
utilisent des graphes pour résoudre le problème.

5.1 MPM
F
ES

5.1.1 Construction du graphe

- un sommet correspond à une tâche


- un arc définit une relation d’antériorité
- la valeur de l’arc définit le temps minimum séparant deux tâches successives.
- Chaque sommet de la représentation graphique est figuré par un rectangle :

Tx T∗x
X

où:
x = nom de la tâche
Tx =date de début au plus tôt de la tâche
Tx∗ =date de début au plus tard de la tâche.
- Un sommet terminal permettant de dater la fin des travaux est rajouté au graphe.
- La représentation graphique est ordonnée par niveaux des sommets, c.à.d. des tâches.

Exemple 5.2 *Détermination des niveaux des sommets ou tâches (voir chapitre sur les graphes)
*Représentation graphique

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
MPM 65

Opérations durée(mois) opérations prérequises


a 4 -
b 6 a
c 4 -
d 12 -
e 10 b,c,d
F
f 24 b,c
g 7 a
ES

h 10 e,g
i 3 f,h

5.1.2 Calendrier au plus tôt

Une tâche x ne pouvant débuter que lorsque toutes les tâches qui y aboutissent sont terminées,
Tx correspond à la valeur du chemin de valeur maximale aboutissant à x. Ceci sera obtenu en

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
MPM 66

utilisant l’algorithme de Ford (voir chapitre sur les graphes), après avoir ordonné le graphe par
niveaux des tâches.
Tx = max[Ty + V (y, x)] , le max étant pris sur les précédents y de x.
Exemple
Ta = Tc = Td = 0
Tb = Ta + 4 = 4
Tg = Ta + 4 = 4
Tf = M ax(Tb + 6; Tc + 4) = M ax(10; 4) = 10
T e = M ax(Tb + 6; Tc + 4; Td + 12) = M ax(10; 4; 12) = 12
Th = M ax(Te + 10; Tg + 7) = M ax(22; 11) = 22
Ti = M ax(Tf + 24; Th + 10) = M ax(34; 32) = 34
Tz = Ti + 3 = 37
Ces résultats peuvent être reportés sur le graphe
F
ES

Pour le sommet terminal z, Tz correspond à la durée minimale du projet (qui correspond


au chemin de valeur maximale aboutissant à z). Le chemin de valeur maximale associé est
appelé chemin critique, constitué de tâches critiques : un retard sur l’une de tâches critiques
entraînerait un allongement de la durée du projet.
Exemple Le chemin de valeur maximale est le chemin a, b, f, i. (voir chapitre sur les graphes)
et a pour durée 37.

5.1.3 Calendrier au plus tard

Il s’agit de la date au plus tard à laquelle peut commencer une tâche sans remettre en cause la
date de fin des travaux. Ceci sera obtenu en commençant par les sommets de niveau les plus
élevés jusqu’aux sommets de niveau les plus faibles.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
MPM 67

T∗z = Tz pour le sommet terminal


T∗x = min[Ty∗ − V (x, y)],le min étant pris sur les suivants y de x.
Exemple:
Ti∗ = Tz∗ − V (i, z) = 37 − 3 = 34
Th∗ = Ti∗ − V (h, i) = 34 − 10 = 24
Tf∗ = Ti∗ − V (f, i) = 34 − 24 = 10
Te∗ = Th∗ − V (e, h) = 24 − 10 = 14
Tg∗ = Th∗ − V (g, h) = 24 − 7 = 17
Tb ))∗ = M in[Te∗ − V (b, e); Tf∗ − V (b, f ) = M in[14 − 6; 10 − 6] = 4
Ta∗ = M in[Tb∗ − V (a, b); Tg∗ − V (a, g) = M in[4 − 4; 17 − 4] = 0
Tc∗ = M in[Tf∗ − V (c, f ); Te∗ − V (c, e) = M in[10 − 4; 14 − 4] = 6
Td∗ = Te∗ − V (d, e) = 14 − 12 = 2
Ces résultats peuvent être reportés sur le graphe
F
ES

Remarque: sur les tâches critiques a, b, f, i, on a Tx∗ = Tx

5.1.4 Marges totales

C’est le retard maximum que l’on peut prendre dans la mise en route d’une tâche sans remettre
en cause les dates au plus tard des tâches suivantes (donc sans retarder la fin des travaux).
mt(x)=T∗x − Tx
Exemple

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 68

mt(a) = T*a - Ta = 0 - 0 = 0
mt(b) = T*b - Tb = 4 - 4 = 0
mt(c) = T*c - Tc = 6 - 0 = 6
mt(d) = T*d - Td = 2 - 0 = 2
mt(e) = T*e - Te = 14 - 12 = 2
mt(f) = T*f - Tf = 10 - 10 = 0
mt(g) = T*g - Tg = 17 - 4 = 13
mt(h) = T*h - Th = 24 - 22 = 2
mt(i) = T*i - Ti = 34 - 34 = 0

5.1.5 Marges libres

C’est le retard maximum que l’on peut prendre dans la mise en route d’une tâche sans remettre
en cause les dates au plus tôt des tâches suivantes (donc sans retarder la fin des travaux).
mL(x) = min [Ty - Tx - V(x,y)], lemintantprissurlessuivantsydex.
Exemple
mL(a) = Min [Tb-Ta-V(a,b);Tg-
F
Ta-V(a,b)]=Min(0;0)=0
mL(b)=Min[Tf-Tb-V(b,f);Te-
ES

Tb-V(b,e)]=Min(0;2)=0
mL(c) = Min [Tf - Tc - V(c,f) ;
Te - Tc - V(c,e)] = Min (6 ; 8) =
6 mL(d) = Te - Td - V(d,e) = 0
mL(e) = Th - Te - V(e,h) = 0
mL(f) = Ti - Tf - V(f,i) = 0
mL(g) = Th - Tg - V(g,h) = 11
mL(h) = Ti - Th - V(h,i) = 2
mL(i) = Tz - Ti - V(i,z) = 0

5.2 PERT
Le PERT (Programm of Evaluation and Review Technic) est, comme la MPM, une technique
d’ordonnancement basée sur la théorie des graphes, visant à optimiser la planification des
tâches d’un projet. Le P.E.R.T. est une méthode consistant à mettre en ordre sous forme de
réseau plusieurs tâches qui grâce à leur dépendance et à leur chronologie concourent toutes à

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 69

l’obtention d’un produit fini.


Cette technique aurait été conçue sous l’appellation initiale de méthode CPM (Critical Method
Path) par la marine américaine, en 1958, pour coordonner les tâches des milliers d’entreprises
impliquées dans son projet "Polaris" (programme de développement de missiles à ogive nu-
cléaire). Compte tenu de son efficacité (elle aurait permis de réduire de 14 à 7 ans la durée
globale de réalisation du projet Polaris) elle s’est rapidement imposée dans les organisations,
gouvernementales ou non, ayant à gérer des projets importants (programme Apollo de la NASA,
construction d’autoroute, etc.) au détriment du diagramme de Gantt. L’utilisation du PERT
permet, notamment, de déterminer la durée minimum nécessaire pour mener à bien un projet et
les dates auxquelles peuvent ou doivent débuter les différentes tâches nécessaires à sa réalisation
pour que cette durée minimum soit respectée.

5.2.1 Construction du graphe

Le recours au PERT suppose qu’aient préalablement été identifiées les différentes tâches néces-
saires à la réalisation d’un projet, leur durée et leurs relations d’antériorité. Généralement
F
ces informations sont synthétisées dans un tableau du type suivant dit tableau des tâches et
ES

antériorité.

Tâches durée Antériorété

Le PERT permet de représenter l’ensemble des tâches sur un graphe orienté, à partir duquel
il sera possible d’identifier leurs dates au plus tôt et au plus tard et de calculer leurs marges. Un
graphe orienté est un réseau composé d’une entrée et d’une sortie, ainsi que de points (appelés
"sommets") reliés entre eux par des flèches (appelées "arcs").
Les principales conventions d’un réseau PERT sont les suivantes:
•chaque tâche est symbolisée par un arc, auquel est associé une valeur numérique correspondant
à sa durée.
•les sommets auxquels aboutissent les arcs correspondent donc à des étapes, qui marquent
l’aboutissement d’une ou plusieurs tâches.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 70

•chaque étape est identifiée par un numéro d’ordre et renseignée sur la date à laquelle elle
peut être atteinte au plus tôt ("date au plus tôt") et au plus tard ("date au plus tard") pour
respecter le délai optimal de réalisation du projet.
•le graphe possède une entrée (sommet sans antécédent) et une sortie (sommet sans descendant)
qui correspondent respectivement aux étapes "Début des opérations" et "Fin des opérations".
Du fait de ses conventions, il est parfois nécessaire d’introduire des "tâches fictives" de durée
nulle pour traduire correctement sur un graphe les relations d’antériorité de certaines tâches,
notamment lorsque celles-ci partagent avec d’autres une partie de leurs antécédents.
• Un arc correspond à une tâche
• la valeur de l’arc représente la durée de la tâche.
• un sommet est une étape signifiant que :
-toutes les tâches qui y arrivent sont terminées
-toutes les tâches qui en partent peuvent commencer Un réseau est constitué par des étapes et
des tâches. On appelle étape le commencement ou la fin d’une tâche symbolisé par:
On appelle tâche le déroulement dans le temps d’une opération symbolisé par sur laquelle
F
seront indiqués l’action à effectuer et le temps de réalisation de cette tache.
Pour alléger le réseau PERT on attribut à chaque définition une lettre alphabétique. Les tâches
ES

suivant leur disposition dans un réseau peuvent être:


- successives
- simultanées
- convergentes
•Les tâches sont successives lorsqu’elles se déroulent les unes après les autres, séparées par des
étapes.

• Les tâches (A et B) sont simultanées lorsque plusieurs d’entre elles peuvent commencer
en même temps en partant d’une même étape.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 71

• Les taches (A et B) sont convergentes lorsque plusieurs d’entre elles aboutissent à une
même étape.

F
ES

Remarque 5.3 il est quelque fois nécessaire d’introduire des tâches fictives de durée nulle

Remarque 5.4 Deux arcs ne peuvent avoir à la fois la même origine et la même extrémité. Il
est nécessaire de rajouter une tâche fictive dans ces conditions:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 72

F
ES


n = nom ou numéro de l’étape
tn = date de début au plus tôt de l’étape
t∗n = date de début au plus tard de l’étape
- Un sommet terminal et un sommet initial sont rajoutés au graphe.
- La représentation graphique est ordonnée par niveaux des sommets, c.à.d. des étapes.
Les tâches n’ayant aucune antériorité sont représentées en première position. L’utilisation de
la matrice des antériorités facilite la détermination des niveaux d’exécution des tâches. Le
graphe se lit de gauche à droite (de l’étape "DEBUT" à celle de "FIN"). Chaque arc symbolise
une tâche qui permet d’atteindre une nouvelle étape dans la réalisation du projet. Une nouvelle
tâche ne peut commencer que lorsque toutes les tâches préalables à sa réalisation sont terminées.
Chaque sommet correspond à une étape qui est identifié par une cartouche où sont précisés
: son "numéro d’ordre", la date à laquelle elle peut être atteinte au plus tôt ("date au plus
tôt") et la date à laquelle elle doit être atteinte au plus tard pour respecter le délai optimal de
réalisation du projet ("date au plus tard").

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 73

Le chemin de valeur maximale associé est appelé chemin critique, constitué de tâches critiques:
un retard sur l’une de tâches critiques entraînerait un allongement de la durée du projet.

Calcul des différentes marges d’une tâche dans un réseau PERT

On appelle "marge" d’une tâche le retard qu’il est possible de tolérer dans la réalisation de
celle-ci, sans que la durée optimale prévue du projet global en soit affectée. Il est possible de
calculer trois types de marges : la marge totale, la marge certaine et la marge libre.
La marge totale d’une tâche indique le retard maximal que l’on peut admettre dans sa réali-
sation (sous réserve qu’elle ait commencé à sa date au plus tôt) sans allonger la durée optimale
du projet. Elle se calcule en retirant la durée de la tâche en question à l’écart qu’il peut y avoir
entre sa date de au plus tôt de début et sa date au plus tard de fin:
Marge totale tâche "ij" = Date au plus tard "étape j" - Date au plus tôt "étape i" -
Durée tâche "ij" Sauf cas particulier, un retard correspondant à la marge totale d’une tâche
se traduit par une modification des dates au plus tôt des tâches qui lui succèdent et entraîne,
généralement, l’apparition d’un second chemin critique.
F
Il n’est donc pas possible de cumuler des retards correspondant à leur marge totale sur plusieurs
ES

tâches successives, sans remettre en cause la durée optimale prévue pour le projet.
La marge libre d’une tâche indique le retard que l’on peut admettre dans sa réalisation (sous
réserve qu’elle ait commencé à sa date au plus tôt) sans modifier les dates au plus tôt des tâches
suivantes et sans allonger la durée optimale du projet.
Elle se calcule en retirant la durée de la tâche en question à l’écart qu’il peut y avoir entre ses
dates au plus tôt de début et de fin:
Marge libre tâche "ij" = Date au plus tôt "étape j" - Date au plus tôt "étape
i" - Durée tâche "ij"
Un retard correspondant à la marge libre d’une tâche reste sans conséquence sur les marges
des tâches qui lui succèdent. Il est donc possible de cumuler des retards, s’inscrivant dans leur
marge libre, pour plusieurs tâches successives, sans remettre en cause la durée optimale prévue
pour le projet.
La marge certaine d’une tâche indique le retard que l’on peut admettre dans sa réalisation
(quelle que soit sa date de début) sans allonger la durée optimale du projet. Elle se calcule en
retirant la durée de la tâche en question à l’écart qu’il peut y avoir entre sa date au plus tard
de début et sa date au plus tôt de fin:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 74

Marge certaine tâche "ij" = Max [ 0 , (Date au plus tôt "étape j" - Date au plus
tard "étape i" - Durée tâche "ij") ]
D’après cette formule, la marge certaine est considérée comme nulle lorsque son calcul
donne un nombre négatif Un retard correspondant à la marge certaine d’une tâche reste sans
conséquence sur les marges des tâches qui lui succèdent, même si elle commence à sa date au
plus tard. Il est donc possible de cumuler des retards, s’inscrivant dans leur marge certaine,
pour plusieurs tâches successives, même si elles commencent à leur date au plus tard, sans
remettre en cause la durée optimale prévue pour le projet. On remarque que l’ensemble des
marges des tâches composant le chemin critique sont nécessairement nulles, puisqu’il s’agit
de tâches pour lesquels, par définition, aucun retard n’est possible sans remettre en cause la
durée optimale prévue pour le projet.
Exemple
• Dans un premier temps, en utilisant l’exemple précédent, on construit un graphe provisoire
en respectant les consignes ci-dessus et en s’aidant des niveaux des tâches qui sont des arcs et
non des sommets). Les noms donnés aux sommets sont arbitraires.
F
C0 = {a, c, d}
ES

C1 = {b, g}
C2 = {e, f }
C3 = {h}
C4 = {i}

• Représentation graphique en fonction des niveaux des sommets ou étapes (dans le cas
présent la représentation est semblable à la première représentation provisoire)

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 75

5.2.2 Calendrier au plus tôt des étapes

Une étape n ne pouvant débuter que lorsque toutes les étapes qui y aboutissent sont terminées,
t n correspond à la valeur du chemin de valeur maximale aboutissant à n. Ceci sera obtenu en
utilisant l’algorithme de Ford, après avoir ordonné le graphe par niveaux des étapes.
tn = max[tm + V (m, n)], le max étant pris sur les précédents m de n.
t1 = 0
t2 = t1 + V (1, 2) = 0 + 4 = 4
t3 = M ax[t1 + V (1, 3); t2 + V (2, 3)] = M ax[4; 10] = 10
t4 = M ax[t1 + V (1, 4); t3 + V (3, 4)] = M ax[12; 10] = 12
t5 = M ax[t2 + V (2, 5); t4 + V (4, 5)] = M ax[11; 22] = 22
t6 = M ax[t3 + V (3, 6); t5 + V (5, 6)] = M ax[34; 32] = 34
t7 = t6 + V (6, 7) = 34 + 3 = 37
Ces résultats peuvent être reportés sur le graphe
F
ES

Pour le sommet terminal z, t z correspond à la durée minimale du projet (qui correspond


au chemin de valeur maximale aboutissant à z). Le chemin de valeur maximale associé est
appelé chemin critique, constitué de tâches critiques: un retard sur l’une de tâches critiques
entraînerait un allongement de la durée du projet.
Le chemin de valeur maximale est le chemin a, b, f, i, (voir chapitre sur les
graphes) correspondant aux étapes 1, 2, 3, 6, 7, donc aux tâches a, b, f, i.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 76

5.2.3 Calendrier au plus tôt des tâches

La date de début au plus tôt d’une tâche x est égale à la date de début au plu tôt de l’étape
dont elle est issue.
Tx = tn si la tâche x est issue de l’étape n

Tâches x sommet n dont est issue x Tx


a 1 0
b 2 4
c 1 0
d 1 0
e 4 12
f 3 10
g 2 4
h 5 22
i 6 34
F
ES

5.2.4 Calendrier au plus tard des étapes

Il s’agit de la date au plus tard à laquelle peut commencer une étape sans remettre en cause
la date de fin des travaux. Ceci sera obtenu en commençant par les sommets de niveau les plus
élevés jusqu’aux sommets de niveau les plus faibles.
t∗x = tx pour le sommet terminal
t∗n = min[t∗m − V (n, m)], le min étant pris sur les suivants m de n.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 77

t∗7 = t7 = 37
t∗6 = t∗7 − V (6, 7) = 37 − 3 = 34
t∗5 = t∗6 − V (5, 6) = 34 − 10 = 24
t∗4 = t∗5 − V (4, 5) = 24 − 10 = 14
t∗3 = M in[t∗6 − V (3, 6); t∗4 − V (3, 4)] = M in[34 − 24; 14 − 0] = 10
t∗2 = M in[t∗5 − V (2, 5); t∗3 − V (2, 3)] = M in[24 − 7; 10 − 6] = 4
t∗1 = M in[t∗4 − V (1, 4); t∗2 − V (1, 2); t∗3 − V (1, 3)] = M in[14 − 12; 4 − 4; 10 − 4] = 0
Ces résultats peuvent être reportés sur le graphe

F
ES

5.2.5 Calendrier au plus tard des tâches

La date de début au plus tard d’une tâche x est égale à la date de début au plu tard de l’étape
à laquelle elle aboutit, diminuée de la durée de la tâche
T∗x = t∗m − V (n, m), si la tâche x va du sommet n au sommet m

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
PERT 78

Tâches x sommet m où aboutit x Tx∗


a 2 0
b 3 4
c 3 6
d 4 2
e 5 14
f 6 10
g 5 17
h 6 24
i 7 34
F
ES

Figure 5.1: Remarque: sur les tâches critiques, Tx∗ = Tx

5.2.6 Marges totales

C’est le retard maximum que l’on peut prendre dans la mise en route d’une tâche sans remettre
en cause les dates au plus tard des tâches suivantes (donc sans retarder la fin des travaux).
mt(x) =T∗x − Tx
mt(a) = Ta∗ − Ta = 0 − 0 = 0
mt(b) = Tb∗ − Tb = 4 − 4 = 0
mt(c) = Tc∗ − Tc = 6 − 0 = 6
mt(d) = Td∗ − Td = 2 − 0 = 2
mt(e) = Te∗ − Te = 10 − 10 = 0
mt(f ) = Tf∗ − Tf = 0 − 0 = 0

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Le diagramme de GANTT 79

mt(g) = Tg∗ − Tg = 17 − 4 = 13
mt(h) = Th∗ − Th = 24 − 22 = 2
mt(i) = Ti∗ − Ti = 34 − 34 = 0

5.2.7 Marges libres

C’est le retard maximum que l’on peut prendre dans la mise en route d’une tâche sans remettre
en cause les dates au plus tôt des tâches suivantes (donc sans retarder la fin des travaux).
mL(x)=tm − tn − V (n, m), si la tâche x va du sommet n au sommet m
Remarque:
si du sommet d’arrivée m ne partent que des tâches fictives, on retiendra le minimum sur tous
les premiers sommets suivants d’où partent au moins une tâche réelle.
mL(a) = t2 − t1 − V (1, 2) = 4 − 0 − 4 = 0
mL(b) = t3 − t2 − V (2, 3) = 10 − 4 − 6 = 0
mL(c) = t3 − t1 − V (1, 3) = 10 − 0 − 4 = 6
mL(d) = t4 − t1 − V (1, 4) = 12 − 0 − 12 = 0
F
mL(e) = t5 − t4 − V (4, 5) = 22 − 12 − 10 = 0
ES

mL(f ) = t6 − t3 − V (3, 6) = 34 − 10 − 24 = 0
mL(g) = t5 − t2 − V (2, 5) = 22 − 4 − 7 = 11
mL(h) = t6 − t5 − V (5, 6) = 34 − 22 − 10 = 2
mL(i) = t7 − t6 − V (6, 7) = 37 − 34 − 3 = 0

5.3 Le diagramme de GANTT


Le diagramme de GANTT est un graphique (chrono gramme) qui consiste à placerles tâches
chronologiquement en fonction des contraintes techniques de succession(contraintes d’antériorités).
L’axe horizontal des abscisses représente le temps et l’axe vertical des ordonnéesles
tâches.
On représente chaque tâche par un segment de droite dont la longueur estproportion-
nelle à sa durée. L’origine du segment est calée sur la date de début au plus tôtde
l’opération («jalonnement au plus tôt») et l’extrémité du segment représente
la fin de latâche.
Ce type de graphe présente l’avantage d’être très facile à lire, mais présentel’inconvénient

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Le diagramme de GANTT 80

de na pas représenter l’enchaînement des tâches. Cette méthode estgénéralement


utilisée en complément du réseau PERT ou MPM. On trace le plus souventle GANTT
au plus tôt ou «jalonnement au plus tôt» et éventuellement au plus tard«jalonnement
au plus tard».

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Le diagramme de GANTT 81

Exercice 5.5 Le service de marketing de la Société des Huileries du Bénin a projeté entretenir
les différents appareils utilisés dans la production d’huile de coton. Cet entretien consiste à
exécuter un certain nombre d’activités qu’il faut planifier. A cet effet, le tableau suivant a été
dressé:
Opérations Antériorité Durée(mois)
A J 2
B I,G,J 4
C H 1
D C,H,E 2
E A,F 5
F H 3
G J 1
H - 2
I A,F,H 4
J - 2
F
1. Tracer une esquisse du réseau PERT de la planification du projet d’entretien (matrice des
ES

antériorités et niveaux d’exécution des tâches).

2. Identifier le chemin critique et la durée du projet.

3. Dresser le tableau du programme du projet en y indiquant les marges totale, libre et liée
de chaque tâche. Achever le tracé du réseau PERT.

Exercice 5.6 On donne le tableau des tâches et antériorités suivant.


Tâche Activité Antériorités durée (jours)
A acceptation des plans - 4
B préparation terrain - 2
C commande matériaux A 1
D creusage fondations A,B 1
E commande portes, fenêtres A 2
F livraisons matériaux C 2
G coulage fondations D,F 2
H livraison portes, fenêtres E 10
I pose des murs, du toit G 4
J mise en place portes, fenêtre H,I 1

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Le diagramme de GANTT 82

1. Construire la matrice des antériorités. Vérifier que cette matrice est antisymétrique.

2. Utiliser cette matrice des antériorités pour déduire les niveaux du réseau PERT et tracer
ce réseau PERT.

3. Calculer le temps minimum de réalisation du projet.

4. Finaliser le tracé du réseau PERT.

5. Dresser le tableau des marges des tâches ou le programme du projet

Exercice 5.7 Un programme de construction comporte les opérations suivantes :

Opérations Tâches Antérieurs Durée(jours)


A J,K 14
B - 4
C G,M 7
D - 10
E - 12
F
F C,L 18
G E 5
ES

H J 11
I A,B,H 13
J B 9
K B 3
L B,K 15
M D,E 6

En utilisant les méthodes PERT et MPM, déterminez la durée totale du projet, ainsi que,
pour chaque tâche, la date de début au plus tôt, la date de début au plus tard, la marge libre,
la marge totale. Quelles sont les tâches critiques pour la réalisation du projet ? La tâche D est
retardée de 3 jours. Cela implique-t-il un retard sur le délai d’exécution du programme ?

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Six

PERT probabiliste

6.1 Flot dans un réseau de transport


Dans l’exécution d’une tâche beaucoup de difficultés peuvent être rencontrées : maladies -
grèves - approvisionnements, instabilité politique ou climatique, etc. C’est pour cette raison
que la durée d’exécution d’une tâche devient une variable aléatoire. Compte tenu du fait que
beaucoup de paramètres sont pris en compte dans la définition de la durée d’exécution d’une
tâche, l’utilisation de la loi normale est bien justifiée.
F
6.2 Différents temps utilisés
ES

Trois différents temps sont à définir pour chaque tâche:

• le temps optimiste qui est le temps le plus court qui serait suffisant pour exécuter la tâche:
T0

• le temps réel ou temps normal qui est le temps le plus probable nécessaire pour exécuter
la tâche Tr

• le temps pessimiste qui est le temps le plus long requis pour exécuter la tâche: Tp

A partir de ces trois données, on détermine:

• le temps moyen d’exécution de l’activité ou la tâche:

1
Ti = (T0 + 4Tr + Tp )
6

• l’écart type de la tâche :


1
σi = (Tp − T0 )
6
Le chemin critique est déterminé à partir des durées moyennes en sommant les durées moyennes
de toutes les tâches critiques. La durée du projet est la durée du chemin critique et son écart

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Probabilité de tenir le délai 84

type est: v
u n
uX
σ=t σj
j=1

où j est l’indice de la tâche critique.

6.3 Probabilité de tenir le délai


On suppose usuellement que la durée des chemins obéit à la loi normale (de Gauss) de paramètres
Tm la durée du projet déterminée à partir du chemin critique et l’écart type σ.
La probabilisté ou les chances sur 100 de tenir de le delai est:
Z Délai
1 1 t−Tm 2
P (Trl < Délai) = √ e− 2 ( σ ) dt
0 σ 2π

On fait un changement de variable t en une variable centrée réduite:

Délai − Tm
U=
σ
F
ES

P (Trel < Délai) = F (U )

F (U ) est lu dans la table de Gauss.


Par ailleurs, on a:

Z Délai2
1 1 t−Tm 2
p(Dlai1 < Trel < Dlai2) = √ e− 2 ( σ ) dt
Délai1 σ 2π
On a:
P (Délai1 < Trel < Délai2) = F (U2 ) − F (U1 )

avec

Délai2 − Tm Délai1 − Tm
U2 = et U1 =
σ σ
Notez que lorsque U = −a où a > 0 on a:

F (U ) = F (−a) = 1 − F (a)

La table de Gauss utilisée après avoir calculé la variable centrée réduite est la suivante :
Table de Gauss

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Probabilité de tenir le délai 85

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Probabilité de tenir le délai 86

Exercice 6.1 Soit à réaliser un projet qui répond aux contraintes d’antériorités suivantes:

1. Calculer le temps moyen d’exécution et l’écart type de chaque tâche.

2. Représenter le réseau PERT et déterminer la durée du projet et son écart type.


F
3. Calculer la probabilité pour que le projet se termine 3 jours plus tôt qu prévu.
ES

Exercice 6.2 Une société d’élevage décide de construire un laboratoire pour son exploitation.
Les tâches et antériorités sont regroupées dans le tableau suivant:

1. Représentez le graphe PERT de ce projet.

2. Calculez la durée moyenne du projet.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Probabilité de tenir le délai 87

3. Trouvez la probabilité pour que ce projet soit terminé en 32 jours (on considérera que le
nombre de tâches est très grand).

4. Déterminez la durée avec une probabilité de 98%.

5. Les durées de la tâche H sont modifiées. Des informations plus précises indiquent que la
moyenne est 9 et l’écart type

6. Cette modification a-t-elle des conséquences sur les résultats des questions 3 et 4 ?

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Chapitre Sept

PROBLEMES DE TRANSPORT ET
D’AFFECTATION

7.1 Flot dans un réseau de transport


On appelle réseau de transport un graphe fini, sans boucle comportant une entrée x1 et une
sortie xp telles que: depuis x1 il existe un chemin vers tout autre sommet xk et de tout sommet
xk il existe un chemin vers xp . On dit que x1 est une source et xp est un puits.
Tout arc u est valué par un entier positif c(u) nommé capacité de l’arc u, qui représente
F
une capacité de transport associée à la liaison figurée par cet arc : ces capacités de transport
ES

peuvent être des tonnages disponibles sur des bateaux, des camions, des wagons, ou
encore des débits dans des canalisations, oléoducs, voies de transmission, etc.
Etant donné un réseau de transport. Le probléme à résoudre consiste à acheminer une
quantité maximale de x1 à xp en tenant compte des capacités de transport. La quantité φ(u)
transportée sur chaque arc u est nommée flux sur l’arc. Elle vérifie donc 0 ≤ φ(u) ≤ c(u).
En tout sommet x différent de la source x1 et du puits xp , on a une loi de conservation: La
somme des flux arrivant sur le sommet F est égale à la somme des flux partant du
sommet x.
Un flot Φ est déterminé par la donnée du flux pour tout arc du réseau de transport. La
valeur v(Φ) d’un flot est, par définition, la somme des flux partant de la source x1 ou bien elle
égale à la somme des flux des arcs arrivant sur le puits xp .

Exercice 7.1 On considére trois châteaux d’eau A, B et C gérés par un syndicat intercommu-
nal, alimentant quatre villages D, E, F et G. Le château d’eau A bénéficie d’une alimentation
et d’une réserve capables de débiter 45 l/s ; le château B peut seulement débiter 25 l/s et le
château d’eau C, 20 l/s. Plusieurs canalisations existent et leur débit en l/s, est mentionné
pour chacune sur la figure ci-aprés. Le village D aurait besoin d’un débit de 30 l/s, le village

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Flot dans un réseau de transport 89

E, 10 l/s, le village F, 20l/s et enfin le village G, 30 l/s. On demande d’établir la meilleure


alimentation possible.

Solution
F
Constatons d’abord que, si nous ajoutons au graphe représentant les canalisations avec leur
débit, une entrée (source) O et une sortie (puits) P, toutes deux fictives, on obtient un réseau
ES

de transport. On value les arcs (O,A), (O,B) et (O,C) leur attribuant comme capacités les
disponibilités respectives en A, B et C. De même, on value les arcs (D,P), (E,P) et (F,P) et
(G,P) par les besoins respectifs en D,E, F et G.

Le probléme se raméne alors à passer un flot de valeur maximale de O vers P ou si l’on


veut, sur un arc imaginaire, dit de retour , qui reviendrait de P vers O. Voici un flot Φ sur ce
réseau de transport :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème de transport 90

7.2 Problème de transport


La gestion du problème de transport est parmi les préoccupations majeures des entreprises.
La solution du problème de transport est celle qui permet de transporter les flux du point de
départ au point d’arrivée. La solution doit également être la plus économique.
F
7.2.1 Algorithme de Balas-Hammer
ES

L’algorithme de Balas-Hammer , aussi appelé méthode des différences maximales ou


méthode des regrets, est un algorithme permettant d’optimiser un programme de transport
(cas particulier d’un problème d’optimisation linéaire).
Le but de cet algorithme est d’assurer les transports à moindre coût.
Principe
A partir d’une matrice des coûts de transports entre sources et destinataires :
1. Calculer pour chaque ligne et chaque colonne la différence entre le coût le plus faible et le
coût immédiatement supérieur. Cette différence est appelée "regret".
2. Choisir l’affectation correspondant à la rangée présentant le regret maximum (lignes et
colonnes confondues), pour remplir une matrice de transports.
3. Réitérer le processus.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème de transport 91

Exemple

Données initiales

Tableau représentant les coûts entre des sources et des destinataires, ainsi que les stocks
disponibles pour les sources et les demandes des destinataires :

Calcul des regrets


F
ES

Le regret le plus important est celui de la colonne 5 : 20. Dans cette rangée, on repère le
coût minimal : C(2,5) = 5.
Remplissage de la matrice des transports

Réitération du principe

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 92

ETC...
Résultat
On en arrive à établir le tableau des transports :

F
Le coût total se calcule par un produit scalaire entre les matrices des coûts et des transports.
ES

Ici, le coût optimal est donc : 0*10 + 19*6 + 5*3 + 25*5 + 0*25 + 15*5 + 1*2 + 0*6 + 0*12
+ 14*5 = 401

7.3 Méthode de Balas-Hammer


Autre formulation
On calcule pour chaque rangée, ligne ou colonne, la différence entre le coût le plus petit
avec celui qui lui est immédiatement supérieur. Affecter à la relation de coût le plus petit
correspondant à la rangée présentant la différence maximale la quantité la plus élevée possible.
Ce qui sature une ligne ou une colonne. Reprendre le processus jusqu’à ce que toutes les rangées
soient saturées.
Algorithme
Dl: différence entre le coût mini et celui immédiatement supérieur sur une ligne Dc: dif-
férence entre le coût mini et celui immédiatement supérieur sur une colonne:

1. Calculer les différences Dl et Dc pour chaque ligne et colonnes

2. Sélectionner la ligne ou la colonne ayant le Dl ou Dc maximum

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 93

3. Choisir dans cette ligne ou colonne le coût le plus faifle

4. Attribuer à la relation (i, j) correspondante le maximum possible de matière transportable


de façon à saturer soit la destination soit la disponibilité

5. calculer la quantité résiduelle soit demande soit en disponibilité.

6. Eliminer la ligne ou la colonne ayant sa disponibilité ou demande satisfaite

7. SI nombre de lignes ou colonnes> 2 retour en 2. SINON affecter les quantités restantes


aux liaisons.

FIN
Exemple: Schéma de départ :
Tableaux des coûts de chaque trajet :
F
ES

A1 vers D2 coute 12 unités (par exemple 8 mille francs).


aj correspond aux capacité de production
bj correspond aux besoins
On calcule les deltaL et deltaC donc les regrets.
Les deltas :
4c= différence entre les deux valeurs minimums
4cD1 = 17 − 11
4cD2 = 16 − 12
4cD3 = 15 − 10
4cD4 = 18 − 10
La meilleure solution coute 10 mais si je prends la seconde meilleure solution, cela ne me coutera

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 94

que 11.
4i = 11 − 10 sur la ligne 1
donc le second choix me fait perdre 1
Le choix se fait en prenant le plus gros de tous les deltas, Ligne et colonne.
Dans cet exemple, c’est D4 avec un delta de 8.
Maintenant on sature D4 .D4 a besoin de 25 unités. On choisi la ligne avec le deltaL le plus
haut. Ici ils sont tous égaux a 1 on prend au hasard, par exemple, je mets 25 unités sur A1 D4 ,
on a saturé D4 A1 qui produit 60 ne compte plus que pour 60 − 25 = 35 et on recalcule les
deltas.
Ce qui nous donne ce nouveau tableau :
F
ES

On recommence, on prend le plus grand delta (Ligne et colonne). C’est en D1 qui est égale
6.
On sature D1 avec le plus petit coût qui est A1D1. A dispose encore de 35. On met 35 dans
A1D1, On recalcule les deltas
On recommence, on prend le plus grand delta (Ligne, colonne). C’est en D2 qui est égale à
5. On sature A2D2 qui est moins cher. A2 produit 30. On met 30 dans A2D2.
Avec A3, il ne reste plus qu’a saturé le moins cher, cela revient à mettre les restes.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 95

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 96

D1 a encore besoin de 15, on lui donne


D2 a besoin de 45, on lui donne
D3 a besoin de 30, on lui donne
et voilà on a gagné

Figure 7.1: Solution final: Coût de la solution= 2945


F
7.3.1 Méthode du coin Nord-Ouest
ES

La méthode du coin Nord-Ouest, ou MCNO (North-west Corner Method, NWCM), est


utilisée pour trouver une solution à un programme de transport sans prise en compte
du coût.
Il existe des algorithmes permettant de trouver une solution optimale en termes de coûts, comme
l’algorithme de Balas-Hammer.
Principe Cette méthode s’applique sur une matrice de coûts de transports entre sources et
destinataires.
Elle consiste à remplir une matrice de transports en parcourant linéairement la matrice des
coûts.
Exemple
Initialement

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 97

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Méthode de Balas-Hammer 98

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 99

Coût de la solution
La solution trouvée avec cette méthode n’est pas optimale en termes de coût. On trouve
ici:
15*10 + 20*6 + 5*3 + 9*5 + 0*25 + 0*5 + 0*2 + 0*6 + 16*12 + 14*5 = 592.

7.4 Problème d’affectation


F
Le problème d’affectation est un problème classique de recherche opérationnelle. L’objectif
est de déterminer un couplage maximum dans un graphe biparti valué. Le problème d’affectation
ES

peut être résolu en temps polynomial par l’algorithme hongrois.


Algorithme hongrois
L’algorithme hongrois ou méthode hongroise (parfois appelé aussi algorithme de
Kuhn) est un algorithme d’optimisation combinatoire, qui résout le problème d’affectation en
temps polynomial. Il a été proposé en 1955 par le mathématicien américain Harold Kuhn, qui
l’a baptisé  méthode hongroise  parce qu’il s’appuyait sur des travaux antérieurs de deux
mathématiciens hongrois : Dénes Konig et Jeno Egervàry .
Description de l’algorithme
Soit n projets et n équipes, et une matrice n × n contenant le temps nécessaire à chaque
équipe pour réaliser chaque tâche. On souhaite affecter chaque tâche à une équipe afin de
minimiser le temps total de réalisation. La matrice est de la forme suivante :
 
a1 a2 a3 a4
 
 
 b1 b2 b3 b4 
 
 
 c1 c2 c3 c4 
 
d1 d2 d3 d4

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 100

Etape 0
Pour chaque ligne de la matrice, on retire l’ensemble de la ligne la valeur minimale de celle-
ci. On obtient alors un problème équivalent au problème initial. La matrice a au moins un
zéro par ligne. On répète la même opération sur les colonnes. On obtient alors un problème
équivalent avec une matrice ayant un zéro par ligne et par colonne.

0 0 0
0 a2 a3 a4
0 0 0
b1 b2 b3 0
0 0 0
c1 c2 c3 0
0 0
d1 0 0 d4

Etape 1
Sélectionnez le maximum de zéros possible de façon à ce qu’il n’y ait qu’un zéro sélectionné
par ligne et par colonne. Si l’on a sélectionné n zéros alors on a trouvé l’affectation optimale,
on arrête l’algorithme.

0 0 0
0 a2 a3 a4
F
0 0 0
b1 b2 b3 0
ES

0 0 0
c1 c2 c3 0
0 0
d1 0 0 d4

Etape 2
Marquez chaque ligne n’ayant pas de zéro sélectionné. Marquez chaque colonne ayant un
zéro sur une ligne marquée. Marquez chaque ligne ayant un zéro marqué dans une colonne
marquée. Répétez cette opération jusqu’à un état stable.

×
0 0 0
0 a2 a3 a4
0 0 0
b1 b2 b3 0 ×
0 0 0
c1 c2 c3 0 ×
0 0
d1 0 0 d4

Sélectionnez alors la sous-matrice formée par les lignes marquées et par les colonnes non
marquées.

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 101

×
0 0 0
0 a2 a3 a4
0 0 0
b1 b2 b3 0 ×
0 0 0
c1 c2 c3 0 ×
0 0
d1 0 0 d4

Cette étape permet de sélectionner la plus grande sous-matrice n’ayant aucun zéro.
Etape 3
Trouvez la valeur minimum de la sous-matrice trouvée à l’étape 2. Il faut alors soustraire
cette valeur à toutes les lignes marquées, et l’ajouter à toutes les colonnes marquées.
Retournez à l’étape 1.
Exercice:
Affecter 4 personnes à 4 tâches comment faire ? Soit 4 personnes A, B, C, D et 4 tâches a, b,
c, d.
La méthode hongroise: Autre formulation
Le tableau représentant les coefficients de préférence des différentes personnes se présente
F
comme suit:
ES

A B C D E
a 9 6 7 3 4
b 2 1 9 1 8
c 4 3 2 2 7
d 9 1 8 8 3
e 1 7 8 9 5

La personne ’a’ veut vraiment aller sur le poste A éventuellement C voir B mais ne veut
pas aller en E ou D, etc...
La méthode hongroise est un algorithme de minimisation donc la première étape est de trans-
former la formulation du problème en introduisant la notion de regret.
Le regret est égal au max moins chaque note sur tout le tableau.
Exemple de la ligne 1
Le max égale 9
Les valeurs d’origine : 9 6 7 3 4
On fait 9− a chaque valeur, ce qui nous donne:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 102

A B C D E
a 9-9 9-6 9-7 9-3 9-4
b 9-2 9-1 9-9 9-1 9-8
c 9-4 9-3 9-2 9-2 9-7
d 9-9 9-1 9-8 9-8 9-3
e 9-1 9-7 9-8 9-9 9-5

Ce qui nous donne le tableau final:

A B C D E
a 0 3 2 6 5
b 7 8 0 8 1
c 5 6 7 7 2
d 0 8 1 1 6
e 8 2 1 0 4

Ensuite pour les colonnes, il faut avoir un 0 dans chaque colonne:


F
Colonne B, on enlève 2 (le min sur cette colonne)
ES

Colonne E, on enlève 1 (le min sur cette colonne)

A B C D E
a 0 3 2 6 5
b 7 8 0 8 1
c 5 6 7 7 2
d 0 8 1 1 6
e 8 2 1 0 4
vi 0 2 0 0 1

A B C D E
a 0 1 2 6 4
b 7 6 0 8 0
c 5 4 7 7 1
d 0 6 1 1 5
e 8 0 1 0 3
Vi correspond au minimum de chaque colonne. Idem pour les lignes:

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 103

A B C D E Vi
a 0 1 2 6 4 0
b 7 6 0 8 0 0
c 5 4 7 7 1 1
d 0 6 1 1 5 0
e 8 0 1 0 3 0

A B C D E
a 0 1 2 6 4
b 7 6 0 8 0
c 4 3 6 6 0
d 0 6 1 1 5
e 8 0 1 0 3
Vi correspond au minimum de chaque colonne.
Au final on doit avoir un 0 pour chaque ligne et chaque colonne
F
Algorithme d’affectation des zéros.
Considérer les lignes ayant le nombre minimum de zéro (lignes a, c, d, dans notre exemple
ES

comportent un zéro)
1. Choisir la ligne ayant un nombre minimum de zéros, affecter le zéro à la liaison corre-
spondante. Le zéro est dit encadré.
Ex : Ligne, a, et affectons le zéro correspondant à la liaison aA, zéro (aA) encadré.
2. Du fait ce choix, il n’est plus possible d’utiliser le(s) zéro(s), s’il en existe, de la colonne
ou de la ligne correspondant à ce zéro encadré nous dirons que ce(s) zéro(s) est (sont barré(s).
ex : zéro (dA).
3. Retour en 1 tant qu’il existe des zéros non encadrés ou non barrés.
Pour des raisons d’affichage : les valeurs encadrées sont remplacées par du gras
Ligne a : aA, zéro (aA) encadré
Les 0 de la ligne a et de la colonne A sont barrés

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 104

A B C D E
a 0 1 2 6 4
b 7 6 0 8 0
c 4 3 6 6 0
d 60 6 1 1 5
e 8 0 1 0 3

Ligne c : cE, zéro (cE) encadré Les 0 de la ligne c et de la colonne E sont barrés

A B C D E
a 0 1 2 6 4
b 7 6 0 8 0B
c 4 3 6 6 0
d 60 6 1 1 5
e 8 0 1 0 3

Ligne b : bC, zéro (bC) encadré


F
les 0 de la ligne b et de la colonne C sont barrés.
ES

A B C D E
a 0 1 2 6 4
b 7 6 0 8 60
c 4 3 6 6 0
d 60 6 1 1 5
e 8 0 1 0 3

Ligne e : eB, zéro (eB) encadré


Les 0 de la ligne e et de la colonne B sont barrés.
A B C D E
a 0 1 2 6 4
b 7 6 0 8 60
c 4 3 6 6 0
d 60 6 1 1 5
e 8 0 1 60 3

Exercice 7.2 Une fabrique M a 4 machines et 4 tâches à compléter. Chaque machine doit lui
voir assigner une tâche. Le temps de mise en œuvre est donné par la table suivante :

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876
Problème d’affectation 105

T1 T2 T3 T4
Machine 1 14 5 8 7
Machine 2 2 12 6 5
Machine 3 7 8 3 9
Machine 4 2 4 6 10

La fabrique veut minimiser le temps total de mise en œuvre. Formuler et résoudre.

F IN

F
ES

Cous de recherche opérationnelle pour ingénieurs Dr. Daniel SABI TAKOU /EPAC-UAC ©
sabitakoudaniel11@gmail.com/ 66464876

Vous aimerez peut-être aussi