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

Intelligence artificielle Discussion :

Paramètres optimaux pour l'algorithme des fourmis


Sujet :

Intelligence artificielle

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Paramètres optimaux pour l'algorithme des fourmis
    Bonjour à tous,

    Je réalise en ce moment l'algorithme des fourmis sur Python, algorithme permettant de trouver une solution approchée à un problème d'optimisation. (le plus court chemin parmi n villes)

    J'ai ainsi réalisé sur Python cet algorithme, qui fonctionne et qui me donne des résultats, mais qui sont, je pense, loin d'être optimaux.
    Ainsi, je me demandais comment on pouvait faire pour déterminer les coefficients et les différents paramètres de l'algorithme, tel que le taux de phéromones initial, les coefficients alpha et bêta correspondant à la visibilité et aux phéromones (ceux qui connaissent un peu cet algo savent certainement de quoi je parle), ainsi que les phéromones déposés en route, ceux évaporés, etc...

    En effet, j'ai des résultats, mais je n'ai aucune solution qui converge, c'est à dire qu'après 50 à 100 générations de fourmis, je n'ai pas un meilleur résultat que les deux premières générations.
    Ainsi, mon algo est un peu inutile, il se base du coup plus sur l'aléa que sur un taux de phéromones indiquant précisément le chemin à suivre.

    Merci pour vos éclaircissements et précisions,

    Bonne soirée.

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Toutes ces variables sont "magiques". Elles sont déterminées de façon empirique. Tu dois faire les réglages toi-même en fonction de tes observations.
    Une approche possible est de générer régulièrement une carte en niveau de gris pour visualiser la quantité de phéromones. Tu vas obtenir une vue d'ensemble régulière et tu vas pouvoir distinguer des problèmes de réglages comme la quantité de phéromones déposée lors du retour au nid si l'image est quasi blanche ou au contraire si un chemin noir apparait très vite. Tu verras aussi la vitesse d'évaporation, trop rapide si l'image est trop blanche ou trop lente si elle vire rapidement au noir...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Je te remercie pour tes conseils.
    En effet, je pense que c'est ce qu'il y a de mieux à faire.

    Toutefois, si quelqu'un a déjà créé cet algorithme et qu'il voulait partager ses données, qu'il n'hésite pas !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 243
    Points : 328
    Points
    328
    Par défaut
    Bonjour,

    Ce qui me parait étonnant, c'est que tu obtienne tes meilleurs résultats dès le début. Tu a vérifié en lançant plusieurs fois de suite les calculs ?

    Tu as essayé de comparer par rapport à du hasard 'simple' ? Ayant eu à d'implémenter le même problème (bin packing 2D) avec plusieurs méta-heuristiques, j'avais des doutes sur les résultats de l'une d'elles, j'ai implémenté ce problème sur de l'aléatoire 'simple'. En lançant le même problème (avec les mêmes données en entrée ainsi que les mêmes paramètres de 'réglage') plusieurs fois sur chaque méta puis en comparant les résultats, j'ai pu confirmer que cette implémentation était buggée : j'avais le même type de résultats qu'avec du hasard seul.

    Ensuite, bien que le paramétrage soit effectivement empirique, as-tu regardé les publications pour ce couple problème/méta-heuristique en ce qui concerne le paramétrage ? Tu devrais y trouver des informations sur les valeurs non pas optimales mais à éviter, etc...

Discussions similaires

  1. Algorithme des fourmis (ant)
    Par ymoreau dans le forum Algorithmes et structures de données
    Réponses: 14
    Dernier message: 11/01/2008, 19h17
  2. Script pour changer valeur des paramètres régionaux
    Par Foxtrot dans le forum Windows XP
    Réponses: 0
    Dernier message: 14/12/2007, 19h38
  3. Réponses: 1
    Dernier message: 28/10/2007, 21h34
  4. Réponses: 7
    Dernier message: 12/10/2006, 01h23
  5. Comment faire pour le passage des paramètres
    Par dauphin34000 dans le forum Oracle
    Réponses: 14
    Dernier message: 25/04/2006, 14h18

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