シミュレーション
対象となるシステムにおいて働いている法則をどれほど忠実に模倣するかによって、シミュレーションの精度は異なる。シミュレーションの質は、シミューレーションを設計する者の技量や、どの程度まで法則を見抜き、どこまでそれらの法則を模倣させたか、ということによって異なるのである。現実の法則を十分に模倣していないシミュレーションは、現実とは異なった挙動を示す。
また、コンピュータを用いて連続現象を離散化した積算によるシミュレーションは必ず誤差が生じ、その誤差は蓄積する。従ってコンピュータによるシミュレーションによって良好な結果を得る為には、モデル化による誤差見積もりが重要となる。モデル化によるシミュレーションは、現象についてどの程度正確に真似るかによって計算量を調整することが可能であり、現象についての完全な知識は必要とされないなどのメリットがある。
システムのモデル化を行わず、完全な模倣を目的とする場合は、シミュレーションと言わずエミュレーションということもある。エミュレーションは、模倣したいシステムにおいて、予測できる現象より予測できない現象が支配的である場合などに使われる。
コンピュータに関係するシミュレーションであるが、前の節で説明しているものとはおもむきが大きくことなるものなので、節を分けて説明する。計算理論では、たとえば万能チューリングマシン(のような、模倣する能力を持つ機械)が、模倣対象(たとえば、なんらかのチューリングマシン)の状態遷移と入力と出力を記述した状態遷移表を実行すること(現代風に言うと、コンピュータがそのようなプログラムを走らすこと)を、シミュレーションと言う。これは、状態遷移系間の関係といった、意味論の研究などで使われている。
数値シミュレーションは天文学においては第三の手法と見なされている。天文現象というのは時の長さや空間的なスケールの大きさのせいで実験室で実験することが不可能なため、コンピュータシミュレーションが必要になる。天体物理学者はコンピュータのなかに宇宙を創り出しその中で天文現象を再現しその挙動を確かめる。
太陽系の三体問題のコンピュータシミュレーション
連星から放出されるガスが周囲に引き起こすさざ波のシミュレーション