Sunteți pe pagina 1din 37

Table des matires

1 Programmation linaire
2 La thorie des graphes
2.1
2.2

2.3

2.4

2.5
2.6

Dnitions et premires exemples . . . . . . . . . . . . . . .


Reprsentation non graphique d'un graphe . . . . . . . . . .
2.2.1 Reprsentation par un tableau . . . . . . . . . . . .
2.2.2 Dictionnaire des prdcesseurs (ou successeurs) . . .
2.2.3 Reprsentation matricielle (ou matrice d'adjacences)
Coloration d'un graphe . . . . . . . . . . . . . . . . . . . . .
2.3.1 Dnitions . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2 Exemples d'applications . . . . . . . . . . . . . . . .
2.3.2.1 Problme d'emploi du temps . . . . . . . .
2.3.2.2 Problme de wagons . . . . . . . . . . . . .
Problme du plus court chemin . . . . . . . . . . . . . . . .
2.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . .
2.4.2 Description de la mthode . . . . . . . . . . . . . . .
2.4.3 Exemple d'application . . . . . . . . . . . . . . . . .
Problme de ot : Le ot maximal . . . . . . . . . . . . . . .
Problmes d'ordonnancement de projet . . . . . . . . . . . .
2.6.1 Ordonnancement et planication . . . . . . . . . . .
2.6.1.1 La WBS (Work Breakdown Structure) . . .
2.6.1.2 Contraintes d'ordonnancement . . . . . . .
2.6.2 Technique d'ordonnancement . . . . . . . . . . . . .

1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

6
9
9
10
10
11
11
13
13
15
16
16
16
17
18
24
24
24
25
27

Chapitre 1

Programmation linaire

Chapitre 2

La thorie des graphes


Sommaire

2.1 Dnitions et premires exemples . . . . . . . . . . . . . . .


2.2 Reprsentation non graphique d'un graphe . . . . . . . . .

6
9

2.3 Coloration d'un graphe . . . . . . . . . . . . . . . . . . . . .

11

2.4 Problme du plus court chemin . . . . . . . . . . . . . . . .

16

2.5 Problme de ot : Le ot maximal . . . . . . . . . . . . . .


2.6 Problmes d'ordonnancement de projet . . . . . . . . . . .

18
24

2.2.1
2.2.2
2.2.3

Reprsentation par un tableau . . . . . . . . . . . . . . . . . 9


Dictionnaire des prdcesseurs (ou successeurs) . . . . . . . . 10
Reprsentation matricielle (ou matrice d'adjacences) . . . . . 10

2.3.1
2.3.2

Dnitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Exemples d'applications . . . . . . . . . . . . . . . . . . . . . 13

2.4.1
2.4.2
2.4.3

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Description de la mthode . . . . . . . . . . . . . . . . . . . . 16
Exemple d'application . . . . . . . . . . . . . . . . . . . . . . 17

2.6.1
2.6.2

Ordonnancement et planication . . . . . . . . . . . . . . . . 24
Technique d'ordonnancement . . . . . . . . . . . . . . . . . . 27

Chapitre 2. La thorie des graphes

Introduction
L'histoire de la thorie des graphes dbute peut-tre avec les travaux d'Euler
au XVIIIe sicle et trouve son origine dans l'tude de certains problmes, tels que
celui des ponts de Knigsberg (les habitants de Knigsberg se demandaient s'il tait
possible, en partant d'un quartier quelconque de la ville, de traverser tous les ponts
sans passer deux fois par le mme et de revenir leur point de dpart), la marche
du cavalier sur l'chiquier ou le problme de coloriage de cartes.
La thorie des graphes s'est alors dveloppe dans diverses disciplines telles
que la chimie, la biologie, les sciences sociales. Depuis le dbut du XXe sicle, elle
constitue une branche part entire des mathmatiques, grce aux travaux de Knig, Menger, Cayley puis de Berge et d'Erds.
De manire gnrale, un graphe permet de reprsenter la structure, les connexions
d'un ensemble complexe en exprimant les relations entre ses lments : rseau de
communication, rseaux routiers, interaction de diverses espces animales, circuits
lectriques,. . .
Les graphes constituent donc une mthode de pense qui permet de modliser
une grande varit de problmes en se ramenant l'tude de sommets et d'arcs. Les

5
derniers travaux en thorie des graphes sont souvent eectus par des informaticiens,
du fait de l'importance qu'y revt l'aspect algorithmique.

Chapitre 2. La thorie des graphes

2.1 Dnitions et premires exemples


Dnition. 1

graphe non orient

Un
est un couple form de deux ensembles nis : un ensemble X = {x, x2 , . . . , xn } dont les lments sont appels sommets, et un ensemble
ni A = {a1 , a2 , . . . , am } partie de l'ensemble des liens reliant deux lments de X ,
appel des artes. On notera a = {x, y} lorsque a est l'arte reliant x y (ou y
x). On dit aussi que l'arte a est d'extrmits x et y . les sommets x et y sont des
adjacentes.

Figure 2.1  Graphe non orient


On parle de

graphe orient quand les artes ont un sens :

Figure 2.2  Graphe orient


Terminologie de la thorie des graphes






Ordre d'un graphe : le nombre de sommets de ce graphe.


Degr d'un sommet : le nombre d'artes relies ce sommet.
Chane : suite nie de sommets relis entre eux par des artes.
Chane simple : chane qui n'utilise pas deux fois la mme arte.
Chane eulrienne : chane simple passant par toutes les artes d'un graphe.

2.1. Dnitions et premires exemples

Hamiltonien et
eulrien
















Hamiltonien et non
eulrien

Non hamiltonien et
eulrien

Figure 2.3 

Non hamiltonien et
non eulrien

Chane hamiltonienne : chane simple passant par tous les sommets d'un
graphe une et une seule fois.
Cycle : chane qui revient son point de dpart.
Cycle eulrien : cycle simple passant par toutes les artes d'un graphe une
et une seule fois.
Cycle hamiltonien : cycle simple passant par tous les sommets d'un graphe
une et une seule fois.
Chemin : une suite de sommets relis par des arcs dans un graphe orient.
Circuit : un chemin dont les sommets de dpart et de n sont les mmes.
Arbre : graphe connexe sans cycle simple et sans boucle.
Graphe eulrien : graphe qui possde un cycle eulrien.
Graphe hamitonien : graphe qui possde un cycle hamiltonien.
Graphe valu : graphe o des rels sont associs aux artes (dans ce cours
les rels sont positives).
Longueur d'une chane : nombre des artes qui composent la chane.
Valeur d'une chane : somme des valeurs des artes (arcs) d'une chane d'un
graphe valu.
Distance entre deux sommets : longueur de la plus courte chane joignant
ces deux sommets.
Diamtre d'un graphe : maximum des distances entre les sommets d'un
graphe.

Thorme. 1

Un graphe simple connexe G = (V, E) est eulrien si et seulement


si le nombre de sommet de degr impaire est 0 ou 2.

Exemple. 1

Soient les deux graphes suivants :

G1 n'est pas eulrien, le degr de ses sommets n'est pas tous pair.
G2 est eulrien, un cycle eulrien est par exemple : a, b, c, d, c, e, d, b, e, a, e, a

Exemple. 2

Le problme des ponts de Knigsberg

Chapitre 2. La thorie des graphes

(G1 )

(G2 )

La ville de Knigsberg en Prusse (maintenant Kaliningrad) comprenait 4 quartiers, spars par les bras du Prgel. Les habitants de Knigsberg se demandaient
s'il tait possible, en partant d'un quartier quelconque de la ville, de traverser tous
les ponts sans passer deux fois par le mme et de revenir leur point de dpart.

Figure 2.4  Knigsberg en 1652


Le plan de la ville peut se modliser l'aide du graphe ci-dessous, les quartiers
sont reprsents par les 4 sommets, les 7 ponts par des artes : La question pose

devient alors : ce graphe est-il eulrien ? Le thorme d'Euler rpond immdiatement


de faon ngative aux habitants de Knigsberg.

Exemple. 3

Est-il possible de tracer une courbe, sans lever le crayon, qui coupe

2.2. Reprsentation non graphique d'un graphe

chacun des 16 segments de la gure suivante exactement une et une seule fois ?

Figure 2.5 
Considrons le multi-graphe dont les sommets sont les 6 rgions de la gure, a,
b, c, d, e, f, et dont les artes sont les 16 segments qui sont frontires entre les
direntes rgions.
Le problme consiste construire un cycle eulrien, ce qui est impossible, car le
sommet a ; par exemple, est de degr 9.

2.2 Reprsentation non graphique d'un graphe


Les graphes peuvent tre reprsents de diverses manires non graphique dont
en citant 3 type de reprsentations, de deux graphes ci-dessous :

2.2.1 Reprsentation par un tableau


Les croix dsignant les arcs (ou artes) entre sommets. Elles peuvent tre remplaces par des valeurs dsignant les longueurs des arcs (ou artes). Les tableaux
suivants reprsentent les graphes prcdents :

10

Chapitre 2. La thorie des graphes

Graphe 1

A
B
C
D
E

Graphe 2

A
B
C
D
E
F

Graphe 1

Graphe 2

2.2.2 Dictionnaire des prdcesseurs (ou successeurs)


Il dresse pour chaque point les points qui le prcdent dans le graphe (ou qui le
succde), cette reprsentation n'a aucun sens pour les graphes non orients. Pour
le Graphe 1 cette reprsentation est la suivante :

X
A
B
C
D
E

successeurs
D
A
D, E
B
A, D
Graphe 1

X
A
B
C
D
E

Prdcesseurs
B, E
D
A, C, E
C
Graphe 2

Les deux tableaux sont quivalents.

2.2.3 Reprsentation matricielle (ou matrice d'adjacences)


On peut reprsenter un graphe simple par une matrice d'adjacences, c'est une
matrice carre o les termes dsignent la prsence d'un arc (che) entre deux sommets donns, un " 1 " la position (i, j) signie que le sommet i est adjacent au
sommet j .

2.3. Coloration d'un graphe

A
B
C
D
E

A
0
0
0
1
0

11
B
1
0
0
0
0

C
1
1
0
0
0

D
0
1
1
0
0

E
0
0
0
1
0

A=

0
0
0
1
0

1
0
0
0
0

1
1
0
0
0

0
0
1
0
0

0
0
0
1
0

Matrice d'adjacences
Dans l'exemple suivant un graphe orient et la matrice associe :
Dans cet exemple, le sommet A est de degr 3. Le sommet D est de degr 4.
Cette matrice a plusieurs caractristiques :
1. Elle est carre.
2. Il n'y a que des zros sur la diagonale. Un "1" sur la diagonale indiquerait
une boucle.
3. Une fois que l'on xe l'ordre des sommets, il existe une matrice d'adjacences
unique pour chaque graphe. Celle-ci n'est la matrice d'adjacences d'aucun
autre graphe.

Exemple. 4

Calculer les matrices M 2 et M 3 . M est la matrice d'adjacences du


graphe de l'exemple ci-dessus. Pour chacune de ces matrices, quoi correspondent
les nombres obtenus ?

2.3 Coloration d'un graphe


2.3.1 Dnitions
Soit G = (V, E) un graphe. Un sous-ensemble S de V est un stable s'il ne
comprend que des sommets non adjacents deux deux. Dans le graphe ci-dessous,
{v1 , v2 } forment un stable ; {v2 , v4 } aussi, ainsi que {v2 , v5 } et {v3 , v5 }.
Le cardinal du plus grand stable est le nombre de stabilit de G on le note ? (G).
Dans le graphe ci-dessous, on a ? (G) = 2.
La coloration des sommets d'un graphe consiste aecter tous les sommets de
ce graphe une couleur de telle sorte que deux sommets adjacents ne portent pas la
mme couleur. Une coloration avec k couleurs est donc une partition de l'ensemble

12

Chapitre 2. La thorie des graphes

des sommets en k stables.


Le nombre chromatique du graphe G, not ?(G), est le plus petit entier k pour
lequel il existe une partition de V en k stables.
Sur le graphe ci-dessous, on a eu besoin de trois couleurs (notes 1, 2 et 3)
pour colorer les sommets de sorte que deux sommets adjacents aient des couleurs
direntes. On a donc trois stables : {v1 , v2 }, {v3 , v5 } et {v4 }. On ne peut pas utiliser
moins de couleurs, cause des cycles {v1 , v4 , v5 } et {v1 , v3 , v4 }

Remarquons enn que le sommet v2 aurait aussi pu tre color "3". La coloration
minimale n'est donc pas forcment unique.

Exemple. 5

Dterminons le nombre chromatique du graphe G suivant :

2.3. Coloration d'un graphe

13

Considrons la partition de l'ensemble des sommets de G en sous-ensembles :


S1 = a, d ; S2 = c, f ; S3 = b, e ;
On a donc (G) 3. D'autre part, G contient un cycle d'ordre 3, donc (G) 3.
Finalement, le nombre chromatique de G est donc 3. La partition prcdente en
donne une 3-coloration :

Comment colorer un graphe ?


1. Reprer le degr de chaque sommet.
2. Ranger les sommets par ordre de degrs dcroissants (dans certains cas plusieurs possibilits).
3. Attribuer au premier sommet (A) de la liste une couleur.
4. Suivre la liste en attribuant la mme couleur au premier sommet (B) qui ne
soit pas adjacent (A).
5. Suivre (si possible) la liste jusqu'au prochain sommet (C) qui ne soit adjacent
ni A ni B .
6. Continuer jusqu' ce que la liste soit nie.
7. Prendre une deuxime couleur pour le premier sommet (D) non encore colori
de la liste.
8. Rpter les oprations 4 7.
9. Continuer jusqu' avoir color tous les sommets.

2.3.2 Exemples d'applications


2.3.2.1 Problme d'emploi du temps
Une universit doit organiser les horaires des examens. On suppose qu'il y a 7
preuves planier, correspondant aux cours numrots A, B, C, D, E, F, G et que
les paires de cours suivantes ont des tudiants communs : A et B, A et C, A et D, A

14

Chapitre 2. La thorie des graphes

et G, B et C, B et D, B et E, B et G, C et D, C et F, C et G, D et E, D et F, E et
F, E et G et F et G. Comment organiser ces preuves de faon qu'aucun tudiant
n'ait passer deux preuves en mme temps et cela sur une dure minimale ?

Solution :
Construisons le graphe G dont les sommets A, B, C, D, E, F, F, G, une arte relie
deux de ses sommets lorsque les deux cours correspondant possdent des tudiants
communs :

1. On range les sommets du plus haut degr au plus petit (on ne tient pas compte
de l'ordre pour les sommets de mme degr).

Sommet
derg

B
5

C
5

D
5

G
5

A
4

E
4

F
4

On choisit une couleur pour le premier sommet de la liste, Le rouge par exemple :
Sommet
derg

B
5

C
5

D
5

G
5

A
4

E
4

F
4

On colorie en rouge les sommets non adjacents B et non adjacents entre eux : F
Sommet
derg

B
5

C
5

D
5

G
5

A
4

E
4

F
4

2- On ritre le procd vu au 1 en prenant une autre couleur pour le premier


sommet non colori de la liste. On colorie C en bleu.
Sommet
derg

B
5

C
5

D
5

G
5

A
4

On colorie ensuite E en bleu.

E
4

F
4

2.3. Coloration d'un graphe


Sommet
derg

B
5

C
5

D
5

G
5

A
4

E
4

15
F
4

3- On ritre le procd. On colorie D en vert puis G.


Sommet
derg

B
5

C
5

D
5

G
5

A
4

E
4

F
4

4- Enn A en noire
Donc on a 4 stables S1 = {B, F }, S2 = {C, E}, S3 = {D, G} et S4 = {A}.
Les examens peuvent tre rpartis en 4 priodes, de la manire suivante :
la 1re priode, preuves des cours 2 et 6,
la 2me priode, preuve du cours 3et 5,
la 3me priode, preuves des cours 4 et 7,
la 4me priode, preuves des cours 1.

2.3.2.2 Problme de wagons


On veut transporter des produits chimiques par le rail. A, B, C, D, E, F, G et
H dsignent huit produits chimiques. Dans le tableau ci-dessous, une croix signie
que les produits ne peuvent pas tre entreposs dans le mme wagon, car il y aurait
risque d'explosion :

A
A
B
C
D
E
F
G
H

Quel nombre minimum de wagons faut-il ?

Solution :
Construisons le graphe G dont les sommets sont les huit produits chimiques tel
que deux de ses sommets sont relis lorsque les produits associs ces sommets ne

16

Chapitre 2. La thorie des graphes

peuvent pas tre entreposs dans le mme wagon. Le nombre minimum de wagons
est gal au nombre chromatique de ce graphe.

La partition minimale des sommets est :

S1 = {A, E}, S2 = {B, C}, S3 = {D, F, G}, S4 = {H}


Il faut donc 4 wagons.

2.4 Problme du plus court chemin


2.4.1 Introduction
Beaucoup de problmes peuvent tre modliss en utilisant des graphes valus.
Les problmes de cheminement dans les graphes, en particulier la recherche du
plus court chemin, comptent parmi les problmes les plus anciens de la thorie des
graphes et les plus importants par leurs applications : cot de transport, temps de
parcours, problme de trac,. . .Les algorithmes de recherche de plus court chemin
seront dirents selon les caractristiques du graphe.
Une mthode qui est largement utilis pour trouver la plus court chemin dans
un graphe est celle de prsente par R. Bellman. Cette mthode a t initialement
consacre aux problmes conomiques, mais elle peut tre applique d'autres domaines.

2.4.2 Description de la mthode


Pour dterminer le plus court chemin dans un graphe l'algorithme de Bellman
consiste suivre les tapes suivantes :
1. Les sommets x0 sans prcdents sont dit du 'premier niveau' ou niveau de
depart : on leur aecte une fonction cot (ou distance), note m, gale 0 :
m(x0 ) = 0

2.4. Problme du plus court chemin

17

2. Examiner les noeuds x1 adjacents aux noeuds x0 (ceux de premier niveau).


Pour chacun, la fonction m se calcul alors en ajoutant la distance partir du
noeud source par : m(x1 ) = d(x1 , x0 ) + m(x0 ) = d(x1 , x0 )
3. Au niveau i + 1 , on continue l'examination des noeuds adjacents ceux
visits dans le niveau i prcedent. Quand un noeud x( i + 1) a des liaisons avec
plusieurs prcdents, la valeur de m(x( i + 1)) se calcule alors en retenant le
noeud xi le plus proche, en d'autre terme : m(xi+1 ) = min{d(xi+1 , xi )+m(xi ),
xi noeud prcdent xi+1 }
4. Rpter l'tape 3, niveau aprs niveau jusqu' ce que le noeud de destination
soit atteint.

2.4.3 Exemple d'application


La Figure 2.6 montre la distance entre 10 villes voisines avec l'unit de (1=100
kilomtre). Le problme est de trouver le plus court chemin entre la ville de dpart
(a) et la ville de destination (j).
Ce problme est souvent rencontr dans d'autres situations direntes, par
exemple on peut associer chaque arc de graphe le montant payer au point
de page, et le but dans ce cas est de trouver le tragi dont le cout est minimal.

Figure 2.6  Distances entre les villes


Niveau 1 :

Point de dpart est (a) donc m(a)=0

Niveau 2 : sommets (a) et (b)


Les sommets b et c sont adjacents a. Pour ces noeuds on trouve la distance par
l'ajout de m(a) avec la distance des noeuds partir de a. On alors :
m(b) = m(a) + d(a, b) = 0 + 4 = 4

18

Chapitre 2. La thorie des graphes

m(c) = m(a) + d(a, c) = 0 + 6 = 6

Niveau 3 : sommets (d), (e) et (f)


m(d) = m(b) + d(b, d) = 4 + 6 = 10
m(e) = min{m(b) + d(b, e), m(c) + d(c, e)} = min{4 + 2, 6 + 2} = min{6, 8} = 6
m(f ) = m(c) + d(c, f ) = 6 + 3 = 9

Niveau 4 : sommets (g), (h) et (i)


m(g) = m(d) + d(d, g) = 10 + 2 = 12
m(h) = m(e) + d(e, h) = 6 + 6 = 12
m(i) = min{m(e) + d(e, i), m(f ) + d(f, i)} = min{6 + 1, 9 + 8} = min{7, 17} = 7

Niveau 5 : sommets (j)


m(j) = min{m(g) + d(g, j), m(h) + d(h, j), m(i) + d(i, j)} = min{12 + 7, 12 + 2, 7 +
3} = min{19, 14, 10} = 10
Le plus court chemin partir de a vers j est reconstitu de la n vers le dbut
comme suit : Pour le niveau 5 la ville plus la plus proche de (j) qui appartient au
plus court chemin est (i) (la distance minimal pour les trois trajets).
Pour le niveau 4 la ville plus la plus proche de (i) dans le plus court chemin est (e).
Pour le niveau 3 la ville plus la plus proche de (e) dans le plus court chemin est (b).
Pour le niveau 1 la ville plus la plus proche de (b) dans le plus court chemin est (a).
Le plus court chemin est donc a, b, e, i, j
La distance minimal d'aller de (a) (j) est de 10*100 = 1000km.

Exercice. 1

Le graphe de la gure 2.7 correspond des parcours possibles pour


aller d'un point s un point p.
Quel est le plus court chemin de s p en utilisant l'algorithme de Ford-Bellman ?

2.5 Problme de ot : Le ot maximal


Les ots permettent de modliser une trs large classe de problmes. Leur interprtation correspond la circulation de ux physique sur un rseau : distribution

2.5. Problme de ot : Le ot maximal

19

Figure 2.7 
lectrique, rseau d'vacuation, acheminement de paquets sur internet,. . .Il s'agit
d'acheminement la plus grande quantit possible de matire entre une source s et
une destination t. Les liens permettant d'acheminer les ux ont une capacit limite,
et il n'y a ni perte ni cration de la matire lors de l'acheminement.

Dnition. 2

Soit G(X, A) un graphe orient avec une valuation positive de ses


arcs : on aecte chaque arc (x, y) une valeur not positive c(x, y) souvent appele
cot.
On distingue sur le graphe deux sommets particuliers : une source s et une destination t. Les autres sommets sont les noeuds intermdiaires du rseau.

Exemple. 6

La gure 2.11 montre un graphe avec une capacit pour chaque arc :

Figure 2.8 
Donnes : Un graphe orient G(X, A), une valuation c : A R+ (c(a) est la

capacit de l'arc a).

Un ot sur le rseau G(X, A) est une application de A dans R+ telle que :
 le ot chaque arc a est infrieur la capacit de l'arc : 0 (a) c(a)
Figure 2.9

20

Chapitre 2. La thorie des graphes

Figure 2.9 

Figure 2.10 

 pour tout sommet de X \ {s, t}, ot entrant = ot sortant Figure 2.10
 la valeur du ot est le ot sortant de s (gal au ot entrant en t).
Un arc a est dit satur si (a) = c(a), sinon c(a) (a) est la capacit rsiduelle
de l'arc a. Un ot est satur si sur tout chemin de s t il existe un arc satur.

Dnition. 3

Soit G(X, A) un graphe valu possdant un seul sommet source s et


un seul sommet puits t. Une coupe dans ce graphe est une partition de ces sommets
note (Y ; Y ) telle que :
 s Y et t Y
S
 X=Y Y
T
 Y Y =
P
La
c(Y ; Y ) est dnie par c(Y, Y ) = iY,jY c(i, j).

capacit de la coupe

Exemple. 7

Soit le graphe suivant, dont la valeur associe chaque arc (i, j) est
sa capacit c(i, j).
Dans cet exemple on a :
la coupe est (Y, Y ) avec Y = {S, A, B, C, E, F } et Y = {D, G, P }
les arcs sortant sont (A, D), (B, D), (E, P ) et (F, G).
la valeur de cette coupe est c(Y, Y ) = 4 + 5 + 4 + 3 = 16.

Dtermination du ot maximal : Mthode de Ford-Fulkerson

Le problme consiste maximiser le ot d'une source (origine) s une destination t dans un rseau de transport dont les arcs sont munis de capacit ? cij . La
mthode la plus connue pour trouver le ot maximal dans un rseau de transport
est celle de Ford-Fulkerson (1956) amliore ensuite par plusieurs auteurs.

L'algorithme de Ford-Fulkerson (procdure de marquage)


1. Initialisation du ot par un ot ralisable (ou trivial) c'est le ot nul,

2.5. Problme de ot : Le ot maximal

21

Figure 2.11 
2. Marquage des sommets :

a)
b)

Marquer (+) le sommet source s

c)

On marque (-) un sommet d'arc qui origine et dont l'extrmit est dj


marqu (+/-) et sur lequel peut dmineur.

d)

Rpter (b) et (c) jusque ce que le puits soit marqu (le ux peut s'augmenter), ou on ne peut pas marquer le puits, et dans ce cas le ot est
maximal.

On marque (+) un sommet qui extrmit d'un arc dont l'origine est dj
marqu (+/-) et sur lequel le ux peut s'augmenter.

3. Dans la chaine amliorante l'augmentation maximal de ot sur ce chemin est


gal

= min{ , + }
= min{c(a) (a), a A+ } A+ les arcs de sens directs
+ = min{(a), a A } A les arcs de sens inverses.

Exemple. 8

En utilisant la mthode de Ford-Fulkerson, trouver le ot maximal


dans ce rseau.
Au dpart le ot est nul Puis, par la procdure de marquage on trouve la chaine
amliorante (chemin d'augmentation) S, A, C, P dont la capacit est min{5, 4, 3} =
3. On augmente le ot par 3 units le long de ce chemin
la deuxime itration, on trouve le chemin S, B, D, P de capacit rsiduelle 3.
On augmente le ot par 3 units le long de ce chemin, on trouve

22

Chapitre 2. La thorie des graphes

Figure 2.12 

Figure 2.13 

Figure 2.14 

Figure 2.15 
Le ot est satur il n'existe aucune chaine amliorante, on ne peut marquer le
puits partir de la source. Mais il faut savoir est ce que le ot est maximal ou non.
Pour qu'un ot soit maximal il sut qu'elle existe une coupe dont la valeur est
gale le ot qui circule dans le rseau.
Pour l'exemple prcdent

2.5. Problme de ot : Le ot maximal

23

Figure 2.16 

Figure 2.17 
La coupe ayant comme arcs sortant (C,P) de capacit (3) et (B,D) de capacit
(3), la valeur de cette coupe est 6 qui gale le ot qui circule dans le rseau. Par
suit le ot est maximal.

Exercice. 2

Un rseau de transport correspond au graphe Figure 2.18 :

Figure 2.18 

1. Quelle est la valeur de ot maximal ?


2. Donner une coupe minimal associe au ot maximal.

24

Chapitre 2. La thorie des graphes

2.6 Problmes d'ordonnancement de projet


2.6.1 Ordonnancement et planication
2.6.1.1 La WBS (Work Breakdown Structure)
Ds la conception prliminaire du projet. Il s'agit de dcomposer de faon structure et prcise le projet en sous ensembles, de manire visualiser l'ensemble du
projet. Il se fait par niveau successifs jusqu' un degr optimum de dtail, an d'viter les oublis, et de permettre la consolidation des informations.
Le dcoupage de produit, ou " Product Breakdown Structure " (P.B.S) tablit
l'arborescence des dirents composants du projet. La dcomposition des produit
est eectue par niveaux, selon un principe de " liation " : pour tout produit de
niveau 'n', doivent apparatre les produits le constituant niveau 'n+1'.
Pour planier un projet, il est donc ncessaire de le dcomposer en sous-ensembles,
tches ou activits. Cette opration est appele dcomposition structure des tches
(WBS). La WBS doit inclure tous les composants ncessaires la ralisation d'un
projet et qui inuent sur sa dure et son cout : tches de conception, fabrication,
matires consommables, quipements, rapports,. . .
On peut associer directement une WBS les couts de chaque tche, les ressources
prvues ainsi que les ressources alternatives. L'laboration d'une WBS simplie
considrablement :
 La planication
 L'identication prcoce des activits critiques
 Le contrle des cots
 L'laboration des budgets

Si le nombre de tches auquel on parvient est trop lev et par consquent si cela
nuit la clart de la lecture du planning, on peut, une fois eectue ce dcoupage
minutieux, rassembler dirents tches sous un mme terme et constituer ainsi des
" work packages " ou lots de travaux. En dcoupant le projet en lments successifs depuis le haut de l'arborescence, il est possible d'identier des lments de plus
en plus simples, dont les cots, dlais et ressources deviennent plus faciles estimer.
Le degr optimal de dcomposition est atteint lorsque les trois critres sont remplis :
 La possibilit de matriser la dure d'une activit
 La connaissance des ressources requises
 La possibilit de connaitre le cot de l'activit

2.6. Problmes d'ordonnancement de projet

25

Plus la dcomposition sera ne et plus la planication et le contrle seront prcis


mais plus la coordination entre tches sera ardue.
On distingue alors :

Projet
 Un seul dbut et une seule n
 Dbut et n identis en tant qu'vnements (dcision, revue. . .)
Sous-projet
 Projet contenu dans le projet principal
 Li un objet ou un drivable partiel du projet
Phase (tape)
 Ensemble d'actions qui marque un avancement signicatif
 Li un type de comptence et un degr dans la progression du projet
Tche
 Maille la plus ne de la planication
 Action excutable par une seule ressource (ou un seul ensemble de ressource)

Figure 2.19  Schma gnral d'une dcomposition d'un projet en WBS


2.6.1.2 Contraintes d'ordonnancement
Les problmes d'ordonnancement sont apparus au dpart dans la planication
de grands projets. Le but tait de gagner du temps sur leur ralisation. De tels
projets sont constitus tapes, galement appeles tches. Des relations temporelles

26

Chapitre 2. La thorie des graphes

existent entre dernires. Par exemple :

 Une tape doit commencer une date prcise ;


 Un certain nombre de tches doivent tre termines pour pouvoir en dmarrer
une autre ;
 Deux tches ne peuvent tre ralises en mme temps (elles utilisent une mme
machine par exemple) ;
 Chaque tche ncessite une quantit de main d'oeuvre. Il faut donc viter,
chaque instant, de dpasser la capacit totale de main d'oeuvre disponible.
Toutes ces contraintes ne sont pas simples prendre en compte dans la rsolution de problme. Ici, nous allons nous intresser uniquement aux deux premiers
types de contraintes.
On cherche dterminer une planication, un ordonnancement des tapes qui
minimise le temps total de ralisation de projet. A partir de cette planication,
nous verrons que le temps de certaines tapes peut ventuellement tre modi
sans entraner un retard du projet, alors que d'autre, les tches dites " critiques ",
retardent entirement le projet au moindre retard local.
La ralisation d'un projet ncessite souvent une succession des tches auxquelles
s'attachent certaines contraintes :
 De temps : dlais respecter pour l'excution des tches ;
 D'antriorit : certaines tches doivent s'excuter avant d'autres ;
 De production : temps d'occupation du matriel ou des hommes qui l'utilisent. . .
Les techniques d'ordonnancement dans le cadre de la gestion d'un projet ont
pour objectif de rpondre au mieux aux besoins exprims par un client, au meilleur
cot et dans les meilleurs dlais, en tenant compte des direntes contraintes.
L'ordonnancement se droule en trois tapes :
 La planication : qui vise dterminer les direntes oprations raliser, les
dates correspondantes, et les moyens matriels et humains y attacher.
 L'excution : qui consiste la mise en oeuvre des direntes oprations dnies
dans la phase de planication.
 Le contrle : qui consiste eectue une comparaison entre planication et
excution, soit au niveau des cots, soit au niveau des dates de ralisation.

2.6. Problmes d'ordonnancement de projet

27

Il existe trois mthodes d'ordonnancement : la mthode PERT (Program Evaluation and Research Task), la mthode MPM (Mthode des Potentiels Mtra) et
le diagramme de Gantt.

2.6.2 Technique d'ordonnancement


L'objectif d'une technique d'ordonnancement est de visualiser sous forme d'un
graphe (ou rseau d'ordonnancement) l'enchainement des tches de projet, d'estimer la dure global du projet, de dterminer les tches ne tolrent pas le retard, les
retards tolres pour certaines tches, etc. Voici une technique la plus utilise en
pratique de la gestion des projets :

La mthode PERT (Program Evaluation and Research Task)


Les objectifs de la mthode PERT sont : Ordonnancer le projet, calculer la dure du projet, dterminer les tches critiques, etc.

A - Le rseau PERT
La mthode PERT (Program Evaluation and Research Task ) : c'est la mthode la
plus connue. Elle a t dveloppe par la marine amricaine dans les annes 1950
pour coordonner l'action de prs de 6000 constructeurs pour la ralisation de missiles ogives nuclaires POLARIS. C'est aussi la plus "complique" mettre en
oeuvre.
Le rseau PERT est un graphe permettant de visualiser et coordonner les l'enchainement des tches. Il permet galement de focaliser l'attention sur des points
(ou tapes) o peuvent tre prises des mesures pour respecter les dlais et optimiser
les cots. Il est utilis chaque fois quenous nous trouvons en prsence d'activits
simultanes avec ou sans partage de ressources. Sa conception s'appuie bien entendu
sur la WBS.
Le rseau PERT est constitue d'tapes et de tches lmentaires ou oprations :
Une tape est le commencement ou la n d'une ou plusieurs tches. Elle est
reprsente graphiquement par une cellule dans laquelle sont indiqus le " dpart
au plus tt " et le " dpart au plus tard " des tches relies ce sommet.

La tche lmentaire est une action bien dtermine s'inscrivant dans la rali-

28

Chapitre 2. La thorie des graphes

sation du projet. Elle a une dure et consomme de la main d'oeuvre, des matires,
des quipements ou d'autres ressources. Elle est reprsente graphiquement par une
che. Une tche fait voluer l'ouvrage vers son tat nal.

Dans un graphe PERT :


 Chaque tche est reprsente par une che (ou arc). Dans la gure ci-dessous,
la tche est mentionne par la lettre T et sa dure par le nombre d souvent
en unit de temps (seconde, minute, heure, jour. . .).
 Entre les ches gurent des cercles appeles " sommets " ou " tapes "
qui marquent l'aboutissement d'une ou plusieurs tches. Ces cercles sont numrots an de suivre de succession des diverses tapes du projet (la gure
ci-dessous montre deux tapes i et j).

Figure 2.20 
Pour construire un graphe PERT, on tablit d'abord un tableau donnant les tches
et, pour chacune d'entre elles, les oprations pr-requises. Puis, on utilise la mthode
des niveaux qui consiste :
 Dterminer les tches sans antcdents, qui constituent le niveau 1.
 Identier les tches dont les antcdents sont exclusivement du niveau 1. Ces
tches constituent le niveau 2, et ainsi de suite. . .
Soit l'exemple suivant :
Tches
E
F
G
H
I

Le niveau 1 : E, F
Le niveau 2 : G, H
Le niveau 3 : I

Dure
3
5
6
7
5

Taches antrierures
nant
nant
E
E, F
G, H

2.6. Problmes d'ordonnancement de projet

29

Figure 2.21 
Sur le graphique, les tches d'un mme niveau se retrouvent sur une mme verticale.

Remarque. 1

Il a t ncessaire d'introduire une tche ctive de dure gale 0,


pour reprsenter la relation antrieur d'antriorit entre E, H : en eet, 2 tches
ne peuvent tre identies par 2 ches ayant la mme origine et la mme extrmit.
Ainsi si 2 tches sont simultanes, elles seront reprsentes par 2 ches direntes
en partant de la mme origine :

Figure 2.22 
Notons qu'il est trs utile, dans le cas gnral, de dterminer les tches prcdentes directes d chaque tche. Ceci permettra de savoir quand il est ncessaire
d'introduire des tches ctives : en eet, chaque fois qu'une tche admet deux (ou
plus) prcdentes directes qui ont mme sommet de dbut, il est ncessaire de faire
dvier une des deux par une che ctive. (c'est la cas de la tche H qui a deux prcdentes directes E et F qui ont le mme dpart (voir la graphe PERT de l'exemple).
Enn les boucles sont interdites ; elles sont contraires la logique du systme.
C'est un point qu'il faut toujours vrier car, la suite de modication dans les
antriorits, on peut crer des boucles de manire insidieuse.

B - Calcul des dates des tches


Ayant estim les dures de tous les tches constitutives du rseau, on calcule les

30

Chapitre 2. La thorie des graphes

dates de dbut au plus tt et les dates de n au plus tard respectivement, pour


chaque tche du projet.

Figure 2.23 
Comme il montre la gure ci-dessus, on a :

Tij une tche commence l'tape i (vnement i) et se termine l'tape j (vnement j ) de dure dij (en unit de temps).
ai : La date de dbut au plus tt de la tche Tij (c'est la date laquelle toutes
les tches prcdentes de cette tche sont termines),
bj : La date de dbut au plus tard de la tche Tij (c'est la date laquelle toutes les
tches suivantes de cette tche sont dmarres)
Pour calculer la date de n au plus tt il sut d'ajouter la dure de la tche
au date de dbut au plus tt, et de retrancher cette dure de date de n au plus
tard pour calculer la date de dbut au plus tard.

Calcul des dates au plus tt des taches


On cherche quelles dates, au plus tt, peuvent tre excutes les direntes tches
du projet. Dans une premire phase, on tablit les dates au plus tt de chaque
tape, dbut et n de tche. La technique est la suivante :
 On initialise 0 l'tape de dbut, numrot souvent par 1.
 On parcourt le rseau partir de l'origine dans le sens des ches. Pour chaque
tche Tij on a :
aj = ai + dij
Date de n au plus tt de tche = Date de dbut au plus tt de tche + dure de cette tche

Si plusieurs chemins aboutissent une mme tape ou noeud, on suit chacun des
chemins possibles et on prend pour date au plus tt de l'tape la plus leve de

2.6. Problmes d'ordonnancement de projet

31

toutes les dates obtenues en suivant les dirents chemins.

aj = max{ai + dij ; l'tape j successeur de i }


On arrive ainsi dater au plus tt l'tape nale.

Calcul des dates au plus tard des taches


Partant de cette date nale, on procde au datage au plus tard, qui correspond
un calage de toutes les tches par l'aval. On remonte le rseau dans le sens inverse
des ches. Pour chaque tape i dbut d'une tche Tij on a :

bi = bj dij
Date de dbut au plus tard de tche = Date de n au plus tard de tche - dure de cette tche

Si plusieurs chemins partent de cette tape, on suit chacun des chemins possibles
dans le sens inverse des ches et on prend pour date au plus tard de cette tape
la moins leve de toutes les dates obtenues en parcourant les dirents chemins.

bi = min{bj dij ; l'tape j sucesseur de i }


On inscrit date au plus tt et date au plus tard de chaque tape. Si date au plus
tt et date au plus tard sont identiques, la tche est dite critique. Si les dates sont
direntes, il y a un battement ou marge. Il convient d'analyser cette marge, qui
peut tre une marge libre pour une tche ou une marge totale pour un chemin.
On appelle chemin critique une succession de tches critiques du dbut de projet la
n du projet. Il reprsente le chemin le plus long du projet au sens des dures. Pour
toutes les tches du chemin critique, les dates au plus tt et au plus tard concident.

C - Marge libre et marge totale


La marge libre : C'est un retard admissible au dmarrage d'une tche par rapport

la date de dbut au plus tt, qui n'entrane aucune modication du calendrier en


aval de cette tche. Ce peut tre aussi un allongement de la dure prvue. Dans
ces conditions, l'tape de n de tche i est galement l'tape de n d'au moins une
autre tche j . C'est la date de dbut au plus tt de la tche suivante moins la dure
de la tache moins la date de dbut au plus tt de la tche. On a :

M L(t) = aj ai d

La marge totale d'une tche : C'est est un retard admissible au dmarrage de

32

Chapitre 2. La thorie des graphes

Figure 2.24 
cette tche par rapport la date de dbut au plus tt qui n'entrane aucun recul
dans la date de n de l'ouvrage mais qui consomme la marge libre de la tche et
les marges libres des tches en aval. C'est encore le retard maximum que l'on peut
prendre dans la mise en route d'une tche sans remettre en cause les dates au plus
tard des tches suivantes et donc retarder la n des travaux. C'est la date de n au
plus tard moins la date de dbut au plus tt moins la dure de la tche (C'est la
date de dbut au plus tard moins la date de dbut au plus tt).

M T (t) = bj ai d
La marge certaine est dnie par :

M C(t) = aj bi d
Pour toute tche du chemin critique, la marge totale et la marge libre est nulle.

Exercice corrig
Soit le projet suivant :
Tches
E
F
G
H
I

Tches antrieures
E
E
F,G
G,H

dure
3
4
2
5
3

Le tableau suivant donne le niveau d'excution de chaque tche :


Tches

Tches antrieures

Dure

E
F
G
H
I

E
E
FG
GH

3
4
2
5
3

Niveau de tche
1 2 3
4
E
F
G
H
I

2.6. Problmes d'ordonnancement de projet

33

Figure 2.25 

Figure 2.26 
Ce tableau peut tre reprsent par un graphe comme le montre la gure 2.25.

Trac du rseau PERT

La gure 2.24 reprsente le graphe PERT du projet, les dates au plus tt et au


plus tard sont calcules pour chaque tche, on prend par exemple :
La date de dbut au plus tt de la tche H est le max de 5+0,3+4 est gal 5.
La date de n au plus tard de tche E est le min de 7-4,7-2 est gal 3.

chemin critique du graphe est construit par les tches E-F-H-I a pour dure

Le
15 unit du temps.

Calcul des marges libres et des marges totales


Pour la tche G par exemple, on a :
La marge libre est ML(G) = 5-3-2 = 0
La marge total est ML(G) = 7-3-2 = 2
le tableau suivant montre la marge libre et total de chaque tche du projet :

34

Chapitre 2. La thorie des graphes


Tche
Marge libre
Marge total

E
0
0

F
0
0

G
0
2

H
0
0

I
0
0

2.6. Problmes d'ordonnancement de projet

35

S-ar putea să vă placă și