現在位置: ホーム torrent No.5 日本語版 DCの開発者・小林さんに聞く

DCの開発者・小林さんに聞く

アプリケーション開発の最前線から 第4回

 

「困難は分割せよ」とデカルトは述べている。
「分割統治」の考え方は古くから政治などさまざまな分野で使われてきたが、近年では大規模系の計算手法、特に電子状態計算の高速化のために応用されている。分割統治法を研究してきた小林さんは、さらに精度を上げるため、電子相関を取り込むことに挑戦。独自のアイデアで新しいソフトウェアDCの開発に成功した。

量子化学計算とコンピュータ

「実験をして、銅イオンの青い色が現れる、というのは確かに魅力的です。でも、なぜ青いか、ということはなかなか知ることができない。そういうファンダメンタルなことを量子化学によって理解できる。そこに惹かれました」。小林さんが量子化学の道を選んだ理由はここにある。
すべての物質の構造や性質を決めているのは、電子や原子核のふるまい。それを理論的に説明づけるのが量子化学だ。電子状態、つまり電子の密度、エネルギー状態、スピンなどはシュレーディンガー方程式を解くことにより計算できる。実際には、多数の電子と原子核からなる多体系の方程式を厳密に解くことは不可能なので、近似を使って計算することになる。
とはいえ、物質の性質を十分に再現できるような精度の高い近似計算をするには、「京」のような計算能力の高いコンピュータを使っても、莫大な時間がかかる。原子数をNとすると、N⁵からN⁷に比例して計算時間が長くなる。例えば、原子1個について計算するのに1秒かかるコンピュータがあるとしよう。その場合、原子2個からなる物質の計算にかかる時間は30秒から2分ほどだが、原子100個だと300年から300万年もかかってしまう。
このように膨大な計算時間を短縮するためには、ハードウェアの進歩だけでは十分ではない。まったく新しい近似計算の理論と、最新のハードウェアを十分に使いこなせるソフトウェアの開発が大きな鍵となる。それが分割統治法とそれに基づくプログラムDCだ。

「困難は分割せよ」

「分割統治(Divide and Conquer)法」というのは、そのままでは計算できない問題を小さな部分に分割して解くという考え方を指す。量子化学における分割統治法では、大きな分子を分割して、それぞれについて計算を行い、最後に足し合わせる。
発想はシンプルだが、実際にはさまざまな工夫が必要である。まず、対象となる分子を重なりのないいくつかの領域に分割する。そのままでは周りの領域の影響が計算に含まれず、精度が低くなってしまうため、周辺の原子をバッファ領域として付け加えた部分を、別々に計算する(図1)。そしてバッファ領域分が重複しないように足し合わせる。このようにして得られた電子密度が空間の各点で一定の値に収束するまでくりかえす。
分割統治法では、このように全系を大きさ一定の部分系に分割して計算を行うので、計算時間はNに比例する。先ほどの例で言うと、原子100個の計算が100秒でできるようになる。さらに、それぞれの部分系の計算は独立しているので、「京」のような多数の計算ノードからなる現代のスーパーコンピュータを用いて効率的に並列計算を行うことができる。分割統治法には、部分系を小さくして、たとえ1原子ごとに分けたとしても、精度があまり落ちないという特徴もある。小林さんはそこに注目して、誰もが簡単に使えるソフトウェアをつくろうと考えた。

「エネルギー密度解析」との出会い

より高い精度の計算を行うためには、「電子相関」の効果を取り入れる必要がある。従来の分割統治法では、電子と電子の間にはたらく相互作用を平均化している。その平均化した相互作用と厳密なものとの差を「相関エネルギー」と呼ぶ。
しかし、電子相関を取り込んだ計算に分割統治法を用いるには大きな問題が1つあった。従来の分割統治法から得られるのは、バッファ領域を含んだ部分系ごとの相関エネルギーなので、単純に足し合わせると二重に計算されてしまう。その問題の解決が不可欠だった。
小林さんは、ある日研究室のゼミで「エネルギー密度解析(Energy Density Analysis;EDA)」についての発表を聞いた。そのとき、分割統治法にエネルギー密度解析を採り入れるというアイデアがひらめいた。
エネルギー密度解析というのは、分子全体のエネルギーを、個々の原子に割り当てる解析手法である。小林さんは、このエネルギー密度解析の手法を使うことによって、バッファ領域を含まない個々の領域の相関エネルギーを導き出せるのではないかと考えた。それらを足し合わせることにより、相関エネルギーも、Nに比例した計算時間で求められることになる。これが、小林さんの開発したEDA分割統治法である。
「EDAのような解析の考え方を計算理論に使うというのは、物理学的には禁じ手かもしれません。それだけに実際うまく行くか不安も大きかったです。でも、いくつかの方法を試してみましたが、エネルギー密度解析を用いる方法がいちばん精度が高く、計算時間も短かかったんです」、と小林さん。

より大きな系を、より高精度に

エネルギー密度解析と分割統治法を組み合わせることによって、電子相関を含んだ精度の高い計算が、短い時間でできるようになった。この手法は、電子が局在しておらず、あちこち動きまわっているような物質を調べるのに向いている。「京」コンピュータを使えば、ナノサイズの物質の超高精度計算にも手が届く。例えば、有機太陽電池の発電効率には、その中で電荷を運ぶペンタセンなどの電気的な性質が大きく影響する。分割統治法を用いて電荷の動きやすさを計算することで、より高い効率をもつ太陽電池材料のデザインも可能となりつつある。
それだけではない。エネルギー密度解析によって領域ごとの相関エネルギーが計算できるので、ここの相互作用が大きいとか、ここは結合が切れそうで不安定だとかいったことを直接解析できるのだ。例えば、HIV(エイズウイルス) とその活動を抑える逆転写酵素阻害剤がどのように結合しているのかを詳しく調べることができる(図2)。将来的には、このような情報を用いて、より強力にはたらく薬の開発を安全に進め、コストを大幅に削減できるようになるだけでなく、副作用の予見も可能となるかもしれない。
現在、EDA分割統治法ソフトウェアDCは、フリーウェアとして一般に公開されている。世界一使われている量子化学計算のためのフリーソフトウェアGAMESSに、オプションとして組み込まれているのだ。小林さんは、GAMESSをカスタマイズすることにより自身の手法を実装して仲間内で使っていた。それをより多くの人に使ってもらおうと、GAMESSを管理しているアイオワ州立大学にコンタクトを取り、正式採用されたのである。
さらに最近、「京」への挑戦がはじまったばかりだ。「京」コンピュータは64万ものコアからなっている。「これまでのスーパーコンピュータとはまったく違うので、ソフトウェアに特別なチューニングが必要です。まだいくつものハードルがあります。これからの課題ですね」と小林さん。むしろ楽しげな口調が印象的だった。