1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶモンテカルロ・シミュレーション

Connected

演習

誤った入力分布

この演習では、円周率の例を引き続き使います。 A graph of a circle inside a square with randomly sampled points

入力の確率分布を連続一様分布(random.uniform())から離散一様分布(random.randint())に変えたらどうなるでしょうか? 結果は信頼できなくなります。random.randint() は離散的な整数をサンプリングするのに対し、random.uniform() は連続的な浮動小数点数をサンプリングするからです。

このシミュレーションが出力する推定された円周率の値に注目してください。誤った確率分布を選んでいるため、精度は高くありません。Monte Carlo シミュレーションでは正しい確率分布を選ぶことが不可欠です。以降のレッスンでさまざまな分布について詳しく説明し、今後は自信を持って適切な分布を選べるようにしていきます。

random はすでにインポート済みです。

指示

100 XP
  • 動画で使用した正しい random.uniform() ではなく、random.randint() を使って、x と y の座標を -1 から 1 の区間でサンプリングしてください。