Académique Documents
Professionnel Documents
Culture Documents
I – NOTION DE GRAPHE
En mathématiques le terme graphe désigne une opération d’application. Il possède deux acceptions :
- le graphe d’une fonction (à distinguer de sa représentation graphique)
- le graphe qui désigne un objet représentant une relation binaire, orienté ou non, entre les
éléments d’un ensemble. Cette dernière acception qui fait l’objet de ce cours. On distingue
donc plusieurs types de graphes.
I-1 – Graphe non orienté
Il est constitué d’un ensemble d’éléments appelés sommets et d’un ensemble de paires (non ordonnées)
de sommets appelés arêtes. Une arête relie deux sommets. Pour sa représentation, les sommets peuvent
être symbolisés par des points ou des croix ou des cercles et les arêtes par des segments de droite ou des
lignes courbes.
Exemple 1 : Quatre quartiers, désignés par A, B, C et D, d’une ville sont reliés par le réseau routier décrit
ci-après :
- Une route relie A et B
- Une route relie C et D
- Une route relie B et D
- Une route relie A et C
Représenter ce réseau par un graphe. Préciser le nombre de sommets et d’arêtes de ce graphe.
Résolution
A B
C D
On 4 sommets et 4 arêtes
I-2 – Graphe orienté
Il est constitué d’un ensemble d’éléments appelés sommets et d’un ensemble de couples (ordonnées) de
sommets appelés arcs. Un arc relie deux sommets, un sommet origine et sommet extrémité, et est orienté
par une flèche. Pour sa représentation, les sommets peuvent être symbolisées par des points ou des croix
ou des cercles et les arêtes par des segments de droite ou des lignes courbes, orientés (es) par des flèches
Dans un graphe orienté, chaque sommet a un ou plusieurs successeurs et/ou un ou plusieurs
prédécesseurs. La liste des prédécesseurs et la liste des successeurs d’un graphe orienté peuvent être
représentés dans deux tableaux, un tableau des successeurs et un tableau des prédécesseurs : ces tableaux
constituent alors le dictionnaire du graphe.
Exemple 2 : Quatre villes, désignés par V1, V2, V3 et V4, d’une région sont reliées par le réseau aérien
décrit ci-après :
- Un vol de V1 à destination de V2
- Un vol de V2 à destination de V4
Page 1 sur 10
- Un vol de V3 à destination de V1
- Un vol de V4 à destination de V1
- Un vol de V4 à destination de V3
Représenter ce réseau par un graphe. Préciser le nombre de sommets et d’arcs de ce graphe.
Résolution
V V
1 2
VC VD
3 4
On a 4 sommets et 5 arcs
I-3 – Graphe valué
C’est un graphe qui à toute relation entre deux sommets est associée une valeur. Selon les cas cette valeur
peut être un coût, une durée, une distance, un poids, etc…
Un graphe orienté ou non peut donc être valué. La représentation se fait de la même manière que dans les
cas précédents mais en portant la valeur de chaque liaison au dessus.
Exemple 3 :
a) Représenter le graphe de l’exemple 1 en considérant que les distances par route entre les différents
quartiers sont respectivement de 1km, 2km, 1,5km et 1,2km respectivement
b) Représenter le graphe de l’exemple 2 en considérant que les durées de vol entre les différentes
liaisons sont respectivement de 4h, 2h, 1h, 5h et 3h.
Résolution
a) Graphe valué de l’exemple 1.
1
A B
1,2 1,5
2
C D
5
2
1
3
VC VD
3 4
Page 2 sur 10
Remarque :
- On parle de boucle lorsque les deux sommets d’une arête sont identique (cas d’un graphe non
orienté) ou lorsqu’un arc est tel que son origine est identique à son extrémité.
- Deux sommets peuvent être reliés par plusieurs arêtes ou plusieurs arcs : on par le alors d’arête
multiple ou arc multiple
- Un graphe est dit simple s’il n’a ni boucle ni arête multiple (resp. ni arc multiple).
0 1 1 0 0 1 0 0
1 0 0 1 0 0 0 1
M M
1 0 0 1 1 0 0 0
0 1 1 0 1 0 1 0
Exemples 1 et 2 : Matrices des graphes non orienté et orienté, valués
0 1 1, 2 0 4
1 0 1,5 0 2
M M
1, 2 0 2 1 0
1,5 2 0 5 0 3 0
I-5 – Terminologie
- Ordre d’un graphe : Nombre de sommets de ce graphe
- Degré d’un sommet : nombre d’arêtes ou d’arcs incident à ce sommet
- Chaîne : Suite finie de sommets reliés entre eux par une arête ou un arc
- Chaîne simple : Chaîne qui n’utilise pas deux fois la même arête ou un arc
- Chaîne eulérienne : Chaîne simple passant par toutes les arêtes ou arcs d’un graphe une et une
seule fois
- Chaîne hamiltonienne : Chaîne simple passant par tous les sommets d’un graphe une et une
seule fois
- Chemin : Suite de sommets reliés par des arcs dans un graphe orienté
- Cycle (simple): Chaîne qui revient à son point de départ
Page 3 sur 10
- Cycle eulérien : cycle simple passant par toutes les arêtes ou arcs d’un graphe une et une seule
fois
- Cycle hamiltonien : cycle simple passant par toutes les sommets d’un graphe une et une seule
fois
- Graphe connexe : graphe qui à toute paire de sommets {x,y} de ce graphe, il existe une chaîne
de premier terme x et de dernier terme y.
- Arbre : Graphe connexe sans cycle simple ni boucle
- Graphe eulérien : Graphe qui possède un cycle eulérien
- Graphe semi-eulérien : Graphe qui possède une chaîne eulérienne
- Graphe hamiltonien : graphe qui possède un cycle hamiltonien
- Longueur d’une chaîne : Nombre des arêtes ou d’arcs qui composent cette chaîne
- Longueur d’un chemin :
- Valeur d’une chaîne : Somme des valeurs des arêtes ou des arcs d’une chaîne d’un graphe
valué
- Distance entre deux sommets : Longueur de la plus courte chaîne joignant ces deux sommets
- Diamètre d’un graphe : Maximum des distances entre les sommets d’un graphe
II – Applications
II-1 – Problème du plus court chemin et résolution à l’aide d’un arbre
L’une des applications de la théorie des graphes est la recherche du plus court chemin pour aller d’un
point à un autre d’un réseau. On entend par court chemin le chemin qui a la plus petite valeur, cette valeur
pouvant être une longueur (distance), une durée un coût, etc. La résolution d’un tel problème peut se faire
de manière intuitive ou par des méthodes algorithmiques.
Lorsque le réseau n’est pas dense, on peut dénombrer les différents chemins et leurs valeurs respectives
(longueurs, durées, coûts,…) puis ensuite déterminer le plus court d’entre d’eux c’est à dire celui qui a la
plus petite valeur. Pour cela, on pourra représenter un arbre ressortant les différents chemins possibles
avec leurs valeurs respectives.
Exemple 4 :
La matrice qui suit est la matrice d’un graphe valué donnant, en heures, les durées des vols entre 5 villes
V1, V2, V3, V4 et V5.
0 15 4
0 9
M 3 0 2
10 3 0
7 5 0
Déterminer le plus court chemin pour aller de V1 à V2 .
Résolution : L’arbre des différents chemins allant de V1 à V2 montre que le plus court chemin est :
V1 – V5 – V4 – V2 avec une durée totale de 12 heures
A B
3 2 3
3
1
G F
E
3
4
C
D
b) Algorithme de Prim
On part d’un arbre initial réduit à un seul sommet du graphe. À chaque itération, on agrandit l’arbre en lui
ajoutant le sommet libre accessible (ne permettant pas de former un cycle avec les sélections précédentes)
de plus petit poids possible. On stoppe quand l’arbre est recouvrant.
Page 5 sur 10
Exemple : Refaire l’exemple précédent
Résolution : en partant de F
L’application de l’algorithme de Kruskal permet d’obtenir l’ARPM suivant :
A B
3 2 3
3
4 1
G F
E
3
C
D
Page 6 sur 10
II-3-2 Problématique et formulation
On cherche dans ce cas à déterminer la quantité maximum de matière qui peut quitter la source pour
atteindre le puits.
Les données de ce problème sont :
Page 7 sur 10
- s’il existe au moins une chaîne améliorante alors ce flot n’est pas maximum et une
amélioration est ^possible. Dans ce cas, on détermine pour chaque chaîne le minimum
des capacités résiduelles et des flux des arcs et on retient la chaîne qui a le maximum des
minima . Le nouveau réseau G1 et donc le nouveau flot est obtenu est ajoutant la
valeur de au flux de chaque arc en sens direct et en retranchant la valeur de au
flux de chaque arc en sens indirect.
Etape 2 : On applique l’étape 1 au réseau G1 et ainsi de suite jusqu’à ce qu’une amélioration
ne soit plus possible.
Exemple :
Trois usines doivent approvisionner trois dépôts à partir desquels les clients doivent être desservis. Les
capacités de production des usines, les demandes des dépôts ainsi les capacités de transports des usines
vers les dépôts, en tonnes, sont données à travers le tableau suivant :
D1 D2 D3
30 24 42
U1 21 9 6
36
U2 15 6 24
30
U3 3 12 24
30
L’objectif est la satisfaction maximum de la demande.
1°/ Modéliser cette situation par un graphe convenable.
2°/ Déterminer un flot complet.
3°/ Peut-on satisfaire toute les demande ?
Question 1°/
On porte sur chaque arc sa capacité. La source représente l’ensemble des usines et le puits
représente le marché desservi par les trois dépôt
36
U D
36 11 11 30
30
24
S U D
21 P
30 21
42
U 24
D
31 31
Question 2°/
Au départ, la capacité résiduelle d’un arc est égale à sa capaicité car son flux initial est 0
Premiers chemins à saturer :
o Chemin 1 : S – U1 – D1 – P avec 21
o Chemin 2 : S – U2 – D3 – P avec 24
o Chemin 3 : S – U3 – D3 – P avec 24
Les chemins 2 et 3 ont en commun l’arc (D3, P) qui a une capacité de 42 24 24
On choisit donc un flux de 24 sur le chemin 3 et un flux de 18 sur le chemin 2 avec le flux
de 21 sur le chemin 1.
Page 8 sur 10
On a donc un flot de 21 18 24 63
On ferme les arcs (U1, D1), (U3, D3) et (D3, P)
Capacités résiduelles restantes :
o Arc (S, U1) : 36 21 15
o Arc (S, U2) : 30 18 12
o Arc (S, U3) : 30 24 6
o Arc (D1, P) : 30 21 9
o Arc (U2, D3) : 24 18 6
o Les autres arcs sans changement
On a encore des chemins à arcs non saturés, on passe à l’itération suivante
Deuxièmes chemins à saturer :
o Chemin 4 : S – U1 – D2 – P avec 9
o Chemin 5 : S – U2 – D1 – P avec 9
o Chemin 6 : S – U3 – D2 – P avec 6
Les chemins 4 et 5 ont en commun l’arc (D2, P) qui a une capacité de 24 9 6
On a donc un flux de 9 sur les chemins 4 et 5, et un flux de 6 sur le chemin 6.
On a donc un flot de 63 9 9 6 87
On ferme les arcs (S, U3), (D1, P) et (U1, D2)
Capacités résiduelles restantes :
o Arc (S, U1) : 15 9 6
o Arc (S, U2) : 12 9 3
o Arc (U3, D2) : 12 6 6
o Arc (D2, P) : 24 9 6 9
o Les autres arcs sans changement
On a encore un chemin à arcs non saturés, on passe à l’itération suivante
Dernier chemin à saturer :
o Chemin 7 : S – U2 – D2 – P avec 3
On a donc un flux de 3 sur ce chemin.
On a donc un flot de 87 3 90
On ferme l’arc (S, U2)
Il n’y a plus de chemin à arcs non saturés. On a donc nu flot complet de 90 .
Question 3°/
Cette question consiste à rechercher un flot maximum
Recherche des chaînes améliorantes
On a 4 chaînes améliorantes
- Chaîne 1 : S U1 D3 U3 D2 P avec 6
- S U1 D2 U3 D2 P avec 3
Chaîne 2 :
- Chaîne 3 : S U2 D1 U1 D3 U3 D2 P avec 3
- Chaîne 4 : S U2 D1 U1 D3 U2 D2 P avec 3
Le flot précédent n’est pas maximum.
Amélioration
On retient la chaîne 1 et on ajoute 6 aux flux des arcs (S,U1), (U1, D3) (U3, D2) et (D2, P), et on
retranche 6 au flux de l’arc (U3, D3)
Page 9 sur 10
On obtient un flot maximum de 90 6 96
On peut satisfaire toute la demnade
Page 10 sur 10