单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,生产系统建模与仿真,第八章,仿真模型的检验和验证,工程学院 沙 金,生产系统建模与仿真第八章工程学院 沙 金,1,仿真模型的输出结果会作为管理者制定决策的重要依据。因此,管理者很自然地对模型的正确性抱有几分怀疑。,为减少怀疑和增加模型的可信度,建模者在模型的建立和验证的整个周期内都应与模型的最终使用者紧密合作。,仿真模型的输出结果会作为管理者制定决策的重要依据。因,2,模型验证的目的:,建立能够足够精确表达真实系统的行为的模型,该模型能够代替真实系统进行试验、分析系统行为和预测系统性能。,把模型的可信度提高到可接受的水平,使得该模型可被管理者和其他决策者使用。,模型验证的目的:,3,模型的验证不是模型建立后的一系列孤立的步骤,而是建模的主要部分。,模型的检验是正确地建立模型。,它把概念模型与实现概念模型的计算机表达进行比较。,模型的验证是建立正确的模型。,它试图确定精确表达实际系统的模型。,模型的验证不是模型建立后的一系列孤立的步骤,而是建模,4,建模的第一步是观察实际系统及其各个组成部分的相互作用,并收集关于其性能方面的数据。,建模的第二步是构造一个概念模型。,建模的第三步是运行模型的实现。,8.1 模型的建立、检验和验证,建模的第一步是观察实际系统及其各个组成部分的相互作用,5,实际系统,概念模型:,1.关于系统成分的假设,2.结构假设:定义系统成分之,间的相互作用,3.输入参数和数据假设,运行模型,(计算机表示),概念验证,模型检验,校验和验证,实际系统概念模型:运行模型概念验证模型检验校验和验证,6,模型的检验就是要解决运行模型是否能够准确地表达概念模型的问题,一些常识建议如下:,运行模型是否已由建模者以外的人员校验过。,画出,流程图,。,在模型输入参数设置不同值的情况下,要认真地检查模型输出的合理性。,8.2 仿真模型的检验,模型的检验就是要解决运行模型是否能够准确地表达概念模,7,仿真结束后,运行模型是否打印了输入参数,确信这些参数没有被修改过。,尽可能使运行模型成为一个独立文档。,如果运行模型包括动画,应该检验在动画中观察到的是否能够模拟真实系统。,交互式运行控制器或试调器。,建议使用图形化界面。,仿真结束后,运行模型是否打印了输入参数,确信这些参,8,能够快速显示出模型的合理性的两组统计量是,当前容量,和,总数,。,对于特定的模型,不仅可以考虑特定统计量是否合理,还可以计算某些,长时间运行系统的性能度量,。,另一个对模型检验有帮助的重要方法是,文档说明,。,更为复杂的有助于模型检验的方法是,跟踪,。,能够快速显示出模型的合理性的两组统计量是当前容量和总,9,校验和验证尽管在概念上有区别,但建模者通常同时进行两方面的工作。,验证,是模型及其特性与现实系统及其特性进行比较的全过程。,校验,是一个迭代过程,即把模型和现实系统进行比较、调整,再比较、再调整,8.3 模型的校验和验证,校验和验证尽管在概念上有区别,但建模者通常同时进行两,10,校验的不足:,模型仅对所利用的数据进行了验证,仅“适合”所校验过的数据集。,验证的矛盾:,没有一个模型是所研究的实际系统的完整无误的表示。但每一次修改都要付出代价。必须衡量为了模型精确度的提高增加了多少验证的工作量。,校验的不足:,11,8.3.1表面效度,仿真建模者的第一个目标是建立一个使模型使用者和其他了解实际系统的人在直观上认为合理的模型。,灵敏度分析也可以用来检查模型的表面效度。,在进行灵敏度分析时,要注意选择最关键的输入变量进行检验。,8.3.1表面效度,12,8.3.2模型假设的验证,模型的假设一般分为两类:结构假设和数据假设。,结构假设,包括系统如何运行的问题,通常涉及实际系统的简化和抽象。,数据假设,应该以可靠数据的采集和对数据正确的统计分析为基础。,8.3.2模型假设的验证,13,8.3.3输入输出变换的验证,模型在验证阶段可视为一个输入输出变换。当输入数据和实际的输入数据一致,并且模型中执行的策略也是系统中某些点执行的策略时,模型的最终检验是模型对实际系统未来行为特性的预测能力。,8.3.3输入输出变换的验证,14,进行输入输出变换验证的必要条件是所研究系统的某种版本已经存在。,模型变化程度的影响从小到大为:,单个数值参数的小变化。,统计分布形式的较小变化。,子系统逻辑结构的大变化。,新系统的不同设计方案的大变化。,没有方法可以完整地验证尚不存在,的系统的输入输出变换!,进行输入输出变换验证的必要条件是所研究系统的某种版,15,例:汽车快餐店模型,顾客到达速率为45车/小时的泊松分布,服务,时间服从均值为1.1分钟和标准差为0.2分钟的,正态分布。,例:汽车快餐店模型顾客到达速率为45车/小时的泊松分布,服务,16,泊松到达,速率=45/小时,服务时间,N(1.1,0.2,2,),一个服务员,平均服务时间,1.1分钟,一个队列,随,机,变,量,决,策,变,量,模,型,最大队长,平均延迟Y,服务员利用率,输入变量,模型,输出变量,泊松到达速率=45/小时服务时间N(1.1,0.22)一个服,17,观测到的平均延迟,0,=4.3分钟,运行次数,到达个数/小时,平均服务时间,平均延迟Y,1,51,1.07,2.79,2,40,1.12,1.12,3,45.5,1.06,2.24,4,50.5,1.10,3.45,5,53,1.09,3.13,6,49,1.07,2.38,样本均值,2.51,标准差S,0.82,模型重复运行6次的结果,观测到的平均延迟0=4.3分钟运行次数到达个数/小时平均服,18,进行原假设统计检验:,统计术语,建模术语,相关风险,类型,:当H,0,为真时拒绝H,0,拒绝,有效模型,类型,:当H,1,为真时不拒绝H,0,不拒绝,无效模型,进行原假设统计检验:统计术语建模术语相关风险类型:当H0为,19,选择置信水平,=0.05和样本量n=6,计算,对于双边检验:如果,|t,0,|t,/2,n-1,,就拒绝H,0,;否则接受H,0,。,查表得,t,/2,n-1,=2.571,,因此拒绝H,0,。,选择置信水平=0.05和样本量n=6,20,进行原模型被拒绝的原因分析,发现有两个假设未做说明:,1.当汽车到达并且发现窗口空时,服务立即开始。,2.当汽车等待时,在一个服务结束和另一个服务开始之间没有延迟。,再次分析确定:平均服务时间,服从均值为3分钟的指数分布。,进行原模型被拒绝的原因分析,发现有两个假设未做说明:,21,运行次数,到达个数/小时,平均服务时间,平均延迟Y,1,51,1.07,5.37,2,40,1.11,1.98,3,45.5,1.06,5.29,4,50.5,1.09,3.82,5,53,1.08,6.74,6,49,1.08,5.49,样本均值,4.78,标准差S,1.66,修改后重复运行6次的结果,运行次数到达个数/小时平均服务时间平均延迟Y1511.075,22,选择置信水平,=0.05和样本量n=6,计算,查表得,t,/2,n-1,=2.571,,因此不能拒绝H,0,。,不拒绝H,0,必须被认为是弱结论。,选择置信水平=0.05和样本量n=6不拒绝H0必须被认为是,23,8.3.4利用历史输入数据,使用历史数据进行模型验证时,这些数据必须是专门为验证目的而保留的。,所有输入数据和所有的系统响应数据必须是在同一时间周期内收集的。,如果一组数据已经用于模型的建立和校验,则建议最终的验证要使用一组不同的数据。,8.3.4利用历史输入数据,24,8.3.5利用图灵机检验,除了统计检验以外,或当进行统计检验较为困难时,也可以使用已知的系统性能知识比较模型输出和系统输出。,8.3.5利用图灵机检验,25,离开事件,服务台空闲,时间开始,开始服务顾客,从队列中清除,一个等待顾客,有另一个顾,客等待吗?,是,否,服务刚刚结束的流程图,到达事件,顾客进入服务,顾客进入,等待队列,服务台忙吗?,是,否,顾客进入系统的流程图,离开事件服务台空闲开始服务顾客从队列中清除有另一个顾是否服务,26,