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 :

Simplification d'une matrice de booléens


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Points : 91
    Points
    91
    Par défaut Simplification d'une matrice de booléens
    Bonjour,

    Je travaille sur un logiciel de recherche d'itinéraires pour un réseau de bus.

    Je dois d'abord calculer tous les chemins possibles pour aller d'un arrêt A à un arrêt B.

    J'ai donc representer ce système par une matrice de booléen. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
       A B C D E F G H
    A |0 1 0 0 0 1 0 0|
    B |0 0 1 0 0 0 0 0|
    C |0 0 0 0 0 0 0 0|
    D |0 0 0 0 0 0 0 1|
    E |0 0 0 0 0 0 1 0|
    F |0 0 0 1 1 0 0 0|
    G |0 0 0 0 0 0 0 0|
    Cette matrice me sert à modéliser une sorte de graphe dirigé : de A je peux aller en B, de B je peux aller en C ...

    Mais voilà, à part explorer tous les chemins possibles afin de voir si il arrive à mon arrêt final, je ne vois pas d'autres solutions.

    Est ce qu'il y aurai une representation plus rapide et/ou moins couteuse en mémoire qui me permettrai de faire cette opération ?

    Est ce qu'il y a une possibilité de réduire cette matrice ? ou est ce qu'il existe un algorithme qui permet de passer outre l'exploration de tous les chemins ?

    Merci d'avance !

  2. #2
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Au lieu d'utiliser une matrice d'adjacence, utilise une liste d'adjacence.

    Regardes ceci :

    http://lapoire.developpez.com/algori...es/graphes.pdf

  3. #3
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    ou est ce qu'il existe un algorithme qui permet de passer outre l'exploration de tous les chemins ?
    Pour la recherche du meilleur trajet, on pourra opérerer un traitement "concentrique" dans lequel on traite les points en ordre décroissant du temps (ou de la distance) nécessaire pour les atteindre.

    Pour commencer, la liste des points à traiter contient seulement le point de départ. Ensuite, pour chacun des points de la liste non encore traité, on regarde chaque adjacence et on l'ajoute à la liste, si elle n'est pas encore traitée. Si elle a dèjà été traitée et si le nouveau chemin est plus rapide (ou plus court), on met à jour le point et on le fait "avancer" dans la liste pour garder l'ordre de tri.

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 271
    Points : 91
    Points
    91
    Par défaut
    Mercibeaucoup, je vais jeter un oeil là dessus

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/05/2007, 15h04
  2. Simplification d'une requête UNION
    Par eautret dans le forum Langage SQL
    Réponses: 6
    Dernier message: 18/01/2005, 14h51
  3. [JTable] remplir avec une matrice
    Par ybdz dans le forum Composants
    Réponses: 3
    Dernier message: 08/12/2004, 21h03
  4. Recherche des coefficients d'une matrice 3x3
    Par colorid dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 25/11/2004, 16h52
  5. Déclarer une matrice
    Par joy dans le forum C
    Réponses: 7
    Dernier message: 09/12/2002, 00h42

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