蒙特卡罗模拟是一种有效的统计实验计算法。这种方法的基本思想是人为地造出一种概率模型,使它的某些参数恰好重合于所需计算的量;又可以通过实验,用统计方法求出这些参数的估值;把这些估值作为要求的量的近似值。
从理论上来说,蒙特卡罗方法需要大量的实验。实验次数越多,所得到的结果才越精确。以上面说到的投针实验为例、历史上的记录如下表1.
从表中数据可以看到,一直到公元20世纪初期,尽管实验次数数以千计,利用蒙特卡罗方法所得到的圆周率∏值,还是达不到公元5世纪祖冲之的推算精度。这可能是传统蒙特卡罗方法长期得不到推广的主要原因。
计算机技术的发展,使得蒙特卡罗方法在最近10年得到快速的普及。现代的蒙特卡罗方法,已经不必亲自动手做实验,而是借助计算机的高速运转能力,使得原本费时费力的实验过程,变成了快速和轻而易举的事情。它不但用于解决许多复杂的科学方面的问题,也被项目管理人员经常使用。借助计算机技术,蒙特卡罗方法实现了两大优点:一是简单,省却了繁复的数学报导和演算过程,使得一般人也能够理解和掌握;二是快速。简单和快速,是蒙特卡罗方法在现代项目管理中获得应用的技术基础。
在项目管理中,常常用到的随机变量是与成本和进度有关的变量如价格、用时等。由于实际工作中可以获得的数据量有限,它们往往是以离散型变量的形式出现的。例如,对于某种成本只知道最低价格、最高价格和最可能价格;对于某项活动的用时往往只知道最少用时、最多用时和最可能用时三个数据。经验告诉我们,项目管理中的这些变量服从某些概率模型。现代统计数学则提供了把这些离散型的随机分布转换为预期的连续型分布的可能。可以利用计算机针对某种概率模型轻易进行数以千计、甚至数以万计的模拟随机抽样。项目管理中蒙特卡罗模拟方法的一般步骤是:
1、对每一项活动,输入最小、最大和最可能估计数据,并为其选择一种合适的先验分布模型;
2、计算机根据上述输入,利用给定的某种规则,快速实施充分大量的随机抽样;
3、对随机抽样的数据进行必要的数学计算,求出结果;
4、对求出的结果进行统计学处理,求出最小值、最大值以及数学期望值和单位标准偏差;
5、根据求出的统计学处理数据,让计算机自动生成概率分布曲线和累积概率曲线(通常是基于正态分布的概率累积S曲线);
6、依据累积概率曲线进行项目风险分析。
由于计算机的运算速度非常快,蒙特卡罗模拟也可以同时进行敏感性分析。
目前,发达国家已经把蒙特卡罗模拟方法列入项目管理的常规方法。有关计算机应用软件也已经有许多种产品。 必须指出的是,目前的项目风险管理还是有很大局限性的。项目风险管理虽然被看作项目决策过程的一部分,实际上主要还是面对项目的实施阶段,没有太多顾及项目可能带来的的长远影响。随着对自然界未知领域的探索不断深入,随着新的科学、新的技术的快速进步,人类在获得眼前利益的同时,也正在面对未来更长远、更深刻、更复杂的不确定因素。因此,项目的风险管理必将随着人类的进步而变得更为重要,获得更大的发展。