QCM Bilan : Graphes

[enonce]
Ce QCM bilan couvre l'ensemble du chapitre : matrice d'adjacence, chaînes de Markov, plus court chemin (Dijkstra), coloration (nombre chromatique) et synthèse des notions de graphes. Choisissez la bonne réponse parmi les quatre propositions.
[/enonce]

[etape]
À quoi sert l'algorithme de Dijkstra ?
[qcm]
[option]Déterminer si un graphe possède une chaîne eulérienne.[/option]
[option]Compter les chaînes de longueur fixée entre deux sommets.[/option]
[option correct="true"]Trouver un plus court chemin entre deux sommets d'un graphe pondéré à poids positifs.[/option]
[option]Calculer le nombre chromatique d'un graphe.[/option]
[reponse statut="correct"]Exactement !
L'algorithme de Dijkstra construit un plus court chemin (au sens du poids total) entre un sommet de départ et un sommet d'arrivée, à condition que tous les poids des arêtes soient positifs.[/reponse]
[reponse motif="Déterminer si un graphe possède une chaîne eulérienne."]Non.
Cette question relève du théorème d'Euler (compter les sommets de degré impair), pas d'un algorithme de plus court chemin. Dijkstra ne s'occupe que des distances pondérées.[/reponse]
[reponse motif="Compter les chaînes de longueur fixée entre deux sommets."]Non.
Le comptage des chaînes de longueur $k$ s'obtient par les puissances de la matrice d'adjacence. Dijkstra ne dénombre pas, il optimise une distance.[/reponse]
[reponse motif="Calculer le nombre chromatique d'un graphe."]Non.
Le nombre chromatique se détermine par un encadrement (degré max et sous-graphes complets) puis un coloriage explicite. Dijkstra ne traite pas la coloration.[/reponse]
[reponse statut="incorrect"]Non.
Dijkstra fournit un plus court chemin entre deux sommets dans un graphe pondéré à poids positifs.[/reponse]
[/qcm]
[/etape]

[etape]
À quelle hypothèse l'algorithme de Dijkstra ne fournit-il plus nécessairement la bonne réponse ?
[qcm]
[option]Le graphe est non orienté.[/option]
[option correct="true"]Certains poids des arêtes sont négatifs.[/option]
[option]Le graphe contient un cycle.[/option]
[option]Plusieurs sommets ont le même degré.[/option]
[reponse statut="correct"]Bonne réponse !
Dijkstra repose sur le principe que la distance d'un sommet déjà traité ne peut plus diminuer. En présence d'arêtes de poids négatif, cette propriété tombe : un détour par une arête de poids négatif peut raccourcir une distance déjà fixée.[/reponse]
[reponse motif="Le graphe est non orienté."]Non.
Dijkstra fonctionne aussi bien sur des graphes orientés que non orientés. Cette caractéristique ne change rien à la validité de l'algorithme.[/reponse]
[reponse motif="Le graphe contient un cycle."]Non.
La présence de cycles ne pose aucun problème tant que les poids restent positifs. L'algorithme passe simplement au sommet non traité de plus petite distance, sans se soucier des cycles.[/reponse]
[reponse motif="Plusieurs sommets ont le même degré."]Non.
Le degré ne joue aucun rôle dans l'algorithme : seules les distances et les poids des arêtes sont utilisés. Avoir des degrés égaux n'a aucun effet sur le résultat.[/reponse]
[reponse statut="incorrect"]Non.
Dijkstra suppose que tous les poids sont positifs ; en présence de poids négatifs, il peut renvoyer une réponse fausse.[/reponse]
[/qcm]
[/etape]

[etape]
Que désigne le nombre chromatique d'un graphe ?
[qcm]
[option]Le nombre total d'arêtes du graphe.[/option]
[option]Le degré le plus élevé parmi tous les sommets.[/option]
[option correct="true"]Le plus petit nombre de couleurs nécessaire pour colorier les sommets sans que deux sommets adjacents partagent une même couleur.[/option]
[option]Le nombre de sommets que l'on peut isoler dans un sous-graphe complet.[/option]
[reponse statut="correct"]C'est bien ça !
Le nombre chromatique, noté $\chi$, est le minimum du nombre de couleurs permettant un coloriage propre du graphe (sommets adjacents toujours de couleurs distinctes).[/reponse]
[reponse motif="Le nombre total d'arêtes du graphe."]Non.
Le nombre d'arêtes ne dépend que de la structure du graphe, pas du coloriage. Le nombre chromatique mesure une difficulté de coloriage, pas une quantité combinatoire d'arêtes.[/reponse]
[reponse motif="Le degré le plus élevé parmi tous les sommets."]Non.
Le degré maximum $d_{\max}$ sert à majorer le nombre chromatique ($\chi \leqslant d_{\max} + 1$), mais il ne lui est pas égal en général.[/reponse]
[reponse motif="Le nombre de sommets que l'on peut isoler dans un sous-graphe complet."]Non.
La taille du plus grand sous-graphe complet (clique) minore le nombre chromatique, mais ne le donne pas exactement. Pour certains graphes, $\chi$ est strictement supérieur à cette taille.[/reponse]
[reponse statut="incorrect"]Non.
Le nombre chromatique est le plus petit nombre de couleurs permettant un coloriage propre des sommets.[/reponse]
[/qcm]
[/etape]

[etape]
Soit un graphe dont le degré maximal vaut $d_{\max} = 4$ et qui contient un sous-graphe complet à $3$ sommets (un triangle). Que peut-on affirmer sur son nombre chromatique $\chi$ ?
[qcm]
[option]$\chi = 3$.[/option]
[option]$\chi = 5$.[/option]
[option correct="true"]$3 \leqslant \chi \leqslant 5$.[/option]
[option]$\chi = 4$.[/option]
[reponse statut="correct"]Tu as raison !
On a deux encadrements : le sous-graphe complet à $3$ sommets impose $\chi \geqslant 3$ ; le théorème de majoration donne $\chi \leqslant d_{\max} + 1 = 5$. Donc $\chi$ est compris entre $3$ et $5$, sans pouvoir être déterminé exactement à ce stade.[/reponse]
[reponse motif="$\chi = 3$."]Non.
La présence d'un triangle assure $\chi \geqslant 3$, mais pas l'égalité. Selon la structure du graphe, $\chi$ peut très bien valoir $4$ ou $5$.[/reponse]
[reponse motif="$\chi = 5$."]Non.
La valeur $5$ est seulement la borne supérieure donnée par $d_{\max} + 1$. Cette borne n'est pas toujours atteinte : la plupart des graphes ont un nombre chromatique strictement inférieur.[/reponse]
[reponse motif="$\chi = 4$."]Non.
Sans information supplémentaire, on ne peut conclure à l'égalité $\chi = 4$. Les seules informations sûres sont les bornes : $3 \leqslant \chi \leqslant 5$.[/reponse]
[reponse statut="incorrect"]Non.
Avec un sous-graphe complet à $3$ sommets, $\chi \geqslant 3$. Avec $d_{\max} = 4$, $\chi \leqslant 5$. Donc $3 \leqslant \chi \leqslant 5$.[/reponse]
[/qcm]
[/etape]

[etape]
Lors de l'application de l'algorithme de Dijkstra, comment choisit-on à chaque étape le prochain sommet à traiter ?
[qcm]
[option]On prend le sommet de plus grand degré non encore traité.[/option]
[option correct="true"]On prend le sommet non encore traité ayant la plus petite distance provisoire.[/option]
[option]On prend un sommet adjacent au sommet de départ pris au hasard.[/option]
[option]On prend le sommet de plus petit numéro non encore traité.[/option]
[reponse statut="correct"]Bravo !
À chaque étape, on sélectionne parmi les sommets non encore traités celui dont la distance provisoire au sommet de départ est minimale. Une fois ce sommet choisi, on met à jour les distances de ses voisins.[/reponse]
[reponse motif="On prend le sommet de plus grand degré non encore traité."]Non.
Le degré d'un sommet ne participe pas à l'algorithme. Dijkstra utilise uniquement les distances provisoires et les poids des arêtes.[/reponse]
[reponse motif="On prend un sommet adjacent au sommet de départ pris au hasard."]Non.
Le choix doit être déterministe pour garantir un plus court chemin. Prendre un voisin au hasard ne garantit pas que sa distance soit minimale parmi les sommets non encore traités.[/reponse]
[reponse motif="On prend le sommet de plus petit numéro non encore traité."]Non.
Le numéro du sommet ne joue aucun rôle dans l'algorithme. Le critère de sélection est la plus petite distance provisoire courante.[/reponse]
[reponse statut="incorrect"]Non.
À chaque étape, on choisit le sommet non encore traité ayant la plus petite distance provisoire au sommet de départ.[/reponse]
[/qcm]
[/etape]

[etape]
Lequel des énoncés suivants est faux ?
[qcm]
[option]Pour un graphe non orienté simple, la matrice d'adjacence est symétrique.[/option]
[option]Le nombre chromatique d'un graphe est toujours inférieur ou égal à $d_{\max} + 1$.[/option]
[option correct="true"]Tout graphe connexe admet une chaîne eulérienne.[/option]
[option]Le coefficient $(M^{2})_{i,j}$ donne le nombre de chaînes de longueur $2$ allant de $i$ à $j$.[/option]
[reponse statut="correct"]Exactement !
Cet énoncé est faux : la connexité ne suffit pas. Il faut en plus que le graphe ait $0$ ou $2$ sommets de degré impair (théorème d'Euler). Les trois autres propositions correspondent à des résultats du cours.[/reponse]
[reponse motif="Pour un graphe non orienté simple, la matrice d'adjacence est symétrique."]Non, cette affirmation est vraie : pour un graphe non orienté, $M_{i,j} = M_{j,i}$ par définition. Cherche plutôt un énoncé qui contredit le cours.[/reponse]
[reponse motif="Le nombre chromatique d'un graphe est toujours inférieur ou égal à $d_{\max} + 1$."]Non, cette affirmation est vraie : c'est précisément le théorème de majoration du nombre chromatique. L'erreur recherchée se trouve dans une autre proposition.[/reponse]
[reponse motif="Le coefficient $(M^{2})_{i,j}$ donne le nombre de chaînes de longueur $2$ allant de $i$ à $j$."]Non, cette affirmation est vraie : c'est l'application directe du théorème sur les puissances de la matrice d'adjacence, avec $k = 2$.[/reponse]
[reponse statut="incorrect"]Non.
L'énoncé faux est : « Tout graphe connexe admet une chaîne eulérienne. » La connexité est nécessaire mais non suffisante : il faut aussi $0$ ou $2$ sommets de degré impair.[/reponse]
[/qcm]
[/etape]

[etape]
Soit $M$ la matrice d'adjacence d'un graphe non orienté simple à $4$ sommets, dans lequel on lit $\left(M^{3}\right)_{1,2} = 5$. Que représente ce coefficient ?
[qcm]
[option]Le nombre d'arêtes reliant directement le sommet $1$ au sommet $2$.[/option]
[option correct="true"]Le nombre de chaînes de longueur $3$ reliant le sommet $1$ au sommet $2$.[/option]
[option]La distance minimale entre le sommet $1$ et le sommet $2$.[/option]
[option]Le degré commun des sommets $1$ et $2$.[/option]
[reponse statut="correct"]Exactement !
Le coefficient $\left(M^{k}\right)_{i,j}$ donne le nombre de chaînes de longueur $k$ reliant le sommet $i$ au sommet $j$. Ici $k = 3$ : il y a donc $5$ chaînes de longueur $3$ entre les sommets $1$ et $2$.[/reponse]
[reponse motif="Le nombre d'arêtes reliant directement le sommet $1$ au sommet $2$."]Non.
C'est le coefficient $M_{1,2}$ (la matrice elle-même, soit $M^{1}$) qui compte les arêtes directes, c'est-à-dire les chaînes de longueur $1$. Ici la puissance est $3$.[/reponse]
[reponse motif="La distance minimale entre le sommet $1$ et le sommet $2$."]Non.
Les puissances de la matrice d'adjacence comptent des chaînes ; elles ne mesurent pas une distance. La distance minimale relèverait d'un graphe pondéré et de l'algorithme de Dijkstra.[/reponse]
[reponse motif="Le degré commun des sommets $1$ et $2$."]Non.
Le degré d'un sommet se lit sur la somme d'une ligne de $M$, pas sur un coefficient de $M^{3}$. Ce coefficient compte des chaînes de longueur $3$.[/reponse]
[reponse statut="incorrect"]Non.
Le coefficient $\left(M^{k}\right)_{i,j}$ compte les chaînes de longueur $k$ entre $i$ et $j$ : ici, les chaînes de longueur $3$ entre les sommets $1$ et $2$.[/reponse]
[/qcm]
[/etape]

[etape]
Pour une chaîne de Markov de matrice de transition $P$ et de distribution initiale $\pi_0$, par quelle relation obtient-on la distribution $\pi_n$ après $n$ étapes ?
[qcm]
[option]$\pi_n = P^n \times \pi_0$.[/option]
[option correct="true"]$\pi_n = \pi_0 \times P^n$.[/option]
[option]$\pi_n = \pi_0 + n\,P$.[/option]
[option]$\pi_n = \pi_0 \times P \times n$.[/option]
[reponse statut="correct"]Bien vu !
La distribution $\pi_n$ est un vecteur ligne : on multiplie la distribution initiale (à gauche) par la puissance $n$-ième de la matrice de transition, soit $\pi_n = \pi_0 \times P^n$.[/reponse]
[reponse motif="$\pi_n = P^n \times \pi_0$."]Non.
$\pi_0$ est un vecteur ligne : il se place à gauche de $P^n$. L'écriture $P^n \times \pi_0$ n'a pas le bon format de produit matriciel.[/reponse]
[reponse motif="$\pi_n = \pi_0 + n\,P$."]Non.
L'évolution d'une chaîne de Markov est multiplicative (produit par $P$ à chaque étape), pas additive. On n'ajoute jamais la matrice de transition à la distribution.[/reponse]
[reponse motif="$\pi_n = \pi_0 \times P \times n$."]Non.
Passer de $\pi_0$ à $\pi_n$ revient à appliquer $n$ fois la transition, donc à multiplier par $P^n$, et non par $P$ puis par le nombre $n$.[/reponse]
[reponse statut="incorrect"]Non.
On a $\pi_n = \pi_0 \times P^n$ : le vecteur ligne initial multiplié par la puissance $n$-ième de la matrice de transition.[/reponse]
[/qcm]
[/etape]

Graphes – Bac blanc ES/L Sujet 3 – Maths-cours 2018 (spé)

Pour chacune des cinq affirmations suivantes, indiquer si elle est vraie ou fausse en justifiant la réponse.
Il est attribué un point par réponse exacte correctement justifiée.
Une réponse non justifiée n'est pas prise en compte.

On modélise le plan d'un village à l'aide du graphe (G) ci-dessous :

modélisation à l'aide d'un graphe

Les sommets du graphe (G) représentent les carrefours et les arêtes du graphe schématisent les routes reliant ces carrefours.

  • Affirmation 1 : Le graphe (G) est connexe.
  • Affirmation 2 : Le graphe (G) contient un sous-graphe complet d'ordre 4.
  • Affirmation 3 : Une personne peut parcourir toutes les routes du village sans emprunter plusieurs fois la même route.
  • Affirmation 4 : Il y a exactement 5 trajets de trois routes reliant les carrefours C et E.
    On pourra utiliser la calculatrice pour justifier la réponse à l'aide d'un calcul matriciel.

On pondère le graphe (G) par les longueurs, en centaines de mètres, de chacune des routes :

graphe pondéré
  • Affirmation 5 : Le plus court chemin menant de A à D mesure 700 mètres .
    On justifiera la réponse à l'aide d'un algorithme.

Corrigé

  • Affirmation 1 : Le graphe (G) est connexe : EXACT.

    Un graphe est connexe si et seulement si on peut relier deux quelconques de ses sommets par une chaîne.

    C'est bien le cas ici donc le graphe (G) est connexe.

  • Affirmation 2 : Le graphe (G) contient un sous-graphe complet d'ordre 4 : EXACT.

    Considérons le sous-graphe d'ordre 4 composé des sommets B, D, E et F. Chacun de ces sommets est relié aux trois autres.
    Ce sous-graphe est donc complet.

  • Affirmation 3 : Une personne peut parcourir toutes les routes du village sans emprunter plusieurs fois la même route : EXACT.

    La question revient à déterminer s'il existe une chaîne qui contient une fois et une seule chacune des arêtes du graphe c'est à dire une chaîne eulérienne.

    Or, d'après le théorème d'Euler, un graphe connexe contient une chaîne eulérienne si et seulement s'il possède 0 ou 2 sommets de degré impair.

    Le tableau ci-après recense le degré de chacun des sommets :

    Sommet A B C D E F
    Degré 2 5 2 4 4 3

    Le graphe (G) possède deux sommets de degré impair : B et F. Il existe donc au moins un trajet qui emprunte une fois et une seule chacune des routes du graphe.
    Ces trajets ont nécessairement comme extrémités B et F ; par exemple : B-C-D-E-A-B-E-F-D-B-F.

  • Affirmation 4 : Il y a exactement 5 trajets de trois routes reliant les carrefours C et E: EXACT.

    La matrice d'adjacence du graphe (G) obtenue en classant les sommets par ordre alphabétique est :

    $ M = \begin{pmatrix} 0 &1 &0 &0 &1 &0 \\ 1 &0 &1 &1 &1 &1 \\ 0 &1 &0 &1 &0 &0 \\ 0 &1 &1 &0 &1 &1 \\ 1 &1 &0 &1 &0 &1\\ 0 &1 &0 &1 &1 &0 \end{pmatrix} $

    Pour obtenir le nombre de chemins de trois routes reliant deux sommets on calcule $ M^3 $.

    À la calculatrice, on trouve :

    $ M^3 = \begin{pmatrix} 2 &8 &3 &5 &7 &4 \\ 8 &10 &8 &11 &11 &11 \\ 3 &8 &2 &7 &5 &4 \\ 5 &11 &7 &8 &11 &9 \\ 7 &11 &5 &11 &8 &9\\ 4 &11 &4 &9 &9 &6 \end{pmatrix} $

    Le nombre de chemins de trois routes, reliant C à E, est le coefficient de $ M^3 $ situé sur la troisième ligne (correspondant au sommet de départ C) et la cinquième colonne (correspondant au sommet d'arrivé E).

    Il y a donc bien 5 trajets de trois routes reliant les carrefours C et E.

    En pratique

    Soit $ M $ la matrice d'adjacence d'un graphe G. Pour déterminer le nombre de chemins de longueur $n$ reliant deux sommets du graphe on calcule $ M^n $ .

    Le coefficient de la matrice $ M^n $ situé à la $ i $-ème ligne et à la $ j $-ème colonne indique le nombre de chemins de longueur $ n $ menant du sommet numéro $ i $ au sommet numéro $ j $.

  • Affirmation 5 : Le plus court chemin menant de A à D mesure 700 mètres : FAUX.

    On utilise l'algorithme de Dijkstra en partant de A :

    algorithme de Dijkstra

    Le trajet le plus court menant de A à D mesure 6 centaines de mètres soit 600 mètres.

    Il s'agit du trajet A-B-F-D.

    Pour plus de détails sur la méthode employée dans cette question se reporter à la fiche consacrée à l'algorithme de Dijkstra.

Graphes – Bac blanc ES Sujet 2 – Maths-cours 2018 (spé)

Une agence de tourisme propose la visite de certains monuments parisiens.

Chacun de ces monuments est désigné par une lettre comme suit :

  • E : Tour Eiffel
  • L : Musée du Louvre
  • M : Tour Montparnasse
  • N : Cathédrale Notre-Dame de Paris
  • S : Basilique du Sacré-Cœur de Montmartre
  • T : Arc de triomphe

Cette agence fait appel à une société de transport par autocar qui propose les liaisons suivantes (chacune de ces liaisons pouvant s'effectuer dans les deux sens de circulation) :

Graphe des liaisons entre monuments parisiens
  1. Expliquer pourquoi il est possible de trouver un trajet empruntant une fois et une seule chacune des dix liaisons indiquées sur le graphe.
    Donner un exemple d'un tel trajet.
    1. Donner la matrice d'adjacence $ M $ associée à ce graphe en classant les sommets par ordre alphabétique.
    2. On donne :

      $ M^2 = \begin{pmatrix} 4 &2 &1 &3 &2 &1 \\ 2 &4 &2 &2 &2 &2 \\ 1 &2 &3 &1 &3 &1 \\ 3 &2 &1 &3 &1 &1 \\ 2 &2 &3 &1 &4 &1\\ 1 &2 &1 &1 &1 &2 \end{pmatrix} $
      $ M^3 = \begin{pmatrix} 6 &10 &9 &5 &10 &6 \\ 10 &8 &8 &8 &10 &4 \\ 9 &8 &4 &8 &5 &4 \\ 5 &8 &8 &4 &9 &4 \\ 10 &10 &5 &9 &6 &6\\ 6 &4 &4 &4 &6 &2 \end{pmatrix} $

      Combien y a-t-il de trajets permettant de relier la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant au maximum trois liaisons.
      Justifier votre réponse.

  2. On complète le graphe précédent en indiquant, sur chacune des branches, la durée du trajet, en minutes, entre deux monuments.

    Graphe des monuments parisiens avec durées de trajet en minutes

    On souhaite aller de la tour Montparnasse à la Basilique du Sacré-Cœur de Montmartre.

    En utilisant un algorithme, déterminer le trajet le plus rapide ainsi que la durée de ce trajet.

Corrigé

  1. Trouver un trajet qui emprunte une fois et une seule chacune des liaisons indiquées sur le graphe revient à déterminer une chaîne eulérienne.

    Le théorème d'Euler indique qu'un graphe connexe contient une chaîne eulérienne si et seulement s'il ne possède que 0 ou 2 sommets de degré impair.

    Les degrés des sommets sont indiqués dans le tableau ci-après :

    Sommet E L M N S T
    Degré 4 4 3 3 4 2

    Le graphe comporte deux sommets de degré impair : M et N. Il est donc possible de relier M (Tour Montparnasse) à N (Cathédrale Notre-Dame de Paris) en empruntant une fois et une seule chacune des liaisons; par exemple : M-E-T-S-E-L-S-N-L-M-N.

    1. En classant les sommets par ordre alphabétique, on obtient la matrice d'adjacence suivante :

      $ M = \begin{pmatrix} 0 &1 &1 &0 &1 &1 \\ 1 &0 &1 &1 &1 &0 \\ 1 &1 &0 &1 &0 &0 \\ 0 &1 &1 &0 &1 &0 \\ 1 &1 &0 &1 &0 &1\\ 1 &0 &0 &0 &1 &0 \end{pmatrix} $
    2. Le coefficient situé sur la $ 4^{\text{e}} $ ligne (correspondant à la cathédrale Notre-Dame de Paris) et la $ 1^{\text{ère}} $ colonne (correspondant à la tour Eiffel) de la matrice $ M $ est égal à 0.
      Il n'y a donc aucun trajet reliant la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant une et une seule liaison.

      Le coefficient situé sur la $ 4^{\text{e}} $ ligne et la $ 1^{\text{ère}} $ colonne de la matrice $ M^2 $ est égal à 3.
      Il y a donc 3 trajets reliant la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant exactement deux liaisons.

      Le coefficient situé sur la $ 4^{\text{e}} $ ligne et la $ 1^{\text{ère}} $ colonne de la matrice $ M^3 $ est égal à 5.
      Il y a donc 5 trajets reliant la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant exactement trois liaisons.

      Au total, on trouve qu'il existe exactement huit trajets permettant de relier la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant au maximum trois liaisons.

  2. On utilise l'algorithme de Dijkstra :

    Départ $\infty$ $\infty$ $\mathbf{0_M}$ $\infty$ $\infty$ $\infty$
    M (0) $10_M$ $7_M$ $\mathbf{4_M}$ $\infty$ $\infty$
    N (4) $10_M$ $\mathbf{6_N}$ $12_N$ $\infty$
    L (6) $\mathbf{10_M}$ $11_L$ $\infty$
    E (10) $\mathbf{11_L}$ $14_E$

    Reportez-vous à la page « méthode » : l'algorithme de Dijkstra étape par étape pour obtenir la méthode de construction détaillée de ce tableau.

    Le trajet le plus rapide pour aller de la tour Montparnasse à la Basilique du Sacré-Cœur de Montmartre est le trajet M-N-L-S, c'est à dire Montparnasse - Notre-Dame de Paris - Louvre - Sacré-Cœur.

    Sa durée est de 11 minutes.

Graphes : Algorithme de Dijkstra

Une agence de tourisme propose la visite de certains monuments parisiens.

Chacun de ces monuments est désigné par une lettre comme suit :

  • E : Tour Eiffel
  • L : Musée du Louvre
  • M : Tour Montparnasse
  • N : Cathédrale Notre-Dame de Paris
  • S : Basilique du Sacré-Cœur de Montmartre
  • T : Arc de triomphe

Cette agence fait appel à une société de transport par autocar qui propose les liaisons suivantes (chacune de ces liaisons pouvant s'effectuer dans les deux sens de circulation) :

graphe non pondéré
  1. Expliquer pourquoi il est possible de trouver un trajet empruntant une fois et une seule chacune des dix liaisons indiquées sur le graphe.
    Donner un exemple d'un tel trajet.
    1. Donner la matrice d'adjacence $ M $ associée à ce graphe en classant les sommets par ordre alphabétique.
    2. On donne :

      $ M^2 = \begin{pmatrix} 4 &2 &1 &3 &2 &1 \\ 2 &4 &2 &2 &2 &2 \\ 1 &2 &3 &1 &3 &1 \\ 3 &2 &1 &3 &1 &1 \\ 2 &2 &3 &1 &4 &1\\ 1 &2 &1 &1 &1 &2 \end{pmatrix} $
      $ M^3 = \begin{pmatrix} 6 &10 &9 &5 &10 &6 \\ 10 &8 &8 &8 &10 &4 \\ 9 &8 &4 &8 &5 &4 \\ 5 &8 &8 &4 &9 &4 \\ 10 &10 &5 &9 &6 &6\\ 6 &4 &4 &4 &6 &2 \end{pmatrix} $

      Combien y a-t-il de trajets permettant de relier la cathédrale Notre-Dame de Paris et la tour Eiffel en utilisant au maximum trois liaisons.
      Justifier votre réponse.

  2. On complète le graphe précédent en indiquant, sur chacune des branches, la durée du trajet, en minutes, entre deux monuments.

    graphe pondéré

    On souhaite aller de la tour Montparnasse à la Basilique du Sacré-Cœur de Montmartre.

    En utilisant un algorithme, déterminer le trajet le plus rapide ainsi que la durée de ce trajet.

Corrigé

  1. Un trajet empruntant une fois et une seule chacune des liaisons d'un graphe correspond à une chaîne eulérienne.
    Un graphe admet une telle chaîne si et seulement s'il est connexe et possède exactement 0 ou 2 sommets de degré impair.

    Le graphe est connexe car il existe toujours un chemin entre deux monuments quelconques.
    D'après le graphe, les degrés des sommets sont :

    • E (Tour Eiffel) : 4
    • L (Musée du Louvre) : 4
    • M (Tour Montparnasse) : 3
    • N (Notre-Dame) : 3
    • S (Sacré-Cœur) : 4
    • T (Arc de triomphe) : 2

    Seuls les sommets M (Tour Montparnasse) et N (Notre-Dame) ont un degré impair.
    Le souhait d'emprunter chaque liaison une seule fois est donc réalisable.

    Un exemple de trajet possible est : M - L - E - T - S - E - M - N - L - S - N.

    1. La matrice d'adjacence $ M $ associée au graphe, avec les sommets classés par ordre alphabétique (E, L, M, N, S, T), est :

      $ M = \begin{pmatrix} 0 & 1 & 1 & 0 & 1 & 1 \\ 1 & 0 & 1 & 1 & 1 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 \\ 0 & 1 & 1 & 0 & 1 & 0 \\ 1 & 1 & 0 & 1 & 0 & 1 \\ 1 & 0 & 0 & 0 & 1 & 0 \end{pmatrix} $
    2. Le nombre de trajets de longueur $ k $ reliant deux sommets est donné par le coefficient correspondant dans la matrice $ M^k $.
      Ici, on cherche le nombre de trajets entre la cathédrale Notre-Dame (N) et la tour Eiffel (E) en utilisant au maximum trois liaisons (donc des trajets de longueur 1, 2 ou 3).
      Le sommet N correspond à la 4ème ligne et le sommet E à la 1ère colonne.

      • Nombre de trajets de longueur 1 : $ M_{4,1} = 0 $
      • Nombre de trajets de longueur 2 : $ (M^2)_{4,1} = 3 $
      • Nombre de trajets de longueur 3 : $ (M^3)_{4,1} = 5 $

      Le nombre total de trajets est donc : $ 0 + 3 + 5 = 8 $.
      Il y a 8 trajets reliant ces deux monuments en trois liaisons maximum.

  2. Pour déterminer le trajet le plus rapide entre la tour Montparnasse (M) et la Basilique du Sacré-Cœur (S), on utilise l'algorithme de Dijkstra.

    Sommets E L M N S T Choix
    Initialisation $ \infty $ $ \infty $ $ 0 $ $ \infty $ $ \infty $ $ \infty $ M (0)
    Étape 1 $ 10_M $ $ 7_M $   $ 4_M $ $ \infty $ $ \infty $ N (4)
    Étape 2 $ 10_M $ $ 6_N $     $ 12_N $ $ \infty $ L (6)
    Étape 3 $ 10_M $       $ 11_L $ $ \infty $ E (10)
    Étape 4         $ 11_L $ $ 14_E $ S (11)

    En remontant l'algorithme à partir du sommet S :

    • S vient de L (distance 11)
    • L vient de N (distance 6)
    • N vient de M (distance 4)

    Le trajet le plus rapide est M - N - L - S, c'est à dire Tour Montparnasse - Cathédrale Notre-Dame - Musée du Louvre - Basilique du Sacré-Cœur.

    La durée de ce trajet est de 11 minutes.

Graphes Trajet minimal – Bac ES Pondichéry 2009

Une agence de voyages organise différentes excursions dans une région du monde et propose la visite de sites incontournables, nommés A, B, C, D, E et F.

Ces excursions sont résumées sur le graphe ci-dessous dont les sommets désignent les sites, les arêtes représentent les routes pouvant être empruntées pour relier deux sites et le poids des arêtes désigne le temps de transport (en heures) entre chaque site.

Graphe pondéré des excursions entre sites A, B, C, D, E, F
  1. Justifier que ce graphe est connexe.
  2. Un touriste désire aller du site A au site F en limitant au maximum les temps de transport.

    1. En utilisant un algorithme, déterminer la plus courte chaîne reliant le sommet A au sommet F.
    2. Déduire le temps de transport minimal pour aller du site A au site F.
  3. Un touriste désirant apprécier un maximum de paysages souhaite suivre un parcours empruntant toutes les routes proposées une et une seule fois.

    Si ce parcours existe, le décrire sans justifier; dans le cas contraire justifier qu'un tel parcours n'existe pas.

Corrigé

  1. Deux sommets quelconques de ce graphe peuvent être reliés par une chaîne donc le graphe est connexe.
    1. On utilise l'algorithme de Dijkstra :

      A B C D E F Trajet
      0 7(A) $ \infty $ 15(A) $ \infty $ $ \infty $ AB
          19(B) 15(A) 11(B) 23(B) ABE
          19(B) 13(E)   23(B) ABED
          18(D)     23(B) ABEDC
                21(C) ABEDCF

      La plus courte chaîne reliant le sommet A au sommet F est ABEDCF

    2. Le temps de transport minimal pour aller du site A au site F est de 21 heures d'après le tableau précédent.
  2. D'après le théorème d'Euler, il est possible d'emprunter toutes les routes une et une seule fois si le nombre de sommets de degré impair est égal à 0 ou à 2 . Ici, le graphe possède 4 sommets de degré impair : C, D, E, F. Un tel parcours n'existe donc pas.

Graphe – Trajet minimal – Bac ES Amérique du Nord 2009

Un groupe d'amis organise une randonnée dans les Alpes.

On a représenté par le graphe ci-dessous les sommets B, C, D, F, T, N par lesquels ils peuvent choisir de passer. Une arête entre deux sommets coïncide avec l'existence d'un chemin entre les deux sommets.

Graphe des sommets B, C, D, F, T, N
    1. Recopier et compléter le tableau suivant :

      Sommets B C D F N T
      Degré des sommets du graphe            
    2. Justifier que le graphe est connexe.
  1. Le groupe souhaite passer par les six sommets en passant une fois et une seule par chaque chemin.

    Démontrer que leur souhait est réalisable. Donner un exemple de trajet possible.

  2. Le groupe souhaite associer chaque sommet à une couleur de sorte que les sommets reliés par un chemin n'ont pas la même couleur. On note $ n $ le nombre chromatique du graphe.

    1. Montrer que $ 4 \leqslant n \leqslant 6 $.
    2. Proposer un coloriage du graphe permettant de déterminer son nombre chromatique.
  3. Le groupe se trouve au sommet B et souhaite se rendre au sommet N. Les distances en kilomètres entre chaque sommet ont été ajoutées sur le graphe.

    Graphe pondéré avec distances en km entre les sommets B, C, D, F, T, N

    Indiquer une chaîne qui minimise la distance du trajet. Justifier la réponse.

Corrigé

    1. Tableau des degrés des sommets :

      Sommets B C D F N T
      Degré 2 4 4 5 3 4
    2. Le graphe est connexe car il existe toujours un chemin reliant deux sommets quelconques.
      Par exemple, la chaîne B-C-D-N-T-F contient tous les sommets du graphe.
  1. Pour qu'un groupe puisse parcourir chaque chemin une fois et une seule (chaîne eulérienne), il faut que le nombre de sommets de degré impair soit égal à 0 ou 2.
    Ici, seuls les sommets F (degré 5) et N (degré 3) ont des degrés impairs.
    Le souhait est donc réalisable.
    Un exemple de trajet possible est : F - B - C - F - D - C - T - F - N - T - D - N.
    1. Le plus haut degré du graphe est $ \Delta = 5 $ (sommet F), donc le nombre chromatique $ n $ vérifie $ n \leqslant \Delta + 1 = 6 $.
      De plus, les sommets {C, D, F, T} forment un sous-graphe complet (chaque sommet est relié aux trois autres), donc $ n \geqslant 4 $.
      On en déduit :

      $ 4 \leqslant n \leqslant 6 $
    2. On peut proposer le coloriage suivant avec 4 couleurs :

      • Couleur 1 : F
      • Couleur 2 : C et N
      • Couleur 3 : B et T
      • Couleur 4 : D

      Puisqu'on a réussi à colorier le graphe avec 4 couleurs et que $ n \geqslant 4 $, le nombre chromatique du graphe est $ n = 4 $.

  2. Pour déterminer la chaîne qui minimise la distance entre B et N, on utilise l'algorithme de Dijkstra.

    Sommets B C D F N T Sommet choisi
    Initialisation $ 0 $ $ \infty $ $ \infty $ $ \infty $ $ \infty $ $ \infty $ B (0)
    Étape 1   $ 12_B $ $ \infty $ $ 15_B $ $ \infty $ $ \infty $ C (12)
    Étape 2     $ 14_C $ $ 15_B $ $ \infty $ $ 17_C $ D (14)
    Étape 3       $ 15_B $ $ 26_D $ $ 17_C $ F (15)
    Étape 4         $ 26_D $ $ 17_C $ T (17)
    Étape 5         $ 24_T $   N (24)

    En remontant l'algorithme à partir de N :

    • N vient de T (distance 24)
    • T vient de C (distance 17)
    • C vient de B (distance 12)

    La chaîne qui minimise la distance entre B et N est : B - C - T - N.
    La distance minimale est de 24 km.

Graphes – Trajet minimal – Bac ES Polynésie française 2008

Une grande ville a mis en place un système de location de bicyclettes en libre service.

Un abonné peut ainsi louer une bicyclette dans une station puis la déposer dans n'importe quelle station de son choix.

La ville compte sept stations de location nommées A, B, C, D, E, F et G.

Les stations sont reliées entre elles par une piste cyclable et les temps de parcours en minutes sont indiqués sur le graphe ci-dessous.

Bac ES Polynésie française 2008
  1. Philippe, cycliste très prudent, décide de visiter cette ville en n'empruntant que des pistes cyclables.

    1. A-t-il la possibilité d'effectuer un parcours empruntant une fois et une seule toutes les pistes cyclables ? Justifier la réponse.
    2. A la fin de ce parcours, pourra-t-il rendre sa bicyclette dans la station de départ ? Justifier la réponse.
  2. On appelle M la matrice associée à ce graphe. On donne deux matrices N et T :

    $ N=\begin{pmatrix}4 & 9 & 8 & 5 & 5 & 9 & 2 \\ 9 & 6 & 10 & 7 & 10 & 6 & 4 \\ 8 & 10 & 8 & 5 & 10 & 9 & 4 \\ 5 & 7 & 5 & 2 & 8 & 4 & 5 \\ 5 & 10 & 10 & 8 & 6 & 11 & 2 \\ 9 & 6 & 9 & 4 & 11 & 4 & 6 \\ 2 & 4 & 4 & 5 & 2 & 6 & 0 \end{pmatrix} $
    $ T=\begin{pmatrix} 4 & 9 & 8 & 4 & 5 & 9 & 1 \\ 9 & 6 & 10 & 6 & 10 & 6 & 4 \\ 8 & 10 & 8 & 4 & 10 & 9 & 4 \\ 5 & 7 & 5 & 2 & 8 & 4 & 5 \\ 5 & 8 & 10 & 8 & 6 & 11 & 0 \\ 9 & 6 & 9 & 4 & 11 & 4 & 6 \\ 1 & 4 & 4 & 5 & 0 & 6 & 0 \end{pmatrix} $
    1. Une des deux matrices N ou T est la matrice M³. Sans calculs, indiquer quelle est la matrice M³ en justifiant la réponse.
    2. Philippe a loué une bicyclette à la station F et l'a rendue à la station E. Au cours de son déplacement, il est passé exactement deux fois devant une station. Combien de trajets différents a-t-il pu suivre ? Expliquer.
  3. Le lendemain, il envisage de rejoindre le plus rapidement possible la station $ G $ en partant de la station A.
    À l'aide d'un algorithme, déterminer un tel parcours et donner alors le temps nécessaire pour l'effectuer.

Corrigé

    1. Pour déterminer s'il est possible d'effectuer un tel parcours (chaîne eulérienne), on calcule le degré de chaque sommet :

      • A : 3 (relié à B, C, F)
      • B : 4 (relié à A, C, D, E)
      • C : 4 (relié à A, B, E, F)
      • D : 3 (relié à B, E, G)
      • E : 4 (relié à B, C, D, F)
      • F : 4 (relié à A, C, E, G)
      • G : 2 (relié à D, F)

      Le graphe possède exactement 2 sommets de degré impair (A et D).
      Or, d'après le théorème d'Euler, un graphe admet une chaîne eulérienne si et seulement si le nombre de sommets de degré impair est égal à 0 ou 2.
      Philippe a donc la possibilité d'effectuer un tel parcours (en commençant par A et en finissant par D, ou inversement).

    2. Un parcours revenant à la station de départ en empruntant chaque piste une seule fois correspond à un cycle eulérien.
      L'existence d'un cycle eulérien nécessite que tous les sommets soient de degré pair.
      Comme A et D sont de degré impair, il ne pourra pas revenir à son point de départ par un tel parcours.

2.

  1. La matrice $ M^3 $ donne le nombre de chemins de longueur 3 entre deux sommets.
    Considérons le nombre de chemins de longueur 3 reliant le sommet G (7ème ligne/colonne) à lui-même.
    Un chemin de longueur 3 de G à G est un cycle de longueur 3 passant par G. Or G n'est relié qu'à D et F, et il n'y a pas d'arête directe entre D et F. Il n'existe donc aucun triangle (cycle de longueur 3) passant par G.
    On doit donc avoir $ (M^3)_{7,7} = 0 $.
    C'est le cas pour les deux matrices N et T.

    Regardons alors le nombre de chemins de longueur 3 entre A (sommet 1) et G (sommet 7).
    Les chemins de longueur 3 sont de la forme A-X-Y-G.
    Comme G est relié à D et F, Y doit être D ou F.

    • Si Y = D : les voisins de D sont B, E, G. Donc X peut être B ou E. Or A est relié à B ($ A-B-D-G $) mais A n'est pas relié à E.
    • Si Y = F : les voisins de F sont A, C, E, G. Donc X peut être A, C ou E. Or A est relié à C ($ A-C-F-G $) mais A n'est pas relié à E.

    Il y a donc 2 chemins de longueur 3 entre A et G. La matrice $ M^3 $ doit avoir le coefficient 2 à la ligne 1, colonne 7.
    Il s'agit donc de la matrice N.

  2. Philippe est passé exactement deux fois devant une station entre F et E. Son trajet est donc composé de 3 liaisons (longueur 3).
    Le nombre de tels trajets est donné par le coefficient de la 6ème ligne (F) et 5ème colonne (E) de la matrice $ M^3 $, soit $ N_{6,5} $.
    D'après la matrice N, il y a 11 trajets différents.

3. Pour trouver le trajet le plus rapide de A vers G, on utilise l'algorithme de Dijkstra.

Sommets A B C D E F G Choix
Initialisation 0 $ \infty $ $ \infty $ $ \infty $ $ \infty $ $ \infty $ $ \infty $ A (0)
Étape 1   $ 7_A $ $ 11_A $ $ \infty $ $ \infty $ $ 13_A $ $ \infty $ B (7)
Étape 2     $ 11_A $ $ 23_B $ $ 21_B $ $ 13_A $ $ \infty $ C (11)
Étape 3       $ 23_B $ $ 20_C $ $ 13_A $ $ \infty $ F (13)
Étape 4       $ 23_B $ $ 20_C $   $ 31_F $ E (20)
Étape 5       $ 23_B $     $ 31_F $ D (23)
Étape 6             $ 28_D $ G (28)

Le trajet le plus court est donc A - B - D - G.
Le temps nécessaire pour l'effectuer est de 28 minutes.
[/list]

Graphes Algorithme de Dijkstra – Bac ES Métropole 2009

Le graphe ci-dessous représente le plan d'une ville.

Le sommet A désigne l'emplacement des services techniques.

Les sommets B, C, D, E, F et G désignent les emplacements de jardins publics. Une arête représente l'avenue reliant deux emplacements et est pondérée par le nombre de feux tricolores situés sur le trajet.

Graphe pondéré d'un plan de ville — algorithme de Dijkstra

Les parties I et II sont indépendantes.

Partie I

On s'intéresse au graphe non pondéré.

  1. Répondre sans justification aux quatre questions suivantes :

    1. Ce graphe est-il connexe ?
    2. Ce graphe est-il complet ?
    3. Ce graphe admet-il une chaîne eulérienne ?
    4. Ce graphe admet-il un cycle eulérien ?
  2. Déterminer, en justifiant, le nombre chromatique de ce graphe.

Partie II

On s'intéresse au graphe pondéré.

Proposer un trajet comportant un minimum de feux tricolores reliant A à G.

La réponse sera justifiée par un algorithme.

Corrigé

Partie 1

    1. Le graphe est connexe car pour toute paire de sommets, il existe une chaîne reliant ces sommets.
    2. Le graphe n'est pas complet car les points A et D (par exemple) ne sont pas relié par une arête.
    3. D'après le théorème d'Euler, le graphe admet une chaîne eulérienne. En effet, il n'existe que deux sommets de degré impair(C et D)
    4. D'après le théorème d'Euler, le graphe n'admet pas de cycle eulérien. Il faudrait pour cela qu'il n'existe aucun sommet de degré impair
  1. BCDE forme un sous-graphe complet. Le nombre chromatique du graphe est donc supérieur ou égal à 4.

    On peut colorier le graphe avec 4 couleurs de la façon suivante (par exemple) :

    rouge: A, D
    bleu: B, F
    vert: C, G
    jaune: E

    Le nombre chromatique du graphe est donc 4.

Partie 2

On utilise l'algorithme de Dijkstra :

A B C D E F G
0 2 (A) 1 (A) $ \infty $ $ \infty $ $ \infty $ $ \infty $
  2 (A)   5 (C) 4 (C) 6 (C) $ \infty $
      3 (B) 4 (C) 6 (C) $ \infty $
        4 (C) 6 (C) 8 (D)
          5 (E) 8 (D)
            7 (F)

Le trajet ACEFG comporte le nombre minimum de 7 feux.