Cours de Recherche Opérationnelle
Cours de Recherche Opérationnelle
RECHERCHE
OPERATIONNELLE
Destiné aux étudiants de 1er Master Ingénieur
Civil
Prof. Dr Ir Arthur KANIKI TSHAMALA
1
Engagements pédagogiques
Intitulé du cours : Recherche Opérationnelle
Code : …
Volume horaire : 30h Th+15h TP=45 heures
Problèmes complexes
Décideur
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 6
Civil
II. Historique :
INTRODUCTION
- XVIIème siècle : Notions d’espérance mathématique (Blaise Pascal)
- XVIIème et XVIIIème siècle : Notions d’analyse combinatoire
- XXème siècle : Gestion de stock, Formule du lot économique
(Wilson)=origine
Organisation et nom de la discipline : Vers la seconde Guerre
mondiale
« opérationnelle » : à l’origine opérations militaires
Kolwezi
Site B
Likasi
Lubumbashi
Lusaka
Site C
Site A
Kolwezi
Site B
Likasi
Lubumbashi
Lusaka
Site C
Site A
Kolwezi
Site B
Likasi
Lubumbashi
Lusaka
Site C
Site A
Solution
B
Solution
C
Attention :
Explosion
Solution combinatoire !!!
30!
A 5
C30 142506
5!(30 5)!
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 11
Civil
INTRODUCTION
Problème aléatoire :
Guichet unique :
Attendre au moins 1h
I.1.1. Définitions
i. Un ensemble de points C de Rn est dit convexe si le segment de droite qui relie
deux points quelconque de C est contenu dans C. En d’autres termes C est
convexe si pour tout X1, X2 Є C, on a :
X 3 X 1 (1 ) X 2 C où 0≤α≤1
B B
A
A C
2 sommets 3 sommets Infinités de sommets
A1 A1
Cas du triangle
M
X
M 1 A (1 1 ) A2 0 A3
A2 A3
A2 A3 X1
X 1 1 A2 (1 1 ) A3
X 1 A1 (1 1 ) 1 A2 (1 1 )(1 1 ) A3
X A1 (1 ) A2 (1 )A3 (1 ) A4
X A1 (1 ) A2 (1 ) A3 (1 )(1 ) A4 1 2 3 4 1
(1 ) (1 ) (1 )(1 ) 1
) (1 )( 1 ) 1
N.B. On voit qu’il n’y a pas une seule façon de prouver qu’un point pris à
l’intérieur du polyèdre est une combinaison linéaire convexe des autres points
distincts sauf si le point est choisi sur le périmètre du polyèdre
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 17
Civil
Chap. I Programmation
I.1.2. Théorème d’optimalité linéaire
Dans un programme linéaire dont l’ensemble des solutions réalisables
est un polyèdre convexe, l’optimum de la fonction économique est
nécessairement atteint en un sommet du polyèdre.
I.2. Algorithme du simplexe
I.2.1. Principe
r 1 2 n
j 1
j j
contraintes x j Pj P0 x1 , x2 ,..., xn 0
j 1
C1 C2 Cr Cm … Cn
Base Ci P0 P1 P2 Pr Pm … Pn
P1 C1 b1 1 0 0 0 … x1n
… linéaire parce que les
P2 C2 b2 0 1 0 0 … x2n égalités sont au premier
degré par rapport aux
Pr Cr br 0 0 1 0 … xrn variables
Pm Cm bm 0 0 0 1 … xmn
Z0 0 0 0 0 … -zk-Ck
$
$
P4 0 7 3 -1 0 1 2 0
P3 0 12 -2 4 1 0 0 0
P6 0 10 -4 3 0 0 8 1
Coef. dans Z Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 22
Civil
Chap. I Programmation
linéaire
3° Déterminer la valeur de la fonction économique
Min Z x1 3 x2 2 x5
- Calculer Z0=ΣCi.P0
3 x1 x2 0 x3 x4 2 x5 0 x6 7
- Calculer Zk=Σ[Link]-Cj 2 x1 4 x2 x3 0 x4 0 x5 0 x6 12
4 x1 3x2 0 x3 0 x4 8 x5 x6 10
On peut constater qu’avec la solution de base réalisable Zk=-Cj
Cj
1 -3 0 0 2 0
Base Ci P0 P1 P2 P3 P4 P5 P6 Pj
P4 0 7 3 -1 0 1 2 0
P3 0 12 -2 4 1 0 0 0
P6 0 10 -4 3 0 0 8 1
0 -1 3 0 0 -2 0 Zk
Z0
4° Changement de base
-Le vecteur Pj qui doit entrer dans la base est celui pour lequel Zk est max (maximum local)
-Chercher le pivot qui indique le vecteur à chasser de la base
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 23
Civil
Chap. I Programmation Min Z x1 3 x2 2 x5
-Le pivot correspond à P0/Pj min linéaire
1 -3 0 0 2 0
7/(-1)=-7
Base Ci P0 P1 P2 P3 P4 P5 P6
L4 P4 0 7 3 -1 0 1 2 0 12/(4)=3
P3 0 12/4 -2/4 4 /4 1/4 0/4 0 /4 0 /4
10/
L6 P6 0 10 -4 3 0 0 8 1 (3)=3,3
0 -1 3 0 0 -2 0
-Diviser la ligne du pivot par le pivot -Appliquer la combinaison linéaire avec la ligne du pivot
1 -3 0 0 2 0 L’4=1L’2+L
Base Ci P0 P1 P2 P3 P4 P5 P6 4
L’6=-3L’2+L6
L’ P4 0 10 5/2 0 1/4 1 2 0
L’42 P2 3 -1/2 1 1/4 0 0 0
-Règle du
-3
rectangle
L’6 0 1 -5/2 0 -3/4 0 8 1
P6 (rec tan gle )
-9 1/2 0 -3/4 0 -2 0 xj
pivot
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 24
Civil
Chap. I Programmation Min Z x1 3 x2 2 x5
linéaire
Base Ci P0
1
P1
-3
P2
0
P3
0
P4
2
P5
0
P6
10/(5/2)=4
P4 0 10/(5/2)5/2/(5/2) 0 /(5/2) 1/4/(5/2) 1/(5/2) 2/(5/2) 0/(5/2) 3/(-1/2)=-6
L2 P2 -3 3 -1/2 1 1/4 0 0 0
1/(-5/2)=-2/5
L6 P6 0 1 -5/2 0 -3/4 0 8 1
-9 1/2 0 -3/4 0 -2 0
1 -3 0 0 2 0 L’2=1/2L’1+L2
Base Ci P0 P1 P2 P3 P4 P5 P6 L’6=5/2L’1+L6
La solution optimale est : Z=-11 x1=4 x2=5 x3=0 x4=0 x5=0 x6=11
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 25
Civil
Chap. I Programmation
Exercice : Résoudre le programme linéaire
linéaire x1 x4 6 x6 9
suivant 3 x1 x2 4 x3 2 x6 2
Min Z x1 x2 x3 x4 x5 x6
1 3 5 6 x 2 x x 2 x 6
I.2.5. Variables artificielles et variables
d’écart
Variable artificielle
En général on ne dispose pas d’une première solution de base admissible
et la procédure du simplexe ne peut démarrer. On utilise alors la
méthode dite de la base artificielle. Celle-ci consiste à modifier le
programme initial en ajoutant à chaque contrainte i une nouvelle
variable vi affectée d’un coefficient M infiniment grand dans la fonction
économique.
Comme M>>> Z est aussi >>>> éliminer les Pvi en premier lieu
Variable d’écart
Quand une contrainte i est une inégalité on ajoute à cette contrainte une
variable d’écart ti avec un signe + ou – pour obtenir une égalité. A la
variable ti correspond le vecteur Pti
Min - Z x1 x2
Comme on ne sait pas maximiser on va minimiser l’opposé
x1 x 2 t1 5
Pour avoir l’égalité on ajoute des variables d’écart
x1 x 2 t 2 1
Comme on n’a pas une solution de base réalisable on ajoute une variable
artificielle
x1 x 2 t1 5 x1 x 2 t1 0t 2 0v 2 5
Min Z x1 x 2 Mv 2
x1 x 2 t 2 v 2 1 x1 x 2 0t1 t 2 v 2 1
-1 -1 0 0 M Convention : Scinder
Base Ci P0 P1 P2 Pt1 Pt2 Pv2 la ligne de Z en deux
Pt1 0 5 1 1 1 0 0
Pv2 M 1 1 1 0 -1 1
M M M 0 -M 0
0 1 1 0 0 0
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 27
Civil
Chap. I Programmation
linéaire
-1 -1 0 0 M
Dès qu’un vecteur
Base Ci P0 P1 P2 Pt1 Pt2 Pv2 artificiel est chassé il
Pt1 0 4 0 0 1 1 -1 ne peut plus rentrer :
on l’ignore et on
P1 -1 1 1 1 0 -1 1 ignore sa colonne
-1 0 0 0 0 -M
0 0 0 1 -1
-1 -1 0 0
Base Ci P0 P1 P2 Pt1 Pt2
Pt2 0 4 0 0 1 1
P1 -1 5 1 1 1 0
-5 0 0 -1 0
P1 P2 P1 P2
Les contraintes sont :
1200/P1 1000/P2
3 x1 4 x2 160
3h/P1 4h/P2 6h/P1 3h/P2
6 x1 3 x2 180
160h/semaine 180h/semaine x1 , x2 0
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 29
Civil
Chap. I Programmation
linéaire
2° Résolution par l’algorithme du simplexe
Z 1200 x 1 1000 x2
classique
1ère itération 1200 1000 0 0 3 x1 4 x 2 t1 0t 2 160
Base Ci P0 P1 P2 Pt1 Pt2 6 x1 3 x 2 0t1 t 2 180
Pt1 0 160 3 4 1 0
Pt2 0 180 6 3 0 1
0 -1200 -1000 0 0
P1
12
30 1 1/2 0 1/6
00
classique
3 x1 4 x 2 t1 0t 2 160
6 x1 3 x 2 0t1 t 2 180
3 ème
itération 1200 1000 0 0
Base Ci P0 P1 P2 Pt1 Pt2
P2 10
00
28 0 1 2/5 -5/4
P1 16 1 0 -1/5 19/24
12
00
x2 d1 3 x1 4 x2 160
70 d2 6 x1 3 x2 180
La solution optimale
60 correspond au x1 , x2 0
sommet (16,28)
50 Représentation de la fonction objectif
40 Z= 1200x1+1000x2 est un ensemble
30
de droites ayant pour pente m=-6/5
(si x2 est l’ordonnée). L’optimum est
20
Domaine des obtenu en augmentant Z jusqu’à la
10 solutions limite du domaine
10 20 30 40 50 60 70 x1
d2 d1
2x1 x2 12 d2
5x1 8x2 74 d3
x1 6x2 24 d1
A (0,12) Z = 12 14
B (2,8) Z = 10 12
A
10
C (11,5;2) Z = 13,5
8 B d1
D (0,24) Z = 24 d2
6 d3
2
C
0
0 5 10 15 20 D 25 30
Solution
5°: Introduire les informations demandées
Cellule cible à définir = fonction - objectif (saisir directement ou copier)
Cellules variables=cellules des réponses (à modifier)
Contraintes (y compris les contraintes logiques)
6°: Cliquer sur résoudre et créer le rapport (fichier à donner à l’enseignant)
Exemple :
Max Z 4x1 3x 2 x1 x2 2
3x1 x2 10
Pv1 -M 10 3 1 0 -1 1
-10M -3M -M 0 M 0
-4 -3 0 0 0
2ème itération
4 3 0 0 -M
Base Ci P0 P1 P2 Pt1 Pt2 Pv1
Le tableau de simplexe est
P1 4 2 1 1 1 0 0
optimal avec une variable
Pv1 -M 4 0 -2 -3 -1 1 artificielle dans la base
-4M 0 2M 3M M 0
8 0 1 4 0 0
Pt2 0 -10 -3 -1 0 1
0 -4 -3 0 0
2ème itération 4 3 0 0
Base Ci P0 P1 P2 Pt1 Pt2 Le tableau de simplexe est
P1 4 2 1 1 1 0 optimal avec une variable
d’écart dans la base
Pt2 0 -4 0 2 3 1
8 0 1 4 0
x1 x2 2
3x1 x2 10
Aucun des menus
« rapports » n’est
disponible
2 0 2
6 0 10 x
On peut encore vérifier
graphiquement que la solution est
impossible …
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 39
Civil
Chap. I Programmation
I.2.6. Problèmes irréguliers linéaire
b) Problèmes à solutions multiples
D
2
C (3,4) Z = 15
1
D (10;5/3) Z = 15 A E
0
0 2 4 6 8 10 12
E (10,0) Z = 10
En réalité, tous les points du segment CD sont des solutions Z
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 40
Civil
Chap. I Programmation
I.2.6. Problèmes irréguliers linéaire 2x1 6x2 30
Max Z x1 3x2 x1 10
b) Problèmes à solutions multiples x2 4
Le solveur donne plusieurs solutions lorsqu’on change des valeurs initiales
1 3 0 0 0 1 3 0 0 0
Pt1 0 30 2 6 1 0 0 Pt1 0 6 2 0 1 0 -6
Pt2 0 10 1 0 0 1 0 Pt2 0 10 1 0 0 1 0
Pt3 0 4 0 1 0 0 1 P2 3 4 0 1 0 0 1
0 -1 -3 0 0 0 12 -1 0 0 0 3
1 3 0 0 0
P1 1 3 1 0 0,5 0 -3
Pt2 0 7 0 0 -0,5 1 3
P2 3 4 0 1 0 0 1
15 0 0 -0,5 0 0
Max Z x1 2x 2 x1 x2 2
Exemple : x1 x2 t1 0t2 0v1 2
x2 3
0x1 x2 0t1 t2 v1 3
1 2 0 0 -M
Base Ci P0 P1 P2 Pt1 Pt2 Pv1
P1 0 2 1 1 -1 0 0
Pv1 -M 3 0 1 0 -1 1
-3M 0 -M 0 M 0
-1 -2 0 0 0
Pv1 -M 1 -1 0 1 -1 1
-M M 0 -M M 0
4 1 0 -2 0 0
1 2 0 0 -M
Base Ci P0 P1 P2 Pt1 Pt2 Pv1
P2 2 3 0 1 0 -1 ? 1
Pt1 0 1 -1 0 1 -1 ? 1
0 0 0 0 0 M
6 -1 0 0 -2 2
3.5
2.5
1.5
d1
d2
1
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5
-0.5
-1
Z
→ Cette analyse est aussi appelée « analyse marginale » car les conclusions
qu’on en tire ne sont valides que pour de petits changements (changement à la
marge).
Situation d’antagonisme
Objet d’un
GAGNER Nécessité d’élaborer une
jeu
stratégie
Jeu à somme
nulle Ce qui est gagné par l’un est perdu par l’autre
Vendeur 1 Vendeur 2
Concerne des situations où les choix de 2 protagonistes (ou plus) ont des
conséquences pour l’un comme pour l’autre
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 52
Civil
Chap. II Éléments de la théorie de jeux et
Historique : 3 étapes stratégies
essentielles
1°) Neumann et Morgenstern : formalisation des jeux où les choix sont les
mêmes et qui sont à somme nulle
!
Laplace donne à chaque état de la nature une même
probabilité de réalisation. Ici, l’état de la nature est plus ou
moins connu.
II.5. Conclusion
Pluviosité Critères
Hurwitz
Sèche Moyenne Pluvieuse Minimax Maximax Laplace α=0,3 Minimax Bayes
1 10000 12500 10000 10000 12500 10833,3 10750 10000
Stratégies 2 9500 15000 15000 9500 15000 13166,7 11150 5000
3 9000 14000 20000 9000 20000 14333,3 12300 1000
Décisions 10000 20000 14333,3 12300 1000
( X , )
définie sur cet ensemble. On dit que le couple
constitue un graphe G d’ordre n. On peut représenter un graphe à l’aide
d’un dessin : « représentation sagittale du graphe ».
B C
x2 x3
A x4 F
x1 x6
D
x5
E
A x4 F
x1 x6
D
x5
E
Deux sommets xi et xj sont ensuite reliés par une flèche allant de xi vers xj
sixxji .
Cette flèche appelée arc du graphe matérialise la relation entre les deux
éléments xi et xj de l’ensemble X ;
Si (xi,xj) est un arc appartenant à Γ, xi est appelé extrémité initiale de
l’arc, xj
extrémité terminale de l’arc.
Si xi =sommets
Deux xj, ce couple
sontest
ditsappelé une boucle
adjacents s’ils sont extrémités d’un même arc.
Deux arcs
sont dits adjacents s’ils on en commun un sommet.
Un sommet est dit isolé s’il n’est extrémité que d’une boucle
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 64
Civil
Chap. III Théorie des graphes et
Sur la figure on voit que :
applications
B C
x2 x3
Matrice booléenne A x4 F
x1 x6
D
x5
E
Matrice latine
Un chemin est dit simple s’il n’emprunte pas 2 fois le même arc
x2 x3
x1 x2 x4 x3 x2 x4 x5 n’est pas simple
x1 x5
x4
3 0 5 1 3 0 5 1 2
Addition de 2 matrices carréesM 1 M ' M ' ' M M '
2 4 4 2 2 4 4 2 6 6
M1= F G
M2=M͂ 1. M͂ 1 X
=
M2 M͂͂2
= =
9 4
a
10
1 b d , e, f f e, z
2
3
c e
c
e d c, f , z
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 82
Civil
Chap. III Théorie des graphes et
applications d
+
+
becdaf
b 8 10
5 z
2 7
Étape Étape 5 f 6
2 3 9 4
a 1
10
2
Γ
a
+ Γ b
+
Γ
c
+ Γ
d
+
Γ
e
+ Γ
f
+
3
c
λa 0 0 e
λb +α 5 a b, c, d
λc +α 10
Pour b on remplace λb par λa+v(a,b) ssi λb - λa >v(a,b)
λd +α
?
λe +α λb = λa +α – 0 > 5 Oui
+v(a,b)=0+5=5
λf +α Pour c on remplace λc par λa+v(a,c) ssi λc - λa >v(a,c)
λz +α ?
λc = λa +α – 0 > 10 Oui
+v(a,c)=0+10=10
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 83
Civil
Chap. III Théorie des graphes et
applications d
+
+
becdaf
b 8 10
5 z
2 7
Étape Étape 5 f 6
2 3 9 4
a 1
10
2
Γ
a
+ Γ b
+
Γ
c
+ Γ
d
+
Γ
e
+ Γ
f
+
3
c
λa 0 0 e
λb +α 5 a b, c, d
λc +α 10
Pour d on remplace λd par λa+v(a,d) ssi λd - λa >v(a,d)
λd +α 2
?
λe +α +α λd = λa +α – 0 > 2 Oui
+v(a,d)=0+2=2
λf +α +α
λz +α +α
3
c
λa 0 0 0 e
λb +α 5 5 b d , e, f
λc +α 10 10
Pour d on remplace λd par λb+v(b,d) ssi λd - λb >v(b,d)
λd +α 2 2 ?
λe +α +α 14 On garde 2 2–5>8 No
n
λf +α +α Pour e on remplace λe par λb+v(b,e) ssi λe - λb >v(b,e)
λz +α +α ?
λe = λb +α – 5 > 9 Oui
+v(b,e)=5+9=14
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 85
Civil
Chap. III Théorie des graphes et
applications d
+
+
becdaf
b 8 10
5 z
2 7
Étape Étape 5 f 6
2 3 9 4
a 1
10
2
Γ
a
+ Γ b
+
Γ
c
+ Γ
d
+
Γ
e
+ Γ
f
+
3
c
λa 0 0 0 0 e
3
c
λa 0 0 0 0 0 e
λb +α 5 5 5 5
d c, f , z
λc +α 10 10 10 6
Pour c on remplace λc par λd+v(d,c) ssi λc - λd >v(d,c)
λd +α 2 2 2 2 ?
λe +α +α 14 13 13 λc = λd +v(d,c)=2+4=6 10 – 2 > 4 Oui
λf +α +α 12 12 7 Pour f on remplace λf par λd+v(d,f) ssi λf - λd >v(d,f)
λz +α +α +α +α ?
λf = λd +v(d,f)=2+5=7 12 – 2 > 5 Oui
3
c
λa 0 0 0 0 0 0 e
3
c
λa 0 0 0 0 0 0 0 e
λb +α 5 5 5 5 5 5 f e, z
λc +α 10 10 10 6 6 6
Pour e on remplace λe par λf+v(f,e) ssi λe - λf >v(f,e)
λd +α 2 2 2 2 2 2 ?
λe +α +α 14 13 13 13 9 λe = λf +v(f,e)=7+2=9 13 – 7 > 2 Oui
λf +α +α 12 12 7 7 7 Pour z on remplace λz par λf+v(f,z) ssi λz - λf >v(f,z)
λz +α +α +α +α 12 12 12 ?
On garde 12 12 – 7 >6 No
n
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 89
Civil
+
ecdbaf
Γa+ Γb+ Γc+ Γd+ Γe+ Γf+ Γc+ Γd+ Γe+ Γf+
0 0 0 0
d c, f , z
λa 0 0 0 0 0
λb +α 5 5 5 5 5 5 5 5 Pour c λc par λd+v(d,c) ssi λc - λd >v(d,c)
λc +α 10 10 10 6 6 6 6 6 ?
6–2>4
λd +α 2 2 2 2 2 2 2 2 No
On garde 6
λe +α +α 14 13 13 13 9 9 9 n
Pour f λf par λd+v(d,f) ssi λf - λd >v(d,f)
λf +α +α 12 12 7 7 7 7 7 ?
λz +α +α +α +α 12 12 12 12 7–2>5
On garde 7 No
c e Pour e on remplace λ par λ +v(c,e) ssi λ - λ >v(c,e) n
e c e c
?
On garde 9 9–6>3 No
n
Cours de Recherche Opérationnelle destiné aux étudiants de 1 Master Ingénieur
er 90
Civil
+
ecdbaf
Γa+ Γb+ Γc+ Γd+ Γe+ Γf+ Γc+ Γd+ Γe+ Γf+
0 0 0 0 0
d c, f , z
λa 0 0 0 0 0
λb +α 5 5 5 5 5 5 5 5 5 Pour z λz par λd+v(d,z) ssi λz - λd >v(d,z)
λc +α 10 10 10 6 6 6 6 6 6 ?
12 – 2 > 10
λd +α 2 2 2 2 2 2 2 2 2 No
On garde 12
λe +α +α 14 13 13 13 9 9 9 9 n
λf +α +α 12 12 7 7 7 7 7 7
λz +α +α +α +α 12 12 12 12 12 10
Γa+ Γb+ Γc+ Γd+ Γe+ Γf+ Γc+ Γd+ Γe+ Γf+
λa 0 0 0 0 0 0 0 0 0 0 0
λb +α 5 5 5 5 5 5 5 5 5 5 Pour z λz par λf+v(f,z) ssi λz - λf >v(f,z)
λc +α 10 10 10 6 6 6 6 6 6 6 ?
10 – 7 > 6
λd +α 2 2 2 2 2 2 2 2 2 2 No
On garde 10
λe +α +α 14 13 13 13 9 9 9 9 9 n
λf +α +α 12 12 7 7 7 7 7 7 7
λz +α +α +α +α 12 12 12 12 12 10 10
λa 0 0 0 0 0 0 0 0 0 0 0 0 0
λb +α 5 5 5 5 5 5 5 5 5 5 5 5
λc +α 10 10 10 6 6 6 6 6 6 6 6 6
λd +α 2 2 2 2 2 2 2 2 2 2 2 2
λe +α +α 14 13 13 13 9 9 9 9 9 9 9
λf +α +α 12 12 7 7 7 7 77 7
7 7
λz +α +α +α +α 12 12 12 12 12 10 10 10 10 La valeur du
chemin minimal
e z Pour z on remplace λz par λe+v(e,z) ssi λz - λe >v(e,z)
est 10
?
On garde 10 10 – 9 > 1 No
n
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 93
Civil
Chap. III Théorie des graphes et
Étape 5
applications
Retrouver le chemin en partant du dernier sommet (Z) et en
déterminant les prédécesseurs (les ancêtres directs) x de Z, qu’on
note ΓZ-
Pour trouver les autres sommets, on recherche les prédécesseurs x de
y tel que λy – λx = v(x,y); on remonte ainsi jusqu’au sommet initial.
d , e, f
d
z b 8 10
? 7
5 z
Pour d on vérifie que λz-λd=v(d,z) 10 – 2 = 10
2
5 f 6
8 ≠ 10 9 4
a
?
1
10
2
? 9 4
a, d
e
c
? f b, d ?
Pour a on vérifie que λc-λa=v(a,c) 6 – 0 = 10 7–5=7
6 ≠ 10 Pour b λf-λb=v(b,f)
2≠7
?
Pour d on vérifie que λc-λd=v(d,c) 6–2=4
?
Pour d λf-λd=v(d,f) 7–2=5
On retient d 4=4
5=5
d a, b On retient encore d
? ?
Pour a λd-λa=v(a,d) 2–0=2 Pour b λd-λb=v(b,d) 2 – 5 = 8
On retient a 2=2 -3 ≠ 8
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 95
Civil
Chap. III Théorie des graphes et
applications
III.5.2. Chemin de valeur maximale
ère
étape : Idem que pour le chemin de valeur minimale
me
étape : - Affecter provisoirement au sommet initial la valeur λa=0
- Aux autres sommets on affecte la valeur λx=-α (x ≠ a)
3ème étape : Cette étape consiste à calculer les valeurs successives de λx de
la
a) Sous-étapemanière suivante :l’ensemble des descendants directs du
1 : - Déterminer
sommet
initial a ; on les note Γa+
- Remplacer λy par λa +v(a,y), ssi λy - λa <v(a,y)
b) Sous-étape 2 : - Déterminer l’ensemble des descendants directs du
sommet
suivant b ; on les note Γb+
- Remplacer λy par λb +v(b,y), ssi λy - λb <v(b,y)
4ème et 5ème étape : Rechercher les chemins de valeur maximale
2
E
∞ D ∞
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 98
Civil
Chap. III Théorie des graphes et
applications
II.6. Recherche du plus court « trajet » : Algorithme de Dijkstra
2ème étape : sélectionner le sommet correspondant au plus court trajet
(l’encadrer ou le mettre en surbrillance), identifier ses sommets adjacents
et calculer le poids du trajet total pour s’y rendre en partant du sommet
initial A
Partant de F nous 10A
pouvons aller vers
B
0
C, D et E;
En allant vers C le
poids total du trajet A 10 5
∞
sera de 12; on C 12F
barre l’infini et on
note 12F 9 3
8
9A 13
F 4
15
5
2
E
D
∞ 24F ∞ 14F
3ème étape : De tous les sommets non encore sélectionnés, identifier et
sélectionner celui de poids minimal et reprendre l’étape N°2
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 99
Civil
Chap. III Théorie des graphes et
applications
II.6. Recherche du plus court « trajet » : Algorithme de Dijkstra
De tous les sommets non encore
sélectionnés, B est le sommet de De tous les sommets non encore
faible poids : on le sélectionne sélectionnés, C est le sommet de
faible poids : on le sélectionne
2
De D on ne peut plus aller E
qu’en E et le poids sera de D
16
2
E
D
Sommet retenu
Recherches successives à chaque étape
A B C D E F
Départ
0 +∞ +∞ +∞ +∞ +∞ A0
De A vers… 10 +∞ +∞ +∞ 9A F
De F vers…
A 9A10A
10 12 14 24 B
De B vers… A F
12 F F
14 23 C 12F
F F B
De C vers… 14 23 D 14F
F B
De D vers… 16 D E 16D
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 101
Civil
SEANCE DES TRAVAUX PRATIQUES
Programme linéaire primal et dual
Exercice 1 : Écrire et résoudre le programme dual du programme
suivant
x1 2 1
Max Px x1 x2
x1 x2 3 2
x1 x2 1
Règles de passage d’un programme primal à un programme dual
a) Le nombre de variables du dual est égal au nombre de contraintes hors
contraintes logiques du primal et vice-versa;
b) Le vecteur coefficient de la fonction objectif du primal devient vecteur
second membre des contraintes du dual et vice-versa;
c) Les contraintes dans le dual sont de sens opposé à celles du primal;
d) Les variables du dual comme celles du primal ne peuvent être
négatives;
e) Si le primal est un problème à max, le dual est un problème à min, et
on montre qu’à l’optimum, la valeur de la fonction objectif de l’un égale à
la valeur de la fonction objectif de l’autre.
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 102
Civil
SEANCE DES TRAVAUX PRATIQUES
Programme linéaire primal et dual
Exercice 1 : Écrire et résoudre le programme dual du programme
suivant
x1 2
1
Max Px x1 x2
x1 x2 3 2
x1 x2 1
- Deux variables dans le primal deux contraintes dans le dual
(règle a)
- Contraintes de sens opposé (règle c)
1
- Vecteur coefficient de la fonction objectif devient vecteur second
membre des contraintes (règle b) 2
Dy 2 y1 3 y 2 y3
- Vice-versa (règle b) 1
Min Dy 2 y1 3 y 2 y3
- Max de vient Min (règle b) 1
- Vice-versa (règle a) y1 y2 y3 5
2 x1 1; x2 2 Max Px
2
Résolution y2 y3 1
3 1 5
y1 0; y2 ; y3 Min D y
4 4 2
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 103
Civil
SEANCE DES TRAVAUX PRATIQUES
Exercice 2 : Résolution des équations avec MS Excel
Fonction : « Valeur cible »
On connaît la valeur numérique résultat d'une équation et on cherche les valeurs des inconnues
Principe : Considérer l’équation comme une formule d’Excel et les
inconnues comme des références à des cellules
Utiliser la fonction « valeur cible » qui fait varier la valeur d’une cellule
spécifiée jusqu’à ce qu’une formule dépendant de cette cellule prenne
la valeur souhaitée
1°: Renseigner les zones cellule à définir, Valeur à atteindre, Cellule à
modifier (réf ou non) et valider
2°: Choisir la commande valeur cible (menu outils)
3°: Le bouton Pause permet de rechercher pas à pas
4°: Lorsque la valeur cible est atteinte, les résultats sont affichés. Sinon :
message d’erreur
5°: Pour conserver la solution trouvée, cliquer sur OK. Sinon le bouton
Annuler rétablit les valeurs d’origine.
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 104
Civil
SEANCE DES TRAVAUX PRATIQUES
L’équation peut s’écrire : x2-
Exemple : Résoudre l’équation x -x- 2
x=12
12=0
1°: Renseigner les zones et valider
2°: Choisir la commande valeur
cible (menu outils)
1) x3-2x2+x-4=0
2) 1,46x4-2,6x3-x-5=0
3) 2x – ln x – 4 = 0 (Rép. 2,45 et 0,019)
4) 2x = 4x (Rép. 0,31 et 4)
5) Log x = 1/x (Rép. 2,506)
6) 4x = cos x (Rép. 0,24)
7) x ln x -14 = 0 (Rép. 7,13)
8) 4x – 7 sin x = 0 (Rép. ±1,73 et 0)
9) ex + e-3x – 4 = 0 (Rép. 1,382 et -0,401)
- Contraintes de succession : telle tâche ne peut pas commencer avant que telle
autre ne soit terminée, ou simplement, parvenue à un certain degré d’achèvement
Contraintes : si i précède j, t i + d i t j di t j - t i
si 2/3 i précède j, ti + 2/3 di tj 2/3 di tj -ti
charpentiers
couvreurs Ne pas oublier qu’il existe toujours
plom biers plusieurs solutions (calendriers) et qu’il
m açon s’agit de trouver celle qui est optimale
0 10 20 30 40 50
4
chemins critiques (un chemin non
4
10 3 10
5 13
critique peut devenir aussi critique) 1 13 3 6 8
12
Le projet commence à 1 et se 9
6
5
7
9
13
termine à 12 17
8
4 6
Sur les arcs on marque une valeur 10
11
4
de durée (1 à 2 = 8 jours) 7
Pour déterminer le chemin critique on détermine les dates au plus tôt et les dates au plus tard
Date au plus tôt = date au plus tôt E1 : 0 E2 : 0+8=8 E3 : (1-3) 0+13=13
événement précédent + durée (2-3) 8+4=12
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 110
Civil
Chap. III Théorie des graphes et
applications 5
9 3
E D au plus tôt D au plus tard 2 9
6
8 5
E1 0 8 6
9
4
10 3 10
E2 8 5 13
1 13 3 6
E3 13 8
12
9
6
5
7
9
E4 20
13
17
8
4 6
E5 17 10
11
4
E6 23 7
E7 37
E4 : (1-4) 0+9=9 E7 : (4-7) 20+10=30
E8 29
(3-4) 13+7=20 (6-7) 23+5=28
E9 (8-7) ? +8= ?
E5 : (2-5) 8+9=17
E10 (8-7) 29 +8= 37
E11 E6 : (2-6) 8+6=14 E8 : (6-8) 23+3=26
E12 (3-6) 13+10=23 (3-8) 13+6=19
(4-8) 20+9=29
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 111
Civil
Chap. III Théorie des graphes et
applications
9
5
3
E D au plus tôt D au plus tard 2
6
9
8 5
8 6
E1 0 9
4
10 3 10
5 13
E2 8 1 13 3 6 8
E3 13 9
12
6
5
7
9
13
E4 20 17
8
4 6
11
E5 17 10
4
7
E6 23
E7 37 E9 : (5-9) 17+3=20
E8 29 (6-9) 23+8=31 E11 : (8-11) 29+13=42
(3-9) 13+9=22 (4-11) 20+6=26
E9 33 (8-9) 29+4=33 (7-11) 37+4=41
E10 48 E10 : (9-10) 8+6=14
E11 42 (8-10) 29+5=34
E12 : (10-12) 48+13=61
(11-10) ? + 6= ? (11-12) 42+17=59
E12 61
(11-10) 42 +6= 48
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 112
Civil
Chap. III Théorie des graphes et
applications
9
5
3
E D au plus tôt D au plus tard 2
6
9
8 5
8 6
E1 0 9
4
10 3 10
5 13
E2 8 1 13 3 6 8
E3 13 9
12
6
5
7
9
13
E4 20 17
8
4 6
11
E5 17 10
4
7
E6 23
E7 37 38 Date au plus tard = date au plus
tard événement suivant - durée (8-7) 38 – 8 = 30
E8 29 29
E11 : (11-12) 61-17=44 E8 : (8-7) ? – 8 = ?
E9 33 43
(11-10) ? - 6= ? (8-9) 43 – 4 = 39
E10 48 48 (11-10) 48 - 6= 42
(8-10) 48 – 5 = 43
E11 42 42 E : (10-12) 61-13=48
10
(8-11) 42 – 13 = 29
E12 61 61 E9 : (9-10) 48 - 5=43 E7 : (7-11) 42 - 4= 38
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 113
Civil
Chap. III Théorie des graphes et
D au plus tôt
applications 5
E D au plus tard
2 9
E1 0 0 6
10
E2 8 9 1 13 3 6 8
E3 13 13 12
E4 20 20 4
11
E5 17 40 7
E6 23 26
E6 : (6-9) 43 – 8 = 35 E3 : (3-4) 20 – 7 = 13
E7 37 38 (6-8) 29 – 3 = 26 (3-6) 26 – 10 = 16
E8 29 29 (3-8) 29 – 6 = 23
E9 33 43
(6-7) 38 – 5 = 33
E2 : (2-3) 13 – 4 = 9
E5 : (5-9) 43 – 3 = 40 (2-5) 40 – 9 = 31
E10 (2-6) 26 – 6 = 20
E11
48
42
48
42 E4 : (4-8) 29 – 9 = 20 E1 : (1-2) 9 – 8 = 1
E12 61 61
(4-7) 38 – 10 = 28
(4-11) 42 – 6 = 36
(1-3) 13 – 13 = 0
(1-4) 20 – 9 = 11
Les événements qui sont sur le chemin critique sont donc : E 1 - E3 - E4 - E8 - E10 - E11 - E12
Cours de Recherche Opérationnelle destiné aux étudiants de 1 er Master Ingénieur 114
Civil
FIN DU COURS
THEORIQUE