« Modèles d'évolution de populations » : différence entre les versions

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 2 : Ligne 2 :


===préambule===
===préambule===
Dans le cadre du cours de visi201, je vous propose un logiciel créé pour simuler des évolutions de population. Dans ce document nous verrons quels sont les techniques de modélisation et de simulation pour exprimer l'évolution de population. Nous verrons ensuite comment traduire nos résultats mathématiques en programme python et créer un environnement graphique clair
Dans le cadre du cours de visi 201, je vous propose un logiciel créé pour simuler des évolutions de population. Dans ce document nous verrons quels sont les techniques de modélisation et de simulation pour exprimer l'évolution de population. Nous verrons ensuite comment traduire nos résultats mathématiques en programme python et créer un environnement graphique clair


===rappel biologique===
===rappel biologique===
Ligne 14 : Ligne 14 :


===temps continue===
===temps continue===
Le modele simule une evolution continue d’une population. ce qui veut dire, que l’on prendra une population donnee et que l’on regardera cette population evoluer. le probleme donc de ce modele c’est qu’il peut s’averer complexe `a mettre en application car il faut prendre tous les parametres possibles pour qu’il soit effectif et peut donc demander beaucoup de ressources car il n’y a pas de limite.
Le modèle simule une évolution continue d’une population. ce qui veut dire, que l’on prendra une population donnée et que l’on regardera cette population évoluer. le problème donc de ce modèle c’est qu’il peut s'avérer complexe `a mettre en application car il faut prendre tous les paramètres possibles pour qu’il soit effectif et peut donc demander beaucoup de ressources car il n’y a pas de limite.


===les chaines de markov===
===les chaines de Markov===
le modele Markov utilise par wright fisher comme base pour les simulations sert à creer un modele mathematique qui peut predire l’etat d’une population à un temps donne sans avoir besoin de toutes les etapes precedentes. on appelle ce modele un modele à temps discontinu ou modele discret. En effet ce modele permet de simplifier les analyses puisque l’on ne s’attarde plus sur les ´etats precedents.
le modèle Markov utilise par wright Fischer comme base pour les simulations sert à créer un modèle mathématique qui peut prédire l’état d’une population à un temps donne sans avoir besoin de toutes les étapes précédentes. on appelle ce modèle un modèle à temps discontinu ou modèle discret. En effet ce modèle permet de simplifier les analyses puisque l’on ne s’attarde plus sur les états précédents.


===le modele right fisher===
===le modèle wright Fischer===
Wright Fisher applique les chaınes de Markov pour trouver un modele qui permet de creer une simulation realiste et simplifiee de modifications genetiques au fil des generations. la fonction utilisee sera donc:
Wright Fischer applique les chaînes de Markov pour trouver un modèle qui permet de créer une simulation réaliste et simplifier de modifications génétiques au fil des générations. la fonction utilisée sera donc:
entre autre:
entre autre:
dans ce modele nous prendrons un echantillon de population par exemple 20 ou 1000 individus. ensuite nous allons faire reproduire et muter ces individus. cela nous donnera une nouvelle population superieure à la population que nous avions selectionnee enfin, nous irons selectionner aleatoirement les individus pour arriver au meme nombre que nous avions choisi au depart. on recommencera cela plusieur fois et nous arriverons à une simulation simple, rapide et efficace de population. ainsi nous pourrons ajouter ou non des parametres.
dans ce modèle nous prendrons un échantillon de population par exemple 20 ou 1000 individus. ensuite nous allons faire reproduire et muter ces individus. cela nous donnera une nouvelle population supérieure à la population que nous avions sélectionnée enfin, nous irons sélectionner aléatoirement les individus pour arriver au mémé nombre que nous avions choisi au départ. on recommencera cela plusieurs fois et nous arriverons à une simulation simple, rapide et efficace de population. ainsi nous pourrons ajouter ou non des parametres.


==application du modèle==
==application du modèle==


===introduction===
===introduction===
j’ai decide de partir dans un modele où chaque groupe represente une partie de la population, donc chaque groupe represente une version possible pour l’individu. j’ai donc cree mon code en fonction
j’ai décidé de partir dans un modèle où chaque groupe représente une partie de la population, donc chaque groupe représente une version possible pour l’individu. j’ai donc crée mon code en fonction




===code descriptif===
===code descriptif===
1. simulation
1. simulation
(a) cree une simulation: cette fonction sert a commencer le programme, une foix que l’on lance ce programme on nous demande d’insere les variables pour commencer la simulation
(a) crée une simulation: cette fonction sert a commencer le programme, une fois que l’on lance ce programme on nous demande d'insérer les variables pour commencer la simulation
2. code centrale
2. code centrale
(a) naissance: cette fonction prend chaque individu et fait un test pour savoir si il cree un ou plusieur d´ecendent (b) mutation: cette fonction prend chaque decendent et fait des test de mutation (c) echantillonnage: cette fonction prend aleatoirement un nombre egale d’individu qu’au depart
(a) naissance: cette fonction prend chaque individu et fait un test pour savoir si il crée un ou plusieurs descendent (b) mutation: cette fonction prend chaque descendent et fait des test de mutation (c) échantillonnage: cette fonction prend aléatoirement un nombre égale d’individu qu’au départ
3. creation graphique
3. création graphique
3
3
(a) cree graph: cree un graph avec les resultat obtenues
(a) crée graph: crée un graphique avec les résultats obtenues




==conclusion==
==conclusion==
ainsi, dans cette presentation nous avons etudie les mathematiques derriere le modele wright fisher et abord´e la phase de programmation de la simulation, afin de mieux comprendre le fonctionnement mathematique et algorithmique du logiciel.
ainsi, dans cette présentation nous avons étudié les mathématiques derrière le modèle wright Fischer et abord´e la phase de programmation de la simulation, afin de mieux comprendre le fonctionnement mathématique et algorithmique du logiciel.

Version du 17 mai 2020 à 11:16

introduction

préambule

Dans le cadre du cours de visi 201, je vous propose un logiciel créé pour simuler des évolutions de population. Dans ce document nous verrons quels sont les techniques de modélisation et de simulation pour exprimer l'évolution de population. Nous verrons ensuite comment traduire nos résultats mathématiques en programme python et créer un environnement graphique clair

rappel biologique

En biologie, il existe plusieurs effets connus qui influencent les populations ou qui les font évoluer. Les plus connus sont: la sélection naturelle, soit Evolution de population due `a des causes extérieures; elle explique le succès différentiel d’individus d’une même espèce et de leurs gènes. Elle est le moteur dans l'évolution.[4] la dérive génétique qui reste décisive dans l'évolution mais contrairement à l'évolution elle est due au hasard[2] il existe beaucoup d’autres exemples plus mineurs, comme la sélection sexuelle, l'éloignement géographique...[5]

les mathématiques

introduction

pour crée un logiciel de simulation il fallait d'abord concevoir l’algorithme mathématiquement.

pour cela nous allons nous intéresser a 2 moyens de concevoir le problème.

temps continue

Le modèle simule une évolution continue d’une population. ce qui veut dire, que l’on prendra une population donnée et que l’on regardera cette population évoluer. le problème donc de ce modèle c’est qu’il peut s'avérer complexe `a mettre en application car il faut prendre tous les paramètres possibles pour qu’il soit effectif et peut donc demander beaucoup de ressources car il n’y a pas de limite.

les chaines de Markov

le modèle Markov utilise par wright Fischer comme base pour les simulations sert à créer un modèle mathématique qui peut prédire l’état d’une population à un temps donne sans avoir besoin de toutes les étapes précédentes. on appelle ce modèle un modèle à temps discontinu ou modèle discret. En effet ce modèle permet de simplifier les analyses puisque l’on ne s’attarde plus sur les états précédents.

le modèle wright Fischer

Wright Fischer applique les chaînes de Markov pour trouver un modèle qui permet de créer une simulation réaliste et simplifier de modifications génétiques au fil des générations. la fonction utilisée sera donc:

entre autre:

dans ce modèle nous prendrons un échantillon de population par exemple 20 ou 1000 individus. ensuite nous allons faire reproduire et muter ces individus. cela nous donnera une nouvelle population supérieure à la population que nous avions sélectionnée  enfin, nous irons sélectionner aléatoirement les individus pour arriver au mémé nombre que nous avions choisi au départ. on recommencera cela plusieurs fois et nous arriverons à une simulation simple, rapide et efficace de population. ainsi nous pourrons ajouter ou non des parametres.

application du modèle

introduction

j’ai décidé de partir dans un modèle où chaque groupe représente une partie de la population, donc chaque groupe représente une version possible pour l’individu. j’ai donc crée mon code en fonction


code descriptif

1. simulation (a) crée une simulation: cette fonction sert a commencer le programme, une fois que l’on lance ce programme on nous demande d'insérer les variables pour commencer la simulation 2. code centrale (a) naissance: cette fonction prend chaque individu et fait un test pour savoir si il crée un ou plusieurs descendent (b) mutation: cette fonction prend chaque descendent et fait des test de mutation (c) échantillonnage: cette fonction prend aléatoirement un nombre égale d’individu qu’au départ 3. création graphique 3 (a) crée graph: crée un graphique avec les résultats obtenues


conclusion

ainsi, dans cette présentation nous avons étudié les mathématiques derrière le modèle wright Fischer et abord´e la phase de programmation de la simulation, afin de mieux comprendre le fonctionnement mathématique et algorithmique du logiciel.