Identification des bords inutiles pour le chemin le plus court

11

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 ).GMGGMG[i,j]ijG+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.GGGMG=MGGG

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).GG0GG

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?GG

(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.)Gmax

a3nm
la source
2
Kn1Kn
5
GG(u,v)1=MG[u,v]<MG[u,v]
2
(u,v)uvuvmax
3
Vous pourriez vouloir rechercher des "préservateurs de distance"
arnab
2
Sasho Nikolov: Désolé, pour les graphiques non orientés et non pondérés, je voulais dire les bords de poids 0, pas 1. Reformuler cela dans la question.
a3nm

Réponses:

3

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.)

JimN
la source
Je pense que la différence entre la centralité entre les nœuds et la centralité entre les bords est inessentielle car vous pouvez toujours ajouter des nœuds intermédiaires aux bords, ou copier des nœuds et ajouter un bord d'une copie à l'autre, pour réduire une définition à l'autre. Ceci est un pointeur utile, merci de m'en avoir informé!
a3nm