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 :

Algo de recherche dans un graphe


Sujet :

Mathématiques

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2011
    Messages : 17
    Points : 8
    Points
    8
    Par défaut Algo de recherche dans un graphe
    Bonjour,

    Je planche actuellement sur un algo de recherche dans un graphe, j'aurais besoin de conseils, savoir si je suis bien parti ou pas.

    Voici le problème :
    - Soit un réseau d'équipement avec une topologie étoilée (graphe connexe non directionnel).
    - Chaque équipement travaille sur une fréquence donnée, mais pour ne pas brouiller les équipements voisins, la même fréquence ne doit pas être ré-utilisée à moins de 5 équipements voisins.
    - Mon problème consiste à trouver les couples d'équipements qui travaillent avec la même fréquence alors qu'ils sont distants de moins de 5 relations de voisinages.

    Voici ce que je pensais faire :
    - J'ai un tableau de couples équipement / fréquence
    - J'ai fait une matrice des équipements voisins de premier niveau (voisin direct)
    ex :
    A : B,C,F
    B : A,C,E,F
    C : A,B
    - A partir de cette matrice des équipements voisins de premier niveau je calcule la même matrice pour les voisins de 5ème niveaux
    - Puis je fais la vérification à partir de mon tableau équipement / fréquence

    J'ai peur que cela ne soit très long et pas très optimisé , Avez-vous des conseils à me donner pour améliorer cela svp ?

    Merci.

  2. #2
    Membre expert
    Avatar de kwariz
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2011
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2011
    Messages : 898
    Points : 3 352
    Points
    3 352
    Par défaut
    Hello,

    Si tu peux représenter ton graphe avec un matrice d'adjacence M, alors la kième puissance de M te donneras le nombre de chemins de longueur k d'un noeud à un autre . Les Mi,j non nuls te donnerons les couples problématiques à vérifier.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2011
    Messages : 17
    Points : 8
    Points
    8
    Par défaut
    Merci pour ta réponse.

    Au début c'est bien vers cette solution que je m'orientais mais j'ai oublié de préciser dans mon précédent post que mon graphe est constitué de 13000 à 15000 nœuds d'ordre 32 au maximum.
    Du coup ma matrice d'adjacence est énorme et contient beaucoup de 0 (info non significative dans mon cas), et j'ai peur que cela soit vraiment très long.
    C'est pourquoi pour faire un programme plus léger j'ai préféré (jusqu'à présent) partir d'un tableau des nœuds voisins puis récursivement sur ce tableau trouver pour chaque nœud tous les nœuds voisins de 5 niveaux. Puis terminer avec la comparaison des fréquences.

    Malgré tout je pense que cet algo risque d'être long tout de même et je cherche à l'améliorer car j'ai des contraintes temporelles fortes sur cet algo.

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur R&D en apprentissage statistique
    Inscrit en
    Juin 2009
    Messages
    447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur R&D en apprentissage statistique

    Informations forums :
    Inscription : Juin 2009
    Messages : 447
    Points : 752
    Points
    752
    Par défaut
    Utilise des bibliothèques d'algèbre linéaire pour les matrices creuses (sparse matrices), c'est en général très efficace.

Discussions similaires

  1. Recherche d'un cycle dans un graphe par récurrence
    Par olivier_1970 dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 12/10/2014, 18h18
  2. Algorithme de recherche de tous les pairs-chemins dans un graphe
    Par bilzzbenzbilz dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 29/10/2010, 00h38
  3. Algo optimisation de parcours dans un graphe
    Par egu07 dans le forum Intelligence artificielle
    Réponses: 1
    Dernier message: 11/09/2008, 11h20
  4. Réponses: 5
    Dernier message: 12/01/2007, 11h57
  5. Algo de recherche dans un cube de couleur
    Par mamelouk dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 15/06/2005, 22h38

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