Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Oprationnelle I
L. Horchani
E.P.T/ Hiver 2015
Mr F a organis sa tourne
3
Recherche Oprationnelle
Ce que nous venons de voir, cest un problme typique de la
Recherche Oprationnelle, appel le problme du voyageur
de commerce (P.V.C)
La Recherche Oprationnelle (RO) est la discipline des
mathmatiques appliques qui traite des questions
dutilisation optimale des ressources en entreprise.
Exemples de problme de RO
trouver la meilleure tourne (P.V.C)
2.
Modlisation.
3.
fournie).
4.
PLAN
10
Bibliographie
M. Gondran et M. Minoux, Graphes et algorithmes, Eyrolles,
1978.
B. Korte et J. Vygen, Combinatorial optimization, 2nd ed,
Springer, 2002.
G. Lvy, Algorithmique combinatoire, Dunod, 1994.
J. F. Maurras, Programmation linaire, complxit, Springer,
2002.
V. Chvtal, Linear programming, W. H. Freeman, New York,
1983.
G. Dantzig et M. Thapa, Linear programming, Springer, 1997.
11
Modlisation
Plusieurs problmes dans diffrentes disciplines (Rseaux
informatique, tlcommunications, chimie, applications
industrielles, )
Un graphe peut reprsenter simplement la structure, les
connexions, les cheminements possibles dun ensemble
complexe comprenant un grand nombre de situations
Un graphe est une structure de donnes puissante pour
linformatique
12
13
Exp:
1
S = { 1, 2, 3, 4, 5 }
A = { (1, 2), (1, 3), (2, 3), (3, 2), (4, 4), (4, 5) }
1
14
3
ou
16
Exemple:
d +(3)=|S(3)|=2.
d -(i) = |P(i)|= 2.
17
Deux sommets sont adjacents (ou voisins) sils sont joints par un
arc.
Deux arcs sont adjacents sils ont au moins une extrmit
commune.
Un arc (i, i) est appel une boucle.
Un chemin dans un graphe orient est une suite (x,,y) de
sommets 2 2 distincts telle que si i suit j dans cette suite (i,j) est
un arc
0
18
19
20
21
1 1 1
M 1 0 0
0 1 0
1
2
Place mmoire : n
Si le graphe est valu (par exemple, si des distances sont associes aux
arcs), on peut utiliser une matrice dentiers, de telle sorte que mij soit gal
la valuation de larc (i; j) si (i; j) A. Sil nexiste pas darc entre 2
sommets i et j, on peut placer une valeur particulire .
2
1
8
2 8 5
M 3 0 0
0 2 0
22
1 si i et j adjacents ;
0 sinon
23
3. Matrice dincidence:
Soit le graphe G = (S;A). On suppose que les sommets de S sont
numrots de 1 n, avec n =|S|et A={ak, 1km}. La reprsentation
par matrice dincidencee de G consiste en une matrice C de taille n
m telle que:
1 si i est la source de uk;
cik=
-1 si i est la destination de uk;
0 sinon
u1
1
u2
u4
u5
u3
1 1 0 0 0
1
0
1
1
0
C
0 1 1 0 1
0
0
0
Place mmoire : n x m
24
4. Liste de successeur:
La reprsentation par liste de successeur : il s'agit dun tableau +(S) de
n liste chanes le tableau est indic par les sommets ;la liste +(i)
contient tout les successeurs de i
25
1
2
1
2
3
1
3
12
2
8
1
2
3
28
35
13
22
26
27
A(S) est form de toutes les artes de G ayant leurs deux extrmits
dans S. Autrement dit, on obtient G' en enlevant un ou plusieurs
28
3-CONNEXIT
Dfinition:
Un graphe G = (S,A) est dit simplement connexe ou connexe si :
, i,j S, il existe une chane entre i et j.
Un graphe orient est connexe si le graphe non orient associ est
connexe.
Dfinition:
Une composante connexe C dun graphe G = (S,A) est un sousensemble maximal de sommets tels que deux quelconques dentre
eux soient relis par une chane : si i C, alors :
j C, il existe une chane reliant i j,
k S \ C, il nexiste pas de chane reliant i k.
29
30
EXEMPLE:
Graphe connexe
5
7
31
EXEMPLE:
Graphe non connexe
5
7
32
Dfinition:
Un graphe G = (S,A) est fortement connexe si : i, j S, il existe
un chemin entre i et j.
Dfinition:
Une composante fortement connexe C f dun graphe G = (S,A) est
un sous-ensemble maximal de sommets tels que deux quelconques
dentre eux soient relis par un chemin: si i C f, alors
j C f, il existe un circuit passant par i et j,
k S \ C f, il nexiste pas de circuit passant par i et k.
34
EXEMPLE:
Graphe fortement
connexe
35
EXEMPLE:
37
38
Exemple:
Nous considrons les 2 graphes suivants. Pour chacun deux, dtes sil
est connexe ( resp.fortement connexe). Si non, donnez leurs
composantes connexes ( resp.fortement connexe).
3
3
5
39
33
4
2
5
Un sommet d'un graphe est un point d'articulation si sa
suppression augmente le nombre de composantes connexes du
graphe. Plus gnralement, un ensemble d'articulation d'un graphe
est un ensemble de sommets dont la suppression augmente le
nombre de composantes connexes du graphe.
40
41
1- INTRODUCTION
Problmes de Transport
Jeux (graphe dont les sommets sont les tats du jeu et les arcs les
transitions lgales)
Investissements, ordonnancements
Navigation
42
43
2-Formulation Du Problme
Soit G = ( S, A, c ) un graphe orient valu ( rseau ).
c : U IR
cu valeur, poids, ou cot de l'arc u.
c() cu
u
c(* ) min
c() o chemin de x y
44
3
1
Un PCC de s d ?
*:s ac bd ; c(*)=8
5
5
a
3
-3
Un PCC de s d ? !
il nen existe pas !!
d
45
Condition dexistence
j
k
w
c(w)<0
On a : c( ) = c( ' ) + c(w)
Si c(w)<0, il n'existe pas de chemin minimal de i j.
48
49
ALGORITHME DE MOORE-DIJKSTRA
1- Initialisation:
S1 2,3,..., n , (1) 0
i S1
c1i
(i)
si 1, i U
si non
2- Slectionner j S1 / ( j) min(i )
iS1
Retour 2
51
7
2
S1
{1}
S1{4}
54
74
S1{3}
54
74
S1{2}
54
62
S1{5}=
S
54
62
4 3
Exp: P.C.C de 1 5
: 1 4 2
5
52
S1
{s}
S1{a}
8a
4a
S1{c}
8a
4a
9c
S1{b}
8a
4a
9c,b
S1{d}=
S
8a
4a
9c,b
Exp: P.C.C de s d
Il en existe 2 :
: s a b d c()=c()=9
: s a b d
53
54
ALGORITHME DE BELLMAN
1- Initialisation:
Posons 0 (1) 0 et i 0 (i)
k 1
2- Faire
k (1) : 0,
i 1, k (i ) : min ( k 1 (i ), k 1 ( j) c ji )
( j,i )U
Sinon
Si k n - 1, k : k 1 et aller 2
3s
5s
3s
8a
4a
10c
3s
8a
4a
7b
3s
8a
4a
7b
5
s
-1
-1
5
c
3
d
-3
31
56
3
5
c
3
-3
3s
5s
3s
8a
4a
10c
3s
7b
4a
9b
3s
6b
4a
8b
i S / 3 (i) 4 (i)
Dtection dun circuit absorbant
57
58
3-S=S\ Sk
Si S= FIN
Sinon k=k+1 , retour 2
59
EXEMPLE:
7
4
4
4
2
10
5
2
1
3
S1={3}, r(3)= 1
S2={2}, r(2)=2
S3={6}, r(6)= 3
S4={4,5}, r(4)= r(5)=4
-3
S5={7}, r(7)= 5
S6=
4
4
4
Recherche du P.C.C de 1 7
aprs avoir arrang les sommets 7
par rang:
10
2
5
-3
Algorithme de Bellaman:
11
71
11
63
42
112
33
11
63
32
96
33
135
11
63
32
86
33
124
11
63
32
86
33
124
P.C.C de 1 7:
: 1 3 2 6 4 7
c()=12
61
3s
8a
4a
7b
3s
8a
4a
7b
5
s
-1
-1
5
c
-3
3
d
62
4
4
4
Recherche du P.C.C de 1 7
aprs avoir arrang les
sommets par rang:
10
5
2
5
-3
1
3
11
63
32
86
33
124
11
63
32
86
33
124
P.C.C de 1 7:
: 1 3 2 6 4 7 c()=12
63
L (l ij )1i , j n
L* (l*ij )1i , jn
l ij si (i,j) U
o l ij 0 si i j
sinon
c * o * est le p.c.c de i j
o l*ij
si un tel chemin
64
64
L(k ) (l k ij )1i , jn
L(0) (l 0ij )1i , jn (l ij )1i , jn
l1ij
lkij
65
66
66
ALGORITHME DE FLOYD-WARSHALL
pour k=1 n
pour i=1 n sauf k
si lik + lki < 0 FIN % prsence dun circuit ngatif
si lik alors
67
Complexit : O(n3).
Exemple:
3
1
-2
1
3
4
4
3
68
L(0)
0 3 3
2
0
2
2
2 0 1
4 4 0
L(1)
L(2)
3 3
0 2 2
1 0 1
4 4 0
3 5 3
0 2 2
1 0 1
4 4 0
P (0)
1 0 1
2 2 2
0 3 3
4 4 4
P (1)
1 0 1
2 2 2
1 3 3
4 4 4
P (2)
1 2 1
2 2 2
1 3 3
4 4 4
69
L(3)
3 5 3
0 2 2
1 0 1
4 4 0
L(4)
3 5 3
0 2 2 *
L
1 0 1
4 4 0
P (3)
P (4)
1 2 1
2 2 2
1 3 3
4 4 4
1 2 1
2 2 2
P*
1 3 3
4 4 4
70
Finalement , : 4 3 1
71