バクテリアにおけるパンゲノム解析の概念図です。(b)は、(a)の結果を行列として示したものです。表形式なので(ちょっと不格好ですが)以下でも示しておきます。右端の2列が非必須ゲノムです。
菌株1 | 菌株2 | 菌株3 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|---|
gene1 | \(\circ\) | 1 | yes | |||||
gene2 | \(\circ\) | 1 | yes | |||||
gene3 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene4 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene5 | \(\circ\) | 1 | yes | |||||
gene6 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene8 | \(\circ\) | 1 | yes | |||||
gene9 | \(\circ\) | 1 | yes |
バクテリアにおけるパンゲノム解析の概念図である図2.1bと同じような形式で、gene6とgene10とgene11からなる菌株4を追加したものを示しておきます。
菌株1 | 菌株2 | 菌株3 | 菌株4 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|---|---|
gene1 | \(\circ\) | 1 | yes | ||||||
gene2 | \(\circ\) | 1 | yes | ||||||
gene3 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | ||||
gene4 | \(\circ\) | \(\circ\) | 2 | yes | |||||
gene5 | \(\circ\) | 1 | yes | ||||||
gene6 | \(\circ\) | \(\circ\) | \(\circ\) | \(\circ\) | 4 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | |||||
gene8 | \(\circ\) | 1 | yes | ||||||
gene9 | \(\circ\) | 1 | yes | ||||||
gene10 | \(\circ\) | 1 | yes | ||||||
gene11 | \(\circ\) | 1 | yes |
バクテリアにおけるパンゲノム解析の概念図である図2.1bと同じような形式で、菌株2と3のみの結果を示しておきます。
菌株2 | 菌株3 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|
gene2 | \(\circ\) | 1 | yes | ||||
gene3 | \(\circ\) | \(\circ\) | 2 | yes | |||
gene4 | \(\circ\) | 1 | yes | ||||
gene6 | \(\circ\) | \(\circ\) | 2 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | |||
gene8 | \(\circ\) | 1 | yes | ||||
gene9 | \(\circ\) | 1 | yes |
バクテリアにおけるパンゲノム解析の概念図です。(b)は、(a)の結果を行列として示したものです。表形式なので(ちょっと不格好ですが)以下でも示しておきます。右端の2列が非必須ゲノムです。この表作成作業は、ゲノム(strain)間での同一遺伝子の対応付けであるため、オーソログ同定作業と同義です。
菌株1 | 菌株2 | 菌株3 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|---|
gene1 | \(\circ\) | 1 | yes | |||||
gene2 | \(\circ\) | 1 | yes | |||||
gene3 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene4 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene5 | \(\circ\) | 1 | yes | |||||
gene6 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene8 | \(\circ\) | 1 | yes | |||||
gene9 | \(\circ\) | 1 | yes |
バクテリアにおけるパンゲノム解析の概念図です。(b)は、(a)の結果を行列として示したものです。表形式なので(ちょっと不格好ですが)以下でも示しておきます。右端の2列が非必須ゲノムです。この表作成作業は、ゲノム(strain)間での同一遺伝子の対応付けであるため、オーソログ同定作業と同義です。
菌株1 | 菌株2 | 菌株3 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|---|
gene1 | \(\circ\) | 1 | yes | |||||
gene2 | \(\circ\) | 1 | yes | |||||
gene3 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene4 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene5 | \(\circ\) | 1 | yes | |||||
gene6 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene8 | \(\circ\) | 1 | yes | |||||
gene9 | \(\circ\) | 1 | yes |
バクテリアにおけるパンゲノム解析の概念図です。(b)は、(a)の結果を行列として示したものです。右端の2列が非必須ゲノムです。
菌株1 | 菌株2 | 菌株3 | 和 | コアゲノム | アクセサリ遺伝子 | ユニーク遺伝子 | ||
---|---|---|---|---|---|---|---|---|
gene1 | \(\circ\) | 1 | yes | |||||
gene2 | \(\circ\) | 1 | yes | |||||
gene3 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene4 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene5 | \(\circ\) | 1 | yes | |||||
gene6 | \(\circ\) | \(\circ\) | \(\circ\) | 3 | yes | |||
gene7 | \(\circ\) | \(\circ\) | 2 | yes | ||||
gene8 | \(\circ\) | 1 | yes | |||||
gene9 | \(\circ\) | 1 | yes |
chisq.test
という名前の関数で利用可能です。ヒトゲノム中の2連続塩基の出現確率です。(a)ゲノム全体、(b)上流1,000塩基のみ。
2-mer | 期待値 | 観測値 | 観測値/期待値 |
---|---|---|---|
(a)ゲノム全体 | |||
AA | 0.087025 | 0.097420 | 1.119454 |
AT | 0.087025 | 0.076963 | 0.884376 |
TA | 0.087025 | 0.065324 | 0.750632 |
TT | 0.087025 | 0.097643 | 1.122009 |
CC | 0.042025 | 0.052404 | 1.246976 |
CG | 0.042025 | 0.009991 | 0.237748 |
GC | 0.042025 | 0.042837 | 1.019332 |
GG | 0.042025 | 0.052448 | 1.248019 |
AC | 0.060475 | 0.050360 | 0.832741 |
AG | 0.060475 | 0.070006 | 1.157600 |
CA | 0.060475 | 0.072592 | 1.200364 |
CT | 0.060475 | 0.070023 | 1.157876 |
GA | 0.060475 | 0.059413 | 0.982438 |
GT | 0.060475 | 0.050457 | 0.834346 |
TC | 0.060475 | 0.059409 | 0.982366 |
TG | 0.060475 | 0.072710 | 1.202318 |
(b) 上流1,000塩基のみ | |||
AA | 0.0576 | 0.071978 | 1.249616 |
AT | 0.0576 | 0.049498 | 0.859348 |
TA | 0.0576 | 0.042502 | 0.737873 |
TT | 0.0576 | 0.069764 | 1.211172 |
CC | 0.0676 | 0.082975 | 1.227441 |
CG | 0.0676 | 0.037947 | 0.561346 |
GC | 0.0676 | 0.068652 | 1.015569 |
GG | 0.0676 | 0.081545 | 1.206289 |
AC | 0.0624 | 0.048794 | 0.781949 |
AG | 0.0624 | 0.072280 | 1.158327 |
CA | 0.0624 | 0.067853 | 1.087388 |
CT | 0.0624 | 0.071798 | 1.150613 |
GA | 0.0624 | 0.060089 | 0.962971 |
GT | 0.0624 | 0.047740 | 0.765058 |
TC | 0.0624 | 0.060347 | 0.967103 |
TG | 0.0624 | 0.066238 | 1.061512 |
表2.1の作成に用いたRスクリプトファイルは、rcode_table2.1.Rです。このRスクリプトの冒頭部分からも何となくわかるかもしれませんが、本文中で書いている「ゲノム配列とアノテーション情報は、UCSCから取得したhg19のバージョンを利用した」の実体は、下記の2つのRパッケージです。
以下で示す表記法を眺めながら本文と突き合わせていくとよいと思います。基本的に出現順に記載しています。
略号 | 解説 |
---|---|
\(CGIL\) | CpGアイランド(CGI)の候補領域の長さのことです。実際のCGIの長さは500~2,000塩基程度です。しかし例題配列として用いるHZ245980.1は633塩基しかありませんので、ここでは\(CGIL\)の想定範囲を200~510塩基に設定しています。 |
\(CGIL_{min}\) | 想定するCpGアイランド(CGI)の長さの範囲(200~510塩基)の下限のことです。この場合は\(CGIL_{min}\) = 200です。 |
\(CGIL_{max}\) | 想定するCpGアイランド(CGI)の長さの範囲(200~510塩基)の上限のことです。この場合は\(CGIL_{max}\) = 510です。 |
\(n\) | 個体数または粒子数のことです。PSOは群れ全体で最適解を探索しますので、その群れを構成する個体数のことです。CGI同定問題では、個体数\(n\)は「CGIを探索する際の候補領域数」に相当します。PSOでは、この個体のことを粒子(particle)と表現しますので、個体数は粒子数と同じです。本項では、個体数\(n\)を\(4\) (つまり\(n = 4\))とおいています。 |
\(P\) | 個体または粒子のことです。PSOは群れ全体で最適解を探索しますが、その群れを構成する各個体のことです。PSOでは、この個体のことを粒子(particle)と表現します。「CpGアイランド(CGI)の各候補領域名」だと理解すればよいです。粒子(Particle)の頭文字からとっています。 |
\(P_1\) \(P_2\) \(P_3\) \(P_4\) |
個体または粒子の具体名のようなものです。本項では、個体数\(n\)を4とおいていますので、各粒子をこのように表現することができます。 |
\(P_i (i = 1, …, n)\) | 任意の\(i\)番目の粒子のことです。\(P_i\)だけで示すこともあれば、丸括弧で示すように\(i\)の取りうる範囲を明示することもあります。本項では個体数\(n\)を4とおいていますので、\(n = 4\)です。 |
\(\boldsymbol{x}\) | CpGアイランド(CGI)の具体的な候補領域のことです。始点\(s\)と終点\(e\)の2つのパラメータで表現可能\((s < e)\)であり、\(\boldsymbol{x}\) = (\(s\), \(e\))と表すことができます。これはスカラーではなくベクトルなので、業界の慣例にしたがって\(x\)ではなく\(\boldsymbol{x}\) (つまり太字)で表現しています。 |
\(\boldsymbol{x}_i\) | \(i\)番目の粒子\(P_i\)の領域の座標情報のことです。\(\boldsymbol{x}_i = (s_i, e_i)\)のように表現することができます。 |
\(s\) \(e\) |
CpGアイランド(CGI)の具体的な候補領域の始点と終点のことです。例題配列として用いるHZ245980.1は633塩基なので終点\(e\)のとりうる最大値は\(e_{max}\) = 633です。同様にして、始点\(s\)のとりうる最小値は\(s_{min}\) = 1となります。 |
\(s_i\) \(e_i\) |
粒子\(P_i\)の領域\(\boldsymbol{x}_i\)の始点と終点のことです。 |
\(CGIL_i\) | \(i\)番目の粒子\(P_i\)の領域長のことです。\(CGIL_i = e_i – s_i + 1\)と表現することができます。 |
\(Fitness(P_i)\) | \(i\)番目の粒子\(P_i\)の適応度関数です。 |
\(CGIL_i^{norm}\) | \(i\)番目の粒子\(P_i\)の領域長\(CGIL_i\)の値の取りうる範囲を0~1に変換して得られる変換後の長さが\(CGIL_i^{norm}\)です。式(2.1)で定めています。 |
\(CpG_i\) | \(i\)番目の粒子\(P_i\)の領域\(\boldsymbol{x}_i\)中に存在する2連続塩基CGの数です。 |
\(Obs_i\) | \(i\)番目の粒子\(P_i\)の領域\(\boldsymbol{x}_i\)中に存在する2連続塩基CGの数(\(CpG_i\))を、その領域長(\(CGIL_i\))で割ったものです。つまり、\(Obs_i = \frac{CpG_i}{CGIL_i}\)です。式(2.3)で出てきます。 |
\(C_i\) | \(i\)番目の粒子\(P_i\)の領域\(\boldsymbol{x}_i\)中に存在する塩基Cの数です。 |
\(G_i\) | \(i\)番目の粒子\(P_i\)の領域\(\boldsymbol{x}_i\)中に存在する塩基Gの数です。 |
\(Exp_i\) | \(i\)番目の粒子\(P_i\)の領域\(\boldsymbol{x}_i\)中に存在する塩基Cの割合を\(\frac{C_i}{CGIL_i}\)、塩基Gの割合を\(\frac{G_i}{CGIL_i}\)とすると、\(\frac{C_i}{CGIL_i} \times \frac{G_i}{CGIL_i}\)で表されるものです。シンプルにいうと、「領域\(\boldsymbol{x}_i\)中の塩基Cの割合とGの割合を掛けたもの」です。式(2.3)で出てきます。 |
\(j\) | 粒子群最適化(PSO)では、群れ全体で最適解を探索します。群れを構成する1匹1匹の個体のことを粒子(particle; \(P\))と表現します。\(i\)番目の粒子\(P_i\)は、あらかじめ指定された繰り返し回数(\(move_{max}\))分だけ飛び回って、適応度が高い領域を探索します。本文中では明記していませんが、このときの何回目の繰り返しかを示す添え字です。繰り返し0回目(初期化後)の粒子を\(P_i^0\)、繰り返し1回目の粒子を\(P_i^1\)、繰り返し\(j\)回目の粒子を\(P_i^j\)のように表現します。たとえば\(move_{max} = 5\)なら、同じ粒子\(P_i\)が計6箇所(粒子名は\(P_i^0\), \(P_i^1\), …, \(P_i^5\))飛び回るのだと理解すればよいです。 |
\(move_{max}\) | PSO実行時にあらかじめ指定する繰り返し回数です。 |
\(P_i^{best}\) | \(i\)番目の粒子\(P_i\)のみに着目し、あらかじめ指定された繰り返し回数(\(move_{max}\))分だけPSOで飛び回った結果として、最も適応度が高かった\(i\)番目の粒子\(P_i\)のことです。たとえば\(move_{max} = 5\)なら、同じ粒子\(P_i\)が計6箇所(粒子名は\(P_i^0\), \(P_i^1\), …, \(P_i^5\))飛び回ります。本文中では次のような書き方をしていませんが、繰り返し0回目(初期化後)の粒子を\(P_i^0\)、その適応度を\(Fitness(P_i^0)\)とすると、(この段階ではまだ繰り返し0回目なので)自動的に\(Fitness(P_i^{best}) = Fitness(P_i^0)\)、そして\(P_i^{best} = P_i^0\)となります。繰り返し1回目の粒子を\(P_i^1\)、その適応度を\(Fitness(P_i^1)\)とすると、もし\(Fitness(P_i^1) > Fitness(P_i^{best})\)なら、\(Fitness(P_i^1)\)の値を\(Fitness(P_i^{best})\)に代入し、同時に\(P_i^1\)を\(P_i^{best}\)に代入していくようなイメージです。 |
\(\hat{\boldsymbol{x}_i}\) | \(i\)番目の粒子\(P_i\)のみに着目し、あらかじめ指定された繰り返し回数分だけPSOで飛び回った結果として、最も適応度が高かった\(i\)番目の粒子\(P_i^{best}\)の領域のことです。繰り返し0回目(初期化後)の粒子を\(P_i^0\)、その領域を\(\boldsymbol{x}_i^0 = (s_i^0, e_i^0)\)とすると、(この段階ではまだ繰り返し0回目なので)自動的に\(P_i^{best} = P_i^0\)、\(Fitness(P_i^{best}) = Fitness(P_i^0)\)、そして\(\hat{\boldsymbol{x}_i} = \boldsymbol{x}_i^0 = (s_i^0, e_i^0)\)となります。繰り返し1回目の結果として、もし\(Fitness(P_i^1) > Fitness(P_i^{best})\)なら、\(\hat{\boldsymbol{x}_i}\)に\(\boldsymbol{x}_i^1\)を代入するようなイメージです。 |
\(Fitness(P_i^{best})\) | \(i\)番目の粒子\(P_i\)のみに着目し、あらかじめ指定された繰り返し回数(\(move_{max}\))分だけPSOで飛び回った結果として、最も適応度が高かった\(i\)番目の粒子\(P_i\)の適応度のことです。本文中では次のような書き方をしていませんが、繰り返し0回目(初期化後)の粒子を\(P_i^0\)、その適応度を\(Fitness(P_i^0)\)とすると、(この段階ではまだ繰り返し0回目なので)自動的に\(Fitness(P_i^{best}) = Fitness(P_i^0)\)、そして\(P_i^{best} = P_i^0\)となります。繰り返し1回目の粒子を\(P_i^1\)、その適応度を\(Fitness(P_i^1)\)とすると、もし\(Fitness(P_i^1) > Fitness(P_i^{best})\)なら、\(Fitness(P_i^1)\)の値を\(Fitness(P_i^{best})\)に代入し、同時に\(P_i^1\)を\(P_i^{best}\)に代入していくようなイメージです。 |
\(g^{best}\) | あらかじめ指定された繰り返し回数分だけPSOで飛び回った結果として、群全体として最も適応度が高かった粒子のことです。 本節では粒子数\(n\)を4としていますので、最も適応度が高かった\(i\)番目の粒子\(P_i^{best}\)は、\(P_1^{best}, P_2^{best}, P_3^{best}, P_4^{best}\)の計4つ存在します。\(g^{best}\)は、これらのうち最も適応度が高かった粒子のことを指します。 |
\(\hat{\boldsymbol{x}_g}\) | あらかじめ指定された繰り返し回数分だけPSOで飛び回った結果として、群全体として最も適応度が高かった領域のことです。\(g^{best}\)の説明と本質的に同じですが、違いは\(\hat{\boldsymbol{x}_g}\)が明確に領域を指すという点のみです。初期化(繰り返し0回目)終了時点では、\(\hat{\boldsymbol{x}_g}\) \(= \hat{\boldsymbol{x}_3}\) \(= (301, 580)\)です。 |
\(Fitness(g^{best})\) | すべての繰り返し、および粒子の中で、値が最大の適応度のことです。本節では粒子数\(n\)を4といています。また、繰り返し回数\(move_{max}\)が5の場合は、同じ粒子\(P_i\)が計6箇所(粒子名は\(P_i^0\), \(P_i^1\), …, \(P_i^5\))飛び回ります。したがって、得られる適応度の値は\(4 \times 6 = 24\)通り分存在しますが、この中で最大値のものを指します。 |
パーソナルベスト | 粒子ごとのベストという意味です。\(i\)番目の粒子\(P_i\)のみに着目し、あらかじめ指定された繰り返し回数(\(move_{max}\))分だけPSOで飛び回った結果として、最も適応度が高かった\(i\)番目の粒子を\(P_i^{best}\)、その領域を\(\hat{\boldsymbol{x}_i}\)、そしてその適応度を\(Fitness(P_i^{best})\)といいます。これらがパーソナルベストのものたちということになります。 |
グローバルベスト | 群全体でのベストという意味です。すべての粒子があらかじめ指定された繰り返し回数(\(move_{max}\))分だけPSOで飛び回った結果として、最も適応度が高かった粒子を\(g^{best}\)、その領域を\(\hat{\boldsymbol{x}_g}\)、そしてその適応度を\(Fitness(g^{best})\)といいます。これらがグローバルベストのものたちということになります。 |
\(\boldsymbol{x}_i^{old}\) | 更新前の\(P_i\)の領域情報です。式(2.6)で出てきます。たとえば、4番目の粒子\(P_4\)について初期化後(繰り返し0回目)から繰り返し1回目の領域情報の更新を行う場合は、更新前の\(P_4^0\)の領域情報は\(\boldsymbol{x}_4^{old}\) \(= \boldsymbol{x}_4^0\) \(= (s_4^0, e_4^0)\) \(= (401, 500)\)となります。更新前が繰り返し0回目に相当するので、右上の添え字が0になっているのだと理解すればよいです。本文中では右上の0の添え字はありませんので、ご注意ください。 |
\(\boldsymbol{x}_i^{new}\) | 更新後の\(P_i\)の領域情報です。式(2.6)で出てきます。たとえば、4番目の粒子\(P_4\)について初期化後(繰り返し0回目)から繰り返し1回目の領域情報の更新を行う場合は、更新後の\(P_4^1\)の領域情報は\(\boldsymbol{x}_4^{new}\) \(= \boldsymbol{x}_4^1\) \(= (s_4^1, e_4^1)\)のように表現できます。更新後が繰り返し1回目に相当するので、右上の添え字が1になっているのだと理解すればよいです。本文中では右上の1の添え字はありませんので、ご注意ください。 |
\(\boldsymbol{v}_i^{new}\) | 式(2.6)の第2項で出てくる速度とよばれる項です。2次元の整数ベクトルであり、この値が更新前後の領域の違いを決定します。この値の求め方の基本形が式(2.8)で、完成形が式(2.11)です。 |
\(\boldsymbol{v}_i^{old}\) | 式(2.8)の第1項で出てくるものあり、粒子\(P_i\)が更新前に持っていた速度のことです。更新前なので右上の添え字が\(old\)なのです。 |
\(c\) | 加速度定数です。 |
\(r\) | (一様)乱数です。 |
\(w\) | 慣性重みです。 |
\(move_j\) | \(j\)回目の繰り返しのことです。 |
後述する表2.2の内容とも被りますが一旦ここで情報を整理しておきます。右側3列分の情報は、大元であるHZ245980.1上でも確認することができます。633塩基しかありませんので、気になるヒトは手計算で確認してみてください。
\(P_i\) | \(\boldsymbol{x}_i\) | \(CGIL_i\) | \(CpG_i\) | \(C_i\) | \(G_i\) |
---|---|---|---|---|---|
\(P_1\) | \(\boldsymbol{x}_1\)
\(= (s_1, e_1)\) \(= (1, 203)\) |
\(CGIL_1\) \(= e_1 – s_1 + 1\) \(= 203 - 1 + 1\) \(= 203\) bp |
\(CpG_1\) \(= 9\) |
\(C_1\) \(= 64\) |
\(G_1\) \(= 69\) |
\(P_2\) | \(\boldsymbol{x}_2\)
\(= (s_2, e_2)\) \(= (51, 300)\) |
\(CGIL_2\) \(= e_2 – s_2 + 1\) \(= 300 - 51 + 1\) \(= 250\) bp |
\(CpG_2\) \(= 10\) |
\(C_2\) \(= 73\) |
\(G_2\) \(= 91\) |
\(P_3\) | \(\boldsymbol{x}_3\)
\(= (s_3, e_3)\) \(= (301, 580)\) |
\(CGIL_3\) \(= e_3 – s_3 + 1\) \(= 580 - 301 + 1\) \(= 280\) bp |
\(CpG_3\) \(= 17\) |
\(C_3\) \(= 99\) |
\(G_3\) \(= 79\) |
\(P_4\) | \(\boldsymbol{x}_4\)
\(= (s_4, e_4)\) \(= (401, 500)\) |
\(CGIL_4\) \(= e_4 – s_4 + 1\) \(= 500 - 401 + 1\) \(= 100\) bp |
\(CpG_4\) \(= 6\) |
\(C_1\) \(= 32\) |
\(G_1\) \(= 30\) |
PSOにおける適応度の計算例です。入力配列は、HZ245980.1です。列数が多くなるので、ここでは元の基礎情報の値がわかるように式(2.4)の第1項(2列目)、第2項(3列目)、第3項(4列目)という形で示します。5列目が式(2.4)左辺に相当し、式(2.4)の右辺に相当する2~4列目の値の和です。この表の作成に用いたRスクリプトファイルと実際の入力ファイルは、それぞれrcode_table2.2.RとHZ245980.1.fastaです。実行結果として、表2.2の元情報を含むファイル(table2.2.txt)が得られます。
\(P_i\) | \(\frac{\frac{CpG_i}{CGIL_i}}{\frac{C_i}{CGIL_i} \times \frac{G_i}{CGIL_i}}\) | \(\frac{C_i + G_i}{CGIL_i}\) | \(CGIL_i^{norm}\) | \(Fitness(P_i)\) |
---|---|---|---|---|
\(P_1\) | \(\frac{\frac{9}{203}}{\frac{64}{203} \times \frac{69}{203}}\) | \(\frac{64 + 69}{203}\) | \(0.0097\) | \(1.0786\) |
\(P_2\) | \(\frac{\frac{10}{250}}{\frac{73}{250} \times \frac{91}{250}}\) | \(\frac{73 + 91}{250}\) | \(0.1613\) | \(1.1936\) |
\(P_3\) | \(\frac{\frac{17}{280}}{\frac{99}{280} \times \frac{79}{280}}\) | \(\frac{99 + 79}{280}\) | \(0.2581\) | \(1.5024\) |
\(P_4\) | \(\frac{\frac{6}{100}}{\frac{32}{100} \times \frac{30}{100}}\) | \(\frac{32 + 30}{100}\) | \(0.0000\) | \(1.2450\) |
表2.2とも少し被りますが、この段落内で言及されている各種情報をまとめておきます。本文中では言及していませんが、初期化後は繰り返し0回目(\(j = 0\))のですので、このWeb資料では右上に添え字をつけて示します。
\(P_i^0\) | \(\boldsymbol{x}_i^0\) | \(\hat{\boldsymbol{x}_i}\) | \(Fitness(P_i^0)\) | \(Fitness(P_i^{best})\) | \(Fitness(g^{best})\) | \(\hat{\boldsymbol{x}_g}\) |
---|---|---|---|---|---|---|
\(P_1^0\) | \(\boldsymbol{x}_1^0\)
\(= (1, 203)\) |
\(\hat{\boldsymbol{x}_1}\) \(= (1, 203)\) |
\(Fitness(P_1^0)\)
\(= 1.0786\) |
\(Fitness(P_1^{best})\) \(= 1.0786\) |
||
\(P_2^0\) | \(\boldsymbol{x}_2^0\)
\(= (51, 300)\) |
\(\hat{\boldsymbol{x}_2}\) \(= (51, 300)\) |
\(Fitness(P_2^0)\)
\(= 1.1936\) |
\(Fitness(P_2^{best})\) \(= 1.1936\) |
||
\(P_3^0\) | \(\boldsymbol{x}_3^0\)
\(= (301, 580)\) |
\(\hat{\boldsymbol{x}_3}\) \(= (301, 580)\) |
\(Fitness(P_3^0)\)
\(= 1.5024\) |
\(Fitness(P_3^{best})\) \(= 1.5024\) |
\(Fitness(P_3^{best})\) \(= 1.5024\) |
\(\hat{\boldsymbol{x}_3}\) \(= (301, 580)\) |
\(P_4^0\) | \(\boldsymbol{x}_4^0\)
\(= (401, 500)\) |
\(\hat{\boldsymbol{x}_4}\) \(= (401, 500)\) |
\(Fitness(P_4^0)\)
\(= 1.2450\) |
\(Fitness(P_4^{best})\) \(= 1.2450\) |
初期化(繰り返し0回目)終了時点で保持している情報の再掲です。以下の情報と突き合わせながら、式(2.8)と式(2.9)の間の解説をご覧になると理解しやすいかと思います。この場合は、繰り返し0回目が\(old\)、繰り返し1回目が\(new\)です。したがって、\(\boldsymbol{x}_i^0\) \(= \boldsymbol{x}_i^{old}\)です。
\(P_i^0\) | \(\boldsymbol{x}_i^0\) | \(\hat{\boldsymbol{x}_i}\) | \(Fitness(P_i^0)\) | \(Fitness(P_i^{best})\) | \(Fitness(g^{best})\) | \(\hat{\boldsymbol{x}_g}\) |
---|---|---|---|---|---|---|
\(P_1^0\) | \(\boldsymbol{x}_1^0\)
\(= (1, 203)\) |
\(\hat{\boldsymbol{x}_1}\) \(= (1, 203)\) |
\(Fitness(P_1^0)\)
\(= 1.0786\) |
\(Fitness(P_1^{best})\) \(= 1.0786\) |
||
\(P_2^0\) | \(\boldsymbol{x}_2^0\)
\(= (51, 300)\) |
\(\hat{\boldsymbol{x}_2}\) \(= (51, 300)\) |
\(Fitness(P_2^0)\)
\(= 1.1936\) |
\(Fitness(P_2^{best})\) \(= 1.1936\) |
||
\(P_3^0\) | \(\boldsymbol{x}_3^0\)
\(= (301, 580)\) |
\(\hat{\boldsymbol{x}_3}\) \(= (301, 580)\) |
\(Fitness(P_3^0)\)
\(= 1.5024\) |
\(Fitness(P_3^{best})\) \(= 1.5024\) |
\(Fitness(P_3^{best})\) \(= 1.5024\) |
\(\hat{\boldsymbol{x}_3}\) \(= (301, 580)\) |
\(P_4^0\) | \(\boldsymbol{x}_4^0\)
\(= (401, 500)\) |
\(\hat{\boldsymbol{x}_4}\) \(= (401, 500)\) |
\(Fitness(P_4^0)\)
\(= 1.2450\) |
\(Fitness(P_4^{best})\) \(= 1.2450\) |
PSOにおける適応度の計算例です。入力配列は、HZ245980.1です。列数が多くなるので、ここでは元の基礎情報の値がわかるように式(2.4)の第1項(2列目)、第2項(3列目)、第3項(4列目)という形で示します。5列目が式(2.4)左辺に相当し、式(2.4)の右辺に相当する2~4列目の値の和です。この表の作成に用いたRスクリプトファイルと実際の入力ファイルは、それぞれrcode_table2.2.RとHZ245980.1.fastaです。実行結果として、表2.2の元情報を含むファイル(table2.2.txt)が得られます。
\(P_i\) | \(\frac{\frac{CpG_i}{CGIL_i}}{\frac{C_i}{CGIL_i} \times \frac{G_i}{CGIL_i}}\) | \(\frac{C_i + G_i}{CGIL_i}\) | \(CGIL_i^{norm}\) | \(Fitness(P_i)\) |
---|---|---|---|---|
\(P_1\) | \(\frac{\frac{9}{203}}{\frac{64}{203} \times \frac{69}{203}}\) | \(\frac{64 + 69}{203}\) | \(0.0097\) | \(1.0786\) |
\(P_2\) | \(\frac{\frac{10}{250}}{\frac{73}{250} \times \frac{91}{250}}\) | \(\frac{73 + 91}{250}\) | \(0.1613\) | \(1.1936\) |
\(P_3\) | \(\frac{\frac{17}{280}}{\frac{99}{280} \times \frac{79}{280}}\) | \(\frac{99 + 79}{280}\) | \(0.2581\) | \(1.5024\) |
\(P_4\) | \(\frac{\frac{6}{100}}{\frac{32}{100} \times \frac{30}{100}}\) | \(\frac{32 + 30}{100}\) | \(0.0000\) | \(1.2450\) |
表2.3の\(Fitness(P_i)\)列で見えている値を、式(2.4)で算出する具体例を粒子ごとに示します。式(2.4)の第1~3項が以下の第2~4列に相当します。
\(P_i\) | \(\frac{\frac{CpG_i}{CGIL_i}}{\frac{C_i}{CGIL_i} \times \frac{G_i}{CGIL_i}}\) | \(\frac{C_i + G_i}{CGIL_i}\) | \(CGIL_i^{norm}\) | \(Fitness(P_i)\) |
---|---|---|---|---|
\(P_1\) | \(\frac{\frac{18}{283}}{\frac{103}{283} \times \frac{81}{283}}\) | \(\frac{103 + 81}{283}\) | \(0.2677\) | \(1.5285\) |
\(P_2\) | \(\frac{\frac{17}{273}}{\frac{100}{273} \times \frac{79}{273}}\) | \(\frac{100 + 79}{273}\) | \(0.2355\) | \(1.4786\) |
\(P_3\) | \(\frac{\frac{16}{269}}{\frac{85}{269} \times \frac{82}{269}}\) | \(\frac{85 + 82}{269}\) | \(0.2226\) | \(1.4609\) |
\(P_4\) | \(\frac{\frac{13}{204}}{\frac{70}{204} \times \frac{57}{204}}\) | \(\frac{70 + 57}{204}\) | \(0.0129\) | \(1.3001\) |