《第一章-计算机仿真技术绪论ppt课件(全).ppt》由会员分享,可在线阅读,更多相关《第一章-计算机仿真技术绪论ppt课件(全).ppt(57页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、高高 等等 学学 校校 规规 划划 教教 材材计 算 机 仿 真 技 术吴旭光吴旭光 杨惠珍杨惠珍 王新民王新民 编著编著第一章第一章 绪论绪论 这一章将介绍计算机仿真的基本概念、它所包括的内容以及发展状况,即我们将从横向和纵向来阐述计算机系统仿真的内涵。所有这些内容将为学习计算机仿真技术和以后更进一步的研究建立一个基础。1.1 系统仿真的基本概念一、系统与模型 一个系统可能非常复杂,也可能很简单,因此很难给“系系统统”下一个确切的定义。因为这个定义不但能够足以概括系统的各种应用,而且又能够简明地把这个定义应用于实际。但无论什么系统一般均具有4个重要的性质,即整体性、相关性、有序性整体性、相关
2、性、有序性和动态性和动态性。系统就是一些具有特定功能的、相互间以一定规律联系着的系统就是一些具有特定功能的、相互间以一定规律联系着的物体所组成的一个总体。物体所组成的一个总体。显然,系统是一个广泛的概念,毫无疑问它在现代科学研究和工程实践中扮演着重要的角色。不同领域的问题均可以用系统的框架来解决。但究竟一个系统是由什么构成的,这取决于观测者的观点。例如,这个系统可以是一个由一些电子部件组成的放大器;或者是一个可能包括该放大器在内的控制回路;或者是一个有许多这样回路的化学处理装置;或者是一些装置组成的一个工厂;或者是一些工厂的联合作业形成的系统,而世界经济就是这个系统的环境。1.1 系统仿真的基
3、本概念 首先,必须明确系统的整体性系统的整体性。也就是说,它作为一个整体,各部分是不可分割的。就好像人体,它由头、身躯、四肢等多个部分组成,如果把这些部分拆开,就不能构成完整的人体。至于人们熟悉的自动控制系统,其基本组成部分(控制对象、测量元件、控制器等)同样缺一不可。整体性是系统的第一特性。其次,要明确系统的相关性系统的相关性。相关性是指系统内部各部分之间相互以一定的规律联系着,它们之间的特定关系形成了具有特定性能的系统。有时系统各要素之间的关系并不是简单的线性关系,而呈现出复杂的非线性关系。也正是由于这种非线性,才构成了我们这个多彩的世界。对于复杂的非线性关系,必须研究其复杂性与整体性。再
4、以人体为例,人的双眼视敏度是单眼视敏度的610倍。此外,双眼有立体感,而单眼却无此特点。这就是一种典型的非线性特征,因此相关性是系统的第二特性,也是目前系统研究的主要问题。1.1 1.1 系统仿真的基本概念系统仿真的基本概念 除整体性和相关性外,系统还具有有有序序性性和和动动态态性性。比如,生命是一种高度有序的结构,它所具有的复杂功能组织,与现代化大工业生产的“装配线”非常相似,这是一种结构上的有序性,对任何系统都是适用的。又如图所示,一个非平衡系统如果经过分支点A、B到达C,那么对C态的解释就必须暗含着对A态和B态的了解。这就是系统的动态性。图图1.1.1 系统的动态性系统的动态性1.1 系
5、统仿真的基本概念 建立系统概念的目的在于深入认识并掌握系统的运动规律。因此不仅要定性地了解系统,还要定量地分析、综合系统,以便能更准确地解决工程、自然界和现代社会中的种种复杂问题。定量地分析、综合系统最有效的方法是建立系统的模型,并使用高效的数值计算工具和算法对系统的模型进行解算。采用模型法模型法分析系统的第一步是建立系统的数学模型,所谓数学模型就是把关于系统的本质部分信息,抽象成有用的描述形式,因此抽象是数学建模的基础抽象是数学建模的基础。数学在建模中扮演着十分重要的角色,马克思说过:“一种科学只有在成功地运用数学时,才算达到完善的地步。”例如集合的概念是建立在抽象的基础上的,共同的基础使集
6、合论对于建模过程非常有用。这样,数学模型可以看成是由一个集合构造的。1.1 1.1 系统仿真的基本概念系统仿真的基本概念 数学模型数学模型的应用无论是在纯科学领域还是在实际工程领域的应用无论是在纯科学领域还是在实际工程领域中都有着广泛的应用,但通常认为一个数学模型有两个主要的用中都有着广泛的应用,但通常认为一个数学模型有两个主要的用途:首先,数学模型可以帮助人们不断地加深对实际物理系统的途:首先,数学模型可以帮助人们不断地加深对实际物理系统的认识,并且启发人们去进行可以获得满意结果的实验;其次,数认识,并且启发人们去进行可以获得满意结果的实验;其次,数学模型有助于提高人们对实际系统的决策和干预
7、能力。学模型有助于提高人们对实际系统的决策和干预能力。数学模型按建立方法的不同可分为数学模型按建立方法的不同可分为机理模型机理模型,统计模型统计模型和和混合模型混合模型。机理模型采用演绎方法,运用已知定律,用推理方法建立数机理模型采用演绎方法,运用已知定律,用推理方法建立数学模型;统计模型采用归纳法,它根据大量实测或观察的数据,学模型;统计模型采用归纳法,它根据大量实测或观察的数据,用统计的规律估计系统的模型;混合模型是理论上的逻辑推理和用统计的规律估计系统的模型;混合模型是理论上的逻辑推理和实验观测数据的统计分析相结合的模型。按所描述的系统运动特实验观测数据的统计分析相结合的模型。按所描述的
8、系统运动特性和运用的数学工具特征,数学模型可分类为线性、非线性、时性和运用的数学工具特征,数学模型可分类为线性、非线性、时变、定常、连续、离散、集中参数、分布参数、确定、随机等系变、定常、连续、离散、集中参数、分布参数、确定、随机等系统模型。统模型。1.1 1.1 系统仿真的基本概念系统仿真的基本概念二、仿真 随着科学技术的进步,尤其是信息技术和计算机技术的发展,“仿真”的概念不断得以发展和完善,因此给予仿真一个清晰和明了的定义是非常困难的。但一个通俗的系统仿真基本含义是指:设计一个实际系统的模型,对它进行实验,以便理解和评价系统的各种运行策略。而这里的模型是一个广义的模型,包含数学模型、非数
9、学模型、物理模型等等。显见,根据模型的不同,有不同方式的仿真。从仿真实现的角度来看,模型特性可以分为连续系统连续系统和离散事件离散事件系统两大类。由于这两类系统的运动规律差异很大,描述其运动规律的模型也有很大的不同,因此相应的仿真方法不同,分别对应为连续系统仿真连续系统仿真和离散事件系统离散事件系统仿真仿真。1.1 1.1 系统仿真的基本概念系统仿真的基本概念1 连续系统仿真 连续系统仿真是指物理系统状态随时间连续变化随时间连续变化的系统,一般可以使用常微分方程或偏微分方程组描述。需要特别指出的是这类系统也包括用差分方程描述的离散时间系统。对于工科院校,因为主要研究的对象是工业自动化和工业过程
10、控制,因此本教材主要介绍连续系统仿真。2 离散事件系统仿真 离散事件系统是指物理系统的状态在某些随机时间点上在某些随机时间点上发生离散变化发生离散变化的系统。它与连续时间系统的主要区别在于:物理状态变化发生在随机时间点上,这种引起状态变化的行为称为“事件”,因而这类系统是由事件驱动的。离散时间系统的事件(状态)往往发生在随机时间点上,并且事件(状态)是时间的离散变量。系统的动态特性无法使用微分方程这类数学方程来描述,而只能使用事件的活动图或流程图。因此对离散事件系统的仿真的主要目的是对系统事件的行为作统计特性分析,而不像连续系统仿真的目的是对物理系统的状态轨迹作出分析。1.1 1.1 系统仿真
11、的基本概念系统仿真的基本概念 仿真技术的分类方法很多,不同的分类仿真方法也有所不同,下一小节我们还要针对连续时间系统仿真的分类进行详细研究。本书讲授的是连续时间系统的计算机仿真,因此仿真的基础是建立在系统的数学模型基础上,并以计算机为工具对系统进行实验研究的一种方法。仿真仿真,就是模仿真实的事物,也就是用一个模型来模仿真实系统。既然是模仿,两者就不可能完全等同,但是最基本的内容应该相同,即模型必须至少反映系统的主要特征。随着现代工业的发展,科学研究的深入与计算机软、硬件的发展,仿真技术已成为分析、综合各类系统,特别是大系统的一种有效研究方法和有力的研究工具。1.2 1.2 连续系统仿真技术连续
12、系统仿真技术一、基本原理分类 除了可按模型的特性分为连续系统仿真和离散事件系统仿真类型外,还可以从不同的角度对系统仿真进行分类。比较典型的分类方法是:根据模型的种类模型的种类系统仿真可以分为三种:物理仿 真、数学仿真和半实物仿真。根据使用的仿真计算机使用的仿真计算机也可将系统仿真分为三种:模拟计算机仿真、数字计算机仿真和数字模拟混合仿真。根据仿真时间钟和实际物理系统时间钟的比例关系仿真时间钟和实际物理系统时间钟的比例关系,常将仿真分为实时仿真和非实时仿真。1.2 1.2 连续系统仿真技术连续系统仿真技术 本小节我们根据仿真的主要理论依据相相似似论论来研究仿真的分类。所谓相似,是指各类事物间某些
13、共性的客观存在。相似性是客观世界的一种普遍现象,它反映了客观世界中不同物理系统和物理现象具备某些共同的特性和规律。采采用用相相似似理理论论建建立立物物理理系系统统的的相相似似模模型型,这这是是相相似似理理论论在在系统仿真中最基本的体现系统仿真中最基本的体现。上一节我们讲过,仿真就是模仿一个真实系统,所遵循的基本原则就是相似原理。根据相似论的研究方法和仿真技术的研究方法,在建立物理系统的模型时,我们认为物理系统和模型应该满足几何相似几何相似、环境相似环境相似和性能相似性能相似中的一种或几种。1.2 1.2 连续系统仿真技术连续系统仿真技术 几何相似几何相似就是把真实系统按比例放大或缩小,其模型的
14、状态向量与原物理系统的状态完全相同。土木建筑、水利工程、船舶、飞机制造多采用几何相似原理进行各种仿真实验。环境相似环境相似,就是人工在实验室里产生与所研究对象在自然界中所处环境类似的条件,比如飞机设计中的风洞,鱼雷设计中的水洞、水池等等。性能相似性能相似,则是用数学方程来表征系统的性能,或者利用数据处理系统,来模仿该数学方程所表征的系统。性能相似原理也是仿真技术遵循的基本原理。1.2 1.2 连续系统仿真技术连续系统仿真技术 根据仿真所遵循的相似原则基本含义,大致可将仿真分为三大类:物理仿真:主要是运用几何相似、环境相似条件,构成物理模型进行仿真。其主要原因可能是由于原物理系统是昂贵的、或是无
15、法实现的物理场、或是原物理系统的复杂性难以用数学模型描述的。数字仿真:运用性能相似,即将物理系统全部用数学模型来描述,并把数学模型变换为仿真模型,在计算机上进行实验研究。半物理仿真:综合运用三个相似原则,把数学模型、实体模型、相似物理场组合在一起的仿真系统。这类仿真技术又称为硬件在回路中的仿真硬件在回路中的仿真(Hardware in the loop simulation)。由于现代工业和科学技术的发展,单一的物理仿真和数字仿真往往不能满足其研究目的的要求,而这类物理仿真和数字仿真的结合称为半物理仿真,则可满足其要求。本教材的重点是向读者介绍数字仿真。1.2 连续系统仿真技术 二、半实物仿真
16、 半实物仿真是一种通俗而习惯的叫法。按前述的定义应该是:在全部仿真系统中、一部分是实际物理系统或以实际等价的在全部仿真系统中、一部分是实际物理系统或以实际等价的物理场物理场,另一部分是安装在计算机里的数学模型另一部分是安装在计算机里的数学模型。半实物仿真在科学研究和工程应用中扮演着非常重要的角色,从某种意义上半实物仿真技术的难度和实际应用性均超过全数字仿真。这主要是因为:(1)对于一个大型的仿真系统,有时系统中的某一部分很难建立其数学模型,或者建立这部分的数学模型的代价昂贵,精度也难以保证。例如,在红外制导系统仿真时,其红外制导头以及各种物理场的模型建立是相当困难的。为了能准确地仿真系统,这部
17、分将以实物的形式直接参与仿真系统,从而避免建模的困难和过高的建模费用。(2)利用半实物仿真系统,可以检验系统中的某些部件的性能。例如,为了检验航行器的性能,可以将设计的控制部件以实物的形式进入仿真系统。(3)利用半实物仿真,可以进一步校正系统的数学模利用半实物仿真,可以进一步校正系统的数学模型型。一个复杂的系统在完成初步设计以及分部件逐。一个复杂的系统在完成初步设计以及分部件逐个研制出来后,为了验证和鉴定系统性能或检验定个研制出来后,为了验证和鉴定系统性能或检验定型产品,利用系统的半实物仿真可以从总体上更准型产品,利用系统的半实物仿真可以从总体上更准确地检测外界因素的变化对系统的影响,更深入地
18、确地检测外界因素的变化对系统的影响,更深入地暴露系统的内在矛盾。从而,在实验室内能较全面暴露系统的内在矛盾。从而,在实验室内能较全面地检验和评定系统设计的合理性和各部件工作的协地检验和评定系统设计的合理性和各部件工作的协调性,进而修改和完善设计。调性,进而修改和完善设计。(4)(4)在在1.31.3节介绍的仿真器中,半实物仿真是必需。因节介绍的仿真器中,半实物仿真是必需。因为在这类仿真器中为了逼近物理系统的实际效应,为在这类仿真器中为了逼近物理系统的实际效应,许多部件必须以实物方式介入仿真系统中。例如,许多部件必须以实物方式介入仿真系统中。例如,飞行驾驶员训练器,为了使飞行器有真实感,座舱飞行
19、驾驶员训练器,为了使飞行器有真实感,座舱往往是以实物的方式介入系统的。往往是以实物的方式介入系统的。1.2 1.2 连续系统仿真技术连续系统仿真技术 由以上原因可以看出,半实物仿真是一种更有实际意义的仿真实验,其技术难度和投资也往往大于全数字仿真。图是某航行器指令制导半实物仿真系统的原理框图。图图1.2.1 指令制导半实物仿真系统原理图指令制导半实物仿真系统原理图1.2 1.2 连续系统仿真技术连续系统仿真技术 三、数字仿真三、数字仿真 数字仿真的前提是系统的数学模型,数字仿真的工具是数字计算机,而其主要内容是数值计算方法、仿真程序、仿真语言以及上机操作。通常将计算机称为仿真的硬件工具,而将仿
20、真计算方法和仿真程序称为仿真软件。数字仿真的工作流程如图所示 图图1.2.2 仿真实验的一般过程仿真实验的一般过程1.2 1.2 连续系统仿真技术连续系统仿真技术 从以上仿真过程可以看到,这里涉及三个具体的部分和三个从以上仿真过程可以看到,这里涉及三个具体的部分和三个具体的活动:一是具体的活动:一是物理系统物理系统,二是,二是数学模型数学模型,三是,三是计算机计算机,如图所示。并且有两次模型化和一次计算活动。第一次模型化如图所示。并且有两次模型化和一次计算活动。第一次模型化是是将实际系统变成数学模型将实际系统变成数学模型,第二次是,第二次是将数学模型变成将数学模型变成仿真模型仿真模型。通常将一
21、次模型化的技术称为。通常将一次模型化的技术称为系统辨识系统辨识技术;而将技术;而将第二次模型化、仿真模型编程、校核和验证统称为第二次模型化、仿真模型编程、校核和验证统称为仿真技术仿真技术。二者所采用的研究方法虽有较大的差别,但又有十分密切的联二者所采用的研究方法虽有较大的差别,但又有十分密切的联系。校核和验证模型的过程实际上也就是不断修改模型使之更系。校核和验证模型的过程实际上也就是不断修改模型使之更符合实际的过程,因而从某种意义上讲,仿真也是建模过程的符合实际的过程,因而从某种意义上讲,仿真也是建模过程的继续。继续。图图1.2.3 计算机仿真三要素和三个基本活动计算机仿真三要素和三个基本活动
22、四、数字仿真程序四、数字仿真程序 数字仿真程序是一种适用于一类仿真问题的数字仿真程序是一种适用于一类仿真问题的通通用程序用程序。一般采用。一般采用通用语言通用语言编写。根据仿真过程的编写。根据仿真过程的要求,一个完整的仿真程序应具有以下三个基本阶要求,一个完整的仿真程序应具有以下三个基本阶段。段。(1)(1)初始化阶段初始化阶段 这是仿真的准备阶段,主要完成下列工作:数组定维、各状态变量置初值。数组定维、各状态变量置初值。可调参数、决策变量以及控制策略等的建立。可调参数、决策变量以及控制策略等的建立。仿真总时间、计算步距、打印间隔、输出方仿真总时间、计算步距、打印间隔、输出方 式等的建立。式等
23、的建立。(2)(2)模型运行阶段模型运行阶段 这是仿真的主要阶段。规定调用某种算法,计算各状态变量和系统输出变量。当到达打印间隔时输出一次计算结果,并以数字或图形的方式表示出来。(3)(3)仿真结果处理和输出阶段仿真结果处理和输出阶段 当仿真达到规定的总仿真时间时,对动力学来说,常常希望把整个仿真结果以曲线形式再显示或打印出来,或将整个计算数据存起来。针对不同的计算机和计算机外设的配置,该段的差别也较大。仿真程序仿真程序一般只是一种用通用语言编写的专门用于仿真这类问题的程序,所以不受机型的限制,便于移植,而且可以减少工程技术人员大量的编写程序时间。属于这类仿真的程序编写程序编写、算法设计算法设
24、计将是本书介绍的主要内容1.3 1.3 离散事件系统仿真技术离散事件系统仿真技术 计算机仿真涉及的面很广,就仿真对象而言,有连续系统连续系统、离散事件动态系统离散事件动态系统和复合系统复合系统。离散事件系统是指状态变化只在离散时刻产生的系统,“事件”就是指系统状态发生变化的一种行为。离散事件动态系统也是系统仿真运用的一个重要领域,而且近年来愈来愈受到人们的关注和重视。本节将以最简单的方式向读者介绍这一领域的基本知识。离散事件系统和连续系统不同,它包含的事件的发生过程在时间和空间上都是离散的。例如交通管理、生产自动线、计算机系统和社会经济系统都是离散事件系统。在这类系统中,各事件以某种顺序或在某
25、种条件下发生,并且大都属于随机性的。例例 某个理发馆,设上午9.00开门,下午7.00关门。显然,在这个理发馆系统中,存在理发师和顾客两个实体。也存在顾客到达理发馆的事件和理发师为顾客服务事件。因此描述该系统的状态是理发师(服务台)的状态(忙或闲)、顾客排队等待的队长、理发师的服务方式(如对某些特殊顾客的优先服务)。显然,这些状态变量的变化只能在离散的随机时间点上发生。类似的例子很多,如定票系统、库存系统、加工制造系统、交通控制系统、计算机系统等等。在连续系统的数字仿真中,时间通常被分割为均匀的间隔,并以一个基本时间间隔计时。而离散系统的数字仿真则经常是面向事件的,时间并不需要按相同的增量增加
26、。在连续系统仿真中,系统动力学模型是由系统变在连续系统仿真中,系统动力学模型是由系统变量之间关系的方程来描写的。仿真的结果是系统变量量之间关系的方程来描写的。仿真的结果是系统变量随时间变化的时间历程。在离散系统仿真中,系统变随时间变化的时间历程。在离散系统仿真中,系统变量是反映系统各部分之间相互作用一些事件,系统模量是反映系统各部分之间相互作用一些事件,系统模型则是反映这些事件状态的数的集合,仿真结果是产型则是反映这些事件状态的数的集合,仿真结果是产生处理这些事件的时间历程。生处理这些事件的时间历程。由于离散时间系统固有的随机性,对这类系统的由于离散时间系统固有的随机性,对这类系统的研究往往十
27、分困难。经典的概率论、数理统计和随机研究往往十分困难。经典的概率论、数理统计和随机过程理论虽然为这类系统的研究提供了理论基础,并过程理论虽然为这类系统的研究提供了理论基础,并能对一些简单系统提供解析解,但对工程实际中的大能对一些简单系统提供解析解,但对工程实际中的大量系统,惟有依靠计算机仿真技术才能提供较为完整量系统,惟有依靠计算机仿真技术才能提供较为完整的和可靠的结果。的和可靠的结果。1.3.1 1.3.1 离散事件系统的数学模型离散事件系统的数学模型一、基本概念(1)实体或设备 离散事件系统有多种类型,但它们的主要组成部分基本相同,首先,它有一部分是活动的,叫“实体”。例如,生产自动线上待
28、加工的零件,计算机系统待处理的信息,以及商店或医院中排队等待的顾客等等。系统的工作过程实质上就是这种“实体”流动和接受加工、处理和服务的过程。其次,系统中还有一部分是固定的,叫“设备”。这些设备用于对实体进行加工、处理或服务,它们相当于连续系统中的各类对信息进行交换处理的元件。这些“设备”可能是机床、电话交换系统、营业员或者医生等。所以此处“设备”的含义是广泛的。实体按一定规律不断地到达(产生),在设备作用下通过系统,接受服务,最后离开系统。整个系统呈现出动态过程。在目前通用方法是将实体和设备通称为“实体”,但前者称为“临时实体临时实体”,后者设备称为“永久实体永久实体”。(2)事件 描述离散
29、事件系统的第二个重要概念是“事件”、事件事件是引起系统状态发生变化的行为。例如,在例中,可以定义“顾客到达”为一类事件,而这个事件的发生引起系统的状态理发师的状态从“闲”变成“忙”,或者引起系统的另外一个状态顾客的排队人数发生变化。同样,一个顾客接受服务完毕后离开系统也可以定义为一类事件。在离散事件仿真模型中,由于是依靠事件来驱动,除了系统中固有事件外,还有所谓“程序事件”,它用于控制仿真进程。例如要对例的系统进行从上午9.00开门到下午7.00关门这一段时间内的动态过程仿真,则可以定义“仿真时间达到10小时后停止仿真”作为一个程序事件,当该事件发生时即结束仿真模型的执行。(3)(3)活动活动
30、 离散事件系统中的活动活动,通常用于表示两个可以区分的事件之间的过程,它标志着系统状态的转移。在例中,顾客的到达事件与该顾客开始接受服务事件之间可称为一个活动,该活动使系统的状态(队长)发生变化,顾客开始接受服务到该顾客服务完毕后离开也可以视为一个活动,它使队长减1。(4)(4)进程进程 进程由若干个有序事件及若干有序活动组成,一个进程描述了它所包括的事件及活动间的相互进程描述了它所包括的事件及活动间的相互逻辑关系及时序关系逻辑关系及时序关系。如例中,一个顾客到达系统、经过排队、接受服务、到服务完毕后离去可以称为一个进程。事件活动进程三者之间的关系可用图来描述。1.3.1 事件活动进程之间的关
31、系(5)(5)仿真钟仿真钟 仿真钟用于表示仿真时间的变化仿真钟用于表示仿真时间的变化。在离散事件仿真中,由于引起状态变化的事件发生的时间是随机的,因此仿真钟的推进步长也完全是随机的。而且,两个相邻发生的事件之间系统状态不会发生任何变化,因而仿真钟可以跨过这些“不活动”周期。从一个事件发生时刻推进到下一事件发生时刻,仿真钟的推进呈现跳跃性,推进速度具有随机性。可见,在离散事件仿真模型中事件控制部件是必不可少的,以便按一定规律来控制仿真钟的推进。(6)(6)统计计数器统计计数器 离散事件系统的状态随事件的不断发生也呈现出动态变化过程,但仿真的目的主要不是要得到这些状态是如何变化的。由于这种变化是随
32、机的,某一次仿真运行得到的状态变化过程只不过是随机过程的一次取样。如果进行另一次独立的仿真运行所得到的状态变化过程可能完全是另一种情况。他们只有在统计意义下才有参考价值。在例中,由于顾客到达的时间间隔具有随机性,理发师为每一个顾客服务的时间长度也是随机的,因而在某一时刻,顾客排队的队长或理发师的忙闲情况完全是不确定的。在分析该系统时,感兴趣的可能是系统的平均队长、顾客的平均等待时间或者是理发师的利用率等。在仿真模型中,需要有一个统计计数部件,以在仿真模型中,需要有一个统计计数部件,以便统计系统中的有关变量。便统计系统中的有关变量。二、模型 离散事件系统既然主要有实体、设备和各类事件、活动、进程
33、组成,那么系统状态的变化也是由这些实体的活动引起的、描述这类系统的数学模型可以分为以下三个部分。(1)到达模型到达模型 设实体1到达系统的时刻为,实体2到达系统的时刻为,则实际相互到达的时间为,相互到达的速度为。在离散事件系统中,用概率函数来定义,并用相互到达时间大于时间t的概率来表示到达模型,称为到达分布函数,用表示。如果已知到达时间的积累分布函数,则与之间有如下关系:(1.3.1)如果实体到达完全随机,只受给定的平均到达速度的限制,即下一实体到达与上一实体到达时间无关,而在时间区间内到达的概率与成正比,与无关,则在这些条件下,系统在时刻到达n个实体的概率满足泊松分布模式,即 为单位时间到达
34、的实体数 泊松分布是一种很重要的概率分布,在实际排队系统中有不少到达模式属于这种分布。例如电话交换系统中的呼叫次数、计算机信息处理系统中信息的到达、商店和医院等服务机构中人的到达次数等等。(2)服务模型 它是用来描述设备为实体服务的时间模型。假定系统中同时为实体服务的设备有个,且设备为单个实体服务所需要的时间为,一般也用概率函数来描述。定义服务分布函数,它是服务时间大于时间的概率。若设为服务时间积累分布函数,则有 (1.3.3)及就称为服务模型服务模型。若服务过程满足:1在不重叠的时间区间内;2各个服务时间是相互独立的,服务时间平均值是一常值;3在区间内完成为一个实体服务的概率正比与时间间隔,
35、则服务时间的概率分布和实体到达时间间隔的概率分布相同,即为负指数分布,概率密度函数为 (1.3.4)(3)排队模型 它是用来描述在服务过程中当出现排队现象时,系统对排队的处理规则。当设备的服务速度低于实体互相到达速度时。在设备前就会出现排队现象。对一个服务系统来讲,出现一定的排队现象是正常的,但是,不希望排队过长。一旦出现排队现象,实体将按照一定的规则接受服务。一般有如下规则:先到先服务:即按到达顺序接受服务,这是最通常的情形。后到先服务:如使用电梯的顾客是后入先出的;计算机系统中存放信息的压栈处理等。随机服务:当设备空闲时,从等待的实体中随机地选一名进行服务。如电话交换接通呼唤的服务等。优先
36、服务:如医院中急诊病人优先得到治疗;机场跑道优先对需要降落的飞机提供服务等。由上述可知,离散事件系统的模型一般来讲不能用一组方程来描述,而是要用一些逻辑条件或流程图来描述,这与连续系统模型有很大的不同。正因为这一点,决定了离散事件系统的仿真具有它本身的特殊性。1.3.2 1.3.2 离散事件系统的仿真方法离散事件系统的仿真方法 在一个较为复杂的离散事件系统中,一般都存在诸多实体,这些实体之间相互联系,相互影响,然而其活动的发生都统一在同一时间基上。建立起各类实体之间的逻辑关系,这是离散事件系统仿真学的重要内容之一,有时称之为仿真算法仿真算法或仿真策仿真策略略。如同连续系统仿真一样,即使同一系统
37、,不同算法下的仿真模型的形式是不同的,仿真策略决定仿真模型的结构。在此仅向读者简单介绍目前比较成熟的三种仿真方法。(1)事件调度法 离散事件系统中最基本的概念是事件,事件的发生引起系统状态的变化。用事件的观点来分析真实系统,通过定义事件及每个事件发生对系统状态的变化按时间顺序确定,并执行每个事件发生时有关的逻辑关系,这就是事件调度法的基本思想。按这种策略建立模型时,所有事件均放在事件表中。模型中设有一个时间控制部分,该成分从事件表中选择具有最早发生时间的事件,并将仿真钟修改到该事件发生的时间,再调用与该事 件相应的事件处理模块。该事件处理完后返回时间控制部分。这样,事件的选择与处理不断地进行,
38、直到仿真终止地条件或程序事件产生为止。(2)(2)活动扫描法活动扫描法 如果事件的发生不仅与时间有关,而且与其它条件也有关,即只有满足某些条件时事件才会发生,在这种情况下,采用事件调度法策略建模则显示出这种算法的弱点。原因在于,这类系统活动持续时间的不确定性,因而无法预定活动的开始和终止时间。活动扫描法活动扫描法的基本思想是:系统由成分组成,而成分包含着活动,这些活动的发生必须满足某些条件;每一个主动成分有一个相应的活动子例程;在仿真过程中,活动的发生时间也作为条件之一,而且是较之其它条件具有更高的优先权(3)(3)进程交互法进程交互法 进程由若干个事件及若干活动组成,一个进程描述了它所包括的
39、事件及活动间的相互逻辑关系及时序关系。进程交互法进程交互法采用进程描述系统采用进程描述系统,它,它将模型中的主动成将模型中的主动成分历经系统时所发生的事件及活动按时间顺序进行组合,从而分历经系统时所发生的事件及活动按时间顺序进行组合,从而形成进程表。一个成分一旦进入进程,它将完成全部活动。形成进程表。一个成分一旦进入进程,它将完成全部活动。以上讨论的三种仿真方法在离散事件系统仿真中均得到广以上讨论的三种仿真方法在离散事件系统仿真中均得到广泛的应用。有些仿真语言采用某一种方法,有的则允许用户在泛的应用。有些仿真语言采用某一种方法,有的则允许用户在同一个仿真语言中用多种方法,以适应不同用户的需要。
40、显然,同一个仿真语言中用多种方法,以适应不同用户的需要。显然,选择何种方法依赖于被研究的系统的特点。一般说来,选择何种方法依赖于被研究的系统的特点。一般说来,如果系如果系统中的各个成分相关性较少,宜采用事件调度法统中的各个成分相关性较少,宜采用事件调度法;相反宜采用相反宜采用活动扫描法活动扫描法;如果系统成分的活动比较规则,则宜采用进程交如果系统成分的活动比较规则,则宜采用进程交互法互法。图图是以出纳员队列模型为例列出这三种方法的流程图图是以出纳员队列模型为例列出这三种方法的流程图,由图可清楚地看到它们之间的关系。图,由图可清楚地看到它们之间的关系。离散事件系统仿真研究的一般步骤与本书要讲述的
41、连续系离散事件系统仿真研究的一般步骤与本书要讲述的连续系统仿真是类似的,它统仿真是类似的,它包括系统建模、确定仿真模型、选着仿真包括系统建模、确定仿真模型、选着仿真算法、设计仿真程序、运行仿真程序、输出仿真结果并进行分算法、设计仿真程序、运行仿真程序、输出仿真结果并进行分析析,其内容与节类似,同样可以用图所示流程图描述。,其内容与节类似,同样可以用图所示流程图描述。图图1.3.2 出纳员队列模型出纳员队列模型(a)到达事件流程图)到达事件流程图(b)离开事件流程图)离开事件流程图图图 出纳员服务活动流程图出纳员服务活动流程图 图图1.3.4 1.3.4 出纳员服务进程流程图出纳员服务进程流程图
42、 1.3.3 1.3.3 离散事件系统仿真语言离散事件系统仿真语言 为了对离散事件系统进行仿真,已研制出许多仿真语言,其中面向进程的语言面向进程的语言GPSSGPSS及面向事件的语言面向事件的语言SIMSCRIPTSIMSCRIPT最为流行。为了使读者明白如何用仿真语言来编程,下面介绍一下GPSS语言及其使用。对某种仿真语言特别感兴趣的读者可进一步参阅有关文献。面向进程的语言是基于进程建模基于进程建模的仿真语言;被仿真的系统用框图来描述;框图由相互连接的方框构成;这些方框表示进程的各种动作;连接方框的连线则表示动作的执行顺序。若离开一个方框的连线多于一条,则需要在方框上说明选择的条件,以实现程
43、序中动作的选择。GPSS语言共提供了40多种功能块,相应有40多个标准语句。因此对用户来说,只需要掌握这40余种语句就能很方便地对系统建立仿真模型.下面通过一个下面通过一个简单的例子来说明简单的例子来说明如何建立如何建立GPSSGPSS语言语言的仿真模型。考虑的仿真模型。考虑一单台服务系统,一单台服务系统,顾客到达时间间隔顾客到达时间间隔服从均值为服从均值为20s20s的指的指数分布,服务时间数分布,服务时间为为99,2525之间均匀之间均匀分布的随机变量,分布的随机变量,仿真钟运行仿真钟运行480s480s结结束。该系统的束。该系统的GPSSGPSS方框图所示,图中方框图所示,图中每个块均为
44、每个块均为GPSSGPSS仿仿真程序的典型功能真程序的典型功能块。块。图1.3.5 单台排队系统的GPSS方框图 实现图所示方块图的GPSS源程序如下:1 IMULATE1 IMULATE 2 XP FUNCTION RN1,024 2 XP FUNCTION RN1,024 3 0.0,0.0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509 3 0.0,0.0/0.1,0.104/0.2,0.222/0.3,0.355/0.4,0.509 4 0.5,0.69/0.6,0.915/0.7,1.2/0.75,1.38.0.8,1.6/0.84,4 0.5,0.6
45、9/0.6,0.915/0.7,1.2/0.75,1.38.0.8,1.6/0.84,1.831.83 5 0.88,2.12/0.9,2.3/0.92,2.52/0.94,2.81/0.95,2.99/0.96,3.2 5 0.88,2.12/0.9,2.3/0.92,2.52/0.94,2.81/0.95,2.99/0.96,3.2 6 0.97,3.5/0.98,4.0/0.99,4.6/0.995,5.3/0.998,6.2/0.999,7.0 6 0.97,3.5/0.98,4.0/0.99,4.6/0.995,5.3/0.998,6.2/0.999,7.0 7 0.997,8.0
46、7 0.997,8.0 8 *8 *9 TISYS TABLE MP1,0,5,20 9 TISYS TABLE MP1,0,5,20 10 *MODEL SEGMENT 10 *MODEL SEGMENT 11 GENERRATE 20,FN$XP 11 GENERRATE 20,FN$XP 12 MARK P1 12 MARK P1 13 QUEUE WAITQ13 QUEUE WAITQ 14 SEIZE SRVR 14 SEIZE SRVR 15 DEPART WAITQ 15 DEPART WAITQ 16 ADVANCE 17,8 16 ADVANCE 17,8 17 RELEAS
47、E SRVR 17 RELEASE SRVR 18 TABULATE TISYS 18 TABULATE TISYS 19 TERMINATE 19 TERMINATE 20*TIMING SEGMENT20*TIMING SEGMENT 21 GENERATE 480 21 GENERATE 480 22 TERMINATE 1 22 TERMINATE 1 23*CONTROL CARDS 23*CONTROL CARDS 24 START 1 24 START 1 25 END 25 END 上面程序中的每一行最前面的数字是语句标号。上面程序中的每一行最前面的数字是语句标号。1号语句标志
48、GPSS仿真程序开始;第2号语句定义了一个随机变量函数XP,该函数的取值是由第3号到第7号语句中的24对数据构成,由1号随机数发生器取值对该函数取样,得到的随机变量是均值为1s的指数随机变量。从第10号语句开始到第19号语句为模型段,每一句按顺序与图中的方块一一对应。例如,第11句的功能就是产生均值为20s的指数随机变量;第16句表示为顾客服务的时间均值为17s,区间半长为8的均匀分布随机变量;第19句则是表示仿真程序到此结束。从第21句到第22句是仿真时间控制,从中可以看到,仿真钟推进480个单位时产生一个程序来终止仿真,说明该模型的仿真钟时间单位为1s。GPSS程序处理器对上述语句进行逐行
49、翻译,在翻译第24句后即开始进行仿真。虽然本例只引用了GPSS功能块的一个子集,但却说明了它的建模基本框架。系统仿真技术是分析系统仿真技术是分析综合各类系统综合各类系统的一种有力的工具和手段的一种有力的工具和手段。它目前已广。它目前已广泛地应用于几乎所有的科学技术领域。泛地应用于几乎所有的科学技术领域。本节仅从本节仅从科学的角度科学的角度出发,对接触最出发,对接触最多多发展最快发展最快比较重要的几个方面做比较重要的几个方面做一概括的介绍。一概括的介绍。1.4 1.4 仿真技术的应用仿真技术的应用1.4.1 1.4.1 系统仿真技术在系统分析系统仿真技术在系统分析综合方面的应用综合方面的应用 各
50、技术领域控制系统的分析设计以及系统测试改造都应用系统仿真技术。在工程系统方面,例如,在设计开始阶段,利用仿真技术论证方案,进行经济技术比较,优选合理方案;在设计阶段,系统仿真技术可帮助设计人员优选系统合理结构,优化系统参数,以期获得系统最优品质和性能;在调试阶段,利用仿真技术分析系统响应与参数关系,指导调试工作,可以迅速完成调试任务;对已经运行的系统,利用仿真技术可以在不影响生产的条件下分析系统的工作状态,预防事故发生,寻求改进薄弱环节,以提高系统的性能和运行效率。对设计任务重工作量大的系统,可建立系统设计仿真器或系统辅助设计程序包,使设计人员节省大量的设计时间,提高工作效率。在非工程系统方面