IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Dijkstra chemins disjoints??


Sujet :

Algorithmes et structures de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 7
    Points
    7
    Par défaut Dijkstra chemins disjoints??
    bonjour tout le monde,

    J'utilise l'algoithme de dijkstra pour calculer les k-plus courts chemins entre une source et une destination. Il fonctionne correctement.

    Maintennat je voudrais calculer des chemins DISJOINTS entre une source et une destination.

    Y'aurait -il une version de dijkstra qui fournit un tel résultat?

    Merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Directeur Scientifique
    Inscrit en
    Avril 2005
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur Scientifique

    Informations forums :
    Inscription : Avril 2005
    Messages : 419
    Points : 554
    Points
    554
    Par défaut
    Il faut définir un peu plus formellement ce que sont les k plus courts chemins distincts (arcs distincts je suppose)
    Si les k chemins ont des distances d1 <= d2 <= ... <= dk, on peut minimiser
    • max(d_i)=d_k, ou
      la somme des d_i, ou
      l'ordre lexicographique (d_1,d_2,...d_k)

    Dans le premier cas (max), trouver k chemins distincts qui sont tous de longueur inférieure à une distance d est NP-complet (je vois une réduction de Partition si cela t'intéresse). Il faudra donc utiliser une approche énumérative.

    Dans le deuxième (somme), il me semble que l'on peut modéliser le problème comme un problème de flot de coût minimal en mettant des capacités et des coûts unitaires sur tous les arcs.

    Dans le troisième (lexico), on aurait envie de calculer le plus court chemin, d'enlever les arcs de ce chemin, puis le plus court chemin dans le nouveau graphe jusqu'à obtenir k chemins. Par contre, il y a un problème s'il existe plusieurs plus court chemin dans un graphe donné: lequel choisir???

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Re: Dijkstra chemins disjoints??
    Citation Envoyé par daliz
    bonjour tout le monde,

    J'utilise l'algoithme de dijkstra pour calculer les k-plus courts chemins entre une source et une destination. Il fonctionne correctement.

    Merci d'avance
    Salut tu l'as programmé en quel langage ton algorithme de Dijkstra?
    Si c'est du java je suis interessé par tes sources.

Discussions similaires

  1. Recherche de chemins satisfaisant plusieurs critères : algorithme de Dijkstra, métaheuristique, ... ?
    Par camelia136 dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 22/07/2011, 13h06
  2. Algoritme Dijkstra pour le calcul du plus court chemin
    Par choko83 dans le forum Langage
    Réponses: 2
    Dernier message: 10/06/2010, 14h10
  3. Plus court chemin Dijkstra STL
    Par CedricMocquillon dans le forum C++
    Réponses: 6
    Dernier message: 05/10/2007, 16h44
  4. programme algo de + court chemin (dijkstra)
    Par isidore dans le forum C
    Réponses: 7
    Dernier message: 28/11/2006, 12h38
  5. algo de Dijkstra (+ court chemin d'un labyrinthe)
    Par gg14bis dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 25/03/2005, 08h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo