ミトコンドリア・シミュレータ その5

by たけ(tk)

たけ(tk)のホームページへ

  もしも、遺伝的優位性があったとしたら・・。

http://homepage2.nifty.com/joumon-hakodate-ky/nanbeihe.htm
  ↓2003-11-28(金)
http://www.geocities.jp/hakodatereports/nanbeihe.htm

に、もしも「イブの子孫は長命」という遺伝的優位性があったとしたら「イ
ブの子孫の女性が何人か、他氏族集団に入り込み子孫を残せば、いずれその
集団はイブの子孫ばかりにならざるを得なかった」だろうという推測が書か
れていました。

  寿命が長かったかどうかは別としても、もし、イブの家系に何らかの遺伝
的優位性があったとすると、その優位性がわずかなものであったとしても、
また、非イブの集団にイブ系の母親が混血した割合がわずかであったとして
も、その集団としては非イブ系の集団でありつづけたにもかかわらず、遺伝
的には数百世代のうちにはイブの家系の遺伝子だけになってしまう。という
シミュレーションです。

  遺伝的優位性が2%で、当初の混血率が1%(その後の混血は一切無い)
として、計算すると、

250世代でイブ系の割合が優位(50%以上)になる。
500世代でイブ系の割合が99%以上になり。
750世代ではほぼ純化されてしまう。(99.99% 以上)

となります。

  今のところ、イブの識別に使われているミトコンドリアのDNAの部分に
は遺伝的優位性はないとされています。しかし、数%の遺伝的優位性という
のは統計的に検出するというのは困難です。ただ単に「標準誤差の範囲内な
ので検出されたと判断することができない」というだけかもしれません。

 * 標準誤差:http://w3.cc.nagasaki-u.ac.jp/contrib/Excel/yougo.html

  また、イブの家系の遺伝的優位性というのは、イブ識別指標に優位性があ
ることだけによるものではありません。ミトコンドリアの他の部分やミトコ
ンドリア以外の母系遺伝の要素に優位性があった場合でも、「イブの mtDNA」
が濃縮されることにはかわりがありません。

  イブ仮説(現在の人類はアフリカ起源の集団が拡散したものであるという
仮説)というのは「イブの家系に遺伝的優位性が無い」ということを前提と
して組み立てられています。しかし、その前提が確証されない限り、おいそ
れとは乗りにくい面があるのです。《集団が》拡散したのではなく、《遺伝
子だけが》拡散したのかもしれないからです。

  −−−−

  このことは、いろいろな人種の混血の可能性を考える場合にも問題となり
ます。

  A集団にわずかの人数のB集団の人間が混血した、というだけで、その集
団が延々とA集団として継続していたにもかかわらず、ある遺伝的指標を基
準にするとB集団の特色を示してしまう、という可能性を示しています。

  「A集団」「B集団」を次のように読み替えて考えてみてください。

A集団:縄文人、旧モンゴロイド、非イブの集団、ネアンデルタール人
B集団:弥生人、新モンゴロイド、イブ系の集団、クロマニヨン人

  −−−−

 じつは、このシミュレータは Gm 遺伝子の矛盾を解決したくて開発しまし
た。Gm 遺伝子については下記のURLや「松本秀雄著『日本人は何処から
来たか』(NHKブックス652)」をご覧ください。
  
 * http://www.dai3gen.net/gm00.htm

 Gm 遺伝子の矛盾というのは、

  (1)旧モンゴロイドの指標である「青」「緑」遺伝子が、アフリカ系の
  遺伝子とかけ離れている。アフリカ系の遺伝子から変異したとすれば2回
  以上の変異を経由しなければならないはずである。おそらく100万年程
  度は分離した状態がなければ変異によって「青」「緑」にはならないであ
  ろう。(100万年につき、p.137、『日本人は何処から来たか』)。

  (2)しかも、4万年前の東アジアではその「青」「緑」に純化していた。
  4万年前に東アジアからオーストラリアやアメリカ大陸に渡ったアボリジ
  ニや南アメリカの種族では「青」「緑」の純系なので、それに純化されて
  いたことがわかる。

  (3)ところが、イブ仮説によると、彼らも「約14万3千年前のアフリカ
  に存在した祖先集団に由来する」とされている。

 100万年前の第一次出アフリカでユーラシア大陸に渡り、独自の Gm 遺
伝子を変異させ、純化した人々が、14万年前のイブの子孫であるというの
は考えにくいですよね。

 やはり、混血説(多地域進化説)を取らざるを得ないのではないか、とい
うのが、本稿の趣旨になります。

 アボリジニなどの旧モンゴロイドをA集団、イブ系の人々をB集団として、
本シミュレータを適用してみれば、100万年前に分離した旧モンゴロイド
の集団が、遺伝的には14万年前のイブの子孫の兆候を示す、という現象を
説明できることになります。仮に、10万年前に、旧モンゴロイドの集団に
小数のイブ系の人々が混血したと考えれば、その後6万年もあれば「旧モン
ゴロイドでありながら、遺伝的にはイブ系に純化された集団」になります。

 Gm 遺伝子については逆に旧モンゴロイド系の「青」「緑」に遺伝的優位
性があったと考えられるので、参入者側が持っていたアフリカ系の Gm 遺伝
子は残りません。

  ですが、まあ、イブ仮説を前提にして考えるなら、イブ集団を集団A、原
人系(ネアンデルタール)を集団Bとして考えたほうが無難かもしれません。
10万年前頃に第2次アウトオブアフリカを果たしたイブ集団がユーラシア
大陸でネアンデルタールと混血し、彼らが持っていた Gm 遺伝子を取得し、
それによってユーラシア大陸の環境適応性を取得して、イブ集団がユーラシ
ア大陸の各地に拡散した、となるんでしょう。しかし、その場合でも、「混
血」がキーワードとなり、少なくとも Gm 遺伝子については多地域進化説を
取る必要がある、ということになります。

 多地域進化説とその批判につき

  http://decision.c.u-tokyo.ac.jp/~nobu/shiryou/sankou/307jawa.htm
  http://decision.c.u-tokyo.ac.jp/~nobu/shiryou/sankou/308eve.htm

  −−−−

  【シミュレータの結果】

A集団(Aa)99%にB集団の人(Bb)が1%混血した集団で、
B集団が持っていた b 遺伝子がA集団の a 遺伝子より 2% の生存優位性があり、
B集団の B 遺伝子とA集団の遺伝子 A その間には遺伝的な優劣が無いとして
1000世代分を計算したもの。

a、b 遺伝子の割合を見ると。
250世代で b (Ab+Bb) が優位(50%以上)になる。
500世代で b (Ab+Bb) が99%以上の割合になり。
750世代で b (Ab+Bb) に純化されている。(99.99% 以上)

A、B 間には遺伝的優劣が無いので初期に B の割合が増えた後は一定。

A集団:縄文人、旧モンゴロイド、非イブの集団、ネアンデルタール人
B集団:弥生人、新モンゴロイド、イブ系の集団、クロマニヨン人

「2%の優位性」といのを統計的に検出するのは困難。相当大量のデータ数
で、しかも、数百年に渡って継続的に統計をとり続けないと検出できないだ
ろう。

世代    Aa     Ab     Ba     Bb       A      B        a      b
  0 : 0.9900 0.0000 0.0000 0.0100 : 0.9900 0.0100 : 0.9900 0.0100
  1 : 0.9849 0.0050 0.0049 0.0051 : 0.9899 0.0101 : 0.9898 0.0102
  2 : 0.9821 0.0077 0.0075 0.0027 : 0.9899 0.0101 : 0.9896 0.0104
  3 : 0.9806 0.0092 0.0088 0.0014 : 0.9898 0.0102 : 0.9894 0.0106
  4 : 0.9798 0.0100 0.0094 0.0008 : 0.9898 0.0102 : 0.9892 0.0108
  5 : 0.9792 0.0106 0.0097 0.0005 : 0.9898 0.0102 : 0.9890 0.0110

 50 : 0.9636 0.0262 0.0099 0.0003 : 0.9898 0.0102 : 0.9735 0.0265
100 : 0.9223 0.0675 0.0095 0.0007 : 0.9898 0.0102 : 0.9318 0.0682
150 : 0.8269 0.1629 0.0085 0.0017 : 0.9898 0.0102 : 0.8354 0.1646
200 : 0.6469 0.3429 0.0067 0.0035 : 0.9898 0.0102 : 0.6535 0.3465
250 : 0.4078 0.5820 0.0042 0.0060 : 0.9898 0.0102 : 0.4120 0.5880 ← 50%以上
300 : 0.2045 0.7853 0.0021 0.0081 : 0.9898 0.0102 : 0.2066 0.7934
350 : 0.0873 0.9025 0.0009 0.0093 : 0.9898 0.0102 : 0.0882 0.9118
400 : 0.0343 0.9555 0.0004 0.0098 : 0.9898 0.0102 : 0.0347 0.9653
450 : 0.0130 0.9768 0.0001 0.0101 : 0.9898 0.0102 : 0.0132 0.9868
500 : 0.0049 0.9849 0.0001 0.0102 : 0.9898 0.0102 : 0.0049 0.9951 ← 99%以上
550 : 0.0018 0.9880 0.0000 0.0102 : 0.9898 0.0102 : 0.0018 0.9982
600 : 0.0007 0.9891 0.0000 0.0102 : 0.9898 0.0102 : 0.0007 0.9993
650 : 0.0003 0.9895 0.0000 0.0102 : 0.9898 0.0102 : 0.0003 0.9997
700 : 0.0001 0.9897 0.0000 0.0102 : 0.9898 0.0102 : 0.0001 0.9999
750 : 0.0000 0.9898 0.0000 0.0102 : 0.9898 0.0102 : 0.0000 1.0000 ← 99.99% 以上
800 : 0.0000 0.9898 0.0000 0.0102 : 0.9898 0.0102 : 0.0000 1.0000
                               初期変動後は一定↑   ↑150〜300世代で急増


ミトコンドリア・シミュレータ その4 へ戻る ミトコンドリア・シミュレータ
【シミュレータのスクリプト】 #!ruby -Ks #require "phi" Aa = 0 Ab = 1 Ba = 2 Bb = 3 def calc_kodomo n ## 婚姻パターン出現率 aaaa = n[Aa] * n[Aa] * 1 aaab = n[Aa] * n[Ab] * 2 aaba = n[Aa] * n[Ba] * 2 aabb = n[Aa] * n[Bb] * 2 abab = n[Ab] * n[Ab] * 1 abba = n[Ab] * n[Ba] * 2 abbb = n[Ab] * n[Bb] * 2 baba = n[Ba] * n[Ba] * 1 babb = n[Ba] * n[Bb] * 2 bbbb = n[Bb] * n[Bb] * 1 ## 婚姻パターンから生まれる子供のパターン aa = aaaa*4 + aaab*2 + aaba*2 + aabb*1 + abab*0 + abba*1 + abbb*0 + baba*0 + babb*0 + bbbb*0 ab = aaaa*0 + aaab*2 + aaba*0 + aabb*1 + abab*4 + abba*1 + abbb*2 + baba*0 + babb*0 + bbbb*0 ba = aaaa*0 + aaab*0 + aaba*2 + aabb*1 + abab*0 + abba*1 + abbb*0 + baba*4 + babb*2 + bbbb*0 bb = aaaa*0 + aaab*0 + aaba*0 + aabb*1 + abab*0 + abba*1 + abbb*2 + baba*0 + babb*2 + bbbb*4 aa /= 4 ab /= 4 ba /= 4 bb /= 4 return [ aa , ab , ba , bb ] end def calc_ikinokori n aa = n[Aa] * 1.00 ab = n[Ab] * 1.02 ba = n[Ba] * 1.00 bb = n[Bb] * 1.02 return [ aa , ab , ba , bb ] end def calc_heijun n s = n[Aa] + n[Ab] + n[Ba] + n[Bb] aa = n[Aa] / s ab = n[Ab] / s ba = n[Ba] / s bb = n[Bb] / s return [ aa , ab , ba , bb ] end def fmt n "%.4f %.4f %.4f %.4f" % [ n[Aa] , n[Ab] , n[Ba] , n[Bb] ] end def fmt2 n "%.4f %.4f : %.4f %.4f" % [ n[Aa]+n[Ab] , n[Ba]+n[Bb] , n[Aa]+n[Ba] , n[Ab]+n[Bb] ] end ninzuu = [ 0.99 , 0.0 , 0.0 , 0.01 ] (0..1000).each{ |sedai| kodomo = calc_kodomo( ninzuu ) ikinokori = calc_ikinokori kodomo if ((sedai % 50) == 0) or (sedai < 6) ##puts format( "%d : %s : %s : %s" , sedai , fmt(ninzuu) , fmt(kodomo), fmt(ikinokori) ) puts format( "%d : %s : %s " , sedai , fmt(ninzuu) , fmt2(ninzuu) ) end ninzuu = calc_heijun ikinokori } raise __END__
ミトコンドリア・シミュレータ その4 へ戻る ミトコンドリア・シミュレータ