CN109710958A - 一种基于仿真模型的建设项目工期风险模拟方法及系统 - Google Patents
一种基于仿真模型的建设项目工期风险模拟方法及系统 Download PDFInfo
- Publication number
- CN109710958A CN109710958A CN201810876949.6A CN201810876949A CN109710958A CN 109710958 A CN109710958 A CN 109710958A CN 201810876949 A CN201810876949 A CN 201810876949A CN 109710958 A CN109710958 A CN 109710958A
- Authority
- CN
- China
- Prior art keywords
- simulation model
- simulation
- project
- construction
- work
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于仿真模型的建设项目工期风险模拟方法及系统。其中,所述方法包括:利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块,进而根据该构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库,进而根据该建立的数据库,结合具体的工程案例进行分析,验证该系统动力学仿真模型、离散事件仿真模型的信度与效度。通过上述方式,能够借助封装技术,通过构建工作模块,实现了任意项目的快速工期建模,极大地节约了建模成本,并引入蒙特卡洛分析方法对风险的不确定性进行分析,使得风险分析更加贴近于现实,以及能够减少工期风险所造成的损失。
Description
技术领域
本发明涉及建设项目工期风险模拟技术领域,尤其涉及一种基于仿真模型的建设项目工期风险模拟方法及系统。
背景技术
关于系统动力学:系统动力学是上世纪五十年代由麻省理工学院Forrester教授所创立的一种系统仿真方法,是通过建立存量、流量和辅助变量来研究信息反馈系统的一项技术手段,它具有延迟性、非线性以及高阶复杂性的特点。
关于离散事件系统:离散事件系统指的是系统状态在某种事件驱动下随机发生变化的动态系统,离散事件系统仿真重点关注的是系统的逻辑行为以及在这种逻辑行为基础上的状态序列和事件序列。
关于建设项目工期风险:建设项目工期风险指的是在建设项目实施过程中可能导致项目工期延误的不确定因素。
作为建设项目的三大目标之一,工期一直是人类所关注的重要问题。由于在建设项目实施过程中存在大量的人为和非人为因素,各个因素之间存在相互作用并且充满大量的不确定性,这造成建设项目具有极大的复杂程度。
任何一项工期风险的发生都可能对项目的成功实施产生阻碍。现有技术虽然在工期分析方面存在一定进展,但依然存在以下几个问题:
一、现有技术难以识别关键线路在施工过程中可能发生的变化。
二、现有技术难以捕捉风险对项目工期的动态变化影响。
三、现有技术难以体现工期风险所存在的不确定性。
发明内容
有鉴于此,本发明的目的在于提出一种基于仿真模型的建设项目工期风险模拟方法及系统,能够借助封装技术,通过构建工作模块,实现了任意项目的快速工期建模,极大地节约了建模成本,能够通过系统动力学的分析,揭示工期风险影响在项目建设过程中的传导机制,模拟工期风险影响在项目建设不同阶段的变化情况,并引入蒙特卡洛分析方法对风险的不确定性进行分析,使得风险分析更加贴近于现实,能够对于建设项目各利益相关方全面系统地了解工期风险对项目进度的影响具有指导意义,有助于项目各方提前预防工期风险,减少工期风险所造成的损失。
根据本发明的一个方面,提供一种基于仿真模型的建设项目工期风险模拟方法,包括:
利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块;
根据所述构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库;
根据所述建立的数据库,结合具体的工程案例进行分析,验证所述系统动力学仿真模型、离散事件仿真模型的信度与效度。
其中,在所述利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块之前,还包括:
构建系统动力学仿真模型、构建离散事件仿真模型。
其中,所述构建系统动力学仿真模型,包括:
运用系统动力学的方式对整个建设项目工期风险因素的传导路径进行梳理,对系统边界进行设定,并在边界范围内识别与项目工期关联的所有因素,以及确立所述关联的所有因素之间的因果关系及反馈结构,构造系统因果循环图,构建系统动力学仿真模型包括构建建设过程子系统仿真模型、资源子系统仿真模型、项目范围子系统仿真模型、进度目标子系统仿真模型、项目表现子系统仿真模型。
其中,所述构建建设过程子系统仿真模型,包括:
根据任何一项工作的基本工作过程,包括“待完成工作”、“待检查工作”和“完成工作”,所述基本工作过程被作为物质流的形式进行流动,构建建设过程子系统仿真模型。
其中,所述构建资源子系统仿真模型,包括:
根据任何一项工作的基本工作过程所需资源,包括所需要的人工、材料、机械资源,构建资源子系统仿真模型。
其中,所述构建项目范围子系统仿真模型,包括:
根据项目范围表示的工程在建设过程中所要求的具体的工作量,构建项目范围子系统仿真模型。
其中,所述构建进度目标子系统仿真模型,包括:
根据工作进度过程,包括工作计划进度和实际进度两个主体部分,通过将计划进度和实际进度进行对比可以明确工程是否延期,一旦工程发生延期,立即调动进行工期赶工,构建进度目标子系统仿真模型。
其中,所述构建项目表现子系统仿真模型,包括:
根据建设过程中出现的工程质量问题及工程质量问题导致的工程返工、工程延期,构建项目表现子系统仿真模型。
其中,所述构建离散事件仿真模型,包括:
根据对建设项目的基本工作进行属性设置,结合具体案例的网络进度计划建立离散事件,并将所构建的离散事件与项目具体工作一一对应,设置每一项工作的最晚开工时间和最晚结束时间,录入每一项工作的资源量,和根据项目的单代号网络图将各项工作进行连接,建立工作之间的逻辑关系,构建离散事件仿真模型。
根据本发明的另一个方面,提供一种基于仿真模型的建设项目工期风险模拟系统,包括:
系统动力学仿真模型构建单元、离散事件仿真模型构建单元、工作模块构建单元、数据库建立单元、验证单元;
所述工作模块构建单元与系统动力学仿真模型构建单元、离散事件仿真模型构建单元分别相连接,所述数据库建立单元与所述工作模块构建单元、验证单元分别相连接;
所述系统动力学仿真模型构建单元,用于构建系统动力学仿真模型;
所述离散事件仿真模型构建单元,用于构建离散事件仿真模型;
所述工作模块构建单元,用于将所述构建的系统动力学仿真模型封装在所述构建的离散事件仿真模型中来构建工作模块;
数据库建立单元,用于根据所述构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库;
所述验证单元,用于根据所述建立的数据库,验证所述系统动力学仿真模型、离散事件仿真模型的信度与效度。
可以发现,以上方案,能够借助封装技术,通过构建工作模块,实现了任意项目的快速工期建模,极大地节约了建模成本。
进一步的,以上方案,通过系统动力学的分析,揭示工期风险影响在项目建设过程中的传导机制,模拟工期风险影响在项目建设不同阶段的变化情况,并引入蒙特卡洛分析方法对风险的不确定性进行分析,使得风险分析更加贴近于现实。
进一步的,以上方案,能够对于建设项目各利益相关方全面系统地了解工期风险对项目进度的影响具有指导意义,有助于项目各方提前预防工期风险,减少工期风险所造成的损失。
附图说明
图1是本发明基于仿真模型的建设项目工期风险模拟方法一实施例的流程示意图;
图2为本发明安装工作系统动力学仿真模型的示意图;
图3为本发明一般工作系统动力学仿真模型的示意图;
图4为本发明模型类的示意图;
图5为本发明将系统动力学仿真模型封装在离散事件仿真模型中来构建工作模块的示意图。
图6为本发明项目工期风险模拟平台示意图;
图7为本发明离散事件的连接示意图;
图8为本发明基于仿真模型的建设项目工期风险模拟系统一实施例的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种基于仿真模型的建设项目工期风险模拟方法。
请参见图1,图1为本发明基于仿真模型的建设项目工期风险模拟方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括如下步骤:
S101:利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块。
其中,在该利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块之前,还可以包括:
构建系统动力学仿真模型、构建离散事件仿真模型。
其中,该构建系统动力学仿真模型,可以包括:
运用系统动力学的方式对整个建设项目工期风险因素的传导路径进行梳理,对系统边界进行设定,并在边界范围内识别与项目工期关联的所有因素,以及确立该关联的所有因素之间的因果关系及反馈结构,构造系统因果循环图,构建系统动力学仿真模型包括构建建设过程子系统仿真模型、资源子系统仿真模型、项目范围子系统仿真模型、进度目标子系统仿真模型、项目表现子系统仿真模型等。
其中,该构建建设过程子系统仿真模型,可以包括:
根据任何一项工作的基本工作过程,包括“待完成工作”、“待检查工作”和“完成工作”等,该基本工作过程被作为物质流的形式进行流动,构建建设过程子系统仿真模型。
其中,该构建资源子系统仿真模型,可以包括:
根据任何一项工作的基本工作过程所需资源,包括所需要的人工、材料、机械等资源,构建资源子系统仿真模型。
其中,该构建项目范围子系统仿真模型,可以包括:
根据项目范围表示的工程在建设过程中所要求的具体的工作量等,构建项目范围子系统仿真模型。
其中,该构建进度目标子系统仿真模型,可以包括:
根据工作进度过程,包括工作计划进度和实际进度两个主体部分,通过将计划进度和实际进度进行对比可以明确工程是否延期,一旦工程发生延期,立即调动进行工期赶工等,构建进度目标子系统仿真模型。
其中,该构建项目表现子系统仿真模型,可以包括:
根据建设过程中出现的工程质量问题及工程质量问题导致的工程返工、工程延期等,构建项目表现子系统仿真模型。
其中,该构建离散事件仿真模型,可以包括:
根据对建设项目的基本工作进行属性设置,结合具体案例的网络进度计划建立离散事件,并将所构建的离散事件与项目具体工作一一对应,设置每一项工作的最晚开工时间和最晚结束时间,录入每一项工作的资源量,和根据项目的单代号网络图将各项工作进行连接,建立工作之间的逻辑关系等,构建离散事件仿真模型。
S102:根据该构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库。
S103:根据该建立的数据库,结合具体的工程案例进行分析,验证该系统动力学仿真模型、离散事件仿真模型的信度与效度。
在本实施例中,在该建设过程子系统仿真模型中,系统动力学仿真模型会包含任何一项工作的基本工作过程,包含了“待完成工作”、“待检查工作”和“完成工作”,工作被作为物质流的形式在建设过程子系统中流动。该建设过程子系统仿真模型是整个系统动力学仿真模型的核心部分,是连接其他任何一个子系统的桥梁。
在本实施例中,在该资源子系统仿真模型中包含了完成某一项工作所需要的人工、材料和机械,只有在资源充沛的情况下,项目才可以顺利进行,一旦某一项资源供给不足,项目的进度将会受到影响。该资源子系统仿真模型会直接受到进度目标子系统的影响,并直接影响该建设过程子系统仿真模型。例如,该进度目标子系统仿真模型通过计算发现工程延期,需要赶工,因而需要在该资源子系统仿真模型中增加资源的投入量,资源的投入量增加从而会加快该建设过程子系统仿真模型中的施工进度。
在本实施例中,项目范围表示的是工程在建设过程中所要求的具体的量,项目范围的变更在工程中较为普遍,业主需求的变化、设计图纸的改变,具体施工条件的变化都有可能造成项目范围的变更。项目变更会直接造成工程对于资源需求量的变化,与此同时,也有可能造成工程延期。
在本实施例中,该进度目标子系统仿真模型包含了计划进度和实际进度两个主体部分,通过将计划进度和实际进度进行对比可以明确工程是否延期,一旦工程发生延期,该进度目标子系统仿真模型会立即调动该资源子系统仿真模型进行赶工。
在本实施例中,该项目表现子系统仿真模型主要表示为工程的质量问题,工程出现质量问题并且被发现,那么工程将进行返工,返工一旦发生,将可能会造成工期延误,因此该项目表现子系统仿真模型与该进度目标子系统仿真模型相关联;另一方面,项目的赶工会增加工程出现质量问题的可能性,因此该项目表现子系统仿真模型又会与该建设过程子系统仿真模型产生关联。
在本实施例中,该建设过程子系统仿真模型、资源子系统仿真模型、项目范围子系统仿真模型、进度目标子系统仿真模型、项目表现子系统仿真模型等均设定工期风险导入接口,为进行工期风险不确定性模拟如蒙特卡洛模拟做好准备。
在本实施例中,该系统动力学仿真模型,可以包括安装工作系统动力学仿真模型和一般工作系统动力学仿真模型。请参见图2和图3,图2为本发明安装工作系统动力学仿真模型的示意图,图3为本发明一般工作系统动力学仿真模型的示意图。其中,图2模型中变量及其对应的中文名如下表1安装工作模型变量列表所示,图3模型中变量及其对应的中文名如下表2一般工作模型变量列表所示。
表1安装工作模型变量列表
表2一般工作模型变量列表
如图2和图3所示,该安装工作系统动力学仿真模型和一般工作系统动力学仿真模型中所包含的变量及变量之间的关系如下所述。
在本实施例中,影响待完成任务的变量很多,质量问题和隐含问题所造成的返工、施工范围的变化都会影响待完成任务,在本模型中,设置待完成任务的初始量为一预设值。
在本实施例中,等待质检任务的初始值为0,随着待完成任务的不断开展,等待质检任务的量开始增加,当待完成任务全部转化为等待质检任务后,等待质检任务通过质量检查流入已完成任务,如果在此过程中发现质量问题,则会有一部分从待质检任务流入“等待处理质量问题”。
在本实施例中,质检确认无误的任务流入已完成任务,但是质检并不可能达到100%的准确,仍然会有一部分质量问题没有被发现,这部分没有被发现的问题被称为隐含问题。
在本实施例中,任务执行速度受到工作效率、资源的用量、工人数、天气、政策等一系列因素的影响。
在本实施例中,质量问题所造成的返工一般不会立刻执行,而是会存在一定的延时。
在本实施例中,隐藏问题所造成的返工计算方法与质量问题相类似。
在本实施例中,施工过程中的变更会造成工程量的变化,因此变更量等于要求变更的工程量乘以变更系数。
在本实施例中,变更决策包含两种情形:接受和拒绝,因此从“等待变更决策”中流出的变量为“拒绝变更”和“同意变更”。
在本实施例中,如果变更请求被接受,那么相应的工程量将发生变化,这些变化的工程量会重新流入待完成任务中。
在本实施例中,基于实际完工比例与计划完工比例之间的差值,可以得到工程在同一天实际与计划完工比例的差距,将差距除以施工速度,就可以得到具体的延期天数。
在本实施例中,确定变量是在模型运转之前就已经设定好并且在模型运转过程中始终保持不变的变量,由于不同的工作具有不同的特性,因此不同工作的确定性变量也有可能存在差异,确定性变量及其相关解释,可以包括:
1、初始工作量:工作初始状态下所具有工作量,取值为一。
2、理论最大工人数:某一项工作所允许的最大工人数量,超过这一数量,工作效率不会再增加,反而有可能下降。其大小按照具体的工作特点确定。
3、理论材料量:某项工作所需要的材料数,视具体工作而定。
4、理论机械效率:某一项工作所需要的总的机械效率,为各个机械的理论效率之和。
5、工作持续时间:每一项工作所计划的持续时间。
6、初始待质检工作:每一项工作等待质量检查的初始值,由于工作开工前尚未有工作完成,因此该值为零。
7、初始待解决质量问题:每一项工作等待解决质量问题的初始值,在没有工作开始的情况下该值为零。
8、初始发现隐含问题:每一项工作发现隐含问题的初始值,在没有工作开始的情况下该值为零。
9、初始等待审批的设计变更:每一项工作等待审批的实际变更初始值,在没有工作开始的情况下该值为零。
在本实施例中,不确定变量是指模型在模拟过程中所具有的不确定性的变量,这部分变量也是需要进行蒙特卡洛模拟的变量。因此,需要获取这些变量的概率分布函数。以“拒绝变更延迟”为例,在进行工程工期模拟的过程中“拒绝变更延迟”是一个不确定的量,任何人都无法确定拒绝变更的延迟时间。虽然无法确定,但我们却可以基于已有项目的信息获得“拒绝变更延迟”的历史数值,通过这些历史数值进行概率统计而获得“拒绝变更延迟”的概率分布。
在本实施例中,在计算机编程中,类是最为常见的术语。类是对对象的一种抽象,而对象是对客观事物的抽象。具体来说,自然界中每个客观物体都具有一些属性和行为,例如学生的属性有学号、姓名、性别和专业等,学生的行为有上课、考试、实验和实习等。因此,自然界的每一个客观物体都可以用属性和行为来描述,而类就是对这些属性和行为的抽象。在发明所构建的“安装工作系统动力学模型”和“一般工作系统动力学模型”就是对于建设项目中所有工作的一种抽象。
在本实施例中,封装是指将现实世界中存在的某个客体的属性与行为绑定在一起,并放置在一个逻辑单元内。该逻辑单元负责将描述客体的属性作为私有属性隐藏起来,外界对客体内部属性的所有访问只能通过提供的用户接口实现。这样做既可以实现对客体属性的保护作用,又可以提高软件系统的可维护性。只要用户接口不改变,任何封装体内部的改变都不会对软件系统的其他部分造成影响。为了提高模型建模的适用性以及运行效率,本研究提出将系统动力学模型封装成为一个离散事件的模块,以构建“安装工作类”和“一般工作类”。封装技术是面向对象的特征之一,是对象和类概念的主要特性。这两个类与数据库相连,同一个类由于数据库中属性的不同数值,就可以衍生出不同的工作,例如“第一层现浇混凝土”和“第二层现浇混凝土”都属于“一般工作类”,而两个工作的开始时间、材料需求量和持续时间等属性并不相同,而这些属性又恰恰是区分同一个类中不同工作的变量。这一建模理念可以极大地提高模型的运行效率。具体过程如图4所示,图4为本发明模型类的示意图。
请参见图5,图5为本发明将系统动力学仿真模型封装在离散事件仿真模型中来构建工作模块的示意图。如图5所示,“source”表示的是实体产生端,它会产生实体使模型进行运转。相应的,“sink”表示的是实体汇聚端,最终“source”所产生的实体都会汇入“sink”。系统每一次运行,source都会产生一个实体,这个实体一旦从某一工作模块的入口流入,该工作中的系统动力学模型便开始运行。“queue”是离散事件仿真中的特有模块,借鉴的是排队论的原理。“queue”也存在入口与出口并且与系统动力学模型直接相关联。“queue”中入口和出口的下侧分别标有两个数字,这两个数字的取值存在两种情况:0和1。当实体尚未到达,数字显示为0,一旦实体到达,数字便显示为1。“queue”的入口与工作模块的入口是紧密联系的,一旦实体到达工作模块的入口,“queue”的入口数字便随即显示为1,“queue”可以记录模块中系统动力学模型的时间,即该任务的实际工期。“hold”会卡住实体,在系统动力学模型运行完后让实体通过。当模块中的系统动力学模型运行完毕,实体便会从“queue”中流出,“hold”放行,与此同时,实体从工作模块的出口流出,进入下一项工作任务。
在本实施例中,基于封装的模块,离散事件可以实时地和系统动力学模型交互,触发系统动力学模型,当系统动力学中的工作量已完成就会触发下一个离散事件的启动,很好的模拟了现实世界中工程建设的情况;与此同时,本发明开发了一系列的实时可视化界面和数据输出插件,可在仿真的过程中或仿真结束后动态地跟踪各个子模块的进程。此外,可在仿真的过程中,模拟项目经理的决策对项目在遇到风险的情况下,各种不同处理风险的手段的效果,减低决策失败对工程进度的影响。在本仿真模型里,由于使用面向对象的编程算法,代码复用率高达60%,在降低模型的资源消耗的同时极大的提高了模型的运转速度。
请参见图6,图6为本发明项目工期风险模拟平台示意图。如图6所示,模块中1区为系统动力学模型、离散事件部分模型。模块中的2区为实时可视化界面,在模型运转的过程中可实时跟踪项目的进展及其他关键指标。模块中3区为本研究的另一重点:开发的系统动力学和离散事件信息交互的插件、数据读取和采集存储插件、表函数等插件。模型中每一个模块中的系统动力学的变量均与数据库相连,随着模型的运转,数据会实时地导入数据库,与此同时,每一个变量随时间的变化情况也会以图像的形式展现出来。
在本实施例中,得益于模块的封装,本发明可以快速地使用SyetemDynamicModule工作模块类来产生各种工作对象(如:基础工程、模板工程、钢筋绑扎工程等),结合Anylogic软件自身提供的UML(Unified Modeling Language)建模技术,可从编写的工作类和模板库中将所需对象拖拉到工作空间中,再定义这些对象间的相互关系(即:网络计划),使离散事件逻辑建模过程变得直观快捷。
在本实施例中,用到的离散事件的模块有:Source、Split、Combine、Sink、SyetemDynamic Module。Source模块是工作流产生的地方;Split模块功能是当某一工作的后续工作是并行的情况下将工作流分流,并实现信息的交互;Combine模块功能是当某一工作的准备工作是多个时,需等待所有准备工作完成的情况下才会将工作流传递给下一个模块,并实现信息的交互;Sink模块是工作流结束的地方,当工作流至此模块意味着整个建设项目竣工。SyetemDynamicModule模块可用于产生各个工作对象,根据具体项目的数据可以得到每一个项目的工作数据输入工作模块,模拟建设工程项目的各个工作,进而对整个建设项目的进度进行模拟。
请参见图7,图7为本发明离散事件的连接示意图。如图7所示,建设工程项目的工作与工作之间的紧前紧后关系存在“一对一”、“一对多”和“多对一”三种情况,包括:
1、一对一
如图7中的Task4与Task5,Task4中的系统动力学模型中工作完成,触发Task4中的系统动力学停止运算,与此同时,相应的属性传递给Task5,并触发Task5中的系统动力学运转。
2、一对多
如图7中的Task1、Task2和Task3,Task1作为紧前工作与Task2和Task3相连,Task1中的工作完成,自动激发Task2和Task3中的工作开始运转。
3、多对一
如图7所示,Task2和Task3作为紧前工作与Task4相连,Task2和Task3的工作均完成后才会触发Task4进行运转。
在本实施例中,由于封装的模块产生的对象在运行时需要大量的初始数据,在软件里手动输入繁琐且极易输错数据。本发明开发了仿真模型与数据库交互的插件,实现直接从数据库快速读取数据,并赋值给相应模块的功能。在本发明中,Microsoft OfficeAccess 2010被用于数据库的构建。Anylogic的软件开发人员在Anylogic与Access之间开发了应用程序编程接口(API),这使得Anylogic可以很方便地从Access中读取数据。但值得注意的是,一般电脑的JDBC数据源管理器中的连接池超时设定中的Driver do MicrosoftAccess(*.mdb)值为60。这表明如果将模型中构建的“安装工作类”和“一般工作类”直接与数据库相连,一旦工作总数超过60,将使得模型的数据量超载。为消除这一影响,本研究将数据库与模型的Main相连。
在本实施例中,由于本发明存在两个工作类,因此需要在Main中建立两个函数进行数据读取,分别为“ReadDataFromDatabaseCommon”和“ReadDataFromDatabaseInstallation”。其中“ReadDataFromDatabaseCommon”从数据库中为“一般工作类”提取数据,“ReadDataFromDatabaseInstallation”从数据库中为“安装工作类”提取数据。以“一般工作类”为例,其包含两种类型的数据:确定性数据与不确定性数据。
在本实施例中,读取确定性数据的代码如下所示:
ResultSetrs=DB_Input.getResultSet("SELECT*From Info where name='"+work.getName()+"'");while(rs.next()){work.Initial_Duration=rs.getFloat("Duration");work.TheLatestStartTime=rs.getFloat("TheLastedStartTime");work.TheoreticalEfficiencyOfMachine=rs.getFloat("TheoreticalEfficiencyOfMachine");work.MechanicalEfficiency=rs.getFloat("MechanicalEfficiency");work.NumberOfMachine=rs.getFloat("NumberOfMachine");work.MaterialQuanlity=rs.getFloat("MaterialQuanlity");work.RequiredMaterial=rs.getFloat("RequiredMaterial");work.MaximumNumberOfWorker=rs.getFloat("MaximumNumberOfWorker");work.WorkersProficiency=rs.getFloat("WorkersProficiency");work.OriginalNumberOfWorker=rs.getFloat("OriginalNumberOfWorker");}。
在本实施例中,读取不确定性变量的过程相对而言更为复杂,因为要事先知道不确定性变量的概率分布,详细过程将在下一节论述,在这里假设变量服从三角分布和二项分布,代码如下:
ResultSet rs1=DB_Input.getResultSet("SELECT*From MonteCarlo wherename='"+work.getName()+"'");while(rs1.next()){WeatherImpact=rs1.getFloat("WeatherImpact")work.ScaleChangeRate=triangular(rs1.getDouble("SCR1"),rs1.getDouble("SCR2"),rs1.getDouble("SCR3"));work.DelayDueToReinstallation=triangular(rs1.getDouble("DDTRI1"),rs1.getDouble("DDTRI2"),rs1.getDouble("DDTRI3"));work.DelayDueToReproduction=triangular(rs1.getDouble("DDTRP1"),rs1.getDouble("DDTRP2"),rs1.getDouble("DDTRP3"));work.DelayDueToApprovalProcedures=triangular(rs1.getDouble("DDTAP1"),rs1.getDouble("DDTAP2"),rs1.getDouble("DDTAP3"));work.ApprovalPercentage=triangular(rs1.getDouble("AP1"),rs1.getDouble("AP2"),rs1.getDouble("AP3"));work.DefectProbability=rs1.getFloat("DP");work.FailureProbability=rs1.getFloat("FP");work.DCPTC1=rs1.getFloat("DCPTC1");work.DCPTC2=rs1.getFloat("DCPTC2");work.DCPTC3=rs1.getFloat("DCPTC3");work.DCR1=rs1.getFloat("DCR1");work.DCR2=rs1.getFloat("DCR2");work.DCR3=rs1.getFloat("DCR3");work.IER1=rs1.getFloat("IER1");work.IER2=rs1.getFloat("IER2");work.IER3=rs1.getFloat("IER3");work.DR1=rs1.getFloat("DR1");work.DR2=rs1.getFloat("DR2");work.DR3=rs1.getFloat("DR3")。
本发明还提供一种基于仿真模型的建设项目工期风险模拟系统。
请参见图8,图8为本发明基于仿真模型的建设项目工期风险模拟系统一实施例的结构示意图。本实施例中,该基于仿真模型的建设项目工期风险模拟系统80包括系统动力学仿真模型构建单元81、离散事件仿真模型构建单元82、工作模块构建单元83、数据库建立单元84、验证单元85。
该工作模块构建单元83与系统动力学仿真模型构建单元81、离散事件仿真模型构建单元82分别相连接,该数据库建立单元84与该工作模块构建单元83、验证单元85分别相连接。
该系统动力学仿真模型构建单元81,用于构建系统动力学仿真模型。
该离散事件仿真模型构建单元82,用于构建离散事件仿真模型。
该工作模块构建单元83,用于将该构建的系统动力学仿真模型封装在该构建的离散事件仿真模型中来构建工作模块。
数据库建立单元84,用于根据该构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库。
该验证单元85,用于根据该建立的数据库,验证该系统动力学仿真模型、离散事件仿真模型的信度与效度。
其中,该系统动力学仿真模型构建单元81,可以具体用于:
运用系统动力学的方式对整个建设项目工期风险因素的传导路径进行梳理,对系统边界进行设定,并在边界范围内识别与项目工期关联的所有因素,以及确立该关联的所有因素之间的因果关系及反馈结构,构造系统因果循环图,构建系统动力学仿真模型。
其中,该离散事件仿真模型构建单元82,可以具体用于:
根据对建设项目的基本工作进行属性设置,结合具体案例的网络进度计划建立离散事件,并将所构建的离散事件与项目具体工作一一对应,设置每一项工作的最晚开工时间和最晚结束时间,录入每一项工作的资源量,和根据项目的单代号网络图将各项工作进行连接,建立工作之间的逻辑关系等,构建离散事件仿真模型。
其中,该工作模块构建单元83,可以具体用于:
利用封装原理方式,将该构建的系统动力学仿真模型封装在该构建的离散事件仿真模型中来构建工作模块。
其中,该验证单元85,可以具体用于:
根据该建立的数据库,结合具体的工程案例进行分析,验证该系统动力学仿真模型、离散事件仿真模型的信度与效度。
其中,系统动力学仿真模型构建单元81,可以包括:
建设过程子系统仿真模型811、资源子系统仿真模型812、项目范围子系统仿真模型813、进度目标子系统仿真模型814、项目表现子系统仿真模型815。
该建设过程子系统仿真模型811,用于将任何一项工作的基本工作过程包括“待完成工作”、“待检查工作”和“完成工作”等被作为物质流的形式进行流动。
该资源子系统仿真模型812,用于配置任何一项工作的基本工作过程所需资源,包括所需要的人工、材料、机械等资源。
该项目范围子系统仿真模型813,用于配置项目范围表示的工程在建设过程中所要求的具体的工作量等。
该进度目标子系统仿真模型814,用于配置工作进度过程,包括工作计划进度和实际进度两个主体部分,通过将计划进度和实际进度进行对比可以明确工程是否延期,一旦工程发生延期,立即调动进行工期赶工等。
该项目表现子系统仿真模型815,用于配置建设过程中出现的工程质量问题及工程质量问题导致的工程返工、工程延期等。
该基于仿真模型的建设项目工期风险模拟系统80的各个单元模块可分别执行上述方法实施例中对应步骤,故在此不对各单元模块进行赘述,详细请参见以上对应步骤的说明。
可以发现,以上方案,能够借助封装技术,通过构建工作模块,实现了任意项目的快速工期建模,极大地节约了建模成本。
进一步的,以上方案,通过系统动力学的分析,揭示工期风险影响在项目建设过程中的传导机制,模拟工期风险影响在项目建设不同阶段的变化情况,并引入蒙特卡洛分析方法对风险的不确定性进行分析,使得风险分析更加贴近于现实。
进一步的,以上方案,能够对于建设项目各利益相关方全面系统地了解工期风险对项目进度的影响具有指导意义,有助于项目各方提前预防工期风险,减少工期风险所造成的损失。
在本发明所提供的几个实施方式中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于仿真模型的建设项目工期风险模拟方法,其特征在于,包括:
利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块;
根据所述构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库;
根据所述建立的数据库,结合具体的工程案例进行分析,验证所述系统动力学仿真模型、离散事件仿真模型的信度与效度。
2.如权利要求1所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,在所述利用封装原理方式,将已构建的系统动力学仿真模型封装在已构建的离散事件仿真模型中来构建工作模块之前,还包括:
构建系统动力学仿真模型、构建离散事件仿真模型。
3.如权利要求2所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建系统动力学仿真模型,包括:
运用系统动力学的方式对整个建设项目工期风险因素的传导路径进行梳理,对系统边界进行设定,并在边界范围内识别与项目工期关联的所有因素,以及确立所述关联的所有因素之间的因果关系及反馈结构,构造系统因果循环图,构建系统动力学仿真模型包括构建建设过程子系统仿真模型、资源子系统仿真模型、项目范围子系统仿真模型、进度目标子系统仿真模型、项目表现子系统仿真模型。
4.如权利要求3所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建建设过程子系统仿真模型,包括:
根据任何一项工作的基本工作过程,包括“待完成工作”、“待检查工作”和“完成工作”,所述基本工作过程被作为物质流的形式进行流动,构建建设过程子系统仿真模型。
5.如权利要求3所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建资源子系统仿真模型,包括:
根据任何一项工作的基本工作过程所需资源,包括所需要的人工、材料、机械资源,构建资源子系统仿真模型。
6.如权利要求3所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建项目范围子系统仿真模型,包括:
根据项目范围表示的工程在建设过程中所要求的具体的工作量,构建项目范围子系统仿真模型。
7.如权利要求3所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建进度目标子系统仿真模型,包括:
根据工作进度过程,包括工作计划进度和实际进度两个主体部分,通过将计划进度和实际进度进行对比可以明确工程是否延期,一旦工程发生延期,立即调动进行工期赶工,构建进度目标子系统仿真模型。
8.如权利要求3所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建项目表现子系统仿真模型,包括:
根据建设过程中出现的工程质量问题及工程质量问题导致的工程返工、工程延期,构建项目表现子系统仿真模型。
9.如权利要求2所述的基于仿真模型的建设项目工期风险模拟方法,其特征在于,所述构建离散事件仿真模型,包括:
根据对建设项目的基本工作进行属性设置,结合具体案例的网络进度计划建立离散事件,并将所构建的离散事件与项目具体工作一一对应,设置每一项工作的最晚开工时间和最晚结束时间,录入每一项工作的资源量,和根据项目的单代号网络图将各项工作进行连接,建立工作之间的逻辑关系,构建离散事件仿真模型。
10.一种基于仿真模型的建设项目工期风险模拟系统,其特征在于,包括:
系统动力学仿真模型构建单元、离散事件仿真模型构建单元、工作模块构建单元、数据库建立单元、验证单元;
所述工作模块构建单元与系统动力学仿真模型构建单元、离散事件仿真模型构建单元分别相连接,所述数据库建立单元与所述工作模块构建单元、验证单元分别相连接;
所述系统动力学仿真模型构建单元,用于构建系统动力学仿真模型;
所述离散事件仿真模型构建单元,用于构建离散事件仿真模型;
所述工作模块构建单元,用于将所述构建的系统动力学仿真模型封装在所述构建的离散事件仿真模型中来构建工作模块;
数据库建立单元,用于根据所述构建的工作模块,建立系统动力学仿真模型、离散事件仿真模型和蒙特卡洛模拟共享的数据库;
所述验证单元,用于根据所述建立的数据库,验证所述系统动力学仿真模型、离散事件仿真模型的信度与效度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810876949.6A CN109710958A (zh) | 2018-08-03 | 2018-08-03 | 一种基于仿真模型的建设项目工期风险模拟方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810876949.6A CN109710958A (zh) | 2018-08-03 | 2018-08-03 | 一种基于仿真模型的建设项目工期风险模拟方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109710958A true CN109710958A (zh) | 2019-05-03 |
Family
ID=66253767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810876949.6A Pending CN109710958A (zh) | 2018-08-03 | 2018-08-03 | 一种基于仿真模型的建设项目工期风险模拟方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710958A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378670A (zh) * | 2019-07-17 | 2019-10-25 | 重庆大学 | 一种空间网络技术模型及其构建方法和应用 |
CN111260333A (zh) * | 2020-02-11 | 2020-06-09 | 长江师范学院 | 一种基于系统动力学仿真的高校基建项目管理方法 |
CN112070488A (zh) * | 2020-09-22 | 2020-12-11 | 深圳市安远瑞盈项目管理有限公司 | 一种工程建设项目实时进度管理系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101630252A (zh) * | 2009-07-07 | 2010-01-20 | 中国科学院软件研究所 | 一种基于过程仿真技术进行软件项目进度控制的方法 |
-
2018
- 2018-08-03 CN CN201810876949.6A patent/CN109710958A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101630252A (zh) * | 2009-07-07 | 2010-01-20 | 中国科学院软件研究所 | 一种基于过程仿真技术进行软件项目进度控制的方法 |
Non-Patent Citations (1)
Title |
---|
徐霄枭: "建设项目施工阶段工期风险分析一一基于复杂系统视角", 《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378670A (zh) * | 2019-07-17 | 2019-10-25 | 重庆大学 | 一种空间网络技术模型及其构建方法和应用 |
CN111260333A (zh) * | 2020-02-11 | 2020-06-09 | 长江师范学院 | 一种基于系统动力学仿真的高校基建项目管理方法 |
CN112070488A (zh) * | 2020-09-22 | 2020-12-11 | 深圳市安远瑞盈项目管理有限公司 | 一种工程建设项目实时进度管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dahmann et al. | The department of defense high level architecture | |
US7580819B2 (en) | Adaptive mission profiling | |
CN109710958A (zh) | 一种基于仿真模型的建设项目工期风险模拟方法及系统 | |
Petriu et al. | A metamodel for generating performance models from UML designs | |
Lin et al. | ABS-YARN: A formal framework for modeling Hadoop YARN clusters | |
CN109491642A (zh) | 一种基于场景的需求建模系统及方法、信息数据处理终端 | |
CA2952093A1 (en) | Visual software modeling method based on software meta-view fore constructing software view | |
CN110516277A (zh) | 快速的建模、仿真方法及系统、计算机设备、存储设备 | |
Morales et al. | A formalization proposal of timed BPMN for compositional verification of business processes | |
Kim et al. | DEVS Framework and toolkits for simulators interoperation using HLA/RTI | |
Bohács et al. | Production logistics simulation supported by process description languages | |
Lustman | Specifying transaction-based information systems with regular expressions | |
Morita | Toward Realization of Service-Oriented Architecture(SOA) | |
Fan et al. | An engineering methodology for facilitating architecture development of large-scale and complex systems | |
Smith | Designing high-performance distributed applications using software performance engineering: A tutorial | |
Garyaeva et al. | Automation of the process of coordinating project work | |
Dubois et al. | Extended Architectural Models: First Steps Towards the Reconciliation of the'Soft'and the'Hard'Parts of an Enterprise | |
Amini et al. | A New Architecture for Enterprise Resource Planning SystemsBased on a Combination of Event-based Software Architecture and Service-oriented Architecture | |
CN114357816A (zh) | 智能仿真资源调度方法及系统 | |
Luo et al. | Modeling method for integration of air command and security process | |
Roszkowski et al. | The Simulation of Software Processes in the Integrated Computer Environment in the Case of Telco Sector | |
Septiana et al. | Development of an information system for college students achievement ranking using scrum framework | |
Bloechle et al. | Simulation interoperability using Micro Saint simulation software | |
Elfving et al. | Impact of multitasking and merge bias on procurement of complex equipment | |
Abramson | Parametric Modelling: Killer Apps for Linux Clusters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |