Vous êtes sur la page 1sur 91

Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Institut Universitaire d'Abidjan

Recherche
Opérationnelle
2020-2021
Dr GBAME Hervé Daniel

P a g e 0 | 90
Recherche Opérationnelle 2020-2021

Recherche Opérationnelle
2020-2021

Dr GBAME Hervé Daniel

P a g e 1 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Sommaire

Chapitre 0 : Généralités sur la Recherche Opérationnelle___________________________ 4


0.1. Définition de la RO __________________________________________________________ 4
0.2. Les origines de la RO ________________________________________________________ 4
0.3. Importance de la Recherche Opérationnelle _____________________________________ 5
0.4. Les champs d’application de la recherche opérationnelle __________________________ 5
0.5. Méthodologie de la recherche opérationnelle ____________________________________ 6
Chapitre 1 : Programmation linéaire (formulation) ________________________________ 8
1.1. Définition et concepts de base_______________________________________________ 9
1.2. Hypothèses de programmation linéaire______________________________________ 11
1.3. Exemples de modèle de programmation linéaire ______________________________ 13
A. Exemples de maximisation _________________________________________________________ 13
B. Exemples de minimisation _________________________________________________________ 17

Chapitre 2 : Méthodes de résolution d’un Programme Linéaire _____________________ 21


2.1. Terminologie pour les solutions du programme linéaire en nombre réels __________ 21
A. Solution d’un programme linéaire : définition __________________________________________ 21
B. Solution réalisable d’un programme linéaire : définition __________________________________ 21
C. Solution optimale réalisable : définition _______________________________________________ 21
D. Solution Optimale d’un Programme Linéaire à deux variables réelles : définition ____________ 22

2.2. Techniques de résolution graphique ________________________________________ 22


A. Problèmes de maximisation ________________________________________________________ 23
B. Problèmes de minimisation _________________________________________________________ 28

2.3. Critique des méthodes graphique et énumérative _____________________________ 30


Chapitre 3 : L’algorithme ou méthode du Simplexe _______________________________ 32
3.1. Exposé algébrique de la méthode de Simplexe __________________________________ 32
1. Mise sous forme standard __________________________________________________________ 32
2. Définition de la variable entrante et sortante __________________________________________ 33

3.2. Disposition des calculs dans les tableaux _______________________________________ 35


1. Sélection de la variable entrante ____________________________________________________ 35
2. Sélection de la variable sortante ____________________________________________________ 35
3. Passage au tableau suivant _________________________________________________________ 36

3.3. Interprétation _____________________________________________________________ 39


1. Interprétation de la solution optimale ________________________________________________ 39
2. Interprétation des coefficients de la ligne Cj ___________________________________________ 39

3.4. La dualité ________________________________________________________________ 40


1. Règles pratiques de passage du primal au dual ________________________________________ 40
2. Exemples (Trouver les formes Duales correspondantes) ________________________________ 42
3. Principaux résultats de la dualité ___________________________________________________ 43

P a g e 2 | 90
Recherche Opérationnelle 2020-2021

3.5. Résolution d’un problème de minimisation par la méthode du Simplexe_____________ 44


1. Passage au tableau suivant _________________________________________________________ 46

Chapitre 4 : Introduction à la théorie des graphes ________________________________ 51


4.1. Notions sur la théorie des graphes ____________________________________________ 52
A. Définition _______________________________________________________________________ 52
B. Représentation d’un graphe ________________________________________________________ 53
C. Chaînes – Circuits - Chemins _______________________________________________________ 55
D. Niveaux de graphe ________________________________________________________________ 56
4.2. Chemins critiques __________________________________________________________ 60
A. Chemins minimaux _______________________________________________________________ 60
B. Chemins maximaux _______________________________________________________________ 62
C. Arc critique ______________________________________________________________________ 63

4.3. Problèmes de flot maximal dans un réseau _____________________________________ 64


A. Illustration du problème de transport________________________________________________ 64
B. Recherche d’un flot maximal _______________________________________________________ 65

Chapitre 5 : Problèmes d’ordonnancement _____________________________________ 72


5.1. Pourquoi ordonnancer ? ____________________________________________________ 72
5.2. Notions de projet, tâche et ordonnancement ____________________________________ 72
A. Notion de projet __________________________________________________________________ 72
B. Notion de tâche ___________________________________________________________________ 73

5.3. Méthodes d’ordonnancement ________________________________________________ 73


A. La méthode MPM ________________________________________________________________ 74
B. La méthode PERT ________________________________________________________________ 79

Bibliographie générale ______________________________________________________ 88


Table des matières _________________________________________________________ 89

P a g e 3 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Chapitre 0 : Généralités sur la Recherche Opérationnelle

0.1. Définition de la RO

La RO peut se définir comme un ensemble de méthodes scientifiques cherchant à résoudre


efficacement les problèmes posés par les activités des organisations humaines. Elle tire son
essence des techniques mathématiques, de la statistique, de l’économie et de l’ingénierie. En
définitive, la RO c’est surtout la Recherche d’optimisation d’un processus.

Par ailleurs, la Recherche Opérationnelle aussi appelée aide à la décision peut être également
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 en vue d'analyser et de maitriser des situations complexes pour permettre aux
décideurs de comprendre et d'évaluer les enjeux et d'arbitrer ou de faire les choix les plus
efficaces. Ce domaine fait largement appel au raisonnement mathématique
(logique, probabilités, analyse des 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.

0.2. Les origines de la RO

La Recherche Opérationnelle est une discipline par essence militaire même si elle est
aujourd’hui présente dans la plupart des domaines civils. En effet, elle date de la seconde guerre
mondiale. Elle a été inventée au Royaume – Uni et a signifié initialement : Optimisation des
opérations militaires. La première équipe de RO a été créée en 1938 et placée sous la direction
du quartier général de la Royal Air Force. Elle s’est illustrée pendant la guerre sur de nombreux
problèmes : recoupement des données obtenues par les différentes stations de radar, gestion des
équipages lors de la maintenance des avions, la gestion des convois d'approvisionnement et
surtout, optimisation de la stratégie d’attaque des sous-marins allemands en surface. Parmi ses
membres, on peut citer le physicien Patrick Blackett. Leurs efforts furent significatifs dans la
marche vers la victoire. 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. Ces succès encouragèrent la poursuite de l’utilisation de la RO dans
d’autres domaines. La croissance importante de l’industrie d’après-guerre entraîna des

P a g e 4 | 90
Recherche Opérationnelle 2020-2021

problèmes, causés par la complexité croissante et la spécialisation dans les organisations,


problèmes en fait proches de ceux présents lors du conflit. Au début des années 1950, la RO a
pénétré une multitude d’organisations commerciales, industrielles, et gouvernementales. Cette
croissance rapide de la RO est due d’une part au développement considérable des techniques
de la RO et surtout à l’essor de l’outil informatique.

0.3. Importance de la Recherche Opérationnelle

La recherche opérationnelle est une réponse au souci de l’homme dans ses domaines
d’activités :

 De gérer au mieux les ressources épuisables dont il dispose,


 De réduire la durée et le coût de réalisation de projet
 D’accroître le rendement d’un processus
 D’accroître le profit ou de réduire le coût d’une activité économique
 D’accroître l’efficacité dans le fonctionnement d’un système
 De réduire les distances et le temps de parcours
 D’allouer efficacement certaines ressources vitales
 En un mot de mieux faire ce que l’homme a à faire
 De choisir la meilleure stratégie d’action
 De prendre les meilleures décisions
 D’améliorer son existence sur terre

0.4. Les champs d’application de la recherche opérationnelle

Les champs d‘application de la Recherche Opérationnelle se situent donc autour de l‘aide à la


décision, l‘amélioration de la productivité, la gestion de production, l‘optimisation dans les
choix stratégiques des organisations. Les applications de la RO couvrent des domaines divers :

Le raffinage du pétrole

Le modèle adopté chez Texaco en 1989 dicte par exemple la quantité des différents pétroles
bruts à transformer en chacune des sortes d’essence. Le modèle a retenu 14 éléments dans la

P a g e 5 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

composition de l’essence. Ce modèle permet à Texaco de réaliser des économies estimées à 30


millions de $ chaque année.

La gestion des forces policières

Le déploiement des policiers de San Francisco a donné lieu, en 1989, à une réorganisation qui
tient compte des contraintes de congés, de vacances, d’absences motivées (maladie), de
l’urgence d’intervenir dans les secteurs à risque…Ainsi, 11 millions de $ sont épargnés / an,
l’attente après une demande d’intervention a baissé de 20% ; les amendes relatives aux
infractions en matière de stationnement ont augmenté de 3 millions de $/an.

La gestion du transport routier, du transport aérien

Gestion de parc auto (ramassage d’ordures), itinéraire des avions, horaires des vols, quantités
de carburant achetées dans les divers aéroports de destination, constitutions des équipages….

La gestion des stocks et des produits manufacturiers

Il existe des modèles de RO pour optimiser la disposition des machines-outils dans les usines,
pour déterminer le nombre et la localisation des usines à construire, pour organiser les systèmes
de distribution des biens produits (choix des moyens de transporte et des routes).

La gestion financière

La gestion des flux financiers d’une entreprise, la gestion de portefeuille, l’établissement du


calendrier de construction d’un développement commercial tirent grand profit des techniques
de la RO.

La gestion hospitalière, la gestion des files d’attentes, le domaine militaire etc … sont tant de
domaines d’application de la Recherche Opérationnelle.

0.5. Méthodologie de la recherche opérationnelle

Un projet de Recherche Opérationnelle se déroule en cinq étapes.

 La première étape consiste en la formulation du problème qui comprend la définition


des variables de décision, des objectifs, les contraintes en tenant compte des données
disponibles.
 La seconde étape consiste en la construction du modèle qui comprend le choix du type
de modèle à partir d’hypothèses simplificatrices.

P a g e 6 | 90
Recherche Opérationnelle 2020-2021

 La troisième étape est la résolution du modèle par le choix ou la création d’un


algorithme.
 La quatrième étape est la validation des résultats par une analyse de sensibilité.
 La dernière étape consiste en la mise en œuvre par la prise de décision et l’élaboration
d’un outil opérationnel.

POINTS IMPORTANTS A RETENIR

- La RO peut se définir comme un ensemble de méthodes scientifiques


cherchant à résoudre efficacement les problèmes posés par les
activités des organisations humaines. Elle est également un outil
d’aide à la décision dans la mesure où elle permet d’opérer des choix
et d’aboutir au meilleur choix possible.
- La méthodologie en Recherche opérationnelle (05 étapes).

P a g e 7 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Chapitre 1 : Programmation linéaire (formulation)

La programmation mathématique recouvre un ensemble de techniques d’optimisation sous


contraintes qui permettent de déterminer les conditions dans lesquelles une fonction-objectif Z
de n variables x j liées par m relations ou contraintes peut être maximisée/minimisée.

Résoudre donc un problème de programmation mathématique, c’est rechercher le maximum/


minimum d’une fonction algébrique de variables liées par des équations ou /et inéquations
algébrique de degré quelconque, appelées contraintes. Dans le cas simple où la fonction à
maximiser / minimiser et toutes les contraintes sont du premier degré, le problème prend le nom
de programmation linéaire.

De nombreux problèmes de la firme peuvent être transcrits en problèmes d’optimisation sous


contraintes, aussi rencontre t- on de nombreuses applications de la programmation
mathématique dans les domaines de la gestion.

La gestion de production est le domaine où ces applications sont les plus nombreuses. On peut
par exemple citer :

 L’´élaboration de plans de production et de stockage,


 Le choix de techniques de production,
 L’affectation de moyens de production,
 La détermination de la composition de produits.
Dans le domaine du marketing, on peut également citer :
 Le choix de plans-média,
 La détermination de politiques de prix,
 La répartition des efforts de la force de vente,
 La sélection des caractéristiques du produit.

On citera encore des applications en matière logistique (gestion des transports), de gestion des
ressources humaines (affectation de personnel) etc.
Parmi les techniques de programmation mathématique, la programmation linéaire est la plus
classique. Les chapitres 2 et 3 qui suivent ce chapitre nous donnent des méthodes de résolution
des programmes linéaires.

P a g e 8 | 90
Recherche Opérationnelle 2020-2021

1.1. Définition et concepts de base

La formalisation d’un PL est une tâche délicate mais essentielle car elle conditionne la
découverte ultérieure d’une meilleure solution. Elle comporte les phases suivantes :

1) La détection du problème et l’identification des variables. Ces variables doivent


correspondre exactement aux préoccupations du responsable de la décision. En
programmation mathématique, les variables sont des variables décisionnelles.
2) La formulation de la fonction économique (ou fonction-objectif) traduisant les
préférences du décideur exprimées sous la forme d’une fonction des variables
identifiées.
3) La formulation des contraintes. Il est bien rare qu’un responsable dispose de toute liberté
d’action. Le plus souvent il existe des limites à ne pas dépasser qui revêtent la forme
d’équations ou d’inéquations mathématiques.

Considérons une entreprise ABC spécialisée dans la production des biens X1 et X2. Il nous faut
des intrants Q.

1x1  a11Q
Pour produire b1 où b1 est la quantité totale de ressources disponibles
1x 2  a12 Q

Intrant M0 (main d’œuvre)

1x1  a 21 M 0
Pour produire b2 où b2 est la quantité totale de main d’œuvre
1x 2  a 22 M 0

L’entreprise vend x1 à c1 et x 2 à c2 . Le problème de l’entreprise est de maximiser son profit


brut : le profit brut est (Z).

Z  c1 x1  c2 x2 ; On veut maximiser le profit brut mais il y a des contraintes

La première contrainte est de produire de telle sorte que :

a11 x1  a12 x2  b1

La deuxième contrainte est de produire de telle sorte que :

a21 x1  a22 x2  b2

P a g e 9 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

De plus il faut que x1  0 et x 2  0 . Ainsi pour résoudre son problème, l’entreprise doit
considérer le programme mathématique suivant :

Max Z  c1 x1  c 2 x 2
S /C a11 x1  a12 x 2  b1
a 21 x1  a 22 x 2  b2
x1  0; x 2  0

Un tel programme est appelé modèle de programmation mathématique linéaire.

c1 x1  c2 x2 Est la fonction-objectif (F-O).

a11 x1  a12 x 2  b1
. a 21 x1  a 22 x 2  b2 Les contraintes
x1  0; x 2  0

Partant de ce simple exemple, on peut écrire la formulation générale d’un modèle de


programmation linéaire comme suit :

Soit :

x j : Le niveau de l’activité j (quantité produite du jième produit)

c j : La marge brute escomptée par unité de j

aij : La quantité de ressource i requise pour produire une unité de j avec (i = 1, …, m)

bi : La quantité totale de ressource i disponible

Max Z   c j x j
j

S /C a ij x j  bi i

xj  0 j

Cela veut dire qu’on cherche à déterminer le plan optimal d’activité sans dépasser les
contraintes sur les ressources fixes et sans niveau d’activité négatif.
On peut résumer le programme algébrique dans un tableau appelé tableau de programmation
linéaire.

P a g e 10 | 90
Recherche Opérationnelle 2020-2021

X1 X2 ……….Xn

F-O C1 C2………… Cn A max


Contraintes
1 a11 a12….…….. a1n ≤ b1
2 a21 a22 …………a2n ≤ b2
.
.
m am1 am2 ……. .. ..amn ≤ bm

Ce tableau se traduit mathématiquement comme suit :

Max Z  c x 1 1  c2 x2  ......  cn xn
x1 ; x2 ; .....xn

S /C a11 x1  a12 x2  ........  a1n xn  b1


a21 x1  a22 x2  ........  a2 n xn  b2

am1 x1  am 2 x2  ........  amn xn  bm
x j  0 où j  1;2;..... n

Cette expression mathématique est appelée forme canonique du programme linéaire.

1.2. Hypothèses de programmation linéaire

Les hypothèses suivantes peuvent être énoncées :

H1 : La fonction-objectif est appropriée

Cela veut dire que la F-O est le seul critère de choix de l’ensemble des solutions admissibles.

H2 : Les variables de décision x j sont appropriées

Cela implique que :


a) Les x j sont sous le contrôle du décideur,

b) Toutes les variables décisionnelles ont été prises en compte.

H3 : Les contraintes sont appropriées

Cela implique que :

P a g e 11 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

a) Les contraintes rendent compte totalement des limites en ressources technologique,


environnementale etc. Ainsi, pour x j qui satisfait toutes les contraintes simultanément

fait partie de l’ensemble des solutions admissibles.


b) Les ressources i sont des biens homogènes qui peuvent être utilisés par x j .

c) Aucune des contraintes n’éliminent aucune des valeurs de l’ensemble des solutions
admissibles.
d) Aucune des contraintes n’est violée.

H4 : Hypothèse de proportionnalité

Les contributions marginales des x j au profit sont constantes. De même, les coefficients

techniques ( a ij ) sont constants. En effet, le profit (ou le coût) provenant du produit rattaché à

une variable donnée est proportionnel à la valeur de cette variable ; par exemple le profit dû au
maïs (voir l’exemple 2 en dessous) s’obtient en multipliant la quantité de maïs par le profit
unitaire (marge unitaire). De même, la portion d’une ressource consacrée à un produit est
proportionnelle à la valeur de la variable associée. La proportionnalité doit être valable pour
toute la gamme des valeurs possibles des variables de décision. Cette hypothèse stipule qu’il
n’y a pas de possibilité d’économie d’échelle.

H5 : Hypothèse d’additivité

Les contributions des x j sont additives. En effet, le profit (ou coût) total est la somme des profits

(ou des coûts) provenant des différents produits. La quantité totale d’une ressource requise par
un plan de production est la somme des quantités utilisées par les différents produits.

H6 : Hypothèse de divisibilité

Les variables x j sont des variables continues.

H7 : Hypothèse d’absence du risque

Les C j ; bi ; aij sont des paramètres connus avec certitude.

P a g e 12 | 90
Recherche Opérationnelle 2020-2021

1.3. Exemples de modèle de programmation linéaire


A. Exemples de maximisation
1) Exemple 1
La société Bonvin, S.A., qui pratique le négoce en vins propose à sa clientèle deux vins de table
: l'un est dénommé « Extra », l'autre « Supérieur ». Ces produits sont obtenus par coupage de
crus issus de diverses régions : un vin de l'Hérault, un vin du Bordelais et un vin d'Italie. Les
coupages sont réalisés selon les proportions fixes suivantes :

Vin « Extra » Vin « supérieur »

Vin de l’Hérault. 0.5 0.2


Vin du Bordelais. 0.3 0.6
Vin d’Italie. 0.2 0.2
Total 1 1

La société dispose en stock dans ses cuves des quantités suivantes de crus d’origine :

 Vin de l’Hérault : 13 600 hectolitres


 Vin du Bordelais : 12 000 hectolitres
 Vin d’Italie : 10 400 hectolitres
Ces quantités constituent les ressources disponibles pour la production de l'année à venir. En
outre, compte tenu des capacités techniques d'embouteillage existantes, cette production ne peut
dépasser 36 000 hectolitres au total dans l'année.
L'activité de cette entreprise comporte des coûts qui ont été classés en deux catégories :
Un coût fixe qui correspond aux approvisionnements, puisque ceux-ci sont déjà
constitués, ainsi qu'aux frais de personnel. Ces coûts s'élèvent à 1 200 000 F pour
l'année ;
Un coût variable (comprenant les frais d'embouteillage, d'emballage et de
commercialisation) proportionnelle aux quantités produites : soit 100 F / hectolitre de
vin quelle que soit le type de vin.
Une étude de marché révèle que celui-ci ne saurait absorber plus de 20 000 hectolitres de vin «
Extra » à 500 F / hectolitre, et 16 000 hectolitres de vin « Supérieur » à 600 F/ l'hectolitre.

Résolution

Comme nous l’avons signifié au point 1.1), La formalisation d'un programme linéaire est l’étape

P a g e 13 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

la plus délicate de la résolution d’un problème. Elle nécessite un effort de conception qui doit
aboutir à la détermination des trois éléments suivants :

 Détection du problème et identification des variables


Dans le cas de cette entreprise, la question est de savoir quelle quantité de vin (de type « Extra
» et « Supérieur ») faut-il produire afin de rendre maximal le bénéfice total.
Nous désignons par X1, le vin de type « Extra » et X2 le vin de qualité « Supérieur ».

 La formulation de la fonction économique ou fonction-objectif

La fonction économique ou fonction-objectif exprime sous forme mathématique le but


poursuivi par l'entreprise. Ici, il s'agit de maximiser le profit de l’entreprise. Celui-ci résulte de
la différence entre les recettes et les coûts d'exploitation.
Les recettes dépendent des prix de vente pratiqués (connus) et des quantités produites (et
supposées vendues). Ces quantités sont inconnues et correspondent aux variables X1 et X2
définies précédemment. Les recettes s'écrivent donc :
Recettes  500 x1  600 x2

Les coûts comportent une partie proportionnelle à la production et une partie fixe :
Coûts  100( x1  x2 )  1200000
Par conséquent, le bénéfice peut s’écrire sous la forme suivante :
Benefice  500x1  600x2  100( x1  x2 )  1200000
 400x1  500x2  1200000

Le problème consiste dès lors à déterminer les valeurs de X1 et X2 qui permettent de maximiser
le bénéfice. En fait, dans la mesure où les valeurs de X1 et de X2 qui rendent maximum le
bénéfice maximisent également la marge brute, la fonction-objectif du problème peut être
simplifiée et exprimée comme suit : Z  400x1  500x2

 La formulation des contraintes

L'ensemble des contraintes détermine la zone des solutions admissibles et conditionne de ce


fait les valeurs que peuvent prendre les variables. Les contraintes peuvent être de différente
nature et porter sur les capacités de production, d'approvisionnement, de trésorerie, etc. Dans
le cas présent, les matières premières ne sont disponibles qu'en quantités limitées : à chaque

P a g e 14 | 90
Recherche Opérationnelle 2020-2021

catégorie de vin en stock va donc correspondre une contrainte qui traduit la quantité limite à ne
pas dépasser.

Prenons l'exemple du stock de vin de l'Hérault :


 0,5X1 indique la quantité de vin de l'Hérault utilisée pour obtenir X1 hectolitres de vin
« Extra » ;
 0,2X2 indique la quantité de vin de l'Hérault utilisée pour produire X2 hectolitres de vin
« Supérieur ».
Dans la mesure où l'entreprise ne dispose que de 13600 hectolitres de vin de l'Hérault, la
première contrainte s’écrira : 0,5x1  0,2 x2  13600

De manière similaire, les contraintes concernant, respectivement, le vin du Bordelais et le vin


d'Italie s’écrivent comme suit : 0,3x1  0,6 x2  12000 et 0,2 x1  0,2 x2  10400
Les contraintes liées à l’absorption du marché qui s'élève à 20000 pour le vin « Extra » et 16000
pour le vin « Supérieur » s’écrivent respectivement comme suit :
x1  20000 ; x2  16000
Contrainte liée à la capacité d'embouteillage, limitée à 36000 hectolitres, nous donne :
x1  x2  36000
Lorsque toutes les limites ont été traduites en contraintes, il reste à vérifier qu'il n'y a pas de
contrainte redondante. Cela se produit lorsque l'une d'elles peut être déduite d'une ou de
plusieurs autres contraintes par combinaison linéaire. Considérons les contraintes :

x1  20000 (Marché du vin « Extra »)


x2  16000 (Marché du vin « Supérieur »)
x1  x2  36000 (Capacité des installations).
On remarque que la dernière contrainte est une combinaison linéaire des deux premières. Cette
dernière contrainte est donc redondante. Cela signifie que si les deux premières sont respectées
la contrainte redondante est nécessairement satisfaite. Elle s'avère donc inutile.
Il est nécessaire enfin de mentionner une catégorie particulière de contraintes, en fait les
contraintes de non-négativité : x1  0 ; x 2  0
La forme formalisée (forme canonique) nous donne :

P a g e 15 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Max Z  400x1  500x 2


S /c 0,5 x1  0,2 x 2  13600
0,3x1  0,6 x 2  12000
0,2 x1  0,2 x 2  10400
x1  20000
x 2  16000
x1  0; x 2  0

2) Exemple n°2
Considérons l’entreprise agricole SACO, elle cultive chaque année 04 produits. Le maïs, le
haricot, sorgho et l’arachide. Pour chaque produit, les besoins en intrants en hectares sont les
suivants :

Maïs Haricot Sorgho Arachide

Terre 1 ha 1 ha 1 ha 1 ha

Main d’œuvre
1,42 heure 1,87 heure 1,92 heure 2,64 heures
qualifiée (MoQ)
Main d’œuvre non
1,45 heure 1,27 heure 1,16 heure 1,45 heure
qualifiée (MonQ)

La superficie totale disponible est de 5 ha ; la quantité totale de main d’œuvre qualifiée est de
16,5 heures et la quantité totale de main d’œuvre non qualifiée est de 10 heures.

On note également que le marché ne peut absorber que 0,5 tonnes d’arachide/an. L’entreprise
SACO quant à elle ne peut produire que 0,983 tonne d’arachide par/an. Les marges brutes
escomptées à l’hectare sont résumées dans le tableau ci-dessous :

Maïs Haricot Sorgho Arachide


Marges brutes /ha 1372 FCFA 1219 FCFA 1523 FCFA 4874 FCFA

L’entreprise SACO veut maximiser sa marge brute totale étant donnée les contraintes ci-dessus.
La question est de savoir quel type de céréales produire pour rendre sa marge brute maximale.
Nous désignons par X1, le « Maïs » ; X2 le « Haricot » ; X3 le « Sorgho » ; X4 l’ «Arachide».
On peut résumer toutes informations dans le tableau de programmation linéaire ci-dessous :

P a g e 16 | 90
Recherche Opérationnelle 2020-2021

X1 X2 X3 X4
F-O 1372 1219 1523 4874 A max
Contraintes
Terre 1 1 1 1 5
MoQ 1,42 1,87 1,92 2,64  16,5
MonQ 1,45 1,27 1,16 1,45
Commerciale 0 0 0 0,983  10
 0,5

La formulation algébrique (ou forme canonique) nous donne :

Max Z  1372x1  1219x 2  1523x3  4874x 4


S /c x1  x 2  x3  x 4  5
1,42x1  1,87 x 2  1,92x3  2,64x 4  16,5
1,45x1  1,27 x 2  1,16x3  1,45x 4  10
0,983x 4  0,5
x1  0; x 2  0; x3  0; x 4  0

B. Exemples de minimisation
1) Problème classique de transport

Considérons le problème classique de transport dans lequel une entreprise dispose de 03


magasins et vend son produit dans 03 villes différentes. Les quantités totales disponibles dans
les magasins sont les suivantes :

Quantités disponibles
Magasin 1 70
Magasin 2 100
Magasin 3 30

La demande de chaque ville est la suivante : ville 1 :70 ; ville 2 : 90 et ville 3 : 40.
Les coûts unitaires de transport sont les suivants :

Ville 1 Ville 2 Ville 3


Magasin 1 5 3 5
Magasin 2 15 6 10
Magasin 3 2 11 12

P a g e 17 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Notons par x ij la quantité de bien x à expédier du magasin i à la ville j .

a i : La disponibilité totale du magasin i

b j : La demande de x dans la ville j

 xij  ai i
 j
Les x ij doivent vérifier les conditions suivantes : 
 xij  b j j
 i

Le problème de l’entreprise est de déterminer les quantités optimales de x à expédier de chaque


magasin à chaque ville tout en minimisant le coût total du transport.

X11 X12 X13 X21 X22 X23 X31 X32 X33


F-O 5 3 5 15 6 10 2 11 12 A min
MAG
1 1 1 1 0 0 0 0 0 0 ≤ 70
2 0 0 0 1 1 1 0 0 0 ≤ 100
3 0 0 0 0 0 0 1 1 1 ≤ 30
Cciale
1 1 0 0 1 0 0 1 0 0 ≥ 70
2 0 1 0 0 1 0 0 1 0 ≥ 90
3 0 0 1 0 0 1 0 0 1 ≥ 40

2) La formulation d’un produit spécifique


Pour préparer un engrais spécifique contenant les composants A, B, C et D ; un agriculteur a
besoin de deux types d’engrais composés E1 et E2. E1 et E2 contiennent en effet les composants
A, B, C et D dans les proportions suivantes en %.

A B C D
E1 20 0 10 10
E2 0 10 10 20

Pour couvrir toute sa superficie de production, l’agriculteur a besoin de 60 Kg de A, 50 Kg de


B, 110 Kg de C et 170 Kg de D. L’agriculteur veut déterminer les quantités optimales de E1 et
de E2 à acheter pour préparer à moindre coût l’engrais spécifique dont il a besoin. Sur le marché
E1 et E2 coûtent respectivement 2 FCFA et 3 FCFA le kg.
a) Indiquer le tableau de programmation linéaire
b) Indiquer la formulation mathématique

P a g e 18 | 90
Recherche Opérationnelle 2020-2021

Solution
Le problème qui est posé ici est un problème de formulation d’un produit chimique. Ici, ce
produit est un engrais chimique. Dans certains cas, on a des problèmes de formulation de
produit alimentaire pour bétail, volaille etc.….

a) Indiquons le tableau de programmation linéaire

E1 E2
F-O 2 3 A min
Contraintes
A 0,2 0 ≥ 60
B 0 0,1 ≥ 60
C 0,1 0,1 ≥ 110
D 0,1 0,2 ≥ 170

b) Indiquons la formalisation mathématique

Min Z  2 E1  3E 2
S /c 0,2 E1  60
0,1E 2  50
0,1E1  0,1E 2  110
0,1E1  0,2 E 2  170
E1  0 ; E 2  0

P a g e 19 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

POINTS IMPORTANTS A RETENIR

I. Questions de contrôle de connaissances


1. Qu’est-ce qu’une programmation linéaire ?
2. Qu’est-ce qu’une variable de décision ?
3. Qu’est-ce qu’une fonction – objectif ou fonction économique?
4. Qu’est-ce qu’une contrainte ?

II. Exercice d’assimilation


Un restaurateur dispose de 30 tranches de saucisson, 15 tranches de jambon et 42 olives pour fabriquer
2 types de Hors-d’œuvre (H.O). Un H.O de type A est composé de 3 tranches de saucisson, 3 tranches
de jambon et 5 olives tandis que l’H.O de type B est composé de 6 tranches de saucisson, 1 tranche de
jambon et 6 olives. Un H.O de type A est vendu à 150 F et celui de type B à 100 F. Combien de H.O
de chaque type le restaurateur doit proposer pour maximiser sa recette ?

III. Exercice d’approfondissement


Une entreprise désire effectuer une campagne publicitaire dans la télévision, la radio et les journaux
pour un produit lancé récemment sur le marché. Le but de la campagne est d’attirer le maximum
possible de clients. Les résultats d’une étude de marché sont donnés par le tableau suivant :
Télévision (TV) Radio Journaux
Locale Par satellite
Coût d’une publicité 40 $ 75$ 30$ 15$
Nombre de client potentiel par publicité 400 900 500 200
Nombre de client potentiel femme par publicité 300 400 200 100

On prévoit de ne pas payer plus que 800$ pour toute la campagne et on demande que les objectifs
suivants soient atteints :
1. Au minimum 2000 femmes regardent, entendent ou lisent la publicité ;
2. La campagne publicitaire dans la TV ne doit pas dépasser 500$.
3. Au moins 3 spots publicitaires seront assurés par la TV locale et au moins deux spots par la TV
par satellite.
4. Le nombre des publicités dans la radio ou dans les journaux sont pour chacun entre 5 et 10.
TAF : Ecrire le PL permettant à l’entreprise de toucher le plus de clients.

P a g e 20 | 90
Recherche Opérationnelle 2020-2021

Chapitre 2 : Méthodes de résolution d’un Programme Linéaire

Après avoir illustré par des exemples au chapitre précédent comment un problème peut être
modélisé en un programme linéaire, ce chapitre aborde le volet de la résolution d’un programme
linéaire. L’objet de ce chapitre est donc de proposer des techniques de résolution d’un
programme linéaire par la méthode graphique et la méthode énumérative. Nous limiterons
volontairement l’usage de ces méthodes citées à la résolution de programmes linéaires
comportant deux variables de décision. Ces méthodes sont les mieux indiquées dans la
résolution de problèmes à deux variables de décisions ; au-delà de deux variables de décisions,
la méthode du Simplexe que nous aborderons au chapitre suivant est la plus appropriée.

2.1.Terminologie pour les solutions du programme linéaire en nombre réels

Par habitude, la solution d’un problème signifie la réponse finale de ce problème, mais
la convention en programmation linéaire est quasiment différente où différents types de
solutions sont alors identifiées par l’usage d’un qualificatif approprié.

A. Solution d’un programme linéaire : définition

Une solution d’un programme linéaire à n variables réelles à m contraintes est une
solution x  ( x1 , x2 ,..., xn ) qui satisfait toutes les contraintes structurelles de ce programme
linéaire.

B. Solution réalisable d’un programme linéaire : définition

Une solution réalisable ou admissible d’un PL à n variables réelles et m contraintes est


une solution de ce programme qui satisfait les contraintes de non-négativité.

C. Solution optimale réalisable : définition

En programmation linéaire l’on s’intéresse particulièrement à une solution optimale


réalisable d’un programme linéaire, appelée par abus de langage « solution optimale ».
Une solution optimale d’un programme linéaire est une solution réalisable
x  ( xˆ1 , xˆ2 ,..., xˆn ) qui optimise la fonction – objectif de ce programme linéaire.
P a g e 21 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

D. Solution Optimale d’un Programme Linéaire à deux variables réelles :


définition

Une solution optimale d’un programme linéaire à 2 variables est déterminée graphiquement par
la localisation d’un point optimum dans le domaine de réalisation du programme linéaire. Une
solution optimale est donnée par les coordonnées du point optimum correspondant.

Un point optimum d’un programme linéaire à deux variables est un point du domaine
de réalisation du programme linéaire où passe la droite de niveau maximum (resp. minimum)
de la fonction-objectif dans le cas d’une maximisation (resp. minimisation).

2.2.Techniques de résolution graphique

La procédure de la méthode graphique de résolution d’un programme linéaire se déroule en


trois (03) étapes :

Etape 1 : Détermination du domaine de réalisation du programme linéaire.

1) Tracer les droites dont les équations sont fournies par les équations associées
respectivement aux contraintes structurelles.
2) Identifier géométriquement les domaines Di de validité des contraintes structurelles
par la méthode de régionnement du plan par une droite.
3) Déterminer géométriquement le domaine D de réalisation du programme linéaire. Le
domaine D de réalisation du programme linéaire est l’intersection des domaines de
validité respective des contraintes. D  Di
i

Le domaine D de réalisation est le polygone délimité par les droites représentant les
contraintes.
Etape 2 : Tracé des courbes ou de la droite de niveau k de la fonction-objectif.
Etape 3 : Localisation du point optimal ou des points optimaux.

Nous allons traiter dans les lignes qui suivent deux exemples qui serviront à illustrer la méthode
de résolution graphique.

P a g e 22 | 90
Recherche Opérationnelle 2020-2021

A. Problèmes de maximisation

Exemple 1 :
Considérons le problème suivant :
La direction d’une usine de meubles a constaté qu’il y a des temps morts dans chacun des
départements de l’usine. Pour remédier à cette situation, elle décide d’utiliser ces temps morts
pour fabriquer deux nouveaux modèles de bureaux, M1 et M2. Les temps de réalisation pour
chacun de ces modèles dans les ateliers de sciage, d’assemblage et de sablage ainsi que les
temps libres dans chacun de ces ateliers sont donnés dans le tableau ci-dessous. Ces temps
représentent le nombre d’heures nécessaires à un homme pour effectuer le travail. Les profits
que la compagnie peut réaliser pour chacun de ces modèles sont de 300$ pour M1 et de 200$
pour M2.

M1 M2 Temps libres
Sciage 1 2 20
Assemblage 2 1 22
Sablage 1 1 12

La direction désire déterminer combien de bureaux de chaque modèle elle doit fabriquer pour
maximiser son profit.
Solution:
Posons x1 le nombre de bureaux du modèle M1 et x 2 le nombre de bureaux du modèle M2. Les
temps libres de chaque département imposent des contraintes qu’il faut respecter. La contrainte
imposée par les temps libres à l’atelier de sciage :
x1  2 x2  20
Les autres contraintes sont :
2 x1  x2  22
x1  x2  12
Il s’ajoute à ces contraintes des contraintes de non-négativité puisque le nombre de bureaux ne
peut être négatif, on a donc : x1  0 ; x2  0

La fonction- objectif a pour expression : Z  300x1  200x2


La forme formalisée ou canonique du problème est :

P a g e 23 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Max Z  300x1  200x 2


x1 ; x2

S /c x1  2 x 2  20
2 x1  x 2  22
x1  x 2  12
x1  0; x 2  0

1) Méthode graphique (1ère méthode)

Représentation des lignes des contraintes et partant l’ensemble des solutions admissibles :
- Transformer les contraintes de la manière suivante :
On écrit l’une des variables de décision en fonction des autres variables décisionnelles.
* x2  10  0.5x1 pour la contrainte 1--- (D1)

* x2  22  2 x1 pour la contrainte 2--- (D2)

* x2  12  x1 pour la contrainte 3 ---(D3)


- Transformer les inégalités en égalité et représenter les contraintes dans le graphique

Le domaine rayé en rouge de la figure OABCD représente le domaine du plan formé par
l’ensemble des points vérifiant toutes les contraintes (ensemble des solutions réalisables).

P a g e 24 | 90
Recherche Opérationnelle 2020-2021

Localiser la solution optimale


La fonction-objectif Z  300x1  200x2 représente pour Z fixé l’équation des courbes de
niveau (les droites de pente -3/2). Maximiser Z revient à déplacer la courbe de niveau le plus
loin possible de l’origine puisque les coefficients de x1 et x 2 dans la fonction-objectif sont
positifs, (voir la figure ci-dessus).
1 3
Z  300x1  200x 2  x 2  Z  x1
200 2
Dans la pratique on donne une valeur à Z.
x 2  10  1.5 x1

Pour Z  2000 on a  pour x1  0 on a x2  10
et pour x  20 / 3, on a x  0
 1 2

Calculer la solution optimale


Graphiquement, on a localisé la solution optimale. Celle-ci correspond au point d’intersection
C des deux droites (D2 et D3) d’équations respectives :
2 x1  x 2  22

 x1  x 2  12
Donc x1  10 et x 2  2; Z *  3400

Exemple 2:
On veut maximiser le programme linéaire suivant
Max Z  4 x1  5 x2
s/c x1  2 x2  40
4 x1  3x2  120
x1  0; x2  0
Résolution

Représentation des lignes des contraintes et partant l’ensemble des solutions admissibles :

- Transformer les contraintes de la manière suivante :


On écrit l’une des variables de décision en fonction des autres variables décisionnelles.
* x2  20  0.5 x1 contrainte1
4
* x2  40  x1 contrainte 2
3

P a g e 25 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

- Transformer les inégalités en égalité et représenter les contraintes dans le graphique

Le domaine rayé en rouge de la figure DABC représente le domaine du plan formé par
l’ensemble des points vérifiant toutes les contraintes (ensemble des solutions réalisables).

Localiser la solution optimale


La fonction-objectif Z  4 x1  5x2 représente pour Z fixé l’équation des courbes de niveau (les
droites de pente -4/5). Maximiser Z revient à déplacer la courbe de niveau le plus loin possible
de l’origine puisque les coefficients de x1 et x 2 dans la fonction-objectif sont positifs. (Voir la
figure ci-dessus).
1 4
- Z  4 x1  5 x2  x2  Z  x1
5 5
Dans la pratique on donne une valeur à Z.

 100 4
 x2  5  5 x1  5 x2  100  4 x1

Pour Z = 100 on a  pour x1  25 on a x2  0
et x  0 on a x  20
 1 2

Calcul de la solution optimale

Le point B est la solution. (En effet, on projette la droite de Z=100 jusqu’au sommet le plus
élevé de la figure ABCD c'est-à-dire B).

P a g e 26 | 90
Recherche Opérationnelle 2020-2021

- Pour trouver les valeurs optimales de X1 et de X2, il faut résoudre le système suivant

 x1  2 x2  40
  x1*  24 et x2*  8 et Z* = 136
 4 x1  3 x2  120

Remarques

i) Que fait-on s’il existe n contraintes de type a x


ij j  bi ?

- Transformation des  en 
- Représenter toutes les droites de type aij x j  bi sur le même graphique et prendre leur

intersection comme étant l’ensemble des solutions admissibles. Pour trouver la solution
optimale, on procède comme ci-dessus.
-
ii) Dans l’exemple précédent, on a trouvé une solution unique. Dans certains cas la
solution optimale est un ensemble de solutions (cas de dégénérescence).

Exemple, on veut maximiser


Max Z  x1  2 x2
s/c x1  2 x2  40
4 x1  3x2  120
x1  0; x2  0

Dans ce cas, on dit qu’il existe une infinité de solution parmi lesquelles on a deux solutions
extrêmes. Ce cas est appelé solution dégénérée.

P a g e 27 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

iii) Contrairement à l’exemple que nous venons de voir, un programme linéaire peut
ne pas admettre de solution, cela est le cas lorsque les contraintes sont
incompatibles.
iv) Si au lieu de maximiser, on doit minimiser la fonction-objectif, la recherche de la
solution optimale ne change pas du tout.

2) Méthode énumérative (2e méthode)

Partant de l’exemple 1 du point A), on remarque que la solution optimale ne peut être que sur
le bord du domaine des solutions réalisables. De plus, elle est dans ce cas général donné par un
des points anguleux correspondant aux intersections des droites des contraintes. Une telle
solution est appelée solution de base. Ceci nous amène à adopter la démarche suivante :
 Représenter les lignes des contraintes et l’ensemble des solutions réalisables
 Localiser toutes les solutions de base (les points d’intersection des droites de
contraintes)
 Calculer la valeur de la fonction-objectif en chacun de ces points et sélectionner la
solution optimale.

Dans l’exemple 1, les solutions de base correspondent aux points suivants :

La solution optimale est donnée par le point C.

B. Problèmes de minimisation

Soit l’exemple suivant :

P a g e 28 | 90
Recherche Opérationnelle 2020-2021

Min Z  20x1  25x 2


S /c 3 x1  2 x 2  6
x1  2 x 2  4
x1  5 x 2  5
x1  0; x 2  0

En suivant la même démarche que précédemment on obtient le domaine des solutions


réalisables est donné graphiquement par :

Localiser la solution optimale et calcul de la solution optimale


La fonction-objectif Z  20x1  25x2 représente pour Z fixé l’équation des courbes de niveau
(les droites de pente -4/5). Minimiser Z revient à rechercher une ou plusieurs Dz rencontrant le
domaine des solutions réalisables et ayant une ordonnée à l’origine minimale. La droite
rencontrant le domaine des solutions réalisables et ayant une ordonnée à l’origine minimale est
 3
celle qui contient le C 1,  (Voir la figure ci-dessus). La fonction-objectif atteint son minimum
 2
 3 3 115
pour le couple C 1,  et vaut Z  20 * 1  25 * 
 2 2 2

Exemple
Résoudre graphiquement :
Min Z   x1  x 2
S /c 2 x1  x 2  3
x1  x 2  2
x1  0; x 2  0

P a g e 29 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

2.3.Critique des méthodes graphique et énumérative

Les problèmes ci-dessus ne comportaient que deux variables représentés dans IR 2 ce qui a
permis leur résolution par les méthodes énumérative et graphique. S’il y avait trois variables,
on aurait pu les représenter dans un trièdre c'est-à-dire IR 3 . Cela deviendrait cependant un peu
plus complexe. Les méthodes énumérative et graphique ne peuvent pas permettre de résoudre
le problème avec plus de trois variables.
Dans une situation réelle, le nombre de variables peut être très élevé voire supérieur à trois.
Dans ce cas, il faut utiliser d’autres méthodes différentes des méthodes graphique et
énumérative. L’une de ces méthodes est la méthode du Simplexe. Cette méthode permet de
résoudre tout type de programme linéaire quel que soit le nombre de variable.

P a g e 30 | 90
Recherche Opérationnelle 2020-2021

POINTS IMPORTANTS A RETENIR

I. Questions de contrôle de connaissances


1. Qu’est-ce qu’une solution réalisable d’un programme linéaire (PL) ?
2. Qu’est-ce qu’une solution optimale réalisable d’un PL ?
3. Procédure de la méthode graphique de résolution d’un PL à deux variables de décision

II. Exercice d’assimilation

Résoudre le programme linéaire suivant :


1/ par la méthode graphique
2/ Par la méthode énumérative

III. Exercice d’approfondissement

P a g e 31 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Chapitre 3 : L’algorithme ou méthode du Simplexe

On a présenté dans le chapitre précédent des procédures graphique et énumérative pour résoudre
un programme linéaire à deux variables. Par contre, dans la plupart des problèmes réels, on
rencontre plus que deux variables à déterminer. Une procédure de résolution de ces types de
programmes linéaires avec plus que deux variables fera l’objet de ce chapitre. Cette procédure
de résolution est appelée la méthode ou algorithme de Simplexe.
Une implémentation de cette procédure a permis de résoudre des programmes avec un peu plus
de quelques milliers de variables.

3.1. Exposé algébrique de la méthode de Simplexe

Soit le programme linéaire suivant :

Max Z  4 x1  5 x2
s/c x1  2 x2  40
4 x1  3x2  120
x1  0; x2  0

Il faut réécrire le modèle sous la forme standard.

1. Mise sous forme standard

La mise sous forme standard consiste à introduire des variables supplémentaires (une pour
chaque contrainte) de manière à réécrire les inégalités (  ) sous la forme d'égalités. Chacune de
ces variables représente le nombre de ressources non utilisés. On les appelle variable d'écart.
L'impact de ces variables d'écart sur la fonction-objectif est nul (voir ci-dessous, le PLS). Ceci
explique le fait que leur existence soit tout simplement liée à une mise en forme du programme
linéaire initial. Ces variables d'écart peuvent prendre des valeurs non négatives. Le fait de
donner la valeur des variables d'écart a l'optimum donne une idée du nombre des ressources
non utilisées.
La forme standard s'écrit donc :
Max Z  4 x1  5 x2  0e1  0e2
s/c x1  2 x2  e1  0e2  40
4 x1  3 x2  0e1  e2  120
x1  0; x2  0; e1  0; e2  0
Trouver une solution extrême qu’on appelle solution évidente de base (prenons comme solution

P a g e 32 | 90
Recherche Opérationnelle 2020-2021

initiale le sommet O):


x1  0 ; x2  0
e1  40; e2  120

Les variables (X1 et X2) qui prennent la valeur “ 0 ” sont des variables Hors base (HB) ; et
celles qui ne prennent pas de “ 0 ” sont appelées variable dans base (B). La solution extrême
de base signifie que Z = 0, donc le profit est nul et ne nous intéresse pas. Alors pour augmenter
Z, changeons les valeurs de X1 et X2.

Itération 1

2. Définition de la variable entrante et sortante

Le problème peut être réécrit comme suit : soit le système So


x1  2 x2  e1  0e2  40 

4 x1  3x2  0e1  e2  120  S0
4 x1  5 x2  0e1  0e2  Z  0 

La solution extrême est qu’on ne produit rien et pourtant nous voulons maximiser le profit.
Aussi jusqu’où peut-on porter X1 et X2 conformément aux contraintes de sorte à accroitre le
profit. La question est donc quelle variable choisir entre X1 et X2 (c'est-à-dire variable Hors
base).
La variable choisie passera de “ 0 ” à une valeur positive et est appelée variable entrante. La
variable entrante aura une valeur telle que l’une des variables de la base passera de sa valeur
strictement positive à “ 0 ”. Cette variable sera appelée la variable sortante.
En clair, donc l’itération consiste à faire quitter une variable de la base et à en faire entrer
une autre.

a) Choix de la variable entrante

En exprimant Z en fonction de X1 et X2 uniquement, on obtient : Z  4 x1  5 x2


Les coefficients 4 et 5 sont les accroissements marginaux de Z lorsque X1 et X2 passent
respectivement de 0 à 1. Comme on veut maximiser Z, le critère de choix est de prendre le plus
grand accroissement marginal ici 5. Ainsi la variable entrante est donc X2. Ce critère
correspond 1er critère de Dantzig.

1er Critère de Dantzig


« La variable x e entrant en base est celle qui a le coefficient, noté  e , le plus grand positif dans

P a g e 33 | 90

 
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Z. Si tous les coefficients  j sont négatifs ou nuls, FIN: l’optimum est atteint ».

b) Choix de la variable sortante



On repart à So et on exprime les variables dans la base de Z en fonction des variables hors base
et on obtient le système So’.

e1  40  x1  2 x2

S0 e2  120  4 x1  3x2
Z  4 x  5x
 1 2

Au point a), on a vu que X2 entre dans la base mais X1 reste hors de la base donc X1 = 0. En
remplaçant X1 dans So’ par sa valeur, on obtient To.

e  40  2 x2
T0  1
e2  120  3 x2
La question maintenant est de savoir à quel niveau peut – on porter X2 de façon compatible
avec les contraintes ?
On sait que les contraintes To sont satisfaites si et seulement si e1  0 et e2  0
Donc la variable entrante X2 peut prendre toute valeur positive telle que

40  2 x2  0

120  3x2  0
En résolvant le système d’équation, on obtient x2  20 et x2  40
La solution est de prendre X2 (Max) = Min (20 ; 40) donc la valeur maximale de X2 = 20.
On voit que si X2 = 20 alors e1  0 ainsi e1 devient une variable hors base. C’est la variable
sortante.
En revenant à So, on remarque que 40/2 et 120/3 sont les rapports des seconds membres des
contraintes aux coefficients correspondant de la variable entrante. Donc le critère de choix est :
la variable sortante est la variable correspondante au plus petit rapport positif. C’est le second
critère de Dantzig.

Second critère de Dantzig


« La variable x s sortant de la base se détermine en calculant tous les rapports i /aie et
en retenant le plus petit positif » (s’ils sont tous négatifs ou nul, l’optimum du PL est rejeté à
l’infini).
 
La 1ere itération est finie : elle donne la solution suivante :

P a g e 34 | 90
Recherche Opérationnelle 2020-2021

Variable hors base (V.H.B) : x1  0 et e1  0

Variable dans la base (V.ds B) : x2  20 et e2  60

et Z  4*0  5*20  100


Ceci est l’itération 1. Les coefficients de la ligne de C j ou  j (selon d’autres bouquins) ne sont

pas tous nuls ou négatifs. On n’a donc pas atteint la solution optimale et il faut continuer les
itérations. Cette approche ou méthode est trop lourde, aussi allons-nous privilégier la méthode
de résolution des simplexes par des tableaux appropriés.

3.2. Disposition des calculs dans les tableaux

On repart avec pour dresser le tableau initial


x1  2 x2  e1  0e2  40 

4 x1  3x2  0e1  e2  120  S0
4 x1  5 x2  0e1  0e2  Z  0 

X1 X2 e1 e2 VD
Base
e1 1 2 1 0 40
e2 4 3 0 1 120
Cj 4 5 0 0 0
VD : valeurs de droite (valeurs qui sont à droite de l’égalité)

1. Sélection de la variable entrante

La colonne qui a les Cj le plus élevé est la colonne de la variable entrante. Ici c’est X2.

2. Sélection de la variable sortante

Au tableau (0) initial on va adjoindre une colonne R (ratio des valeurs de droite).

X1 X2 e1 e2 VD R
Base
e1 1 2 1 0 40 40/2 = 20
e2 4 3 0 1 120 120/3 = 40
Cj 4 5 0 0 0

Dans la colonne R, on calcule les ratios des valeurs de droite aux coefficients correspondant
P a g e 35 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

dans la colonne de la variable entrante.


Le plus petit R indique la ligne de la variable sortante. Ici c’est la ligne de e1.

3. Passage au tableau suivant

La première étape a été de trouver la variable entrante dans la base et celle qui en sort. La
seconde étape est de passer de l’ancien tableau (0) à un nouveau tableau en utilisant les résultats
précédents. Chaque passage à un tableau constitue une itération. Le passage se fait selon les
règles suivantes :

- 1ere phase

Trouver le pivot. Le pivot est le coefficient qui se trouve à l’intersection de la ligne de la variable
sortante et de la colonne de la variable entrante.
Ex: X2 est la variable entrante ; e1 est la variable sortante. L’intersection entre la colonne de la
variable entrante (X2) et la ligne de variable sortante (e1) est 2. Alors 2 est le pivot.

- 2eme phase
Le pivotage : il permet de passer de l’ancien tableau à un nouveau tableau. Les règles pratiques
à suivre sont :

Règle 1 : Diviser tous les coefficients (y compris la valeur de droite (VD)) de la ligne
du pivot par le pivot. A la place de la variable sortante de la base, inscrire la variable
entrante dans la base.

Ex : On aura sur la ligne du pivot dans le nouveau tableau : 1/2 ; 1 ; 1/2 ; 0 ; 20. De plus X2 va
prendre la place de e1.

Règle 2 : Parmi les autres lignes du tableau, celles qui comportent un zéro dans la
colonne du pivot ne sont pas modifiées.
Règle 3 : Les éléments des autres lignes du tableau y compris la ligne des Cj sont
modifiés comme suit :
Nouvelle valeur de la ligne = (L’ancienne valeur de la ligne – l’ancienne valeur de la colonne
du pivot ≠ 0, multiplié par la nouvelle valeur correspondante sur la ligne du pivot)

Exemple : Ainsi les lignes autres que celles du pivot changent comme suit :
- Ligne e2
4 change pour devenir …….. 4 - 3*(1/2) = 5/2
P a g e 36 | 90
Recherche Opérationnelle 2020-2021

3 change pour devenir …….. 3 - 3*(1) = 0


0 change pour devenir …….. 0 - 3*(1/2) = -3/2
1 change pour devenir …….. 1 - 3*(0) = 1
120 change pour devenir …….. 120 - 3*(20) = 60
Ces valeurs ci-dessus correspondent donc aux nouvelles valeurs de la ligne e2.
- Ligne Cj
4 change pour devenir …….. 4 - 5*(1/2) = 3/2
5 change pour devenir …….. 5 - 5*(1) = 0
0 change pour devenir …….. 0 - 5*(1/2) = -5/2
0 change pour devenir …….. 0 - 5*(0) = 0
0 change pour devenir …….. 0 - 5*(20) = -100
Ces valeurs sont les nouvelles valeurs de Cj

Le tableau initial devient donc :

X1 X2 e1 e2 VD R
Base
X2 1/2 1 1/2 0 20 20/ (1/2) = 40
e2 5/2 0 -3/2 1 60 60/ (5/2) = 24

Cj 3/2 0 -5/2 0 -100

Solutions : X2 = 20 ; e2 = 60 ; X1 = 0 ; e1 = 0 et Z = 100.
Dans ce tableau, on voit que les Cj des variables hors base (HB) ne sont pas tous nuls ou
négatifs. On n’a donc pas atteint la solution optimale. Il faut donc continuer les itérations.

La variable entrante
Le Cj le plus élevé dans le nouveau tableau est 3/2 donc X1 est la nouvelle variable entrante
dans la base.

La variable sortante
Diviser les VD par les coefficients de X1 pour trouver le nouveau R. le R le plus petit est 24
donc e2 sort de la base.

Pivot

P a g e 37 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Le pivot est 5/2 (intersection de la ligne de la variable sortante et colonne de la variable


entrante).

Valeur de la ligne du pivot


Les valeurs sont : 1 ; 0 ; -3/5 ; 2/5 et 24.

Aucune ligne n’a de zéro comme coefficient sur la colonne du pivot. Donc toutes les
lignes doivent être modifiées.

Les nouvelles valeurs des autres lignes sont :

- Ligne X2
1/2 change pour devenir …….. 1/2 - (1/2)*1 = 0
1 change pour devenir …….. …1 - (1/2)*(0) = 1
1/2 change pour devenir …….. 1/2 - 1/2 *(-3/5) = 4/5
0 change pour devenir …….. …0 – (1/2)*(2/5) = -1/5
20 change pour devenir …….. .20 – (1/2)*(24) = 8

- Ligne Cj
3/2 change pour devenir …….. 3/2 - (3/2)*1 = 0
0 change pour devenir ……… .0 - (3/2)*0 = 0
-5/2 change pour devenir ……..-5/2 – (3/2)*(-3/5) = -8/5
0 change pour devenir ……….. 0 - (3/2)*(2/5) = -3/5
-100 change pour devenir ……..-100 - (3/2)*(24) = -136

Le nouveau tableau devient :

X1 X2 e1 e2 VD
Base
X2 0 1 4/5 -1/5 8
X1 1 0 -3/5 2/5 24
Cj 0 0 -8/5 -3/5 -136

Solutions : x2  8; x1  24; e1  0; e2  0 et Z  136 (e1 = e2 = 0 car elles ne sont plus dans la


base).

P a g e 38 | 90
Recherche Opérationnelle 2020-2021

Tous les coefficients des variables hors base de la ligne des Cj sont négatifs ou nuls. La solution
optimale est donc atteinte et on arrête les itérations.
Les solutions optimales obtenues sont donc optimales :
x2*  8 ; x1*  24 ; e1*  0 ; e2*  0 et Z *  136

3.3. Interprétation

1. Interprétation de la solution optimale

Le programme optimal de production de X1 et X2 est : x2*  8 ; x1*  24 . A ces niveaux de

production, la valeur maximale de profit est Z *  136 . A la solution optimale, la quantité totale
de la ressource 1 est utilisée car e1 = 0 (e1 n’est pas dans la base). De même e2 = 0 donc la
quantité totale de ressource 2 disponible est épuisée.

2. Interprétation des coefficients de la ligne Cj

8/5 est le prix de référence de la ressource 1 (le prix de référence est aussi appelé la valeur
marginale ou coût d’opportunité)
De même 3/5 est le prix de référence de la ressource 2.
On peut utiliser 8/5 et 3/5 pour faire des études de sensibilité. Ainsi :
- Si on diminue la quantité de la ressource 1 d’une seule unité c'est-à-dire de 40 à 39
alors Z* diminue de 8/5 c'est-à-dire 136 à 136 - 8/5.
x2* va baisser de 4 5 ie de 8 a 8  4 5. 8  4 5 
x1* va augmenter de 3 5 ie de 24 a 24  3 5.  24    3 5 
- Si on diminue la quantité de la ressource 2 d’une unité c'est-à-dire de 120 à 119.
- alors Z* diminue de 3/5 c'est-à-dire 136 à 136 - 3/5.
x2* va augmenter de 1 5 ie de 8 a 8  1 5.  8   1 5  
x1* va baisser de 2 5 ie de 24 a 24  2 5.  24  2 5

Remarque

1) Etant donné que 8/5 et 3/5 sont les prix de référence de la ressource 1 et ressource 2
alors 8/5 *40 = 64 est la valeur économique de la ressource 1. De même 3/5 * 120 = 72
est la valeur économique de la ressource 2.

P a g e 39 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

On vérifie bien que 64 + 72 = 136 = Z* ; ceci est le fait du théorème d’Euler.

Théorème d’Euler :
Lorsque les rendements d’échelle sont constants, si chaque facteur de production est rémunéré
à son prix marginal ou à son coût marginal alors le produit total sera complètement saturé
c'est-à-dire les profits économiques purs seront nuls.

2) Dans certains cas, la procédure du simplexe ne convergera que lentement, cela est
généralement le cas s’il y a une solution dégénérée.
S’il y a un grand nombre de variables (n > 10), la méthode du simplexe devient trop lourde.
Dans ce cas, on peut utiliser un logiciel approprié. Exemple : GAMS, GAUSS,
MATHEMATICA, EXCEL à travers le SOLVER.

3) Dans certains cas, la solution optimale contient des variables d’écarts. Les valeurs de
ces variables d’écarts indiquent alors les ressources non utilisées.

3.4. La dualité

Tout problème de programmation linéaire peut être formulé sous la forme d’un problème de
maximisation ou de minimisation. Dans l’un ou l’autre des cas, la formulation initiale (c'est-à-
dire le programme écrit en premier) du problème est appelée programme linéaire primal.
A tout programme linéaire primal (PLP) est associé de façon bi-univoque à un programme
linéaire dual (PLD) : c’est l’énoncé du principe de la dualité.
Si la fonction-objectif du primal est maximisée, la fonction-objectif du dual est minimisée. De
même si la F-O du primal est minimisée alors la F-O du dual est maximisée.
Les autres règles de passage du programme primal au programme dual sont les suivantes :

1. Règles pratiques de passage du primal au dual

Soit (P) un programme linéaire et (D) son dual :


Pour passer de (P) à (D), l’on doit observer les cinq règles suivantes :

- R1 : Le sens de l’optimisation est inversé c'est-à-dire un problème de maximisation dans


(P) devient un problème de minimisation dans (D) et vice versa.
- R2 : Le vecteur ligne des coefficients de la fonction économique de (D) est la transposée
du vecteur colonne des constantes seconds membres des contraintes principales de (P).
P a g e 40 | 90
Recherche Opérationnelle 2020-2021

- R3 : Le vecteur colonne des contraintes seconds membres des contraintes principales


de (D) est la transposée du vecteur ligne des coefficients de la fonction économique de
(P).
- R4 : La matrice des contraintes principales de (D) est la transposée de la matrice des
contraintes principales de (P). dans ces contraintes on inverse le sens des inégalités du
primal au dual.
- R5 : Les variables de décision et d’écart des deux programmes linéaires doivent être
notées par des lettres différentes afin d’éviter toute confusion.

On peut les résumer comme suit :


A chaque contraintes du primal correspond une variable duale ;
Les coefficients des contraintes du dual se lisent en colonne du tableau du primal ;
Les coefficients de la fonction-objectif du primal deviennent les valeurs de droite du
dual.

Comment déterminer les contraintes de signe des variables duales ?

Max Z  c1 x1  c2 x2
s/c a11 x1  a12 x2  b1
a21 x1  a22 x2  b2
a31 x1  a32 x2  b3
x1  0; x2  0
Pour transformer le programme primal en dual, on établit le tableau suivant :

X1 X2 VD
F-O C1 C2 A max X1 X2
Contraintes u1 a11 a12 ≤ b1
1 a11 a12 ≤ b1 u2 a21 a22 = b2
u3 a31 a32 ≥ b3
2 a21 a22 = b2
≥ ≥
3 a31 a32 ≥ b3
c1 c2

(Programme linéaire primal)

Dans le primal, on veut maximiser (Z) donc au niveau du dual c’est Minimiser (W).

P a g e 41 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Min W  u1b1  u2b2  u3b3


s/c a11u1  a21u2  a31u3  c1
a12u1  a22u2  a32u3  c2
u1  0; u2 libre ; u3  0
A. Pour un primal maximisant si l’une des contraintes est de type “≤” alors la variable
duale associée sera “≥”.
B. Si la contrainte est de type “=” alors la variable duale associée est libre.
C. Si la contrainte est de type “≥” alors la variable duale associée sera “≤”.
D. Pour un primal minimisant, le sens des inégalités ne change pas.

2. Exemples (Trouver les formes Duales correspondantes)

a) On veut maximiser Z
Max Z  5 x1  6 x2
s/c x2  2
3x1  5 x2  1
x1  0; x2  0

Le programme dual associé ?

X1 X2 MinW  2u1  u2
u1 0 1 ≤2
s/c 0u1  3u2  5
u2 3 5 =1
≥ ≥ u1  5u2  6
5 -6 u1  0; u2 libre

b) On veut minimiser Z
Min Z  3x1  4 x2  6 x3
s/c  x1  3x2  2 x3  100
5 x1  2 x2  20
x1  0; x2  0; x3  0

P a g e 42 | 90
Recherche Opérationnelle 2020-2021

Le programme dual associé,

X1 X2 X3 Max Q  100u1  20u2


u1 -1 3 2 ≤ 100 s/c  u1  5u2  3
u2 5 -2 0 ≥ 20 3u1  2u2  4
   2u1  0u2  6
3 4 6
u1  0; u2  0

Quelques exemples

Primal Dual
Max ½ x1 + x2 Min 3y1 + y2 + 2y3
S.c x1 + x2  3 S.c y1 - y2 + y3  ½
- x1 + x2  1 y1 + y2  1
x1  2 y1  0, y2  0, y3  0
x1  0, x2  0
Min - x1 + x2 Max 2y1 - 2y2 + 5y3
S.c 2x1 - x2  2 S.c 2y1 - y2 + y3  -1
- x1 + 2x2  -2 - y1 + 2y2 + y3  1
x1 + x2  5 y1  0, y2  0, y3  0
x1  0, x2  0
Max 2x1 - x2 Min 3 y1+ 4 y2
S.c x1 - x2 = 3 S.c y1+ 2 y2  2
x1  4 - y1  -1
x1  0, x2  0 y1IR, y2  0
Max 2x1 - x2 Min 2y1 + 6y2 +5y3
S.c x1 - 2x2  2 S.c y1 + y2  2
x1 + x2 = 6 - 2y1 + y2+ y3  -1
x2  5 y1  0, y2 IR, y3  0
x1IR, x2IR

3. Principaux résultats de la dualité

Nous admettons l’important théorème suivant :

Théorème
Soit (P) un programme linéaire, (D) son dual
Soit Z la fonction économique ou la (F-O) dans (P) et W son homologue dans (D).
i) Le programme linéaire (P) admet une solution optimale si et seulement si (D) en admet
une et dans ce cas Zopt = Wopt. (l’objectif du primal est égal à l’objectif du dual).

P a g e 43 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

ii) Si une variable de décision de (D) a une valeur optimale non nulle, alors la variable
d’écart qui lui est associée dans (P) est nécessairement nulle à l’optimum.
iii) Si une variable d’écart de (D) a une valeur optimale non nulle, alors la variable de
décision qui lui est associée dans (P) est nécessairement nulle à l’optimum.
iv) Les valeurs optimales des variables de décision de (P) sont les valeurs marginales des
variables d’écart qui leur sont associées dans (D).
v) Les valeurs optimales des variables d’écart de (P) sont les indicateurs à l’optimum des
variables de décision qui leur sont associées dans (D) sur la ligne de  j .

vi) Les valeurs marginales des variables d’écart de (P) sont les valeurs optimales des
variables de décision qui leur sont associées dans (D).

3.5. Résolution d’un problème de minimisation par la méthode du Simplexe

Considérons
Max Z  4 x1  5 x2 X1 X2
s/c x1  2 x2  40 u1 1 2 ≤ 40
4 x1  3x2  120 u2 4 3 ≤ 120
x1  0; x2  0 ≥ ≥
4 5

Le programme dual associé est le suivant :


Min W  40u1  120u2
s/c u1  4u2  4
2u1  3u2  5
u1  0; u2  0
Ici, il n’y a pas de solution évidente de départ. En effet dans un problème de minimisation, les
variables d’écarts entrent dans le modèle avec les coefficients « -1 » et on impose qu’elles
soient non négatives.

Min W  40u1  120u2  0e1  0e2


s/c u1  4u2  e1  0e2  4
2u1  3u2  0e1  e2  5
u1  0; u2  0; e1  0; e2  0

P a g e 44 | 90
Recherche Opérationnelle 2020-2021

Pour u1  u2  0  e1  4 ; donc la contrainte ( e1  0 ) n’est pas respectée (vérifiée) donc

u1  u2  0 n’est pas une solution.

Pour résoudre le problème, on ajoute des variables artificielles au modèle en plus des variables
d’écarts. Ces variables fictives n’ont aucune interprétation économique, comme leur nom
l’indique, elles sont conçues artificiellement pour engendrer une solution de base accessible.
Notons par A1 et A2 ces variables artificielles. Les coefficients de A1 et A2 sont considérés
comme égaux dans la F-O et notée M. Mais dans les contraintes, A1 et A2 sont affectés du
coefficient « +1 ». Ainsi le modèle devient :

Min W  40u1  120u2  0e1  0e2  MA1  MA2


s/c u1  4u2  e1  0e2  A1  0 A2  4
2u1  3u2  0e1  e2  0 A1  A2  5
u1  0; u2  0; e1  0; e2  0; A1  0; A2  0

A ce dernier modèle, on peut trouver une solution évidente.


Variables Hors Base (HB) : u1  0; u2  0; e1  0; e2  0
Variable dans Base (B) :
A1  4 et A2  5
 W  4M  5M  9M
Pour résoudre ce modèle, on va le réécrire comme suit :
40u1  120u2  0e1  0e2  MA1  MA2  W  0
u1  4u2  e1  0e2  A1  0 A2  4
2u1  3u2  0e1  e2  0 A1  A2  5

U1 U2 e1 e2 A1 A2 VD
Base
M A1 1 4 -1 0 1 0 4
M A2 2 3 0 -1 0 1 5
Cj 40 120 0 0 M M
j 40 120 0 0 M M
-3M -7M M M -M -M

P a g e 45 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

M 
 j  C j  a1 j a2 j   
M 
Où M est arbitrairement très grand ; et  j : taux marginaux de substitution

M  M 
1  C1   a11 a21     40  1 2    40   M  2 M   40  3M
M  M 
M  M 
 2  C2   a12 a22     120   4 3    120   4 M  3M   40  7 M
M  M 
M  M 
 3  C3   a13 a23     0   1 0    0    M  0   0  M
M  M 
M  M 
 4  C4   a14 a24     0   0 1    0   0  M   0  M
M  M 
M  M 
 5  C5   a15 a25     M  1 0    M   M  0 M   M  M
M  M 
M  M 
 6  C6   a16 a26     M   0 1    M   0 M  M   M  M
M  M 

1. Passage au tableau suivant

a) Choix de la variable entrante


On veut minimiser W. La variable entrante doit donc permettre de diminuer W. ainsi pour
trouver la variable entrante, il faut considérer la ligne de  j et prendre la valeur la plus négative.

La deuxième ligne de  j indique la valeur la plus négative c'est-à-dire -7M, donc U2 est la

variable entrante.

NB : La variable entrante entre avec son coefficient Cj correspondant dans la colonne de M.

b) Choix de la variable sortante

En divisant les valeurs de droite par les coefficients de la colonne de la variable entrante on
obtient : R = 4/4 = 1 et R = 5/3. On a 1 inférieur à 5/3 alors la variable sortante est A1.

Le pivot est 4 (il correspond à l’intersection de la ligne de la variable sortante et la colonne de


la variable entrante).

P a g e 46 | 90
Recherche Opérationnelle 2020-2021

U1 U2 e1 e2 A1 A2 VD R
Base
M A1 1 4 -1 0 1 0 4 1
M A2 2 3 0 -1 0 1 5 5/3
Cj 40 120 0 0 M M
j 40 120 0 0 M M
-3M -7M M M -M -M
La nouvelle ligne du pivot est : 1/4 ; 1 ; -1/4 ; 0 ; 1/4 ; 0.

NB : Dans un problème de minimisation, on ne modifie jamais la ligne des Cj. Toutes les autres
lignes doivent être modifiées.

Exemple : Ainsi les lignes autres que celles du pivot changent comme suit :
- Ligne A2
2 change pour devenir …….. 2 - 3*(1/4) = 5/4
3 change pour devenir …….. 3 - 3*(1) = 0
0 change pour devenir …….. 0 - 3*(-1/4) = 3/4
-1 change pour devenir …….. -1 - 3*(0) = -1
0 change pour devenir …….. 0 - 3*(1/4) = -3/4
1 change pour devenir……….1-3*(0) = 1
5 change pour devenir ……....5 - 3*(1) = 2
- Ligne  j

40 - 3M change pour devenir …….. (40-3M) – (120-7M)*(1/4) = 10-(5/4) M


120 -7M change pour devenir …….. (120 -7M) - (120-7M)*(1) = 0
0 + M change pour devenir ……….. (0+M) - (120-7M)*(-1/4) = 30-(3/4) M
0 + M change pour devenir ……….. (0 + M) - (120-7M)*(0) = 0+M =M
M - M change pour devenir ………. (M-M) - (120-7M)*(1/4) = -30+ (7/4) M
M - M change pour devenir ………..(M-M) - (120-7M)*(0) = 0

P a g e 47 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Le tableau initial devient donc

U1 U2 e1 e2 A1 A2 VD R
Base
120 U2 1/4 1 -1/4 0 1/4 0 1 4
M A2 5/4 0 3/4 -1 -3/4 1 2 8/5
Cj 40 120 0 0 M M

j 10-(5/4) M 0 30-(3/4) M M
-30
0
+ (7/4) M

Sélection de la variable entrante et passage au tableau suivant :


On veut minimiser W, alors la variable entrante doit permettre de diminuer W ainsi pour trouver
la variable entrante, il faut considérer la ligne  j et prendre la valeur la plus négative. Cette

valeur correspond à 10 – (5/4) M, et donc U1 entre dans la base avec 40 dans la colonne de M.
Sélection de la variable sortante :
On procède comme précédemment en calculant R (Ratio de droite)
R = 1/(1/4) = 4 ; R = 2/ (5/4) = 8/5
La plus petite valeur de R est 8/5 donc la variable sortante est A2.
Le pivot est donc 5/4. Et la nouvelle ligne du pivot est donc : 1 ; 0 ; 3/5 ; - 4/5 ; - 3/5 ; 4/5.
Les lignes autres que celles du pivot changent comme suit :
- Ligne U2
1/4 change pour devenir …….. 1/4 - (1/4)*1 = 0
1 change pour devenir …….. 1 - (1/4)*(0) = 1
-1/4 change pour devenir …….. -1/4 - (1/4)*(3/5) = -2/5
0 change pour devenir …….. 0 - (1/4)*(-4/5) = 1/5
1/4 change pour devenir …….. 1/4- (1/4)*(-3/5) = 2/5
0 change pour devenir……….0-(1/4)* (4/5) = -1/5
1 change pour devenir……….1-(1/4)*(8/5) = 3/5
- Ligne  j

10-(5/4) M change pour devenir …….. (10-(5/4) M) – (120-7M)*(1/4) = 10-(5/4) M


0 change pour devenir ……………….. 0 - (120-7M)*(1) = 0
30 - (3/4) M change pour devenir …… (30-(3/4) M) - (120-7M)*(-1/4) = 30-(3/4) M
M change pour devenir ………………..M - (120-7M)*(0) = 0+M =M
-30+ (7/4) M change pour devenir …….(-30+(7/4) M) - (120-7M)*(1/4) = -30+ (7/4) M

P a g e 48 | 90
Recherche Opérationnelle 2020-2021

0 change pour devenir ………………….0- (120-7M)*(0) = 0

U1 U2 e1 e2 A1 A2 VD
Base
120 U2 0 1 -2/5 1/5 2/5 -1/5 3/5
40 U1 1 0 3/5 -4/5 -3/5 4/5 8/5
Cj 40 120 0 0 M M

j 0 0 24 8 M-24 M-8

Lorsque tous les  j sont positifs alors on a atteint l’optimum. On arrête les itérations.

Solutions optimales :

u1*  8 5; u2*  3 5; e1*  0; e2*  0; A1*  A2*  0

P a g e 49 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

POINTS IMPORTANTS A RETENIR

I. Questions de contrôle de connaissances


1. Forme standard d’un PL, variables d’écart, une itération
2. Enoncer le premier et deuxième critère de Dantzig
3. Notions de variable Hors base et variable de base
4. Notions de variable entrante, variable sortante, détermination du pivot
5. Enoncé du principe de la dualité

II. Exercice d’assimilation


1/ Résoudre le programme linéaire primal ci-dessous par la méthode du simplexe.
2/ Ecrire le programme linéaire dual associé au primal puis le résoudre par la méthode des tableaux.

III. Exercice d’approfondissement


La S.A DESQUITH veut normaliser l’emploi de ses machines et de son personnel dans un atelier
en minimisant le coût global des pièces sortant de cet atelier.
Les heures de main d’œuvre de cet atelier ne doivent pas être inférieures à 7000 heures. Les
heures de machines de cet atelier ne doivent être inférieures à 10000 heures. Cet atelier parachève
trois pièces P1, P2 et P3 déjà usinées ailleurs. Le processus de fabrication est recensé dans le
tableau ci-dessous :
Eléments P1 P2 P3 Coût unitaire de l’élément
Heures de main d’œuvre 1 2 3 100 $
Heures machine 2 2 1 150 $

TAF :
1. Ecrire les équations relatives à ce problème (formuler le PL)
2. Ce problème pourrait-il être résolu plus facilement par le dual ? pour quelles raisons ?
3. Ecrire le tableau final du simplexe (en dual) et en déduire les solutions au problème de l’entreprise
DESQUITH.
4. Y’a-t-il d’excédents d’heures de main d’œuvre ou d’heure machine à l’optimum ? si oui
combien ?

P a g e 50 | 90
Recherche Opérationnelle 2020-2021

Chapitre 4 : Introduction à la théorie des graphes

La représentation d’un problème par un dessin, un plan, une esquisse contribue souvent à sa
meilleure compréhension. Le langage des graphes est donc construit, à l’origine sur ce principe.
Plusieurs méthodes, propriétés, procédures ont été pensées ou trouvées à partir d’un schéma
pour être ensuite formalisées et développées. Nous pouvons par exemple évoquer l’usage d’un
plan de route, d’une carte de lignes ferroviaire ou d’autobus, un plan électrique, un arbre
généalogique ou un organigramme d’entreprise ; ainsi, l’on a au moins de façon intuitive une
idée sur ce qu’est un graphe. Toutefois, entre cette notion vague où des points, représentant des
individus, des objets, des lieux où des situations sont reliées par des flèches, il y a une longue
élaboration des concepts. La première difficulté à laquelle on peut être confrontée concerne la
terminologie ou l’aboutissement, c'est-à-dire ce à quoi on veut arriver.
La théorie des graphes constitue aujourd’hui un corpus de connaissances très important. Ce
cours ne constituera donc qu’une introduction à cette théorie.

Historique

Tout le monde s’accorde à considérer que la théorie des graphes est née en 1736 avec la
communication d’Euler (1707-1783) dans laquelle il proposait une solution au célèbre
problème des ponts de Königsberg (Euler, 1736). Le problème posé était le suivant. Deux îles
A et D sur la rivière Pregel à Königsberg (alors capitale de la Prusse de l’Est, aujourd’hui
rebaptisée Kaliningrad) étaient reliées entre elles ainsi qu’aux rivages B et C `a l’aide de sept
ponts.

P a g e 51 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

4.1. Notions sur la théorie des graphes


A. Définition
1) Qu’est ce qu’un graphe ?
Un graphe est un ensemble de nœuds ou sommets qui sont reliés entre eux par des arcs.
Mathématiquement, un graphe est représenté par un couple de deux ensembles G = (X ; U) où
X est l’ensemble des nœuds ou sommets et U, l’ensemble des arcs ou arêtes.
Exemple : X  x1 ; x2 ; x3 ; x4 ; x5 ; x6 

U  x1 ; x2 ; x1 ; x3 ; x2 ; x2 ; x2 ; x3 ; x2 ; x4 ; x2 ; x5 ; x3 ; x2 ; x3 ; x4 ; x4 ; x6 ; ( x5 ; x6 )

2) Arcs et sommets
Un arc relie deux nœuds ou sommets entre eux, il sera donc représenté par un couple xi ; x j 

où xi et xj sont des nœuds. Un arc peut être orienté, c'est-à-dire que l’ordre de xi et de xj est
important dans le couple xi ; x j . Un arc peut ne pas être orienté et dans ce cas, l’ordre de xi et

de xj dans le coupe xi ; x j  n’a aucune importance, donc xi ; x j  = x j ; xi .

Exemple :
- Arc orienté

- Arc non orienté

- Un arc orienté peut toujours être transformé en une situation où l’on n’a que des
arcs orientés.

3) Notion d’adjacence
Pour un arc U=(x ; y) reliant deux nœuds ou sommets, on dit que :
- x est adjacent à y,
- y est adjacent à x,
- x et y sont adjacents à u,
- u est adjacent à x et y.
Deux sommets d’un graphe sont dits adjacents s’il existe une arête (ou un arc) qui les relie.

P a g e 52 | 90
Recherche Opérationnelle 2020-2021

4) Notion d’entrée et de sortie d’un graphe

Soit un arc xi ; x j 

 xi est un précédent de xj
Un sommet sans précédent est appelée entrée (dans l’exemple ci-dessous voire figure (a), x1
est une entrée).
 xj est un suivant ou successeur de xi
Un sommet sans suivant est appelé sortie (dans l’exemple de la figure (a), x6 est une sortie).

5) La boucle

On appelle une boucle, un arc dont l’extrémité initiale est égale à son extrémité finale. Par
exemple x1 ; x1  est une boucle.

On dit qu’un graphe est sans boucle s’il ne contient pas d’arc de la forme x1 ; x1  , c'est-à-dire
joignant un sommet à lui-même.

B. Représentation d’un graphe


1) La représentation sagittale ou diagramme sagittal

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

Figure (a)

Un graphe est dit valué si l’on attribue une valeur à chaque arc (une distance, un coût, un
temps…).
Un graphe peut être orienté ou non : dans un graphe orienté, le sens du parcours est représenté
par le sens de la flèche.
Dans un graphe non orienté, on peut parcourir un arc indifféremment dans un sens comme

P a g e 53 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

dans l’autre.

2) Dictionnaire associé à un graphe

C’est un tableau qui pour chaque sommet du graphe, énumère ses suivants et ses précédents : il
s’agit d’un tableau pred – suiv de n listes chaînes. Le tableau est indicé par les sommets. La
liste pred (xi) contient tous les prédécesseurs de xi idem pour la liste des suivants. Cette
représentation est connue sous le vocable de dictionnaire des précédents.

Exemple 1 : Construction du dictionnaire relatif à la figure (a) ci-dessus.

Sommets x Précédents P(x) Suivants S(x)


X1 - X3 ; X2
X2 X1 ; X2 ; X3 X2 ; X3 ; X4 ; X5
X3 X1 ; X2 X2 ; X4
X4 X2 ; X3 X6
X5 X2 X6
X6 X4 ; X5 -

Exemple 2 :
Soit le diagramme sagittal ci – dessous :

Figure (b)
Le dictionnaire nous donne :

Sommets x Précédent P(x) Suivants S(x)


X1 - X2 ; X3
X2 X1 ; X3 X4
X3 X1 X2 ;X4
X4 X2 ; X3 X5 ; X6
X5 X4 X6
X6 X4 ; X5 -

3) Représentation matricielle – Matrice booléenne

On construit un tableau à double-entrée ou figurent les sommets en ligne (sommets initiaux) et

P a g e 54 | 90
Recherche Opérationnelle 2020-2021

en colonnes (sommets finaux). A l’intersection d’une ligne xi et d’une colonne xj figure un « 0 »


si l’arc xi ; x j  n’existe pas et un « 1 » si l’arc xi ; x j  existe.

Une colonne de « 0 » correspond à une entrée ; une ligne de « 0 » correspond à une sortie.
Exemple : Matrice booléenne de la figure (a)

X1 X2 X3 X4 X5 X6
X1 0 1 1 0 0 0
X2 0 1 1 1 1 0
X3 0 1 0 1 0 0
X4 0 0 0 0 0 1
X5 0 0 0 0 0 1
X6 0 0 0 0 0 0

NB : Quand il n’existe pas d’arc entre deux sommets considérés, on peut aussi ne rien mettre à
la place de « 0 ».

C. Chaînes – Circuits - Chemins


1) Qu’est-ce qu’une chaîne ?

Une chaîne est une suite de sommets adjacents. Le sens des arcs n’est pas pris en compte. Ainsi
une chaîne peut comporter des arcs directs (ils sont inclus dans la chaîne selon leur sens) ou/et
des arcs inverses (ils sont inclus dans la même chaîne dans un sens inverse à leurs sens). Dans
l’exemple de la figure (a), les suites x1 ; x 2 ; x3 ; x 4  ou x6 ; x 4 ; x3 ; x 2  sont des chaînes. La

première ne contient que des arcs directs tandis que la deuxième à la fois un arc direct x3 ; x 2 

et deux arcs indirects x6 ; x 4  et x 4 ; x3  .

2) Qu’est-ce qu’un chemin ?

Un chemin est une suite de sommets adjacents dans un graphe orienté. C’est une « chaîne » ne
comprenant que des arcs directs. Dans l’exemple de la figure (a), la suite x1 ; x 2 ; x5 ; x6  est un
chemin.
NB :
- Un chemin simple est un chemin qui ne contient pas deux fois le même arc.
- Une chaîne simple est une chaîne qui ne contient pas deux fois le même arc.
- Un chemin est élémentaire s’il ne passe pas plus d’une fois par le même sommet.
- Une élémentaire est une chaîne qui ne passe pas plus d’une fois par le même sommet.

La longueur d’un chemin (ou d’une chaîne)


P a g e 55 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Soit G = (X ; U) est un graphe orienté ou non ; on appelle longueur d’un chemin C (ou d’une
chaîne) dans G au sens des arcs (ou des arêtes), le nombre d’arcs (arêtes) qui composent ce
chemin (ou cette chaîne).
Notons L(C), la longueur d’un chemin C :
- Si C  x1 ; x2 ;....; x p  est un chemin (chaîne) simple dans G alors la longueur L(C)

vaut (p-1).
- Un chemin (ou chaîne) de longueur 1 est appelé boucle.

3) Le circuit

Un circuit est un chemin dont le premier et le dernier sommet sont confondus. Une boucle est
donc un circuit. Exemple : la chaîne x 2 ; x3 ; x 2  est un circuit.

4) Un cycle

Un cycle contenant un nœud X est une chaîne de X à X. Un cycle est également une chaîne
circulaire d’arcs. En effet, un cycle est une chaîne dont les extrémités initiale et finale
coïncident.

D. Niveaux de graphe

Dans un graphe sans circuit (xi ; x j U ; ( x j ; xi ) U ) , on peut définir des niveaux. Pour

déterminer les niveaux, on utilise soit le dictionnaire des précédents soit la matrice booléenne.

1) Utilisation de la méthode du dictionnaire

Exemple 1 : Soit le dictionnaire des précédents d’un graphe

P a g e 56 | 90
Recherche Opérationnelle 2020-2021

P a g e 57 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

NB: Quand on a déterminé les niveaux du graphe, on le représente par un diagramme sagittal
en plaçant sur la même verticale les sommets appartenant au même niveau.

Exemple 2 : Soit le dictionnaire des précédents d’un graphe


Sommets Précédents
A B;D;E
B D D est le sommet de niveau 0. En effet, D n’a pas de précédent.
C A;B;E C 0  D . On suit le même procédé que précédemment.
D -
E D

Sommets Précédents
A B;D;E
B D
On remarque que B et E n’ont pas de précédents donc sont de
C A;B;E niveau 1.
D - C1  B; E
E D

Sommets Précédents
A B;D;E On remarque que le sommet A n’a pas de précédent. Il est
B D donc le sommet de niveau 2.
C A;B ; E C2  A
D -
E D

Sommets Précédents
A B;D;E
B D On a finalement le sommet C qui n’a plus de précédent. Il cor-
C A;B;E respond au sommet de niveau 3.
D - C 3  C
E D

P a g e 58 | 90
Recherche Opérationnelle 2020-2021

On obtient le diagramme sagittal suivant :

2) Utilisation de la méthode matricielle

Soit une matrice d’un graphe valué

A B C D E F
A 0 .3 5 0 0 0
B 0 0 0 4 5 0
C 0 6 0 9 0 0
D 0 0 0 0 0 3
E 0 0 0 0 0 3
F 0 0 0 0 0 0

A B C D E F Etape 1 :
A 0 .3 5 0 0 0
B 0 0 0 4 5 0
C 0 6 0 9 0 0 Le niveau 1 (1er niveau) est constitué par les
D 0 0 0 0 0 3 sommets qui ont une colonne de 0. Le sommet
A appartient au niveau 1. On barre (ici en
E 0 0 0 0 0 3
rouge) la ligne et la colonne correspondant au
F 0 0 0 0 0 0 sommet. On alors le tableau à gauche.

A B C D E F Etape 2 :
A 0 .3 5 0 0 0
B 0 0 0 4 5 0
C 0 6 0 9 0 0 Le niveau 2 est constitué par les sommets qui
D 0 0 0 0 0 3 se retrouvent avec une colonne de 0. Le sommet
C appartient au niveau 2. On barre (ici en vert)
E 0 0 0 0 0 3
la ligne et la colonne correspondant. Voir
F 0 0 0 0 0 0 tableau à gauche.

P a g e 59 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

A B C D E F Etape 3 :
A 0 .3 5 0 0 0
B 0 0 0 4 5 0
C 0 6 0 9 0 0 Le niveau 3 est constitué par les sommets qui
D 0 0 0 0 0 3 se retrouvent avec une colonne de 0. Le sommet
B appartient au niveau 3. On barre (ici en
E 0 0 0 0 0 3
violet) la ligne et la colonne correspondant.
F 0 0 0 0 0 0

A B C D E F Etape 4 :
A 0 .3 5 0 0 0
B 0 0 0 4 5 0
C 0 6 0 9 0 0 Le niveau 4 est constitué par les sommets qui
D 0 0 0 0 0 3
se retrouvent avec une colonne de 0. Les
sommets D et E appartient au niveau 4. On
E 0 0 0 0 0 3
barre (ici en bleu) la ligne et la colonne
F 0 0 0 0 0 0 correspondant.

Etape 5 : Le niveau 5 est constitué du sommet F.

Nous obtenons le graphe suivant :

4.2. Chemins critiques

Soit un graphe valué à valeurs positives, sans circuit ayant une entrée et une sortie. On appelle
 
x1 l’entrée, xn la sortie et Vij la valeur associée à l’arc xi ; x j . A chaque chemin, on peut associer

la somme des valeurs des arcs qui le composent. Le problème consiste alors à déterminer le
chemin de valeur optimale (chemin critique) : minimale ou maximale entre x1 et xn. Pour se
faire, on utilise l’algorithme de FORD.

A. Chemins minimaux
P a g e 60 | 90
Recherche Opérationnelle 2020-2021

On associe à chaque sommet x j (sommet « suivant ») un coefficient  j définie par :

1  0 ;  j  Min( i  vij ) où x i désigne un précédent de x j . La valeur  n représente alors

la valeur du chemin minimal entre x1 et x n . Les valeurs  j sont portées au-dessus des sommets

dans le diagramme sagittal.

Exemple : Soit le graphe valué suivant (figure c)

On procède sommet par sommet en partant de l’entrée :


1  0 ;

 2  1  v1,2  0  3  3 ;
 3  min0  5; 3  1  4 ;
4  4  4  8 ;

 5  min3  10; 4  6); (8  5  min13;10;13  10   n .


Le chemin minimal a pour valeur 10 et il est constitué des sommets x1 ; x2 ; x3 et x5. Sur le

graphique, le chemin critique est minimal et représenté par un trait bleu et les valeurs  j sont
placées au-dessus des sommets xi.

Remarque :
Pour trouver les arcs qui constituent le chemin critique, on part de la sortie et on repère l’arc

qui donne la valeur  correspondante. Ainsi,  n  10 vient de 4+6 où 6 est donné par le

sommet x3.  3  4 vient de 3+1 où 3 est donné par le sommet x2.  2  3 est donné par 0+3 où
0 est donné par le sommet x1.

P a g e 61 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

B. Chemins maximaux

Contrairement au cas du chemin minimal, nous avons plutôt :

1  0 ;  j  Max( i  vij ) où x i désigne un précédent de x j . La valeur  n représente alors

la valeur du chemin maximal entre x1 et x n . Les valeurs  j sont portées en dessous des
sommets dans le diagramme sagittal (voir figure c).
Exemple : On détermine le chemin de valeur maximal du graphe précédent (figure c)
1  0 ;

2  0  3  3 ;

 3  max0  5; 3  1  5 ;


4  5  4  9 ;

 5  max3  10; 5  6); (9  5  min13;11;14  14   n .


Le chemin maximal a pour valeur 14 et est constitué des sommets x1 ; x3 ; x4 et x5. Sur le
graphique (voir figure c), le chemin critique maximal est représenté par un trait en pointillé et
les valeurs  j correspondantes sont placées au-dessous des sommets xi.

Exemple : Considérons le graphe suivant ordonné par niveaux

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

P a g e 62 | 90
Recherche Opérationnelle 2020-2021

 ( 4)  0
 (3)   (4)  v(4;3)  0  5  5
 (5)   (4)  v(4;5)  0  2  2
 (6)  max (3)  v(3;6); (5)  v(5;6)  max5  5 ; 2  1  10
 (7)  max (3)  v(3;7); (6)  v(6;7)  max5  3; 10  6  16
Le chemin de valeur maximale entre 4 et 7 a donc pour valeur 16.
Pour déterminer quel est ce chemin, on part du sommet final, en regardant 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 souligné en partant du sommet final 7:
 (7)  max (3)  v(3;7); (6)  v(6;7)  max5  3;10  6  16
Pour aboutir à 7, on est passé par 6
 (6)  max (3)  v(3;6); (5)  v(5;6)  max5  5; 2  1  10
Pour aboutir à 6, on est passé par 3
 (3)   (4)  v(4;3)  0  5  5
Pour aboutir à 3, on est passé par 4
 ( 4)  0
4 est le sommet initial; d'où le chemin de valeur maximale est constitué des sommets(4;3;6;7).

Exercice d’application:
En vous servant de la même figure retrouver le chemin minimale entre les sommets 4 et 7.

C. Arc critique

P a g e 63 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

On appelle arc critique tout arc xi ; x j  tel que  j   i  vij . Tout arc faisant partie du chemin

critique est critique. La réciproque est fausse. En effet, il peut exister des arcs critiques qui ne
font pas partie du chemin critique. Par exemple, l’arc x1 ; x3  est critique mais ne fait pas partie
du chemin critique minimal du graphe (figure c).

4.3. Problèmes de flot1 maximal dans un réseau

A. Illustration du problème de transport

Soit le graphe ci-dessous représentant un réseau de transport. Il est valué par un nombre qui
représente le flux maximal de « matière » susceptible d’être transportée pendant une unité de
temps : c’est la capacité de l’arc. On cherche à faire passer le maximum de matière entre
l’entrée et la sortie en tenant compte de la contrainte que représente les capacités de chaque arc.
Compte tenu d’une capacité ij transitée par un arc xi ; x j  , il faut pouvoir la faire passer

également par les arcs suivants. Cela implique que pour chaque arc de capacité ij on ne pourra

faire véhiculer qu’une capacité inférieure ou égale tout en essayant de garder les quantités
maximales.
Soit le réseau de transport ci-dessous :

De l’entrée x1 , on peut faire partir au maximum : 5 + 8 + 10 = 23 ;

Des suivants de x1 , on peut faire partir également des flux de matière. On remarque que l’on
peut faire parvenir à la sortie x 6 qu’une quantité : 9 + 5 + 6 = 20.
Remarque : Il existe donc dans le réseau des goulots d’étranglement ; il faut s’assurer que
chaque quantité transportée soit compatible avec l’ensemble du réseau.

1
Le flot dans un réseau est le nombre d’unités circulant sur les arcs du réseau de façon à respecter les capacités et les contraintes de conservation
de flot.

P a g e 64 | 90
Recherche Opérationnelle 2020-2021

 Quelques définitions

Arc saturé : Un arc est saturé si le flot qui le traverse est égal à sa capacité  .
Chemin saturé : Un chemin est saturé s’il comprend au moins un arc saturé.
Chaîne saturée : Une chaîne est saturée si elle comprend au moins un arc saturé.
Flot complet : Un flot est complet si tout chemin de l’entrée à la sortie est saturé.
Flot maximal : Un flot de valeur maximale est un flot où toutes les chaînes de l’entrée à la
sortie sont saturées. On montre qu’un flot de valeur maximale est complet.

B. Recherche d’un flot maximal

On utilise l’algorithme de Ford-Fulkerson (1956) : à partir d’un flot initial on aboutit à un flot
complet puis maximal. Le principe est le suivant :
 A chaque étape, on choisit un chemin de l’entrée à la sortie, non saturée et on repère sur
ce chemin la plus petite capacité compte tenue des capacités déjà installées.
 On décide alors de faire passer la capacité sélectionnée par les arcs du chemin, ce qui a
pour effet de saturer des arcs du chemin.
 On itère le processus jusqu’à ce qu’il n’y ait plus de chemin non saturé. Le flot est alors
complet.
 On vérifie si toutes les chaînes sont saturées ; si oui le flot est maximal sinon, on met en
œuvre un algorithme qui permet de saturer les chaînes et d’aboutir à un flot maximal.

Exemple 1
En partant de la figure 1 ci-dessus,
Etape 1 :
Le flot initial F0 a pour valeur 0 : V0 = 0. Sur le graphique, on place à côté de toutes les capacités
la valeur 0. (Voir figure 1)
Etape 2 :
Passage au flot suivant F1. On considère un chemin non saturé (ils le sont tous pour l’instant).
On repère la plus petite capacité sur ce chemin  . Pour tous les arcs A du chemin, on fait passer
 . On l’indique sur le graphique en barrant pour ces arcs les 0 et en plaçant la valeur  . Pour
tous les arcs U qui ne font pas partie du chemin sélectionné, on ne change pas les capacités (on
laisse les 0).

P a g e 65 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

La valeur du flot F1 est V1 =  en effet, V1 = V0 +  = 0 +  =  .


Par exemple, on choisit le chemin (x1 ; x2 ; x6). La plus petite capacité sur ce chemin est   6
. Pour les arcs (x1 ; x2) et (x2 ; x6) on remplace les 0 par 6. Pour les autres arcs, on ne modifie
rien. On remarque que l’on a saturé l’arc (x2 ; x6). Sur le graphique on le matérialise par un
double trait. La valeur du flot F1 est V1 = 0 + 6 = 6.

Etape 3 :
Passage au flot F2. On choisit un chemin non saturé. Par exemple, le chemin (x1 ; x2 ; x4 ; x5 ;
x6). La plus petite capacité sur ce chemin compte tenu des capacités déjà utilisées est
  min(10  6; 3  0 ; 6  0 ; 9  0)  min(4 ;3 ; 6 ; 9)  3 .
Les arcs appartenant au chemin sélectionné, on modifie les anciennes capacités en leur ajoutant
la valeur  . Pour les autres arcs, on ne change rien. On fait apparaitre l’arc saturé (x2 ; x4). La
valeur du flot F2 est V2 = V1 +  = 6 +3 = 9.

Etape 4 :
Le passage au flot F3 se fait comme suit : On choisit le chemin non saturé (x1 ; x4 ; x6). La
capacité minimale est   5 . On modifie les capacités des arcs du chemin sur le graphique et
on fait apparaître l’arc saturé (x4 ; x6). La valeur du flot F3 est V3 = V2 +  = 9 + 5 = 14.

P a g e 66 | 90
Recherche Opérationnelle 2020-2021

Etape 5 :
Le passage au flot F4 se fait comme suit : On choisit le chemin non saturé (x1 ; x4 ; x5 ; x6). La
capacité minimale est   min(8  5; 6  3 ; 9  3)  3 . On modifie les capacités des arcs et on
fait apparaître les arcs saturés (x1 ; x4) et (x4 ; x5).
La valeur du flot F4 est V4 = V3 +  = 14 + 3 = 17.

Etape 6 :
Passage au flot F5. On choisit le chemin (x1 ; x3 ; x5 ; x6). La capacité minimale est
  min(5  0 ; 5  0 ; 9  6)  3 . On modifie les capacités des arcs et on fait apparaître l’arc
saturé (x5 ; x6). La valeur du flot F5 est V5 = V4 +  = 17 + 3 = 20.

P a g e 67 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Etape 7 :
Le flot F6 est complet car tous les chemins qui mènent de x1 à x6 sont saturés (tous les arcs qui
arrivent à x6 sont saturés ; on ferait la même remarque si tous les arcs partant de x1 étaient
saturées).
Le flot est également maximal car toutes les chaînes qui mènent de x1 à x6 sont saturées (on
remarque également que 20 est la valeur maximale pouvant arriver en x6).
En effet, un arc direct dans une chaîne est saturé si sa capacité est égale au flot qui le traverse
tandis qu’un arc inverse est saturé si le flot qui le traverse est égal à 0.
En conclusion seule la figure 6 est nécessaire dans un problème de flot maximal où l’on se
contenterait de décrire à chaque étape les chemins sélectionnés et la valeur du flot.

Exemple 2 :
Soit le réseau de transport suivant :

TAF : Rendre ce réseau complet puis maximal

Etape 1 : On choisit le chemin (A ; F ; G) où   6 ; V1 = 6 et l’arc (A ; F) est saturé.


Etape 2 : On choisit le chemin (A ; C ; D ; G) où   3 ; V2 = V1 +  = 6+3 = 9 et l’arc
(C ; D) est saturé.
Etape 3 : On choisit le chemin (A ; C ; F ; G) où   min(7;1;7)  1 ;
V3 = V2 +  = 9 +1 = 10 et l’arc (F ; G) est saturé.
Etape 4 : On choisit le chemin (A ; B ; D ; E ; G) où   2 ; V4 = V3 +  =10 + 2 = 12 et
l’arc (D ; E) est saturé.
P a g e 68 | 90
Recherche Opérationnelle 2020-2021

Etape 5 : On choisit le chemin (A ; B ; D ; G) où   2 et V5 = V4 +  = 12+ 2 = 14 et l’arc


(A ; B) est saturé.
Etape 6 : On choisit le chemin (A ; C ; E ; G) où   3 ; V6 = V5 +  = 14+3 = 17 et l’arc
(E ; G) est saturé.
On obtient alors figure (a) ci-dessus.
Etape 7 : Le flot est complet car tous les chemins entre A et G sont saturés. Par contre le flot
n’est pas maximal car il existe au moins une chaine non saturée (A ; C ; E ; D ; G). En effet
cette chaîne comporte un arc inverse non saturé (E ;D) car le flot qui le traverse n’est pas
nul. Il est égal à 2.
En effet, un arc direct dans une chaîne est saturé si sa capacité est égale au flot qui le traverse
tandis qu’un arc inverse est saturé si le flot qui le traverse est égal à 0.

Pour saturer une chaîne on utilise l’algorithme suivant :


 On considère le flot complet de valeur V et une chaîne non saturée ;
 Par les arcs directs de la chaîne, on considère les différences entre les capacités des arcs
et les flots qui les traversent. On prend la plus petite de ces différences notée   ;
 Pour les arcs inverses, on prend le plus petit des flots qui les traversent noté   .
 On pose   min( ;  )

 On définit un nouveau flot en ajoutant la valeur  à tous les arcs directs de la chaîne,
en retranchant  à tous les arcs inverses de la chaîne et en ne modifiant pas les valeurs
des arcs qui ne font pas partie de la chaîne.
 La valeur du nouveau flot sera V’ = V + 
 On itère le processus jusqu’ à ce que tous les chaînes soient saturées.

Etape 8 : Soit la chaîne (A ;C ; E ; D ; G) ;    min(1; 1; 3)  1 et    2 et   min( ;  )


i.e.   min(1;2)  1 .
On rajoute alors « 1 » aux arcs (A ;C) ; (C ; E) et (D ;G) et on retranche « 1 » à l’arc (E ;D).
La valeur du flot est V’ = V +  = 17 + 1 = 18.

On obtient alors la figure (b) suivante :

P a g e 69 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

P a g e 70 | 90
Recherche Opérationnelle 2020-2021

POINTS IMPORTANTS A RETENIR

I. Questions de contrôle de connaissances


1. Définir les termes suivants : Un graphe, arcs et sommets, notion d’adjacence, l’entrée et de
sortie d’un graphe, une boucle, représentation sagittale d’un graphe.
2. Qu’est-ce qu’un dictionnaire associé à un graphe ?
3. Qu’est-ce qu’une matrice booléenne ?
4. Définir Graphe valué et non valué ; graphe orienté et non orienté
5. Définir les termes suivants : chaîne, circuit et chemin
6. Définir les termes suivants : flot complet, flot maximal, arc saturé, chemin saturé, chaîne
saturée.

II. Exercice d’assimilation


On se donne la relation binaire définie par l’ensemble de sommets E = {A, B, C, D, E, F} et le graphe
G = {(A, B); (A, D); (A, F); (B, D); (C, A); (C, D); (C, E); (D, E); (F, C); (F, E)}.
1) Caractériser cette relation binaire par
Sa représentation sagittale, puis sa matrice booléenne.
2) Est-il possible selon vous, d’ordonnancer le graphe par niveaux et pourquoi ?
3) On élimine l’arc (A, F).
a) Déterminer le dictionnaire des précédents et des suivants de chacun des sommets du
graphe.
b) Ordonnancer le graphe par niveaux.
III. Exercice d’approfondissement
Soit le réseau de transport ci-dessous :
Les nombres sur les arcs représentent les capacités des arcs. Déterminer le flot maximal.

P a g e 71 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Chapitre 5 : Problèmes d’ordonnancement

Un problème d'ordonnancement consiste à organiser dans le temps un ensemble de tâches


ou activités contribuant à la réalisation d’un même projet compte tenu des contraintes de
précédence ou d’antériorité reliant les différentes tâches afin d‘atteindre un certain objectif
appelé fonction économique (il peut s’agir par exemple, de l’évaluation des coûts du projet ; de
l’évaluation de la durée minimale du projet ; de l’évaluation des ressources nécessaires à
l’accomplissement de chaque tâche ou activités du projet).
L'ordonnancement joue un rôle essentiel dans de nombreux secteurs d'activités : la
conception (de bâtiments, de produits, de systèmes…), l'administration (gestion d'emplois du
temps, gestion du personnel), l'industrie (gestion de la production), l'informatique
(ordonnancement de processus, ordonnancement de réseaux).

5.1. Pourquoi ordonnancer ?

Les retards enregistrés très souvent dans la réalisation et livraison de projets aux clients sont
dus en général à :
 la mauvaise conception du produit à fabriquer,
 la mauvaise gestion des stocks,
 la fixation arbitraire d’un calendrier de fin des travaux sans rapport ni avec l’évolution
réelle des différentes tâches ni avec les moyens dont on dispose effectivement,
 mauvaise ou absence de coordination entre les responsables des opérations concernant
l’ordre d’exécution des différentes tâches et leur fin.

Ces éléments constituent autant de problèmes que les gestionnaires de projet doivent résoudre
de nos jours. Afin de minimiser ces retards, l’organisation des tâches devient indispensable et
fait intervenir des notions très particulières.

5.2. Notions de projet, tâche et ordonnancement

A. Notion de projet

Un projet est un ensemble de tâches ou activités exécuté dans un ordre séquentiel bien précis
afin d’arriver à un produit final qui est même la raison d’être du projet. L’exécution des tâches
étant soumise à un certain nombre de contraintes à savoir les contraintes potentielles,
P a g e 72 | 90
Recherche Opérationnelle 2020-2021

disjonctives et cumulatives.
Parlant de contraintes potentielles, on peut distinguer deux cas :
Les contraintes de succession ou contraintes de précédence voire d’antériorité qui se
traduisent par le fait qu’une tâche j ne peut commencer que lorsque la tâche i est
terminée.
Les contraintes de localisation temporelle, permettant de localiser dans le temps
chacune des tâches en cours d’exécution ; la tâche i doit être terminée à la date t1 ou au
contraire son exécution ne doit jamais débuter avant la date t2 par exemple.
Les contraintes disjonctives quant à elles, imposent la réalisation non simultanée de certaines
tâches. Ces contraintes se manifestent en particulier lorsque les disponibilités en matériel ou
personnel sont insuffisantes.
Les contraintes cumulatives par contre limitent les possibilités d’ordonnancement car elles
tiennent compte de tous les facteurs productifs, hommes, matériels, moyens financiers.

B. Notion de tâche

Une tâche est une activité. L’ensemble des tâches ou activités forme le projet. On associe à
chaque tâche sa durée et une contrainte de précédence ou d’antériorité par rapport aux autres
tâches. On dira que la tâche Ti est immédiatement antérieure à Tj si Tj ne peut débuter que
lorsque Ti est achevée.

5.3. Méthodes d’ordonnancement

Comme défini au A) le projet est un ensemble de tâches ou d’activités qu’il faut exécuter dans
un ordre séquentiel bien précis afin d’atteindre un certain objectif ou fonction économique qui
est la raison d’être du projet. Pour y arriver, des méthodes ou techniques (procédures
rigoureuses) ont été développées et ce dans le but de permettre au responsable du projet de
prendre les décisions nécessaires dans les meilleures conditions possibles. Un problème
d’ordonnancement est donc un problème d’organisation du projet. On distingue différentes
méthodes :
 Les méthodes du type diagramme de Gantt.
 La méthode PERT (Program Evaluation and Review Technique ou encore Program
Evaluation and Research Task) ou potentiel étapes (développé aux USA) mise en place

P a g e 73 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

pour la réalisation du programme de recherche et de construction des fusées Polaris en


1958.
 La CPM (Critical Path Method ou méthode du chemin critique), mise au point en 1956
– 1957 par la Remington Rand et Dupont de Nemours par des projets industriels.
 La méthode MPM (Méthode des Potentiels Métra) ou potentiel tâches mise au point en
France par B. Roy et son équipe de la SEMA2. Cette méthode présente des avantages
par rapport à la méthode américaine PERT, les graphiques étant plus simples à élaborer
et le développement plus prometteur. Son utilisation est très importante dans la
construction d’immeubles, de barrages, d’autoroutes,...

La connaissance de ces méthodes devrait permettre au gestionnaire moderne de projet de


répondre à un certain nombre de préoccupations pour un bon déroulement du projet à savoir :
Quelle est la meilleure organisation possible des tâches d’un projet et les ressources à affecter
à ces tâches de sorte que le projet soit exécuté dans le délai fixé dans le cahier des charges.
Pour ce qui du cours, nous allons nous focaliser sur le calcul de la durée minimale d’exécution
du projet. De plus, nous aborderons uniquement les deux méthodes classiques que sont la
méthode PERT et la méthode MPM.

A. La méthode MPM

1) Construction du graphe MPM


-

- Chaque tâche est représentée par un sommet, chaque sommet est représenté par un
rectangle dans lequel on inscrit le numéro de la tâche associée. Il convient de considérer que le
sommet i représente le début de la tâche i.
- Chaque arc représente une contrainte de succession ou de précédence voire d’antériorité.
- La valeur de l’arc défini le temps minimum séparant les deux tâches successives.
- La représentation graphique est ordonnée par niveau des sommets, c'est à dire des
tâches.
- On introduit une opération initiale repérée par un sommet notée E (pour Entrée) ou D
(pour Début ou Départ) ou 1 (première étape), ce qui correspond au démarrage des travaux,
ainsi qu’une opération terminale ou finale à laquelle on associe un sommet numéroté F (pour
Fin) ou n (dernière étape), qui correspond à la livraison des travaux.

2 Société d’Etude Mathématique Appliquée

P a g e 74 | 90
Recherche Opérationnelle 2020-2021

Tx T*x Ou X est le nom de la tâche


Tx est la date au plus tôt de la tâche X
X
T*x est la date au plus tard de la tâche X

2) Date au plus tôt d’une tâche i

Les dates au plus tôt sont données par la formule suivante :


T1  0
Ti  max (Th  d h ,i )
hP ( i )

Où P (i ) est l’ensemble des précédents de i et Th , la date de début au plus tôt de la tâche de


niveau précédent.
d h ,i est le potentiel (ou délai) porté par l’arc (h, i ) c'est à dire le délai minimum après le début

de la tâche h, au bout duquel peut démarrer la tâche i.


L’ensemble de toutes les dates au plus tôt s’appelle ordonnancement minimum ou au plus tôt.

3) Date au plus tard d’une tâche i

Les dates au plus tard se calculent de la manière suivante :


Tn*  Tn

Ti*  min T j*  d i , j
jS ( i )

Où S (i ) est l’ensemble des suivants du sommet i ; d i , j est le potentiel porté sur l’arc (i, j ) ; n

étant la tâche de fin, alors Tn (date au plus tôt de la tâche n) et Tn* (date au plus tard de ladite
tâche).
Le chemin critique peut être obtenu à partir deux ordonnancements, les tâches critiques étant
celles pour lesquelles Ti*  Ti .
L’ensemble de toutes les dates au plus tard de début de tâches s’appelle ordonnancement limite
ou plus tard.

4) Marge d’une tâche (marge totale, libre et certaine)

- La Marge totale mT (i) d’une tâche i


C’est la durée définie par :
mT (i)  Ti*  Ti
P a g e 75 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Où Ti est la date au plus tôt du début de la tâche i et Ti* est la date au plus tard de début de la
tâche i. La marge totale de la tâche i est le délai ou retard maximum qu’on peut accuser avant
le début de cette tâche sans pour autant que la durée du projet ne soit affectée. C’est une marge
de manœuvre qu’on peut quantifier en une unité de temps et qui permet de retarder le début
d’une tâche sans pour autant affecter la durée totale du projet.
Pour chaque tâche, la marge totale est en quelque sorte la marge de manœuvre que nous avons
pour cette tâche. C’est un espace de liberté. Nous pouvons accuser du retard sur le début d’une
tâche. La MT quantifie la durée du retard qui permet de rester dans les délais de finition du
projet dans son ensemble.
Si une tâche a une marge totale nulle (MT = 0) alors cette tâche est « critique ». On ne peut la
retarder.

- La Marge libre mL (i) d’une tâche i


C’est la durée définie par :
m L (i )  min (T j  Ti  d ij )
J S ( i )

Où S (i ) désigne l’ensemble des successeurs du sommet i et d ij désigne le potentiel porté par

l’arc (i, j ) . La marge libre de la tâche i est le délai ou retard maximum que l’on peut apporter à

sa mise en route par rapport à sa date au plus tôt Ti sans retarder la date de début au plus tôt de
toute autre tâche.

- La Marge certaine mC (i) d’une tâche i


C’est la durée définie par :
mC (i)  max( 0; min (T j  Ti*  d ij )
jS ( i )

Où S (i ) représente l’ensemble des successeurs du sommet i. Si pour une tâche i, la marge


certaine est strictement positive, cette marge certaine représente le délai ou le retard maximum
(retard par rapport à Ti*) que l’on peut accuser avant le début la tâche i sans perturber les dates
au plutôt des tâches ultérieures et cela bien que l’opération I ait commencé à sa limite (date au
plus tard).
On remarque que les marges certaines des tâches critiques sont nécessairement nulles.

Exemple 1:
Soit le projet suivant que nous voulons construire

P a g e 76 | 90
Recherche Opérationnelle 2020-2021

Tâches Prédécesseurs Durée Nous avons deux niveaux pour ce graphe:

A C 4 N1  C; D

N 2  A; B
B D 6
C - 2
D - 5

Nous avons le graphe MPM suivant :

Calculons les marges totales (T*i-Ti), libre et certaines

Tâches mT (i) mL(i) mC(i)


A 5 5 0
B 0 0 0
C 5 0 0
D 0 0 0

Marge libre :
mL(C) = 2 – 0 – 2=0 ; mL(B) = 11 – 5 – 6 = 0 ; mL(A) = 11 – 2 – 4 = 5 ; mL(D) = 5 – 0 – 5= 0;
Marge certaine :
mC(C) = max {0; min (2-5-2)}= max {0;-5} = 0 ;
mC(B) = max{0; min(11-5-6)}= max {0;0} = 0 ;
mC(A) = max{0; min(11-7-4)}= max {0;0} = 0 ;
mC(D) = max{0; min(5-0-5)}= max {0;0} = 0.
Les marges certaines de toutes les tâches sont nulles. Aucun délai ne peut être apporté à la mise
en route des tâches réalisées à leur date limite sans perturber les dates attendues des évènements
postérieurs.

Exemple 2 :
Soit le projet suivant à réaliser :

P a g e 77 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Tâches Tâches antérieures Durée


A - 8
B A 3
C A;B;E 2
D - 6
E A 4
F A;D 5

1) Ordonnancer le graphe par niveaux


2) Tracer le graphe ordonnancé
3) Calculer la durée du projet et les marges totale, libre et certaine.
Réponse :
1) Le dictionnaire des précédents nous donne les niveaux suivants (voir chapitre 4) :
N1  A; D ; N 2  B; E; F  et N 3  C

2) Traçons le graphe MPM et calcul de la durée du projet


A partir du dictionnaire des précédents on obtient le tableau des successeurs

Tâches (i) P(i) S(i) Durée


A - B;C;E;F 8
B A C 3
C A;B;E - 2
D - F 6
E A C 4
F A;D - 5

La durée minimale du projet est de 14 jours.


Calcul des marges totale, libre et certaine
- Calculons les marges totales (T*i-Ti), libre et certaines

P a g e 78 | 90
Recherche Opérationnelle 2020-2021

Tâches mT (i) mL(i) mC(i)


A 0 0 0
B 1 1 0
C 0 0 0
D 3 2 0
E 0 0 0
F 1 1 0

- Calcul de la Marge libre :


mL(A) = min (TF - TA - dA,F ; TB - TA - dA,B ; TE - TA - dA,E) = min(8-0-8 ; 8-0-8 ; 8-0-8) = 0
mL(B) = min (TC – TB – dB,C) = min(12 – 8 – 3) = 1
mL(C) = 14 - 12 – 2 = 0; mL(D) = 8 – 0 – 6 = 2; mL(E) = 12 – 8 – 4 = 0;
mL(F) = 14 – 8 – 5= 1;
- Calcul de la Marge certaine :
mC(A) = max {0; min (TF – T*A - dA,F ; TB – T*A - dA,B ; TE – T*A - dA,E)}
= max {0; min (8-0-8 ; 8-0-8 ; 8-0-8} = 0 ;
mC(B) = max {0; min (TC – T*B – dB,C )}= max {0; min(12 – 9 - 3} = 0 ;
mC(C) = max {0; min (14-12-2)}= max {0;0} = 0 ;
mC(D) = max {0; min (8-3-6)}= max {0 ; -1} = 0 ;
mC(E) = max {0; min (12-8-4)}= max {0;0} = 0.
mC(F) = max {0; min (14-9-5)}= max {0;0} = 0.

B. La méthode PERT

1) Construction du graphe PERT

Pour construire le graphe PERT, nous avons besoin d’un ensemble de données :
Un ensemble fini de tâches ou activités T1, T2, …, Tn. Les durées  1 ;  2 ; ....... n de chacune de
ces tâches.
Il faut un ensemble d’arc (Ti, Tj) signifiant que la tâche Tj ne peut débuter que si la tâche Ti est
achevée. (Tj est le suivant de Ti, il existe une relation d’antériorité entre la tâche i et j.

le nœud ou sommet i du graphe est une étape ou événement du projet

i Ti est la date au plus tôt du sommet i


*
Ti * est la date au plus tard du sommet i
Ti Ti

P a g e 79 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Dans la représentation PERT, les arcs correspondent aux tâches ou activité du projet.
La valeur de l’arc représente la durée de la tâche.
Un sommet de fin et de début sont rajoutés au graphe.
La représentation graphique est ordonnée par niveau des sommets c'est à dire des étapes.
Un sommet est une étape indiquant :
- Ti est la date au plus tôt du sommet i mais également la date de fin au plus tôt de toutes

les tâches qui y arrivent, Ti est aussi la date de début au plus tôt de toutes les tâches qui
sortent du sommet i.
*
- Ti est la date de fin au plus tard de toutes les tâches qui pointent vers le sommet i et aussi
la date de début au plus tard de toutes les tâches qui en sortent.
La construction du graphe PERT pose divers problèmes dans le cas des contraintes temporelles
et des situations qui nécessitent l’ajout des arcs fictifs qui ne correspondent à aucune tâche.

a et b doivent être terminées pour que c et d puissent


débuter. (Cas de contraintes de succession temporelle)

Remarque 1: il est quelque fois nécessaire d'introduire des tâches fictives de durée nulle

a et b doivent être terminées pour que c


puisse commencer et uniquement b doit
être terminée pour que d commence.

Remarque 2: 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:

P a g e 80 | 90
Recherche Opérationnelle 2020-2021

Récapitulatif sur la construction du graphe PERT

Le graphe PERT est composé de sommets et de tâches (ou opérations) :


 Chaque tâche du graphe est représentée par un arc ;
 Chaque arc porte un code et une durée (durée de réalisation de la tâche) ;
 Chaque sommet porte un numéro, une date au plus tôt et une date au plus tard ;
 Les numéros des sommets représentent l’ordre de succession des étapes du projet ;
 La date au plus tôt d’un sommet représente la date de fin au plus tôt des tâches qui convergent vers ce
sommet et la date de début au plus tôt des tâches qui débutent par le même sommet ;
 La date au plus tard d’un sommet représente la date de fin au plus tard des tâches qui convergent vers
ce sommet et la date de début au plus tard des tâches qui débutent par le même sommet ;
 Le graphe commence par un sommet de « début » (sommet sans antécédent) et se termine par un
sommet de « fin » (sommet sans descendant) ;
 Les dates au plus tôt et au plus tard du sommet de début sont toujours égales à zéro (0) ;
 La date au plus tard du sommet de fin est toujours égale à la date au plus tôt du même sommet ;
 Lorsque qu’une tâche partage un même antécédent avec d’autres tâches, on introduit des « tâches
fictives » sur le graphe pour traduire correctement les relations d'antériorité ou de précédence;
 Les tâches fictives sont de durée nulle et représentées par des arcs en pointillé.
Grace aux calculs des marges des différentes tâches, le graphe Pert permet de déterminer le chemin critique qui
conditionne la durée minimale du projet.
Pour construire un graphe PERT, on utilise la méthode des niveaux :
 On détermine les tâches sans antécédent (tâches de niveau 1) et on les relie à l'étape de "Début"
 On identifie ensuite les tâches de niveau 2, ce sont celles dont les antécédents sont exclusivement du
niveau 1 et on les place sur le graphe ;
 On continue ainsi pour chaque niveau suivant jusqu'à ce que toutes les tâches aient pu être positionnées.
 A la fin, on relie les tâches n'ayant pas de descendant à l'étape de "Fin".

P a g e 81 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

2) Date au plus tôt d’une étape j

Les dates au plus tôt sont données par la formule suivante :


T1  0
T j  max(Ti  d j ,i )
iP ( j )

Où P( j ) est l’ensemble des précédents de l’étape j et Ti , la date de début au plus tôt de l’étape

ou l’évènement de niveau précédent (i). di , j est la durée de la tâche comprise entre les sommets

ou étapes i et j.

3) Date au plus tard d’une étape i

Les dates au plus tard se calculent de la manière suivante :


Tn*  Tn

Ti*  min T j*  d i , j
jS ( i )

Où S (i ) est l’ensemble des suivants de l’étape i ; d i , j est le potentiel porté sur l’arc (i, j ) ; n

étant l’étape de fin, alors Tn (date au plus tôt de l’étape n) et Tn* (date au plus tard de ladite
étape).

4) Marge d’une tâche (marge totale, libre et certaine)

- La Marge totale MTij ( X ) d’une tâche X comprise entre les étapes i et j

C’est la durée définie par :


MTij ( X )  T j*  Ti  dij

Où Ti est la date au plus tôt du début de l’étape i et T j* est la date au plus tard de début de la

tâche j. La marge totale de la tâche X est le délai ou retard maximum que l’on peut apporter au
démarrage de la tâche X, sans retarder la fin du projet.

- La Marge libre mLij  X  d’une tâche X comprise entre les étapes i et j

C’est la durée définie par :


MLij  X   T j  Ti  dij

La marge libre représente le retard maximal (par rapport à Ti) que l’on peut apporter au

P a g e 82 | 90
Recherche Opérationnelle 2020-2021

démarrage de la tâche X, sans affecter les dates au plus tôt des tâches suivantes (celles suivant
immédiatement la tâche X).

- La Marge certaine mC (i) d’une tâche X


C’est la durée définie par :
mC (i)  max( 0; min (T j  Ti*  d ij )
jS ( i )

Où S (i ) représente l’ensemble des successeurs de l’étape i. La marge certaine est strictement


positive et représente le délai ou le retard maximum (retard par rapport à Ti*) que l’on peut
apporter au démarrage de la tâche X sans remettre en cause les dates au plus tôt des tâches
ultérieures (suivantes) et cela bien que l’opération X ait commencé à sa date au plus tard.

Application :
Nous allons illustrer le calcul des marges totale, libre et certaine à l’aide d’un exemple :
Soit le projet suivant à construire :

Tâches Durées Prédécesseurs


A titre d’illustration, la tâche C ne peut commencer que
A 10 - si les tâches A, B et D sont terminées. Alors qu’A, B,
B 2 - D peuvent commencer immédiatement. E commence
C 5 A;B;D
si A est terminée.
D 3 -
E 6 A

Calculons des successeurs et des niveaux des tâches dans le réseau PERT.
Niveaux
Tâches Durées Prédécesseurs Success
1 2
A 10 - C;E 1
B 2 - C 1
C 5 A;B;D - 2
D 3 - C 1
E 6 A - 2

On obtient le graphe PERT suivant :

P a g e 83 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Le calcul des dates au plus tôt et au plus tard :


Date au plus tôt Date au plus tard
Sommet i
xi yi
1 0 0
2 10 10
3 10 11
4 3 11
5 16 16

Date au plus tôt pour chaque sommet (justification des calculs)

Sommet 1 (début) : (phase d’initialisation ou de début du projet donc x1  0 ) ;

Sommet 2 : (il y a un seul arc qui pointe vers le sommet 2): x2  0  d12  0  10  10 ; Sommet
3 : (il a trois prédécesseurs à savoir les sommets 1 ; 2 et 4) :
x3  max0  d13 ; 10  d 23 ;3  d 43   0  2;10  0; 3  0  10 ;

Sommet 4 : (il y a un seul arc qui pointe vers le sommet 4) : x4  0  d14  0  3  3 ;


Sommet 5 : (il a deux prédécesseurs à savoir les sommets 2 et 3) :
x5  max10  d 25 ; 10  d 35   10  6;10  5  16 ;

Date au plus tard pour chaque sommet (justification des calculs)

On pose que la date au plus tard du dernier sommet est égale à sa date au plus tôt ( y5  x5  16

). La formule utilisée est yk  miny j  d k , j / j  S (k )

Somment 2 : (il a deux successeurs à savoir les sommets 3 et 5):

P a g e 84 | 90
Recherche Opérationnelle 2020-2021

y 2  miny5  d 25 ; y3  d 23   min16  6; y3  0  min10; y3 ?

Somment 3 : (il a un seul successeur à savoir le sommet 5):


y 3  y5  d 35   16  5  11 et y2  min10; 11  10

Sommet 4 : (il a un seul successeur à savoir le sommet 3) :


y 4  y3  d 43   11  0  11

Sommet 1 : (il a trois successeurs à savoir les sommets 2 ; 3 et 4) :


y1  miny 4  d14 ; y3  d13 ; y 2  d12   min11  3; 11  2; 10  10  min8; 9; 0  0

Calcul des marges des tâches de notre projet (marge totale, libre et certaine)

Marges (MT, ML et MC)


Tâches
Marge totale Marge libre Marge certaine
A 0 0 0
B 9 8 8
C 1 1 0
D 8 0 0
E 0 0 0

Calcul des marges totales


mT ( A)  y 2  x1  d12  10  0  10  0
Tâches critiques : il faut surveiller l’évolution
mT ( B)  y 3  x1  d13  11  0  2  9
de ces tâches car un retard dans l’exécution de
mT (C )  y 5  x3  d 35  16  10  5  1 ces tâches entrainera immédiatement un retard
mT ( D)  y 4  x1  d14  11  0  3  8 dans le délai de livraison. Les tâches critiques
mT ( E )  y 5  x 2  d 25  16  10  6  0 correspondent aux tâches dont la marge totale est
nulle. Ici on A et E. Le chemin critique est
mT ( F1 )  y 3  x 2  d 23  11  10  0  1
donnée par la succession de ces tâches (figure ci-
mT ( F2 )  y 3  x 4  d 43  11  3  0  8 dessous : chemin critique en rouge).

P a g e 85 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Calcul des marges libres


m L ( A)  x 2  x1  d12  10  0  10  0
m L ( B)  x3  x1  d13  10  0  2  8
m L (C )  x5  x3  d 35  16  10  5  1
m L ( D)  x 4  x1  d14  3  0  3  0
m L ( E )  x5  x 2  d 25  16  10  6  0
m L ( F1 )  x3  x 2  d 23  10  10  0  0
m L ( F2 )  x3  x 4  d 43  10  3  0  7

Calcul des marges certaines ( mC (i)  max( 0; min (T j  Ti*  d ij ) )


jS ( i )

mC ( A)  x 2  y1  d12  10  0  10  0; mC ( B)  x3  y1  d13  10  0  2  8
mC (C )  x5  y 3  d 35  16  11  5  0; mC ( D)  x 4  y1  d14  3  0  3  0
mC ( E )  x5  y 2  d 25  16  10  6  0; mC ( F1 )  x3  y 2  d 23  10  10  0  0
mC ( F2 )  x3  y 4  d 43  10  11  0  1 mais on retient 0

En effet, si la marge certaine d’une tâche est négative alors sa marge est considérée égale à 0.
On vérifie toujours que 0  mC (i )  mL (i )  mT (i ) .

P a g e 86 | 90
Recherche Opérationnelle 2020-2021

POINTS IMPORTANTS A RETENIR

I. Questions de contrôle de connaissances


1. En quoi consiste l’ordonnancement et pourquoi ordonnancer ?
2. Qu’est-ce qu’une tâche, un projet?
3. Qu’elles sont les méthodes d’ordonnancement vues au cours ?
4. Qu’elles sont les différents types de contraintes dans un problème d’ordonnancement?
5. Définir les termes suivants : ordonnancement minimum et ordonnancement limite
6. Définir les termes suivants : la marge totale, libre et certaine d’une tâche.

II. Exercice d’assimilation


Soit le projet suivant à construire : Déterminer la durée du projet à partir d’un graphe MPM
Tâches Tâches antérieures Durée
A - 3
B A 4
C A, D 5
D - 2

III. Exercice d’approfondissement


Une société décide de construire un projet dont l’analyse des tâches élémentaires et leurs
interdépendances, permet d’établir le tableau ci-dessous.

Tâches Durées (en jours) Tâches pré requis ou preced.


T 7 -
U 4 -
W 4 U
X 5 T;W
Y 6 U
Z 8 X;Y
R 4 U
S 6 X;Y;R

1) Construire le graphe MPM pour ce projet.


2) Donner la durée minimale pour ce projet, calculer les marges totale, libre et certaine et
déterminer le chemin critique.
3) La durée de la tâche Y passe de 6 à 10 jours. Quelle répercussion sur la fin des travaux.
4) Idem pour le graphe PERT pour ce même projet.

P a g e 87 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

Bibliographie générale

Bastin Fabian (2010), « Modèles de Recherche Opérationnelle », Département d’Informatique


et de Recherche Opérationnelle Université de Montréal, IFT-1575.

Catherine Maurice-BAUMONT (1990), Mathématiques financières et Recherche


Opérationnelle en Techniques Quantitatives de Gestion, volume 2, édition ellipses.

Levy Adam B. (2009), The Basics of Practical Optimization. SIAM, Philadelphia, USA.

C. P. Simon et L. Blume (2003), Mathématiques pour économistes, De Boeck université.

Hillier F.S. et Lieberman G.S. (1995), Introduction to Operations Research, 6ème édition,
Mac Graw-Hill International Editions.

Y. Nobert, R. Ouellet et Régis Parent (2001), La recherche opérationnelle, 3e édition, Gaëtan


Morin.

Robert Faure, Bernard Lemaire et Christophe Picouleau. Précis de Recherche Opérationnelle -


Méthodes et exercices d'application - 6e édition, Dunod.

Melloui K, A El Kamel; Borne P. (2004), Programmation linéaire et Applications, éléments de


cours et exercices corrigés, Technip, paris, 2004.

P a g e 88 | 90
Recherche Opérationnelle 2020-2021

Table des matières

Chapitre 0 : Généralités sur la Recherche Opérationnelle ................................................. 4


0.1. Définition de la RO ........................................................................................................... 4
0.2. Les origines de la RO ........................................................................................................ 4
0.3. Importance de la Recherche Opérationnelle ..................................................................... 5
0.4. Les champs d’application de la recherche opérationnelle.................................................. 5
0.5. Méthodologie de la recherche opérationnelle .................................................................... 6
Chapitre 1 : Programmation linéaire (formulation) ........................................................... 8
1.1. Définition et concepts de base ....................................................................................... 9
1.2. Hypothèses de programmation linéaire ...................................................................... 11
1.3. Exemples de modèle de programmation linéaire ........................................................ 13
A. Exemples de maximisation ................................................................................................................ 13
B. Exemples de minimisation ................................................................................................................ 17

Chapitre 2 : Méthodes de résolution d’un Programme Linéaire ....................................... 21


2.1. Terminologie pour les solutions du programme linéaire en nombre réels ................... 21
A. Solution d’un programme linéaire : définition ................................................................................... 21
B. Solution réalisable d’un programme linéaire : définition .................................................................. 21
C. Solution optimale réalisable : définition ............................................................................................. 21
D. Solution Optimale d’un Programme Linéaire à deux variables réelles : définition ........................ 22
2.2. Techniques de résolution graphique ........................................................................... 22
A. Problèmes de maximisation .............................................................................................................. 23
B. Problèmes de minimisation ............................................................................................................... 28

2.3. Critique des méthodes graphique et énumérative ....................................................... 30


Chapitre 3 : L’algorithme ou méthode du Simplexe ......................................................... 32
3.1. Exposé algébrique de la méthode de Simplexe ................................................................ 32
1. Mise sous forme standard ................................................................................................................. 32
2. Définition de la variable entrante et sortante .................................................................................. 33
3.2. Disposition des calculs dans les tableaux ......................................................................... 35
1. Sélection de la variable entrante ...................................................................................................... 35
2. Sélection de la variable sortante ....................................................................................................... 35
3. Passage au tableau suivant................................................................................................................ 36

3.3. Interprétation ................................................................................................................. 39


1. Interprétation de la solution optimale ............................................................................................. 39
2. Interprétation des coefficients de la ligne Cj .................................................................................... 39

3.4. La dualité ........................................................................................................................ 40


1. Règles pratiques de passage du primal au dual .............................................................................. 40
2. Exemples (Trouver les formes Duales correspondantes) ............................................................... 42
P a g e 89 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5

3. Principaux résultats de la dualité ..................................................................................................... 43

3.5. Résolution d’un problème de minimisation par la méthode du Simplexe ........................ 44


1. Passage au tableau suivant................................................................................................................ 46

Chapitre 4 : Introduction à la théorie des graphes ........................................................... 51


4.1. Notions sur la théorie des graphes ................................................................................... 52
A. Définition ............................................................................................................................................ 52
B. Représentation d’un graphe ............................................................................................................. 53
C. Chaînes – Circuits - Chemins ........................................................................................................... 55
D. Niveaux de graphe ............................................................................................................................. 56

4.2. Chemins critiques ........................................................................................................... 60


A. Chemins minimaux ............................................................................................................................ 60
B. Chemins maximaux ........................................................................................................................... 62
C. Arc critique ........................................................................................................................................ 63

4.3. Problèmes de flot maximal dans un réseau...................................................................... 64


A. Illustration du problème de transport ............................................................................................. 64
B. Recherche d’un flot maximal ............................................................................................................ 65

Chapitre 5 : Problèmes d’ordonnancement ..................................................................... 72


5.1. Pourquoi ordonnancer ? ................................................................................................. 72
5.2. Notions de projet, tâche et ordonnancement ................................................................... 72
A. Notion de projet ................................................................................................................................. 72
B. Notion de tâche .................................................................................................................................. 73

5.3. Méthodes d’ordonnancement .......................................................................................... 73


A. La méthode MPM .............................................................................................................................. 74
B. La méthode PERT ............................................................................................................................. 79

Bibliographie générale.................................................................................................... 88
Table des matières .......................................................................................................... 89

Recherche
Opérationnelle 2020-
2021
Dr GBAME Hervé Daniel

P a g e 90 | 90

Vous aimerez peut-être aussi