Académique Documents
Professionnel Documents
Culture Documents
Prof. Andjiga N. G.
Dr. Loumngam K. V.
i
Introduction à la théorie des graphes et à ses applications Août 2020
Sommaire
ii
Introduction à la théorie des graphes et à ses applications Août 2020
iii
Introduction à la théorie des graphes et à ses applications Août 2020
1.1 Introduction
Même si elle est relativement jeune par rapport à d’autres branches des
mathématiques, il est communément admis que l’étude des graphes a débuté dans la
première partie du XVIIIe siècle avec les travaux du mathématicien suisse Leonhard
Euler (1707 - 1783), notamment dans son approche de résolution de l'énigme des ponts
de Königsberg1. Par ailleurs, les graphes ont été depuis toujours utilisés intuitivement
dans d’autres matières enseignées au secondaire (représentation éclatée des molécules
en chimie, les arborescences utilisées en biologie pour la taxinomie et la génétique, les
arbres généalogiques en histoire, les cartes en géographie ou encore les cartes
conceptuelles en langue etc). Cependant les élèves n’ont aucune conscience de l’existence
d'une théorie unificatrice qui permettrait le transfert de connaissances entre différents
disciplines par les graphes.
1
Nous y reviendrons au chapitre 5
4
Introduction à la théorie des graphes et à ses applications Août 2020
L’option d’enseigner la théorie des graphes au lycée est innovante compte tenu du
fait que cette théorie, au confluent des mathématiques, de l’informatique et de la
recherche opérationnelle, reste absente des curricula du secondaire dans plusieurs pays.
Ceci contraste avec l’importance grandissante que ce domaine revêt dans plusieurs
disciplines telles que l’informatique, la biologie, la chimie, les sciences sociales et les
mathématiques elles-mêmes. La théorie des graphes permet de voir les mathématiques
sous un nouveau jour, notamment pour les élèves qui ont eu un mauvais départ avec
cette discipline. En effet, elle a la réputation d’être éminemment accessible au vu de la
simplicité avec laquelle la plupart de ses problèmes sont formulés, le peu de pré-requis
nécessaire à les comprendre et la possibilité de visualiser ce que l’on manipule. Ce court
demande et forge une aptitude à l'intuition, à la modélisation, à la résolution de
problèmes, qui complète agréablement l’approche basée sur la mémorisation et les
calculs auxquels les élèves sont habitués. Un autre atout de l’étude des graphes au lycée
est le fait qu’elle permet aux élèves de mettre en œuvre une démarche complète de
modélisation, là où ils ont l’habitude d’être confrontés à des problèmes déjà
mathématiquement modélisés.
1.2 Modélisation à l’aide de graphes pour la résolution des problèmes de la vie courante
Les graphes trouvent une application dans presque tous les domaines qui traitent
d'une sorte de relation binaire entre objets. Cela concerne quasiment tous les domaines
de l’activité humaine. Par conséquent, les questions dont traite la théorie de graphes
sont assez générales pour englober une large variété de problèmes de la vie courante.
Parmi ces nombreuses questions abstraites, les plus courants portent sur :
le parcours d’un graphe (d’un sommet à l’autre en suivant les arêtes les
connectant) suivant des contraintes prescrites ;
la partition des éléments d’un graphe (ensemble de sommets ou ensemble des
arêtes) en fonction des certaines propriétés que doivent vérifier les parties ;
la topologie d’un graphe en rapport avec sa représentation et sa structure.
l’existence de certaines sous-structures de graphes ou d’une famille de graphes.
La modélisation d’un problème de la vie courante par les graphes n’est pas
toujours facile. En effet, la démarche consiste en général à identifier ce que représentent,
d’une part les sommets du graphe, et d’autre part ses arêtes. Ceci peut aller de soit pour
un réseau routier où les destinations peuvent être représentées par les sommets, et les
voies de circulation par les arêtes. Cependant, cela est moins évident lorsque les entités
5
Introduction à la théorie des graphes et à ses applications Août 2020
6
Introduction à la théorie des graphes et à ses applications Août 2020
Exemple d’application :
Alors qu’il n’était qu’un jeune garçon, Gauss à découvert la formule suivante lui
permettant de calculer la somme des 100 premiers entiers naturel non nuls :
( )
1 + 2 + ⋯ + 99 + 100 = ,
7
Introduction à la théorie des graphes et à ses applications Août 2020
8
Introduction à la théorie des graphes et à ses applications Août 2020
Chaque algorithme est destiné à être exécuté par une personne ou une machine
(ordinateur, smartphone, etc.). Cette personne ou cette machine qui exécute l’algorithme
est appelée le processeur. Le cas échéant il s’agit du client qui souhaite envoyer de
l’argent. Chaque processeur a des compétences ou opérations de base qu’il peut
effectuer ; Pour l’exemple précédent, les opérations de base du client sont les verbes en
gras (entrer, attendre, copier et communiquer).
L’algorithme ci-dessus nécessite de fournir comme données le numéro du
destinataire et le code secret : ce sont des données d’entrée de l’algorithme. Il produit
comme résultat le sms de confirmation d’envoi, ou celui contenant le code à 10 chiffres :
ce sont des données de sortie de l’algorithme. Les données d’entrée et de sortie sont
gardées dans des ‘boîtes’ appelées variables, qui permettent de conserver en mémoire
ces données pour leurs manipulation par le processeur. Par exemple, le code de 10
chiffres peut être recueilli sur un bout de papier par le client qui va ensuite le
communiquer à son destinataire.
Par ailleurs, un algorithme peut nécessiter l’usage de structures
conditionnelles (Si…alors…sinon) qui permettent d’exécuter un ensemble instructions
au cas où une condition est préalablement remplie, ou alors de passer à l’instruction
suivante (quand il n’y pas de clause « sinon »), ou d’exécuter un autre groupe
d’instructions (lorsque la clause « sinon » est utilisée). Dans notre exemple la condition
consiste à indiquer si le destinataire est un abonné d’Orange ou pas.
Enfin, un algorithme peut utiliser des structures répétitives ou boucles
assorties d’une condition d’arrêt, qui permettent d’exécuter plusieurs fois un même
groupe d’instructions jusqu’à ce que la condition d’arrêt soit satisfaite. Dans l’exemple
précédent, une boucle est représentée par la clause « Tant que » qui permet de répéter
l’instruction « Attendre » jusqu’à ce que la condition d’arrêt « arrêt de la validation en
cours » soit satisfaite.
Remarque :
On peut aussi commencer l’algorithme ci-dessus par saisir le code #150# au lieu
de #150*1#, mais la procédure est légèrement plus longue bien qu’aboutissant aux
mêmes résultats. Ceci illustre le fait qu’il peut exister plusieurs algorithmes pour
résoudre un même problème, mais ils n’ont pas forcément la même efficience.
Dans le contexte de ce cours, la donnée d’entrée sera en général un graphe et le
résultat pourra être divers objets tel qu’une valeur numérique, un autre graphe, une
valeur booléenne (vrai / faux) etc. Les algorithmes constituent de véritables outils de
démonstration mathématique dans le sens où, pour prouver par exemple qu’un graphe
9
Introduction à la théorie des graphes et à ses applications Août 2020
Suite à une analyse du programme officiel, on observe que l’étude des graphes doit
être orientée vers la résolution des problèmes de la vie courante. Nous introduisons le
vocabulaire et les concepts de base de la théorie des graphes dans la leçon 2, puis pour
chacune des leçons 3 à 6, nous étudierons une notion de la théorie des graphes. Il s’agit
notamment de la domination sur les graphes, des parcours des graphes, et du coloriage
des graphes. Pour chacune de ces notions, nous introduirons les définitions s’y
rattachant ainsi que les exemples associés, puis nous présenterons quelques propriétés,
et enfin des applications de la notion à la résolution de problèmes concrets. L'examen de
ces problèmes impliquant des graphes sera l’occasion de montrer que les mathématiques
sont des idées et des abstractions (et pas seulement des calculs) d'une manière à la fois
visuelle et étroitement lié aux expériences quotidiennes des élèves.
( )( )
Exercice 1 : Démontrer par récurrence que 1 + 2 + 3 + ⋯ + 𝑛 =
10
Introduction à la théorie des graphes et à ses applications Août 2020
P0 : si un sac contient 0 grain d’arachide et rien d’autre, alors il est vide et je peux
donc le soulever sans difficulté ;
Soit un entier naturel non nul k, supposons Pk et montrons que cela implique Pk+1.
Considérons pour cela un sac contenant k+1 graines d’arachides produites au
Cameroun cette année et rien d’autre. Je retire une graine d’arachide de ce sac, il en
reste donc k dans le sac et par hypothèse de récurrence, je peux le soulever. Je
soulève donc le sac puis j’ajoute la graine d’arachide que j’ai retirée. J’ai donc pu
soulever le sac à k+1 graines d’arachides, d’où Pk+1. Ainsi, la propriété Pn est vrai pour
tout entier naturel n y compris pour le nombre de graines d’arachide produites au
Cameroun cette année.
P1 : si un ensemble n’a qu’une seule graine d’arachide alors cette graine à une seule
couleur, et donc l’ensemble est constitué de graines d’une même couleur;
Soit un entier naturel k>1, supposons Pk et montrons que cela implique Pk+1.
Considérons pour cela un ensemble S de k+1 graines d’arachides. Je retire une
première graine d’arachide que je désigne a1 de cet ensemble, l’ensemble S privé de a1
que je note S-{a1} n’a plus que k graines d’arachide. Par hypothèse d’induction, ces k
graines ont la même couleur, disons rouge. Je remets a1 dans S et je retire une autre
graine a2. Par hypothèse d’induction, les k graines de S-{a2} ont la même couleur.
Etant donné qu’une graine ne peut avoir deux couleurs à la fois, les graines de S-{a2}
sont aussi rouges, or a1 appartient à S-{a2}, donc a1 a la couleur rouge. En conclusion
les k+1 graines de S ont la même couleur.
Le raisonnement de Njoya est sans doute pathologique puisque les assertions qu’il
dit avoir démontré sont clairement fausses. Où se trouve le problème dans sa façon
d’utiliser l’induction mathématique ?
Exercice 5 Récurrence forte. Démontrer par récurrence que tout entier naturel non
nul admet un diviseur premier.
11
Introduction à la théorie des graphes et à ses applications Août 2020
Début
1 – Afficher à l’écran : « veuillez entrer un entier naturel »
2- Enregistrer la valeur de l’entier fournit dans la
variable m.
3- Considérer une variable i de valeur 1
4- Tant que i ≤ 10 effectuer ce qui suit :
Si i est paire alors afficher p = i x m
Ajouter 1 à la valeur de i
Fin
12
Introduction à la théorie des graphes et à ses applications Août 2020
2.1 Définitions
* Un graphe G est constitué d’un ensemble V(G) dont les éléments sont appelés
sommets et d’un ensemble E(G) disjoint de V(G) et dont les éléments sont appelé
arêtes, tels qu’à chaque arête a ∈ E(G) est associé une paire {u,v} éléments de V(G). Le
cas échéant, les sommets u et v, appelés extrémités de a, sont dit adjacents et a est
dite incidente à u et à v.
* Deux arêtes a et b d’un graphe G sont dites parallèles si elles sont associées à
une même paire de sommets.
* Une boucle dans un graphe G est une arête ayant pour extrémités un même
sommet.
* Le nombre de sommets |V(G)| d’un graphe G est appelé son ordre et le nombre
d’arêtes |E(G)| de G est appelé sa taille.
Soit G un graphe :
- Si E(G) est vide le graphe est dit discret.
- Si V(G) et E(G) sont tous deux vides, le graphe correspondant est le graphe nul.
- Si l’ordre et la taille de G sont finis, le graphe G est dit fini. Dans ce cours, tous les
graphes seront supposés finis.
- Si G n’a pas d’arêtes parallèles ni boucle, alors G est un graphe simple ; dans le cas
contraire, G est un multigraphe.
2.1.2 Remarques
13
Introduction à la théorie des graphes et à ses applications Août 2020
2.2.1
.1 Représentation d’un graphe dans le plan
Pour représenter un graphe dans le plan, l’on dessine pour chaque sommet du
graphe un point (cercle), puis l’on trace des lignes (pas nécessairement droites) entre
deux points pour représenter
er des sommets adjacents ; Chaque
haque ligne symbolise une arête.
Dans la représentation d’un graphe dans le plan
plan,, il n’est pas permis qu’une arête se
coupe elle-même
même ou passe par un sommet autre que sont extrémité. Il va de soit que
cette représentation n’a pas toujours la même configuration dans le plan; en d’a
d’autre
termes, à chaque graphe correspond une infi
infinité
nité de représentation dans le plan.
plan
2.2.2 Exemple
b
a
a1 u v
s2
g y
e c
s1 a3 h f
s3 x w
d
a2
F G
14
Introduction à la théorie des graphes et à ses applications Août 2020
2.2.3 Remarque
Bien que la représentation décrite ci-dessus soit très pratique comme support à
l’intuition dans l’étude des graphes, elle n’est pas adaptée au stockage efficient des
graphes en ordinateur, et ne permet pas de faire usage des outils mathématiques telle
que l’algèbre linéaire pour leur étude. Pour satisfaire ces besoins, d’autres
représentations existent, notamment la représentation matricielle et la
représentation en liste d’adjacence pour les graphes simples.
Les opérations suivantes sont utiles pour obtenir ou définir des graphes de tailles
ou d’ordres plus petits à partir d’un graphe donné. Par ailleurs, savoir les manipuler est
indispensable pour prouver par récurrence certaines propriétés sur les graphes.
2.3.1 Définitions
v1 v1
v3 v4 v3 v4
v3 v4 G – v1
G
15
Introduction à la théorie des graphes et à ses applications Août 2020
Une caractéristique locale importante des graphes est la notion de degré d'un
sommet.
2.4.1 Définitions
* Soit G un graphe, le degré d'un sommet v ∈ V (G) noté dG(v) (ou simplement
d(v) ) est le nombre d'arêtes incidentes à v dans G.
* Le plus grand degré (respectivement le plus petit degré) de tous les sommets de
G est noté ∆ (G) (respectivement δ (G)). Un sommet de degré k (au moins k ou au plus k
respectivement) est appelé k-sommet (respectivement k+-sommet ou k-- sommet).
16
Introduction à la théorie des graphes et à ses applications Août 2020
*L'ensemble des sommets adjacents à v noté NG(v) est appelé son voisinage.
Lorsque G est un graphe simple, dG(v) est égale au cardinale de NG(v) pour tout
sommet v ∈ V (G).
* Pour tout entier naturel non nul k, un graphe G est dit k-régulier lorsque tous
ses sommets sont de degré k.
2.4.2 Exemple
On considère le graphe H représenté par la figure suivante :
∆ (H) = 4 et δ (H) =0 ;
x2 x3
La séquence de degré de H est : 4 4 4 3 3 0 ; Par
H
conséquent la suite 4 4 4 3 3 0 est graphique.
Que remarquez-vous ?
Dans tout graphe G, la somme des degrés de tous les sommets est égale au double de la
taille du graphe. ∑ ∈ ( )𝑑 (𝑣) = 2|𝐸(𝐺)| .
17
Introduction à la théorie des graphes et à ses applications Août 2020
Nous avons observé au deuxième paragraphe qu’un même graphe admet une
infinité de représentations dans le plan. Cette observation permet d’introduire une sorte
de relation « d’égalité » dans l’ensemble des graphes, pour laquelle deux graphes sont
« égaux » lorsqu’ils peuvent être représentés dans le plan à l’aide du même diagramme.
Par exemple, considérons les graphes G1 tel que V(G1) = {a, b, c, d} ; E(G1) = {ab, bc, cd},
et G2 tel que V(G2) = {w, x, y, z} et E(G2) = {wz, zx, xy}. G1 et G2 peuvent être représentés
par le graphique suivante :
v1 v3 v4
v2
2.5.1 Définitions
Un graphe G est isomorphe à un graphe G’ si il existe une bijection f entre V(G) et
V(G’), et une bijection g entre E(G) et E(G’) telles que tout arête e ∈ E(G) a pour
extrémités u et v si et seulement si l’arête g(e) ∈ E(G’) a pour extrémités f(u) et f(v).
18
Introduction à la théorie des graphes et à ses applications Août 2020
On note 𝑮 ≅ 𝑮′, pour dire que G est isomorphe à G’. Le couple de bijection (f,g) est
appelé un isomorphisme de graphes.
2.5.2 Exemple
Considérons les graphes F, G et H représentés par les figures ci-dessous.
x1 x2 x3 u6 u7
v1 v2 v3 v4 v5
x4 u5 u4
v6 v7 x5 x6 x7 u1 u2 u3
F G H
Les graphes F et G sont isomorphes, pour le voir il suffit de faire correspondre les
sommets v1, v2, v3, v4, v5, v6 et v7 aux sommets x5, x1, x4, x7, x3, x2 et x6 respectivement. Par
contre, le graphe H n’est pas isomorphe aux deux premiers (Exercice 2). On constate par
ailleurs que ces trois graphes ont le même ordre 7, la même taille 6 et la même séquence
de degrés 3 3 2 1 1 1 1.
2.5.3 Remarques
2.6 Sous-graphes
2.6.1 Définitions
* Un graphe H est appelé sous-graphe d'un graphe G, si H est identique à G ou si H
obtenu de G par suppression de sommets et/ou arêtes.
19
Introduction à la théorie des graphes et à ses applications Août 2020
2.6.2 Remarques
* Lorsque H est identique à G, H est appelé sous-graphe
graphe impropre de G. Dans le cas
contraire H est un sous-graphe
graphe propre de G.
2.6.3 Exemple
Considérons les graphes représenté
représentés ci-dessous
x5
x6 x5 x6
x4
x1 x4
x1 x4
x1
x3 x3
x2 x3 H J
G
Le graphe H est un sous
sous-graphe de G mais pas un sous-graphe
graphe induit puisque
l’arête x4x6 n’est pas présente dans H. Par contre le graphe J est un sous-graphe
sous induit
de G et de H.
Exercice 2 : Prouver que les graphes G et H de l’exemple 2.5.2 ne sont pas isomorphes.
20
Introduction à la théorie des graphes et à ses applications Août 2020
a) Montrer que 𝑚 ≤ ∁ .
b) Sous quelle condition il y a-t-il égalité ?
c)) Décrire un groupe de cinq personnes tel que, pour tout couple de personnes aient
toujours exactement un ami en commun.
G J
H
Exercice 7 : Prouvez que tout graphe G contient un nombre pair de sommets de degré
impair.
21
Introduction à la théorie des graphes et à ses applications Août 2020
3.1 Introduction
3.2 Définitions
Soit G un graphe.
22
Introduction à la théorie des graphes et à ses applications Août 2020
3.3 Exemple
Figure 1 : un graphe G
Tout d'abord, nous pouvons clairement remarquer que tous les sommets forment
un ensemble dominant, mais nous voulons trouver le plus petit ensemble en termes
nombre de sommets. Notez que nous pouvons choisir {A, E} comme ensemble dominant,
puisque E se domine lui-même et domine les sommets qui lui sont adjacents, B, D et F.
De même A se domine lui-même et ses voisins B et C. Les autres ensembles dominants
sont {B, E} et {C, E}. Nous savons donc que deux sommets suffisent pour dominer le
graphe G, d’où γ(G) ≤ 2. Pour établir que γ(G) = 2, il faut montrer qu'un seul sommet ne
peut pas dominer G. Pour le voir, notez qu'aucun sommet n'est adjacent à chaque
sommet du graphe. D'où γ(G) = 2.
3.4 Remarques
23
Introduction à la théorie des graphes et à ses applications Août 2020
3.6 Propriétés
La propriété suivante qui fut établie par Ore est fondamentale pour tout
ensemble dominant minimal d’un graphe donné:
Théorème d’Ore:
Démonstration :
24
Introduction à la théorie des graphes et à ses applications Août 2020
3.7 Applications
Maintenant que nous avons une bonne idée de la notion de domination dans les
graphes, comment pouvons-nous en faire usage dans la vie de tous les jours ? La notion
de domination s’applique généralement bien à des situations dans lesquelles l’on
souhaite minimiser le nombre de facilités tout en assurant une couverture complète des
besoins. En bout de chaîne, il est notamment question de minimiser les coûts (temps,
argent…) liés à la mise en place de ces facilités. Voici un exemple de problème qui peut
être modélisé par un graphe et traité en utilisant la notion de domination :
Problème :
Supposons que la ville de Yaoundé compte huit principaux marchés reliés par des
routes. Le tableau suivant indique quels marchés sont reliés par au moins une route, où
la mention « Y » est portée pour signifier que la distance reliant deux marchés est de
moins de 3 km. Face à la recrudescence des incendies dans les marchés de la ville, la
communauté urbaine à pris un certain nombre de mesures. Entre autre, en collaboration
avec le ministère de la défense, elle a décidé de l’installation au sein de chaque marché
d’un poste de sécurité incendie pour les cas d’urgence, ou à défaut qu’il ait un poste à
moins de 3 km à la ronde de chaque marché. Par ailleurs, compte tenu des contraintes
budgétaires, il est question de ne déployer que le minimum de postes possible pour
atteindre cet objectif. Les marchés de la ville sont codifiés par les lettres A, B, C, D, E, F,
G et H.
25
Introduction à la théorie des graphes et à ses applications Août 2020
Questions :
Solution :
26
Introduction à la théorie des graphes et à ses applications Août 2020
Pour répondre à la première question, nous devons trouver le plus petit ensemble
dominant du graphe. L’ensemble dominant {C, F} dominera G. Le sommet C se domine
lui-même, ainsi que les domaines A, D, E et H. Le sommet F domine B, G, E et lui-même.
Donc γ (G) ≤ 2. Par ailleurs, pour établir que γ (G) = 2, il suffit de montrer qu’un
sommet ne peut pas dominer le graphe. Comme nous n’avons pas de sommet qui soit
adjacent à chaque sommet du graphe, nous concluons que γ (G) = 2. Maintenant
interprétons notre solution en fonction de notre problème du monde réel. Nous pouvons
en déduire que deux postes de sécurité incendie, situés dans les marchés C et F, sont
suffisants pour que chacun des autres marchés ait un poste à proximité.
27
Introduction à la théorie des graphes et à ses applications Août 2020
2
Société de ramassage et de traitement d’ordures ménagère
28
Introduction à la théorie des graphes et à ses applications Août 2020
Exercice n°2 : Supposons que nous avons une collection de petites villes le long de la
chaîne montagneuse de Mbatpit dans les régions des Haut-plateaux de l’Ouest. Nous
aimerions créer des stations de radio dans certaines villes afin que des informations
puissent être diffusées dans toutes les villes de la région. Depuis chaque radio la station
a une portée de diffusion limitée, 50 km, nous devons utiliser plusieurs stations pour
atteindre toutes les villes. Mais, les stations de radio sont coûteuses, nous devons donc
en construire aussi peu que possible. Les emplacements des treize villes sont indiqués
dans la grille ci-dessous avec distances entre la ville en km.
Quel est le plus petit nombre de station que l’on doit construire ?
29
Introduction à la théorie des graphes et à ses applications Août 2020
Dans ce quatrième chapitre, nous examinons les premières notions liées au parcours
des arêtes et des sommets d’un graphe. Il s’agit des notions de chemin, d’arbre couvrant
et de connexité. Ces notions ont des applications particulièrement utiles dans la
résolution d’un grand nombre de problèmes concrets. Par exemple, nous verrons plus
tard comment utiliser ces concepts pour l'optimisation d'un réseau routier.
Cette section est consacrée à une question qui, posée par rapport aux graphes que
nous avons examinés, semble triviale. Cette question est: étant donné deux sommets, s
et t, d'un graphe, peut-on aller de s à t en parcourant une suite d’arêtes et de sommets ?
Cette question devient intéressante lorsque l’ordre et la taille du graphe sont grands.
Une chaine C dans un graphe G est une suite s0 a1 s1…sm-1 am sm dont les éléments
sont alternativement des sommets et des arêtes de G, et telle que si-1 et si sont les
extrémités de ai pour i ∈ {1,…,m}. Cette chaine a pour extrémités s0, et sm et est aussi
noté s0Csm.
Un chemin est une chaine dans laquelle aucun sommet ni arête n'est répété.
Lorsque dans une chaine aucune arête n’est répétée et seuls les sommets de début et de
fin sont identiques, on parle de chemin fermé ou cycle. Soit v et w les sommets d'un
graphe, v est connecté à w s'il existe un chemin de v à w.
Les notions de chemin et de cycle permettent de définir les deux catégories très
importantes de graphes que sont les graphes connexes et les arbres. Un graphe est dit
connexe si pour toute paire u et v de sommets, il existe un chemin dans le graphe
contenant u et v. Un arbre est un graphe connexe ne contenant aucun cycle. Un arbre
couvrant d'un graphe connexe G est un arbre qui est un sous-graphe de G et qui
contient chaque sommet de G.
4.1.2 Exemple
Identifiez en le justifiant lesquels des graphes de la figure 1 suivante sont des
arbres?
30
Introduction à la théorie des graphes et à ses applications Août 2020
Figure : 1
Nous pouvons voir que la figure 1.a représente un arbre car c'est un graphe connexe
sans cycles. La figure 1.b n'est pas celle d’un arbre car elle contient un cycle, et le graphe
de la figure 1.c n'est pas un arbre car ce graphe n'est pas connexe.
u s4
s1 w
C ■
s2
s2 s3
Figure : 2 31
Introduction à la théorie des graphes et à ses applications Août 2020
Figure : 3
Nous allons construire un premier arbre couvrant de ce graphe. Pour cela, nous
observons que la deuxième partie de la démonstration du théorème décrit en réalité un
algorithme de construction d’arbre couvrant qui consiste à identifier chaque cycle du
graphe et d’en supprimer une arête. Le graphe de la figure 3 contient trois cycles à savoir
le cycle a-b-c-d-e-a, le cycle a-b-d-e et le cycle b-c-d. Les deux derniers cycles ont en
commun l’arête bd. On peut choisir de supprimer l’arête bd pour ces deux cycles et
l’arête bc pour le premier. Nous obtenons ainsi le premier arbre couvrant avec 7 arêtes
(figure 4). Notez que cet arbre couvrant n'est pas unique. Nos choix d’arêtes à supprimer
l'ont déterminé. Essayez à présent de retrouver les dix autres arbres couvrants de ce
graphe.
Figure : 4
32
Introduction à la théorie des graphes et à ses applications Août 2020
Le poids d’un chemin (resp. poids d’un arbre couvrant) dans un graphe
valué est la somme des poids des arêtes composant ce chemin (resp. cet arbre couvrant).
4.2.2 Exemple
Le graphe G de la figure 5 ci-dessous est un graphe pondéré. Le poids du chemin
a-b-c-d vaut 1 + 2 + 3 = 6. Le poids de l’arbre couvrant correspondant à celui de la figure
4 est égale à 1 + 2 +4 + 3 + 1 + 3 + 3 = 17.
Figure : 5
3
Breadth-First Search en anglais
33
Introduction à la théorie des graphes et à ses applications Août 2020
3. Pour chaque sommet marqué d'un 1, trouvez une arête qui le relie au sommet étiqueté 0.
Assombrir ces arêtes.
4. Recherchez les sommets non étiquetés adjacents à ceux avec l'étiquette 1 et étiquetez-les 2. Pour
chaque sommet étiqueté 2, trouvez une arête qui le relie à un sommet étiqueté 1. Assombrissez
cette arête. S'il existe plus d'une arête, choisissez-en une arbitrairement.
5. Continuez ce processus jusqu'à ce qu'il n'y ait plus de sommets sans étiquette adjacents à ceux
étiquetés. Si tous les sommets du graphe ne sont pas étiquetés, alors il n’existe pas d’arbre couvrant
pour le graphe. Si tous les sommets sont étiquetés, alors les sommets et les arêtes assombries
forment un arbre couvrant du graphe.
34
Introduction à la théorie des graphes et à ses applications Août 2020
Figure : 6
1. Trouvez l'arête avec les plus petits poids dans le graphe. L'assombrir et encerclez ses
deux sommets. Les liens sont rompus arbitrairement.
2. Trouvez l’arête avec le plus petit poids parmi les arêtes non assombris restants ayant
un sommet encerclé et un sommet non encerclé. Assombrir cette arête et son sommet
non encerclé.
Application :
Nous allons utiliser l’Algorithme de Prim pour construire un arbre couvrant de poids
minimum pour le graphe pondéré de la figure 5 reproduite ci-dessous :
À l'étape 1, nous pouvons voir qu’il y a deux arêtes de poids minimal; l’arête ef et l’arête
ab ont un poids de 1. Nous choisissons l’arête ef que nous assombrissons, puis nous
encerclons les sommets f et e.
35
Introduction à la théorie des graphes et à ses applications Août 2020
À l'étape 2, nous pouvons voir que l’arête ae de poids 2, est le plus petit poids parmi les
arêtes non assombris restants dont un sommet est encerclé et l’autre pas. Par
conséquent, nous pouvons assombrir l’arête ae et encercler le sommet a.
L'étape 3 indique que nous devons répéter l'étape 2, ainsi nous pouvons assombrir l’arête
ab de poids 1 et encercler le sommet b. Ensuite, nous assombrissons l’arête bc de poids 2
et encerclons le sommet c. Notez que nous avons maintenant le choix, l'arête fg de poids
3, l’arête fh de poids 3 et l’arête cd de poids 3 sont tous des choix possibles.
Assombrissons l’arête cd et encerclons le sommet d par exemple, puis assombrissons
l’arête fg et encerclons g, puis faisons de même pour l’arête fh et le sommet h. Tous les
sommets ont été encerclés et sont connecté, nous avons donc un arbre couvrant
minimum avec un poids minimal de 3 + 3 + 1 + 2 + 1 + 2 + 3 = 15. (Voire figure 7).
Figure : 7
4.2.5 Problème 3 : Détermination d’un chemin de poids minimum entre deux sommets
Comme dans les cas précédents, il existe une méthode très peu efficace qui
consiste à considérer tous les chemins menant d’un sommet de départ à un sommet
d’arrivée et de chercher le plus court. Dans le cas des graphes pondérés, il existe un
algorithme très efficace et largement utilisé, qui a été décrit par le mathématicien
Dijkstra, qui s’appuie sur l’hypothèse suivante :
Si le plus court chemin reliant le sommet u (entrée) au sommet v (sortie) passe par les
sommets s1,s2,...,sk alors, les différentes étapes sont aussi les plus courts chemins reliant
u aux sommets successifs s1,s2,...,sk.
36
Introduction à la théorie des graphes et à ses applications Août 2020
Algorithme de Dijkstra
3. Tant qu’il reste des sommets dont les poids ne sont pas définitivement fixés, répéter
les instructions suivantes :
3.1. Parmi les sommets dont le poids n’est pas définitivement fixé, choisir un sommet X
dont le poids p est minimal, puis fixer définifivement p comme poids de X.
3.2. Pour tous les sommets Y dont le poids n’est pas définitivement fixé et qui sont
adjacents au dernier sommet fixé X, calculer la somme s du poids de X et du poids de
l’arête reliant X à Y.
Application :
Sur le tableau suivant sont indiqués les temps moyens (en minutes) mis par un
automobiliste pour relier deux lieux de la ville de Yaoundé. On souhaite aller d’un point
R (Rond-point Express) au point M (Marché central). Déterminons un chemin qui soit le
plus rapide à l’aide de l’algorithme de Dijkstra?
R A C U H M
(Rond-point (Assemblé (Carrefour (Université (Hilton (Marché
Express) nationale) ENAM) Yaoundé I) Hotel) central)
R 9 12
A 5 7
C 9 8 14
U 11
H 7
M
37
Introduction à la théorie des graphes et à ses applications Août 2020
automobile entre les lieux qu’ils représentent. Les poids sur les arêtes représentent la durée
moyenne.
38
Introduction à la théorie des graphes et à ses applications Août 2020
Etape 4 : Tous les sommets ayant été fixés, on lit « à l’envers » la solution : M, qui vient
de C, qui vient de A, qui vient de R. D’où le trajet de le plus rapide est celui de Rond-
point Express –> Assemblée nationale –> Carrefour ENAM -> Marché central.
Exercice 1 :
Exercice 2 :
Les ordinateurs dans chaque bureau de l’Ecole normale supérieure de Maroua doivent
être connectés par câble. Le graphe ci-dessous donne le coût de chaque connexion en
milliers de francs CFA. Quel est le coût minimal pour connecter les 14 postes de travail ?
39
Introduction à la théorie des graphes et à ses applications Août 2020
c)
a) b)
Le graphe a) n’est pas complet car bien qu’il ait un sommet adjacent aux trois
autres, ces derniers ne sont pas adjacents à plus d’un sommet. Les graphes b) et c) sont
complets et se notent respectivement K3 et K2.
c)
a) b) 40
Introduction à la théorie des graphes et à ses applications Août 2020
5.2.1 Définition
Un cycle eulérien dans un graphe est un cycle composé de toutes les arêtes du
graphe prises une seule fois. Un graphe possédant un cycle eulérien est un graphe
eulérien. Lorsque le sommet d’arrivé diffère du sommet de départ, on parle alors de
chemin eulérien.
5.2.2 Exemple
5.2.3 Propriété
Il existe une caractérisation simple des graphes eulériens qui fut trouvée par le
mathématicien Euler au XVIIIe siècle. Elle est donnée par le théorème suivant :
Théorème d’Euler
• Un graphe connexe possède un chemin eulérien si et seulement si tous ses sommets sont
de degré pair sauf deux.
• Un graphe connexe possède un cycle eulérien si et seulement si tous ses sommets sont de
degré pair.
41
Introduction à la théorie des graphes et à ses applications Août 2020
5.2.4 Application
2. Au 18e siècle, une énigme est populaire chez les habitants de Königsberg (aujourd’hui
Kaliningrad, Russie) : est-il possible de se promener dans la ville en ne passant qu’une et
une seule fois par chacun des sept ponts de Königsberg (Voire la carte ci-dessous où les
ponts numérotés de 1 à 7 sont matérialisés par des traits rouges)? Il s’agit en fait
d’effectuer le parcours en revenant à son point de départ. C’est l’approche de résolution
de ce casse-tête proposée par le célèbre mathématicien Léonard Euler (1707-1783) qui va
marquer le point de départ de l’étude des graphes comme objets mathématiques. C’est
pour lui rendre hommage que l’on a désigné ce type de cycles, des cycles eulériens.
Euler va modéliser ce problème par un graphe dont les sommets représentent les
bouts de terre séparés par le fleuve (identifiés par les lettres À, B, C et D sur la carte).
Deux sommets du graphe sont adjacent si et seulement si un pont relie les bouts de terre
qu’ils représentent. On obtient le graphe suivant :
42
Introduction à la théorie des graphes et à ses applications Août 2020
5.3.1 Définition
Un chemin hamiltonien est un chemin qui visite chaque sommet d'un graphe
exactement une fois. Un cycle hamiltonien est un chemin hamiltonien qui commence
et se termine au même sommet.
5.3.2 Exemple
Essayez de trouver un cycle hamiltonien dans chaque des graphes ci-dessous.
Nous pouvons facilement observer que les figures (a) et (b) présentent également
un chemin hamiltonien, par définition d’un cycle hamiltonien. Dans les exemples ci-
dessus, élimiez le dernier sommet indiqué dans les cycles donnés et vous obtenez un
chemin ; par exemple la figure (a) présente le chemin, a-d-e-c-d-f. Ainsi, tout graphe
ayant un cycle hamiltonien a un chemin hamiltonien. Cependant, il existe parfois des
graphes qui ont un chemin hamiltonien mais qui n’ont pas de cycle hamiltonien. Par
exemple, la figure (c) possède un chemin hamiltonien mais pas de cycle. L'un de ces
chemins est indiqué par c-a-b-d-e-f.
43
Introduction à la théorie des graphes et à ses applications Août 2020
5.3.3 Propriété
Les cycles hamiltoniens sont intéressants pour les mathématiciens car il n'existe
pas une façon simple permettant de déterminer si un graphe a un cycle hamiltonien.
Nous examinerons plus tard deux approches différentes pour essayer de déterminer si
un graphe a un cycle hamiltonien. Pour l'instant, les différentes approches sont les
meilleures que nous puissions faire pour trouver un cycle hamiltonien. Les
mathématiciens ont conclu qu'il peut être impossible de trouver une approche générale
qui fonctionnera pour n'importe quel graphe.
5.3.4 Applications
Revenons maintenant à la figure (a) du paragraphe 4.3.2 et vérifions le degré de
chaque sommet. Comme chacun des six sommets du graphe a un degré d'au moins 6/2 =
3, le graphe a un cycle hamiltonien. Ainsi, avant même que nous ayons essayé de trouver
un cycle hamiltonien, ce théorème garantit que nous en trouverons au moins un.
Malheureusement, ce théorème ne nous dit pas concrètement comment trouver un tel
cycle dans le graphe.
Maintenant que nous avons une compréhension du concept des chemins et des
cycles Hamiltoniens, comment pouvons-nous l’utiliser dans les situations quotidiennes ?
44
Introduction à la théorie des graphes et à ses applications Août 2020
Problèmes potentiels
1. Déterminer les rangs d'une équipe dans une compétition où chaque équipe joue contre
chaque autre équipe.
S Do Da U
Saint-Joseph (S) 0 0 0 1
Dominique Savio (Do) 1 0 0 1
Damas Ondoua (Da) 1 1 0 1
Um Nyobe (U) 0 0 0 0
N'oubliez pas que la matrice se lit de ligne en colonne, un "1" représentant une
victoire. Par exemple, le "1" dans l'entrée Damas Ondoua – Dominique Savo signifie que
le lycée Damas Ondoua a battu le lycée Dominique Savio.
45
Introduction à la théorie des graphes et à ses applications Août 2020
Après avoir examiné le digraphe, nous pouvons voir que le seul chemin
Hamiltonien est le Da-Do-S-U. Alors, interprétons notre solution en fonction de notre
problème réel. Le chemin hamiltonien donne une séquence d'équipes où chaque équipe
bat la suivante. Ainsi, le chemin Hamiltonien Da-Do-S-U sert également de classement.
Le lycée Damas Ondoua s'est classé premier, le lycée Dominique Savio deuxième, Saint-
Joseph troisième et le lycée Um Nyobe dernier.
Quartiers Coût
(CFA)
Anguissa – Odza 400
Anguissa – Mendong 550
Anguissa – Emana 1260
Odza – Mendong 270
Odza – Mendong 910
Mendong – Emana 670
670 910
E
46
Introduction à la théorie des graphes et à ses applications Août 2020
O E
O E E O
E O E O
M M M M M M
47
Introduction à la théorie des graphes et à ses applications Août 2020
le plus proche, puis au sommet le plus proche non encore visité, et revenons à M lorsque
toutes les autres villes ont été visitées. Dans ce cas, le sommet le plus proche est le
sommet qui coûte le moins cher. Par conséquent, le cycle commencerait à Mendong, puis
à Odza, Anguissa, Emana, et reviendrait à Mendong. Dans ce cas, le poids minimum est
donc de 270 + 400 + 1, 260 + 670 = 2, 600. Ainsi, le voyage coûterait à votre entreprise 2
600 $.
Mais, nous avons déjà découvert que le déplacement aller-retour le moins cher
coûterait 2 530 $. Ainsi, même si la méthode du plus proche voisin donne une solution
très rapide, elle ne donnera pas toujours la bonne solution. Vous pouvez maintenant
comprendre pourquoi il n'existe pas de solution générale au problème du voyageur de
commerce qui fonctionne dans toutes les situations. Soit on choisit la méthode de la force
brute, qui garantit le meilleur itinéraire mais qui est d'une lenteur prohibitive pour de
grands graphes ou la méthode du plus proche voisin, qui est rapide mais ne garantit pas
la meilleure solution.
Excercice 1 : Parmi les dessins suivants, lequel peut être dessiné sans retirer votre crayon
du papier et sans tracer de ligne deux fois ?
(a) (b)
Excercice 2 : Examinez les graphes suivants. Déterminez lesquels des graphes ont un
chemin eulérien et trouvez un chemin eulérien pour les graphes qui en ont un.
48
Introduction à la théorie des graphes et à ses applications Août 2020
(N'oubliez pas d'utiliser le théorème que nous avons appris sur certains cycles
hamiltoniens des graphes !)
Excercice 5 : Dessinez un graphe hamiltonien connexe qui a cinq sommets. Marquez vos
sommets et indiquez le cycle hamiltonien dans votre graphe.
Excercice 6 : Dessinez un tournoi à cinq joueurs, où le joueur A bat tout le monde, C bat
tout le monde sauf A, B est battu par tout le monde et D bat E.
Le Théorème est vrai pour n = 3, car alors G = K3. Supposons qu’il soit vrai pour n = k, où
k ≥ 3. Soit G′ un graphe simple à k sommets dans lequel la degré minimum δ ≥ k/2, et C′
un cycle hamiltonien de G′. Formons un graphe G à k + 1 sommets pour lequel δ ≥ (k +
1)/2 en ajoutant un nouveau sommet v et en reliant ce sommet à au moins (k + 1)/2
sommets de G′. Notons que v doit être adjacent à deux sommets consécutifs, u et w, de C ′.
En remplaçant l’arête uw de C′ par le chemin uvw, nous obtenons un cycle hamiltonien C
de G. Ainsi le Théorème est vrai pour n = k + 1. Par le Principe de Récurrence
Mathématique, il est donc vrai pour tout n ≥ 3.
49
Introduction à la théorie des graphes et à ses applications Août 2020
50
Introduction à la théorie des graphes et à ses applications Août 2020
Figure 1
Remarquez qu'un graphe G à n sommets peut toujours avoir un n-coloriage. Mais
que faire si nous voulons déterminer le plus petit nombre de couleurs nécessaires pour ce
graphe? En d'autres termes, nous voulons trouver le nombre chromatique de G. En
regardant la figure 1 ci-dessus, nous pouvons trouver un 4-coloriage, un 3-coloriage et
même un 2-coloriage pour le graphe G1, essayez de le faire. Cependant, il n'y a pas de k-
coloriage où k < 4 pour le graphe de G2, puisque G2 = K4 et donc chaque sommet est
adjacent à tous les autres sommets. Ainsi, si nous regardons une fois de plus les graphes
51
Introduction à la théorie des graphes et à ses applications Août 2020
de la figure 1, nous pouvons voir que χ(G1) = 2 et χ(G2) = 4. Notez que nous n'avons donné
que les nombres chromatiques de ces deux graphes, nous n'avons pas prouvé que nous
connaissions le nombre chromatique.
Figure 2
Figure 3
Nous affirmons que le nombre chromatique est au maximum de 4 parce que nous
pouvons trouver un 4-coloriage de ce graphe. Supposons que les sommets de H soient
52
Introduction à la théorie des graphes et à ses applications Août 2020
étiquetés comme dans la figure 3(b). Par exemple, v1 et v4 peuvent être de couleur bleu
(B), v2 de couleur rouge (R), v3 de couleur verte (V) et v5 de couleur jaune (J).
Notez que plus le nombre de sommets dans un graphe augmente, plus il sera
difficile de les colorier. Ainsi, vous pourriez penser qu'un algorithme de coloriage serait
la réponse. Cependant, il n'existe pas d'algorithme efficace connu pour colorier un graphe
avec le moins de couleurs possible. En fait, trouver un tel algorithme pour trouver le
nombre chromatique est un fameux problème non résolu ! Vous pouvez essayer l'une des
approches suivantes :
53
Introduction à la théorie des graphes et à ses applications Août 2020
1. Commencez par dresser une liste de tous les sommets en commençant par
ceux du degré le plus élevé et en terminant par ceux du degré le plus bas.
2. Colorez le sommet non coloré le plus élevé de votre liste avec une couleur
non utilisée.
4. Si tous les sommets sont maintenant colorés, vous avez terminé. Sinon,
retournez à l'étape 2.
Etape 4 : On choisit une nouvelle couleur, le ’’2’’, pour le sommet non coloré le plus
élevé, C.
Étape 6 : Choisissez une nouvelle couleur, le ’’3’’, pour le sommet non coloré le
plus élevé, D.
54
Introduction à la théorie des graphes et à ses applications Août 2020
2. Assignation des fréquences à des stations de radio où les fréquences interféreraient les
unes avec les autres si les stations étaient trop proches.
3. Coloriage d’une carte où deux pays doivent être peints différemment s'ils partagent
une frontière.
Nous allons traiter le Problème 1 et laisser la résolution des deux autres problèmes en
exercice.
55
Introduction à la théorie des graphes et à ses applications Août 2020
pas se réunir le même jour. Deuxièmement, l'école ne veut pas être ouverte tous les jours
pour les activités extrascolaires telles que les clubs. Vous devez donc prévoir aussi peu de
jours de la semaine pour les clubs que possible. Vous trouverez ci-dessous la liste des
clubs et de leurs membres qui appartiennent à plus d'un club.
La question est la suivante : quel est le nombre minimum de jours nécessaires pour que
deux clubs partageant un membre ne se réunissent pas le même jour ?
Nous devons donc maintenant représenter notre problème à l'aide d'un modèle
graphe. Faisons en sorte que les sommets de notre graphe représentent les différents
clubs, où deux sommets sont adjacents si les clubs qu'ils représentent partagent un
membre. Par exemple, le club de journal serait adjacent au club de mathématiques, car
Olinga et Djouldé sont toutes deux dans ces clubs. Voici un modèle mathématique :
56
Introduction à la théorie des graphes et à ses applications Août 2020
On peut voir que quatre couleurs sont nécessaires pour colorier le graphe. Alors,
interprétons notre solution en fonction de notre problème réel. Nous pouvons voir que
quatre jours sont nécessaires pour que chaque club se réunisse une fois par semaine.
Notez qu'en raison de l'implication de Nsangou dans beaucoup de clubs, quatre jours,
c'est le minimum absolu. Voici un tableau pour voir le calendrier plus clairement.
57
Introduction à la théorie des graphes et à ses applications Août 2020
Supposons que le CNC approuve une nouvelle loi selon laquelle les stations situées dans
un rayon de 50 km les unes des autres doivent se voir attribuer des fréquences
différentes.
Les emplacements des sept stations sont indiqués dans la grille ci-dessous avec les
distances entre les stations en km.
A B C D E F G
A - 45 55 70 60 85 90
B 45 - 50 30 25 60 75
C 55 50 - 10 53 80 90
D 70 30 10 - 47 65 70
E 60 25 53 47 - 35 49
F 85 60 80 65 35 - 53
G 90 75 90 70 49 53 -
Le CNC veut que vous attribuiez une fréquence à chaque station afin que deux stations
ne se gênent pas entre elles. Le CNC souhaite également que vous attribuiez le moins de
fréquences possible.
Exercice 3 : Vous avez peut-être remarqué, dans votre cours de géographie, que les
cartes sont toujours colorées, de sorte que les pays voisins n'ont pas la même couleur.
Cela permet de distinguer facilement les pays entre eux et de ne pas les confondre.
Supposons qu'un cartographe vous donne une carte du Cameroun.
Quel est le nombre minimal de couleur pour colorier cette carte ? Proposer un coloriage
de la carte du Cameroun avec ce nombre minimal de couleur. ( Considérer chaque région
comme un sommet du graphe à construire).
58
Introduction à la théorie des graphes et à ses applications Août 2020
Bibliographie
Levasseur, K., Doerr, A., & (2019). Applied Discrete Structures. Version 3.6 Lulu. com.
Smithers, D. B. (2005). Graph Theory for the Secondary School Classroom. Master thesis
in Mathematical Sciences.
T.W. Haynes, S.T. Hedetniemi, and P.J. Slater, (1998) Fundamentals of Domination in
Graphs, Marcel Dekker, New York,.
59