可能な野球の状況

  • こちらのつづき
  • 考えている野球のゲームはヒットの種類に制約がある
  • すると可能な状況にも制約が出てくる
  • 以下に可能な状況を表す整数(のベクトル)を発生させるプログラミング
  • 漸化式で作る
    • ヒットの種類が4種類で、5項間の漸化式
    • a,b,c,dは初期条件
    • uを漸化式から作って、xに押し込んでいく
a<-c()   #初期条件
b<-c(0)
c<-c(1)
d<-c(2,3)
N<-5   #漸化式を計算する回数
x<-c(a,b,c,d)  #初期条件からつくられる最初のxのベクトル
for (i in 1:N){
	u<-c(a,b,c,d)+2^(i+1)   #これが漸化式    2進法で頭に1をつけることに相当する
	a<-b
	b<-c
	c<-d
	d<-u
	x<-append(x,u)     #uを押し込んでいくとxが作れる
	}
x
#上を実行したあとで
plot(x)
  • xは漸化式で作られるフラクタルな点の集合
    • これが\{0\}から\{f(x),2f(x),4f(x),8f(x)\}で構成される写像群のつくる写像の集合になる
  • ちなみにVもフラクタル (ランナー数ベクトルVについては上と同じ記事参照)
x<-0:2^10
v<-c(0)
while (length(v) < max(x)+1){
	v<-c(v,v+1)
	}
plot(x,v[x+1])
  • ということでxとvを重ねてみました
#xを作る
a<-c(); b<-c(0); c<-c(1); d<-c(2,3)
N<-8   #ここを変えると数を増やせる
x<-c(a,b,c,d)
for (i in 1:N){
	u<-c(a,b,c,d)+2^(i+1)
	a<-b; b<-c; c<-d; d<-u
	x<-append(x,u)
	}
	
#vを作る	
v<-c(0)
while (length(v) < max(x)+1){
	v<-c(v,v+1)
	}
	
#プロット
plot(x,v[x+1])