2014年10月28日火曜日

n世代後の子孫に自分の名字が残っていない確率

<問題>

Aという男がいる。そのAは女の人と結婚して、子供が2人できる。

その子供たちはそれぞれ問題なく成長し、異性と結婚して
子供が2人ずつできる。さらにその子供たちもそれぞれ子供が2人ずつできて・・・
というのを何世代にもわたって繰り返す。(n世代後のAの子孫は2n人となる。)

このとき、Aの10世代後の子孫210人全員がAの名字を受け継いでない確率は
どのくらいか?電卓を使って、小数点第二位まで答えよ。

ただし、
・必ず子供の名字は男親の名字を受け継ぐものとする。
・生まれてくる子供が女である確率は0.5、男である確率は0.5であるものとする。
・結婚相手は必ずAの名字と違う名字の人とする。

*問題を解く上の注意
・Aの子供を1世代後の子孫、Aの孫を2世代後の子孫、Aのひ孫を3世代後の子孫・・
というようにAのn世代後の子孫を定義している。
・正確に確率を求めようとすると、21022の計算が必要になるので、だいたいの
確率が求まればいい。


---------------------
解説は下にスクロールしたところにある
スポンサードリンク
-----------------------

<解説>
2chでこの問題を出したら、自分の解き方より簡単な解き方で解を出してくれたので、
そちらを紹介する。

Aのn世代後の子孫2n人の中にAの名字を受け継いだ男が一人もいない確率を
fnとする(n≧1)。
1世代後の子孫の確率は男男が1/4、男女1/2、女女1/4である。

1世代後の子孫の一人の男からAのn+1世代後の子孫の男にAの名字を受け継いだ男が一人もいない確率はfnである。

1世代後の子孫が男男の場合、Aのn+1世代後の子孫の男にAの名字を受け継いだ男が一人もいない確率はfn×fnとなる。

1世代後の子孫が男女の場合、Aのn+1世代後の子孫の男にAの名字を受け継いだ男が一人もいない確率はfnとなる。

ゆえにAのn+1世代後の子孫の男にAの名字を受け継いでいない確率fn+1は、
fn+1=1/4×fn×fn+1/2×fn+1/4×0となる。

あとは、f1=0.25を上式に代入して
f2,f3と求めて行ってf9=0.72を出せばいい。

f9は9世代後の子孫にAの名字を受け継いだ男が一人もいない確率で、
これは10世代後の子孫全員がAの名字を受け継いでない確率と等しい。

Aの10世代後の子孫210人全員がAの名字を受け継いでない
確率は0.72である。

こんな簡単な解き方があるのに自分は難しい解き方をしてしまったのは悲しい。

<別解説(自分の解き方)>
Aのn世代後の子孫2n人全員がAの名字を受け継いでない確率をpnとする(n≧2)。

Aのn世代後の子孫2n人の中にAの名字を受け継いだ男が一人もいない確率を
fnとする(n≧1)。

この時、pn=fn-1が成立する。
(なぜなら、Aの名字を受け継いだ男が一人もいないと次の世代にAの名字が
受け継がれないからである。)

ということで、今回p10の値を求めようとしているが、実際には、f9の値を求めればいい。
(Aの9世代後の子孫29人の中にAの名字を受け継いだ男が一人もいない確率を
求めればいい。)

まず、実験的に
Aの1世代後の子孫2人の中に
Aの名字を受け継いだ男がm人いる確率を求めてみる。

Aの子供は必ずAの名字を持つので、今回はAの名字であるかは気にする必要がなく、
Aの子供に男が何人いるかだけを気にすればいい。

Aの子供に男2人がいる確率は、0.5*0.5=0.25
Aの子供が男1人である確率は、0.5*0.5+0.5*0.5=0.5
(Aの1人目の子供が男、Aの2人目の子供が女である確率と
Aの1人目の子供が女、Aの2人目の子供が男である確率を足し合わせた)

Aの子供が男0人である確率は、0.5*0.5=0.25
ここまでは特に問題なしだ。

そして、これをちょっと変わった方法で表してみる。

(0.5+0.5x)(0.5+0.5x)=0.25x0+0.5x1+0.25x2(x0は1である。)

xmの係数を見ると、Aの名字を受け継いだ男がAの1世代目の子孫にm人いる確率と
なっていることがわかるであろう。なぜこうなるかは、下の式を見てみよう。












xmの係数が、Aの名字を受け継いだ男がAの1世代目の子孫にm人いる確率となることが
なんとなくわかったであろう。

次に、Aの2世代後の子孫4人の中に
Aの名字を受け継いだ男m人いる確率を求めてみる。

Aの子供のうち男が0人の場合、Aの孫にAの名字を受け継ぐ人はいない。
Aの子供のうち男が1人の場合、Aの息子の子供2人にAの名字が受け継がれる。
Aの子供のうち男が2人の場合、Aの孫4人にAの名字が受け継がれる。

これらを考慮して、まず、
Aの子供のうち男が0人かつAの名字を受け継ぐ男孫がm人である確率を求める。

0.25*(0.5+0.5x)0=0.25x0-①
xmの係数が、Aの子供のうち男が0人かつAの名字を受け継いだ男が
Aの2世代目の子孫にm人いる確率となる。

そして、Aの子供のうち男が1人かつAの名字を受け継ぐ男孫がm人である確率を求める。

0.5*(0.5+0.5x)2=0.125x0+0.25x1+0.125x2-②
xmの係数が、Aの子供のうち男が1人かつAの名字を受け継いだ男が
Aの2世代目の子孫にm人いる確率となる。

最後に、Aの子供のうち男が2人かつAの名字を受け継ぐ男孫がm人である確率を求める。

0.25*(0.5+0.5x)4=1/64x0+4/64x1+6/64x2+4/64x3+1/64x4-②
xmの係数が、Aの子供のうち男が2人かつAの名字を受け継いだ男が
Aの2世代目の子孫にm人いる確率となる。(なぜこう求められるかは、
下図を参考に理解を求む。僕は正直言ってうまく説明できない。)

①、②、③を足し合わせると、

0.25*(0.5+0.5x)0+0.5*(0.5+0.5x)2+0.25*(0.5+0.5x)4=25/64x0+20/64x1+14/64x2+4/64x3+1/64x4

となって、xmの係数が、Aの名字を受け継いだ男が
Aの2世代目の子孫にm人いる確率となる。

たしか、Aの1世代目の子孫にAの名字を受け継いだ男がm人いる確率を求める式は、
(0.5+0.5x)(0.5+0.5x)=0.25x0+0.5x1+0.25x2-④
だった。

Aの2世代目の子孫にAの名字を受け継いだ男がm人いる確率を求める式は、
0.25*(0.5+0.5x)0+0.5*(0.5+0.5x)2+0.25*(0.5+0.5x)4=25/64x0+20/64x1+14/64x2+4/64x3+1/64x4-⑤

④のxに(0.5+0.5x)2を代入したら⑤の式になるじゃん。
もしかして、Aの3世代目の子孫にAの名字を受け継いだ男がm人いる確率を求める式は、
⑤のxに(0.5+0.5x)2を代入した式じゃないのか?

実はそのとおりである。

Aのn世代目の子孫にAの名字を受け継いだ男がm人いるとする。
Aのn+1世代目の子孫にAの名字を受け継いだ人は2m人である。
そのうち男がs人である確率は、
(0.5+0.5x)2mを展開したときのxsの係数である。
(説明が難しい。)

ゆえに、Aのn世代目の子孫にAの名字を受け継いだ男がm人いる確率を求める式のxに、
(0.5+0.5x)2を代入すると、Aのn+1世代目の子孫にAの名字を受け継いだ男が
m人いる確率を求める式になるのである。

これをすっきりとした書き方で書いてみる。
Aのn世代目の子孫にAの名字を受け継いだ男がm人いる確率を求める式を
fn(x)とすると、fn+1(x)=fn((0.5+0.5x)2)である。


Aのn世代後の子孫2n人の中にAの名字を受け継いだ男が一人もいない確率は、
fn(x)の式のx0の係数である。これは、x=0を代入したfn(0)である。

f1(x)=(0.5+0.5x)2であったので、f2(x)=(0.5+0.5(0.5+0.5x)2)2=(0.5+0.5f1(x))2
f3(x)=(0.5+0.5(0.5+0.5(0.5+0.5x)2)2)2=(0.5+0.5f2(x))2
・・・・となって、fn+1(x)=(0.5+0.5fn(x))2
とも書ける。(ページの下の方にある補足問題で解説してあります)
これにx=0を代入すると、fn+1(0)=(0.5+0.5fn(0))2-⑥

f1(0)=(0.5+0.5*0)2=0.25であり、⑥の式にf1(0)を代入して、f2(0)を求めて、
さらに、⑥の式にf2(0)を代入して、f3(0)を求めてを繰り返していって、
f9(0)を求めると、Aの9世代後の子孫29人の中にAの名字を受け継いだ男が
一人もいない確率が求まる。
これは、ずっと前に示したが、Aの10世代後の子孫210人全員が
Aの名字を受け継いでない確率でもある。

電卓を使ってf9(0)を小数で求める。

f1(0)=0.25
f2(0)=0.39
f3(0)=0.48
f4(0)=0.55
f5(0)=0.60
f6(0)=0.64
f7(0)=0.67
f8(0)=0.70
f9(0)=0.72

ということで、Aの10世代後の子孫210人全員がAの名字を受け継いでない
確率は0.72である。 

この計算は、男から男には受け継がれるが男から女には受け継がれない遺伝子にも
使えそうである。(y染色体上にある遺伝子)

----------------
さて、実際には、どんな人も子供2人ができるとは限らない。
子供が1人もいない人もいるだろうし、子供が10人できる人もいるだろう。

ということで問題を発展させてみよう。

一人の親からn人の子供ができる確率をqnとする。(q0+q1+q2+q3+q4+・・・=1)
このとき、Aの10世代後の子孫全員がAの名字を受け継いでない確率は
どのくらいか?電卓を使って、小数点第二位まで答えよ。

この問題も先ほどと同様に答えればいい。

このときは、
f1(x)=Σqs(0.5+0.5x)s
fn+1(x)=fn(Σqs(0.5+0.5x)s)
fn+1(x)=Σqs(0.5+0.5fn(x))s
fn+1(0)=Σqs(0.5+0.5fn(0))s

を考えれば解ける

補足
fn+1(x)=fn(Σqs(0.5+0.5x)s)→fn+1(x)=Σqs(0.5+0.5fn(x))s
がよくわからない人用にちょっとした問題を解いてみよう

<補足問題>
f1(x)=f(x)で、nが自然数のときfn+1(x)=fn(f(x))が必ず成り立つ場合、
fn+1(x)=f(fn(x))であることを証明せよ

fn+1(x)=fn(f(x))なので、
f1(x)=f(x)
f2(x)=f(f(x))
f3(x)=f(f(f(x)))[右辺にfという文字は3個出てくる]
・・・・・・・・・
fn+1(x)=f(f(f(f(・・・・・(f(x))・・・・・)))) [右辺にfという文字はn+1個出てくる]

fn(x)=f(f(f(f(・・・・(f(x))・・・・))))[右辺にfという文字はn個出てくる]なので、
f(fn(x))=f(f(f(f(・・・・・(f(x))・・・・・)))) [右辺にfという文字はn+1個出てくる]となる。

ゆえに、fn+1(x)=f(fn(x))



目次に戻る     
  

0 件のコメント:

コメントを投稿