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

Private GIT Repository
modif algo euclide
[cours-maths-dis.git] / graphes / planaires.tex
1
2 Dans ce chapitre, différents problèmes classiques autour des graphes seront présentés. On verra successivement les problèmes suivants, et on en proposera des solutions :
3 \begin{itemize}
4 \item Existence d'un circuit eulérien.
5 \item Caractérisation des graphes extraits d'un graphe donné.
6 \item Caractérisation des graphes planaires.
7 \item Dénombrement des régions induites par un graphe planaire.
8 \item Existence d'un circuit hamiltonien.
9 \end{itemize}
10
11 \section{Circuits eulériens}
12
13
14 \subsection{Introduction : les ponts de K\"onigsberg}
15
16  La question à l'origine de la théorie des graphes est due à Euler\footnote{Leonhard Euler, mathématicien suisse (1707{}-1783). A consacré près de 900 mémoires aux mathématiques, à l'optique, à la science navale, à la musique, l'atronomie, la théorie des assurance... Un monstre, appelé l'aigle des mathématiques. Le plus grand mathématicien du dix-huitième siècle, l'un des plus grands de tous les temps.}, en 1736 : dans cette partie de la ville de K\"onigsberg :
17
18
19
20 \begin{center}
21 \includegraphics[scale=0.7]{graphes/konigsberg.eps}
22 \end{center}
23
24 \noindent peut{}-on, lors d'une promenade, revenir à notre point de départ en empruntant une, et une seule fois, chaque pont ?
25
26  Pour y répondre, Euler a introduit le graphe suivant (les arcs symbolisent les ponts ; les sommets, les quatre zones terrestres) :
27
28
29 \begin{center}
30 \includegraphics[scale=0.7]{graphes/eulerKonig}
31 \end{center}
32
33
34 Le problème de départ se ramène alors à la question suivante : peut{}-on trouver un circuit permettant d'emprunter une, et une seule fois chaque arête, en retournant à son point de départ ?
35
36 \medskip
37
38 La réponse, dans ce cas particulier, est non : comme
39 \begin{itemize}
40 \item le point de départ $s$ est aussi le point d'arrivée,
41 \item on ne peut pas emprunter deux fois une même arête,
42 \end{itemize}
43 on en conclut forcément que le degré de $s$ est pair. Or, dans le graphe ci-dessus, tous les sommets ont un degré impair.
44
45 \subsection{Définitions}
46
47 Ce problème, introduit par Euler, conduit aux définitions suivantes...
48
49 \begin{Def}[Chaîne eulérien]
50 On appelle \emph{chaîne eulérienne}\index{chaîne!eulérienne} une chaîne contenant une et une seule fois toutes les arêtes du graphe.
51 \end{Def}
52
53
54 \begin{Def}[Circuit eulérien]
55 On appelle \emph{circuit eulérien}\index{circuit!eulérien} un circuit contenant une et une seule fois toutes les arêtes du graphe.
56 \end{Def}
57
58 \begin{Rem}
59 On n'a plus affaire à une chaîne, mais à un circuit : le point de départ et celui d'arrivée coïncident.
60 \end{Rem}
61
62 \begin{Def}[Graphe eulérien]
63 Un \emph{graphe eulérien}\index{graphe!eulérien} est un graphe possédant un circuit eulérien.
64 \end{Def}
65
66
67 \begin{Rem}
68 On peut passer plusieurs fois par un sommet donné, pourvu que les arêtes empruntées soient toutes différentes.
69 \end{Rem}
70
71
72 \begin{Exo}
73 Donnez des exemples de graphes possèdant des circuits eulériens, et d'autres exemples de graphes n'en possédant pas.
74 \end{Exo}
75
76
77
78 \subsection{Résultat d'Euler}
79
80 Du problème initial d'Euler, on peut en déduire le résultat suivant (rappelons qu'il s'agit ici de graphes non orientés)...
81
82
83 \begin{Th}
84 Il y a équivalence entre :
85 \begin{itemize}
86 \item posséder une chaîne eulérienne,
87 \item être connexe, avec O ou 2 sommets de degré impair.
88 \end{itemize}
89 De plus, s'il n'y a pas de sommet de degré impair,  alors le graphe est Eulérien.
90 \end{Th}
91
92
93
94 \begin{Pre}
95 En parcourant un chemin ou un circuit, pour chaque sommet visité, on utilise une arête pour arriver à ce sommet et une arête pour en repartir, ces deux arêtes ne devant plus être utilisées par la suite.
96
97 Le nombre d'arêtes utilisables en ce sommet diminue donc de deux. Si un sommet est d'ordre impair, une de ses arêtes aboutissant à ce sommet doit donc être soit sur la première arête d'un chemin, soit sur la dernière.
98
99 Un chemin n'ayant que deux extrémités, le nombre de sommets d'ordre impair ne peut excéder deux.
100 \end{Pre}
101
102
103 \begin{Exo}
104 Soit G un graphe connexe non eulérien. Est-il toujours possible de rendre G eulérien en lui rajoutant un sommet et quelques arêtes?
105 \end{Exo}
106
107 \textit{\underline{Réponse :}} Oui. Quand on ajoute un nouveau sommet, son nombre d'arêtes doit être pair, pour ne pas poser de nouveaux problèmes. On peut donc ainsi corriger le problème d'imparité pour un nombre pair de sommets : en reliant chaque couple de deux sommets de degré impairs, à un sommet que l'on crée uniquement pour ce couple. Or, tout graphe simple possède un nombre pair de sommets de degré impair...
108
109
110 \subsection{Exercice : les dominos}
111
112
113 \begin{Exo}
114 On considère des dominos dont les faces sont numérotées 1, 2, 3, 4 ou 5.
115
116 \begin{enumerate}
117 \item En excluant les dominos doubles, de combien de dominos dispose-t-on ?
118 \item Montrez que l'on peut arranger ces dominos de façon à former une boucle fermée (en utilisant la règle habituelle de contact entre les dominos).
119 \item Pourquoi n'est-il pas nécessaire de considérer les dominos doubles ?
120 \item Si l'on prend maintenant des dominos dont les faces sont numérotées de 1 à n, est-il possible de les arranger de façon à former une boucle fermée ?
121 \end{enumerate}
122 \end{Exo}
123
124 \noindent\textit{\underline{Réponses :}}
125 \begin{enumerate}
126 \item On dispose de 4+3+2+1 = 10 dominos.
127 \item Considérons $K_5$, le pentagramme complet. A l'arête $(1,2)$, par exemple, est associée le domino $(1,2)$. Arriver à constituer une boucle fermée de dominos revient donc à trouver un circuit eulérien dans $K_5$. C'est possible : $K_5$ est connexe, avec tous ses sommets de degré pairs.
128 \item Considérer les dominos doubles revient à placer une boucle à chaque sommet de $K_5$. On ne change pas sa connexité, ni la parité de ses sommets.
129 \item On obtient, dans ce cas, $K_n$, dont chaque sommet a pour degré $n-1$. Pour arriver à consitituer une boucle fermée, il faut donc (et il suffit) que $n$ soit impair.
130 \end{enumerate}
131
132
133
134 \section{Graphes partiels et sous-graphes}
135
136 \subsection{Introduction}
137
138 Dans cette section, on va chercher à étudier quels sont les différents types de graphes que l'on peut obtenir à partir d'un graphe $G$, en lui enlevant soit des arêtes, soit des sommets.
139
140 Prenons l'exemple d'un ordinateur, avec imprimante, souris, etc. Chaque appareil est un sommet du graphe de l'installation informatique, et chaque câble est une arête. On peut alors, au choix, enlever des câbles électriques, ou des appareils (avec leurs câbles), pour obtenir ainsi une nouvelle installation informatique, c'est-à-dire construire un nouveau graphe à partir d'un graphe donné.
141
142 \medskip
143
144 On considère, dans tout ce paragraphe, les graphes $G_1$ et $G_2$ suivants
145 \begin{center}
146 \includegraphics[scale=0.7]{graphes/graphe7.eps}
147 \includegraphics[scale=0.7]{graphes/graphe2.eps}
148 \end{center}
149 Ils nous serviront à illustrer les définitions à venir.
150
151 \subsection{Graphe partiel et sous-graphe}
152
153 \subsubsection{Graphe partiel}
154
155 \begin{Def}[Graphe partiel]
156 Soit G = (S, A) un graphe. Le graphe G' = (S, A') est un \emph{graphe partiel}\index{graphe!partiel} de G, si A' est inclus dans A.
157 \end{Def}
158
159 \begin{Rem}
160 Autrement dit, on obtient G' en enlevant une ou plusieurs arêtes au graphe G (sans toucher à ses sommets).
161 \end{Rem}
162
163
164 \begin{Ex}[Graphe partiel de $G_1$]
165 Voici un exemple de graphe partiel de $G_1$
166 \begin{center}
167 \includegraphics[scale=0.7]{graphes/graphe8.eps}
168 \end{center}
169 Ici,
170 \begin{itemize}
171 \item S'=S,
172 \item A'=\{$e_3, e_4, e_5$\}.
173 \end{itemize}
174 \end{Ex}
175
176 \begin{Exo}
177 Trouver un graphe partiel de $G_2$.
178 \end{Exo}
179
180 \subsubsection{Sous-graphe}
181
182 \begin{Def}[Sous-graphe]
183 On dit que le graphe $(S',A')$ est un \emph{sous{}-graphe}\index{graphe!sous-} du graphe $(S,A)$ si
184 \begin{enumerate}
185 \item $S' \subset S$,
186 \item $A' \subset A$,
187 \item $A'=\{(x,y)\mid (x,y) \in A \land x \in S' \land y \in S'\}$
188 \end{enumerate}
189 \end{Def}
190
191 \begin{Rem}
192 Un sous{}-graphe d'un graphe donné est donc obtenu en enlevant certains sommets, et toutes les arêtes incidentes à ces sommets.
193 \end{Rem}
194
195 \begin{Ex}[Sous-graphe de $G_1$]
196 Voici un exemple de sous-graphe de $G_1$ :
197 \begin{center}
198 \includegraphics[scale=0.7]{graphes/graphe9.eps}
199 \end{center}
200 Ici,
201 \begin{itemize}
202 \item V'=\{$v_1, v_3, v_4, v_5$\},
203 \item E'=\{$e_3, e_4, e_5$\}.
204 \end{itemize}
205 \end{Ex}
206
207 \begin{Exo}
208 Trouver un sous-graphe de $G_2$.
209 \end{Exo}
210
211 \begin{Exo}
212 Combien un graphe $G$ d'ordre $n$ possède-t-il de sous-graphes ?
213 \end{Exo}
214
215 \noindent\textit{\underline{Réponse :}} $2^n-1$, si l'on ne compte pas $G$.
216
217
218 \subsection{Sous-graphes particuliers}
219
220 \subsubsection{Sous-graphe partiel}
221
222 \begin{Def}[Sous-graphe partiel]
223 Un graphe partiel d'un sous-graphe est un \emph{sous-graphe partiel}\index{sous-graphe!partiel} de G.
224 \end{Def}
225
226 \begin{Rem}
227 Cette fois-ci, on enlève des sommets (et leurs arêtes incidentes), puis des arêtes.
228 \end{Rem}
229
230
231 \begin{Ex}[Sous-graphe partiel de $G_1$]
232 Voici un sous-graphe partiel de $G_1$ :
233 \begin{center}
234 \includegraphics[scale=0.7]{graphes/graphe10.eps}
235 \end{center}
236 Ici,
237 \begin{itemize}
238 \item V'=\{$v_1, v_2, v_3, v_4$\},
239 \item E'=\{$e_1, e_4$\}.
240 \end{itemize}
241 \end{Ex}
242
243
244 \begin{Exo}
245 Trouver un sous-graphe partiel de $G_2$.
246 \end{Exo}
247
248 \subsubsection{Clique}
249
250 \begin{Def}[Clique]
251 On appelle \emph{clique}\index{clique} un sous-graphe complet de G.
252 \end{Def}
253
254 \begin{Rem}
255 On a donc réussi, en enlevant des sommets, à faire en sorte que chaque sommet est adjacent à tous les autres sommets.
256 \end{Rem}
257
258
259 \begin{Ex}[Une clique de $G_1$]
260 Exemple de clique de $G_1$ :
261 \begin{center}
262 \includegraphics[scale=0.7]{graphes/clique.eps}
263 \end{center}
264 Ici,
265 \begin{itemize}
266 \item V'=\{$v_1,v_2,v_3$\},
267 \item E'=\{$e_1, e_2, e_3$\}.
268 \end{itemize}
269 \end{Ex}
270
271 \begin{Exo}
272 Trouver une clique de $G_2$.
273 \end{Exo}
274
275 \subsubsection{Stable}
276
277 \begin{Def}[Stable]
278 On appelle \emph{stable}\index{stable} un sous-graphe de $G$ sans arêtes.
279 \end{Def}
280
281 \begin{Rem}
282 On enlève donc des sommets, et leurs arêtes adjacentes. On obtient un stable que si, en ayant enlevé un certain nombre de sommets à $G$, le sous-graphe résultant ne possède plus d'arête.
283 \end{Rem}
284
285
286 \begin{Ex}[Un stable de $G_1$]
287 Voici un stable de $G_1$ :
288 \begin{center}
289 \includegraphics[scale=0.7]{graphes/stable.eps}
290 \end{center}
291 Ici,
292 \begin{itemize}
293 \item V'=\{$v_1, v_4, v_5$\},
294 \item E'=\{\}.
295 \end{itemize}
296 \end{Ex}
297
298
299 \begin{Exo}
300 Trouver un stable de $G_2$.
301 \end{Exo}
302
303 \subsection{Exercices}
304
305 \begin{Exo}
306 On considère le graphe $G$ suivant :
307 \begin{center}
308 \includegraphics[scale=0.7]{graphes/graphe1b.eps}
309 \end{center}
310 En extraire : un graphe partiel, un sous-graphe, un sous-graphe partiel, une clique et un stable.
311 \end{Exo}
312
313
314
315
316 \begin{Exo}
317 Montrez que dans un groupe de six personnes, il y en a nécessairement trois qui se connaissent mutuellement ou trois qui ne se connaissent pas (on suppose que si A connaît B, B connaît également A).
318
319
320 Montrez que cela n'est plus nécessairement vrai dans un groupe de cinq personnes.
321 \end{Exo}
322
323 \noindent\textit{\underline{Réponse :}} Cela revient à dire que, dans un graphe $G$ à six sommets, il est toujours possible d'obtenir un sous-graphe (\emph{i.e.}, en enlevant trois sommets), qui est :
324 \begin{itemize}
325 \item soit une clique (les trois sommets sont adjacents deux à deux),
326 \item soit un stable (aucun arc).
327 \end{itemize}
328
329 Cela n'est plus valable pour les graphes à cinq sommets.
330
331
332
333
334 \section{Graphe planaire}
335
336
337
338 \subsection{Définition}
339 On rappelle la définition suivante...
340
341 \begin{Def}[Graphe planaire]
342 Un graphe est dit \emph{planaire}\index{graphe!planaire} s'il admet une re\-pré\-sen\-ta\-ti\-on graphique dans le plan telle que deux arêtes quelconques ne se coupent pas.
343 \end{Def}
344
345
346 \begin{Rem}
347 Rappelons que les arêtes ne sont pas forcément rectilignes.
348 \end{Rem}
349
350 Outre l'intérêt théorique (théorème des quatre couleurs, etc.), ou une représentation plus sympathique, chercher si un graphe possède une représentation planaire peut s'avérer pratiquement important. Par exemple, il était plus facile de concevoir les tout premiers circuits imprimés à transistors quand le graphe du circuit était planaire : on évitait alors de devoir recourir au procédé bicouche ou à des "straps" fragiles pour s'échapper du plan du circuit imprimé.
351
352 \begin{Exo}
353 Un graphe peut-il être planaire s'il possède un sous-graphe qui ne l'est pas ?
354 \end{Exo}
355
356 \noindent\textit{\underline{Réponse :}} Non : une fois dessiné dans un plan, un graphe planaire a forcément tous ses sous-graphes qui le sont aussi.
357
358
359
360 \subsection{Exemples}
361
362 \begin{Ex}[$K_{3,3}$]
363 Il est non planaire
364  \begin{center}
365 \includegraphics[scale=0.7]{graphes/k33}
366 \end{center}
367 \end{Ex}
368
369
370 \begin{Ex}[$K_n$]
371 On rappelle que l'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. Alors $K_5$ n'est pas planaire :
372 \begin{center}
373 \includegraphics[scale=0.7]{graphes/k5}
374 \end{center}
375 \end{Ex}
376
377
378
379 \begin{Exo}
380 Dessiner $K_1$, $K_2$, $K_3$ et $K_4$. Sont-ils planaires ? Et qu'en est-il de $K_n, n \geqslant 5$ ?
381 \end{Exo}
382
383 \noindent\textit{\underline{Réponse :}} $K_1$, $K_2$, $K_3$ et $K_4$ sont planaires. $K_5$, on l'a vu, ne l'est pas. Comme $K_5$ est un sous-graphe de $K_n, n \geqslant 5$, on en déduit qu'à partir de $n=5$, tous les $K_n$ ne sont plus planaires.
384
385
386
387
388
389 \subsection{Caractérisation des graphes planaires}
390
391 Pendant de nombreuses années, les mathématiciens ont tenté de caractériser les graphes planaires. Ce problème a été résolu en 1930 par le mathématicien polonais K. Kuratowski.
392
393 \subsubsection{Expansion d'un graphe}
394
395 \begin{Def}[Expansion d'un graphe]
396 L'expansion d'un graphe est le résultat de l'ajout d'un ou plusieurs sommets sur une ou plusieurs arêtes (par exemple, transformation de l'arête $\bullet - \bullet$ en $\bullet - \bullet - \bullet$).
397 \end{Def}
398
399 \begin{Exo}
400 Représentez deux graphes, le second étant une expansion du premier.
401 \end{Exo}
402
403
404 \subsubsection{Théorème de Kuratowski}
405
406 La réponse au problème de caractérisation des graphes planaires est...
407
408 \begin{Th}[Kuratowski]
409 \index{théorème!Kuratowski}
410 Un graphe fini est planaire si et seulement s'il ne contient pas de sous-graphe qui est une expansion de $K_5$ ou $K_{3,3}$.
411 \end{Th}
412
413
414
415 %\begin{Exo}
416 %En admettant, comme nous y invite le résultat précédent, que $K_5$ n'est pas planaire, déterminer les valeurs de $n$ pour lesquelles $K_n$ est planaire.
417 %\end{Exo}
418
419 %\noindent\textit{\underline{Réponse :}} On a vu (exercice précédent) que $K_n$ est planaire pour $n \leqslant 4$. $K_5$ n'est pas planaire. Enfin, pour $n \geqslant 5$, $K_n$ contient des sous-graphes $K_5$...
420
421
422
423
424 \section{Dénombrement des régions d'un graphe planaire}
425
426
427 Le prochain problème classique que l'on présentera s'intéresse au nombre de régions qu'un graphe planaire découpe. La célèbre formule d'Euler permettra de relier ce nombre aux nombres d'arêtes et de sommets du graphe considéré.
428
429 \subsection{Cartes, régions}
430
431 \begin{Def}[Carte, régions]
432 Une \emph{carte}\index{carte} est une représentation particulière d'un graphe planaire. On dit qu'une carte est \emph{connexe}\index{carte!connexe} si son graphe l'est. Une carte divise le plan en plusieurs \emph{régions}\index{régions}.
433 \end{Def}
434
435 \begin{Ex}
436 Par exemple, la carte ci-dessous, avec six sommets et neuf arêtes, divise le plan en cinq régions (A, B, C, D, E).
437 \begin{center}
438 \includegraphics[scale=0.7]{graphes/carte.eps}
439 \end{center}
440
441 On remarque que quatre régions sont limitées alors que la cinquième (E), extérieure au diagramme, ne l'est pas.
442 \end{Ex}
443
444
445
446 \subsection{Degré d'une région}
447
448 \begin{Def}[Degré d'une région]
449 Le \emph{degré}\index{degré!d'une région} d'une région r, noté d(r), est la longueur du cycle ou de la chaîne fermée qui limite r.
450 \end{Def}
451
452 \begin{Ex}
453 Dans le graphe ci-dessus, d(A)=4, d(B)=3, d(C)=3, d(D)=5, d(E)=3.
454 \end{Ex}
455
456 \begin{Rem}
457 On remarque que toute arête limite deux régions, ou est contenue dans une région et est alors comptée deux fois dans la chaîne fermée. Nous avons donc...
458 \end{Rem}
459
460
461 \subsection{Lemme des régions}
462
463 \begin{Th}[Lemme des régions]
464 La somme des degrés des régions d'une carte connexe est égale à deux fois le nombre d'arêtes.
465 \end{Th}
466
467
468 \begin{Exo}
469 Démontrez ce résulat.
470 \end{Exo}
471
472 \noindent\textit{\underline{Réponse :}} Il y a deux types d'arêtes, celles séparant deux régions données, et celles incluses à l'intérieur d'une région...
473
474 \subsection{Formule d'Euler}
475
476 Euler a établi une formule qui relie le nombre de sommets S, le nombre d'arêtes A et le nombre de régions R d'une carte connexe :
477
478 \begin{Th}[Euler]
479 $$S - A + R = 2$$
480 \end{Th}
481
482 \subsection{Exercices}
483
484 \begin{Exo}
485 Utilisez le résultat d'Euler pour retrouver le fait que $K_{3,3}$ n'est pas planaire.
486 \end{Exo}
487
488
489 \begin{Def}[Polyèdres réguliers, Solides de Platon]
490 Un polyèdre est dit régulier\index{polyèdres réguliers} s'il est constitué de faces toutes identiques et régulières, et que tous ses sommets sont identiques. Ils sont au nombre de neuf, dont cinq seulement sont convexes. Ces derniers étaient connus de Platon :
491 \begin{itemize}
492 \item le tétraèdre régulier (4 faces en triangle équilatéral),
493 \item le cube,
494 \item l'octaèdre régulier (8 faces en triangle équilatéral),
495 \item le dodécaèdre régulier (12 faces en pentagone),
496 \item l'icosaèdre régulier (20 faces en triangle équilatéral).
497 \end{itemize}  
498
499 Pour cette raison, ces cinq polyèdres réguliers convexes sont appelés \emph{Solides de Platon}\index{solides de Platon}.
500 \end{Def}
501
502
503 \begin{Rem}
504 On appelle parfois polyèdres réguliers uniquement les 5 solides de Platon.
505 \end{Rem}
506
507
508 \begin{Exo}
509 Les solides platoniciens peuvent être considérés comme des graphes, qui de plus sont planaires. Vérifier la formule d'Euler sur ces solides Platoniciens :
510 \begin{itemize}
511 \item le nombre de sommets,
512 \item moins le nombre d'arêtes,
513 \item plus le nombre de faces
514 \end{itemize}
515 \noindent ...est toujours égal à 2.
516 \end{Exo}
517
518
519
520
521
522 \section{Circuit hamiltonien}
523
524 \subsection{Les dodécaèdres de Hamilton}
525
526 Le dodécaèdre est à l'origine d'un autre problème célèbre, dû à Hamilton\footnote{William Rowan Hamilton, mathématicien et physicien irlandais (1805{}-1865). Inventeur des quaternions.} : comment passer une, et une seule fois, par chacun des sommets du dodécaèdre, de telle manière que le dernier sommet visité est aussi le premier.
527
528
529 \begin{center}
530 \includegraphics[scale=0.7]{graphes/dodeca}
531 \end{center}
532
533
534
535 \subsection{Définition}
536
537 \begin{Def}[Circuit et graphes hamiltoniens]
538 \index{circuit!hamiltonien}\index{graphes!hamiltonien}
539 Un circuit hamiltonien est un circuit qui passe par tous les sommets du graphe, une et une seule fois. Un graphe possédant un tel circuit est qualifié d'hamiltonien.
540 \end{Def}
541
542 \begin{Rem}
543 C'est un circuit : le sommet de départ doit aussi être le sommet d'arrivée.
544 \end{Rem}
545
546 \begin{Ex}
547 Les graphes complets $K_n$ sont hamiltoniens, pour tout $n$.
548 \end{Ex}
549
550 \begin{Pre}
551 On peut inscrire $K_n$ dans un polygone régulier à $n$ sommets : il suffit alors de parcourir ce polygone, sommet par sommet, dans le sens trigonométrique par exemple, jusqu'à retrouver son point de départ.
552 \end{Pre}
553
554
555 \begin{Rem}
556 Il peut y avoir plusieurs circuits hamiltoniens dans un graphe hamiltonien.
557 \end{Rem}
558
559
560 Le problème de la caractérisation des graphes Hamiltoniens n'est pas aussi simple que celui des graphes Eulériens. On peut cependant énoncer quelques conditions, respectivement nécessaires, puis suffisantes, pour qu'un graphe le soit...
561
562 \subsection{Conditions nécessaires}
563
564 \begin{Th}
565 Un graphe hamiltonien d'ordre $n \geqslant 3$ ne possède pas de sommet de degré 1.
566 \end{Th}
567
568 \begin{Pre}
569 Si un sommet $s$ est de degré 1, il est connecté à un (unique) autre sommet $s'$, qui sera forcément parcouru deux fois (pour aller en $s$, et pour en sortir).
570 \end{Pre}
571
572 \begin{Rem}
573 $K_2$ est hamiltonien, et a tous ses sommets d'ordre 1...
574 \end{Rem}
575
576 \begin{Th}
577 Si un graphe hamiltonien possède un sommet de degré 2, alors les deux arêtes incidentes à ce sommet doivent faire partie du cycle hamiltonien.
578 \end{Th}
579
580 \begin{Pre}
581 Supposons que $s$ est de degré 2, connecté à $s_1$ par l'arête $a_1$, et à $s_2$ par $a_2$. On est arrivé à $s$ à partir d'une arête, mettons $a_1$ ; si on réempruntait $a_1$ pour sortir de $s$, alors on repasserait par $a_1$, ce qui est impossible.
582 \end{Pre}
583
584
585 \subsection{Conditions suffisantes}
586
587 \begin{Th}[Théorème de Ore]\index{théorème!de Ore}
588 Soit G = (V, E) un graphe simple d'ordre $n\geqslant 3$. Si pour toute paire \{x,y\} de sommets non adjacents, on a $d(x) + d(y) \geqslant n$, alors G est hamiltonien.
589 \end{Th}
590
591 \begin{Th}[Corollaire de Dirac]\index{Corollaire de Dirac}
592 Soit G = (V, E) un graphe simple d'ordre $n\geqslant 3$. Si pour tout sommet x de G, on a $d(x) \geqslant n/2$, alors G est hamiltonien.
593 \end{Th}
594
595 \begin{Pre}
596 En effet, un tel graphe vérifie les conditions du théorème précédent. Si x et y ne sont pas adjacents, on a bien :
597 $$d(x) + d(y) \geqslant n/2 + n/2 = n$$
598 \end{Pre}
599
600
601 \begin{Exo}
602 Dessinez un graphe d'ordre au moins 5 qui est...
603 \begin{enumerate}
604 \item hamiltonien et eulérien,
605 \item hamiltonien et non eulérien,
606 \item non hamiltonien et eulérien,
607 \item non hamiltonien et non eulérien.
608 \end{enumerate}
609 \end{Exo}
610
611
612 \subsection{Le problème du voyageur de commerce}
613
614 Trouver un cycle hamiltonien pour un graphe donné est un problème difficile sur le plan algorithmique -- de type NP-complet --, relié au problème dit \emph{du voyageur de commerce}\index{problème!du voyageur de commerce} : un voyageur de commerce  doit visiter un ensemble de villes, en minimisant son temps de parcours.
615
616 \medskip
617
618 Ce problème se formalise aisément en théorie des graphes :
619 \begin{itemize}
620 \item Les villes sont les sommets d'un graphe pondéré.
621 \item Les arêtes correspondent aux routes reliant ces villes.
622 \item La pondération correspond soit à la distance entre deux ville (en kilomètres), soit à la durée nécessaire pour passer d'une ville à l'autre.
623 \item Ce graphe peut être orienté, si l'on souhaite intégrer des routes à sens unique.
624 \end{itemize}
625
626 On cherche alors à visiter tous les sommets du graphe (\emph{i.e.} toutes les villes) en minimisant le \og poids \fg{} du parcours (la distance parcourue, ou le temps total).
627
628 \medskip
629
630 Le problème du voyageur de commerce correspond donc à la recherche d'un cycle hamiltonien de poids minimal, dans un graphe pondéré complet. Ce problème est NP-complet, donc impossible à résoudre exactement quand le nombre de villes est grand.
631
632
633
634 \gsaut
635 \centerline{\x{Fin du Chapitre}}