Considérons un graphe (le problème est logique à la fois pour les graphes orientés et non orientés). Appelons M G la matrice des distances de G : M G [ i , j ] est la distance de chemin la plus courte du sommet i au sommet j dans G pour une certaine fonction d'agrégation fixe (par exemple + ou max ).
Je dis qu'un sous-graphe de G (avec le même ensemble de sommets) est sp-équivalent à G si M G = M G ′ . En d'autres termes, la suppression des bords pour passer de G à G ' ne modifie pas la longueur des chemins les plus courts; les bords supprimés ne sont pas nécessaires pour le chemin le plus court.
En général, il n'y a pas de sous-graphe sp-équivalent unique de qui soit minimal pour l'inclusion. Par exemple, si G n'est pas orienté et que toutes les arêtes ont un poids de 0 , tout arbre couvrant de G est un sous-graphique minimal équivalent à sp (en effet, toute arête d'un cycle pourrait être supprimée, mais la déconnexion d'une paire de sommets modifie évidemment la distance). Cependant, je peux toujours appeler les bords de G inutiles s'ils ne se trouvent dans aucun sous-graphique minimal équivalent sp, nécessaire s'ils se trouvent dans tous les sous-graphiques minimaux équivalents sp (c'est-à-dire, dans leur intersection), et facultatifs s'ils se trouvent dans certains d'entre eux (c'est-à-dire , dans leur union).
Ma première question est: ces notions ont-elles un nom standard?
Ma deuxième question est la suivante: quelle est la complexité de la classification des bords de de cette manière, selon que G est non orienté ou dirigé, et selon la fonction d'agrégation?
(Par exemple, pour non orienté et pour max , les sous-graphes minimaux équivalents sp sont des arbres couvrant un poids minimum, donc au moins si tous les poids de bord sont différents, la classification est facilement calculée en calculant l'unique arbre couvrant minimum, mais en général je je ne sais pas comment les choses fonctionnent.)
Réponses:
Si vous cherchez un moyen de nommer (ou de caractériser alternativement) ces arêtes que vous appelez "inutiles" et "nécessaires", vous pouvez les appeler les arêtes avec une centralité d'interdépendance = 0 et = 1, respectivement. Chaque front peut être classé comme ayant = 0, = 1 ou dans (0,1) la mesure de l'intervalle dans le temps des chemins les plus courts de toutes les paires.
Il s'agit d'une mesure bien étudiée des bords du réseau, et il existe des algorithmes rapides pour mettre à jour tous les scores de centralité des bords lors des suppressions de bords (mais je ne suis pas sûr des autres perturbations).
Une fonction de centralité est intégrée à la plupart des analyses de réseau que j'ai vues, et il existe également une définition qui s'applique aux graphiques dirigés:
(modifier: le lien que j'ai donné initialement ne parlait que de la centralité entre les nœuds, mais voici le seul article de wikipedia que je puisse trouver qui traite de la centralité entre les bords: http://en.wikipedia.org/wiki/Girvan%E2%80%93Newman_algorithm Pourtant, la périphérie est une mesure standard que l'on trouve généralement dans les packages d'analyse de réseau.)
la source