計算科学(サイエンティフィックコンピューティング、テクニカルコンピューティング、またはサイエンティフィックコンピューティング(SC )とも呼ばれる)は、科学、特にコンピュータサイエンスの一分野であり、高度なコンピューティング能力を用いて科学における複雑な物理的問題を理解し、解決する分野です。これは通常、計算の専門分野にまで及びますが、この研究分野には以下が含まれます。
- アルゴリズム(数値および非数値):科学(物理学、生物学、社会学など)、工学、人文科学の問題を解決するために開発された数学モデル、計算モデル、およびコンピュータシミュレーション
- 計算的に要求の厳しい問題を解決するために必要な高度なシステムハードウェア、ファームウェア、ネットワーク、およびデータ管理コンポーネントを開発および最適化するコンピュータハードウェア
- 科学と工学の問題解決とコンピュータと情報科学の発展の両方をサポートするコンピューティングインフラストラクチャ
実用的には、コンピュータシミュレーションや数値解析、理論計算機科学などの計算手法を応用して、さまざまな科学分野の問題を解決することが一般的です。この分野は、科学や工学の伝統的な形式である理論や実験室実験とは異なります。科学計算のアプローチは、コンピュータ上に実装された数学モデルの解析を通じて理解を深めることです。科学者やエンジニアは、研究対象のシステムをモデル化するコンピュータプログラムやアプリケーションソフトウェアを開発し、さまざまな入力パラメータのセットを使用してこれらのプログラムを実行します。計算科学の本質は、数値アルゴリズム[ 1 ]と計算数学の応用です。場合によっては、これらのモデルは膨大な量の計算(通常は浮動小数点)を必要とし、スーパーコンピュータや分散コンピューティングプラットフォームで実行されることがよくあります。
計算科学者

計算科学者という用語は、科学計算に熟練した人を指すために使用されます。そのような人は通常、科学者、エンジニア、または応用数学者であり、高性能コンピューティングをさまざまな方法で応用して、それぞれの応用分野における最先端技術を進歩させます
計算科学は現在、実験/観察と理論を補完し、追加する第3の科学モードであると一般的に考えられています(画像を参照)。[ 2 ]ここでは、システムを潜在的なデータソース、[ 3 ]実験を入力を通じてシステムからデータを抽出するプロセス、[ 4 ]システム( S )のモデル(M )と実験(E )を、 Sに関する質問に答えるためにEを適用できるものとして定義します。[ 5 ]計算科学者は次のことができる必要があります。
- 複雑な問題を認識する
- これらの問題を含むシステムを適切に概念化する
- このシステムを研究するのに適したアルゴリズムのフレームワークを設計する:シミュレーション
- 適切なコンピューティングインフラストラクチャの選択(並列コンピューティング/グリッドコンピューティング/スーパーコンピュータ)
- これにより、シミュレーションの計算能力が最大化される
- シミュレーションの出力がシステムにどの程度似ているかを評価する:モデルは検証される
- それに応じてシステムの概念化を調整する
- 適切なレベルの検証が得られるまでサイクルを繰り返す。計算科学者は、シミュレーションが研究された条件下でシステムに対して十分に現実的な結果を生成すると信頼する。
計算科学においては、アルゴリズムの開発、プログラミング言語への効率的な実装、そして計算結果の検証に多大な努力が注がれてきました。計算科学における問題と解決策の集積は、Steeb, Hardy, Hardy, and Stoop (2004) に示されています。[ 6 ]
科学哲学者、特にハンフリーズ[ 7 ]やゲルファート[ 8 ]は、「計算科学はどの程度科学と言えるのか」という問いに取り組みました。彼らは認識論の一般的な問い、すなわち、計算科学のアプローチからどのような洞察が得られるのかという問いに取り組んでいます。トルク[ 9 ]はこれらの洞察を用いて、コンピュータベースのシミュレーション研究の認識論的制約を示しています。計算科学は、基礎となる理論を実行可能な形式で表現する数理モデルを使用するため、本質的には、モデリング(理論構築)とシミュレーション(実装と実行)を適用します。シミュレーションと計算科学は、私たちの知識と理解を表現する最も洗練された方法ですが、計算ソリューションにすでに知られているすべての制約と限界も伴います。
計算科学の応用
計算科学/科学計算の問題領域には以下が含まれます。
予測計算科学
予測計算科学は、初期条件と境界条件、一連の特性パラメータと関連する不確実性に基づいて、物理的事象の特定の側面を予測するために設計された数学モデルの定式化、較正、数値解法、および検証を扱う科学分野です。[ 10 ]典型的なケースでは、予測ステートメントは確率の観点から定式化されます。例えば、機械部品と周期的な荷重条件が与えられた場合、「破損時のサイクル数(Nf)がN1<Nf<N2の区間にある確率は(例えば)90%である」とします。[ 11 ]
都市の複雑系
都市は、人間によって創造され、人間で構成され、人間によって統治される、極めて複雑なシステムです。将来の都市の発展を予測し、理解し、そして何らかの形で形作るためには、複雑な思考と計算モデル、そしてシミュレーションが不可欠です。それらは、課題や起こりうる災害を軽減するのに役立ちます。都市複雑システムの研究は、モデリングとシミュレーションを通じて、都市のダイナミクスをより深く理解し、来たる都市化への備えを支援することに重点を置いています。
計算金融
金融市場では、膨大な量の相互依存的な資産が、異なる場所や時間帯で相互作用する多数の市場参加者によって取引されています。それらの行動は前例のないほど複雑であり、この非常に多様な金融商品に内在するリスクの特性評価と測定は、通常、複雑な数学モデルと計算モデルに基づいています。これらのモデルを閉形式で正確に解くことは、単一の金融商品レベルであっても通常は不可能であるため、効率的な数値アルゴリズムを探す必要があります。信用危機によって、単一の金融商品から単一の機関のポートフォリオ、さらには相互接続された取引ネットワークにまで及ぶ連鎖的な影響の役割が明確になったため、これは最近さらに緊急かつ複雑になっています。これを理解するには、市場リスク、信用リスク、流動性リスクなどの相互依存的なリスク要因を、異なる相互接続されたスケールで同時にモデル化する、マルチスケールで全体論的なアプローチが必要です
計算生物学
バイオテクノロジーの刺激的な新開発は、現在、生物学および生物医学研究に大変革をもたらしています。これらの技術の例には、ハイスループットシーケンシング、ハイスループット定量PCR、細胞内イメージング、遺伝子発現のin situハイブリダイゼーション、光シート蛍光顕微鏡などの3次元イメージング技術、および光投影(マイクロ)コンピュータ断層撮影などがあります。これらの技術によって生成される膨大な量の複雑なデータを考えると、その意味のある解釈、さらには保存さえも、新しいアプローチを必要とする大きな課題となっています。現在のバイオインフォマティクスのアプローチを超えて、計算生物学はこれらの大規模なデータセットで意味のあるパターンを発見するための新しい方法を開発する必要があります。遺伝子ネットワークのモデルに基づく再構築を使用して、遺伝子発現データを体系的に整理し、将来のデータ収集を導くことができます。ここでの主な課題は、遺伝子調節がバイオミネラリゼーションや胚発生などの基本的な生物学的プロセスをどのように制御しているかを理解することです。遺伝子制御、鉱物沈着プロセスと相互作用する有機分子、細胞プロセス、生理機能、そして組織レベルや環境レベルのその他のプロセスといったサブプロセスは相互に関連しています。バイオミネラリゼーションと胚形成は、中央制御機構によって制御されるのではなく、ナノメートルやナノ秒からメートルや年まで、時間的・空間的に非常に異なる複数のサブプロセスがマルチスケールシステムとして連結された複雑なシステムから生じる創発的な行動と捉えることができます。このようなシステムを理解するための数少ない選択肢の一つは、システムの マルチスケールモデルを開発することです。
複雑系理論
情報理論、非平衡力学、そして明示的シミュレーションを用いて、 計算システム理論は複雑適応システムの本質を明らかにしようとします
計算科学と工学
計算科学工学(CSE)は、比較的新しい分野であり、計算モデルとシミュレーションの開発と応用を扱う。多くの場合、高性能コンピューティングと組み合わせて、工学解析・設計(計算工学)や自然現象(計算科学)で生じる複雑な物理的問題を解決する。CSEは、科学者、技術者、そして学術界において、「理論と実験に次ぐ第三の発見モード」として認められている。[ 12 ]多くの分野において、コンピュータシミュレーションは不可欠であり、ビジネスや研究に不可欠である。コンピュータシミュレーションは、従来の実験ではアクセスできない分野、あるいは従来の経験的調査を行うには費用がかかりすぎる分野に参入する能力を提供する。CSEは純粋なコンピュータサイエンスやコンピュータエンジニアリングと混同されるべきではない。ただし、CSEでは前者の広範な領域(例えば、特定のアルゴリズム、データ構造、並列プログラミング、高性能コンピューティング)が使用され、後者の一部の問題はCSE手法を用いてモデル化・解決できる(応用分野として)。
方法とアルゴリズム
計算科学で使用されるアルゴリズムと数学的手法は多岐にわたります。一般的に適用される方法には以下のものがあります
歴史的にも現在でも、Fortranは科学計算のほとんどの用途で人気があります。[ 32 ] [ 33 ]科学計算用途のより数学的な側面でよく使用される他のプログラミング言語と数式処理システムには、 GNU Octave、Haskell、[ 32 ] Julia、[ 32 ] Maple、[ 33 ] Mathematica、[ 34 ] [ 35 ] [ 36 ] [ 37 ] [ 38 ] MATLAB、[ 39 ] [ 40 ] [ 41 ] Python(サードパーティのSciPyライブラリを使用[ 42 ] [ 43 ] [ 44 ])、Perl(サードパーティのPDLライブラリを使用)、R、[ 45 ] Scilab、[ 46 ] [ 47 ] TK Solverなどがあります。科学計算において、より計算負荷の高い側面では、C言語やFortran言語の派生言語や、 BLASやLAPACKといった最適化された代数ライブラリが用いられることが多い。さらに、科学計算では、大規模な問題を妥当な時間内に解くために、並列計算が多用されている。このフレームワークでは、問題は単一のCPUノード上の複数のコアに分割されるか( OpenMPなど)、ネットワーク接続された多数のCPUノードに分割されるか(MPIなど)、1つ以上のGPU上で実行されるか(通常はCUDAまたはOpenCLのいずれかを使用)、のいずれかの方法で実行される。
計算科学アプリケーションプログラムは、天候、飛行機周りの気流、衝突時の車体の歪み、銀河系内の星の運動、爆発装置など、現実世界の変化する状況をモデル化することがよくあります。このようなプログラムは、コンピュータメモリ内に「論理メッシュ」を作成します。このメッシュでは、各項目が空間内の領域に対応し、モデルに関連するその空間の情報が含まれます。たとえば、気象モデルでは、各項目は 1 平方キロメートルで、土地の標高、現在の風向、湿度、温度、気圧などが含まれます。プログラムは、シミュレートされた時間ステップで、システムの動作を記述する微分方程式を解き、現在の状態に基づいて次の状態の可能性を計算し、このプロセスを繰り返して次の状態を計算します。
人工知能
会議とジャーナル
2001年に国際計算科学会議(ICCS)が初めて開催されました。それ以来、毎年開催されています。ICCSはCOREランキングでAランクの会議です。[ 50 ]
『計算科学ジャーナル』は2010年5月に創刊号を発行した。[ 51 ] [ 52 ] [ 53 ]『オープンリサーチソフトウェアジャーナル』は2012年に創刊された。[ 54 ]計算結果の再現に特化したReScience Cイニシアチブは2015年にGitHubで開始 された。[ 55 ]
教育
一部の教育機関では、科学計算の専門分野を他のプログラム(様々なレベル)の「副専攻」として取得することができます。しかし、計算科学の学士、修士、博士課程はますます増えています。アムステルダム大学と自由大学の計算科学共同学位プログラムである計算科学修士課程は、2004年に初めて提供されました。このプログラムでは、学生は以下のことを学びます。
- 現実の観察から計算モデルを構築する方法を学ぶ。
- これらのモデルを計算構造に変換し、大規模なシミュレーションを実行するスキルを開発する。
- 複雑なシステムの分析に確固たる基盤を与える理論を学ぶ。
- 高度な数値アルゴリズムを使用して仮想実験室でシミュレーションの結果を分析する方法を学びます。
ETHチューリッヒは、計算科学と工学の学士号と修士号を提供しています。この学位は、科学的問題を理解し、数値的手法を用いてそれらの問題を解決する能力を学生に身につけさせます。専門分野には、物理学、化学、生物学、その他の科学・工学分野が含まれます。
ミシガン大学の科学計算の博士課程は1988年に設立されました。[ 56 ]ジョージメイソン大学は1992年から計算科学と情報科学の学際的な博士課程を提供しています。[ 57 ]
ジャワハルラール・ネルー大学計算統合科学学部(旧情報技術学部[ 58 ] )では、計算生物学と複雑系という2つの専門分野を持つ計算科学の活発な修士課程も提供しています。[ 59 ]
サブフィールド
参照
- 計算科学と工学
- モデリングとシミュレーション
- コンピュータ代数システムの比較
- 微分可能計画法
- 分子モデリングソフトウェアの一覧
- 数値解析ソフトウェア一覧
- オープンソースの科学ソフトウェアパッケージの一覧
- 科学ソフトウェアのリスト
- 統計パッケージのリスト
- 科学計算のタイムライン
- シミュレーテッドリアリティ
- 科学計算のための拡張機能(XSC)
参考文献
- ^ノンワイラーTR、1986年。計算数学:数値近似入門、ジョン・ワイリー・アンド・サンズ
- ^計算科学および工学のための大学院教育.Siam.org、産業応用数学協会(SIAM)のウェブサイト。2012年2月にアクセス。
- ^ Siegler, Bernard (1976).モデリングとシミュレーションの理論.
- ^セリエ、フランソワ (1999)。継続的なシステムモデリング。
- ^ミンスキー、マーヴィン (1965).モデル、心、機械.
- ^ Steeb W.-H.、Hardy Y.、Hardly A.、Stoop R.、2004年。C++とJavaシミュレーションによる科学計算の問題と解決策、World Scientific Publishing。ISBN 981-256-112-9
- ^ハンフリーズ、ポール.『我々の拡張:計算科学、経験主義、そして科学的方法』オックスフォード大学出版局、2004年
- ^ゲルフェルト、アクセル. 2018.『モデルを用いた科学の実践:哲学入門』シュプリンガー社.
- ^ Tolk, Andreas. 「間違ったモデルから正しいことを学ぶ:シミュレーションの認識論」L. Yilmaz編『モデリングとシミュレーションの概念と方法論』87-106頁、Cham: Springer International Publishing, 2015年。
- ^ Oden, JT, Babuška, I. and Faghihi, D., 2017. 「予測的計算科学:不確実性が存在する状況におけるコンピュータ予測」計算力学百科事典。第2版、pp. 1-26。
- ^ Szabó B, Actis R, Rusk D. ノッチ感度係数の検証. 検証・検証・不確実性定量化ジャーナル. 4 011004, 2019
- ^ 「計算科学・工学プログラム:大学院生ハンドブック」(PDF) . cseprograms.gatech.edu . 2009年9月. 2014年10月14日時点のオリジナル(PDF)からアーカイブ。 2017年8月26日閲覧。
- ^ Von Zur Gathen, J.、Gerhard, J. (2013).現代のコンピューター代数。ケンブリッジ大学出版局。
- ^ Geddes, KO, Czapor, SR, & Labahn, G. (1992). コンピュータ代数のためのアルゴリズム. Springer Science & Business Media.
- ^ Albrecht, R. (2012). コンピュータ代数:記号計算と代数計算(第4巻). Springer Science & Business Media.
- ^ミグノット, M. (2012). コンピュータ代数のための数学. シュプリンガー・サイエンス&ビジネス・メディア.
- ^ Stoer, J., Bulirsch, R. (2013). 数値解析入門. Springer Science & Business Media.
- ^ Conte, SD, & De Boor, C. (2017). 初等数値解析:アルゴリズム的アプローチ.応用数学協会.
- ^ Greenspan, D. (2018). 数値解析. CRC Press.
- ^ Linz, P. (2019). 理論数値解析. Courier Dover Publications.
- ^ Brenner, S., & Scott, R. (2007). 有限要素法の数学的理論 (第15巻). Springer Science & Business Media.
- ^ Oden, JT, & Reddy, JN (2012). 有限要素法の数学的理論入門. Courier Corporation.
- ^ Davis, PJ, & Rabinowitz, P. (2007). 数値積分法. Courier Corporation.
- ^ Peter Deuflhard, 非線形問題に対するニュートン法。アフィン不変性と適応アルゴリズム、第2版。計算数学シリーズ35、Springer (2006)
- ^ Hammersley, J. (2013). モンテカルロ法. Springer Science & Business Media.
- ^ MH 州カロス、ペンシルベニア州ウィットロック (2009)。モンテカルロ法。ジョン・ワイリー&サンズ。
- ^ Demmel, JW (1997). 応用数値線形代数. SIAM .
- ^ Ciarlet, PG, Miara, B., Thomas, JM (1989). 数値線形代数と最適化入門. ケンブリッジ大学出版局.
- ^ Trefethen, Lloyd; Bau III, David (1997). 数値線形代数(第1版). フィラデルフィア: SIAM .
- ^ Vanderbei, RJ (2015). 線形計画法. ハイデルベルグ: シュプリンガー.
- ^ Gass, SI (2003). 線形計画法:手法と応用. Courier Corporation.
- ^ a b c Phillips, Lee (2014年5月7日). 「科学計算の未来:1950年代の巨大言語を超えるプログラミング言語は存在するか?」 Ars Technica . 2016年3月8日閲覧。
- ^ a b Landau, Rubin (2014年5月7日). 「科学計算入門」(PDF) . プリンストン大学. 2016年3月8日閲覧。
- ^ Mathematica 6 Archived 2011-01-13 at the Wayback Machine Scientific Computing World, 2007年5月
- ^ Maeder, RE (1991). Mathematicalaによるプログラミング. Addison-Wesley Longman Publishing Co., Inc.
- ^ Stephen Wolfram. (1999). The MATHEMATICA® book, version 4. Cambridge University Press .
- ^ Shaw, WT, & Tigg, J. (1993). Applied Mathematica: 始めよう、やってみよう. Addison-Wesley Longman Publishing Co., Inc.
- ^ Marasco, A., Romano, A. (2001). 『Mathematicaによる科学計算:常微分方程式の数学的問題集』(CD-ROM付き) Springer Science & Business Media .
- ^ Quarteroni, A., Saleri, F., Gervasio, P. (2006). MATLABとOctaveによる科学計算. ベルリン: Springer.
- ^ Gander, W., & Hrebicek, J. (編). (2011). MapleとMatlab®を用いた科学計算における問題解決. Springer Science & Business Media .
- ^ Barnes, B., & Fulford, GR (2011). ケーススタディによる数学モデリング:MapleとMATLABを用いた微分方程式アプローチ. Chapman and Hall/CRC.
- ^ Jones, E., Oliphant, T., & Peterson, P. (2001). SciPy: Python用オープンソース科学ツール.
- ^ Bressert, E. (2012). SciPyとNumPy:開発者向け概要. O'Reilly Media, Inc.
- ^ Blanco-Silva, FJ (2013). 数値計算と科学計算のためのSciPyの学習. Packt Publishing Ltd.
- ^ Ihaka, R., Gentleman, R. (1996). R: データ分析とグラフィックスのための言語. 計算統計学およびグラフィカル統計ジャーナル, 5(3), 299-314.
- ^ Bunks, C., Chancelier, JP, Delebecque, F., Goursat, M., Nikoukhah, R., & Steer, S. (2012). Scilabによるエンジニアリングと科学計算. Springer Science & Business Media .
- ^ Thanki, RM, Kothari, AM (2019). SCILABを用いたデジタル画像処理. Springer International Publishing.
- ^ 「EUにおける科学分野における人工知能の成功とタイムリーな導入 – 科学的助言メカニズム」 。 2024年4月16日閲覧。
- ^ 「AIの科学的エビデンスレビュー報告書 - 科学的助言メカニズム」 。 2024年4月16日閲覧。
- ^ 「ICCS - 国際計算科学会議」2022年1月21日閲覧。
- ^ Sloot, Peter; Coveney, Peter; Dongarra, Jack (2010). 「Redirecting」. Journal of Computational Science . 1 (1): 3– 4. doi : 10.1016/j.jocs.2010.04.003 .
- ^セイデル, エドワード; ウィング, ジャネット M. (2010). 「リダイレクト」.計算科学ジャーナル. 1 (1): 1– 2. doi : 10.1016/j.jocs.2010.04.004 . S2CID 211478325 .
- ^ Sloot, Peter MA (2010). 「計算科学:万華鏡のような科学の視点」. Journal of Computational Science . 1 (4): 189. doi : 10.1016/j.jocs.2010.11.001 .
- ^ 「Announcing the Journal of Open Research Software - a software metajournal」 . software.ac.uk . 2021年12月31日閲覧。
- ^ルージェ、ニコラス P.;ヒンセン、コンラッド。アレクサンドル、フレデリック。アリルドセン、トーマス。バーバ、ロレーナ A.ベヌロー、ファビアン CY;ブラウン、C. タイタス。ビュイル、ピエール・ド。カグラヤン、オザン。デイヴィソン、アンドリュー P.デルサック、マルク=アンドレ。デトラキス、ゲオルギオス。ディエム、アレクサンドラ K.ドリックス、ダミアン。エネル、ピエール。ジラール、ブノワ。ゲスト、オリビア。ホール、マット G.エンリケス、ラファエル N.ヒノー、ザビエル。ジャロン、カミル S.ハマッシ、メディ。クライン、アルマー。マンニネン、ティナ。マルケージ、ピエトロ。マクグリン、ダニエル。メッツナー、クリストフ。ペッチェイ、オーウェン。プレッサー、ハンス・エッケハルト。ティモシー・ポワゾット; カルティク・ラム; ヨアブ・ラム; エティエンヌ・ロッシュ; シリル・ロサント; ヴァヒド・ロスタミ; アーロン・シフマン; ジョセフ・スタチェレク; マルセル・スティムバーグ; フランク・ストールマイヤー; フェデリコ・ヴァッジ; ギヨーム・ヴィエホ; ジュリアン・ヴィタイ; アーニャ・E・ヴォスティナー; ローマン・ユルチャク; ティツィアーノ・ジト (2017年12月). 「持続可能な計算科学:ReScienceイニシアチブ」 . PeerJ Comput Sci . 3. e142. arXiv : 1707.04393 . Bibcode : 2017arXiv170704393R . doi : 10.7717/peerj-cs.142 . PMC 8530091 . PMID 34722870 . S2CID 7392801 .
- ^ 「ミシガン大学の科学計算博士号:教育を通じた研究支援の歴史 | ミシガン計算発見工学研究所」。2025年9月5日閲覧。
- ^ 「計算科学および情報科学、博士号 | GMU理学部」 . science.gmu.edu . 2024年4月24日閲覧。
- ^ 「SCIS | Welcome to Jawaharlal Nehru University」 www.jnu.ac.in 。 2013年3月10日時点のオリジナルよりアーカイブ。
- ^ 「SCIS:学習プログラム|ジャワハルラール・ネルー大学へようこそ」 www.jnu.ac.in 。 2020年2月7日時点のオリジナルよりアーカイブ。 2021年12月31日閲覧。
追加情報源
- E. Gallopoulos、A. Sameh、「CSE:コンテンツと製品」IEEE Computational Science and Engineering Magazine、4(2):39–43 (1997)
- G. HagerとG. Wellein著『科学者とエンジニアのための高性能コンピューティング入門』Chapman and Hall (2010)
- AKハートマン著『コンピュータシミュレーション実践ガイド』World Scientific(2009年)
- ジャーナル「Computational Methods in Science and Technology」(オープンアクセス)、ポーランド科学アカデミー
- 計算科学と発見ジャーナル、物理学研究所
- RH Landau、CC Bordeianu、M. Jose Paez著『計算物理学概論:計算科学入門』、プリンストン大学出版(2008年)