Vous êtes sur la page 1sur 30

CHAPITRE 1

CONCEPTS FONDAMENTAUX DE LA
THÉORIE DES GRAPHES

Théorie des Graphes et Optimisation 1

Concepts fondamentaux de la théorie des graphes I. Introduction

La théorie des graphes

Historique : problème des 7 ponts de Königsberg


La ville de Königsberg (Kaliningrad), traversée par la rivière
Prégolya, possède 2 îles et 7 ponts.

Est-il possible de visiter tous les quartiers de la ville en


traversant chaque pont une seule fois et de revenir au point de
départ ?

Théorie des Graphes et Optimisation 2


Concepts fondamentaux de la théorie des graphes I. Introduction

La théorie des graphes

Résolution par Euler (1736)


Modélisation de Königsberg par un graphe

sommets=villes
arcs=ponts

Théorie des Graphes et Optimisation 3

Concepts fondamentaux de la théorie des graphes I. Introduction

La théorie des graphes

Un graphe G = <S,A> est la donnée :


Un ensemble S dont les éléments sont les sommets du graphe
Un ensemble A de liaisons, des arêtes ou des arcs, qui relient les
éléments de S.
1 •Sommet

•arc
2 3

Ordre d’un graphe est le nombre de sommets du graphe


(=|S|).

Théorie des Graphes et Optimisation 4


Concepts fondamentaux de la théorie des graphes I. Introduction

La théorie des graphes

Types de graphe
Orienté : chaque arc à un sens

1 Sommet

arc
2 3

non orienté : les arêtes n’ont pas de sens particuliers


1 Sommet

arête
2 3

Théorie des Graphes et Optimisation 5

Concepts fondamentaux de la théorie des graphes I. Introduction

La théorie des graphes

Modélisation par des graphes


Circulation dans une ville :
sommets ↔ carrefours
arcs ↔ rues

Trafic aérien :
sommets ↔ aéroports,
arêtes ↔ vols existants

Réseau informatique :
sommets ↔ ordinateurs
arêtes ↔connexions physiques

Réseau sociaux:
sommets ↔ personnes
arêtes ↔ amitiés

Théorie des Graphes et Optimisation 6


Concepts fondamentaux de la théorie des graphes I. Introduction

Champs d’application

Intelligence Artificielle
Apprentissage, classification
Recherche Opérationnelle
Problèmes d’ordonnancement, Problèmes de flot…
Réseaux de communication
Diffusion de message, Routage de messages
Chimie-Biologie
Modélisation de molécules, Décodage de chaînes d’ADN
Sociologie
Modélisation des relations
Web
Graphe des liens, Calcul de pertinence

Théorie des Graphes et Optimisation 7

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Graphe orienté G = <S, A>


S ensemble fini des sommets
A ⊆ S x S ensemble des arcs (a1=(x,y)≠ a2=(y,x) )
Exemple
S = { 1, 2, 3, 4, 5 }
A = {(5, 5), (1, 5) , (5, 4), (4, 2), (2, 1), (3, 1), (3, 2) }

4 1

2 3

Théorie des Graphes et Optimisation 8


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Terminologie : pour un arc a = (x, y)


x est l'extrémité initiale et y est l'extrémité finale
y est successeur de x et y est prédécesseur de x
Un arc (t, t) est appelé une boucle
Exemple
arc a= (1, 5) Boucle l'extrémité finale

Boucle (5,5)
5 l'extrémité initiale

4 1

2 3

Théorie des Graphes et Optimisation 9

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Application multivoque d'un graphe Γ


L'application Γ qui, à tout sommet x de A, fait correspondre une
partie de A représentant ses suivants/successeurs Γ(x).
L'ensemble des précédents/prédécesseurs d'un sommet x est
noté Γ-1(x) où Γ-1 est l'application multivoque réciproque de G.
Exemple
G = <S, A> 5

4 1

2 3
S = { 1, 2, 3, 4, 5 }
Γ(1)={5}, Γ(2)={1}, Γ(3)={1,2}, Γ(4)={2}, Γ(5)={4,5}
Théorie des Graphes et Optimisation 10
Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Chemins
Chemin : c = ( s0, s1,s2, …, sk-1,sk ) où les (si-1,si) ∈ A
origine = s0
extrémité = sk
longueur = k (=le nombre d'arcs qui composent le chemin )
Exemple
c= ( 3, 1, 5, 4 ) est un chemin de longueur 3

4 1

2 3

Théorie des Graphes et Optimisation 11

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Chemins
Chemin simple: si il ne passe pas deux fois par le même arc
Chemin élémentaire: si il ne passe pas deux fois par le même
sommet
Circuit: un chemin de longueur non nulle et dont l'origine et
l'extrémité sont identiques.
identiques
Exemple
c= ( 3, 1, 5, 4 ) est un chemin simple 5
c= (1,5 ,4 ,2,1 ) est un circuit
4 1

2 3

Théorie des Graphes et Optimisation 12


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Degrés d'un sommet


degré sortant d+(x) (demi-degré extérieur ) d'un sommet
x, le nombre d'arcs dont l'extrémité initiale est x.
degré entrant d-(x) (demi-degré intérieur ) d'un sommet x,
le nombre d'arcs dont l'extrémité finale est x.
degré total d(x) d'un sommet x, le nombre d'arcs ayant une
extrémité en ce sommet.
Exemple 5
d+(1) =1
4 1
d-(1)=2
d(1)=1+2=3
2 3

Théorie des Graphes et Optimisation 13

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes orientés

Propriétés : Si G = <S,A> est un graphe orienté alors

Exemple
1 x d+(x) d-(x)
1 0 2
2 1 1
2 3
3 2 0
∑ 3 3

Théorie des Graphes et Optimisation 14


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes non orientés

Graphe non orienté G = <S, A>


S ensemble fini des sommets
A ⊆ S x S ensemble des arêtes (a1=(x,y) =a2=(y,x) )
Exemple
S = { 1, 2, 3, 4, 5 }
A = {(5, 5), (1, 5) , (5, 4), (4, 2), (2, 1), (3, 1), 3, 2) }

4 1

2 3

Théorie des Graphes et Optimisation 15

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes non orientés

Terminologie : pour une arête a = (x, y)


x , y sont les deux extrémités de a
x et y sont adjacents (ou voisins)
Exemple
arête a= (1, 5) = (5, 1)
extrémité
5

4 1 extrémité

2 3

Théorie des Graphes et Optimisation 16


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes non orientés

Chaîne
Chaîne : c = ( s0, s1,s2, …, sk-1,sk ) où les (si-1,si) ∈ A
Longueur = k (=le nombre d'arêtes qui composent la chaîne )
Cycle: chaîne de longueur non nulle et dont les extrémités sont
identiques.
Exemple
5
c= ( 3, 1, 5, 4 ) est une chaîne de longueur 3
c= (1,5 ,4 ,2,1 ) est un cycle 4 1

2 3

Théorie des Graphes et Optimisation 17

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes non orientés

Terminologie orienté VS non orienté

Orienté non orienté


arc ↔ arête
chemin ↔ chaîne
circuit ↔ cycle

Théorie des Graphes et Optimisation 18


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Graphes non orientés

Degrés d'un sommet


degré d(x) d'un sommet x est comme le nombre d'arêtes ayant x
pour extrémité.
Propriétés : Si G = <S,A> est un graphe non orienté alors

Exemple
x d(x)
1
1 2
2 1
2 3 3 1
∑ 4

Théorie des Graphes et Optimisation 19

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

P-Graphe
Graphe dans lequel il n’existe jamais plus de p arcs entre deux
sommets quelconques
Exemple :2 -Graphe

1
4

2 3

Théorie des Graphes et Optimisation 20


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Graphe simple
Un graphe est dit simple si et seulement si il ne comporte pas de
boucle et s'il n'y à pas plus d'une arête (ou arc) entre deux
sommets quelconques.
Exemple
Graphe simple Graphe non simple

1
1

2 3
2 3

Théorie des Graphes et Optimisation 21

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Graphe partiel
Soit G = <S,A> un graphe (orienté ou non). Un graphe partiel de
G est un graphe G' = <S,A’> tel que A’ ⊆ A .
Exemple
5
5

4 1
4 1

2 3
2 3

Théorie des Graphes et Optimisation 22


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Sous graphe
Soit G = <S,A> un graphe (orienté ou non). Un sous-graphe de G
est un graphe G' = <S’,A’> tel que A ⊆ A’ et S ⊆ S’
Exemple
5
1

4 1
2 3
2 3

Théorie des Graphes et Optimisation 23

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Sous graphe couvrant


Un sous-graphe G’ = (S’,A’) d’un graphe G = (S,A) est couvrant
s’il contient tous les sommets de G : S’ = S.

Exemple
5 5

4 1 4 1

2 3 2 3

Théorie des Graphes et Optimisation 24


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Graphe valué
Un graphe dans lequel chacune des arêtes (ou arcs), a, est associée
à une valeur, appelée poids, p(a).

Exemple
5

8 7

1
4 2 -13

1
2 3
11

Théorie des Graphes et Optimisation 25

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Fermeture transitive d’un graphe


La fermeture transitive d'un graphe G = <S,A> est un graphe
Ĝ=<S, Â >, où Â est défini par la relation suivante :
(x, y)∈Â ⇔ il existe dans G un chemin de x vers y.
Exemple

a
a
b
Fermeture transitive b

c
c
d
d

Théorie des Graphes et Optimisation 26


Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Graphe symétrique :
∀ (x,y) ∈ A ⇒ (y, x) ∈ A
Graphe anti-symétrique :
∀ (x,y) ∈ A ⇒ (y, x) ∉ A
Graphe réflexif :
(x,x) ∈ A, ∀ x ∈ A
Graphe transitif :
∀ (x,y) ∈ A, (y,z) ∈ A ⇒ (x,z) ∈ A.
Graphe complet
∀ (x,y)∉A ⇒ (y,x) ∈ A

Théorie des Graphes et Optimisation 27

Concepts fondamentaux de la théorie des graphes II. Concepts de base de la théorie des graphes

Définitions

Exemple
Graphe réflexif, anti symétrique, transitif et complet

1 2

3 4

Théorie des Graphes et Optimisation 28


Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Matrice d’adjacence

Soit G = <S,A> un 1-graphe la matrice d'adjacence de G est la


matrice carrée M de taille n x n, définie par :
M [ i, j ] = 1 s’il existe un arc (i, j) sinon 0

)
1 2 3

(
1
1 1 1 1
2 1 0 0
2 3
3 0 1 0

Théorie des Graphes et Optimisation 29

Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Matrice d’adjacence

Soit G = <S,A> un 1-graphe valué, la matrice d’adjacence de


G est la matrice carrée M de taille n x n, définie par :
M [ i, j ] = p(i,j) s’il existe un arc (i, j) sinon ∞

)
1 2 3

(
1
8 1 2 8 5
5
3 2 3 ∞ ∞
2 3 3 ∞ 9 ∞
9

Théorie des Graphes et Optimisation 30


Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Matrice d’incidence

Soit G = <S,A> un graphe orienté sans boucle , la matrice


d‘incidence sommet-arcs de G est la matrice M, définie par :
Si a = (i,j) ∈ A, alors M[i,a] = 1 : M[j,a] = -1 ; sinon 0

)
1 a1 a2 a3 a4

(
a1 a3
a2
1 1 -1 1 0
2 3
2 -1 1 0 -1
a4 3 0 0 -1 1

Théorie des Graphes et Optimisation 31

Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Matrice d’incidence

Soit G = <S,A> un graphe non orienté, la matrice d’incidence


sommet-arcs de G est la matrice M, définie par :
Si a = (i,j) ∈ A, alors M[i,a] = 1 : M[j,a] = 1 ; sinon 0

)
1 a1 a2 a3 a4

(
a1 a3
a2
1 1 1 1 0
2 3
2 1 1 0 1
a4 3 0 0 1 1

Théorie des Graphes et Optimisation 32


Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Liste de suivants/précédents

Associer à chaque sommet la liste de ses


suivants/précédents. Ces listes sont accessibles à partir d'un
tableau S, qui contient pour chaque sommet, un pointeur
vers le début de sa liste.

1 1 1 2 3
2 1
2 3 3 2

2
1 1 2 2 8 3 5
8 1
5
3 2 1 3
2 3 3
9 2 2

Théorie des Graphes et Optimisation 33

Concepts fondamentaux de la théorie des graphes III. Représentation des graphes

Comparaison des tailles

Graphe à n sommets et m arcs.


Matrice d'adjacence : n2
Matrice d'incidence : n.m
Liste des suivants/précédents: n + m

Théorie des Graphes et Optimisation 34


Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Connexité par l’exemple

Plan de circulation dans une ville des rues à double sens


Graphe non orienté : la circulation est autorisée de n'importe
quel point de la ville vers un autre
1 2

3 4 5 6

7 8 9 10

11 12

Il existe une chaîne entre tout couple de sommets.


Graphe connexe

Théorie des Graphes et Optimisation 35

Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Connexité par l’exemple

Plan de circulation dans une ville des rues avec des sens interdits,
Graphe orienté : la circulation est autorisée de n'importe quel
point de la ville vers un autre
1 2

3 4 5 6

7 8 9 10

11 12

Il existe un chemin entre tout couple de sommets.


Graphe fortement connexe

Théorie des Graphes et Optimisation 36


Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Graphe connexe

Un graphe non orienté G = <S,A> est connexe si ∀ x,y ∈ S ,


il existe une chaîne reliant x à y
Exemple

Graphe connexe Graphe non connexe

E D E D

C F C F

A B A B

Théorie des Graphes et Optimisation 37

Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Graphe connexe

Une composante connexe d'un graphe G=<S,A> est un sous-


graphe G'=<S',A‘> connexe maximal.
∀ x, ∈ S \A’, y ∈ A’, il n'existe pas une chaîne reliant x et y
Les composantes connexes de G définissent une partition de S.
Exemple
.
{ E,A,C,B } D { D,F }
E

F
C

A B

Théorie des Graphes et Optimisation 38


Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Graphe fortement connexe

Un graphe orienté G = <S,A> est fortement connexe si ∀ x,y


∈ S , il existe un chemin reliant x et y
Exemple

Graphe fortement connexe Graphe non connexe


a a
g g
c c

d d
e e

b b
f f

Théorie des Graphes et Optimisation 39

Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Graphe fortement connexe

Une composante connexe d'un graphe orienté G=<S,A> est un


sous-graphe G'=<S’,A‘> fortement connexe maximal.
∀ x, ∈ S \A’, y ∈ A’, il n'existe pas un chemin reliant x et y
Les composantes connexes de G définissent une partition de S.
Exemple
a
{a,c,g}
g
c

d
e {f,d,e,b}

b
f

Théorie des Graphes et Optimisation 40


Concepts fondamentaux de la théorie des graphes IV. La connexité dans un graphe

Graphe fortement connexe

Graphe réduit d'un graphe orienté admettant p composantes


fortement connexes{C1, C2, …, Cp} est défini par Gr=< Sr, Ar >
Sr={C1, C2, …, Cp}
Ar={(xi, xj) |∃ xi ∈ Ci , xj ∈ Cj tel que (xi, xj) ∈A}
Exemple

a C1
g
c
Graphe réduit

d
e

b C2
f

Théorie des Graphes et Optimisation 41

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe eulérien

Un chemin Eulérien (chaîne) est un chemin (une chaîne) passant


une et une seule fois par chaque arc( arête) du graphe.
Chaîne Eulérienne = (A,F,E,D,C,E,B,F,C,B)
A

F
B

E
C

Théorie des Graphes et Optimisation 42


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe eulérien

Un graphe non oriente (respectivement orienté) est dit un graphe


Eulérien s’il ait un cycle (resp. circuit) Eulerien.
graphe eulérien graphe non eulérien
.
A
A

F
B F
B

E
C E
C

Théorie des Graphes et Optimisation 43

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe eulérien

Théorème d'Euler 1: Un graphe non orienté est eulérien si et


seulement si et seulement s’il soit connexe et tous les sommets
sont de degré pair.
A A

F F
B B

E E
C C
D

Théorème d'Euler 2: Un graphe orienté est eulérien si et


seulement si et seulement :
G est fortement connexe
d+(x) =d-(x) ∀x∈S

Théorie des Graphes et Optimisation 44


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe hamiltonien

Un chemin Hamiltonien (chaîne) dans un graphe G est un


chemin (une chaîne) passant une et une seule fois, par chaque
sommets de G.
Exemple
Chaîne hamiltonienne = (1,2,5,4,3)
2

5 3
1

Théorie des Graphes et Optimisation 45

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe hamiltonien

Un graphe G est Hamiltonien s’il contient un cycle


Hamiltonien (cas non-orienté) ou un circuit Hamiltonien (cas
orienté).
Exemple
Cycle hamiltonien= (1,2,5,3,4,1)
2

1 5 3

4
Théorie des Graphes et Optimisation 46
Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe hamiltonien

Théorème : Soit G un graphe simple, non-orienté, ayant n


sommets, n ≥ 3. Si , pour toute paire (x,y) de sommets non
adjacents, on a :
d(x) + d(y) ≥ n
Alors, G est Hamiltonien.
Corollaire: Soit G un graphe simple, non orienté ayant n
sommets, n ≥ 3. Si tous les sommets sont à degré ≥ n/2, alors G
est Hamiltonien.

Théorie des Graphes et Optimisation 47

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe complet

Dans un graphe complet, on a :


(x,y)∉A ⇒ (y,x) ∈ A

Théorie des Graphes et Optimisation 48


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe complémentaire, clique, stable

Théorie des Graphes et Optimisation 49

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe k-parti

Soit k ≥ 1 un entier.
Un graphe simple G = (V ;E) est dit k-parti s’il existe une
partition de l’ensemble de ses sommets V = V1+…+Vk (+ :
Union disjointe) telle que aucun des sous-graphes induits : G(Vi),
i = 1, . . . , k, ne contienne d’arête.
Un graphe 1-parti
1 est donc simplement un graphe sans arêtes.
arêtes
Les parties Vi, i = 1, . . . , k, forment une k-partition, associée au
graphe k-parti G.
Rappel : Un stable est un ensemble de sommets induisant un sous-
graphe sans arête.
 Les Vi ne sont rien d’autres que des stables de G

Théorie des Graphes et Optimisation 50


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe k-parti

Un graphe k-parti est dit complet si


∀i, j ∈ {1, . . . , k}, i ≠j, ∀x ∈ Vi, ∀y ∈ Vj ,
on a {x, y} ∈ E.
Soit |Vi| = ni, 1 ≤ i ≤ k, on notera Kn1,n2,...,nk un modèle du
graphe k-parti correspondant

Théorie des Graphes et Optimisation 51

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe k-parti

Pour k = 2, nous obtenons une classe importante de graphes, les


graphes bipartis.

Les graphes K1,n sont appelés étoiles

Théorie des Graphes et Optimisation 52


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Propriétés des graphes bipartis

Proposition [König, 1916]


Un graphe est biparti ssi il ne contient pas de cycle de
longueur impaire

Théorie des Graphes et Optimisation 53

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Graphe planaire

Théorie des Graphes et Optimisation 54


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Propriétés des graphes planaires

Théorie des Graphes et Optimisation 55

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Propriétés des graphes planaires

Théorie des Graphes et Optimisation 56


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Propriétés des graphes planaires

Théorie des Graphes et Optimisation 57

Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Isomorphisme de graphe

Deux graphes G = (S,A) et G’ = (S’,A’) sont isomorphes s’il


existe une bijection

Exemple :

Théorie des Graphes et Optimisation 58


Concepts fondamentaux de la théorie des graphes V. Graphes particuliers

Isomorphisme de graphe

Théorie des Graphes et Optimisation 59

Vous aimerez peut-être aussi