組換えの繰り返し

KABIRA2011-06-30

  • この最後の"子ハプロタイプを親となるハプロタイプ2つの間に配置する"ときの位置を中点におくことにすると(以下のソースではr=1/2に相当)こちらのカオスゲームと同じになる
  • ただしrを乱数で与えるとフラクタルにはみえなくなる

N<-3
T<-10000
X<-matrix(runif(2*N),nrow=2)
plot(t(X),xlim=c(0,1),ylim=c(0,1))
x0<-matrix(runif(2),nrow=2)
X<-cbind(X,x0)
x1<-x0
for(t in 1:T){
n<-sample(1:N,1)
r<-1/2
#r<-runif(1)
x2<-X[,n]*r+x1*(1-r)
X<-cbind(X,x2)
x1<-x2

}
plot(t(X),xlim=c(0,1),ylim=c(0,1))

#Xの情報を集計してAに入れておく
M<-400
A<-matrix(0,nrow=M,ncol=M)
for(l in 1:ncol(X)){
i<-floor(X[1,l]*M)
j<-floor(X[2,l]*M)
A[i,j]<-A[i,j]+1
}
#image(A>0,col=topo.colors(1000))
image(A,col=topo.colors(1000))
#library(rgl)
#plot3d(col(A),row(A),A,alpha=ifelse(A==0,0,1))