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

Mathématiques Discussion :

Theorie des graphes : chemins multiples dans un DAG


Sujet :

Mathématiques

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 45
    Points : 52
    Points
    52
    Par défaut Theorie des graphes : chemins multiples dans un DAG
    Bonjour,

    J'aimerais savoir si il existe un algorithme pour lister tous les chemins multiples qui existent dans un graphe orienté acyclique (DAG : directed acyclic graph).

    Merci de votre aide.

  2. #2
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2010
    Messages : 49
    Points : 82
    Points
    82
    Par défaut
    Je ferais un truc u genre :
    je choisit un sommet de départ d et d'arrivé a
    ensuite, je marque chaque arrête qui part de d, je choisit un sommet à l'extrémité d'une des arrêtes et je démarque cette arrête, puis je marque chaque arrête qui part de ce sommet ect...
    Lorsqu'il n'y a plus aucune arrête marquées qui part d'un sommet, ou lorsqu'on est arrivé au sommet a, on fait : si on est sur a, on enregistre le chemin, et dans tout les cas on revient au sommet précédent et on explore les autres arrêtes marquées.
    L'algo est terminé lorsqu'il n'y a plus aucune arrête marquées au sommet d.
    Voila!
    Sinon pourquoi as tu besoin de ça? Est-ce vraiment nécessaire de trouver tout les chemins??

  3. #3
    Invité
    Invité(e)
    Par défaut
    Attention, le graphe est orienté, donc il est possible que d soit aussi un point d'arrivée de chemin(s) qui partirait d'on ne sait où. Donc la liste est terminée quand tous les arcs ont été parcourus.
    Mais si le point de départ d n'est pas le seul point de départ d'un noeud, il peut y avoir plusieurs solutions, ce qui ne semble pas pertinent, puisque le graphe est orienté.
    Donc, moi je partirais d'un point d qui ne peut pas être aussi un point d'arrivée.
    Il y a aussi la notion de "chemin multiple" qu'il ne faut pas oublier. Un chemin ne sera à lister que s'il comporte au moins 2 arcs. (et que a et d sont différents, mais c'est dans l'hypothèse)
    J'aimerais bien aussi connaître le domaine d'utilisation,si ce n'est pas confidentiel.

  4. #4
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2010
    Messages : 49
    Points : 82
    Points
    82
    Par défaut
    Oui mais le graphe est acyclique... On ne peut pas par définition revenir à d. Les arrêtes qui y arrivent importe peu. A moins que tu veuille dire qu'il existe d'autres chemins... Effectivement, je ne l'ai pas marqué car ca me semblait évident, mais il faut en plus parcourir toute les paires (d,a) possibles.

  5. #5
    Membre régulier
    Inscrit en
    Mai 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2010
    Messages : 49
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par Pierre Dolez Voir le message
    Donc, moi je partirais d'un point d qui ne peut pas être aussi un point d'arrivée.
    Oui effectivement, bien vu, et dans ce cas, il faudrait l'appliquer à chaque composante connexe! Les autres chemins ne peuvent alors qu'être des sous-chemins de ceux qu'on obtiendra.

  6. #6
    Invité
    Invité(e)
    Par défaut
    De toute façon, c'est pas simple. A priori, rien n'interdit de passer deux fois par le même arc, en partant de deux point d (départ) différents, ou même du même point de départ, avec un autre arc, ou même le même arc de départ, mais avec une autre bifurcation en cours.
    Un graphe est un outil, on ne peut vraiment l'utiliser que si on sait le but à atteindre, ce qui n'est pas le cas présentement. Mais c'est un outil extraordinaire, je l'ai utilisé entre autres pour définir le meilleur chemin d'un point à un autre.

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    Merci beaucoup. Toute cette discussion me donne une bonne piste pour écrire l'algo.
    Je vais m'y atteler.

Discussions similaires

  1. Theorie des graphes : trouver tous les cycles
    Par genetin dans le forum Mathématiques
    Réponses: 3
    Dernier message: 02/07/2010, 10h55
  2. programme theorie des graphes
    Par hanou88 dans le forum C
    Réponses: 1
    Dernier message: 21/04/2010, 10h02
  3. [Débutant] Problème d'implementation de graphe (theorie des graphes inside)
    Par cappadocien dans le forum MATLAB
    Réponses: 2
    Dernier message: 13/10/2008, 16h27
  4. Tracer des graphes en Fortran dans un environnement Vista
    Par saldroufi dans le forum Fortran
    Réponses: 1
    Dernier message: 26/10/2007, 16h42

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