1.1 计算机仿真的基本概念
1.1.1 系统
所谓“系统”(System),是指相互联系、相互制约、相互作用的一个实体集合,是具有一定整体功能和综合行为的统一体。从广义的概念上看,可以称之为系统的对象是很广的,包含的种类也很多。例如,地球上的自然气候、江湖河海、山川大地、各种动植物构成了一个相互依存、互相制约而又不断运动并保持平衡的有机整体,这就是自然系统。又如,如图1.1所示的温度控制系统,由定温器、控制器、功率放大器、电加热炉、温度传感器和电压放大元件组成,这是工业生产过程中常见的过程控制系统。
图1.1 温度控制系统
从以上两个简单例子可以看出,前一个系统是自然系统,它是人类在长期的生产劳动和社会实践中逐渐认识世界而形成的,这种系统称为非工程系统;图1.1所示的系统是人们根据某种需要或者实现某种预定功能而构成的系统,这种系统称为工程系统。
1.系统是实体的集合
系统由两个或两个以上的部分组成,这些构成系统的组成部分称为实体,它们都是存在于系统中的具有确定意义的物体。一个系统中的各个实体具有一定的相对独立性,并且相互联系构成一个整体。例如,图1.1所示的温度控制系统就是由一些独立部件按一定顺序构成的系统。又如,如图1.2所示的工厂生产系统是由生产管理部门、采购部门、制造车间、装配车间和储运部门组成的。
2.子系统
系统的含义取决于具体的研究目的。一项研究的实体集合,可能只是另一项研究的一个子集,该子集是整体系统的一个组成部分,称为子系统。事实上,所有系统都是整体系统的一个子系统。一个系统被称为系统还是子系统取决于所研究问题的范围。例如,在图1.2所示的工厂生产系统中,如果对整个企业的生产管理流程感兴趣,制造车间就被看成一个子系统;如果要对零件生产过程进行研究,则制造车间可以被看成一个系统,它由机床、输送小车等组成。
图1.2 工厂生产系统
3.组成系统的实体相互关联
一个系统是由它的各个实体或者子系统通过相互联系、相互制约和相互作用组成的。这种联系、制约和作用表现为一个子系统从其他子系统接收输入原材料,经加工处理后,产生输出材料。这里所谓的“材料”可能是物质的,也可能是非物质的(如信息)。而该子系统的输出又可能是另一个子系统或实体的输入。系统的关联性表现为每个实体之间的信息流动、信息反馈作用及各实体之间存在着的一定逻辑关系和因果关系。
4.系统的环境
系统的环境是指系统与外部的边界。前面谈到的一个子系统的输入是另一个子系统的输出,它的输出则又是其他子系统的输入,这就成为一个无限扩张的系统(即无边界)。然而,由于通常研究的对象是确定的,对于有些不在研究范围内、但对系统有影响的量则认为是外部的。这就必须定义一个环境。任何一个系统都存在于一定的物质环境之中,系统要受到环境变化的影响。研究一个系统必须确定它与所处环境及其边界的关系。例如,温度控制系统中的温度变化、工厂生产系统中的用户订货,都可以看成来自于环境外系统的影响(即外部输入)。
5.描述系统的常用术语
通常用下列术语来描述所要研究的系统。
实体 存在于系统中的具有确定意义的物体,即组成系统的具体对象。例如,图1.1所示温度控制系统中的控制器、功率放大器及电加热炉;图1.2所示工厂生产系统中的制造车间、装配车间等都是实体。
属性 实体所具有的每一项有效特征。例如,电加热炉的温度、功率放大器的功率、电压范围、电流范围等。
活动 系统内部发生的变化过程称为内部活动,系统外部发生的对系统具有影响的任何过程都称为外部活动。例如,电加热炉温度的变化、制造车间的零件加工过程等均为内部活动;电加热炉的输入电压的变化、用户订货的到达等均为外部活动。
事件 使系统状态发生变化的行为。例如,在一个由购票顾客和售票员构成的售票系统中,可以定义“顾客到达”为一类事件,而这类事件的发生引起了系统的状态——售票员的状态从“闲”变成“忙”,或者引起系统的另一个状态——顾客的排队人数发生变化。
6.系统的分类
系统的分类有许多种,这里仅介绍计算机仿真中常用的一种分类。
(1)连续系统
系统的状态是随时间连续变化的,这类系统称为连续时间系统(连续系统)。在温度控制系统中,温度及传感器输出量等都是时间的连续函数,因而是连续系统。
(2)离散系统
系统的状态只能为有限个值的系统,或系统的状态只在某些时刻才能反映的系统,称为离散系统。例如,交通信号灯系统、售票系统及电话交换机系统等均属于离散系统。由于交通信号灯的“亮”与“熄”、售票系统中顾客的到达与离去、电话交换机系统中电话接通与断开等变化都发生在一组离散的时刻上,因而它们都是离散系统。需要指出的是,在不同的研究目的下,采用的描述方法不同,离散系统又可以分为离散时间系统和离散事件系统。在计算机控制系统中,计算机的输入量、输出量都是在离散瞬间产生的数字量,而且离散时刻点是预先确知的,因而它们之间的关系一般可以用差分方程或离散状态方程来描述,这类系统称为离散时间系统。售票系统则属于另外一类离散系统,系统的状态改变是由在离散瞬间发生的事件所驱动的,而且离散瞬间点是预先未知的。这类系统称为离散事件驱动系统,简称为离散事件系统。
(3)采样数据系统
系统中一部分具有连续系统的特征,另一部分具有离散时间系统的特征,这类系统称为采样数据系统,也称为连续-离散时间混合系统。计算机控制系统就是典型的采样数据系统,计算机控制器的输入与输出信号是发生在特定时间点上的数字量,而被控对象的输入与输出一般都是连续变化的物理量。
(4)离散-连续系统
具有离散事件系统和连续系统两种特征的系统称为离散事件-连续混合系统,简称为离散-连续系统。例如,卸油码头系统就属于离散-连续系统。假设一艘油轮满载原油到达只有一个舶位的卸油码头,给码头的储油罐补充原油,并通过管道输送到炼油厂进行炼制。由于只有一个舶位,如果码头上已有油轮工作时,新到的油轮就得排队等候。当该油轮开始工作后,它就按照一定的卸油速率将原油输送到炼油厂。在这个系统中,油轮到达、排队等候,卸完油后离开码头均以船只为单位,是离散事件,具有离散事件系统特征;而卸油过程、储油罐中的油量变化具有连续系统特征。
值得一提的是,在实际中完全连续或者完全离散的系统是很少的,把一个系统描述成连续的、离散的或混合的,是根据研究的目的而确定的。对于大多数系统而言,系统在某种变化类型占优势时,通常将它归入相应的系统类型。
1.1.2 模型
所谓“模型”(Model),就是根据研究的目的把实际系统的本质部分抽象、简化后的一种描述形式,是对系统的一种客观反映。它用来描述系统最基本的结构、形态及信息传递的规律,是对系统的一种客观写照或缩影。
1.模型必须对应于系统的某些特征
如图1.3所示,模型通常是实际系统的一种简化,实际系统的输入和输出都应在模型中表示出来。因此,模型的输入在特征上应当与实际系统一致(这是由研究目的决定的),而它们的输出则不一定完全一致(因为模型仅仅是系统的一种抽象和简化)。当系统和模型都可以被认为是输入与输出之间的变换函数时,模型的输出就可以用来预测和推断它所描述系统的输出。显然,这就要求描述二者特征的参数有一定的对应性。
图1.3 模型的概念
2.模型的分类
从普遍的意义上看,无论工程系统还是非工程系统,都可以建立起一定形式的模型。按照模型的表达形式,可以把模型分为物理模型和数学模型两大类。
(1)物理模型
物理模型是根据相似性原理把实际系统加以缩小或放大的复制品。它保持了结构、形态及工作原理或规律与实际系统的相似性,只是在几何尺寸、物理量的大小比例上与实际系统不同,因而表现的物理本质相同。用缩小了尺寸的飞机及风洞构成飞机试验模型、生产过程中研制的与原系统性能完全一致的样机模型等均属于物理模型。
(2)数学模型
数学模型是用数学形式对实际系统的行为、特征等进行描述的。它保持了模型与实际系统之间信息传递规律的相似性。
根据数学形式的不同,数学模型又可分为静态模型和动态模型两类。无论静态模型还是动态模型,都应当具有抽象性,在计算机上运行的模型还要求具有递归性。
静态模型的一般形式是代数方程、逻辑关系表达式。例如,控制系统的稳态解公式、电阻器上电流与输出电压之间的关系、继电器的逻辑关系表达式等均属于静态模型。
动态模型可以分为连续时间模型和离散模型两种。
① 连续时间模型
连续时间模型的基本形式是微分方程。采用常微分方程、状态方程和传递函数等描述系统的模型称为集中参数模型。常见的自动控制系统模型属于集中参数模型。
采用偏微分方程描述系统的模型称为分布参数模型。例如,描述导热柱的热传递过程的偏微分方程属于典型的分布参数模型。
② 离散模型
采用差分方程、离散状态方程和脉冲传递函数等描述系统的模型称为离散时间模型。在过程控制系统中,被描述系统的特性实质上是连续的,只是在离散时间点上来研究系统的行为和特征,因此,模型才表现为离散时间模型。各种数字式控制器的模型均属于这一类模型。
采用概率分布和排队论描述系统的模型称为离散事件模型。这类系统的输入是随机发生的,一般要用概率模型来描述。库存系统、交通运输系统、排队服务系统等均可以抽象成这一类模型。
按照描述形式的差别,数学模型的分类见表1.1。
表1.1 数学模型分类
3.关于数学模型的几点说明
① 一般说来,实际系统的类型与描述它的数学模型的类型是一致的,即连续系统对应于连续时间模型,离散系统对应着离散模型。但对于一个具体的实际问题而言,除了考虑系统本身的特征之外,还必须根据所研究问题的目的、方法及条件来确定。例如,对于连续系统,当不可能采集到随时间连续变化的数据,而只能采集到一些离散时间点上的数据,或者采用数字计算机进行分析时,常常采用离散时间模型来描述。又如,对于公路交通系统,当考虑车辆到达分布时,可以用离散事件模型来描述车辆的生成;而在研究车辆运行状态时,可以用微分方程来描述车辆自由行驶和跟驰的动态行为。
② 模型不仅是对系统的描述,也是对系统的一种抽象和简化,模型不会包含系统所有的细节。对于同一系统,由于研究问题的目的不同,可能有若干个不同形式的模型。例如,对于同一个控制系统,如果仅仅需要考虑系统的稳态性能,则只需要用代数方程来描述;而如果还需要讨论系统的动态性能,则必须用运动方程来描述。
③ 由于数学模型描述的是系统内部变量之间的信息传递关系,因而即使是两个不同的物理系统,只要它们的信息传递关系相似,就可以用同一个数学模型描述。即不同的物理系统可能对应于同一个数学模型。例如,考虑如图1.4所示的RLC电路系统,描述其输入、输出电压关系的数学模型为
再来看图1.5所示的质量-弹簧-阻尼器系统,外力r(t)是系统的输入量,质量的位移y(t)是系统的输出量,描述其输入、输出关系的数学模型(在重力平衡点附近)为
图1.4 RLC电路系统
图1.5 质量-弹簧-阻尼器系统
显然,图1.4和图1.5所示的是两个类型完全不同的物理系统。然而,如果将分别描述它们的数学模型式(1.1)和式(1.2)中变量及系数的物理意义去除,只考虑输入量和输出量之间的数学关系,则两个系统的模型都是二阶常系数微分方程,是同一类数学模型。不仅如此,如果式(1.1)和式(1.2)中对应系数的数值相等,则施加在式(1.1)一定数量的输入得到的输出量变化规律与施加在式(1.2)上同样数量的输入得到的输出量变化规律仅仅相差一个常数因子C。这就是说,采用式(1.1)研究RLC电路系统得出的结论可以毫无困难地推广应用到式(1.2)描述的机械系统上,反之亦然。之所以会有这样的结果,是因为两个系统的输入、输出之间的信息传递规律相似。
④ 混合系统在实际中是常见的,需要用不同类型的数学模型共同描述。例如,计算机控制系统中,计算机所构成的控制器的输入、输出关系需要用离散时间模型描述,而被控对象往往需要用连续时间模型描述,因而整个系统的描述是采样数据模型;卸油码头系统中的油轮到达码头、排队等候及卸完油后离开码头等特性需要用离散事件模型描述,而储油罐中的油量变化规律则需要用连续时间模型描述,故整个系统的描述是离散-连续混合模型。
1.1.3 仿真
按照目前较为流行的定义,所谓“仿真”(Simulation)就是建立系统的模型,并在模型上对所研究的实际或设想的系统进行试验(或实验)的过程。也就是说,仿真不是直接在系统上进行试验,而是利用模型对系统进行间接的试验研究的过程,即仿真是一种试验——广义试验。
1.为什么要进行仿真
为什么不直接在实际系统上进行试验,而要在模型上做试验呢?主要有以下几个方面的原因。
① 系统还处于设计阶段,并没有真正建立起来,因而不可能在实际系统上进行试验。
② 在实际系统上做试验代价太高,甚至会破坏系统的运行。例如,在一个化工系统中随意改变一下系统参数,可能会导致一炉成品的报废;又如,在经济活动中,随意把一个决策付之行动,可能会引起经济活动的混乱。
③ 当人是所研究系统的一个组成部分时,由于他知道自己是试验的一部分,行为往往会与平时有所不同,从而会影响试验的效果。这时最好也建立一个人的模型,用仿真的方法进行试验,汽车碰撞试验中的仿真人模型就是一个很好的例子。
④ 在实际系统中做多次试验时,很难保证每次的操作条件都相同,因而无法对试验结果的优劣做出正确的判断。例如,在进行海浪对堤坝的冲击力的实际试验时,由于每次试验时风力强弱不同,因而每次试验结果有可能不一样。
⑤ 试验时间太长或太短或试验费用太大或试验有危险。例如,复杂化工系统的反应过程往往需要很长时间才能完成,进行一次实际系统的试验可能需要若干天,而采用仿真的方法可以加快试验进程。又如,原子弹爆炸试验所需费用甚大,有相当大的危险性,并且过程时间极短,常常难以细致观察其爆炸过程;采用仿真方法则可以在毫无危险的情况下,详细了解爆炸过程每一时间点上的信息,并且耗费较少。
⑥ 无法复原。例如,改建一个轧钢车间,如果想检查改建后轧制钢材的效率和质量,不能先改建起来试试看,因为一旦改建后就不可能再回到原来的状态。
2.仿真的分类
根据仿真中采用的模型不同,可以将仿真分为物理仿真、数学仿真和数学-物理混合仿真3大类。
(1)物理仿真
如果仿真中采用的模型是物理模型,则称为物理仿真。它是按照实际系统的物理性质构造的一个新的系统,以物理过程相似、几何尺寸相似及环境条件相似为基础的仿真,通常也称为实物仿真。在风洞中对飞机模型进行试验研究就是物理仿真。
物理仿真的主要优点是能最大程度地反映系统的物理本质,具有直观性强及形象化的特点,能将实际系统的各种特性在模型中全面反映出来,而某些复杂过程往往是难以用简单的数学方程描述的。这种仿真的主要缺点是建造物理模型所需的费用高、周期长、技术复杂、修改模型的结构及参数困难,试验的限制条件多,容易受到环境条件的干扰。
(2)数学仿真
如果仿真中采用的模型是数学方程,则称为数学仿真。现在数学仿真的基本工具是数字计算机,因此也称为计算机仿真或数字仿真。它根据系统的数学模型,建立在计算机上可以运行的模型(仿真模型),达到对原系统进行研究的目的。
数学仿真的优点是经济、方便、通用性强和修改模型方便;而缺点正是物理仿真的优点所在。
(3)数学-物理混合仿真
在对某些系统的研究中,把数学模型与物理模型(或实物)连接在一起进行仿真试验,称为数学-物理混合仿真或半实物仿真。它是将系统的一部分(通常是易于用数学方程描述的部分)建立数学模型,并放到计算机上运行,而把系统的另一部分(通常是难以建立数学模型的部分)构造其物理模型(或直接采用实物),然后把它们连接成系统进行试验。
显然,数学-物理混合仿真具有数学仿真和物理仿真的共同优点。
3.仿真遵循的基本原理
仿真是模仿一个真实系统并进行试验的过程。为了使仿真的结果能被实际证实是真实可靠的,即仿真结果是可信的,仿真必须遵循的基本原则是相似原理。所谓“相似”,是指各类事物之间某些共性的客观存在。不同类型的仿真正是依据不同的相似性而进行的。比如,物理仿真依据的几何相似、环境相似等,数学仿真依据的是信息传递规律相似或性能相似,而数学-物理混合仿真则综合运用了以上3个相似原则。
4.系统、模型与仿真的关系
根据系统、模型及仿真的定义,可知系统是被研究的对象,模型是对系统的正确描述,而仿真则是研究系统的一种工具或手段。它们三者之间是紧密相关的。