モンテカルロ法とは何か?プロジェクトマネジメントで使われるシミュレーション方法を解説

2021年8月12日

モンテカルロ法の概要

モンテカルロ法とは、モンテカルロ・シミュレーションとも呼ばれ、シミュレーションや数値計算にて乱数を用いて施行を繰り返すことによって近似値を求める手法です。

米ロスアラモス国立研究所で原子爆弾開発計画に従事していた核物理学者のスタニスワフ・ウラム(Stanislaw Ulam)が考案し、数学者ジョン・フォン・ノイマン(John von Neumann)によって命名された手法となります。カジノで有名な国家モナコ公国の4つの地区の1つであるモンテカルロから名付けられており、ランダム法とも呼ばれています。

モンテカルロ法の計算方法

モンテカルロ法は乱数を用いて数値のばらつきを人為的に発生させ、発生した変数の近似解を得ることで推定値を求めることができます。数値のばらつきに正規分布を仮定することで誤差を統計学的に推定するため、実際の寸法測定結果を用いることなく誤差推定が可能となります。

例えば、円周率をモンテカルロ法で求める場合、一辺が2rの正方形に入る半径rの円を考えます。この正方形の中に多数の点を打つと、ある領域に入った点の数は該当する領域の面積に比例することから以下の式が成り立ちます。

  • (πr2(円内の点の数))/( (2r)2(打った点の総数))=π/4 ⇒ π=(円内の点の数)÷(打った点の総数)×4

このように左辺の分子、分母に示した点の数を4倍することで円周率の近似値を算出できます。

乱数列の選択

モンテカルロ法では、近似値を算出する状況によって乱数列の選択が重要となります。

疑似乱数列

疑似乱数列は乱数列のように見えますが、実際には確定的な計算によって求めている乱数を指します。主な疑似乱数生成法として、「平方採中法」「線形合同法」「メルセンヌ・ツイスタ」があります。

物理乱数

真の乱数が必要な場合や、疑似乱数生成法の初期値を設定するための乱数が必要な場合に、物理現象を利用した物理乱数を生成します。本来であれば以前に生成した乱数との相関のない理想的な性質を持つ乱数(真正乱数)を用いるべきですが、厳密な真正乱数の生成は現実には困難であるため、現実的なコストで実現可能な物理乱数が用いられます。

プロジェクト管理におけるモンテカルロ法の活用

プロジェクトにおけるリスクの影響分析等にモンテカルロ法を用いてシナリオを検討することができます。
たとえば、プロジェクトが完了するまで時間が不明な場合に、最善のシナリオと最悪のシナリオにおける各タスクの所要時間から、全ての可能な組み合わせを分析し、プロジェクトの完了時期を示すことができます。
このように、プロジェクト管理においてモンテカルロ法を用いることで、マイルストーンや期限を達成できる可能性を早い段階で判断でき、意思決定のための客観的なデータとしてリスクを定量化することが可能となります。