シミュレーション技術と計算機科学

今日の夕方、JSTの「シミュレーション技術の革新と実用化基盤の構築」領域の打上げ会があります。7年ほど、アドバイザとしてお手伝いしました。というよりも、むしろ、各プロジェクト実施の研究者の方々から計算科学の実態をお教えいただいたように思います。これまでにも取り上げたことのある Parallelism-Oblivious Parallel Programming (POPP) という考え方が大事ではないかと思ったきっかけの一つだといえます。

余談になりますが、以前から、どうしようかと迷っていたのですが、Parallelism-Oblivious Programmingよりも、上に書いたPOPPのほうが誤解がないと考え、これからはPOPPにしようと思います。一月前、2010/2/16の「並列性忘却プログラミング」にもそのようなことを書きました。

モデル化を行ってシミュレーションによって物理的・化学的な現象を検証するというアプローチを「計算科学 (computational science) 」と呼ぶのが一般的でしょう。そこでは、スーパーコンピュータが活躍しますが、そのために(並列)プログラムを開発することが大きな課題となります。このような計算科学は、「理論」、「実験」に続く第3の研究方法論だそうです。科学の方法論には詳しくありませんので、このようなメタな議論には参加できません。しかし、シミュレーション技術が自然科学の方法論に影響を与えたことは分かります。

計算的手法による研究は多くの分野で一般的になってきています。いくらか抽象的ですが、計算科学を超えて(?)既存の知を高度に活用する第4の方法論として 「E-サイエンス (E-science) 」というものもあるそうです。目新しい用語に人が群がる姿はこれまでにも多くありましたが、ことばにしても概念にしても外国からの移入がほとんどです。E-サイエンスについては、計算科学とどこがどう違うのか、概念やねらいを正確に理解してから考えたいと思います。

このように、もう第4の足音が聞こえてきているところだそうですが、それでもなお、第3の方法論と言われる計算科学の核となるシミュレーション技術が多くの分野の研究を支えることはたしかでしょう。その基礎となるプログラム開発の手法、プログラミング方法論など、「計算機科学 (computer science) 」の研究が縁の下の力持ちとして支えることが大事だと思います。新たな方法論だけに向かうことだけでは困るでしょう。

今夕の打上げの後のことはまたいつか書くことにしたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください