论文地址
https://sci-hub.se/10.1016/s0923-4748(97)00001-5
论文名
BIFPET methodology versus PERT in project management: fuzzy probability instead of the beta distribution
使用模糊数学方法来代替PERT方法中的Beta分布
模糊数学零基础可参考
反正我自己看完,受益匪浅
https://blog.youkuaiyun.com/weixin_41024483/article/details/104596231
https://zhuanlan.zhihu.com/p/336448737
https://zhuanlan.zhihu.com/p/336458431
作者
Margaret F. Shipley a, * , Andre de Korvin b, Khursheed Omer a
论文综述
于PERT方法的最大不同,是使用人类的判断,而不是随机的假设的分布模式。从而可以将项目经理对于项目估计的时间,解决时间预估不准确的问题。
影响
因为这篇论文在多个管理类的论文里面被应用,所以此处我们决定学习其原理和用法,查了一下没有找到相关的中文翻译文档和介绍,所以有了这篇原创,从我自己的角度讲解一下这篇论文的内容,有错误可以讨论。
说真的,我觉得论文还是有很多错误,对新手尤其不友好~~~
核心理论—模糊数学
文章里面写的很乱,我自己去看了学习了一下模糊数学的定义,引入 一个关键的概念叫做隶属度,也就是当无法精确定义是否一个元素是否属于一个集合的时候,但是存在一个概率使得这个元素属于这个集合的概率。比如,集合:高个子,175cm的男的对于这个集合的隶属度可能就是0.5,也就是一般的人认为175是高个子,一半的人认为不是。
隶属度的数学表示比较奇怪,使用了求和的函数符号,看起来像是一个确切值A=∑i=1nai/xiA = \sum_{i=1}^na_i /x_iA=∑i=1nai/xi,但是其实实际表示的是二元组的集合,表示的是xix_ixi这个元素在模糊子集A上的隶属度(可能性)是aia_iai,但是实际上可能直接表示为(a0,a1,......,an)(a_0,a_1,......,a_n)(a0,a1,......,an)会更容易理解,其每个取值范围为[0,1]
如上所说,此时A的意思是,xix_ixi在A上的隶属度为aia_iai,可以理解成元素x在集合A的可能性是a。
原文中用了很饶的一段公式来表示一个扩展的概念,我这里尽可能的先通过语言来描述,f是一个X到Y上的映射,也就是X是定义域(如之前的xix_ixi一样,Y是值域。对于任意的一个这样的f我们可以使用A来生成一个新的Y(注意:原文写的是X,我觉得是很严重的笔误)的隶属度函数:f(A)f(A)f(A),重申一遍,此时的f(A)f(A)f(A)是一个新的隶属度函数,其具体的做法是
f(A)=∑yuf(a)(y)/yf(A) = \sum_yu_{f(a)}(y)/yf(A)=y∑uf(a)(y)/y
如之前的表示所说,含义为:y作为元素,隶属于f(A)f(A)f(A)的概率是uf(a)(y)u_{f(a)}(y)uf(a)(y),其中这个概率的计算方式为
uf(a)(y)=Maxx∈y−1(x)A(x)
u_{f(a)}(y) = Max_{x \in y^{-1}(x)} A(x)
uf(a)(y)=Maxx∈y−1(x)A(x)
也就是说,其隶属度的值,是f中所有的使得值为y的x的值的隶属度的最大值。举个实例 f=x2f = x^2f=x2, x = -1,1 y =1,A(x) 在-1, 1上的取值分别为 0.3 0.7,那么f(A)的在y=1时的隶属度就是max(A(-1),A(1)) = 0.7。
写到这里发现原文另一个地方又说这个f(A)f(A)f(A)是Y的模糊子集,或者叫隶属度函数。
如果其定义是笛卡尔积的对象,则就是 X * Y 到Z的映射,则也是取到所有的f(x,y)的到z的映射中的最大值
MAX,但是由于A ,B都是隶属度函数,则A和B的交集需要取min,这个扩展的概念后面可能会用到,此处值需要了解其定义和方法即可。
本文用到的关键变量 QijkQ_{ijk}Qijk其隶属度为aijka_{ijk}aijk , 表示从状态i,接收到输入j,下一状态变成k的模糊概率。然而接下来原文又搞了一段莫名其妙的东西,都不知道是笔误还是写错了还是具体含义是啥,论文质量堪忧。
其核心是计算一个叫做 E(Bij)E(B_{ij})E(Bij)的东西,注意,原文并没有定义BijB_{ij}Bij到底是什么含义,所以根本不知道为什么要有这个。
本人经过论文后面的案例反推,可知各个变量定义如下,从最简单的开始
(a1,a2,....,ap,b1‘,b2‘.....,bp‘)(a_1,a_2,....,a_p,b^`_1,b^`_2.....,b^`_p)(a1,a2,....,ap,b1‘,b2‘.....,bp‘),表示的是,对于一个事件的可能取值范围(bp‘b^`_pbp‘指的是事件的可能持续事件,例如悲观事件、最可能事件、乐观时间的时间值,注意此处是值,例如3天,10天或者20天,而前面的a则表示此值的概率比如PERT模式的1:4:1,则概率为1/6,4/6,1/6),则此时这个取值模式blb_lbl的期望是
bl=∑kak∗bk‘,if∑kak=1,k∈(1,p) b_l = \sum_k a_k* b^`_k , if \sum_k a_k = 1,k \in (1,p)bl=k∑ak∗bk‘,ifk∑ak=1,k∈(1,p)
此公式是我优化后的,含义一目了然,因为a1到apa_1到a_pa1到ap为全集,所以a的本身概率和必须是1才是一个完整的事件。概率乘以数值,则表示的是数学期望,比如PERT时间取值1d,2d,9d,概率分别为0.3,0.4,0.3的期望则是3.8d。
对于模糊数学的模式下,我们有很多个blb_lbl,接下来我们要求的是每个发生blb_lbl的概率,如之前所示,需要求的概念分别为取到一个(a1,....ap)(a_1,....a_p)(a1,....ap)的隶属度概率,也就是给出的模糊隶属度函数,原文中αij\alpha_{ij}αij分别表示取第i种方法时侯的第j个a的隶属度,βij\beta_{ij}βij表示的是第i种方法时,第j个a属于的隶属度。
此处必须用个例子解释一下,比如假设PERT三个时间发生的概率为0.3,0.4,0.2则不是一个合理的时间函数,因为相加不是1。如果是0.3,0.4,0.3则是一个合理的分布函数,这个分布记录为b1b_1b1,表示第一种可能的分布情况。此时期望值算出来。但是0.3的可能性发生乐观时间的隶属度可能为0.8,则α11\alpha_{11}α11表示第一种方法下时,aia_iai取到其真实值0.3的隶属度是0.8,同时β11\beta_{11}β11表示第一种方法时,第一个a属于取值范围的隶属度。乐观时间必须存在,其β11\beta_{11}β11隶属度为1。则只需要将第一种方法的所有隶属度取交集,也就是min α1i\alpha_{1i}α1i,求得的既是方法1的隶属度,可以认为是其发生的概率为cic_ici,例如对于0.3,0.4,0.3的例子来看,Min(0.7,0.8,0.7)=0.7。可能得方法有三种,分别是(0.3,0.4,0.3), (0.4,0.4,0.2),(0.4,0.3,0.3),则对于如下的A的隶属度分布函数,算出其标准期望值 E(A)=∑(ci)(bi)∑(ci)E(A) = \frac{\sum(c_i)(b_i)}{\sum(c_i)}E(A)=∑(ci)∑(ci)(bi)
实际例子
事件A以及PERT时间,以及隶属度函数
A Engineer draws specs 1.0 2.0 9.0
Activity A: Time (days) Fuzzy probability: QA
Optimistic: 1.0 0.7/0.3 +0.9/0.4: QA,
Most likely: 2.0 0.8/0.4+ 0.5/0.3: QA2
Pessimistic: 9.0 0.6/0.2 + 0.7/0.3: QA3
算出来的期望值 E(A) = [(0.7)(3.8) + (0.6)(3.0) + (0.5)(3.7)]/[(0.7 + 0.6 + 0.5)],So, E(A) = 3.51 (days).
具体算法可参见原文
将算得的各个事件与直接用概率求出来的期望值进行比较,可以看到事件的期望,PERT模式的期望值为3.8,但是由于A中给予了最优解很高的隶属度期望,则算出来的期望值为3.51,表示确实会随着管理者给出的置信的程度进行偏移。同时也证明了PERT方法只是BIFPET的一个特例,当其概率为1:4:1,且等概率的置信度时算出来与PERT的值一致。
区间模式
当给出的PERT的三点估计不再是一个固定的点的值,而是一个范围的时候,如前文所说当A的任务的最优事件不是1d,而是[0.75-1.5],必然可以可以算出一个基于最好的事件的期望值EU(x)=supAi∗M(Ai)E_U(x) = supA_i * M(A_i)EU(x)=supAi∗M(Ai),和一个最差时间的期望值。当我们给一定一个p值,给出公式
$E(X)=EL+ρ[Eu(X)−EL(X)]
E(X) = E_L + \rho [E_u(X) - E_L(X)]
E(X)=EL+ρ[Eu(X)−EL(X)]$
其中U表示Up, L 表示Low,则当ρ\rhoρ靠近0的时候,整体靠近下界,反之则更靠近上界。
成果和结论
可以考虑项目经理的经验值,可以更好的控制项目经理的风险和偏见,注意,可能会改变整个关键路径的选择。
以下全文google翻译,大家自己看吧
使用 BIFPET 方法的好处具体在于为项目经理提供了机会,将他对活动主管估计的完成时间的概率的信念纳入其中。 一般来说,经理应该比负责监督具体项目活动的人员拥有更多的经验和更广泛的知识。 因此,对助理提交的估算进行此类评估在行业中很常见。 从这个意义上说,BIFPET 为估算项目完成时间的现行程序带来了非常需要的现实程度。
尽管 Moitra (1990) 也寻求衡量决策者风险的方法,但他是通过指定一些常数 k 来判断活动完成时间的最可能值或模态值的重要性。 相反,根据 BIFPET,; 我们寻求活动完成时间的概率,反映活动主管的不确定性,提供乐观、最有可能和悲观的估计。 我们还考虑了负责接受这些准确估计并使用它们来控制项目的项目经理的风险或偏见。
因此,在这方面,BIFPET 方法是一种改进! 与 Moitra 方法(Moitra,1990)的不同之处在于,在计算平均值时,模态值与乐观时间和悲观时间的比率不必为 k 比 1。在 BIFPET 方法中,完成项目活动的模糊概率在 估计时间以及相信此类概率准确反映现实的信念会使预期时间值相对于 beta 假定的平均时间值呈正向或负向倾斜。 置信加权方法并不假定时间估计遵循
本文提出的方法提出了一个现实的过程,并且不依赖于 beta 分布或 beta 分布的任何变化来计算预期项目完成时间。 相反,该方法是基于工作场所中人员的关系。 该过程考虑了项目经理可能完全信任或不完全信任活动主管提供的信息的可能性。
此过程要求向活动主管询问他们在项目开始时提交的时间估算的准确性。 同样,在确定项目的关键路径之前,项目经理应确定他/她认为活动主管提交的时间估算的准确程度。 在将公司的资源和声誉投入项目之前,项目经理应对预计完成时间抱有高度的信心。