Graphes : sommets, arêtes, ordre, sommets adjacents, graphe complet ; degré et lemme des poignées de main ; graphes orientés, chemins et circuits ; chaînes, cycles et connexité ; chaînes et cycles eulériens, théorème d’Euler.
À propos de cette page
Cinq problèmes corrigés dans l’esprit des sujets de maths expertes : tournée d’une saleuse, ponts d’une ville fluviale, ligne de dominos double-six, tournoi sans match nul représenté par un graphe orienté, test d’un réseau de capteurs avec une fonction Python qui compte les sommets de degré impair.
5 problèmes, du plus simple au plus difficile. Écris tes réponses, puis « Vérifier ».
Résoudre un problème : la méthode
Je modélise : je dis ce que sont les sommets et les arêtes (ou les arcs), et je signale les arêtes multiples s’il y en a.
Je dresse le tableau des degrés et je le contrôle avec le lemme des poignées de main.
Je vérifie la connexité en reliant chaque sommet à un même sommet.
Je conclus avec le théorème d’Euler en comptant les sommets de degré impair, et j’écris la chaîne en entier en vérifiant qu’elle emprunte toutes les arêtes.
Pour modifier un graphe (ajouter, doubler ou supprimer une arête), je suis la parité des degrés : une arête change la parité de ses deux extrémités, et d’elles seules.
Problème 1 · La tournée de la saleuse★★★Moyen
Une commune modélise son quartier ancien par un graphe : les sommets sont les carrefours, les arêtes les rues à saler. La saleuse est garée au dépôt, au carrefour G.
Carrefour
Relié à
A
B, C, D
B
A, C, E
C
A, B, F
D
A, E, G
E
B, D, F
F
C, E, G
G
D, F
1. Déterminer le nombre de rues à l’aide du lemme des poignées de main :
Rédaction attendue. Les degrés se lisent dans le tableau : et . Leur somme vaut . D’après le lemme des poignées de main, , donc le quartier compte rues.
2. Démontrer que l’on peut aller de n’importe quel carrefour à n’importe quel autre. Nombre de carrefours de degré impair :
Rédaction attendue. Depuis A, on atteint tous les carrefours : A–B, A–C, A–D, A–B–E, A–C–F et A–D–G. Deux carrefours quelconques sont donc reliés par une chaîne passant par A : le graphe est connexe. Les six carrefours A, B, C, D, E et F sont de degré , impair.
3. Justifier que la saleuse ne peut pas emprunter chaque rue exactement une fois, même sans revenir au dépôt. Elle doit donc parcourir certaines rues deux fois ; pour revenir au dépôt, nombre minimal de rues parcourues deux fois :
Rédaction attendue. Le graphe est connexe et a six sommets de degré impair : ce n’est ni ni , donc, d’après le théorème d’Euler, il n’a ni cycle ni chaîne eulérienne. Parcourir une rue deux fois revient à doubler l’arête correspondante : cela augmente de le degré de ses deux extrémités, donc change la parité de deux sommets exactement. Pour un parcours fermé, il faut rendre pairs les six carrefours A, B, C, D, E et F : chaque rue doublée en corrige au plus deux, il en faut au moins . Trois suffisent : en doublant A–B, C–F et D–E, les degrés de A à F passent à , celui de G reste , et le graphe reste connexe ; d’après le théorème d’Euler, un cycle eulérien emprunte alors toutes les arêtes, et il peut partir de G.
4. Nombre total de rues parcourues par la saleuse pendant cette tournée :
Elle parcourt une fois chacune des rues et une seconde fois les rues doublées : rues.
5. Une seconde saleuse peut partir de n’importe quel carrefour et finir ailleurs. Nombre minimal de rues qu’elle doit parcourir deux fois :
Rédaction attendue. Une chaîne eulérienne non fermée existe lorsqu’il reste exactement deux sommets de degré impair : il faut corriger quatre des six carrefours impairs, donc doubler au moins rues. Deux suffisent : en doublant A–B et C–F, seuls D et E restent de degré impair, et la seconde saleuse peut tout saler en passages, de D à E.
Problème 2 · Une ligne de dominos★★★Moyen
Un jeu de dominos « double-six » contient une pièce et une seule pour chaque paire de nombres de à , égaux ou non ; les pièces dont les deux moitiés portent le même nombre s’appellent des doubles. On aligne des dominos de façon que deux moitiés qui se touchent portent le même nombre. On modélise : les sommets sont les nombres de à , et chaque domino est une arête entre les deux nombres qu’il porte ; un double est une boucle.
1. Nombre de dominos du jeu :
Les dominos non doubles correspondent aux paires de nombres distincts : . Il y a aussi doubles. Le jeu compte dominos.
2. Degré de chaque sommet du graphe :
Chaque nombre est relié aux autres par un domino, et porte une boucle (son double), qui compte pour : . Contrôle : .
3. Justifier que l’on peut disposer les dominos en une ligne fermée sur elle-même. Nombre de sommets de degré impair :
Rédaction attendue. Deux nombres quelconques sont reliés par un domino : le graphe est connexe. Tous les sommets sont de degré , pair : aucun n’est impair. D’après le théorème d’Euler, le graphe admet un cycle eulérien ; une ligne fermée de dominos est exactement un cycle qui emprunte chaque arête une fois, donc les dominos se disposent en boucle.
4. Un jeu « double-cinq » ne contient que les dominos de à . Nombre de dominos :
dominos non doubles et doubles : .
5. Justifier qu’on ne peut pas aligner tous les dominos du jeu double-cinq. Nombre de sommets de degré impair :
Rédaction attendue. Chaque nombre est relié aux autres et porte une boucle : degré , impair. Les sommets sont de degré impair : ni ni . D’après le théorème d’Euler (le graphe est connexe), il n’a ni cycle ni chaîne eulérienne : on ne peut pas aligner tous les dominos.
6. On retire le moins de dominos possible du jeu double-cinq pour pouvoir aligner tous les autres. Nombre de dominos de la ligne :
Rédaction attendue. Retirer un double enlève au degré d’un sommet : cela ne change aucune parité. Retirer un domino non double change la parité de ses deux nombres. Pour passer de sommets impairs à , il faut retirer au moins dominos. Deux suffisent : sans 0–1 et 2–3, seuls et restent de degré impair, et le graphe reste connexe. La ligne compte alors dominos, avec un à un bout et un à l’autre.
Problème 3 · Un tournoi sans match nul★★★Moyen
Cinq équipes A, B, C, D, E disputent un tournoi : chaque équipe rencontre une fois chacune des autres, et il n’y a jamais de match nul. On représente les résultats par un graphe orienté : l’arc X → Y signifie « X a battu Y ». Les résultats sont : A → B, A → C, B → C, B → D, C → D, C → E, D → A, D → E, E → A et E → B.
1. Nombre de matchs du tournoi :
Chaque paire d’équipes joue un match : si l’on oublie le sens des arcs, on obtient le graphe complet , qui a arêtes. On compte bien arcs.
2. Nombre de victoires de l’équipe C (degré sortant de C) :
C a battu D et E : . En fait, chaque équipe a gagné matchs et en a perdu ; la somme des degrés sortants vaut , le nombre d’arcs.
3. Vérifier que A → C → E → B → D → A est un circuit. Nombre d’équipes par lesquelles il passe :
Rédaction attendue. Les arcs A → C, C → E, E → B, B → D et D → A figurent tous dans la liste des résultats, ils se suivent dans le bon sens, le chemin revient en A et n’emprunte pas deux fois le même arc : c’est un circuit, de longueur , qui passe une fois par chacune des équipes. On peut donc ranger les équipes en rond de sorte que chacune ait battu la suivante.
4. Démontrer que, dans un tournoi de ce type entre équipes, les équipes ne peuvent pas avoir toutes le même nombre de victoires. Nombre total de victoires :
Rédaction attendue. Chaque match donne exactement une victoire : le nombre total de victoires est le nombre de matchs, (c’est la somme des degrés sortants, égale au nombre d’arcs). Si les équipes avaient toutes victoires, on aurait ; or n’est pas divisible par . C’est impossible.
5. Démontrer que, dans un tel tournoi, deux équipes ne peuvent pas être toutes les deux invaincues. Dans un tournoi de équipes, nombre de victoires d’une équipe invaincue :
Rédaction attendue. Supposons deux équipes X et Y invaincues. Elles se sont rencontrées, et ce match a un vainqueur : l’arc X → Y ou l’arc Y → X existe. L’une des deux a donc perdu, ce qui contredit l’hypothèse. Il y a au plus une équipe invaincue. Avec équipes, une équipe invaincue a gagné ses matchs : son degré sortant vaut .
Problème 4 · Les ponts d’une ville fluviale★★★Difficile
Une rivière traverse une ville : elle sépare deux rives, N et S, et entoure trois îles, I, J et K. Il y a dix ponts : deux entre N et I, un entre N et J, un entre S et J, deux entre S et K, deux entre I et J, un entre J et K, et un entre I et K. On cherche une promenade qui emprunte chaque pont une fois et une seule.
1. Modéliser la situation par un graphe et justifier que c’est un multigraphe. Nombre d’arêtes :
Les sommets sont les cinq zones de terre N, S, I, J, K, et chaque pont est une arête entre les deux zones qu’il relie. Certaines paires de sommets sont reliées par deux arêtes (N et I, S et K, I et J) : c’est un multigraphe, à arêtes.
2. Déterminer le degré de chaque sommet et vérifier le lemme des poignées de main.
Chaque pont compte pour dans le degré de chacune de ses extrémités : , , , et . La somme vaut : le lemme est vérifié.
3. Démontrer qu’aucune promenade n’emprunte chaque pont une fois et une seule. Nombre de sommets de degré impair :
Rédaction attendue. Le graphe est connexe : J est relié à N, S, I et K. Une telle promenade serait une chaîne eulérienne. Or N, S, I et J sont de degré impair : il y en a , ni ni . D’après le théorème d’Euler, aucune promenade de ce type n’existe.
4. La ville construit un onzième pont, entre N et S. Montrer qu’une telle promenade devient possible. Si elle part de I, elle se termine en
Rédaction attendue. Le pont N–S porte et à ; I et J restent de degré . Le graphe, toujours connexe, a exactement deux sommets de degré impair, I et J : d’après le théorème d’Euler, il existe une chaîne eulérienne, et ses extrémités sont I et J. Partie de I, la promenade se termine en J. Par exemple I–J–I–K–J–N–I–N–S–K–S–J : elle emprunte les deux ponts I–J, puis I–K, J–K, N–J, les deux ponts N–I, le pont N–S, les deux ponts S–K et enfin S–J, soit les ponts, chacun une fois.
5. Sans rien construire, on ferme un seul pont pour travaux, et l’on veut une promenade de N à S qui emprunte une fois chacun des ponts restants. Le pont fermé relie I à
Fermer un pont diminue de le degré de ses deux extrémités. Pour une chaîne eulérienne de N à S, il faut que N et S restent impairs et que I et J deviennent pairs : le pont fermé doit relier I et J. On ferme donc l’un des deux ponts entre I et J ; il reste ponts et seuls N et S sont de degré impair.
6. On revient aux dix ponts de départ. Nombre minimal de ponts à construire pour qu’une promenade fermée emprunte chaque pont une fois et une seule :
Rédaction attendue. Une promenade fermée est un cycle eulérien : tous les degrés doivent être pairs. Les quatre sommets N, S, I et J sont de degré impair, et chaque pont construit change la parité de deux sommets exactement : il en faut au moins . Deux suffisent : avec un pont N–S et un troisième pont I–J, les degrés deviennent , , , et , tous pairs, et le graphe reste connexe. D’après le théorème d’Euler, une promenade fermée existe.
Problème 5 · Tester un réseau de capteurs★★★Difficile
Dix capteurs, notés A à J, communiquent deux à deux selon le graphe ci-dessous. Un technicien doit tester chaque liaison une fois et une seule en se déplaçant d’un capteur à l’autre le long des liaisons.
Capteur
Communique avec
A
B, E
B
A, C, E, F
C
B, D, F, G
D
C, H
E
A, B, F, I
F
B, C, E, G
G
C, F, H
H
D, G, J
I
E, J
J
H, I
1. Nombre de liaisons, à l’aide du lemme des poignées de main :
Rédaction attendue. Les degrés se lisent dans le tableau : , , , , , , , , et . Leur somme vaut ; d’après le lemme des poignées de main, , donc il y a liaisons.
2. Justifier que deux capteurs quelconques sont reliés par une suite de liaisons. Nombre de capteurs de degré impair :
Rédaction attendue. Depuis B, on atteint tous les capteurs : B–A, B–C, B–E, B–F, B–C–D, B–C–G, B–C–D–H, B–E–I et B–C–D–H–J. Le graphe est donc connexe. Seuls G et H sont de degré impair ().
3. Montrer qu’il existe un parcours testant chaque liaison une fois et une seule. S’il part de G, il se termine en
Rédaction attendue. Le graphe est connexe et a exactement deux sommets de degré impair, G et H. D’après le théorème d’Euler, il admet une chaîne eulérienne d’extrémités G et H : partie de G, elle se termine en H. Par exemple G–C–B–A–E–B–F–C–D–H–J–I–E–F–G–H, qui emprunte C–G, B–C, A–B, A–E, B–E, B–F, C–F, C–D, D–H, H–J, I–J, E–I, E–F, F–G puis G–H : les liaisons, chacune une fois.
4. Démontrer que tous les parcours de ce type traversent le capteur B le même nombre de fois, et donner ce nombre :
Rédaction attendue. B n’est pas une extrémité du parcours, qui va de G à H. Chaque fois que le parcours traverse B, il y arrive par une liaison et en repart par une autre : il utilise deux des liaisons de B. Les liaisons de B sont toutes empruntées, une fois chacune : le parcours traverse B exactement fois. Un parcours eulérien peut donc repasser par un même capteur ; c’est chaque liaison qu’il n’emprunte qu’une fois.
5. Le technicien veut revenir à son point de départ. Il teste une seule liaison deux fois. Nombre total de tests effectués :
Pour un parcours fermé, tous les degrés doivent être pairs : seule une liaison G–H doublée corrige à la fois G et H, et elle existe. Le graphe obtenu est connexe et tous ses degrés sont pairs ; d’après le théorème d’Euler, il admet un cycle eulérien. Le technicien effectue tests.
6. On programme le décompte des sommets de degré impair à partir de la liste des arêtes, données par des couples :
def degres(aretes):
d = {}
for (u, v) in aretes:
d[u] = d.get(u, 0) + 1
d[v] = d.get(v, 0) + 1
return d
def nb_impairs(aretes):
d = degres(aretes)
k = 0
for s in d:
if d[s] % 2 == 1:
k = k + 1
return k
Valeur renvoyée par nb_impairs pour la liste des arêtes du graphe complet :
La fonction degres parcourt les arêtes et ajoute au degré de chacune des deux extrémités ; nb_impairs compte ensuite les sommets dont le degré a pour reste dans la division par . Dans , chacun des sommets est de degré , impair : la fonction renvoie . Pour le réseau de capteurs, elle renvoie . Attention : elle ne teste que la parité ; la connexité, autre hypothèse du théorème d’Euler, se vérifie à part.
Bloqué sur ce chapitre ?
Moi c'est Ben, j'ai créé ce site pour aider le plus d'élèves possible, partout en France. Je peux aussi reprendre avec toi ce qui coince en cours particulier : en visio, ou à domicile si tu es à Marseille.