Init = function(taille, mm0, bb0){
P0 = rep(0, taille);
for (i in (mm0+1):(taille-bb0)){
P0[i] = 1;
}
for (i in (taille-bb0+1):taille){
P0[i] = 2;
}
P0
}
melange = function(P, taille){
newP = sample(c(1:taille))
for (i in 1:taille){
newP[i] = P[newP[i]]
}
newP
}
simulation = function(mm0, bb0, Nb_generation, N){
for (j in 1:10){
P0 = Init (N, mm0, bb0);
P = P0
bb = rep(0, Nb_generation);
mm = rep(0, Nb_generation);
for (i in 1:Nb_generation){
Pere = P;
Mere = melange(P, N)
P= ifelse(Pere == 0, 0, ifelse(Pere == 1, sample(x=c(0,1), size = N, replace=T), 1))
M = ifelse(Mere == 0, 0, ifelse(Mere == 1, sample(x=c(0,1), size = N, replace=T), 1))
Enfant = M+P
P = Enfant
bbi = ifelse(P == 2, 1, 0)
mmi = ifelse(P == 0, 1, 0)
BBi = sum(bbi)
MMi = sum(mmi)
bb[i] = BBi
mm[i] = MMi
}
x <- seq(0, Nb_generation, length = Nb_generation)
plot(x, mm, type = "l", ylim = range(c(mm, bb)), xlab = "", ylab = "")
lines(x, mm, col = "blue")
lines(x, bb, col = "red")
}
}
simulation2 = function(mm0, bb0, Nb_generation, N){
for (j in 1:10){
P0 = Init (N, mm0, bb0);
P = P0
bb = rep(0, Nb_generation);
mm = rep(0, Nb_generation);
for (i in 1:Nb_generation){
Pere = P;
Mere = melange(P, N)
P= ifelse(Pere == 0, 0, ifelse(Pere == 1, sample(x=c(0,1), size = N, replace=T), 1))
M = ifelse(Mere == 0, 0, ifelse(Mere == 1, sample(x=c(0,1), size = N, replace=T), 1))
Enfant = M+P
Enfant[1] = 2
Enfant[2] = 0
P = Enfant
bbi = ifelse(P == 2, 1, 0)
mmi = ifelse(P == 0, 1, 0)
BBi = sum(bbi)
MMi = sum(mmi)
bb[i] = BBi
mm[i] = MMi
}
x <- seq(0, Nb_generation, length = Nb_generation)
plot(x, mm, type = 'l', ylim = range(c(mm, bb)), xlab = "", ylab = "")
lines(x, mm, col = "blue")
lines(x, bb, col = "red")
}
}
set.seed(5);
BB0 = 4;
MM0 = 12;
n = 20;
NB_generation = 20;
simulation(MM0, BB0, NB_generation, n)
set.seed(5);
BB0 = 12;
MM0 = 4;
n = 20;
NB_generation = 20;
simulation(MM0, BB0, NB_generation, n)
set.seed(5);
BB0 = 5;
MM0 = 5;
n = 20;
NB_generation = 20;
simulation(MM0, BB0, NB_generation, n)
Pour les 3 simulation précédente on s’aperçois que quand un gêne est en défaut il a tendance disparaitre c’est à dire que dans la majorité des cas il va disparaitre et l’aléa fait que dans quelque cas il subsiste. Maintenant ceci est le cas uniquement parceque l’on regarde sur 20 génération, en réalité si on regarde sur 200 Génération dans la grande majorité des cas, le gêne en defaut disparait. Lorque a la base on met un nombre équilibrer de gêne, on obtient le meme résultat mais aléatoirement pour B ou M, cela vient de la très faible taille de population.
set.seed(5)
BB0 = 400;
MM0 = 1200;
n = 2000;
NB_generation = 100;
simulation(MM0, BB0, NB_generation, n)
set.seed(5)
BB0 = 1200;
MM0 = 400;
n = 2000;
NB_generation = 100;
simulation(MM0, BB0, NB_generation, n)
set.seed(5)
BB0 = 500;
MM0 = 500;
n = 2000;
NB_generation = 100;
simulation(MM0, BB0, NB_generation, n)
Dans cette deuxième question on on une popultion relativement meme important et par conséquent nous n’observont plus du tout ce phénomène d’extinction comme sur la simulation précédente on a des échantillon de population beaucoup plus stable c’est a dire que lorsque l’on a une population initial avec une certaint proportion de B et une certaine proportion de M ces proportion ne vont pas varier énormément d’une génération à l’autre.
set.seed(5);
BB0 = 12;
MM0 = 4;
n = 20;
NB_generation = 500;
simulation2(MM0, BB0, NB_generation, n)
set.seed(5);
BB0 = 5;
MM0 = 5;
n = 20;
NB_generation = 500;
simulation2(MM0, BB0, NB_generation, n)
set.seed(5);
BB0 = 4;
MM0 = 12;
n = 20;
NB_generation = 500;
simulation2(MM0, BB0, NB_generation, n)
Par soucis de visibilité Imax = 500 pour mes graphs. Contrairement a la question 1, on obtient grâce a cette modification un systeme sans extinction et ça regle un gros problème par rapport au premier modèles qui, avec une si petite population, ne permettait pas d’avoir de résultats exploitable. On peut facilement dire que ce modèle est plus stable que celui de la question 1 car on voit bien que les 10 échantillons donne a peu de chose près la même information : il n’y a pas de zone attractive, les proportions oscillent et la population de départ n’a que très peu d’intêret.