これは機械翻訳であり、原文は英語です。 原文を読む
39都市には地球より多くのDNAが要る
候補の順序1通りにつきDNA鎖1本を割り当てる総当たりの経路探索は、20都市なら0.5グラムのDNAで足りる。39都市では地球の質量を超える。
1994年、レオナルド・エーデルマンは組合せ問題を試験管のなかで溶かした。7都市の道路網を短いDNA鎖として符号化し、網が許すあらゆる経路になるまでアニールさせ、そのスープを、各都市をちょうど一度ずつ通る経路だけに絞り込んだ。答えは小瓶から沈殿してきた。学生が紙の上で1分で解く問題に、実験室の作業でおよそ1週間かかっている。そこは問題ではない。10¹⁴ ほどの鎖が、指二本でつまめる体積のなかで、同時にそれぞれ一つの経路を試していたのである。
見込みは明白で、途方もなかった。指数的な探索が難しいのは候補が爆発するからで、ここにあったのは全候補を一度に見る機械だった。30年後、ポケットのなかにDNAで動くものは何ひとつない。理由は工学ではなく、封筒の裏でできる算数である。
鎖を数え、それから量る
分子の並列性は、分子1個ずつ買うものである。候補にはそれぞれ実体としての鎖が要るので、必要なDNAは候補の個数に鎖1本の質量を掛けたものになる。
二つ目の因子はきわめて小さい。一本鎖DNAは塩基1モルあたりおよそ330グラムなので、1都市あたり20塩基とすれば、20都市ぶんの鎖1本はおよそ 2 × 10⁻¹⁹ グラムになる。一つ目の因子は階乗であり、階乗は二つ目の因子がどれだけ小さかろうと意に介さない。
20都市なら 0.53グラム。ひとつまみの粉である。
30都市なら 8.7 × 10¹³ グラム。8700万トン、いま生きている人間全員の質量にほぼ等しい。
39都市なら 地球の質量を超える。
「ひとつまみ」と「惑星」を隔てているのは9都市である。DNA Computing Scale が文章ではなくスライダーになっているのはそのためだ。1都市ずつ上げていき、単位がミリグラムから惑星へ変わるのを見ることには、指数を読むだけでは起きないことが起きる。
誰も n! 通りの順序をすべて数え上げたりはしない、というのが当然の反論だろう。出発する都市を固定し、巡回路とその鏡像を別々に数えないことにすれば、個数は 2n で割れる。やってみると、境目は39都市から41都市へ動く。対称性の群を丸ごと使って得られる見返りは、これで全部である。2都市ぶん。
「並列化は計算量クラスを変えない」というのは、具体的にはこういうことだ。エーデルマンの試験管が買った加速はおよそ 10¹⁴ 倍で、驚くべき数ではあるが、それでも定数である。階乗は 10¹⁴ を平らげて次の皿を求める。試験管を倍にして買えるのは、1都市に満たない。
同じ壁に、反対側からぶつかる
生物学はこの論法に先に到達し、正反対の結論を示すために使った。
1969年、サイラス・レヴィンタールは、タンパク質がどうやって自分の形を見つけるのかを問うた。100残基の鎖をとり、各接合部に向きを3通りしか許さないとする。ひどい過小評価である。それでも 3¹⁰⁰、およそ 5 × 10⁴⁷ 通りの立体配座になる。鎖が 10⁻¹³ 秒ごとに一つずつ試すとしよう。分子の振動ほどの速さで、物理が許すおおよその限界である。すべてを試すには 1.6 × 10²⁷ 年、現在の宇宙年齢の 10¹⁷ 倍かかる。
タンパク質はミリ秒で折りたたまれる。
レヴィンタールのパラドックスは、速く折りたたまれることの謎ではない。折りたたみが探索ではないことの証明である。エネルギー地形は立体配座の平らな抽選ではなく漏斗であり、漏斗のなかの鎖が 10⁴⁷ 個の選択肢から選んでいることはない。落ちているのである。持ち帰る値打ちがあるのは、その漏斗に必要な傾きがどれほど小さいかで、1992年にズワンツィヒ、サボー、バグチがこれを精密にした。単純なモデルをとり、局所的に不利な配置に対して数 kT 程度のエネルギー的な偏りがあれば、レヴィンタールの時間を生物学的に妥当な大きさまで縮めるのに足りることを示している。巧妙なアルゴリズムではなく、ただの傾きだ。
Levinthal Paradox Explorer で残基数と残基あたりの状態数を動かし、この数が常識的な大きさになることをどれほど激しく拒むかを見てほしい。残基あたりの状態を3から2に減らせば 10¹⁷·⁶ 倍の得になるが、それでも100残基の鎖には宇宙年齢のかなりの割合が必要なままだ。底は一度払えば済む。指数は残基ごとに請求してくる。
二つの議論を並べてみよう。同じ算数だからである。タンパク質は自分の立体配座を数え上げられない。試験管は自分の経路を数え上げられない。自然が出した答えは、数え上げをやめ、漏斗として働く地形をつくることだった。DNAコンピューティングが出した答えは、より多くの分子を使い、並列に、もっと激しく数え上げることであり、それこそがこの勘定の禁じている手である。
残るもの
以上のことは分子計算を袋小路にはしない。売り文句のほうを間違いにするのであって、それは別の話である。そして正直な売り文句のほうが、よい売り文句だ。
まずエネルギーから。ランダウアーは1961年、1ビットを不可逆に消去するには少なくとも kT ln 2 を散逸させなければならないことを示した。体温では 3.0 × 10⁻²¹ ジュールである。製造技術ではなく熱力学が定める下限である。生物が実際に使う通貨であるATPの加水分解1回が放出するのは kT のおよそ20倍、8.6 × 10⁻²⁰ ジュール、下限の 29倍にあたる。良質なCMOSでの論理演算1回はフェムトジュール近くを要し、これは下限の 337,000倍である。
分子的事象 ≈ 29 × kT ln 2 · シリコンの論理演算 ≈ 337,000 × kT ln 2
4桁の差であり、シリコンにとって都合の悪い側に開いている。生物は速い計算機ではなく、熱力学的にほぼ最適な計算機であって、単一の分子的事象が理論的な最小値から kT の数十倍のところに収まる温度で動いている。Energy per Operation で温度と1演算あたりのエネルギーを設定すれば、この隔たりはもう見なかったことにはできない。
次に記憶。経路ではなく塩基にデータを符号化すると、総当たりを馬鹿げたものにしていた密度が、そのまま売りになる。1グラムあたりおよそ 3 × 10²⁰ バイト。これまでに公開された映画のすべてが角砂糖より小さい体積に収まり、暗所で何世紀も安定し、置いておくのに電力を要しない。DNA Data Storage は実際のオーバーヘッド、すなわち索引、プライマー結合部位、同じ塩基が長く続くのを避ける符号を織り込んでおり、密度はそれらをゆうゆうと生き延びる。
探索エンジンとしてのDNAを殺す指数は、それを並外れた書庫にする指数と同じものである。探索は候補1つにつき分子1個を要し、候補は階乗で増える。保存はデータ1つにつき分子1個を要し、データは線形に増える。化学も密度も同じで、判定は逆になる。違うのは、どちらの量を大きくしてくれと頼んだかだけだ。
役に立つのは論法の形
大規模な並列性を差し出されたら、その並列性が何に掛かるのかを問うとよい。指数が相手なら、定数がどれほど大きかろうと関係ない。相手が階乗であるとき、10¹⁴ と 10²³ は同じ数である。エーデルマンの実験は分子スーパーコンピュータの初期試作機ではなく、定数倍の見事な実演だった。この分野の誤りは、定数を傾きとして読んだことにある。
レヴィンタールは同じ勘定をして、ただちに正しい結論を引き出した。何も売ろうとしていなかったからである。勘定が不可能なら、想定した仕組みのほうが違う。探索という筋書きが消えたあとに残ったもの、すなわち事象あたりのほぼ最適なエネルギーと、1グラムあたりのばかげた密度は、本当によい手札である。探索の筋書きが卓に載っているあいだ、誰もそれを二度見しなかっただろう。