CommencerCommencer gratuitement

Distances entre sommets

L’interconnexion d’un réseau peut être évaluée en examinant le nombre et la longueur des chemins entre les sommets. Un chemin est simplement la chaîne de connexions entre des sommets. Le nombre d’arêtes intermédiaires entre deux sommets représente la distance géodésique entre ces sommets. Des sommets reliés directement ont une distance géodésique de 1. Ceux qui partagent un voisin commun sans être connectés entre eux ont une distance géodésique de 2, et ainsi de suite. Dans les réseaux orientés, on peut tenir compte du sens des arêtes. Si l’on ne peut pas atteindre deux sommets en suivant les arêtes orientées, on leur attribue une distance géodésique infinie. Dans cet exercice, vous allez apprendre à trouver les plus longs chemins entre des sommets d’un réseau et à repérer les sommets situés à \(n\) connexions d’un sommet donné. Pour des réseaux de transmission de maladies comme le jeu de données sur la rougeole, cela vous aide à identifier la vitesse de propagation de la maladie dans le réseau.

Cet exercice fait partie du cours

Analyse de réseaux avec R

Afficher le cours

Instructions

  • Trouvez la longueur du plus long chemin du réseau avec farthest_vertices().
  • Identifiez la séquence de ce chemin avec get_diameter(). Cela montre quels enfants ont transmis la maladie le plus loin dans le réseau.
  • Utilisez ego() pour trouver tous les sommets atteignables en 2 connexions depuis le sommet 42, puis ceux qui peuvent atteindre le sommet 42 en deux connexions. Le premier argument de ego() est l’objet graphe, le deuxième est le nombre maximal de connexions entre les sommets, le troisième est le sommet d’intérêt, et le quatrième indique si vous considérez les connexions qui sortent du sommet d’intérêt ou celles qui y entrent.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

library(igraph)

# Which two vertices are the furthest apart in the graph ?
___(g) 

# Shows the path sequence between two furthest apart vertices.
___(g)  

# Identify vertices that are reachable within two connections from vertex 42
___(g, ___, '42', mode = c('___'))

# Identify vertices that can reach vertex 42 within two connections
___(g, ___, '42', mode = c('___'))
Modifier et exécuter le code