J'ai un graphique acyclique orienté avec des arêtes positives. Il a une source unique et un ensemble de cibles (sommets les plus éloignés de la source). Je trouve les chemins les plus courts de la source à chaque cible. Certains de ces chemins se chevauchent. Ce que je veux, c'est un arbre de chemin le plus court qui minimise la somme totale des poids sur tous les bords.Comment minimiser le coût total de l'arborescence du plus court chemin
Par exemple, considérons deux des cibles. Étant donné que tous les poids de bord sont égaux, s'ils partagent un seul chemin le plus court sur la plus grande partie de leur longueur, cela est préférable à deux chemins les plus courts sans chevauchement (moins d'arêtes dans l'arbre équivaut à un coût global inférieur).
Autre exemple: deux chemins ne se chevauchent pas sur une petite partie de leur longueur, avec un coût élevé pour les chemins non superposés, mais un faible coût pour le long chemin partagé (faible coût combiné). D'un autre côté, deux chemins ne se chevauchent pas sur la plus grande partie de leur longueur, avec des coûts faibles pour les chemins qui ne se chevauchent pas, mais un coût élevé pour le chemin partagé court (également, coût combiné faible). Il y a beaucoup de combinaisons. Je veux trouver des solutions avec le coût global le plus bas, compte tenu des chemins les plus courts de la source à la cible. En d'autres termes, je veux les arbres les plus courts et les plus courts.
Est-ce que cela sonne des cloches? Quelqu'un peut-il me signaler des algorithmes pertinents ou des applications analogues?
À la votre!
Hm ... essayer de partitionner ne suis pas sûr cependant. les chemins dans des ensembles qui n'ont rien en commun avec les autres. Peut-être inverser chaque bord et résoudre le problème de complément ... –
Il suffit de supprimer les nœuds et les arêtes qui ne se trouvent sur aucun chemin de la source à la cible et de calculer l'arborescence de poids minimal du DAG résultant. On dirait que ça va marcher. Une des réponses le mentionne aussi. –
On dirait que c'est NP-complet et MST était juste un rouge-hareng. J'ai posté une réponse. –