• ベストアンサー

モンテカルロ法とは?

モンテカルロ法という言葉をたまに耳にするのですが 試行錯誤法とどこが異なるのでしょうか? 検索してみてもどうも同じ手法のように思えて仕方がないのですが。 お願い致します。知っている人がいたら教えてください。

  • Jaica
  • お礼率28% (19/66)

質問者が選んだベストアンサー

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

 検索してみた上で、なお、モンテカルロ法と試行錯誤法が同じだと仰るんですね。ふーむ、そりゃ面白い観点かも知れません。どこが似ているとお考えなのか、是非補足をお願いしたいです。  普通に言う「試行錯誤法」ってのは、解を見つけるためにイロイロやってまぐれ当たりを狙う、というだけのこと。解が見つかればよし、駄目なら探し続ける。  大抵は「試行錯誤」と呼んで、「法」なんて付けません。「法」と呼べるほどの中身がないんだから、「試行錯誤法」だなんて、(フツーの感覚があれば)恥ずかしくてとても言えないでしょう。一方、ただ闇雲にイロイロやるんではなくて、問題の性質を使って探索範囲を絞り込んで効率を上げる工夫をすることが多い。で、そういう手法は「試行錯誤法」とは言わない(少なくとも自称はしない)でしょう。  ですから、「試行錯誤法」という言葉は、せいぜい「新しくA法という方法を開発しました。これは従来の馬鹿でのろまで芸のない試行錯誤法に比べて10%も効率が高いです」というような文脈でしか使われない言葉だと思います。(たとえば、関数の極値を探すための山登り法(非線形最適化のための繰り返し計算)を指して「試行錯誤法」と呼んでいる例もあるようですが、誹謗中傷が目的の揶揄としか思えません。)  なお、ポパー哲学で言う「試行錯誤法」は、意味するところがまたちょっと違います。こちらは「仮説を作り出して、検証し、手直しするプロセスを繰り返すことによって真理に迫る」という、科学の方法論の基礎の話。机上で得た霊感だけでは科学にならない、ってことですね。  一方、モンテカルロ法の簡単かつ有名な例は、「ビュフォン(Buffon)の針」でしょう。間隔aで引いた平行線群の上から、長さL(≦a/2)の針を落とす。針が平行線のどれかと交わる確率はL/(aπ)である。だから、この実験を沢山繰り返して、針が線と交差した頻度を調べれば、πの値が分かる。このプロセスのどこにも「錯誤」なんかありません。(もし「針が線と交差しなかったら錯誤、失敗」とか言ってカウントしなかったら、L/(aπ)=1になっちゃいます。)  モンテカルロ法は多次元空間で定義される関数の数値積分法のひとつであると考えることができます。空間をメッシュに切って積分する代わりに、乱数でサンプルを選んで来るわけです。(針の話の場合には、乱数の代わりに「落とす」ということをやって、「針が線と交差したら1、さもなくば0」という関数を積分していることになります。)  メッシュに切る方法は次元が高くなると計算量がどんどん増えますが、モンテカルロ法の場合には次元によらず、同程度の精度を出すには同程度の個数のサンプルがあれば良い、という優れた性質があります。

その他の回答 (1)

  • N64
  • ベストアンサー率25% (160/622)
回答No.1

残念ながら、試行錯誤法という名の方法は、見つかりませんでした。 雑草と言う名の植物もないそうです。

Jaica
質問者

お礼

http://www.google.co.jp/search?hl=ja&q=%22%E8%A9%A6%E8%A1%8C%E9%8C%AF%E8%AA%A4%E6%B3%95%22&lr= 検索すればたくさん見つかりますけど・・・ 量子化学計算、化学工学計算などでよく用いられますけど・・・

関連するQ&A

  • モンテカルロ法の名前の由来

     モンテカルロ法は、 乱数を用いて、 近似解を求めたり、危険度を算定する手法であると認識しています。  この名前は、 モナコ公国のモンテカルロに由来しているようですが、 なぜでしょうか?

  • マルコフ連鎖モンテカルロとは?

    よく,マルコフ連鎖モンテカルロ法(MCMC法)というのを聞くのですが,色々読んでも具体的にイメージできません。 マルコフ連鎖,モンテカルロと単独なら理解できるのですが。。。 掻い摘んでいうと,どういう手法なんでしょうか?

  • モンテカルロ法 円周率

    モンテカルロ法で円周率を求めたいのですが C++でプログラムを実行までは出来るんですけど それをグラフにする方法が分かりません。 (扇形みたいなヤツです。点々が沢山付くヤツです。) あと「モンテカルロ法から演習路津が求まる原理」と 「エクセルとCプログラミングで円周率を求めた時の 比較の仕方」も教えて頂きたいのです…。 沢山聞いてしまって、本当にすいません。 なにとぞ、初心者なのでよろしくお願いします。

  • セルフテストモンテカルロ法のプログラム

    今、モンテカルロ法の勉強をしており、いろいろ調べていったらセルフテストモンテカルロ法というものがありました。文献をいろいろ読み、原理はなんとなくわかったのですが、C言語でのプログラミングをどのようにすればよいのか思い付きません。一例で良いのでわかる方、御回答をよろしくお願い致します。

  • 試行錯誤法

    割引率iを求める方法として、”試行錯誤法で求める”と、簿記の本に書いてありました。試行錯誤法に関してはチンプンカンプンでネットでも調べましたが、よくわかりません。簡単に教えていただけませんでしょうか?

  • 解の探索法

    本で読んだんですけど、心理学の世界で、解の探索法として 「盲目的な試行錯誤」と「系統的な試行錯誤」があると いうことが書いてあったんですが、あまり詳しく説明してなかったので、 よく分かりませんでした。この違いをなるべく具体例を出して教えてくれませんか?

  • 思考錯誤?試行錯誤?

    思考錯誤?試行錯誤? 四字熟語に試行錯誤という言葉がありますが、頭の中で色々考えた結果、と言う意味で試行錯誤という言葉を使っている人が多いように思います。 この場合、実際に色々試してはいないので思考錯誤となってしまい、試行錯誤という正しい意味ではない気がしますが、頭の中で試行錯誤誤をする、と言う意味では実際に何もしてない場合でも「試行錯誤」と言う言葉が使えると思いますが、実際に何もしなくても頭の中で色々したと言う意味で試行錯誤て言う言葉を使うのは正しいでしょうか?つまり、 「試行錯誤した結果、…」と使うときでも「頭の中で」と言う言葉を省略したと言う意味で用いれば、実際に色々試したわけでなくても「試行錯誤」という言葉を使ってオッケーでしょうか? よろしくお願いいたします。

  • マーチンゲール法、ココモ法、モンテカルロ法を使えば勝てる確率の方が負ける確率よりも高くなるはずなのに、なぜ勝てないのか?

    こんにちは。 ギャンブルでマーチンゲール法やココモ法やモンテカルロ法などを使えば、勝てる確率が高いはずですよね。 たとえば、ルーレットでマーチンゲール法を使えば長くやればやるほど勝てる確率がかなり高くなっていくはずです。(大数の法則) それにもかかわらず、なぜカジノはつぶれないのでしょうか? カジノでプレーしている全員がこの方法を使えば、カジノがつぶれると思いますが、さて、この考えは間違えていますでしょうか? この方法を使えば、誰でも、勝てる確率のほうが高いのに、なぜ、知っているのにこの方法を使わない人がいるのでしょうか? この考え方に穴があるのでしょうか? 穴がないのならば、知っている人はこの有名な方法を使い、みんな勝つということになります。 ある程度のギャンブラーならこの方法を知らない人はあまりいないと思いますので、知っているのに使っていないとしか思えません。 しかし、一方で、この方法を使いつづけていれば、かなりの高確率で勝てる確率が上がるはずなので、それでも使わない理由が何かあるのでしょうか? 賭けることの上限が存在することを考えても、勝てる確率のほうが高いはずです。なのになぜ・・・?? 不思議です。教えていただけないでしょうか。よろしくお願いします。

  • これが私の節約法!

       私は一人暮らしの大学生です。一人暮らしだと何かと出費がかさみ、月末は火の車って 感じです。それで現在、あれこれと節約のために日々試行錯誤を繰り返しているのですが、 そろそろネタが尽きてきました。  そこで、これをご覧になっている皆さん、「私の節約法」みたいなのがあったら、教え ていただけませんでしょうか。どんなことでも結構です。

  • Access2x入力規則について

    [環境] Windows2000 Access2000 [問題点] Access2000で入力規則として「ひらがな」全角 「かたかな」全角 「英数字」半角 を自動で行い たいと思い一番簡単な手法を試行錯誤中です。 Dim varMoji As Variant varMoji = Me.テキスト0 Me.テキスト0 = StrConv(varMoji, 8) これですと「かたかな」が半角になってしまいます。 ●一文字ずつカタカナ検索して置き換える以外に良い 手法があればお願い致します。