Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
計算モデル論2013萩谷担当分全5回
予定
•分子コンピューティングから、計算とエネルギーの話、可逆計算• ランダウアーの原理・可逆チューリング機械・可逆論理回路
•分子コンピューティング・分子ロボティクス・合成生物学• DNAコンピュータ・DNAナノテクノロジー
•分子コンピューティングや合成生物学のための計算モデル• 確率状態遷移系・ジレスピーのアルゴリズム・・・
• ニューラルネットワーク・・・• ホップフィールネットワーク・ボルツマンマシン
•遺伝的アルゴリズム・進化計算・スウォーム計算
参考文献
確率マルチセット書き換えとGillespie法確率モデルの導入
化学反応のモデル
•濃度大• 連続濃度に対する微分方程式
•少分子• マルチセット書き換え系
• マルチセットの要素=分子=グラフ
• 確率マルチセット書き換え系• 確率微分方程式(マスター方程式)
連続濃度に対する微分方程式
2
2
2
1 2 RGkBRkdt
dG
1k
2k
化学反応のモデル
•濃度大• 連続濃度に対する微分方程式
•少分子• マルチセット書き換え系
• マルチセットの要素=分子=グラフ
• 確率マルチセット書き換え系• 確率微分方程式(マスター方程式)
マルチセット
•多重集合• 要素に多重度のある(有限)集合
•各要素に対して0以上の整数(個数)が割り当てられていると考えられる• 要素から0以上の整数(自然数)への関数
• ペトリネット• プレースが要素
• プレースのトークンの数が多重度
確率状態遷移系
•状態=分子(グラフ)のマルチセット• 離散
• マルチセット:分子→非負整数(個数)
•書き換え規則=化学反応• 各規則に非負実数が反応速度として与えられる。
•状態遷移=グラフ書き換え• 離散
• 確率的• 反応速度に比例した確率で規則が選ばれる。
マルチセット書き換え系
確率的マルチセット書き換え系
propensity
11
4
2
3c
22
2
1
2c
1c
2c
マスター方程式
rrggbbbrggggbbbrrrgbbbb
rrggbbbpccpcpc
dt
dp
2121
2
2
1
2
1
3
2
2
2
4
1
1
1
4
2
3
確率的マルチセット書き換え系
propensity
11
4
2
3c
22
2
1
2c
1c
2c
解析的に調べるのは一般に困難
•確率的シミュレーションの標準的手法• 各々の書き換え規則(反応)は、
propensityに比例した確率で実行される
• a0をpropensityの和としたとき、
いずれかの規則が今から時間 t のうちに
実行される確率は 1ea0t
Gillespie法
今から時間 tの間に実行されない確率を P(t) とすると、P(0) = 1 で、dP(t) = a0 P(t) dt
P(t) = ea0t
1
r
t
縦軸に 0 から 1 まで一様に乱数を生成すると、1rから 1 までに入る確率は r。これは、ちょうど、時刻 tまでに反応が起こる確率に等しい。
0
P(t) = ea0t
上のようにして tを求めれば望みの分布になる!一般に、[0,1] の一様乱数 rにより Φ(t) = rを解いて tを求めれば、累積確率密度 Φ(t) の確率分布を生成できる。
1
r
t
縦軸に 0 から 1 まで一様に乱数を生成すると、1r 0から 1 rまでに入る確率は r。これは、ちょうど、時刻 tまでに以降に反応が起こる確率に等しい。
0
P(t) = ea0t
r
•確率的シミュレーションの標準的手法• 各々の書き換え規則(反応)は、
propensityに比例した確率で実行される
• a0をpropensityの和としたとき、
いずれかの規則が今から時間 t のうちに
実行される確率は 1ea0t
• Gillespie法の各ステップ• [0,1] の一様乱数 r から (1/a0)ln(1/r) によって
次の書き換えの時刻を決定
• 乱数を用いてpropensityに比例して規則を選択
Gillespie法
今から時間 tの間に実行されない確率を P(t) とすると、P(0) = 1 で、dP(t) = a0 P(t) dt
1 ea0t = 1r
分子種 iの個数が Xi
t跳躍法
• Gillespie法の効率化
•分子数がある程度大きい場合、
数回の反応では分子数は大きく変化しない
•適当な時間間隔 t の間に
propensityが a の反応が起こる回数 n は、
平均 atのPoisson分布に従う
例:シーソーゲート
Gate:Output Input
例:シーソーゲート
例:シーソーゲート
Output Gate:Input
例:遺伝子と制御タンパクのモデル
抑制された遺伝子
遺伝子
タンパク
Elowitz et al. 2000http://www.nature.com/nature/journal/v403/n6767/abs/403335a0.html
0.1 1.0 0.0001 0.001
0.1 1.0 0.0001 0.001
0.1 1.0 0.0001 0.001
参考:シミュレーション vs. モデル検査
• シミュレーション(テスト)• 特定の(通常は複数の)実行経路を調べる
• モデル検査• すべての実行経路を網羅的に調べる
• 組み合わせ爆発→記号化・抽象化
•確率モデル検査• すべての実行経路を網羅しながら
• 確率的な量を(数値)計算• 各種の期待値など
DNAシステムのグラフ書き換えモデル
化学系の計算モデルの例として
DNAシステムのモデル
• DNAの立体構造 ---二本鎖の螺旋構造• 第一原理計算(量子化学)
• 分子動力学
• DNAの二次構造• どのベースとどのベースがつながっているか
• ヘアピンなどの様々なループ構造
• まとまったセグメント単位の二次構造• グラフ
• 多くのDNAシステムはこのレベルでモデル化可能
水素結合ハイブリダイゼーション
ATACCAACAATAGTAACAGAC
TTGTTATCATTGTCTG
cba d
BC D
c d
グラフ=分子
cba d
BC D
c d ノード(節・頂点)
エッジ(辺)
エッジ(矢)
ATACCAACAATAGTAACAGAC
TTGTTATCATTGTCTG
cba d
BC D
c d
ATACCAACAATAGTAACAGAC
TTGTTATCATTGTCTG
cba d
BC D
c d
ATACCAACAATAGTAACAGAC
TTGTTATCATTGTCTG
AGTAACAGAC
cba d
BC D
c d
グラフの書き換え
cba d
BC D
c d
グラフの書き換え
cba d
BC D
c d
グラフの書き換え
cba d
BC D
c d
グラフ書き換え規則
y
x
XY
y
y
x
XY
y
c
A
C
A
c a
C A
a
A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
cA
C
A
c a
C A
a
A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
cA
C
A
c a
C A
a
A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
c
A
C
A
c a
C A
a
A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
cA
C
A
c a
C A
a
A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
c a
A
C A
A
c a
C A
• Hybridization
• Denaturation
• Strand displacement(Branch migration)
三種類の反応
Strand Displacement(Branch Migration)
y
x
XY
y
y
x
XY
y
Hybridization
x
X
x
X
Hybridization
x
X Y
y
x
X Y
y
Denaturation
x
X
x
X
反応速度の例(Kawamata et al.)
• 0.1 for bimolecular hybridization
• 1.0 for unimolecular hybridization to extend
• 1.0e-7 for unimolecular hybridization making loop
• 0.1 for other unimolecular hybridization
• 0.01 for branch migration reaction
• Denaturationの反応速度は配列に依存• Hybridizationの反応速度とともに、自由エネルギーの予想に合わせる
• Simulation result via graphical interface
Concentration changes Structure visualization
Kawamata’s Simulator
反応速度の推定
• Hybridization• 実測値
• およそ一定とみなす
• Denaturation• 二本鎖の自由エネルギーとhybridizationの速度から逆算する
• Strand displacement(Branch migration)• 実測値
• 配列(特に長さ)に依存
RT
G
D
H ek
kK
DNA二本鎖のエネルギーモデル
・ ・ ・ ・ ・ ・
・ ・ ・・ ・ ・
Base pair が交差する場合は考慮しない ( = 一本鎖における Pseudoknot free)
全体のΔG を部分的な構造の ΔG の総和として計算する
5‘-
3‘-
- 3‘
- 5‘
インターナルループ [Zuker 03]
フリーエンド [Zuker 03]
使用するパラメータ
スタッキングペア [Tanaka 04]
バルジループ
一塩基バルジループ [Tanaka 04]
その他のバルジ [Zuker 03]
Nearest-Neighbor model (NN model)
π計算と確率π計算膜構造を持つ計算モデル
並列・並行・分散
•並列計算• たくさんのプロセスがそれぞれのコンピュータ(CPU)の上で同時に計算する
•並行計算• 複数のプロセスが通信し合いながら、ひとまとまりの計算を行う
• 必ずしも並列計算を必要としない
×平行計算
•分散計算• たくさんのプロセスが物理的に分散して計算する
プロセス計算の蘊蓄
• プロセス計算の原点は化学抽象機械にある• 化学反応に触発された抽象的な計算体系
• 並列・並行・分散計算のモデル
•以後、様々なプロセス計算が発展• π計算・応用π計算・アンビエント計算・・・
• ネットワークプロトコルやウェブサービス
• プロセス計算に基づくプログラミング言語
•最近では生体内の化学反応にも応用• 確率π計算・κ計算
Chemical Abstract Machine
π計算
•並行計算のモデル
• チャネルを通して通信し合うプロセス• 各種の反応を表現することが可能
•入れ子の構造• 膜のモデル
• プロセス間の等価性の理論が発展
•非決定性に確率を付与⇒確率π計算
プロセスの定義
Gene(a,b) := t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b)
Protein(b) := b.Protein(b) + t.0
チョイス
並列合成
自発的遷移
チャネルaからの入力
チャネルbへの出力
自発的遷移
...|(… + t.P + …)|... → ...|P|...
...|(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))|...
→ ...|Gene(a,b)|Protein(b)|…
...|(b.Protein(b) + t.0)|... → ...|0|... ...|...
通信
...|(… + a.P + …)|(… + a.Q + …)|...
→ ...|P|Q|...
• より一般的には
...|(… + a(x).P(x) + …)|(… + a(M).Q + …)|...
→ ...|P(M)|Q|...
通信
...|(… + a.P + …)|(… + a.Q + …)|...
→ ...|P|Q|...
...|(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))
|(a.Protein(a) + t.0)|...
→ ...|t.Gene(a,b)|Protein(a)|...
例
Gene(a,b)|Protein(a)
(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))|(a.Protein(a) + t.0)
→ t.Gene(a,b)|Protein(a)
→ Gene(a,b)|Protein(a)
(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))|(a.Protein(a) + t.0)
→ (t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))|0
(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))
→ Gene(a,b)|Protein(b)
(t.(Gene(a,b)|Protein(b)) + a.t.Gene(a,b))|(b.Protein(b) + t.0)
→ Gene(a,b)|Protein(b)|(b.Protein(b) + t.0)
確率π計算
Gene(a,b) := tt.(Gene(a,b)|Protein(b)) + a.tu.Gene(a,b)
Protein(b) := b.Protein(b) + td.0
チョイス
並列合成
自発的遷移
チャネルaからの入力
チャネルbへの出力 r(b)
チャネルbの速度
遅延遅延
遅延
プロセスの例
• トグル・スイッチ
Gene(a,b)|Gene(b,a)
• オシレータ
Gene(a,b)|Gene(b,c)|Gene(c,a)
例:遺伝子回路によるトグル・スイッチ
Tian et al. 2006
プロセスの例
• トグル・スイッチ
Gene(a,b)|Gene(b,a)
• オシレータ
Gene(a,b)|Gene(b,c)|Gene(c,a)
r(a) = r(b) = r(c) = 1.0t = 0.1d = 0.001u = 0.0001