1、第二章 仿真模型与建模方法论,本章主要内容,建模基本原理模型的非形式化描述模型的形式化表示基于计算机的建模方法学*解释结构建模*仿真模型的确认,第一节 建模原理,一、模型与建模建模:通过观测和检测,在忽略次要因素及不可检测变量的基础上,用数学的方法对实际系统进行描述,从而获得简化近似模型的过程 在系统研究中,模型用来收集系统有关信息和描述系统有关实体模型是用以产生行为数据的一组指令,由实际系统构造模型建立模型结构(确定系统的边界,鉴别系统的实体属性和活动) 提供数据(使活动中的属性间建立确定的关系) 系统模型应有的性质 相似性模型与系统在属性上具有相似的特性和变化规律 简单性实用的前提下,越简
2、单越好 多面性同一系统可能有不同层次的多种模型,模型的有效性 可用实际系统数据和模型产生的数据之间的符合程度来度量,分三个级别 复制有效(Replicatively valid):输入输出数据匹配,不能预测,把实际系统看作黑箱 预测有效(Predictively valid):了解实际系统的内部状态及总体结构,可预测系统的将来的状态和行为变化,但不明了内部的分解结构 结构有效(Structurally valid):了解内部的分解结构,可反映系统产生某种行为的操作过程,数学模型的作用提高认识实际系统不可观部分可观部分提高决策能力 实际系统不可控部分可控部分,二、建模基本原理,建模过程的信息源,
3、建模活动:获取有关信息源、建立数学模型、模型应用三类信息源 建模目标:由系统的研究内容决定,如 研究系统与外界的相互作用关系:以输入输出为主的系统外部行为模型 研究系统的内在活动规律:描述系统输入/输出集合,状态集合之间关系的内部结构状态模型,先验知识 前人的研究成果:公理、原理、定理及模型等,相关学科知识 实验数据 先验知识常常是普遍性规律,实际系统有其特殊性,有时只知道模型结构,其参数必须通过实验确定,有时甚至结构也是未知的 三者都可以用于模型检验,建模过程一般反复进行,直至达到建模目的,建模途径(主要由信息源决定 ),演绎法:从一般到特殊运用先验信息,建立某些假设和原理通过数学的逻辑演绎
4、建立数学模型实验数据用来证实或者否定原始的原理 归纳法 :从特殊到一般 基于实验数据建立数学模型 推导与观测一致的具有普遍性的理论结果 需要对数据进行内插或外推,工程应用中多为混合建模方法,模型可信性,模型的真实程度,取决于模型种类及构造过程,与模型的有效性相对应在行为水平上的可信性:模型能否重现真实系统的行为 在状态结构水平上的可信性:模型能否与真实系统在状态上相互对应,应能对未来的行为进行唯一的预测 在分解结构水平上的可信性:模型能否表示出真实系统的内部的工作情况,而且应是唯一的表示,可信性的检验应贯穿在整个建模阶段,并且与建模方法相互结合 演绎中的可信性:前提的正确性,前提的其他结果的检
5、验 归纳中的可信性:偏差估计,统计方法 目的方面的可信性:是否满足目标,三、模型的分类,常用分类 根据模型的时间集合:连续时间模型、离散时间模型 根据模型的状态变量:连续变化模型、离散变化模型,真正的连续系统,对应模型一般为常微分和偏微分方程 常称为采样系统,对应模型为离散时间的偏微分方程和系统动力学模型离散事件模型,用流程图、表等非数学模型形式表示 差分方程模型,有限状态自动机,马尔可夫链模型,数学模型一览表,第二节 建模方法学,为方便理解和交流,对建模与仿真的研究报告内容也有规范,一般包括 模型和针对模型构造的假设的非形式描述 模型结构的形式描述 执行仿真的程序设计 仿真试验,仿真结果分析
6、 模型应用的范围与有效性 现在的模型与过去的和将来的模型的关系,模型的非形式描述,采用文字图表方式,用来说明系统的本质,但不是详尽描述,是与读者直观建立联系的最自然而有效的方法,主要由模型的实体、包括参变量的描述变量、实体间的相互关系以及有必要阐释的假设等组成,是基础性的工作 模型结构形式描述,采用数学或者其它明确的形式,可以了解系统内在、本质的运动规律,便于同行交流,一、模型的非形式描述,实体Com. 1 着重描述实际系统的概念部分 Com. m描述变量Com. 1Var. 11说明每个变量表征符号及其 范围集,并阐述变量的作用Var. 1n ,Com. mVar. m1 Var. mnPA
7、RPar. 1 参变量 Par. m实体相互关系描述实体对其它各个实体的影响、作用及联系,即刻画系统的规律、内部关系,用规则、假设和定律等作非形式描述,例:环形罗宾服务(Round Robin Service),某计算机系统有一台主机与5个终端用户组成,主机依次顺时针为每一个用户服务。轮到某用户时,传递数据给主机CPU并等待回答,接收到回答后准备下一轮数据。建模研究用户如何迅速的完成其程序编制,非形式描述,实体CPU, USR1, USR2, USR3, USR4, USR5描述变量CPU:Who.Now 范围1, 2, 3, 4, 5;Who.Now = i 表示USRi 由CPU服务USR
8、:Completion.State 范围0, 1;表示USR完成整个程序任务的比例参变量Xi 范围0, 1;表示USRi 每次完成程序的比例实体相互关系CPU以固定速度依次为用户服务,即Who.Now为1, 2, 3, 4, 5, 1, 2, 循环运行当Who.Now = i,CPU完成USRi 剩下的Xi 工作。假设:CPU对USR的服务时间固定,不依赖于USR的程序;USRi的进程由各自的参变量Xi决定。,二、模型的形式化表示,理论基础抽象是建立真实世界的现象与数学模型间相互关系的唯一手段 理论构造:首先定义集合,再建立抽象的复合集合结构,然后定义函数关系 具体化:抽象时先简化,再在简化的
9、结构中添加细节 例如:各种物理学定理在建立时往往经过了极度简化,然后在不同的应用背景下,根据需要再进行修正,如理想气体方程不可能直接应用到实际的计算中,但通过修正后的更复杂的形式则往往有实际的意义,集合论可以作为研究系统的工具,因为建模就是要得到一个被化为抽象集合结构的系统的定义,该集合结构总可以用若干同类结构的合成体替换,从而不断地使其具体化,数学模型的形式化表示,一个系统可以被定义为七元组集合结构:S= 时间基T:描述时间以及为事件排序的集合。T为整数集I时,为离散时间系统,为实数集R时,为连续时间系统 输入集X:代表系统界面的一部分,外部环境通过它作用于系统。如通过信息流和物质流作用于系
10、统 输入段集:描述某时间间隔内系统的输入模式,是(X,T)的一个子集,内部状态集Q:表示系统的记忆,影响此后的响应,是内部结构建模的核心 状态转移函数:是一个映射:QQ,表示任意时刻的内部状态和从该时刻起的输入段唯一地决定了段终止时的状态 输出集Y:代表界面的一部分,系统通过它作用于环境 输出函数:映射:QY,或者:QXTY,是多对一的映射 由此,得到系统行为的概念:是其内部结构的外部表现形式,即在(X, T)(Y, T)上的关系,模型的有效性与建模形式化,复制有效、预测有效和结构有效分别对应行为水平、状态结构水平和分解结构水平的系统描述 Rs:输入-输出关系行为水平 将系统看作黑盒,仅记录输
11、入输出信号需要时间基,基本描述单位是“轨迹”:从一个时间基的区间到表示可能的观测结果的某个集合上的映射系统的“行为描述”是由输入输出轨迹对偶构成的集合,状态结构水平 掌握系统内部状态,总体结构与内部工作情况随时间的推移,该描述可以使模型自动产生一种行为轨迹产生轨迹的基础是“状态集”及“状态转移函数”(计算未来状态的规则),分解结构水平,将系统描述为由许多子系统相互连接起来而构成的一个整体每个子系统都给出了一个状态结构水平上的描述;并给出各子系统间的耦合描述,三、基于计算机的建模方法学,经典的建模与仿真面向物理系统按仿真步骤顺序进行:定义建模仿真 计算机的作用主要是使计算更快速、准确缺乏对复杂系
12、统的研究方法系统某部分难以用准确的数学模型表述系统内部有多个研究对象,且关系复杂,需要考虑模型的综合利用,软系统特性 复杂性:内部关系复杂,系统具有多重性,通常存在病态结构和定义 不可分性:空间、时间上难以分割,难以定义系统的边界和分隔物低可接受性:无合适的测量技术或代价太大,难以进行实验研究计算机除能进行快速标准的逻辑与算术运算外,还具有存储数据与信息以及与用户交互的能力,应充分发挥作用,研究基于计算机的建模理论的目标:在交互式计算机的扶助下,使系统建模过程进行得更加有效、现实和高速支持建模与仿真的计算机系统的基本功能能对已知事实及已有模型作恰当的存储,即能处理各种局部模型通过人机交互,对局
13、部模型进行继承和综合利用,形成完整的全局模型,全局性建模的基本思路模型的描述静态结构:给出描绘系统现象的方式动态结构:提供各种现象间变化的情况重视建模信息源存储先验信息,根据建模目标,定义实验框架组合和完整化模型的先验知识对所有涉及的对象都建立相应的库,模型对象及其信息存储,变量及变量库 变量是描述系统的静态结构的基础,用来表示系统中有用的属性,具有名字、范围集、含义与单位一组变量可归并成一个单独的组合,用于分清变量定义之间的内在依赖性,与基本算子联合在一起还可构造复杂的变量变量含义之间的内在联系称为语义结构。语义结构可建立起变量间的等效性,并以此导出定义真实系统的整个变量集的结构变量库的基本
14、形式是作为系统中所有变量的字典模型是通过选择变量的一个子集形成静态结构,加上控制这些变量变化的规则及其动态结构而构成,实体及实体库实体是按特定意义组合在一起的变量集的标记,其作用是获取子系统和系统的边界一个模型总是某个特定实体的一种表示,只能包含从属于该实体的变量。模型静态结构是实体结构的抽取实体库是变量库结构过渡到模型结构的第二级结构,其组织原则是实体结构实体结构是组成各种特殊的、综合的模型和实验框架的骨架,实验框架和实验框架库 实验框架规定了实际系统或用它的模型做实验和进行观察的有限的环境 实验框架E包括:输入变量集、输出变量集;可选:输入段集,运行控制变量集,运行控制段集,统计或信号处理
15、过程集为达到建模目标,要求实验框架对模型有可适用性 直接可适用性:框架中的变量以模型中相同的名字出现 间接可适用性:框架的变量与模型的静态结构变量有关或可从中推导出,模型库 包括实际系统已经建立起来的各方面模型可按操作式结构(Operations Structure) 组织模型的组合与分解操作模型的粗化(简化)与精化(详细化)操作 各种模型在具有通用性的实验框架下进行比较模型库是一个可扩充的模型集,应能保存以前开发的模型,且便于自由地应用适当的公式来规范模型能帮助模型引用实体结构和实验框架中的内容,参数库 参数表示现实世界中物体的系统或其子系统的性质,但不一定直接与系统有关 参数是模型规范中的
16、常数,要从一类模型中选出一个特殊的模型,必须确定参数 参数的对应是一种关系,允许将一类模型参数估计中的经验知识传递到另一类模型 参数库的作用:存储实际系统的实验信息(参数估计);通过将模型检验中得到的估计扩展到有关的其他模型,增加信息的利用率 随着时间的变化参数库存储并完整化了从实际系统中得到的实验信息,库的活动及相互间关系,库的活动,不同信息库之间关系,在应用建模支持系统时应注意完整性、有效性、一致性,四、解释结构建模,基本概念 复杂系统直接建立准确模型困难,常先定义反映系统内部主要特征的结构关系结构模型:表示实体及其相互间关系,其建模目标应明确针对何种关系 实体集合S=s1sn,si为实体
17、,R=| w(x,y)表示某种关系w下各实体间关系的集合,集合S和定义在S上的关系R就表示了系统在关系w下的结构模型,可用有向连接图或矩阵表示 (1,0)表示Si,Sj有无关系,邻接矩阵,结构模型特性 是一种几何模型,可用有向连接图表示 以定性分析为主,用来分析实体间关系 可用矩阵形式描述,使定性分析和定量分析相结合 其描述形式处于数学模型形式和逻辑分析形式之间,可处理宏观/微观、定性/定量的问题 可达矩阵A r(各节点之间经过一定长度的通路后可到达的程度)可由邻接矩阵A 计算而得:A r = (A+I) r,A r = A r-1时结束,结构建模(解释结构模型法),选择构成系统的要素(实体)
18、 建立邻接矩阵和可达矩阵(需要注意判断和删除回路(不同元素对应的矩阵的行、列相同则构成回路)层次级别的划分 找出Si的可达集(Si可到达的元素集合),前因集(可到达Si的元素集合),并由此判断最高一级元素(前因集为自身),删去之,逐步划分层次,建立结构模型 由层次级别的划分的结果,重新排列去除回路后的可达矩阵 按级别从高到底的顺序划出每一级别中的节点,相同级别的节点平行放置 按新的可达矩阵连接相邻两级 跨级的连线若可由已有连线的传递性推出,则不画 补充因构成回路而被删掉的元素及连线,第三节 仿真模型的确认,经过抽象并作了一些假定的仿真模型能否替代现实系统?仿真模型的确认(VV&A)Verifi
19、cation(验证):检验模型是否正确地实现,即验证计算机仿真程序的正确性Validation(确认):确定仿真模型是否是所研究的现实系统的准确描述Accreditation(认定):认可模型与仿真过程、结果(学术界有争议),一、仿真模型的验证,仿真模型的验证是仿真模型与仿真程序在逻辑结构和数据参数之间的比较过程可通过以下途径排除仿真程序中的问题用子程序编写和调试仿真程序在仿真程序的运行中检查输出的合理性(与实际情况比较)仿真程序运行时的跟踪检查(主要状态量的观察)信息量过大,不适用于大系统整个跟踪,而是跟踪特定程序段及采用其它软件质量保证方法,二、仿真模型确认的“三步法”,模型确认时应注意保
20、证被研究的仿真模型是可供使用的、方便的、费用较低的不应追求模型的绝对准确,而是研究模型逼近实际系统的程度,最重要的是,要使决策人员在利用仿真系统和实际系统实验时,能够作出完全相同的决策或选择。应与特定的建模目标联系,即一个模型对某一目标可以被确认,而对另一目标则可能是无效的。确认工作应贯穿在整个仿真过程中。模拟模型的确认并不是在模型建立以后所作的点缀,建模和确认在整个模拟研究过程中必须自始至终协同地进行,尚未有比较完整的理论和方法Naylor和Finger提出的“三步法”模型的专家评估确认检验模型的假设模型的输出数据与实际数据的比较,1.模型的专家评估确认,从直观考察模型的有效性应结合用户需求
21、或建模目标,并通过实验分析模型灵敏度等指标模型确认的每一个步骤是使模型具有较好的外观合理性。特别是模型的用户和其他了解所模拟实际系统的人员应当承认模型的直观合理性在建模和模型执行阶段,最好有用户代表参加,充分吸收他们的意见,使模型的结构、数据和简化假设具有较好的实用性,2.检验模型的假设,模型假设分为两类:结构假设包括对实际系统的简化和抽象,或者说系统最低限度的运行条件。如银行系统中顾客的队列和服务设施构成基本结构,但队列方式、设施数等应在实际观察的基础上确认数据假设包括对所有输入数据的数值和概率分布所作的规定,应与实际系统的运行条件基本符合数据假设在收集实际系统可靠的运行参数的基础下,进行必
22、要的统计分析之后加以确定。,3.模型的输出数据与实际数据的比较,最决定性的步骤。对模型的确认,最终表现在模型能否预计系统的基本性能,当模型和实际系统都以同样的输入参数或输入策略运行时,应具有相同的输出响应。如果某些输入变量作一定范围内的变动时,模型应能估计出实际系统在同一情况下的输出变化,由此可以确认模型和实际系统具有相同的内部结构,或者说具有相同的输入/输出变换性能模型的校准过程(Calibration Procedure,用一组数据辨识后用另一组数据测试)图灵试验(Turing Test):将仿真结果和实际系统的运行数据不加标志地送给深刻了解该系统的专家进行鉴别,若专家能区分二者,则其经验就是修改模型的依据,三、比较仿真输出数据与实际观察数据的统计方法,模型的确认需要比较模型的输出数据与实际系统的观察结果,但由于实际系统和模型的过程几乎都是非平稳过程和相关过程,不能直接应用古典统计方法,需要对输入输出数据作统计处理。常用两种方法:用拟合输入数据的理论分布进行模型确认利用历史数据作仿真确认,用拟合输入数据的理论分布进行模型确认利用人为产生的输入数据,尽量使模型中所产生的事件模式与实际系统产生的事件模式相一致,并通过统计比较判断模型与系统的一致性利用历史数据作仿真确认利用实际系统的历史统计数据作为模型的输入参数,并驱动模型,再统计比较仿真结果与实际输出,