モンテカルロの使用に関して

モンテカルロ法は非常に有用であって、まあ大体多くの問題を解くときにそれなりの効果が得られる。精度を良くする為には試行回数を増やす必要があるが、そうは言っても各試行は独立なので並列化することも出来るし、まあ良いのだろう。
が、そんなもの使うべきじゃない、という意見も他方にある。というか、個人的にはあまり好きではない。少なくとも、シミュレーションをするべきモデルというのがほとんど正確に設定されているのであれば、大抵の場合はモンテカルロを必要とはしない。
例えば、ランダムウォークの問題というのが頻繁に取り上げられるが、あれも良くない。ランダムウォークの問題としてあるのは、例えば最初に座標が0の地点にいて、+1に行く確率がpであって、-1に行く確率が1-pである。この時に、絶対値が10になるまでの所要時間を求める、というようなものであるが、これをシミュレーションするならもっとマシな方法がある。各時刻において、各座標上の点にいる確率をそれぞれ計算すればよいのだ。
なぜそれでよいのか。それは、例えばこの問題においては、+1してから-1するのと、-1の後に+1をするのでは結果が同じであるからだ。重要なのは現在の座標だけであって、過去の経歴というものには左右されない。こういうモデルの場合には、現在の状況がどうなっているかの確率分布を出すだけで次の状況の確率分布を出すことが出来る。
つまりは、次の状況を決めるためのパラメータとして、現在もしくはその1つ前くらいの状況にのみ依存するのであれば、モンテカルロは本質的に不要である。というか、それでもモンテカルロが必要というような状況は、よっぽど精度が低くてよいのではないだろうか。ある程度の精度を出そうと思えば、モンテカルロに頼るべきではないと思う。
逆に過去の経歴を全てさかのぼって行動を決めるようなケースでは、モンテカルロは必須だろうと思う。