2013年のノーベル化学賞は計算化学分野が受賞しました(ケムステ速報記事)。創薬の候補物質の決定やタンパク質の立体構造予測などをはじめとした、人の手では行えない分野においてコンピューター計算は大いに活躍しています。
しかしいくら計算が速いとはいっても万能とは言えません。例えば大きな計算にはかなりの時間を要するため、アルゴリズムやシステムをもっともっと改良していく必要があります(参考動画)。
この記事では、その解決策のひとつとして行われているボランティア・コンピューティングについて紹介したいと思います。[1]
世界中のコンピューターを使って計算を!グリッドコンピューティング
膨大な計算量をこなすためには何をすればいいでしょうか?順番を入れ替えても結果が変わらない計算では、並列化がスピードアップに大きく貢献します(すべての計算が並列計算可能というわけではありません)。
例えば1万点の商品が書かれた長いレシートがあったとします。その合計金額を1人で1万点計算していく作業と、100人が100点ごとに計算して最後に足し合わせる作業では、ど ちらが早く終わるでしょうか?計算量が多ければ多くなるほど、たくさんの人出、つまり並列化があれば計算が速くなっていくことが直感的に理解できると思います。
Folding@homeの登場
理化学研究所(理研)のスーパーコンピューター京が話題になったように、コンピューター計算には大きなお金がかかります。いくら並列化が早いといっても、台数を揃えるのは大変なことです。そこで出たアイデアが、世界中の家庭のパソコンを使って少しずつ計算を分担してもらおうという計画です。
2000年、シリコンバレーでお馴染みの場所にあるスタンフォード大学は「たんぱく質の折りたたみ構造解析」を行うため、Folding@homeというプロジェクトを立ち上げました。タスクをインターネットで配信し、一般家庭のパソコンのCPUやGPUが使われていない時間を利用して計算を行ってもらい、その結果を回収しようというものです。一時期PS3でも計算を行うことができたので、記憶に残っている読者がいるかもしれません。
このプロジェクトでは成果をいくつかの論文で発表していますが、例えば2002年のNatureに掲載された論文 [2] の謝辞には “We thank the Folding@Home volunteers whose processor power made this work possible” という参加者への感謝の文が添えられています。
Berkeley Open Infrastructure for Network Computing (BOINC) の開発
2005年、カリフォルニア大学バークレー校(UCバークレー)の研究グループはBerkeley Open Infrastructure for Network Computing (BOINC) というソフトウェアを公開しました。元々は宇宙から飛んでくる電波を解析して宇宙人を探すプロジェクトSETI@homeのためにグリッド・コンピューティングを独自で運用していたのですが、より汎用性が高く世界中の研究者が取り組むことができるシステムを目指し、オープンにしました。[3]
今日では宇宙人探索だけではなく、化学を含めたたくさんの研究に用いられています。この記事の一番はじめの画像は、BOINCを使って運用されているプロジェクトRosetta@homeが解析を行っているときに表示される画面をキャプチャーしたものです。なお、このグループが2011年にScienceで発表した論文の謝辞にも参加者について書かれています。[4]
BOINCが用いられたプロジェクトの特徴として、参加者を引き込もうとする工夫が挙げられます。例えば、いくつかのプロジェクトでは解析時のスクリーンセーバーが用意されていたり、素数を探すプロジェクトでは発見者の名前がデータベースに記録されます。解析した仕事の量はクレジットとして数字で評価されます(ただし大きさに応じて見返りがあるわけではありません)。ボランティアといえども、名誉的な仕組みがあると参加者は増えるようです。
BOINCを用いたプロジェクトへの参加は簡単で、WindowsやMacやLinuxのパソコンにソフトウェアをインストールして立ち上げ、プロジェクトを選ぶだけです。
パズルでたんぱく質の構造を決定!Foldit
近年話題になった「誰でも参加できる計算化学」といえばFolditでしょう(ケムステ記事)。正しくはグリッド・コンピューティングではありませんが、コンピューター計算では時間がかかる立体予測をネトゲ中毒者にパズル問題として出題して解かせよう!という新しい視点からのプロジェクトです。
Rosetta@homeと同じワシントン大学のデイヴィット・ベイカー(David Baker)らのグループが開発したこのプロジェクトは、2010年にNatureで発表した論文で著者にFoldit playersを含めたことから話題になりました(ケムステ記事)。[5] ゲーム自体もよく工夫されていて、かなりの参加者を抱えているようです。
ちなみにFoldit共同開発者のゾラン・ポポビッチ(Zoran Popovi?)の所属はCenter for Game Scienceだそうです。ゲーム科学なんて部門があるんですね。ポポビッチは2011年に「ゲームでまなぼう 分数」というタイトルで、教育コンテストに関する賞・日本賞における文部科学大臣賞を受賞しています。
これからはスマホでも計算可能!
近年のスマホやタブレットの普及により、パソコンの台数が減っていくという予測があります。これはグリッド・コンピューティングにおいては重大な問題です。
そこで研究者が打ち出した次なる手はスマホ対応。先日BOINCがAndroidに対応しました。iOSにも対応する予定だそうです。まだ対応しているプロジェクトは多くありませんが、今後増えていくことでしょう。
時代にキャッチアップしていく研究姿勢はスバラシイですね。
日本では?
なんだかスゴそうで未来を感じさせるグリッド・コンピューティングですが、日本ではほとんど知られていません。そもそも、日本発の研究プロジェクトがほとんどありません。
(私が知る中で)唯一参加できる日本発の研究は、千葉県がんセンターと千葉大学のグループが行っているファイト!小児がんプロジェクトです。IBMが推進しているWorld Community Gridのシステムを活用し、がん細胞の増殖を助けるたんぱく質分子を阻害する候補物質を絞り込むことで、神経芽腫の新しい治療薬の開発を目指しています。使用しているソフトウェアはやはりBOINCです。研究グループは、100年かかる計算を2年間で終わらせられると発表しています。
私は将来、グリッド・コンピューティングに対してノーベル賞が出ると考えています。ケムステ読者も、ファイト!小児がんプロジェクトや他のプロジェクトに参加してみてはいかがでしょうか?将来、自分はノーベル賞に関わっていたんだ!と胸を張れる日が来るかもしれません。
関連リンク
参考文献
- “Citizen science: People power”, 466, 685-687 (2010). doi:10.1038/466685a
- “Absolute comparison of simulated and experimental protein-folding dynamics”, C. D. Snow, H. Nguyen, V. S. Pande and M. Gruebele, Nature, 420, 102-106 (2002). doi:10.1038/nature01160
- “Alien search merges with other home projects”, D. Butler, Nature, published online (2005). doi:10.1038/news051212-10
- “Computational Design of Proteins Targeting the Conserved Stem Region of Influenza Hemagglutinin”, S. J. Fleishman, T. A. Whitehead, D. C. Ekiert, C. Dreyfus, J. E. Corn, E.-M. Strauch, Ian A. Wilson, D. Baker, Science, 332, 6031, 816-825 (2011). doi:10.1126/science.1202617
- “Predicting protein structures with a multiplayer online game”, S. Cooper, F. Khatib, A. Treuille, J. Barbero, J. Lee, M. Beenen, A. Leaver-Fay, D. Baker, Z. Popovi? and Foldit players, Nature, 466, 756-760 (2010). doi:10.1038/nature09304