計算科学( サイエンティフィックコンピューティング 、テクニカルコンピューティング 、またはサイエンティフィックコンピューティング (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 平方キロメートルで、土地の標高、現在の風向、湿度、温度、気圧などが含まれます。プログラムは、シミュレートされた時間ステップで、システムの動作を記述する微分方程式を解き、現在の状態に基づいて次の状態の可能性を計算し、このプロセスを繰り返して次の状態を計算します。
人工知能 2024年4月、欧州委員会 への科学助言メカニズムは 、科学研究における人工知能がもたらす機会と課題に関する包括的な証拠レビューを含む 助言[ 48 ]を発表しました
利点として、エビデンスレビュー[ 49 ] では以下の点が強調されている。
研究とイノベーションを加速させる役割 ワークフローを自動化する能力 科学研究の普及の強化 課題として:
透明性、再現性、解釈可能性に関する限界とリスク パフォーマンスの低下(不正確さ) 誤用または意図しない使用による危害のリスク 誤情報の拡散や不平等の拡大などの社会的懸念
会議とジャーナル 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 ]
サブフィールド
参照
参考文献 ^ ノンワイラー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日 閲覧 。
追加情報源
外部リンク