管理系统模拟2.ppt
《管理系统模拟2.ppt》由会员分享,可在线阅读,更多相关《管理系统模拟2.ppt(205页珍藏版)》请在三一办公上搜索。
1、管理系统模拟,系统研究的有效方法,哈尔滨工业大学管理学院 马维忠副教授,管理科学与工程系列课程,管理系统模拟 马维忠,2,方差缩减技术,对仿真的输出结果进行统计分析的主要目的是获得系统状态变量的高精度的统计特性,以便能够对仿真结果加以正确的利用。但获得高精度的代价便是计算时间和存储空间的巨大耗费。,管理系统模拟 马维忠,3,尤其是对复杂而庞大的系统来说,为进行统计分析而要求的计算能力和存储空间无法被满足,在这种情况下就不得不降低仿真结果的精度,甚至可能降到无法接受的程度。为了消除这个矛盾,有必要采用方差缩减技术,即在相同的仿真运行次数下获得较小方差的仿真输出结果。,管理系统模拟 马维忠,4,1
2、 公用随机数法(CRN),公用随机数法是最有用且最普通的方差缩减技术,它可以应用于对两个或几个不同的系统模型进行比较的情况。,管理系统模拟 马维忠,5,对于不同系统模型来说,所观测到的仿真运行结果是有差异的。造成这种差异的原因可能有两个,一个是系统模型构造上的差异;另一个是环境因素,这主要表现在对于系统的同一个随机特征不同的模型所取的随机变量值不同。,管理系统模拟 马维忠,6,采用公用随机数法的目的就是在其它环境条件完全相同的情况下,尽量消除选取随机数造成了仿真运行结果的差异,而使所观测到的差异仅起因于系统模型本身的差异。,管理系统模拟 马维忠,7,公用随机数法的思想就是,在不同模型的仿真运行
3、过程中,采用相同的单位均匀分布种子随机数流。,管理系统模拟 马维忠,8,管理系统模拟 马维忠,9,为了实施公用随机数法,需要使各个模型中的随机数同步,即在一个模型中使用于一个具体目的的随机数,在所有其它模型中也应使用于这同一目的,管理系统模拟 马维忠,10,在仿真中达到这种同步的一般原则为:(1)如果能够有几个可同时工作的不同随机数发生器,则可用一个发生器专门为一个指定的随机变量产生种子。不同的随机变量用不同的随机数发生器。(2)事先产生出所需的随机数并存储,在对每个模型仿真运行时按需要取用它们。(3)尽量使用逆变换法产生随机变量,因为这种方法每产生一个随机变量仅需要一个单位均匀分布随机数。,
4、管理系统模拟 马维忠,11,2 对偶变量法(AV),对偶变量法是一种应用于单个系统模型仿真运行时的方差缩减技术。对于同一个系统模型,每次仿真运行中得到的观测数据是存在差异的,同样,这种差异可能是由于随机数的选取引起的。采用对偶变量法的目的就是尽量消除这种差异。,管理系统模拟 马维忠,12,对偶变量法的中心思想就是在系统模型的两次仿真运行过程中,设法使第1次运行中的小观测值能够被第2次运行中的大观测值补偿,或反之。,管理系统模拟 马维忠,13,这相当于采用两次运行中观测值的平均值作为分析的基准数据点,而这个平均值与所估计的观测值的期望更接近。一般情况下,对偶变量法使用互补的随机数驱动系统模型的两
5、次仿真运行。,管理系统模拟 马维忠,14,管理系统模拟 马维忠,15,五、仿真模型校验,校验的概念校验过程和方法,管理系统模拟 马维忠,17,1 基本概念,国际仿真界已达成一种共识,与模型和仿真(Modeling and Simulation,M&S)有效性有关的主要工作包括模型的验证和确认(Verification and Validation,V&V)版本管理(Configuration Management,CM和认定(Accreditation)。,管理系统模拟 马维忠,18,美国军事运筹学会关于这些概念的定义如下:,管理系统模拟 马维忠,19,模型验证是一个过程,它确定模型的计算机实
6、现是否准确地表示了模型开发者对系统的概念表达和描述。,管理系统模拟 马维忠,20,模型确认是一个过程,它从预期应用的角度来确定模型表达实际系统地准确程度。,管理系统模拟 马维忠,21,模型版本管理是一种制度,它应用技术上和行政上的监督、控制手段,辨明模型的功能需求和能力并编写相应的文本。然后,监控模型能力的变化,将这些变化写入文本并发布相应的报告。,管理系统模拟 马维忠,22,模型认定是一项相信并接受某一模型的权威性决定,它表明官方已认可模型适用于某一特定的目的。,管理系统模拟 马维忠,23,以上工作一般统称为模型验证、确认和认定(VV&A),国内习惯称为模型校验,管理系统模拟 马维忠,24,
7、VV&A工作的目的是评价对M&S的信任度(Credibility),评估信任度的过程称为可信度评估(Confidence Assessment)。目前,信任度还没有定量的度量方法,仅表示用户对M&S主观上的信任程度。,管理系统模拟 马维忠,25,管理系统模拟 马维忠,26,2 模型校验管理方法,2.1 组织管理 1 组建模型校验的管理机构,明确各单位的责任,详见下表。没有严密的组织措施,模型校验工作是无法开展的。,管理系统模拟 马维忠,27,管理系统模拟 马维忠,28,管理系统模拟 马维忠,29,2.2 过程管理 模型校验是贯穿仿真系统全生命周期的一个工作过程,需要细致周到的过程管理。模型校验
8、过程可以依照以下步骤进行(称为十步校验法),管理系统模拟 马维忠,30,1 组建模型校验管理办公室由模型校验办公室负责建立模型用户、建模单位、校模单位之间的合作关系,并与上级主管部门及其它有关部门建立联系。,管理系统模拟 马维忠,31,2 编制、发放校验指南、计划和文本规范向参加模型校验的有关单位发放(或提交)模型校验指南和模型校验计划。在模型校验指南中明确模型校验的背景、名词术语和所采用的方法;在模型校验计划中明确各单位的职责(参见表7.1),模型校验的步骤、重点和详细计划,以及要求达到的模型可信度指标。然后,按照模型校验文本化方法,编制、发放模型确认文本规范和模型验证文本规范。,管理系统模
9、拟 马维忠,32,3 模型预审理论模型完成后,可以组织专家进行评审,并写出模型预审报告。如果评价值高于某一指标,可转入编程阶段;否则,明确模型存在的问题,责令建模单位修改模型后再提交评审。,管理系统模拟 马维忠,33,4 提交模型、仿真程序以及模型确认文本和模型验证文本对建模单位提交的模型确认文本和模型验证文本要进行严格审查,不满足规范者,必须责令重写。,管理系统模拟 马维忠,34,5 模型验证(a)代码会审完成仿真模型的详细设计方案或计算机代码调试通过后,组织代码会审。(b)静态分析和动态测试由模型校验管理办公室组织模型校验单位、模型用户和建模单位,编写程序分析方案和程序测试方案,并组织专门
10、人员进行仿真程序的静态分析和动态测试。,管理系统模拟 马维忠,35,(c)实例测试由用户单位或用户指定的其它单位提供实例,并在模型校验管理办公室的组织下进行测试。验证过程完成后,由模型校验单位编写模型验证报告。如果发现程序还存在必须修改的问题,则交建模单位修改后再对修改部分和可能引起变动的部分进行分析和测试,并修改模型验证报告中的有关内容。,管理系统模拟 马维忠,36,6 可信度指标分配与确认方法选择如果实际系统/参考系统的实验数据无法获取,则根据模型组成、研制单位情况和模型校验要求,将模型分解成M个便于校验、相对独立的子模型,并根据各子模型在总体模型中的相对重要程度,给各子模型分配模型可信度
11、指标。重要度越高的子模型,可信度指标越高。在人力和经费有限的情况下,可以根据子模型在总体模型中的相对重要程度来决定各子模型的确认方法,重要度高的模型(I类模型)尽量采用运行有效性方法,重要度低的(II类模型)可采用主观有效性方法。,管理系统模拟 马维忠,37,7 灵敏度分析通过灵敏度分析,可以得到I类子模型的关键输入/输出变量。注意,6中要求的子模型在总体模型中的相对重要程度,也可以通过子模型的输出对总模型输出影响的灵敏度分析得到,但实现起来有一定的限制。,管理系统模拟 马维忠,38,8 数据获取根据具体要求,由模型校验单位确定在运行有效性确认中所采用的统计检验方法,并编写、发放数据需求手册。
12、手册中:(1)对I类模型,明确建模单位、用户单位分别应提供的模型、实际/参考系统的实验数据及其实验条件设置;(2)对II类模型,明确建模单位所应完成的、用于主观有效性确认的各种检验和测试结果。对建模、用户单位分别提交的数据手册(一)、数据手册(二)要进行严格审查,不满足要求者,必须责令重写。,管理系统模拟 马维忠,39,9 模型确认包括3部分内容:(1)运行有效性确认;(2)主观有效性确认;(3)加权可信度评估。模型的加权可信度可作为M&S项目信任度评定的主要依据。确认过程完成后,由模型校验单位编写模型确认报告。如果发现模型还存在必须修改的问题,则变由建模单位修改后再对修改部分和可能引起变动的
13、部分进行分析或确认,并修改模型确认报告中的有关内容。,管理系统模拟 马维忠,40,10 M&S有效性认定将以上过程中形成的各种文本和结果提交上级主管部门,并提交模型校验总结报告和M&S项目认定申请报告。由上级主管部门组织认定工作,并发放认定证书。,管理系统模拟 马维忠,41,3 模型验证方法,3.1 验证方法综述 模型验证是针对仿真模型与程序进行的,目的是证实从实际系统的描述模型到其计算机程序之间的转换是正确的,简单地说就是检查仿真程序有无错误。,管理系统模拟 马维忠,42,原则上讲,软件工程领域提出的所有软件验证方法都可用于仿真程序验证,只是各种方法的实用价值不同。下面的两张表2给出了可用于
14、模型验证的各种方法及其分类,并对这些方法进行了比较,管理系统模拟 马维忠,43,管理系统模拟 马维忠,44,管理系统模拟 马维忠,45,管理系统模拟 马维忠,46,3.2 模型验证方法 前面给出的方法中,符号分析、约束分析和理论证明是模型验证的高级手段;虽然效果好,但实施起来困难较大,对于某些复杂程序甚至是不可能的。下面给出的是适用性较强的仿真模型验证方法及步骤。,管理系统模拟 马维忠,47,1 代码会审 代码会审是非正规分析方法的一种。代码会审可以在程序代码形成之前或之后进行。代码会审通常以会议的形式进行,会审小组由组长、程序验证人员和2-3名程序作者组成,管理系统模拟 马维忠,48,会审小
15、组在充分阅读待审程序文本、控制流程图及有关要求、规范等文件的基础上,召开程序审查会议。程序员讲解程序的逻辑及执行过程,并展开讨论甚至争论,以揭示错误的关键所在,管理系统模拟 马维忠,49,也可以为程序选择一些有代表性的测试用例和数据,进行概念执行,即在纸面上把程序走一遍,观察是否得到预期的结果。,管理系统模拟 马维忠,50,概念执行着重于从流程的角度考察程序,借助流程图来进行数据流和控制流的分析。流程图以节点表示程序段,有向边表示控制路径。利用测试用例执行控制流程图,可以分析程序的行为、定位断点、辨识路径、完成代码检查。流程图对检测不合法的编码和控制转移、不恰当的嵌套和重入以及多入口-多出口结
16、构的问题非常有用。,管理系统模拟 马维忠,51,比流程图更进一步的是调用图,它用节点表示程序单元(语句、主程序段、过程、子程序及函数等),有向边表示程序单元间的控制和调用,从语义角度而非语法角度考察程序的控制路径。调用图可以检查变量的说明和使用、全程变量、参数表误用等问题,并为动态测试用例设计提供可靠的依据。,管理系统模拟 马维忠,52,2 静态分析和动态测试静态分析通常在程序代码形成之后进行。静态分析针对程序代码进行,旨在分析程序的结构、数据流和一致性等。,管理系统模拟 马维忠,53,与代码会审不同的是,静态分析的过程更加具体、规范和重点分明,而且可以部分地借助CASE工具完成,管理系统模拟
17、 马维忠,54,利用CASE工具,以程序代码作为CASE软件的输入,可以得到程序的逻辑流图、模块结构关系图、函数/模块/子例程的交叉引用表以至状态过程图。,管理系统模拟 马维忠,55,动态测试的基本思想是,将程序视为函数,取函数定义域中诸元素的各种组合情况作为输入,实际运行程序,判定程序的输出是否在定义域内。这种穷举法是全面保证软件质量的唯一方法,但也是一种不切实际的方法。,管理系统模拟 马维忠,56,我们可以从函数定义域中合理、有效地选取具有代表性的子集,这些子集尽可能覆盖整个定义域而又能使测试付诸实施。动态测试过程中,可以分析模型的动态输出结果,也可进行图形、动画显示,直觉判断程序的正确性
18、。,管理系统模拟 马维忠,57,动态测试可分为结构测试功能测试两种。,管理系统模拟 马维忠,58,(a)结构测试结构测试是根据对模型内部逻辑结构的分析,选取测试数据集(即测试用例)。测试数据集对程序逻辑的覆盖程度决定了测试完全性的程度。,管理系统模拟 马维忠,59,常用的覆盖指标有语句覆盖 用足够多的测试用例使程序的每一语句至少被执行一次。分支覆盖 用足够多的测试用例使程序的每一判断分支至少被通过一次。条件覆盖 用足够多的测试用例使程序的每一判断条件下的结果至少取到一次。多重条件覆盖 使用足够多的测试用例,既使每一判断分支至少被通过一次,又使所有判断条件下各种可能结果的每种组合至少出现一次。,
19、管理系统模拟 马维忠,60,(b)功能测试功能测试是根据对程序功能的分析,推演出由函数定义域中有代表性的元素组成的测试数据集,这些数据应包括对程序有效和无效的输入,或极端的、正常的和特殊的数据元素(可有简单值,也可以有复杂的数据结构)等。,管理系统模拟 马维忠,61,功能测试可以进行定性检查和定量测试。对于某些定性的指标,可以上机实际运行,作定性的检查;对于定量的指标,则需选取一定的测试方法。如某一个输入变量X,输入值范围为1.0X2.0,不可能将l.0到2.0的所有数值都作为输入进行测试,可以采取如下的测试方法:,管理系统模拟 马维忠,62,等价分类测试:根据程序的I/O特性,将程序的定义域
20、划分为有限个等价区段,使得从每个区段内抽取的代表性数据进行的测试等价于该区段内任何数据的测试。对于每个输入条件,存在着对程序有效输入的有效等价类和对程序错误输人的无效等价类。例如,对1.02.0,从中取典型数值进行测试。,管理系统模拟 马维忠,63,等价类的划分取决于程序的功能要求、定义域和测试人员对问题的理解力和创造力。随着软件开发的进展,系统的总体功能在各个阶段上自顶向下不断细化和求精,从而为相应级别上的等价划分和功能测试用例的选择提供了很大的指导作用;确定等价类后,先选取尽可能多的测试用例覆盖所有有效等价类,然后选取覆盖所有无效等价类的测试用例。,管理系统模拟 马维忠,64,等价分类测试
21、可以检查出控制流方面的错误,以及对错误的处理能力。,管理系统模拟 马维忠,65,边值分析测试:根据I/O等价类边界或紧靠边界的条件选择测试用例,用于检查边界上的错误。,管理系统模拟 马维忠,66,错误猜测测试:基于人们的经验和直觉,猜测可能发生的某些错误类型,并依此选择测试用例去发现错误。,管理系统模拟 马维忠,67,4 模型确认方法,模型确认的目的是检验和评估模型的有效性(Validity)。模型有效性一般通过在给定实验条件下检验仿真模型,评价其在预期的应用目的下是否满足一定的精度要求来实现。关于模型有效性的检验和评价,以下几个概念须明确:,管理系统模拟 马维忠,68,1)模型的正确性和精度
22、模型精度是关于模型结果正确性的度量值。判断模型结果是否正确的最终办法是“通过实践来检验”,即通过比较模型结果与实际系统的运行结果的偏差来计算模型的精度,称为运行有效性(Operational Validity)。仿真模型的精度一般用可接受的精度范围(ARA,Acceptable Range of Accuracy)来表示。,管理系统模拟 马维忠,69,2)模型有效性模型有效性是模型可用性的度量,与实验条件、应用目的、精度要求和用户有关。模型有效性的度量值可以用模型可信度来表示。如果实际系统的结果无法获取,可以用参考系统(Reference System)的数据取代实际系统数据进行近似的精度计算
23、,并以此作为可信度评估的依据。特别情况下,参考系统数据也无法得到,只有通过主观评价得到模型的可信度,称为主观有效性。这就是采用有效性而非精度作为模型确认结果的主要原因。,管理系统模拟 马维忠,70,3)应用目的和实验条件模型有效与否是相对一定的应用目的及相应的实验条件而言的。同一模型在某一实验条件下有效,在另一实验条件下则可能是无效的。评估时模型和实际/参考系统的实验或运行条件应当是相同的。实验条件的设定很大程度上取决于应用目的。模型精度是否满足要求也与应用目的有关。,管理系统模拟 马维忠,71,模型确认的方法可谓五花八门,下面列举其中较有代表性的方法:,管理系统模拟 马维忠,72,图灵测试法
24、询问对实际系统比较熟悉的人,看他们是否能分辨出哪些是模型结果,哪些是系统的实际数据,管理系统模拟 马维忠,73,主观有效性评价由熟悉实际系统的专家评价模型及其输出结果是否合理,管理系统模拟 马维忠,74,理论比较法将模型结果与理论计算结果进行比较,以判断模型的正确性,管理系统模拟 马维忠,75,手算法模型的所有输大值和内部变量都采用规定值,看模型结果是否与手算结果相同,管理系统模拟 马维忠,76,模型比较法将模型结果与已普遍认为有效的模型的结果进行比较,根据其偏差评价模型的有效性,管理系统模拟 马维忠,77,事件有效性检验将仿真过程中出现的事件与实际系统发生的事件比较,看它们是否相同,管理系统
25、模拟 马维忠,78,局部测试法移走模型的某些部分,或设定适当的输入参数值,然后测试模型的结果,看其是否符合一定的规律,管理系统模拟 马维忠,79,历史数据法利用历史数据中的一部分来建立模型,而用另一部分来检验模型的正确性,管理系统模拟 马维忠,80,内部有效性评价通过多次运行模型来确定模型内部随机可变性的大小,并尽可能减小其可变性,管理系统模拟 马维忠,81,参数有效性检验改变模型的内部参数值和输大值,观察对模型输出结果的影响,并判断这种影响关系与真实系统是否一致,管理系统模拟 马维忠,82,极端条件测试法采用极端条件或对各种不同层次的影响因素进行特殊组合,看模型的输出结果是否合理,管理系统模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 管理 系统 模拟
链接地址:https://www.31ppt.com/p-5912788.html