高 等 学 校 规 划 教 材

58
高 高 高 高 高 高 高 高 计 计 计 计 计 计 计 计 计 计 计 计 计 计 计计计 计计计 计计计 计计 计计计 计计计 计计计 计计 计计计计计计计 Tel: 029-88492617 e.mail: [email protected] n

Upload: ezhno

Post on 19-Jan-2016

142 views

Category:

Documents


0 download

DESCRIPTION

计 算 机 仿 真 技 术. 高 等 学 校 规 划 教 材. 吴旭光 杨惠珍 王新民 编著. 化学工业出版社. Tel: 029-88492617 e.mail: [email protected]. 第一章 绪论. 这一章将介绍计算机仿真的基本概念、它所包括的内容以及发展状况,即我们将从横向和纵向来阐述计算机系统仿真的内涵。 所有这些内容将为学习计算机仿真技术和以后更进一步的研究建立一个基础。. 第一章 绪论 1.1 系统仿真的基本概念 1.2 连续系统仿真技术 1.3 离散事件系统仿真技术 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 高 等 学 校 规 划 教 材

高 等 学 校 规 划 教 材

计 算 机 仿 真 技 术计 算 机 仿 真 技 术吴旭光 杨惠珍 王新民 编著吴旭光 杨惠珍 王新民 编著

化学工业出版社

Tel: 029-88492617e.mail: [email protected]

Page 2: 高 等 学 校 规 划 教 材

第一章 绪论 这一章将介绍计算机仿真的基本概念、它所包括的内容以及发展状况,即我们将从横向和纵向来阐述计算机系统仿真的内涵。

所有这些内容将为学习计算机仿真技术和以后更进一步的研究建立一个基础。

Page 3: 高 等 学 校 规 划 教 材

第一章 绪论

1.1 系统仿真的基本概念 1.2 连续系统仿真技术 1.3 离散事件系统仿真技术 1.3.1 离散事件系统的数学模型 1.3.2 离散事件系统的仿真方法 1.3.3 离散事件系统仿真语言 1.4 仿真技术的应用 1.4.1 系统仿真技术在系统分析﹑综合方面的应用 1.4.2 系统仿真技术在仿真器方面的应用 1.4.3 系统仿真技术在技术咨询和预测方面的应用 1-5 仿真技术的现状与发展 1.5.1 仿真计算机的现状及发展 1.5.2 计算机软件的现状及发展 1.5.3 仿真器的现状与开发

Page 4: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念一、系统与模型 系统就是一些具有特定功能的、相互间以一定规律联系着的物体所组成的一个总体。 一个系统可能非常复杂,也可能很简单,因此很难给“系统”下一个确切的定义。因为这个定义不但能够足以概括系统的各种应用,而且又能够简明地把这个定义应用于实际。但无论什么系统一般均具有 4 个重要的性质,即 整体性、相关性、有序性和动态性。 系统是一个广泛的概念,毫无疑问它在现代科学研究和工程实践中扮演着重要的角色。不同领域的问题均可以用系统的框架来解决。但究竟一个系统是由什么构成的,这取决于观测者的观点。例如,这个系统可以是一个由一些电子部件组成的放大器;或者是一个可能包括该放大器在内的控制回路;或者是一个有许多这样回路的化学处理装置;或者是一些装置组成的一个工厂;或者是一些工厂的联合作业形成的系统,而世界经济就是这个系统的环境。

Page 5: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念 首先,必须明确系统的整体性。也就是说,它作为一个

整体,各部分是不可分割的。就好像人体,它由头、身躯、四肢等多个部分组成,如果把这些部分拆开,就不能构成完整的人体。至于人们熟悉的自动控制系统,其基本组成部分 (控制对象、测量元件、控制器等 )同样缺一不可。整体性是系统的第一特性。

其次,要明确系统的相关性。相关性是指系统内部各部分之间相互以一定的规律联系着,它们之间的特定关系形成了具有特定性能的系统。有时系统各要素之间的关系并不是简单的线性关系,而呈现出复杂的非线性关系。也正是由于这种非线性,才构成了我们这个多彩的世界。

对于复杂的非线性关系,必须研究其复杂性与整体性。再以人体为例,人的双眼视敏度是单眼视敏度的 6 ~ 10 倍。此外,双眼有立体感,而单眼却无此特点。这就是一种典型的非线性特征,因此相关性是系统的第二特性,也是目前系统研究的主要问题。

Page 6: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念 除整体性和相关性外,系统还具有有序性和动态性。比如,生命是一种高度有序的结构,它所具有的复杂功能组织,与现代化大工业生产的“装配线”非常相似,这是一种结构上的有序性,对任何系统都是适用的。又如图1.1.1 所示,一个非平衡系统如果经过分支点 A、 B 到达 C,那么对 C 态的解释就必须暗含着对A 态和 B 态的了解。这就是系统的动态性。

A

B

C

图 1.1.1 系统的动态性

Page 7: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念 建立系统概念的目的在于深入认识并掌握系统的运动规律。因此不仅要定性地了解系统,还要定量地分析、综合系统,以便能更准确地解决工程、自然界和现代社会中的种种复杂问题。定量地分析、综合系统最有效的方法是建立系统的模型,并使用高效的数值计算工具和算法对系统的模型进行解算。

采用模型法分析系统的第一步是建立系统的数学模型,所谓数学模型就是把关于系统的本质部分信息,抽象成有用的描述形式,因此抽象是数学建模的基础。数学在建模中扮演着十分重要的角色,马克思说过:“一种科学只有在成功地运用数学时,才算达到完善的地步。”例如集合的概念是建立在抽象的基础上的,共同的基础使集合论对于建模过程非常有用。这样,数学模型可以看成是由一个集合构造的。

Page 8: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念 数学模型的应用无论是在纯科学领域还是在实际工程领域

中都有着广泛的应用,但通常认为一个数学模型有两个主要的用途:首先,数学模型可以帮助人们不断地加深对实际物理系统的认识,并且启发人们去进行可以获得满意结果的实验;其次,数学模型有助于提高人们对实际系统的决策和干预能力。

数学模型按建立方法的不同可分为机理模型,统计模型和混合模型。

机理模型采用演绎方法,运用已知定律,用推理方法建立数学模型;统计模型采用归纳法,它根据大量实测或观察的数据,用统计的规律估计系统的模型;混合模型是理论上的逻辑推理和实验观测数据的统计分析相结合的模型。按所描述的系统运动特性和运用的数学工具特征,数学模型可分类为线性、非线性、时变、定常、连续、离散、集中参数、分布参数、确定、随机等系统模型。

Page 9: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念二、仿真 随着科学技术的进步,尤其是信息技术和计算机技术的发展,“仿真”的概念不断得以发展和完善,因此给予仿真一个清晰和明了的定义是非常困难的。但一个通俗的系统仿真基本含义是指:设计一个实际系统的模型,对它进行实验,以便理解和评价系统的各种运行策略。而这里的模型是一个广义的模型,包含数学模型、非数学模型、物理模型等等。显见,根据模型的不同,有不同方式的仿真。从仿真实现的角度来看,模型特性可以分为连续系统和离散事件系统两大类。由于这两类系统的运动规律差异很大,描述其运动规律的模型也有很大的不同,因此相应的仿真方法不同,分别对应为连续系统仿真和离散事件系统仿真。

Page 10: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念1 连续系统仿真 连续系统仿真是指物理系统状态随时间连续变化的系统,

一般可以使用常微分方程或偏微分方程组描述。需要特别指出的是这类系统也包括用差分方程描述的离散时间系统。对于工科院校,因为主要研究的对象是工业自动化和工业过程控制,因此本教材主要介绍连续系统仿真。2 离散事件系统仿真 离散事件系统是指物理系统的状态在某些随机时间点上

发生离散变化的系统。它与连续时间系统的主要区别在于:物理状态变化发生在随机时间点上,这种引起状态变化的行为称为“事件”,因而这类系统是由事件驱动的。离散时间系统的事件 (状态 )往往发生在随机时间点上,并且事件(状态 ) 是时间的离散变量。系统的动态特性无法使用微分方程这类数学方程来描述,而只能使用事件的活动图或流程图。因此对离散事件系统的仿真的主要目的是对系统事件的行为作统计特性分析,而不像连续系统仿真的目的是对物理系统的状态轨迹作出分析。

Page 11: 高 等 学 校 规 划 教 材

1.1 系统仿真的基本概念 仿真技术的分类方法很多,不同的分类仿真方法也有所不同,下一小节我们还要针对连续时间系统仿真的分类进行详细研究。

本书讲授的是连续时间系统的计算机仿真,因此仿真的基础是建立在系统的数学模型基础上,并以计算机为工具对系统进行实验研究的一种方法。

仿真,就是模仿真实的事物,也就是用一个模型来模仿真实系统。既然是模仿,两者就不可能完全等同,但是最基本的内容应该相同,即模型必须至少反映系统的主要特征。

随着现代工业的发展,科学研究的深入与计算机软、硬件的发展,仿真技术已成为分析、综合各类系统,特别是大系统的一种有效研究方法和有力的研究工具。

Page 12: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术一、基本原理分类 除了可按模型的特性分为连续系统仿真和离散事件系统仿真类型外,还可以从不同的角度对系统仿真进行分类。比较典型的分类方法是:

根据模型的种类系统仿真可以分为三种:物理仿 真 、数学仿真和半实物仿真。

根据使用的仿真计算机也可将系统仿真分为三种: 模拟计算机仿真、数字计算机仿真和数字模拟混合仿真。

根据仿真时间钟和实际物理系统时间钟的比例关系,常将仿真分为实时仿真和非实时仿真。

Page 13: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 本小节我们根据仿真的主要理论依据——相似论来研究

仿真的分类。 所谓相似,是指各类事物间某些共性的客观存在。

相似性是客观世界的一种普遍现象,它反映了客观世界中不同物理系统和物理现象具备某些共同的特性和规律。

采用相似理论建立物理系统的相似模型,这是相似理论在系统仿真中最基本的体现。

上一节我们讲过,仿真就是模仿一个真实系统,所遵循的基本原则就是相似原理。根据相似论的研究方法和仿真技术的研究方法,在建立物理系统的模型时,我们认为物理系统和模型应该满足几何相似、环境相似和性能相似中的一种或几种。

Page 14: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术

环境相似 就是人工在实验室里产生与所研究对象在自然界中所处环境类似的条件,比如飞机设计中的风洞,鱼雷设计中的水洞、水池等等。

性能相似 则是用数学方程来表征系统的性能,或者利用数据处理系统,来模仿该数学方程所表征的系统。性能相似原理也是仿真技术遵循的基本原理。

几何相似 就是把真实系统按比例放大或缩小,其模型的状态向量与原物理系统的状态完全相同。土木建筑、水利工程、船舶、飞机制造多采用几何相似原理进行各种仿真实验。

Page 15: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 根据仿真所遵循的相似原则基本含义,大致可将仿真分为三大类:

物理仿真:主要是运用几何相似、环境相似条件,构成物理模型进行仿真。其主要原因可能是由于原物理系统是昂贵的、或是无法实现的物理场、或是原物理系统的复杂性难以用数学模型描述的。

数字仿真:运用性能相似,即将物理系统全部用数学模型来描述,并把数学模型变换为仿真模型,在计算机上进行实验研究。

半物理仿真:综合运用三个相似原则,把数学模型、实体模型、相似物理场组合在一起的仿真系统。这类仿真技术又称为硬件在回路中的仿真 (Hardware in the loop simulation) 。

由于现代工业和科学技术的发展,单一的物理仿真和数字仿真往往不能满足其研究目的的要求,而这类物理仿真和数字仿真的结合称为半物理仿真,则可满足其要求。

本教材的重点是向读者介绍数字仿真。

Page 16: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 二、半实物仿真 半实物仿真是一种通俗而习惯的叫法。按前述的定义应该

是:在全部仿真系统中、一部分是实际物理系统或以实际等价的物理场 ,另一部分是安装在计算机里的数学模型。半实物仿真在科学研究和工程应用中扮演着非常重要的角色,从某种意义上半实物仿真技术的难度和实际应用性均超过全数字仿真。这主要是因为:

(1) 对于一个大型的仿真系统,有时系统中的某一部分很难建立其数学模型,或者建立这部分的数学模型的代价昂贵,精度也难以保证。例如,在红外制导系统仿真时,其红外制导头以及各种物理场的模型建立是相当困难的。为了能准确地仿真系统,这部分将以实物的形式直接参与仿真系统,从而避免建模的困难和过高的建模费用。

(2) 利用半实物仿真系统,可以检验系统中的某些部件的性能。例如,为了检验航行器的性能,可以将设计的控制部件以实物的形式进入仿真系统。

Page 17: 高 等 学 校 规 划 教 材

(3) 利用半实物仿真,可以进一步校正系统的数学模型。一个复杂的系统在完成初步设计以及分部件逐个研制出来后,为了验证和鉴定系统性能或检验定型产品,利用系统的半实物仿真可以从总体上更准确地检测外界因素的变化对系统的影响,更深入地暴露系统的内在矛盾。从而,在实验室内能较全面地检验和评定系统设计的合理性和各部件工作的协调性,进而修改和完善设计。(4) 在 1.3 节介绍的仿真器中,半实物仿真是必需。因为在这类仿真器中为了逼近物理系统的实际效应,许多部件必须以实物方式介入仿真系统中。例如,飞行驾驶员训练器,为了使飞行器有真实感,座舱往往是以实物的方式介入系统的。

Page 18: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 由以上原因可以看出,半实物仿真是一种更有实际意义的仿

真实验,其技术难度和投资也往往大于全数字仿真。图 1.2.1 是某航行器指令制导半实物仿真系统的原理框图。

遭遇参数计算 航行器动力学与运动学舵

面负载力矩三周转台框架驱动指令线加速度表头数学模型

目标仿真器目标特性与目标运动学

航行器坐标测定装置

目标坐标测定装置

执行机构

负载力矩

自动驾驶仪的综合放大器校正网络

线加速度表输出电路

制导计算机

自由陀螺与速率陀螺三轴转台

指令传输线

图 1.2.1 指令制导半实物仿真系统原理图

Page 19: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 三、数字仿真 数字仿真的前提是系统的数学模型,数字仿真的工具是数字

计算机,而其主要内容是数值计算方法、仿真程序、仿真语言以及上机操作。通常将计算机称为仿真的硬件工具,而将仿真计算方法和仿真程序称为仿真软件。数字仿真的工作流程如图 1.2.2所示

仿真运行

结果处理

(仿真研究程序 多次运行,寻优,统

)计等

辅助分析和设计

修改程序

修改仿真模型

修改系统模型

系统描述

建立数学模型

建立仿真模型

编写仿真程序

合理? 系统模型问题?

仿真模型问题?

程序问题?

结果分析?

• 图 1.2.2 仿真实验的一般过程

Page 20: 高 等 学 校 规 划 教 材

1.2 连续系统仿真技术 从以上仿真过程可以看到,这里涉及三个具体的部分

和三个具体的活动:一是物理系统,二是数学模型,三是计算机,如图 1.2.3 所示。并且有两次模型化和一次计算活动。第一次模型化是将实际系统变成数学模型,第二次是将数学模型变成仿真模型。通常将一次模型化的技术称为系统辨识技术;而将第二次模型化、仿真模型编程、校核和验证统称为仿真技术。二者所采用的研究方法虽有较大的差别,但又有十分密切的联系。校核和验证模型的过程实际上也就是不断修改模型使之更符合实际的过程,因而从某种意义上讲,仿真也是建模过程的继续。

数学模型

物理系统

计算机

系统建模

仿真建模

仿真实验

图 1.2.3 计算机仿真三要素和三个基本活动

Page 21: 高 等 学 校 规 划 教 材

四、数字仿真程序

数字仿真程序是一种适用于一类仿真问题的通用程序。一般采用通用语言编写。根据仿真过程的要求,一个完整的仿真程序应具有以下三个基本阶段。

(1) 初始化阶段 这是仿真的准备阶段,主要完成下列工作: 数组定维、各状态变量置初值。 可调参数、决策变量以及控制策略等的建立。 仿真总时间、计算步距、打印间隔、输出方 式等的建立。

Page 22: 高 等 学 校 规 划 教 材

(2) 模型运行阶段 这是仿真的主要阶段。规定调用某种算法,计算各状态变量和系统输出变量。当到达打印间隔时输出一次计算结果,并以数字或图形的方式表示出来。(3) 仿真结果处理和输出阶段 当仿真达到规定的总仿真时间时,对动力学来说,常常希望把整个仿真结果以曲线形式再显示或打印出来,或将整个计算数据存起来。针对不同的计算机和计算机外设的配置,该段的差别也较大。

仿真程序一般只是一种用通用语言编写的专门用于‘仿真’这类问题的程序,所以不受机型的限制,便于移植,而且可以减少工程技术人员大量的编写程序时间。属于这类仿真的程序编写、算法设计将是本书介绍的主要内容

Page 23: 高 等 学 校 规 划 教 材

1.3 离散事件系统仿真技术 计算机仿真涉及的面很广,就仿真对象而言,有连续系统、离散事件动态系统和复合系统。离散事件系统是指状态变化只在离散时刻产生的系统,“事件”就是指系统状态发生变化的一种行为。离散事件动态系统也是系统仿真运用的一个重要领域,而且近年来愈来愈受到人们的关注和重视。本节将以最简单的方式向读者介绍这一领域的基本知识。

离散事件系统和连续系统不同,它包含的事件的发生过程在时间和空间上都是离散的。例如交通管理、生产自动线、计算机系统和社会经济系统都是离散事件系统。在这类系统中,各事件以某种顺序或在某种条件下发生,并且大都属于随机性的。

Page 24: 高 等 学 校 规 划 教 材

例 1.3.1 某个理发馆,设上午 9.00开门,下午 7.00关门。显然,在这个理发馆系统中,存在理发师和顾客两个实体。也存在顾客到达理发馆的事件和理发师为顾客服务事件。因此描述该系统的状态是理发师 (服务台 ) 的状态 (忙或闲 ) 、顾客排队等待的队长、理发师的服务方式 ( 如对某些特殊顾客的优先服务 ) 。显然,这些状态变量的变化只能在离散的随机时间点上发生。

类似的例子很多,如定票系统、库存系统、加工制造系统、交通控制系统、计算机系统等等。

在连续系统的数字仿真中,时间通常被分割为均匀的间隔,并以一个基本时间间隔计时。而离散系统的数字仿真则经常是面向事件的,时间并不需要按相同的增量增加。

Page 25: 高 等 学 校 规 划 教 材

在连续系统仿真中,系统动力学模型是由系统变量之间关系的方程来描写的。仿真的结果是系统变量随时间变化的时间历程。在离散系统仿真中,系统变量是反映系统各部分之间相互作用一些事件,系统模型则是反映这些事件状态的数的集合,仿真结果是产生处理这些事件的时间历程。

由于离散时间系统固有的随机性,对这类系统的研究往往十分困难。经典的概率论、数理统计和随机过程理论虽然为这类系统的研究提供了理论基础,并能对一些简单系统提供解析解,但对工程实际中的大量系统,惟有依靠计算机仿真技术才能提供较为完整的和可靠的结果。

Page 26: 高 等 学 校 规 划 教 材

1.3.1 离散事件系统的数学模型一、基本概念 (1) 实体或设备 离散事件系统有多种类型,但它们的主要组成部分基本相同,

首先,它有一部分是活动的,叫“实体”。例如,生产自动线上待加工的零件,计算机系统待处理的信息,以及商店或医院中排队等待的顾客等等。系统的工作过程实质上就是这种“实体”流动和接受加工、处理和服务的过程。其次,系统中还有一部分是固定的,叫“设备”。这些设备用于对实体进行加工、处理或服务,它们相当于连续系统中的各类对信息进行交换处理的元件。这些“设备”可能是机床、电话交换系统、营业员或者医生等。所以此处“设备”的含义是广泛的。实体按一定规律不断地到达(产生 ) ,在设备作用下通过系统,接受服务,最后离开系统。整个系统呈现出动态过程。

在目前通用方法是将实体和设备通称为“实体”,但前者称为“临时实体”,后者设备称为“永久实体”。

Page 27: 高 等 学 校 规 划 教 材

(2) 事件 描述离散事件系统的第二个重要概念是“事件”、事件是引起系统状态发生变化的行为。例如,在例 1.3.1 中,可以定义“顾客到达”为一类事件,而这个事件的发生引起系统的状态-理发师的状态从“闲”变成“忙”,或者引起系统的另外一个状态-顾客的排队人数发生变化。同样,一个顾客接受服务完毕后离开系统也可以定义为一类事件。

在离散事件仿真模型中,由于是依靠事件来驱动,除了系统中固有事件外,还有所谓“程序事件”,它用于控制仿真进程。例如要对例 1.3.1 的系统进行从上午 9.00开门到下午 7.00关门这一段时间内的动态过程仿真,则可以定义“仿真时间达到 10 小时后停止仿真”作为一个程序事件,当该事件发生时即结束仿真模型的执行。(3) 活动 离散事件系统中的活动,通常用于表示两个可以区分的事件

之间的过程,它标志着系统状态的转移。在例 1.3.1 中,顾客的到达事件与该顾客开始接受服务事件之间可称为一个活动,该活动使系统的状态 (队长 ) 发生变化,顾客开始接受服务到该顾客服务完毕后离开也可以视为一个活动,它使队长减 1 。

Page 28: 高 等 学 校 规 划 教 材

(4) 进程 进程由若干个有序事件及若干有序活动组成,一个进程描述了它所包括的事件及活动间的相互逻辑关系及时序关系。如例 1.3.1 中,一个顾客到达系统、经过排队、接受服务、到服务完毕后离去可以称为一个进程。

事件﹑活动﹑进程三者之间的关系可用图 1.3.1来描述。

进程

排队活动 服务活动

顾客到达事件

服务开始事件

服务结束事件

1.3.1 事件﹑活动﹑进程之间的关系

Page 29: 高 等 学 校 规 划 教 材

(5) 仿真钟 仿真钟用于表示仿真时间的变化。在离散事件仿真中,

由于引起状态变化的事件发生的时间是随机的,因此仿真钟的推进步长也完全是随机的。而且,两个相邻发生的事件之间系统状态不会发生任何变化,因而仿真钟可以跨过这些“不活动”周期。从一个事件发生时刻推进到下一事件发生时刻,仿真钟的推进呈现跳跃性,推进速度具有随机性。可见,在离散事件仿真模型中事件控制部件是必不可少的,以便按一定规律来控制仿真钟的推进。

(6) 统计计数器 离散事件系统的状态随事件的不断发生也呈现出动态变化过

程,但仿真的目的主要不是要得到这些状态是如何变化的。由于这种变化是随机的,某一次仿真运行得到的状态变化过程只不过是随机过程的一次取样。如果进行另一次独立的仿真运行所得到的状态变化过程可能完全是另一种情况。他们只有在统计意义下才有参考价值。

Page 30: 高 等 学 校 规 划 教 材

在例 1.3.1 中,由于顾客到达的时间间隔具有随机性,理发师为每一个顾客服务的时间长度也是随机的,因而在某一时刻,顾客排队的队长或理发师的忙闲情况完全是不确定的。在分析该系统时,感兴趣的可能是系统的平均队长、顾客的平均等待时间或者是理发师的利用率等。在仿真模型中,需要有一个统计计数部件,以便统计系统中的有关变量。

Page 31: 高 等 学 校 规 划 教 材

二、模型 离散事件系统既然主要有实体、设备和各类事件、活动、

进程组成,那么系统状态的变化也是由这些实体的活动引起的、描述这类系统的数学模型可以分为以下三个部分。

(1) 到达模型 设实体 1到达系统的时刻为,实体 2 到达系统的时刻为,则实际相互到达的时间为,相互到达的速度为。在离散事件系统中,用概率函数来定义,并用相互到达时间大于时间 t的概率来表示到达模型,称为到达分布函数,用表示。如果已知到达时间的积累分布函数,则与之间有如下关系:

(1.3.1) 如果实体到达完全随机,只受给定的平均到达速度的限制,

即下一实体到达与上一实体到达时间无关,而在时间区间内到达的概率与成正比,与无关,则在这些条件下,系统在时刻到达 n个实体的概率满足泊松分布模式,即

为单位时间到达的实体数

)(1)(0 tFtA

,2,1,0!

)()(

nn

ettP

tn

n

Page 32: 高 等 学 校 规 划 教 材

泊松分布是一种很重要的概率分布,在实际排队系统中有不少到达模式属于这种分布。例如电话交换系统中的呼叫次数、计算机信息处理系统中信息的到达、商店和医院等服务机构中人的到达次数等等。

(2) 服务模型 它是用来描述设备为实体服务的时间模型。假定系统中同时

为实体服务的设备有个,且设备为单个实体服务所需要的时间为,一般也用概率函数来描述。定义服务分布函数,它是服务时间大于时间的概率。若设为服务时间积累分布函数,则有

(1.3.3)

及就称为服务模型。 若服务过程满足: 1 在不重叠的时间区间内; 2各个服务时

间是相互独立的,服务时间平均值是一常值; 3在区间内完成为一个实体服务的概率正比与时间间隔,则服务时间的概率分布和实体到达时间间隔的概率分布相同,即为负指数分布,概率密度函数为

(1.3.4)

)(1)( 00 tFtS

tetg )(

Page 33: 高 等 学 校 规 划 教 材

(3) 排队模型 它是用来描述在服务过程中当出现排队现象时,系统对排队

的处理规则。当设备的服务速度低于实体互相到达速度时。在设备前就会出现排队现象。对一个服务系统来讲,出现一定的排队现象是正常的,但是,不希望排队过长。一旦出现排队现象,实体将按照一定的规则接受服务。一般有如下规则:

先到先服务:即按到达顺序接受服务,这是最通常的情形。 后到先服务:如使用电梯的顾客是后入先出的;计算机系统

中存放信息的压栈处理等。 随机服务:当设备空闲时,从等待的实体中随机地选一名进行服务。如电话交换接通呼唤的服务等。

优先服务:如医院中急诊病人优先得到治疗;机场跑道优先对需要降落的飞机提供服务等。

由上述可知,离散事件系统的模型一般来讲不能用一组方程来描述,而是要用一些逻辑条件或流程图来描述,这与连续系统模型有很大的不同。正因为这一点,决定了离散事件系统的仿真具有它本身的特殊性。

Page 34: 高 等 学 校 规 划 教 材

1.3.2 离散事件系统的仿真方法 在一个较为复杂的离散事件系统中,一般都存在诸多实体,

这些实体之间相互联系,相互影响,然而其活动的发生都统一在同一时间基上。建立起各类实体之间的逻辑关系,这是离散事件系统仿真学的重要内容之一,有时称之为仿真算法或仿真策略。如同连续系统仿真一样,即使同一系统,不同算法下的仿真模型的形式是不同的,仿真策略决定仿真模型的结构。在此仅向读者简单介绍目前比较成熟的三种仿真方法。

(1) 事件调度法 离散事件系统中最基本的概念是事件,事件的发生引起系统

状态的变化。用事件的观点来分析真实系统,通过定义事件及每个事件发生对系统状态的变化按时间顺序确定,并执行每个事件发生时有关的逻辑关系,这就是事件调度法的基本思想。

按这种策略建立模型时,所有事件均放在事件表中。模型中设有一个时间控制部分,该成分从事件表中选择具有最早发生时间的事件,并将仿真钟修改到该事件发生的时间,再调用与该事

Page 35: 高 等 学 校 规 划 教 材

件相应的事件处理模块。该事件处理完后返回时间控制部分。这样,事件的选择与处理不断地进行,直到仿真终止地条件或程序事件产生为止。

(2) 活动扫描法 如果事件的发生不仅与时间有关,而且与其它条件也有关,

即只有满足某些条件时事件才会发生,在这种情况下,采用事件调度法策略建模则显示出这种算法的弱点。原因在于,这类系统活动持续时间的不确定性,因而无法预定活动的开始和终止时间。

活动扫描法的基本思想是:系统由成分组成,而成分包含着活动,这些活动的发生必须满足某些条件;每一个主动成分有一个相应的活动子例程;在仿真过程中,活动的发生时间也作为条件之一,而且是较之其它条件具有更高的优先权

(3) 进程交互法 进程由若干个事件及若干活动组成,一个进程描述了它所包括的事件及活动间的相互逻辑关系及时序关系。

Page 36: 高 等 学 校 规 划 教 材

进程交互法采用进程描述系统,它将模型中的主动成分历经系统时所发生的事件及活动按时间顺序进行组合,从而形成进程表。一个成分一旦进入进程,它将完成全部活动。

以上讨论的三种仿真方法在离散事件系统仿真中均得到广泛的应用。有些仿真语言采用某一种方法,有的则允许用户在同一个仿真语言中用多种方法,以适应不同用户的需要。显然,选择何种方法依赖于被研究的系统的特点。一般说来,如果系统中的各个成分相关性较少,宜采用事件调度法;相反宜采用活动扫描法;如果系统成分的活动比较规则,则宜采用进程交互法。

图 1.3.2~图 1.3.4是以出纳员队列模型为例列出这三种方法的流程图,由图可清楚地看到它们之间的关系。

离散事件系统仿真研究的一般步骤与本书要讲述的连续系统仿真是类似的,它包括系统建模、确定仿真模型、选着仿真算法、设计仿真程序、运行仿真程序、输出仿真结果并进行分析,其内容与 1.2.2节类似,同样可以用图 1.2.2 所示流程图描述。

Page 37: 高 等 学 校 规 划 教 材

到达出纳台

队列空吗?

置出纳员为忙态

确定服务时间

顾客按规定时间离开

顾客排入队中

选择下一个事件

否 是

从出纳台离开

队列空吗?

从队列中选下一个顾客 置出纳员为闲态

确定服务时间

顾客按预定时间离开

选择下一个事件

否 是

(a) (b)

图 1.3.2 出纳员队列模型

( a)到达事件流程图 ( b)离开事件流程图

Page 38: 高 等 学 校 规 划 教 材

出纳员服务活动

是到达吗?

出纳员闲吗?

队列空吗?

确定服务时间

置出纳员忙态

找到下一个事件的时间

顾客排入队列

从队列中选下一个顾客

置出纳员闲态

是是

顾客进程

到达出纳台

出纳员忙吗?

加入队列

等待直到被选中

置出纳员忙态

确定服务时间

由服务时间拨动时钟

置出纳员为闲态

结束

1.3.3图 出纳员服务活动流程图 图 1.3.4 出纳员服务进程流程图

Page 39: 高 等 学 校 规 划 教 材

1.3.3 离散事件系统仿真语言 为了对离散事件系统进行仿真,已研制出许多仿真语言,其中面向进程的语言 GPSS及面向事件的语言 SIMSCRIPT最为流行。为了使读者明白如何用仿真语言来编程,下面介绍一下 GPSS语言及其使用。对某种仿真语言特别感兴趣的读者可进一步参阅有关文献。

面向进程的语言是基于进程建模的仿真语言;被仿真的系统用框图来描述;框图由相互连接的方框构成;这些方框表示进程的各种动作;连接方框的连线则表示动作的执行顺序。若离开一个方框的连线多于一条,则需要在方框上说明选择的条件,以实现程序中动作的选择。 GPSS语言共提供了 40多种功能块,相应有 40多个标准语句。因此对用户来说,只需要掌握这 40余种语句就能很方便地对系统建立仿真模型 .

Page 40: 高 等 学 校 规 划 教 材

下面通过一个简单的例子来说明如何建立 GPSS 语言的仿真模型。考虑一单台服务系统,顾客到达时间间隔服从均值为 20s的指数分布,服务时间为 [9, 25] 之间均匀分布的随机变量,仿真钟运行 480s结束。该系统的GPSS方框图 1.3.5所示,图中每个块均为 GPSS仿真程序的典型功能块。

GENERATE20 FN $ XP GENERATE 480

MARK TERMI NATE 1

QUEUE

SEI ZESRVR

DEPART WAI TQ

ADVANCE17, 8

RELEASESRVR

TABULATE

TERMI NATE

TI SYS

WATTQ

顾客到达

标志到达时间

产生程序事件

停止仿真

1队长加

占有服务台

离开队列

确定服务时间

释放服务台

统计在系统中的时间

离开系统

图 1.3.5 单台排队系统的 GPSS方框图

Page 41: 高 等 学 校 规 划 教 材

实现图 1.3.5所示方块图的 GPSS 源程序如下: 1 IMULATE 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 4 0.5, 0.69/0.6, 0.915/0.7, 1.2/0.75, 1.38.0.8, 1.6/0.84, 1.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 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 8 * 9 TISYS TABLE MP1, 0, 5,20 10 *MODEL SEGMENT 11 GENERRATE 20, FN$XP 12 MARK P1

Page 42: 高 等 学 校 规 划 教 材

13 QUEUE WAITQ 14 SEIZE SRVR 15 DEPART WAITQ 16 ADVANCE 17, 8 17 RELEASE SRVR 18 TABULATE TISYS 19 TERMINATE 20 * TIMING SEGMENT 21 GENERATE 480 22 TERMINATE 1 23 * CONTROL CARDS 24 START 1 25 END 上面程序中的每一行最前面的数字是语句标号。

Page 43: 高 等 学 校 规 划 教 材

1号语句标志 GPSS仿真程序开始;第 2号语句定义了一个随机变量函数 XP,该函数的取值是由第 3号到第 7 号语句中的 24对数据构成,由 1号随机数发生器取值对该函数取样,得到的随机变量是均值为 1s的指数随机变量。

从第 10号语句开始到第 19 号语句为模型段,每一句按顺序与图 1.3.5中的方块一一对应。例如,第 11句的功能就是产生均值为 20s的指数随机变量;第 16句表示为顾客服务的时间均值为 17s,区间半长为 8的均匀分布随机变量;第 19 句则是表示仿真程序到此结束。从第 21句到第 22句是仿真时间控制,从中可以看到,仿真钟推进 480个单位时产生一个程序来终止仿真,说明该模型的仿真钟时间单位为 1s。

GPSS程序处理器对上述语句进行逐行翻译,在翻译第24 句后即开始进行仿真。

虽然本例只引用了 GPSS功能块的一个子集,但却说明了它的建模基本框架。

Page 44: 高 等 学 校 规 划 教 材

系统仿真技术是分析﹑综合各类系统的一种有力的工具和手段。它目前已广泛地应用于几乎所有的科学技术领域。

本节仅从科学的角度出发,对接触最多﹑发展最快﹑比较重要的几个方面做一概括的介绍。

1.4 仿真技术的应用

Page 45: 高 等 学 校 规 划 教 材

1.4.1 系统仿真技术在系统分析﹑综合方面的应用

各技术领域控制系统的分析﹑设计以及系统测试﹑改造都应用系统仿真技术。在工程系统方面,例如,在设计开始阶段,利用仿真技术论证方案,进行经济技术比较,优选合理方案;在设计阶段,系统仿真技术可帮助设计人员优选系统合理结构,优化系统参数,以期获得系统最优品质和性能;在调试阶段,利用仿真技术分析系统响应与参数关系,指导调试工作,可以迅速完成调试任务;对已经运行的系统,利用仿真技术可以在不影响生产的条件下分析系统的工作状态,预防事故发生,寻求改进薄弱环节,以提高系统的性能和运行效率。

对设计任务重﹑工作量大的系统,可建立系统设计仿真器或系统辅助设计程序包,使设计人员节省大量的设计时间,提高工作效率。

Page 46: 高 等 学 校 规 划 教 材

在非工程系统方面对企业管理﹑经济分析市场预测﹑商

品销售等也都应用仿真技术。例如,用仿真技术可以建立商品生产和公司经营与市场预测模型,如图 1.4.1 所示。从图可见,根据市场信息,公司做出决策,工厂生产的产品投放市场,再对市场信息进行分析,如此组成经济预测﹑生产模型。其它如交通﹑能源﹑生态﹑环境等方面的大系统分析都应用仿真技术。例如,人口方面的分析也应用仿真预估今后人口发展的合理结构,制定人口政策。又如,研究区域动力模型,分析整个区域中人口增长﹑工业化速度﹑环境污染﹑粮食生产﹑社会福利﹑教育等因素的相互平行关系应当按什么样的比例发展较为合适的问题。

市场

工厂 公司

产品 信息

决策图 1.4.1 经济模型粗框图

Page 47: 高 等 学 校 规 划 教 材

1.4.2 系统仿真技术在仿真器方面的应用 系统仿真器( system simulator)是模仿真实系统的实验

研究装置,它包括计算机硬件﹑软件以及模仿对象的某些类似实物所组成的一个仿真系统。仿真器分为培训仿真器和设计仿真器。培训仿真器一般由运动系统﹑显示系统﹑仪表﹑操作系统以及计算机硬件﹑软件组成类似实物的模拟装置。例如,培训飞机驾驶员航线起落飞行仿真器就包括:座舱与其运动系统﹑视景系统﹑音响系统﹑计算机系统以及指挥台等,此外还有电源﹑液压源,以保证实验条件。

推广应用培训仿真器,无论在培训技术和经济效益方面都会带来明显效果。例如,飞机驾驶员培训仿真器可以实现异常技术训练,训练在事故状态飞行﹑排除故障的技能﹑允许飞行员错误操作,这样可以提高飞行技术。使用飞行仿真器可以减少危险,确保安全,节省大量航空汽油,减少环境污染。例如,波音 747仿真器按每天20 小时架次训练,一年可节省 30万吨汽油,可见经济效益十分明显。培训仿真器在航空﹑航天﹑航海﹑核能工业﹑电力系统﹑坦克﹑汽车等方面都有应用,并取得较显著的技术经济效益。

Page 48: 高 等 学 校 规 划 教 材

设计仿真器,一般包括计算机硬件﹑软件和由研究系统的应用软件以及大量设计公式和参数等所构成的设计程序包。例如,轧钢机多级计算机控制系统的设计,从方案选择到参数规定,甚至绘图等工作都可以在设计仿真器上由计算机完成,提高效率。此外,在电机﹑变压器或其它具有大量计算工作量而且规格众多的系列化产品设计方面,均可利用计算机辅助设计仿真器(或称设计程序包),以提高工作效率。

综上所述,系统仿真技术在仿真器方面的应用将会带来明显的技术和经济效益。

Page 49: 高 等 学 校 规 划 教 材

1.4.3 系统仿真技术在技术咨询和预测方面的应用

根据系统的数学模型,利用仿真技术输入相应数据,经过运算后即可输出结果,这种技术目前用在很多方面。例如,专家系统﹑技术咨询和预测﹑预报方面。

专家系统是一种计算机软件系统,事先将有关专家的知识﹑经验总结出来,形成规律后填入表格或框架,然后存入计算机,建立知识库,设计管理软件,根据输入的原始数据,按照规定的专家知识推理﹑判断,给用户提供咨询。由于这种软件是模拟专家思考﹑分析﹑判断的,实际上起到专家的作用,所以被称为专家系统。我国目前研究比较多的是中医诊断系统,它是将医疗经验丰富﹑诊脉医术准确的医生的一套知识和经验加以规律化后编出程序,存入计算机,在临床诊断时起到专家的作用。除医疗之外,如农业育种专家系统,它自动计算选择杂交的亲本,预测杂交后代的性状,给出生产杂交第二代﹑第三代的配种方案,起到咨询的作用。

Page 50: 高 等 学 校 规 划 教 材

预测技术在很多领域应用,例如,利用地震监测模型模拟根据监测数据预报地震情报;森林火警模型根据当地气温﹑风向﹑湿度等条件预报火警;人口模型预测今后人口结构。

用系统仿真技术对反应周期长,而且难以观察﹑实验或消耗巨额资金的自然环境﹑生态系统﹑人口结构﹑生理﹑育种﹑导弹﹑军事﹑国防等系统,可以在短期容易实现的模型上进行分析﹑实验后预报结果。这是仿真技术所具有的独特功能,所以在这方面的应用逐渐扩大,极有发展前途。此外,对于有些在实际物理世界不可能存在或难以实现的,但有必要研究的系统,仿真技术也扮演着极其重要的角色。

Page 51: 高 等 学 校 规 划 教 材

1-5仿真技术的现状与发展 系统仿真技术,从 50 年代以来随着计算机发展的过程,逐渐形成了一门新兴科学技术。

例如,仿真计算机经过模拟计算机﹑数字计算机﹑混和计算机﹑全数字并行处理计算机的演变过程,相继出现了模拟仿真﹑数字仿真﹑混和仿真﹑全数字并行处理仿真技术。仿真软件也由数值计算方法﹑仿真语言逐步扩大丰富。时至今日,仿真技术已经应用在各技术领域﹑各学科内容和各工程部门。若要比较全面地介绍仿真技术的现状和发展,那不是比较简单的叙述就可以说清楚的问题,本节只针对仿真技术中发展较快并引人注目的一些主要问题进行简单介绍。

Page 52: 高 等 学 校 规 划 教 材

1.5.1 仿真计算机的现状及发展 我国仿真技术的发展,早从 50 年代就开始,主要是在航空﹑国防单位,以模拟仿真技术为主。数字仿真技术还是从 70年代开始在一些科研机关﹑设计院(所)以及高等院校逐渐发展起来的。目前所使用的计算机主要都是从国外引进的一些大中型计算机,如 FLEX-256,M-150,ACOS-400等,此外,多数单位应用国产 100系列机和一些引进的各种类型的微型机。混合机方面多用国产的 TCMJ-1,HMJ-200, 以及 DJM300/DJS130,HAP-2A/DJS130等。全数字并行处理计算机 YH-F1 已研制成功。

国外仿真计算机已应用大型高速全数字并行处理计算机,以适应大型﹑实时﹑准确﹑快速的要求。例如, AD-10,AP-120,BMAP-300, 这些计算机具有极快的处理速度和较多的处理功能。混合机真正向混合多处理机系统方面发展。

从大型实时仿真系统的发展来看,仿真计算机是向全数字仿真计算机发展。因为数字计算机技术不断进步,微处理机迅速发展,并行处理技术日趋成熟,促使全数字并行处理机将代替混合计算机而占据仿真计算机的主流。

Page 53: 高 等 学 校 规 划 教 材

1.5.2 计算机软件的现状及发展 计算机仿真软件在我国多数是移植国外的仿真程序

包和仿真语言。如连续系统仿真语言 CSS,MIMIC,CSSL 以及 DARE-P 等,离散系统仿真语言 GPSS 及 GASPIV 等。但近年我国自行设计的软件逐渐增多,如SBASIC,SSL-H 一类解释功能扩充的语言, SDS-A连续系统仿真程序包,此外还有混合操作语言 HYBASIC 等。

在国外,仿真软件发展的较早,近年也比较活跃。例如,早期的连续系统语言有 MIDAS,MIMIC,CSMP,CSSL,CSSL ,DARE-P,Ⅳ 以及近年发表的 ACSL 等;离散系统仿真语言有 GPSS,SIMSCRIPT ,GPSS Ⅲ Ⅳ等;在混合机软件方面有 ECSSL,HYSHARE 等;

Page 54: 高 等 学 校 规 划 教 材

但是,上述计算机仿真软件均存在一下不足之处:(1) 要求用户的专家知识较高,尤其对一些大型的仿真系统要求仿真工程师应具有良好的训练。

(2) 仿真模型的建立和实现过程复杂,难度大。据统计,从用户提出问题,到建立仿真模型,并将它放到计算机上进行实验所需要的时间大约要几周或几个月,建模时间过长会导致新思想和新方案的价值下降。

(3) 计算机运行时间较长,这不仅影响到得出结论的时间较长,而且也增加了仿真的费用,这点不足主要取决于计算机硬件。

(4) 仿真运行是开环的。仿真只能给出已知系统的响应,无法对结果进行分析,更无法将仿真结果反馈到建模阶段。

(5) 通讯能力差。这一点包括人与计算机的对话,计算机与外设之间的通讯,计算机与计算机之间的并网,以及仿真中的动画环境。

Page 55: 高 等 学 校 规 划 教 材

当前仿真技术研究的主要方向也是针对以上 5个不足之处进行的。例如,研究结构化建模的环境与工具;建立模型库及模型开发的专家系统,将专家知识嵌入到仿真软件中去,为的是能减少建模时间;降低对用户过高的专家知识要求;开发一体化仿真软件系统,以便能实现闭环仿真技术,即将仿真实验结果反馈到建模阶段;将计算机多媒体技术﹑虚拟技术和动画技术引入仿真软件,以便增加仿真机与领域工程师之间的交流,即发展计算机仿真的“全息”概念。

Page 56: 高 等 学 校 规 划 教 材

1.5.3 仿真器的现状与开发 仿真器的开发利用是系统仿真技术的直接应用结果,它带来明显的技术﹑经济效益。我国目前主要在航空﹑航天﹑航海等方面得到应用。例如,从国外引进的波音 707﹑三叉戟飞机培训仿真器;我国自行研制的航线起落飞行仿真器; CCF-2S船舶操纵培训仿真器等;在设计仿真器方面控制多变量反馈系统设计程序包类的设计仿真器。

由于应用各类仿真器除带来经济效果外,在有些领域中还可以实现特殊功效,所以今后应大力发展仿真器的研制与应用,这也是仿真技术直接应用的一个方面。

Page 57: 高 等 学 校 规 划 教 材

这一章介绍了系统仿真和它包括的主要内容,以及系统仿真技术发展状况,使读者可从横向和纵向了解到系统仿真的内涵。通过本章的学习,可对系统仿真技术的概念﹑内容和应用﹑发展前景等方面有了初步的认识。从中可以看出,系统仿真技术涉及面广,内容多,应用范围也相当广泛。例如,从工程系统到非工程系统,从线性系统到非线性系统,从连续系统到离散系统;从系统模型到数值计算方法,从模拟计算机到数字计算机,从混合计算机到全数字并行处理计算机;从硬件到软件,从理论到实践,均涉及到。但系统仿真的重要目的之一就是实现一个工程系统或非工程系统的最佳设计和最佳实现。

通过对本章内容的学习,将为更深一步学习以后的各章节,以及在仿真技术领域做更进一步的研究建立一个基础。

本章小结

Page 58: 高 等 学 校 规 划 教 材

习 题 1 - 1 仿真遵循的基本原则是什么? 1 - 2 试举例说明连续系统数字仿真的步骤。 1 - 3 计算机仿真按其使用的设备和面向的

对 象来分,有哪几类? 1 - 4 数字仿真程序应具有哪些基本功能? 1 - 5 举出几个你所遇到的仿真实例。