Ajouter le Forum à vos Favoris
- - - -
Vous êtes ici : Forum Pen Of Chaos > Divers > Informatique - Jeux Vidéos > Section OS - Software > algorithmes génétiques
Sujet : 

Dernier Message - Message le plus récent
Ajouter aux favoris - Envoyer ce Sujet par E-Mail - Imprimer ce Sujet
ecope

Ca se remplit



-= Chaos Servants =-
Inscription le 06-07-05
Messages : 701



Homme  Age : 35 ans
Lieu de résidence : Quatrix

Pourquoi vous regardez ca ?
   algorithmes génétiques a été posté le : 15/01/09 12:06
j'aimerai comprendre comment fonctionne le système de classement au sein de la population, comment décider dans le cadre d'une recherche qu'un chromosome mérite une plus grande probabilité de reproduction qu'un autre? et puis surtout comment coder ?

pour le probleme du voyageur de commerce je suppose qu'il s'agit de coder le numéro de la ville mais ça doit faire long en codage binaire non? et surtout ça doit demander un gros espace en mémoire contenant la distance de toutes les villes entre elles. pour la notation du chromosome, comment est établit le barême qui décide de l'angle sur la roue de la fortune biaisée qui décide des couples? a partir d'une population d'une certaine taille le calcul doit devenir de plus en plus long non?


--------------------
i say fly away home to zion.


      Retour en haut de la page IP Cachée  
Jormugaund

Elite Troups



-= Chaos Elite Troops =-
Inscription le 06-07-02
Messages : 1574



Homme  Age : 42 ans
Lieu de résidence : Sur la Frontiere

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 15/01/09 16:28
Pour l'évaluation de la valeur de tes solutions, il n'y a pas de solution miracle, c'est à toi de voir en fonction de tes attentes.

Pour le codage des solutions, tu peux utiliser tout bêtement un vecteur qui contient les numéros des villes dans l'ordre dans lequel tu te proposes de les visiter.
Ça te fait une taille linéaire, c'est pas la mort.

Si je me rappelle bien, une approche qui ne fonctionne pas trop mal dans le cas du voyageur de commerce, c'est de prendre trois villes consécutives sur ton trajet et modifier leur ordre.

Ton algorithme ressemblerait à :

1/ Génération de la population initiale
2/ Sélection des spécimens les plus intéressants en utilisant la fonction d'évaluation
3/ Suppression de la partie inintéressante de la population
4/ Génération des nouvelles solutions
5/ Goto 2


Le point 1 est important, il faut que la population de base couvre une large partie des possibilités de combinaisons. Il y a des méthodes pour générer ça correctement, mais je ne me souviens plus (le carré latin je crois).

Les points 2 et 3 c'est, dans le cas du voyageur de commerce, la longueur du chemin. Mais pas forcément juste ça. Le problème si on dégage direct les solutions les moins bonnes, c'est de se retrouver avec un optimum local dont on n'est plus capable de sortir par reproduction ou mutation. Une méthode possible pour éviter cette situation est de conserver une fraction des mauvaises solutions malgré tout, ça permet de diversifier ton bassin génétique.

Le point 4 pourrait être la mutation telle que la permutation de trois villes consécutives. Ou bien on peut utiliser la reproduction "sexuée" mais dans le cas du voyageur de commerce, c'est un peu chiant puisqu'il faut vérifier si on ne se retrouve pas avec plusieurs fois la même ville dans sa solution. Ou alors il faut utiliser une méthode qui le garantit direct.
Si tu décides d'opter pour la reproduction sexuée, une solution possible pour régler le problème de l'accouplement est d'autoriser les meilleures solutions à se reproduire plusieurs fois (c'est applicable aussi à la mutation en fait)

Enfin, il faut décider quand s'arrêter, et ça aussi c'est sujet à discussion. Une bonne façon c'est de calculer la moyenne des solutions et lorsque celle-ci n'évolue plus, on peut supposer que l'algorithme a atteint l'optimum.


Un truc avec les algorithmes génétiques, c'est qu'il ne faut pas se laisser enfermer dans une vision trop biologique de la chose. Par exemple, à mon avis, considérer le codage binaire des solutions dans le cas du voyageur de commerce, ça ne sert à rien, parce que la contrainte "toutes les villes sur le chemin doivent être différentes" obligera à faire une vérification de la solution après mutation ou reproduction pour vérifier qu'elle reste valide.


Les algorithmes génétiques c'est un cadre super général au sein duquel toutes les étapes sont sujettes à discussion en fonction du problème auquel tu t'attaques.
Il n'y a pas de méthode universellement bonnes.

Pour le voyageur de commerce, c'est sur que tu trouveras une documentation très volumineuse sur le sujet, avec des dizaines d'approches différentes.



      Retour en haut de la page IP Cachée  
ecope

Ca se remplit



-= Chaos Servants =-
Inscription le 06-07-05
Messages : 701



Homme  Age : 35 ans
Lieu de résidence : Quatrix

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 15/01/09 20:29
la methode de reproduction par roue de la fortune biaisée permet aux meilleurs individus de se reproduire plusieurs fois et laisse une chance aux moins bon de se reproduire aussi non?

dans quel genre de probleme un algo génétique est vraiment approprié?


--------------------
i say fly away home to zion.


      Retour en haut de la page IP Cachée  
Jormugaund

Elite Troups



-= Chaos Elite Troops =-
Inscription le 06-07-02
Messages : 1574



Homme  Age : 42 ans
Lieu de résidence : Sur la Frontiere

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 15/01/09 21:35
Effectivement, la roue permet ce genre de comportements. Mais tu n'es pas à l'abri d'un coup qui te dégagerait tous les mauvais.

Un algo génétique c'est pratique quand tu n'as aucune idée de la forme de la solution optimale et que, par conséquent, tu n'arrives pas à trouver des heuristiques efficaces pour accélérer le traitement de ton problème.

Il y a quelques applications amusantes, la plus célèbre c'est la reproduction du déplacement de certains animaux. Mais j'ai aussi vu des algorithmes génétiques qui créent des images, des sons et où la sélection se fait en demandant à des humains quels images ou sons ils ont préféré.

Ce que personnellement je n'aime pas avec ce type d'algos, c'est que tu obtiens des résultats expérimentaux sujets à interprétation. Il n'est pas facile de dire pourquoi telles règles de sélection permettent d'obtenir de bons résultats, pourquoi telle mutation permet d'approcher rapidement la meilleure solution, etc.
Du coup, on se ramasse avec un algorithme qui est fait sur mesure pour un problème précis et on ne peut pas généraliser.

Ça a un côté bricolage un peu agaçant.

Finalement, on ne peut pas employer un algorithme génétique pour traiter un problème qui exige une solution exacte.

Petit rajout tout mignon : les algorithmes génétiques sont fort probablement sans intérêt pour traiter un problème qui peut se résoudre en temps polynomial.


Dernière mise à jour par : Jormugaund le 15/01/09 22:35

      Retour en haut de la page IP Cachée  
Faeldihn

Pal pas triste



-= Chaos Elite Troops =-
Inscription le 12-07-04
Messages : 3384



Homme  Age : 54 ans
Lieu de résidence : 20e Nuit Lutècienne

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 16/01/09 08:10
Pour éviter la concentration d'optimums localisés, tu peux aussi te baser sur un facteur similitude-parentale/viabilité qui s'inspirerait d'un réalité biologique.
C'est à dire qu'à force de ne faire survivre que les plus parfaits, tu réduis le pool génétique qui tend vers un profil génétique localement unique, donc vers une forme de "consanguinité".

Si tu te bases sur un schéma naturel réel, les chances de mutation "débile" chez des consanguins sont plus élevées. Le débile ayant moins de chances de survivre, tu réduis sa durée de vie proportionnellement à la similitude chromosomiale des parents, jusqu'à un point antérieur à sa propre fertilité, et le "problème" d'"optimum" se règle de lui même. Tu obtiens alors une sorte de "jeu de la vie" où l'optimum débilisé laisse en disparaissant un espace vide que les "non-optimums" alentours viendront conquérir à leur tour.

Edit:
Ou alors, tu permets à ton optimum débilisé de chercher à se reproduire avec un non-optimum plutôt qu'un autre optimum, ce qui "raffraichira" ton pool génétique sans générer d'espace.


Dernière mise à jour par : Faeldihn le 16/01/09 08:16

--------------------
CREO ERGO SUM

"Commencez vous à voir quelle sorte de monde nous créons? [...] Un monde d'écraseurs et d'écrasés, un monde qui, au fur et à mesure qu'il s'affinera, deviendra plus impitoyable."
1984, Georges Orwell


      Retour en haut de la page IP Cachée  
ecope

Ca se remplit



-= Chaos Servants =-
Inscription le 06-07-05
Messages : 701



Homme  Age : 35 ans
Lieu de résidence : Quatrix

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 16/01/09 18:18
donc au moment de la reproduction une analyse chromosomiale des parents augmenterai le pourcentage de chance de mutation mais a partir de quel stade cette mutation s'étendrai à plusieurs allèles? même avec un facteur de mutation assez élevé il aura toujours une bonne chance de reproduction si on opère par élitisme ou par roue.

la consanguinité me semble tout même étonnante si la population est suffisante : avec une population stable et ne diminuant pas on conserve une certaine diversité même avec un faible taux de mutation.

la réduction de la durée de vie du débile se fait logiquement si on utilise un tirage par roue des couples non? plus ses parents seront consanguins moins il aura de chance d'être selectionné. Mais là encore si on se base sur un modèle biologique le taux de mutation chez les consanguins devrait croitre d'une manière exponentielle : quel taux pourrait être acceptable?


--------------------
i say fly away home to zion.


      Retour en haut de la page IP Cachée  
Faeldihn

Pal pas triste



-= Chaos Elite Troops =-
Inscription le 12-07-04
Messages : 3384



Homme  Age : 54 ans
Lieu de résidence : 20e Nuit Lutècienne

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 19/01/09 16:09
"Acceptable" ne dépend que:
-de ce que tu souhaites obtenir (un équilibre spécifique ou pas d'équilibre)
-ou des critères qui te sont déterminés par ton sujet d'étude (si tu fais une machine représentative d'un modèle). Dans ce dernier cas, tu peux passer par une phase expérimentale ou alors te taper une bonne rasade de calculs pour trouver les facteurs/limites nécessaires.


--------------------
CREO ERGO SUM

"Commencez vous à voir quelle sorte de monde nous créons? [...] Un monde d'écraseurs et d'écrasés, un monde qui, au fur et à mesure qu'il s'affinera, deviendra plus impitoyable."
1984, Georges Orwell


      Retour en haut de la page IP Cachée  
ecope

Ca se remplit



-= Chaos Servants =-
Inscription le 06-07-05
Messages : 701



Homme  Age : 35 ans
Lieu de résidence : Quatrix

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 20/01/09 11:11
c'est quoi l'interêt de ne pas aboutir à un état d'équilibre?

--------------------
i say fly away home to zion.


      Retour en haut de la page IP Cachée  
Faeldihn

Pal pas triste



-= Chaos Elite Troops =-
Inscription le 12-07-04
Messages : 3384



Homme  Age : 54 ans
Lieu de résidence : 20e Nuit Lutècienne

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 20/01/09 11:22
Le renouvellement?

En un sens, c'est quoi l'intéret d'arriver à un point d'équilibre?

Si le but est de ne plus avoir qu'un caryotype optimal envahissant tout l'espace (qu'on peut aussi bien considérer comme un déséquilibre absolu que comme un équilibre parfait), les règles sont relativement simples.

Si le but est d'avoir un équilibre entre N caryotypes qui déploient leurs territoires et bloquent leurs frontières façon Go, c'est à peine plus compliqué.

Ou tu peux avoir un système oscillant avec une prévallence temporaire de l'un ou l'autre des caryotypes...

Si en revanche, le but est d'avoir une évolution permanente avec un renouvellement constant des populations, sans frontière définie et interactions fortes pour apparition continue de nouvelles combinaisons de caryotypes... ben ça me semble plus intéressant niveau règles à établir. Et en ce sens, le principe de dégénérescence des optimums évite de se retrouver dans le premier cas (ci-dessus).
Tu auras alors un système oscillant irrégulier/instable mais qui jamais ne devrait atteindre l'extinction totale ou la domination absolue.


Dernière mise à jour par : Faeldihn le 20/01/09 11:24

--------------------
CREO ERGO SUM

"Commencez vous à voir quelle sorte de monde nous créons? [...] Un monde d'écraseurs et d'écrasés, un monde qui, au fur et à mesure qu'il s'affinera, deviendra plus impitoyable."
1984, Georges Orwell


      Retour en haut de la page IP Cachée  
ecope

Ca se remplit



-= Chaos Servants =-
Inscription le 06-07-05
Messages : 701



Homme  Age : 35 ans
Lieu de résidence : Quatrix

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 20/01/09 13:16
ouais mais dans ce cas faut augmenter sacrément le taux de mutation non? on se retrouve plus avec un automate cellulaire qu'avec un algo censé résoudre un problème.

--------------------
i say fly away home to zion.


      Retour en haut de la page IP Cachée  
Faeldihn

Pal pas triste



-= Chaos Elite Troops =-
Inscription le 12-07-04
Messages : 3384



Homme  Age : 54 ans
Lieu de résidence : 20e Nuit Lutècienne

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 23/01/09 13:00
Si ton problème est celui du voyageur de commerce, t'as pas trente solutions qui sont toutes utilisées peu ou prou par les differents algorithmes de pathfinding, comme en utilisent les GPS, au hasard. On y trouve le pire comme le meilleur, clairement.

Maintenant appliquer ça sur un modèle génétique, pourquoi pas? Reste à définir clairement l'énoncé de ton problème pour en extraire les règles nécessaires et suffisantes pour élaborer ton algo.

Coder n'est pas le problème.


--------------------
CREO ERGO SUM

"Commencez vous à voir quelle sorte de monde nous créons? [...] Un monde d'écraseurs et d'écrasés, un monde qui, au fur et à mesure qu'il s'affinera, deviendra plus impitoyable."
1984, Georges Orwell


      Retour en haut de la page IP Cachée  
Jormugaund

Elite Troups



-= Chaos Elite Troops =-
Inscription le 06-07-02
Messages : 1574



Homme  Age : 42 ans
Lieu de résidence : Sur la Frontiere

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 23/01/09 16:29



      Retour en haut de la page IP Cachée  
damaki

Grand Pourrisseur



-= Chaos Servants =-
Inscription le 11-11-07
Messages : 400



Homme  Age : 44 ans
Lieu de résidence :

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 11/03/09 16:13
Citation :
Jormugaund dans une contemplation à Dlul a dit:




C'est impoli de linker directement l'image d'un webcomic. Donne le lien vers la page.



      Retour en haut de la page IP Cachée  
Jormugaund

Elite Troups



-= Chaos Elite Troops =-
Inscription le 06-07-02
Messages : 1574



Homme  Age : 42 ans
Lieu de résidence : Sur la Frontiere

Pourquoi vous regardez ca ?
Membre Chaos Elite Troops   Réponse au Sujet 'algorithmes génétiques' a été posté le : 11/03/09 16:42
Bah comme Munroe propose le lien pour le hotlink sous chacun de ses dessins, j'ai présumé qu'il s'en tamponne un peu en fait.


      Retour en haut de la page IP Cachée  
damaki

Grand Pourrisseur



-= Chaos Servants =-
Inscription le 11-11-07
Messages : 400



Homme  Age : 44 ans
Lieu de résidence :

Pourquoi vous regardez ca ?
   Réponse au Sujet 'algorithmes génétiques' a été posté le : 12/03/09 13:50
Bof, ça manche pas de pain. Puis c'est l'occasion de faire de la propagande pour XKCD


      Retour en haut de la page IP Cachée  
Ajouter aux favoris - Envoyer ce Sujet par E-Mail - Imprimer ce Sujet
Dernier Message - Message le plus récent
Pages: [ 1 ]

Open Bulletin Board 1.X.X © 2002 Prolix Media Group. Tous droits réservés.
Version française, modules et design par Greggus - enhancement par Frater