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 :

Implémentation d'une méthode utilisant les algorithmes génétiques


Sujet :

Intelligence artificielle

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Implémentation d'une méthode utilisant les algorithmes génétiques
    Bonjour,
    je suis devant un problème qui consiste a le résoudre par les algo. génétiques.
    Je ne connais rien des AG, le problème est lié au calcul du point astronomique en mer par une série de mesures, les AG cherchent la meilleur
    solution en traitant x mesures.
    La méthode est expliquée en anglais.
    Si quelqu'un est disposé a se pencher sur le problème, je lui enverrai volontiers la doc.
    Merci.

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 861
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 861
    Points : 219 058
    Points
    219 058
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Avec les algorithmes génétiques, le premier soucis est de calculer le score d'une solution donnée. Par exemple, dans votre cas, le score sera plus haut, lorsque la solution est en adéquation avec toutes les mesures. On peut prendre, par exemple, le point qui a la distance la plus courte avec les mesures (c'est un exemple).
    Ensuite, on va générer aléatoire des solutions, que l'on va garder suivant le score, faire muter, les croiser afin de générer d'autre solution, que l'on va aussi évaluer (quantifier le score) et continuer ainsi de suite pour atteindre une meilleure solution.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Implémentation d'une méthode utilisant les algorithmes génétiques
    Voilà, je joins donc la publication en anglais, qui explique la méthode.
    Images attachées Images attachées

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 861
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 861
    Points : 219 058
    Points
    219 058
    Billets dans le blog
    120
    Par défaut
    Pouvez-vous être plus précis, sur ce que vous ne comprenez pas ?
    Il y a plein de ressources autour des GA même en français.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 22
    Points : 11
    Points
    11
    Par défaut Algorithmes génétiques
    Citation Envoyé par LittleWhite Voir le message
    Pouvez-vous être plus précis, sur ce que vous ne comprenez pas ?
    Il y a plein de ressources autour des GA même en français.
    le problème, je ne sais pas par où commencer.
    Ce que je sais:
    calculer Hoi,Hci, n pour avoir le RMSE, ainsi que L et Lambda.

    ce que je ne sais pas:
    Comment établir les populations, les mutations...
    Noise et RandomNum c'est quoi ?

  6. #6
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 861
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 861
    Points : 219 058
    Points
    219 058
    Billets dans le blog
    120
    Par défaut
    Tout ce que vous ne savez pas, c'est à propos de l'algorithme génétique.

    Un algorithme génétique, reproduit la façon dont les chromosome s'échangent et sont modifiés, génération après génération.
    En informatique, un chromosome, c'est une "solution". Par exemple, dans l'exemple on va dire, que nous allons résoudre le problème d'obtenir 100, avec deux additions (trois chiffres). Donc, une solution peut être :
    S1 = 10 5 3
    Une autre :
    S2 = 22 9 2

    On remarque que si on additionne (on teste) S1, on obtient 10+5+3 = 18, pour S2 = 22+9+2 = 33. Ok, 33 étant plus proche de 100, S2 est meilleure que S1.
    On va faire une nouvelle génération. Une génération, c'est un ensemble de chromosomes (soit, de solutions). S1 et S2, c'était ma génération 1 (G1). On va maintenant produire G2.
    Pour ce genre, on utilise les solutions précédentes, sur lesquelles on fait des croisements. Ici, je produit (avec les croisements) les solutions suivantes :
    S3 = 22 5 3
    S4 = 10 9 2

    Si vous observez bien, j'ai fait des permutations.
    On peut rajouter du bruit (j'ai oublié un terme technique )
    Par exemple, on a 5 % de mutation d'une solution. Ici :
    S3 = 22 5 44
    (La mutation a écrasé le 3, pour placer un nombre au hasard)

    Vraiment, comme dans la nature.
    On test une nouvelle fois
    S3 => 71 / S4 = 21
    Ici, S3 s'approche de notre but. Cela pourrait être une solution intéressante. Mais en réalité, on ne s'arrête pas là. On va faire une génération 3, puis 4, puis 5. Et en réalité, chaque générations ne contient pas que deux solutions, mais des dizaines ou centaine.

    Au bout d'un moment, on va avoir des solutions "assez bonne", peut être pas parfaite, mais on ne va pas trouver mieux non plus. Alors, il sera temps d'arrêter l'algorithme (après 50 itérations, c'est pas mal).

    Comme je l'avais dit, y a pas mal de ressource dessus :

    http://khayyam.developpez.com/articles/algo/genetic/
    http://fr.wikipedia.org/wiki/Algorit...A9n%C3%A9tique
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  7. #7
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 133
    Points : 208
    Points
    208
    Par défaut
    Salut LittleWhite,

    Je me permet d'apporter une petite pierre à l'explication que tu porte ici.

    Une solution serait plutôt un génome et chaque chiffre à additionner un chromosome. Un génome est donc composé de chromosomes.
    Le terme que tu cherchais pour le bruit c'est taux de mutation, il se détermine sur chaque chromosome.
    D'autres notions intéressantes à aborder sont le roulette wheel et le crossover rate (taux de mélange ?).

    Un autre cours sur la question que j'ai trouvé pas mal fait : http://www.ai-junkie.com/ga/intro/gat1.html

    @+

  8. #8
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2009
    Messages : 9
    Points : 17
    Points
    17
    Par défaut
    Il y a actuellement un Mooc en français qui présente comment aborder des approches de ce type, https://www.france-universite-numeri...e_3_2014/about et la possibilité d'utiliser une plateforme avec une API qui simplifie la partie de gestion des algorithmes génétiques pour se concentrer sur la problématique à traiter. C'est orienté parallélisation, mais les informations générales sur les AG peuvent éventuellement être utiles.

Discussions similaires

  1. Apprentissage en utilisant les algorithmes génétiques
    Par shadow07 dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 23/05/2011, 07h56
  2. Optimisation en utilisant les algorithmes génétiques
    Par nourette dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 30/03/2010, 12h18
  3. Problème avec une caméra utilisant les quaternions
    Par Bakura dans le forum Développement 2D, 3D et Jeux
    Réponses: 17
    Dernier message: 15/12/2007, 19h26
  4. Une méthode pour les sauts de page
    Par solorac dans le forum Excel
    Réponses: 3
    Dernier message: 08/08/2007, 12h07
  5. Les algorithmes génétiques
    Par fred9510 dans le forum Intelligence artificielle
    Réponses: 3
    Dernier message: 27/01/2005, 10h27

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