set.seed(42);
f=function (P=20,Imax=20,N=10,BB0=0,MM0=0){
BB=c(BB0);
MM=c(MM0);
Pop=c( rep(2,BB0),rep(1,P-BB0-MM0),rep(0,MM0));
#print(Pop);
Popi=Pop;
Enfant=c();
BB=c();
MM=c();
BBN=c();
MMN=c();
#for (j in 1:N){
for (i in (1:Imax)){
Pere= sample(Popi,size=P,replace =T);
Mere= sample(Popi,size=P,replace =T);
Enfant<-ifelse(((Pere==0)&(Mere==0)),0,
ifelse(((Pere==2)&(Mere==2)),2,
ifelse( ( (Pere==0)&(Mere==2)|(Pere==2)&(Mere==0)),1,
ifelse( (((Pere==0)&(Mere==1))|(Pere==1)&(Mere==0)),sample(size=1,x=c(0,1),replace=T),
ifelse((((Pere==1)&(Mere==2))|((Pere==2)&(Mere==1))),sample(size=1,x=c(1,2),replace=T),
sample(x=c(0,1,2),size=1,replace=T,prob=c(0.25,0.5,0.)))))));
Popi=Enfant;
#print("POPI ENFANT =");
#print(Popi);
BB[i]=sum(Popi==2);
MM[i]=sum(Popi==0);
#print("yeux bleux BB :")
#print (BB[i]/P);
#print (BB[i]);
#print("yeux marron MM :")
#print (MM[i]/P);
#print (MM[i]);
#print("yeux marron MB :")
#print(sum(Popi==1)/P);
#print(sum(Popi==1));
}
plot(BB/P,type = 'l', main = "evolution des yeux bleus",xlab ="generation i" );
plot(MM/P,type = 'l',main = "evolution des yeux Marron",xlab ="generation i");
#BBN[j]=BB;
#MMN[j]=MM;
# }
#print(BBN);
#print (MMN);
}
g=function (P=20,Imax=2000,N=10,BB0=1,MM0=1){
BB=c(BB0);
MM=c(MM0);
Pop=c( rep(2,BB0),rep(1,P-BB0-MM0),rep(0,MM0));
#print(Pop);
Popi=Pop;
Enfant=c();
BB=c();
MM=c();
BBN=c();
MMN=c();
#for (j in 1:N){
for (i in (1:Imax)){
Pere= sample(Popi,size=P-2,replace =T);
Mere= sample(Popi,size=P-2,replace =T);
Enfant<-ifelse(((Pere==0)&(Mere==0)),0,
ifelse(((Pere==2)&(Mere==2)),2,
ifelse( ( (Pere==0)&(Mere==2)|(Pere==2)&(Mere==0)),1,
ifelse( (((Pere==0)&(Mere==1))|(Pere==1)&(Mere==0)),sample(size=1,x=c(0,1),replace=T),
ifelse((((Pere==1)&(Mere==2))|((Pere==2)&(Mere==1))),sample(size=1,x=c(1,2),replace=T),
sample(x=c(0,1,2),size=1,replace=T,prob=c(0.25,0.5,0.)))))));#(0.25,0.5,0.25)
Enfant=c(Enfant,0,2);
Popi=Enfant;
#print("POPI ENFANT =");
#print(Popi);
BB[i]=sum(Popi==2);
MM[i]=sum(Popi==0);
#print("yeux bleux BB :")
#print (BB[i]/P);
#print (BB[i]);
#print("yeux marron MM :")
#print (MM[i]/P);
#print (MM[i]);
# print("yeux marron MB :")
#print(sum(Popi==1)/P);
#print(sum(Popi==1));
}
plot(BB/P,type = 'l', main = "evolution des yeux bleus",xlab ="generation i" );
plot(MM/P,type = 'l',main = "evolution des yeux Marron",xlab ="generation i");
#BBN[j]=BB;
#MMN[j]=MM;
# }
#print(BBN);
#print (MMN);
}
#1/2
f(P=20,BB0=4,MM0=12 ,Imax=20);
#conclusion les yeux bleu tendent a disparaitre et les yeux marron MM se rapproche de 100 pour cent
f(P=20,BB0=12,MM0=4 ,Imax=20);
#conclusion les yeux bleu "gagne" rarement mais dans le cas general la suprematie des yeux marron demeure
f(P=20,BB0=5,MM0=5,Imax = 20);
#idem
#GRande Population
f(P=2000,BB0=400,MM0=1200 ,Imax=100);
#conclusion les yeux bleu tendent a disparaitre et les yeux marron MM se rapproche de 100 pour cent
f(P=2000,BB0=1200,MM0=400 ,Imax=100);
# le cas general la suprematie des yeux marron demeure
f(P=2000,BB0=500,MM0=500,Imax = 100);
#idem
#Conclusion general selon ce modele les yeux bleu sont de plus en plus rare peu importe la taille de la population
#3
g();
g(MM0=10,BB0=3);