組換えの繰り返し
- 組換えは必ず2つの親アレルから間の子のアレルが生まれる
- こちらのbetweenness
- ハプロタイプどうしのキョリをどう考えるかということはまた別の話として、この"間の子"を軸に考える
- ある着目するアレルをもつハプロタイプが集団の中で組み替えをおこし、この着目しているアレルをもつようなハプロタイプはどのようなものが存在するようになるのかということ
- 以下を繰り返す
- この最後の"子ハプロタイプを親となるハプロタイプ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))