基于蒙特卡洛模拟和挣值分析的项目完工预测优化论文

基于蒙特卡洛模拟和挣值分析的项目完工预测优化

詹 伟,杨 超

(中国科学院大学工程科学学院,北京 100049)

摘要: 基于挣值分析和风险管理,通过蒙特卡洛模拟获取项目数据,使用二次判别分析、随机森林和支持向量机进行模型学习和完工预测是项目控制的有效方法之一。在现有研究基础上,考虑项目执行过程中的剩余工作时间、剩余工作费用和风险,分别应用现有研究方法、梯度提升树和人工神经网络进行模型学习,利用嵌套交叉验证进行模型选择和模型评估。研究结果表明,优化后的方法显著提升项目完工预测的准确率。

关键词: 项目管理;挣值分析;项目控制;蒙特卡洛模拟;风险管理

对比项目实际进度和项目基线以确认项目偏差,并采取纠偏行动是项目控制的两项重要内容[1]。在这个框架下,挣值管理整合范围管理、时间管理和费用管理,识别项目执行偏差,为项目管理者采取纠偏行动提供重要决策依据,成为最广泛使用的项目控制工具[2-3]。Anbari[4]、Fleming 等[5]和 PMI[6]分别阐述了挣值管理的主要特征、基本过程和实践方法;在此基础上,研究者们又分别应用统计分析、学习曲线、模糊集理论等拓宽了挣值管理的应用场景,特别是用于项目完工预测。其中,集成挣值分析和风险管理决策工具是近期一个非常活跃的研究领域。Pajares等[7]于2011年提出基于成本控制指数和进度控制指数的集成挣值管理和风险管理的决策工具,用于估计项目偏差来源于结构性偏差还是项目随机偏差;Acebes等[1,8](以下简称Acebes研究)于2014年应用蒙特卡洛模拟和统计控制图对该决策工具进行了优化,又于2015年基于统计机器学习和蒙特卡洛模拟提出了不确定性背景下的项目完工预测方法。本文基于Acebes等[8]2015年的研究成果,提出两点优化思路:(1)Acebes研究完工预测使用的输入变量是Triad方法完工百分比为50%时的实际工期和实际工作费用,没有考虑当前任务执行的完成情况;(2)Acebes研究使用二次判别分析、随机森林和支持向量机进行模型训练和预测,没有考虑具有较强分类性能的人工神经网络和梯度提升树。本文先是复现Acebes研究完工预测分类问题的模型结果,然后根据上述两点思路进行优化,优化后的方法显著提升该分类问题在嵌套交叉验证下的预测准确率。

上午11时,分局检测室,老马戴着口罩在面对检验台上的那具尸体。尸体虽然从纸箱中搬了出来,但是其仍然保持蜷曲的姿势,已经高度腐败的尸体不时有血水渗出。

1 理论背景

1.1 挣值管理

挣值管理的评价指标体系基于3个参数:(1)计划值(planned value, PV),指为计划工作分配的经批准的预算;(2)挣得值(earned value, EV),指对已完成工作的测量,用该工作的批准预算来表示;(3)实际值(actual cost, AC),指在给定时间段内因执行项目活动而实际发生的成本[9]

在评估项目执行情况时,挣值管理主要采用4个评价指标:(1)费用偏差(CV),为挣得值与实际值之差;(2)进度偏差(SV),为挣得值与计划值之差;(3)费用执行指数(CPI),为挣得值与实际值之比;(4)进度执行指数(SPI),为挣得值与计划值之比。费用偏差为正或费用执行指数大于1,则预算节约,反之则预算超支;进度偏差为正或进度执行指数大于1,则进度超前,反之则进度滞后。

1.2 Triad

Acebes等[1]于2014年提出利用蒙特卡洛模拟和统计控制图识别项目偏差的Triad方法,该方法利用蒙特卡洛模拟来获得指定项目固定完工百分比的工期和费用分布,然后对比项目实际执行的工期和费用,根据置信度,得出项目进展偏差来源于结构性偏差还是项目和环境固有的随机性偏差。

Triad方法得名于(x ,tx ,cx )三元组,其中x 是基于费用计算的完工百分比,tx 指在项目完工x%时的实际工期,同理cx 指项目完工x %时的实际费用。项目完工时,Triad三元组为(100%,t 100%,c 100%),其中t 100%是每次蒙特卡洛模拟完工时的总工期,c 100%是每次蒙特卡洛模拟完工时的总费用。通过多次蒙特卡洛模拟,我们可以获取某一固定完工百分比的工期费用分布,基于给定置信度,对比当前项目的实际工期和成本,得出项目偏差来源的估计。Acebes和本文主要研究完工百分比是50%的情况。

本文先是使用tx 和cx 作为完工预测的输入,复现SVM、QDA和随机森林的模型结果;然后输入特征增加每个工作的剩余工作时间、剩余工作费用和风险进行模型训练和预测,对比相同分类模型的提升效果;最后使用精度高且鲁棒性强的梯度提升树和人工神经网络模型进行训练和预测,探索这两种方法在该问题上的预测效果。

2 实验方法

2.1 Triad和蒙特卡洛模拟

提升树是以决策树为基函数的提升方法,它使用加法模型和前向分布算法,当损失函数是平方损失或者指数损失函数时,模型性能较好;为解决提升树在一般损失函数上的性能问题,Freidman[15]提出了梯度提升树(GBDT),其利用损失函数的负梯度在当前模型的值作为提升树算法中残差的近似值,从而拟合一个决策树[10]147。具体优化原理见式(3),其中rm 是前(m -1)轮提升树拟合之后的残差,L (y ,f (xi ))为损失函数,f (xi )为观测值xi 的预测值。本文使用scikitlearn的Gradient Boosting Classifier分类器。

人工神经网络是根据生物神经网络抽象而得到的,其基本组成单元是神经元。神经元之间通过赋权的连接进行信号传递,其他神经元的输出信号经过连接赋权之后传入当前神经元,当前神经元将传入的总输入值与神经元阈值相比较,然后通过激活函数产出输出传递给下一层神经元。每个神经元原理如式(4)所示,其中xi 为前一层与当前节点相连的第i 个节点的输出,wi 为对应的传递权重,b 为偏置,f 为激活函数,aj 为当前节点的输出。

2015年,Acebes在Triad三元组的基础上作出了部分优化,以(ev,t ev,c ev)取代(x ,tx ,cx ),其中t ev指项目达到挣得值EV时的实际工期,c ev指项目达到挣得值EV时的实际费用。主要体现在以下两点:(1)(x ,tx ,cx )三元组中的x 是假设挣得值和完工预算(BAC)成线性关系,而(ev,t ev,c ev)三元组不需要这个假设;(2)对于项目管理者来说,挣得值是更实用并直观的。

2.2 嵌套交叉验证

监督学习的目的是学习由输入到输出的映射,所有满足要求的映射构成学习的假设空间。我们期望能够在假设空间中选择逼近真实映射的模型。而训练数据是有限的,为提高模型的泛化能力,通常需要对训练数据进行切分,从而在测试集上验证模型的泛化能力。S 折交叉验证是常用的模型选择方法之一,该方法将训练数据随机切分成S 份大小相等且不相交的子集,然后使用S -1份数据进行模型训练,剩余1份数据用于模型验证。此过程将重复S 次,最后选择S次评测中平均测试误差最小的模型[10]15。研究表明,在考虑计算成本的前提下,S =5或者S =10能够实现较好的偏差-方差权衡[11]。在本文中,S折交叉验证参数取5。

党的纪律分六大纪律,政治纪律是最根本、最重要的纪律。从党的性质来看,我们党是一个马克思主义政党,是一个政治组织,作为政治组织,体现在纪律上首先就是政治纪律。从现行政治建设的执行情况来看,政治纪律是遵守全部纪律的保障,党员干部所有的违纪行为,都是以违反政治纪律为起点,才会导致其他方面违纪行为的发生。因此,党的十八大以来,以习近平为总书记的党中央突出强调政治纪律,多次指出:“讲政治、遵守政治纪律永远排在首位。要抓住这个钢,把严肃其他纪律带起来。”“对政治纪律,要十分明确地强调、十分坚定地执行,不要语焉不详、闪烁其词。”只有严肃党的政治纪律,才能维护党中央权威和党的团结统一,始终保证党的战斗力。

Anderssen 等[12]、Varma等[13]认为交叉验证在模型选择过程中对预测误差过于乐观,嵌套交叉验证后才可以获得预测误差的无偏估计。嵌套交叉验证分为两层交叉验证,内层用于模型选择,外层用于验证选择模型的实际效果。本文使用scikit-learn提供的嵌套交叉验证方式。

当学生受到班主任不恰当的批评后,会对班主任产生不信任感,认为班主任对自己有偏见,冷酷无情,没有人情味。这时,班主任要有意识地主动亲近学生,关心其学习、生活,帮助其解决实际问题,鼓励其积极向上,使学生感到班主任的过激言行是一时冲动,并无恶意,从而消除对班主任的不信任感。

2.3 二次判别分析(QDA)

随机森林是基于Bagging和Bootstrap的一种集成学习方法,其基本组成单元是决策树。随机森林的随机性主要体现在随机放回抽样和样本特征的随机选取,可以有效地克服决策树中的过拟合问题,具有较好的预测准确率。随机森林的原理图,如图1所示[8],Xi 是基于Bootstrap方法从全部样本集中选取的训练样本,根据该训练样本和随机选取的特征可以训练出一棵CART树(T),最后通过所有树的投票结果来确定实例的预测分类。本文使用scikitlearn的Random Forest Classifier分类器。

燕园的美似乎有一种神奇的魔力,她能让所有向往进入这块圣地的人没魂没魄地沉浸其中,奋斗其中,也能让身处其间的人们留连忘返,还能让所有离她而去的人们魂牵梦绕,终生难忘。

将神经元按照一定层次结构连接起来,就得到了人工神经网络。感知机由两层神经元组成,但学习能力非常有限,只能学习线性可分问题。多层神经网络可以有效地解决非线性可分问题[16]。本文通过模型选择和计算权衡,最终选择双隐层前馈网络,并通过BP算法进行参数计算,网络结构见图3所示[17]。本文使用scikit-learn的MLPClassifier分类器。

2.4 随机森林(random forest,RF)

决策树是一种呈树形结构非参数的监督学习方法,非叶子节点是根据特征进行选择和分类的过程,叶子节点是分类结果的归属。决策树的主要优点是分类速度快,具有较好的可读性和鲁棒性;主要缺点是容易过拟合[10]55

判别分析以贝叶斯理论为基础,在训练数据充分的前提下,使用训练数据的分类比例估计先验概率,使用后验概率估计实例属于各分类的条件概率,从而选择实例分类,是最广泛使用的贝叶斯分类器。具体模型见式(1),其中:P (Y =k )是根据训练数据分类比例,计算样本属于第k 类的先验概率;P (X =x |Y =i )是样本属于第i 类时观测值是x 的条件概率。

为了使医疗资源得到合理的使用和分配,缓解医疗设备及资源不足的情况,医院应落实分级诊疗制度和产科三级信息网络的建设。一级助产机构包括一些生产条件较好的乡镇医院等;将能够接待正常和危险较低的孕妇的医院等划分为二级助产机构;三级助产机构主要接待那些高危孕妇。通过这种分级诊疗制度的建立可以对医疗设备及资源进行有效地利用,避免资源的浪费,并能缓解部分医院床位紧张等情况。在落实分级诊疗制度的同时要进行产科三级信息网络建设,促进省、市、区之间的沟通和合作,缩短获得孕产妇信息的时间,为孕产妇的治疗争取时间,加强高危妊娠的追踪和管理。

图1 随机森林原理

2.5 支持向量机(SVM)

支持向量机是一种分类模型,它寻找对样本进行分割间隔最大的超平面,间隔最大使其不同于感知机,原理如图2所示。其中:wTx +b =0是分离超平面;wTx +b =1和wTx +b =-1是间隔边界,间隔边界上的点如A 和B 分别是支持向量,分离超平面仅由支持向量确定。支持向量机由简单到复杂,可分为:线性可分支持向量机、线性支持向量机和非线性支持向量机,通过软间隔和核技巧,非线性支持向量机可以学习线性不可分数据中的非线性关系[10]95。支持向量机具有较强的鲁棒性,能够抓住关键样本,但计算量大,且不能计算分类概率。Acebes研究和本文均使用”rbf”核的非线性支持向量机,本文使用scikit-learn的SVC分类器。

图2 支持向量机原理

2.6 梯度提升树(GBDT)

提升(Boosting)方法是一种应用广泛且有效的集成学习方法,它基于PAC框架下强可学习和弱可学习的关系[14],根据分类误差率改变数据集的权值分布,学习多个基本分类器,通过基本分类器的线性组合构建最终分类器[10]137。具体方法原理见式(2),其中T (x ;Θm )表示决策树,Θm 表示决策树参数,M 为树的个数。

通过蒙特卡洛模拟,可以获取项目执行过程中任意EV水平的Triad三元组,当EV=BAC时,对比t 100%和计划工期,可以确定总工期是否延误;对比c 100%和BAC可以确定总费用是否超支。Acebes研究提出使用Triad三元组中的tx 和cx (x =50%为例)作为完工预测的输入,使用支持向量机(SVM)、二次判别分析(QDA)和随机森林(random forest)进行模型训练,预测项目是否在计划工期和计划总费用内完工,其中支持向量机的预测效果最好。

2.7 人工神经网络(ANN)

本文的模型训练输入在tx 和cx 的基础上,增加了每个工作的剩余工作时间、剩余工作费用和风险(方差)。其中风险是计划工作时间的方差,剩余工作时间和剩余工作费用分以下3种情况:(1)当工作已完成时,剩余工作时间和剩余工作费用皆为0;(2)当工作未开始时,剩余工作时间就是该工作计划的工作时间,剩余工作费用就是该工作计划完成的费用;(3)当工作正在执行中,剩余工作时间是合理预期的剩余完工时间,剩余工作费用是合理预期的剩余完工费用。合理预期是假设项目管理者在项目执行过程中能够合理预见到当前工作的实际完工时间。该假设主要克服使用计划工作时间的两点问题:(1)剩余工作时间若是使用计划工作时间减实际工作时间,结果可能为负,不符合常理;(2)实际工作时间和计划工作时间是两个维度的计算量,在考虑风险的前提下,两个计算量相减没有实际的理论意义。

二次判别分析假设P (X |Y )符合多元高斯分布,且样本均值和协方差仅与分类相关。相对于线性判别分析来说,该假设使得二次判别分析获得更大的参数空间和更灵活的分类边界;同时,二次判别分析可以计算实例属于各个分类的概率,这为项目管理者提供更大的决策空间。本文使用scikit-learn的Quadratic Discriminant Analysis分类器。

这种想法有些“大胆”,明知90° 的正切不存在,还求正切,不是“自寻死路”吗?其他学生也觉得这种想法有点不可思议,但“移项”得α2-α1=90° 又提供了一种新的思考途径,还是很有启发性的.

图3 双隐层前馈神经网络结构

3 案例分析

3.1 实验案例

本文使用和Acebes研究中相同的案例,该案例是由Lambrechts等[18]于2008年提出。此案例中工作的并行设计可以凸显该方法的有效性[8],单代号网络图如图4所示。

图4 案例单代号网络

该案例中,工作的持续时间符合正态分布,工作的完成费用与工作时间成正比,具体参数见表1所示。本文根据该案例,使用蒙特卡洛模拟构建100万次项目完工,取有效结果10万次,根据完工百分比50%进行建模。其中时间和费用的正样本和负样本之比均近似为1∶1。

表1 案例的具体参数

表1 (续)

3.2 实验结果

本文首先复现了Acebes研究中预测项目是否在计划工期和计划总费用内完工的结果,其中SVM的效果最好。在使用嵌套交叉验证的条件下,工期分类预测的准确率约为75.89%,费用分类预测的准确率约为78.3%。然后根据增加特征的思路,使用QDA、RF和SVM重新建模预测,并同样使用嵌套交叉验证进行模型选择和模型评估,取得了较大的预测准确率提升。从图5可以看出,工期分类预测中,RF预测准确率最高,约为89.74%,准确率提升14.18%;SVM准确率约为89.12%,提升13.23%;QDA准确率约为85.55%,提升9.88%。费用分类预测中,SVM预测准确率最高,约为90.65%,提升12.35%;RF约为90.44%,提升12.21%;QDA约为88.09%,提升10.17%。

图5 案例特征向量优化后的模型效果提升对比

最后本文采用GBDT和ANN对优化后的特征向量进行建模,同样使用嵌套交叉验证进行模型选择和模型评估,在前述结果基础上取得了一定程度的效果提升。从图6可以看出,工期分类预测中,ANN的效果最好,准确率约为90.05%,在RF的基础上提升0.31%;费用分类预测中,ANN同样效果最好,准确率约为90.94%,在SVM的基础上提升0.29%。

由室内考种表可见,使用免耕机械处理的产量明显高于对照,亩增产46.4kg。虫食率下降1.4个百分点,单株荚数增加9.5个,单株粒数增加15.2个,增产率为30.5%

图6 案例GBDT和ANN的模型效果提升对比

4 结论

本文在项目控制的框架下,基于Acebes研究完工预测的方法提出两点优化思路,通过蒙特卡洛模拟,在实验中得到验证,优化后的方法显著提升该方法的准确率。其中,特征向量的优化提升准确率超过10%,ANN模型提升准确率约0.3%。

在项目执行过程中,项目管理者可以通过ANN(或其他)模型,使用实际工期、实际费用和项目工作的工期费用完成情况预测项目完工时工期是否拖延或者费用是否超支,识别项目现有的工作状态;同时,也可以计算项目工期拖延和超支的概率,用于项目风险管理决策;更进一步,该方法可以在早期识别项目方案变更所带来的最终效果差异。

在变化的上下文环境中,有效地预测是一件有挑战性的工作,没有任何分类方法或回归方法是永远最优的[12]。本文验证了ANN和GBDT在挣值管理完工预测问题上是有效的,可供项目管理人员在项目执行过程中借鉴参考。

参考文献:

[1]ACEBES F, PAJARES J, MANUELGALÁN J, et al.A new approach for project control under uncertainty. Going back to the basics[J].International Journal of Project Management, 2014,32(3):423-434.

[2]BLANCO V D. Earned value management: a predictive analysis tool[J]. Navy Supply Corps Newsletter, 2003,66(2):24-27.

[3]ABBA W, NIEL F A.Integrating technical performance measurement with earned value management[J]. The Measurable News,2010,4:6-8.

[4]ANBARI F T.Earned value project management method and extensions[J]. Project Management Journal, 2003,34(4):12-23.

[5]FLEMING Q W, KOPPELMAN J M.Earned value project management[M].Newtown Square: Project Management Institute,2000:13-24.

[6]PROJECT MANAGEMENT INSTITUTE. Practice standard for earned value management[M].Newtown Square: Project Management Institute, 2005:2-6.

[7]PAJARES J, LÓPEZ-PAREDES A.An extension of the EVM analysis for project monitoring: the cost control index and the schedule control index[J].International Journal of Project Management,2011,29(5):615-621.

[8]ACEBES F, PEREDA M, POZA D, et al.Stochastic earned value analysis using Monte Carlo simulation and statistical learning techniques[J].International Journal of Project Management,2015,33(7):1597-1609.

[9]项目管理协会.项目管理知识体系指南[M].6版.Newtown Square:项目管理协会 ,2017:698-717.

[10]李航.统计学习方法[M].北京:清华大学出版社,2012.

[11]HASTIE T, TIBSHIRANI R, FRIEDMA J.The elements of statistical learning: data mining, inference, and prediction[M].Berlin:Springer, 2009:242.

[12]ANDERSSEN E, DYRSTAD K, WESTAD F, et al.Reducing overoptimism in variable selection by cross-model validation[J].Chemometrics and Intelligent Laboratory Systems, 2006,84(1):69-74.

[13]VARMA S, SIMON R.Bias in error estimation when using cross validation for model selection[J/OL]. BMC Bioinformatics,2006,7, NO.91[2018-07-26].https://doi.org/10.1186/1471-2105-7-91.

[14]VALIANT L G. A theory of the learnable[J].Communication of the ACM, 1984,27(11):1134-1142.

[15]FRIEDMAN J H. Greedy function approximation: a gradient boosting machine[J].Annals of tatistics, 2001,29(5):1189-1232.

[16]周志华.机器学习[M].北京:清华大学出版社,2016:97-98.

[17]邱锡鹏.神经网络与深度学习[EB/OL].(2018-10-14)[2018-10-17].https://nndl.github.io/.

[18]LAMBRECHTS O, DEMEULEMEESTER E, HERROELEN W.Proactive and reactive strategies for resource-constrained project scheduling with uncertain resource availabilities[J].Journal of Scheduling, 2008,11(2):121-136.

Optimization of Forecast at Completion Based on Monte Carlo Simulation and Earned Value Analysis

Zhan Wei, Yang Chao
(School of Engineering Science, University of Chinese Academy of Sciences, Beijing 100049, China)

Abstract: Based on the analysis of the earned value and the risk management, the project data is acquired through the Monte Carlo simulation, and the model learning and the completion prediction by using the quadratic discriminant analysis, the random forest and the support vector machine are one of the effective methods of the project control.On the basis of existing research, this paper takes into account the residual working time, the remaining work cost and the risk in the execution of the project, and applies the existing research methods, the gradient lifting tree and the artificial neural network to study the model, and makes model selection and model evaluation by using the nested cross validation. The results show that the optimized method can improve the accuracy of project completion prediction.

Key words: project management; earned value analysis; project control; Monte Carlo simulation; project risk management

中图分类号: C935;F224;G301

文献标志码: A

文章编号: 1000-7695(2019)17-0220-06

doi: 10.3969/j.issn.1000-7695.2019.17.028

收稿日期: 2018-10-26,

修回日期: 2019-01-11

基金项目: 军事科学院科研项目“项目管理相关概念及案例研究”(Y85301X1G4)

作者简介: 詹伟(1973—),通信作者,男,河南郑州人,副教授,博士,主要研究方向为工程与项目管理、价值管理和风险管理;杨超(1994—),男,湖北荆门人,硕士研究生,主要研究方向为工程与项目管理。

标签:;  ;  ;  ;  ;  ;  

基于蒙特卡洛模拟和挣值分析的项目完工预测优化论文
下载Doc文档

猜你喜欢