通过Excel进行蒙特卡洛分析
蒙特卡洛分析是项目时间管理中经常被使用的技术。而PMP中对蒙特卡洛的介绍仅限于概念。在这里,我将通过一个简单的项目进行蒙特卡洛模拟。本项目有3个活动A,B,C,这三个活动,均为FS关系。
操作方法
- 01
首先,我们来填入这三个活动时间估算的乐观值,最可能值和悲观值。
- 02
分别计算这三个活动的均值和标准差。 均值=(乐观值+4 * 最可能值 + 悲观值)/ 6 标准差=(悲观值-乐观值)/ 6
- 03
根据第二步计算出来的均值和标准差,对三个活动按照正态分布进行随机模拟。因为是测试项目,这里我们只进行随机100次。 公式:=INT(NORMINV(RAND(),$F$2,$G$2)) 其中:NORMINV 正态分布;INT 去整; RAND() 取随机数;
- 04
将随机出来的值,进行固化。也就是将上一步中红框的区域,按值复制一份。以防止随机数在每次更改单元格后都会发生变化。
- 05
由于3个活动均为FS的关系,所以三个互动的时间之和就等于总项目时间。
- 06
将总工期考入新的Sheet,并进行从小到大的重新排序。
- 07
将排序后的数据进行筛选,剔除重复数据。从而的到全部模拟出来工期的值。
- 08
进行频度统计。首先选中与总工期相对应的频度下面的单元格D2:D23,然后输入公式“=FREQUENCY(A2:A101,C2:C23)”,然后按下Ctrl+Shift+Enter。如此会计算出模拟出来各个总工期的发生次数。
- 09
计算积累频度:每一个频度的积累频度=自身的频度+前面所有项的频度之和
- 10
选择二维折线图; 在添加的空白折线图上右键“选择数据区域”: 数据区域即总工期和积累频度两列。由于我们并不需要总工期呈现为曲线形式,在选择后的对话框中,将总工期删除,只保留累计频度。 将“累计频度改为“蒙特卡洛模拟”。 选择标轴C2:C23
- 11
最终选择一个好看的样式,展现辛苦生成的图表就可以啦。