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 :

A*


Sujet :

Algorithmes et structures de données

  1. #1
    Membre averti Avatar de Ekinoks
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    687
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 687
    Points : 358
    Points
    358
    Par défaut A*
    Salut !

    Je suis en train de créé un programme pour trouver le chemin le plus court entre deux point dans un labyrinthe.

    J’ai donc fait des recherche et est constaté que l’algorithme A* est celui qui me fallait, très précis sans demandé trop de temps pour trouver le chemin le plus cour.

    J’ai codé cette algorithme avec 16 déplacements possibles.

    Malheureusement, lorsque le cadrage deviens un peu grand, le temps de résolution devient trop long ?

    Bon but étant ensuite d’intégré ce programme dans un moteur graphique pour créé un jeux de stratégie en temps réel.

    Comment puis je faire pour optimisé cette algorithme ?

    Merci

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Vérifie déjà que tu l'as implémenté avec les bonnes structures de données et que tu n'as pas d'erreur grossière dans ton code, ou encore que tu utilises une distance pas trop compliquée.

    Si c'est pour utiliser dans du temps réel, tu peux répartir tes calculs sur plusieurs frames ou utiliser des threads par exemple.

    Ensuite si réellement c'est la taille des données à traiter qui est trop élevée, tu peux fragmenter ta carte en sous-zones, précalculer les plus courts chemins entre les zones, et n'utiliser A* qu'à l'intérieur de chaque zone.

    Il y a encore pas mal d'optimisations plus ou moins compliquées à ce sujet, il me semble que ce lien n'était pas mauvais (à vérifier) :

    http://theory.stanford.edu/~amitp/GameProgramming/index.html

  3. #3
    Membre averti Avatar de Ekinoks
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    687
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 687
    Points : 358
    Points
    358
    Par défaut
    Ok, je te remercie pour t'a réponse je vais vérifier tout ça.

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

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