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

Boost C++ Discussion :

Boost et Graph


Sujet :

Boost C++

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut Boost et Graph
    Bonjour,
    J'ai lu beaucoup de tutoriels sur la librairie Graph proposée par Boost, mais je ne comprends pas comment l'appliquer dans mon cas...
    J'ai un vector à deux dimensions contenant des bool. 0 signifie un passage et 1 un mur.
    J'aimerais faire une fonction qui me retourne un vector des passages à prendre pour passer rapidement d'un point A à un point B, sans passer par les diagonales. Je n'arrive pas à programmer cela...

    Pouvez-vous m'aider ?
    Si vous avez des codes exemples ou autres, je prends !
    Je suis déjà aller à ce lien http://matthieu-brucher.developpez.c...mentation/#LIV.

    L'ennui c'est que je n'ai pas tout compris...
    Merci par avance pour votre aide !

  2. #2
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Tu veux faire un Dijkstra, c'est ça ?

    Tout d'abord, tu dois construire ton graphe. Tu as réussi ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Oui je veux utiliser cet algorithme !
    Ou le A star, cela ne me dérange pas...

    Mais non, je n'ai pas réussi à construire le graphe, puisqu'il y a plein de classes, la documentation sur le site de boost est un peu désordonnée (ou c'est moi qui m'y repère pas ).
    Et je ne sais pas comment appliquer à mon cas cette classe. Du style, je ne sais pas qu'est ce que les edges, les vertex, si j'en ai réellement besoin sachant qu'il ne s'agit que de 0 ou 1...

    Merci d'avance pour vos réponses

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Comme tu as une matrice (un graphe complètement connecté), une adjacency_matrix est ce qui paraît le plus logique. Par la suite, tu crées tes propriétés comme pour l'adjacency_list.

    Mais je te l'accorde, c'est une bibliothèque complexe (et après un long temps sans elle, j'ai aussi du mal à m'y retrouver )

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Oui, mais ce que je voulais aussi savoir c'est qu'est-ce que je mets comme type pour les vertex, les edges, ....
    Et comment je remplis alors mon graphe ? Comme j'indique que 0 est un passage et 1 un mur ?

    Merci beaucoup pour ta patience

  6. #6
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Le type des vertex, c'est des entiers normalement. Pour les arcs, tu prends aussi des entiers.
    Après, c'est comme mon tutoriel.

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Mais je n'ai pas vu l'utilisation de l'algorithme.
    Je crois que je vais essayer de le relire plus en détail....

    Mais je pense que les développeurs de cette librairie auraient peut-être dût plus détailler la documentation... (avec des images et tout ça).
    Mais bon, c'est déjà assez complexe à assimiler les graphes, donc on peut voir déjà ça comme du bon travail

    PS : est-ce que je vais avoir à utiliser les property_maps ? Et pourquoi ne pas utiliser les booléens puisque je travaille directement dessus ?

  8. #8
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Je n'ai pas fait d'article sur l'utilisation des fonctions.

    Tes property maps seront, si je me souviens bien, les poids que tu mets sur le graphe, à savoir des poids de 0 ou de 1. Tu n'as pas le choix

  9. #9
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Même si j'aurais voulu comprendre (et utiliser) boost Graph, je crois qu'il vaut mieux que je développe mon propre algorithme (je prendrai algorithme A*) appropriée pour mon cas !

    Merci beaucoup pour votre aide !
    Et espérons qu'ils amélioreront leur documentation (car même si cela fait un bout de temps que l'on travaille pas sur Boost, la documentation devrait être capable de s'en remémorer facilement et rapidement...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Graphs avec boost
    Par donkeyquote dans le forum Boost
    Réponses: 9
    Dernier message: 19/08/2009, 20h00
  2. Utilisation de Boost::Graph
    Par dj_benz dans le forum Boost
    Réponses: 6
    Dernier message: 01/10/2008, 09h56
  3. Bibli Boost Graph
    Par devroot dans le forum Boost
    Réponses: 5
    Dernier message: 10/09/2008, 12h38
  4. conctruction de la librairie boost graph
    Par jiim dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 10/03/2005, 22h30

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