]> AND Private Git Repository - cours-maths-dis.git/blob - graphes/GraphesNonOrientes.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
modifs main et arithmétiques
[cours-maths-dis.git] / graphes / GraphesNonOrientes.tex
1
2
3 La notion de graphe généralise amplement la notion de relation sur un ensemble ; elle s'intéresse à la façon dont sont liés les objets. Avec les plans de métro, les cartes routières, les schémas de circuits électriques, les formules des molécules, les organigrammes, les arbres généalogiques, on utilise chaque jour des graphes...
4
5 \section{Définitions et premiers exemples}
6
7
8 \subsection{Définitions}
9
10 \begin{Def}[Graphe non orienté, sommet, arête]
11 Un \emph{graphe non orienté}\index{graphe!non orienté} $G = (S, A)$ est défini par l'ensemble fini $S = \{s_1, s_2, ..., s_n\}$ dont les éléments sont appelés \emph{sommets}\index{sommet}, et par l'ensemble fini $A = \{a_1, a_2, ..., a_m\}$ dont les éléments sont appelés \emph{arêtes}\index{arête}.
12
13 Une arête $a$ de l'ensemble $A$ est définie par une paire non-ordonnée de sommets, appelés les \emph{extrémités} \index{extrémités} de $a$. Si les extrémités coïncident, on parle de \emph{boucle}\index{boucle}.
14
15 Si l'arête $a$ relie les sommets $s_i$ et $s_j$, on dira que ces sommets sont \emph{adjacents}\index{sommet!adjacent}, ou incidents avec $a$, ou encore que l'arête $a$ est incidente avec les sommets $s_i$ et $s_j$.
16
17 On notera qu'un graphe a au moins un sommet ; on notera par la suite \emph{ordre}\index{graphe!ordre}\index{ordre d'un graphe} d'un graphe son nombre de sommets.
18 \end{Def}
19
20 %
21 % \begin{Rem}
22 % On peut définir autrement cet objet, et certains auteurs choisissent celle-ci : \og Un \emph{graphe non orienté}\index{graphe!non orienté} est un triplet $(S, A, \delta )$, où
23 % \begin{enumerate}
24 % \item $S$ est un ensemble fini non vide,
25 % \item $A$ est un ensemble fini,
26 % \item $\delta$ est une fonction de $A$ dans $S_2 \cup S$, où $S_2$ est l'ensemble des parties à 2 éléments de $S$.
27 % \end{enumerate}\fg{}
28 % Ces définitions sont évidemment équivalentes. Il se pourra, dans la suite de cours, que l'on utilise par moment cette deuxième définition...
29 % \end{Rem}
30
31
32 \begin{Rem}
33 Dans le présent chapitre, et ses proches successeurs, graphe signifie graphe non orienté (même quand cela n'est pas spécifié). Il existe aussi des graphes orientés ; ils seront étudiés plus loin.
34 \end{Rem}
35
36 \begin{Rem}
37 La définition précédente n'interdit pas la possibilité que deux mêmes sommets soient reliés par deux arêtes différentes.
38 \end{Rem}
39
40
41
42 \subsection{Représentation graphique et notion de graphes pondérés}
43
44 Les graphes non orientés admettent une représentation graphique permettant leur visualisation :
45
46 \begin{center}
47 \includegraphics[scale=0.7]{graphes/completK5}
48 \end{center}
49
50
51 \newpage
52 Signalons aussi dès à présent la possibilité de pondérer les arêtes d'un graphe non orienté (la définition de graphe est alors à adapter) :
53
54 \begin{center}
55 \includegraphics[scale=0.7]{graphes/exemples.eps}
56 \end{center}
57
58
59 % \begin{Exo}
60 % On a 6 wagons à trier. Dans la gare de triage, les wagons entrent dans l'ordre 2, 5, 3, 6, 1, 4 et doivent sortir dans l'ordre croissant. Deux wagons i et j peuvent être mis sur la même voie si et seulement s'ils entrent dans l'ordre dans lequel ils doivent sortir.
61 % \begin{enumerate}
62 % \item Dessinez un graphe illustrant la situation, en indiquant ce que représentent les sommets et les arêtes de votre graphe.
63 % \item Quel sera le nombre minimal de voies nécessaires au tri?
64 % \end{enumerate}
65 % \end{Exo}
66
67
68
69 \subsection{Degré, chaîne}
70
71 \subsubsection{Degré d'un sommet, d'un graphe}
72
73 \begin{Def}[Degré d'un sommet]
74 On appelle \emph{degré} d'un sommet $s$, noté $d(s)$, le nombre d'arêtes dont le sommet $s$ est une extrémité (les boucles comptent pour deux).
75 \end{Def}
76
77 \begin{Th}[Lemme des poignées de mains]
78 La somme des degrés des sommets d'un graphe est égale à deux fois le nombre d'arêtes.
79 \end{Th}
80
81
82 \begin{Def}[Degré d'un graphe]
83 Le degré d'un graphe est le degré maximum de tous ses sommets.
84 \end{Def}
85
86 \begin{Exo}
87 Calculez les degrés des sommets, et le degré des graphes ci-dessus.
88 \end{Exo}
89
90
91
92 \begin{Def}[Graphe régulier]
93 Un graphe dont tous les sommets ont le même degré est dit \emph{régulier}\index{graphe!régulier}. Si le degré commun est k, alors on dit que le graphe est k-régulier.
94 \end{Def}
95
96 \begin{Exo}
97 Les graphes précédent sont-ils réguliers ?
98 \end{Exo}
99
100 \begin{Exo}
101 Représentez un graphe 3-régulier.
102 \end{Exo}
103
104 On reviendra sur cette notion dans la section exercices de la fin du paragraphe.
105
106 \subsubsection{Chaîne}
107
108 \begin{Def}[Chaîne]
109 Une chaîne dans G, est une suite de la forme $$(s_0, a_1, s_1, a_2, ..., s_{k-1}, a_k, s_k)$$
110 \begin{itemize}
111 \item ayant pour éléments alternativement des sommets ($s_i$) et des arêtes ($a_i$),
112 \item commençant et se terminant par un sommet,
113 \item et telle que les extrémités de $a_i$ soient $s_{i-1}$ et $s_i$, $i = 1, ..., k$.
114 \end{itemize}
115 \end{Def}
116
117 \noindent $s_0$ est appelé le \emph{départ} de la chaîne et $s_k$ l'\emph{arrivée}.
118
119 \begin{Rem}
120 On a choisi ici de réserver le terme de \emph{chemin} aux graphes orientés.
121 \end{Rem}
122
123
124 \begin{Def}[Sommet accessible]
125 Dans un graphe (orienté ou non), on dit que le sommet $s'$ est \emph{accessible}\index{sommet!accessible} à partir du sommet $s$ s'il existe une chaîne menant de $s$ à $s'$.
126 \end{Def}
127
128 \begin{Rem}
129 On dit aussi qu'on peut \emph{atteindre} $s'$ à partir de $s$.
130 \end{Rem}
131
132 \begin{Def}[Chaîne élémentaire]
133 Une chaîne dans laquelle tous les sommets sont différents s'appelle une \emph{chaîne élémentaire} \index{chaîne!élémentaire}.
134 \end{Def}
135
136 \begin{Rem}
137 On parle aussi de chaîne \emph{simple}\index{chaîne!simple}.
138 \end{Rem}
139
140 \begin{Rem}
141 Une chaîne simple a forcément toutes ses arêtes différentes, et ne contient évidemment pas de boucle.
142 \end{Rem}
143
144
145 \begin{Th}[Existence de chaînes élémentaires]
146 \'Etant donné une chaîne qui joint $s$ et $s'$ (différents), on peut toujours lui enlever arêtes et sommets pour obtenir une chaîne \emph{élémentaire} joignant $s$ à $s'$.
147 \end{Th}
148
149
150 \begin{Exo}
151 Réfléchir à la preuve de cette existence.
152 \end{Exo}
153
154
155 \subsection{circuit{}-cycle}
156
157 \begin{Def}[Circuit]
158 Une chaîne de longueur $n$ dont le départ et l'arrivée co\"incident s'appelle un \emph{circuit}\index{circuit} de longueur $n$.
159 \end{Def}
160
161
162
163 \begin{Ex}
164 Une boucle est un circuit de longueur 1.
165 \end{Ex}
166
167
168
169 \begin{Def}[Cycle]
170 Un circuit dont tous les sommets et toutes les arêtes sont différentes, s'appelle un \emph{cycle.}\index{cycle}
171 \end{Def}
172
173 \begin{Exo}
174 Représentez un graphe qui admet :
175 \begin{enumerate}
176 \item un circuit,
177 \item un cycle.
178 \end{enumerate}
179 \end{Exo}
180
181
182
183
184 \begin{Def}[Graphe simple]
185 Un graphe est dit \emph{simple}\index{graphe!simple}, s'il ne contient pas de boucles et s'il n'y a pas plus d'une arête reliant deux mêmes sommets.
186 \end{Def}
187
188 \begin{Exo}
189 Représentez un graphe simple (resp. qui n'est pas simple).
190 \end{Exo}
191
192
193 \subsection{Exercices}
194
195 \begin{Exo}
196 On s'intéresse aux graphes 3-réguliers simples.
197 \begin{enumerate}
198 \item Essayez de construire de tels graphes ayant 4 sommets, 5 sommets, 6 sommets, et 7 sommets.
199 \item Qu'en déduisez-vous?
200 \end{enumerate}
201 \end{Exo}
202
203 \textit{\underline{Réponse :}} D'après le lemme des poignées de mains, la somme des degrés des sommets est égale au double du nombre d'arêtes. Si chaque sommet est de degré 3, la somme des degrés des sommets est :
204 \begin{itemize}
205 \item paire, si le nombre de sommets est pair,
206 \item impaire, sinon.
207 \end{itemize}
208 Comme cette somme doit être égale à un nombre pair (le double du nombre d'arêtes), seuls les graphes 3-réguliers ayant 4, ou 6 sommets, sont possibles.
209
210
211 \begin{Exo}
212 Montrez qu'un graphe simple a un nombre pair de sommets de degré impair.
213 \end{Exo}
214
215
216 \textit{\underline{Réponse :}} D'après le lemme des poignées de mains, la somme $S$ des degrés des sommets est égale au double du nombre d'arêtes, donc cette somme est paire. D'autres part, $S$ est égale à la somme :
217 \begin{itemize}
218 \item des degrés pairs,
219 \item des degrés impairs
220 \end{itemize}
221 La somme des degrés pairs est paire. \'Etudions la somme $S'$ des degrés impairs : notons $i_0$ le nombre de sommets de degrés impairs. Cette somme $S'$ est égale à $\sum_{k=1}^{i_0} (2 k_i + 1)$, puisque chaque degré est ici impairs. Donc $S' = 2 \left(\sum_{k=1}^{i_0} k_i \right) + i_0$, soit $S'$ est égale à un nombre pair plus $i_0$. Quand on met tout bout à bout, on obtient finalement l'équation en parité : pair + pair + $i_0$ = pair, soit $i_0$ est pair !
222
223 \begin{Exo}
224 Est-il possible de relier 15 ordinateurs de sorte que chaque appareil soit relié avec exactement trois autres?
225 \end{Exo}
226
227
228 \textit{\underline{Réponse :}} Non, application directe de l'exercice précédent.
229
230 \begin{Exo}
231 Un groupe de 15 fans d’un chanteur célèbre, possède les deux particularités suivantes :
232 \begin{itemize}
233 \item Chaque personne connaît au moins 7 autres
234 \item Toute information détenue par une personne est répercutée dans la minute qui suit à ses connaissances (et uniquement à elles)
235 \end{itemize}
236 Quel est le temps maximal entre le moment où une des 15 fans apprend une chose nouvelle sur leur idole, et celui où le groupe entier est au courant ?
237 \end{Exo}
238
239
240 \textit{\underline{Réponse :}} L'éméteur de l'information est un sommet relié à au moins 7 autres. Notons $I$ l'ensemble de ces sommets.
241 Il reste au plus 7 sommets (15-(7+1)). Notons $J$ cet ensemble.
242 Chacun des sommets de $J$ est nécessairement relié à un des sommets  de $I$, sinon il ne serait relié qu'à 6 sommets.
243 L'information met donc au plus 2 mins.
244
245
246
247 \section{Quelques types particuliers de graphes}
248
249 \subsection{Graphes planaires}
250 \begin{Def}[Graphe planaire]
251 Si on arrive à dessiner le graphe sans qu'aucune arête n'en coupe une autre (les arêtes ne sont pas forcément rectilignes), on dit que le graphe est \emph{planaire}\index{graphe!planaire}.
252 \end{Def}
253
254 \begin{Exo}
255 Représentez un graphe planaire.
256 \end{Exo}
257
258 \begin{Exo}
259 Représentez un graphe non planaire.
260 \end{Exo}
261
262 \begin{Rem}
263 Les graphes planaires seront plus systématiquement étudiés au chapitre suivant.
264 \end{Rem}
265
266
267 \subsection{Multigraphes}
268
269 En général, dans ce cours, les graphes étudiés sont simples. On a cependant vu qu'il pouvait, pour un graphe quelconque, exister des boucles, voire des arêtes multiples : on parle, dans ce cas, de \index{multigraphe}\emph{multigraphe}.
270
271 \begin{Ex}
272 Un exemple de multigraphe :
273
274 \begin{center}
275 \includegraphics[scale=0.7]{graphes/grapheNonSimple.eps}
276 \end{center}
277 \noindent S = \{1, 2, 3, 4\}
278
279 \noindent A = \{(1,1), (1,3), (1,4), (2,3), (2,3), (3,4)\}
280  \end{Ex}
281
282 \subsection{Graphes connexes}
283
284 \begin{Def}[Graphe connexe]
285 Un graphe est \emph{connexe}\index{graphe!connexe} s'il est possible, à partir de n'importe quel sommet, d'atteindre n'importe quel autre sommet du graphe (si, pour tout couple de sommets $(s, s')$, il existe une chaîne reliant $s$ à $s'$).
286 \end{Def}
287
288
289 \begin{Rem}
290 C'est en particulier le cas lorsqu'à partir d'un sommet on peut atteindre tous les autres sommets.
291 \end{Rem}
292
293
294
295 \begin{Exo}
296 Représenter un graphe (non orienté) connexe, et un graphe non connexe.
297 \end{Exo}
298
299
300
301
302
303
304 \begin{Def}[Composantes connexes]
305 Un graphe non connexe se décompose en \emph{composantes connexes}\index{composantes connexes!d'un graphe}.
306 \end{Def}
307
308
309 \begin{Ex}
310 Exemple d'un graphe n'étant pas connexe :
311 \begin{center}
312 \includegraphics[scale=0.7]{graphes/grapheNonConnexe.eps}
313 \end{center}
314
315 \noindent S = \{1, 2, 3, 4, 5, 6\}
316
317 \noindent A = \{(1,3), (1,4), (2,3), (3,4), (5,6)\}\\
318
319
320 Ici, les composantes connexes sont \{1, 2, 3, 4\} et \{5, 6\}.
321 \end{Ex}
322
323 \subsection{Graphes complets}
324
325 \subsubsection{Définition}
326
327 \begin{Def}[Graphe complet]
328 Un graphe est \emph{complet}\index{graphe!complet} si chaque sommet du graphe est relié directement à tous les autres sommets.
329 \end{Def}
330
331 \subsubsection{Exemples et exercices}
332
333 \begin{Def}[$K_n$]
334 On note $K_n$ tout graphe non orienté simple d'ordre $n$, tel que toute paire de sommets est reliée par une unique arête.
335 \end{Def}
336
337 \begin{Th}
338 $\forall n, K_n$ est complet.
339 \end{Th}
340
341 \begin{Ex}[Graphe complet $K_5$]
342 Exemple d'un graphe complet :
343 \begin{center}
344 \includegraphics[scale=0.7]{graphes/completK5.eps}
345 \end{center}
346
347 S = \{1, 2, 3, 4, 5\}
348
349 A = \{(1,2), (1,3), (1,4), (1,5), (2,3), (2,4), (2,5), (3,4), (3,5), (4,5)\}
350 \end{Ex}
351
352
353 \begin{Exo}
354 Combien d'arêtes possède le graphe $K_n$ ?
355 \end{Exo}
356
357
358 \noindent\textit{\underline{Réponse :}} Chacun des $n$ sommets possède $n-1$ arêtes, et chaque arête est ainsi comptée deux fois... $\dfrac{n(n-1)}{2}$.
359
360
361
362 \begin{Exo}
363 Un tournoi d'échecs oppose 6 personnes. Chaque joueur doit affronter tous les autres.
364 \begin{enumerate}
365 \item Construisez un graphe représentant toutes les parties possibles.
366 \item Quel type de graphe obtenez-vous?
367 \item Si l'on ne joue qu'un match par jour, combien de jours faudra-t-il pour terminer le tournoi ?
368 \item Aidez-vous du graphe pour répondre aux problèmes suivants :
369 \begin{itemize}
370 \item Si chaque joueur ne joue qu'un match par jour, combien de jours faudra-t-il pour terminer le tournoi?
371 \item Proposer un calendrier des matches.
372 \end{itemize}
373 \end{enumerate}
374 \end{Exo}
375
376
377 \subsection{Graphes biparti}
378
379 \subsubsection{Définition et premières propriétés}
380
381 \begin{Def}[Graphes biparti]
382 Un graphe est \emph{biparti}\index{graphe!biparti} si ses sommets peuvent être divisés en deux ensembles X et Y, de sorte que toutes les arêtes du graphe relient un sommet dans X à un sommet dans Y.
383 \end{Def}
384
385 On peut se rendre compte que les graphes biparti sont les graphes que l'on peut colorier avec au plus deux couleurs, de sorte que deux sommets adjacents ne possèdent jamais la même couleur. En d'autres termes, les graphes bipartis sont les graphes dont le nombre chromatique est inférieur ou égal à 2 (ce terme sera défini plus proprement dans la suite du cours).
386
387
388 \begin{Exo}
389 Responsables d'organiser des speed datings, on souhaite placer les différents individus inscrits à une soirée donnée, dans différentes salles, de telles sorte que nul ne se connaît dans une salle donnée.
390 \begin{enumerate}
391 \item Donner un exemple où cela n'est pas possible.
392 \item Comment modéliser ce problème à l'aide d'un graphe ?
393 \item Peut-on n'utiliser que deux salles, s'il est possible de placer 3 individus autour d'une table de telle sorte que chaque individu connaît ses trois voisins ? Que se passe-t-il si on remplace 3 par 5, par 7 ?
394 \end{enumerate}
395 \end{Exo}
396
397
398 Le résultat suivant se déduit assez aisément...
399
400 \begin{Th}
401 Un graphe est biparti si et seulement il ne contient pas de cycle impair.
402 \end{Th}
403
404 \begin{Exo}
405 Relier les notions de graphe biparti et de relation binaire.
406 \end{Exo}
407
408 \begin{Exo}
409 Relier les graphes N-parti aux relations N-aires, aux bases de données.
410 \end{Exo}
411
412
413
414 \subsubsection{Graphe biparti complet}
415
416 \begin{Def}{Graphes biparti complet}
417 Un graphe biparti est dit \emph{biparti complet} (ou encore est appelé une biclique) si chaque sommet de U est relié à chaque sommet de V.
418 \end{Def}
419
420 \begin{Ex}[Graphe biparti complet]
421
422 Exemple d'un graphe biparti complet :
423
424 \begin{center}
425 \includegraphics[scale=0.7]{graphes/biparti.eps}
426 \end{center}
427
428 S = \{1, 2, 3, 4, 5\}
429
430 A = \{(1,2), (1,4), (2,3), (2,5), (3,4), (4,5)\}
431
432 Avec les notations de la définition, on a U=\{1, 3, 5\} et V=\{2, 4\}, ou vice versa.
433 \end{Ex}
434
435 Un tel graphe se note $K_{3,2}$. Plus généralement,
436
437 \begin{Notation}
438 On note $K_{m,n}$ un graphe biparti complet liant $m$ sommets à $n$ sommets.
439 \end{Notation}
440
441 \begin{Th}
442 Ces graphes $K_{m,n}$ possèdent $mn$ arêtes.
443 \end{Th}
444
445
446
447
448 \subsection{Exercices}
449
450 \begin{Exo}
451 Sur un échiquier 3x3, les deux cavaliers noirs sont placés sur les cases a1 et c1, les deux cavaliers blancs occupant les cases a3 et c3.
452 Aidez-vous d'un graphe pour déterminer les mouvements qui permettront aux cavaliers blancs de prendre les places des cavaliers noirs, et vice versa.
453 \end{Exo}
454
455 \noindent\textit{\underline{Réponse :}} Faire un graphe biparti :
456 \begin{itemize}
457 \item $a_1, a_3, c_1, c_3$ d'un côté,
458 \item $a_2, b_1, b_2, b_3, c_2$ de l'autre.
459 \end{itemize}
460 avec des arêtes quand le passage d'une case à l'autre est possible pour un cavalier (par exemple, entre $a_1$ et $b_3$). On oriente alors les arêtes, suivant les parcours à réaliser par les cavaliers. De $a_1$, on peut envoyer le cavalier en $b_3$ ou $c_2$. Mais si on l'envoie en $c_2$, il se retrouve le coup d'après en $a_3$.
461
462
463 \begin{Exo}
464 Quel est le nombre maximal d'arêtes dans un graphe non orienté d'ordre $n$ qui ne possède pas d'arêtes parallèles ? Et si l'on suppose qu'il ne possède pas de boucle ?
465 \end{Exo}
466
467 \noindent\textit{\underline{Réponse :}} Le cas le pire correspond au graphe complet $K_n$, et on a déjà calculé son nombre d'arêtes : $(n-1)+...+1 = \dfrac{n(n-1)}{2}$. Rajouter des boucles revient, dans le cas le pire, à rajouter une arête sur chaqu'un des n sommets. On ajoute donc $n$ à ce qui précède, pour trouver : $\dfrac{n(n+1)}{2}$.
468
469
470
471
472 \section{Représentation des graphes}
473
474 Nous aimons bien communiquer par des dessins, mais les machines n'en sont pas encore là : il faut donc trouver d'autres façons de représenter les graphes.
475
476 La solution consiste à utiliser des matrices, et il y a différentes méthodes. Dans ce qui suit, on considère des graphes non pondérés, mais ces représentations s'adaptent sans problème aux graphes pondérés.
477
478 \subsection{Matrice d'incidence}
479
480 \subsubsection{Présentation}
481
482 La \emph{matrice d'incidence}\index{matrice!d'incidence} d'un graphe non orienté est une matrice $J$ à coefficients entiers dont les lignes sont repérées par les sommets d'un graphe et les colonnes par ses arêtes :
483
484 \begin{Def}[Matrice d'incidence]
485 Par définition, $J_{s,\varepsilon}$ vaut :
486 \begin{itemize}
487 \item 1 quand $s$ est une extrémité de l'arête $\varepsilon$ si celle-ci n'est pas une boucle,
488 \item 2 quand $s$ est une extrémité de la boucle $\varepsilon$,
489 \item 0 si $s$ n'est pas une extrémité de $\varepsilon$.
490 \end{itemize}
491 \end{Def}
492
493
494 On peut reconstituer un graphe non orienté à partir de sa matrice d'incidence, car elle donne le nombre de sommets, le nombre d'arêtes et elle dit comment chaque arête est liée à chaque sommet.
495
496
497
498
499 \begin{Exo}
500 Représentez le graphe non orienté dont la matrice d'incidence est :
501
502 $$\left(
503 \begin{array}{ccccccccc}
504  1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
505  0 & 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 \\
506  0 & 0 & 0 & 0 & 1 & 0 & 0 & 1 & 1 \\
507  0 & 0 & 0 & 1 & 0 & 0 & 2 & 0 & 1 \\
508  0 & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 \\
509  0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\
510  1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
511 \end{array}
512 \right)
513 $$
514 \end{Exo}
515
516
517
518 \begin{Exo}
519  Représentez les matrices d'incidences des graphes de ce chapitre.
520 \end{Exo}
521
522 \begin{Exo}
523 Réfléchir aux avantages et inconvénients d'un tel mode de représentation des graphes.
524 \end{Exo}
525
526 \subsubsection{Résultat}
527
528 \begin{Th}
529 Si $s_1,\hdots, s_n$ sont les sommets d'un graphe non orienté, alors :
530 $$\left( \begin{array}{c} d(s_1) \\ d(s_2) \\ \vdots \\  d(s_n) \end{array} \right) = J \left( \begin{array}{c} 1 \\ 1 \\ \vdots \\ 1 \end{array} \right)$$
531 \end{Th}
532
533
534 \begin{Exo}
535 Trouvez pourquoi.
536 \end{Exo}
537
538
539 \subsection{Matrice d'adjacence}
540
541 \subsubsection{Présentation}
542 On peut représenter un graphe non orienté par une matrice d'adjacence.
543
544 \begin{Def}[Matrice d'adjacence]
545 Dans une \emph{matrice d'adjacences}\index{matrice!d'adjacence}, les lignes et les colonnes représentent les sommets du graphe.
546 \begin{itemize}
547 \item Un 1 à la position (i,j) signifie que le sommet i est adjacent au sommet j.
548 \item Sinon, on place un 0.
549 \end{itemize}
550 En cas de boucle (pour le sommet $i$, par exemple), on place un 1 sur la diagonale (en position $(i,i)$).
551 \end{Def}
552
553 \begin{Rem}
554 On aurait pu convenir de placer un 2 en cas de boucle. L'avantage serait de continuer à obtenir le degré des sommets en faisant les sommes par lignes. Par contre, on perdrait la possibilités, évoquée ci-dessous, de déterminer les chemins de longueur $k$.
555 \end{Rem}
556
557
558
559 \subsubsection{Exemple}
560
561 Considérons le graphe $G$ :
562
563 \begin{center}
564 \includegraphics[scale=0.75]{graphes/graphe1bx.eps}
565 \end{center}
566
567 Voici la matrice d'adjacences du graphe G :
568
569 $$M = \left(
570 \begin{array}{ccccc}
571 0 & 0 & 1 & 1 & 1\\
572 0 & 0 & 1 & 0 & 0\\
573 1 & 1 & 0 & 1 & 1\\
574 1 & 0 & 1 & 0 & 1\\
575 1 & 0 & 1 & 1 & 0\\
576 \end{array}
577 \right)
578 $$
579
580
581
582
583 \begin{Exo}
584 Décrivez le graphe G ci-dessous par une matrice d'adjacences.
585 \begin{center}
586 \includegraphics[scale=0.7]{graphes/graphe2.eps}
587 \end{center}
588 \end{Exo}
589
590
591 \begin{Exo}
592  Représentez les matrices d'adjacences des graphes de ce chapitre.
593 \end{Exo}
594
595 \begin{Exo}
596 Réfléchir à la possibilité d'extension des matrices d'adjacences aux graphes :
597 \begin{itemize}
598 \item orientés,
599 \item pondérés.
600 \end{itemize}
601 \end{Exo}
602
603 \subsubsection{Propriétés de la matrice d'adjacence}
604 Cette matrice a plusieurs caractéristiques :
605
606 \begin{Th}
607 \begin{enumerate}
608 \item Elle est carrée : il y a autant de lignes que de colonnes.
609 \item Un 1 sur la diagonale indique une boucle. Si le graphe n'a pas de boucle, alors la diagonale de sa matrice d'adjacence est nulle.
610 \item La matrice d'adjacence d'un graphe non orienté est symétrique : $m_{ij} = m_{ji}$.
611 \end{enumerate}
612 \end{Th}
613
614
615
616
617 \begin{Exo}
618 Calculez $M^2$ et $M^3$ pour la matrice d'adjacence $M$ ci-dessus. Comparer ces matrices aux chaînes de longueur 2 et 3 reliant deux sommets quelconques.
619 \end{Exo}
620
621
622 \begin{Th}
623 Soit $A$ la matrice d'adjacence d'un graphe $G$. Le coefficient $(s,t)$ de $A^k$ est le nombre de chaînes de longueur $k$ qui mènent du sommet $s$ au sommet $t$.
624 \end{Th}
625
626 \begin{Exo}
627 Démontrez ce résultat, par récurrence.
628 \end{Exo}
629
630
631 \begin{Exo}
632 On pose :
633 $$J=\left( \begin{array}{cccc} 2 & 1 & 0 & 1 \\ 0 & 1 & 1 & 0 \\ 0 & 0 & 1 & 1 \\ \end{array}\right)$$
634 \begin{enumerate}
635 \item Dessinez le graphe non orienté ayant $J$ pour matrice d'incidence.
636 \item Déterminez sa matrice d'adjacence B.
637 \item Vérifiez les formules précédentes :
638 \begin{itemize}
639 \item le lien entre matrice d'incidence et degré des sommets,
640 \item le lien entre $B^k$ et les chaînes de longueur $k$.
641 \end{itemize}
642 \end{enumerate}
643 \end{Exo}
644
645 \begin{Exo}
646 Quels sont les avantages et les inconvénients de cette méthode de représentation des graphes ? Comparez-la aux matrices d'incidences.
647
648 En particulier, pour un graphe à $m$ sommets et $n$ arêtes, quelle représentation est la plus gourmande en espace mémoire ? Cela dépend du nombres d'arêtes ?
649 \end{Exo}
650
651
652 \subsection{Listes d'adjacence}
653
654
655 \subsubsection{Présentation}
656
657
658 \begin{Def}[Liste d'adjacence]
659 On peut encore représenter un graphe en donnant pour chacun de ses sommets la liste des sommets auxquels il est adjacent. On parle alors de \emph{liste d'adjacence}\index{liste!d'adjacence}.
660 \end{Def}
661
662 \begin{Ex}
663 On considère le graphe $G$ suivant :
664 \begin{center}
665 \includegraphics[scale=0.7]{graphes/graphe1b.eps}
666 \end{center}
667
668 \noindent Voici les listes d'adjacences de $G$ :
669
670 1 : 3, 4, 5
671
672 2 : 3
673
674 3 : 1, 2, 4, 5
675
676 4 : 1, 3, 5
677
678 5 : 1, 3, 4
679
680 \end{Ex}
681
682 \begin{Exo}
683  Représentez les listes d'adjacences des graphes de ce chapitre.
684 \end{Exo}
685
686 \begin{Exo}
687 Discuter des avantages et des inconvénients de cette méthode de représentation. On la comparera aux matrices d'adjacence et d'incidence.
688 \end{Exo}
689
690
691
692
693
694 \gsaut
695 \centerline{\x{Fin du Chapitre}}