Académique Documents
Professionnel Documents
Culture Documents
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
P a g e 1 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
Sommaire
P a g e 2 | 90
Recherche Opérationnelle 2020-2021
P a g e 3 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
0.1. Définition de la RO
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.
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
La recherche opérationnelle est une réponse au souci de l’homme dans ses domaines
d’activités :
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
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.
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….
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 hospitalière, la gestion des files d’attentes, le domaine militaire etc … sont tant de
domaines d’application de la Recherche Opérationnelle.
P a g e 6 | 90
Recherche Opérationnelle 2020-2021
P a g e 7 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
La gestion de production est le domaine où ces applications sont les plus nombreuses. On peut
par exemple citer :
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
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 :
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
1x1 a 21 M 0
Pour produire b2 où b2 est la quantité totale de main d’œuvre
1x 2 a 22 M 0
a11 x1 a12 x2 b1
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
a11 x1 a12 x 2 b1
. a 21 x1 a 22 x 2 b2 Les contraintes
x1 0; x 2 0
Soit :
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
Max Z c x 1 1 c2 x2 ...... cn xn
x1 ; x2 ; .....xn
Cela veut dire que la F-O est le seul critère de choix de l’ensemble des solutions admissibles.
P a g e 11 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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é
P a g e 12 | 90
Recherche Opérationnelle 2020-2021
La société dispose en stock dans ses cuves des quantités suivantes de crus d’origine :
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 :
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
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.
P a g e 15 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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 :
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 :
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
B. Exemples de minimisation
1) Problème classique de transport
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 :
P a g e 17 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
xij ai i
j
Les x ij doivent vérifier les conditions suivantes :
xij b j j
i
A B C D
E1 20 0 10 10
E2 0 10 10 20
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.….
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
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
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
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.
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é.
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.
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).
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
P a g e 23 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
S /c x1 2 x 2 20
2 x1 x 2 22
x1 x 2 12
x1 0; x 2 0
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)
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
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 :
P a g e 25 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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).
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
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
- 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).
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.
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.
B. Problèmes de minimisation
P a g e 28 | 90
Recherche Opérationnelle 2020-2021
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
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
P a g e 31 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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.
Max Z 4 x1 5 x2
s/c x1 2 x2 40
4 x1 3x2 120
x1 0; x2 0
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
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
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 ».
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.
P a g e 34 | 90
Recherche Opérationnelle 2020-2021
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.
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é)
La colonne qui a les Cj le plus élevé est la colonne de la variable entrante. Ici c’est X2.
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
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
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
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
Aucune ligne n’a de zéro comme coefficient sur la colonne du pivot. Donc toutes les
lignes doivent être modifiées.
- 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
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
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
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.
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
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 :
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
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
a) On veut maximiser Z
Max Z 5 x1 6 x2
s/c x2 2
3x1 5 x2 1
x1 0; x2 0
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
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 y1IR, 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
x1IR, x2IR
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).
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
P a g e 44 | 90
Recherche Opérationnelle 2020-2021
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 :
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
La deuxième ligne de j indique la valeur la plus négative c'est-à-dire -7M, donc U2 est la
variable entrante.
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.
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
P a g e 47 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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
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
P a g e 48 | 90
Recherche Opérationnelle 2020-2021
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 :
P a g e 49 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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
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
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
Exemple :
- Arc 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
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.
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.
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 2 :
Soit le diagramme sagittal ci – dessous :
Figure (b)
Le dictionnaire nous donne :
P a g e 54 | 90
Recherche Opérationnelle 2020-2021
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 ».
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
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.
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.
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.
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
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.
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
la valeur du chemin minimal entre x1 et x n . Les valeurs j sont portées au-dessus des sommets
2 1 v1,2 0 3 3 ;
3 min0 5; 3 1 4 ;
4 4 4 8 ;
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
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 ;
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) max5 5 ; 2 1 10
(7) max (3) v(3;7); (6) v(6;7) max5 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) max5 3;10 6 16
Pour aboutir à 7, on est passé par 6
(6) max (3) v(3;6); (5) v(5;6) max5 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).
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 :
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.
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
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 :
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.
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
P a g e 71 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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.
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.
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
A. La méthode 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.
P a g e 74 | 90
Recherche Opérationnelle 2020-2021
é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.
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.
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.
Exemple 1:
Soit le projet suivant que nous voulons construire
P a g e 76 | 90
Recherche Opérationnelle 2020-2021
A C 4 N1 C; D
N 2 A; B
B D 6
C - 2
D - 5
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
P a g e 78 | 90
Recherche Opérationnelle 2020-2021
B. La méthode 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.
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.
Remarque 1: il est quelque fois nécessaire d'introduire des tâches fictives de durée nulle
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
P a g e 81 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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.
é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).
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 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).
Application :
Nous allons illustrer le calcul des marges totale, libre et certaine à l’aide d’un exemple :
Soit le projet suivant à construire :
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
P a g e 83 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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 max0 d13 ; 10 d 23 ;3 d 43 0 2;10 0; 3 0 10 ;
On pose que la date au plus tard du dernier sommet est égale à sa date au plus tôt ( y5 x5 16
P a g e 84 | 90
Recherche Opérationnelle 2020-2021
Calcul des marges des tâches de notre projet (marge totale, libre et certaine)
P a g e 85 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
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
P a g e 87 | 90
Les manuels de l’IUA-Licence 3 Sciences Economiques / Semestre 5
Bibliographie générale
Levy Adam B. (2009), The Basics of Practical Optimization. SIAM, Philadelphia, USA.
Hillier F.S. et Lieberman G.S. (1995), Introduction to Operations Research, 6ème édition,
Mac Graw-Hill International Editions.
P a g e 88 | 90
Recherche Opérationnelle 2020-2021
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