文档介绍:第四章系统仿真
基本概念
q2→
q1→
煤仓
图4-1 采区煤仓系统示意图
系统仿真也叫系统模拟,就是通过建立和运行系统的计算机仿真模型,来模仿实际系统的运行状态及其随时间变化的规律,以实现在计算机上对实际系统的结构和行为进行动态实验的全过程。通过对仿真过程运行过程的观察和统计,得到实际系统的仿真输出参数和基本特性,可以此来估计和推断实际系统的真实参数和真实性能,以便掌握实际系统运动变化的规律,找到最优的或满意的解决实际问题的办法。
特别是比较复杂的系统很难建立数学表达式时,
往往可以通过计算机仿真技术来进行研究。例如,
在图4-1中,已知采区来煤量q1是一个随机变量,
根据统计结果,它服从正态分布,已知其均值
μ=/ min,其标准差σ=。大巷
是胶带输送机,其运输量是常数:q2=。
求8h后,采区最大煤仓容量。象这种问题,就
可通过计算机仿真方法来寻求解答。
下面再举一例进一步说明计算机仿真的基本概念。早在18世纪就有人作了随机模拟实验,投掷硬币4040次,出现正面2043次,从而求得出现正面的频率为P=2043/4040=。后来有人投了24000次,出现正面教育2012次,,。
上述投掷硬币实验是人工作的,很费时间和精力,实际上完全可由计算机来进行,这就要建立一个计算机能够运算的模拟模型。建立这个模型的关键是用随机数去模拟投掷硬币的实验。
I<24000?
R>
实验开始 I=I+1
产生随机数R
记录出现正面次数
N=N+1
计算并输出结果N,P
模拟结束
初始状态I=0,N=0
Y
N
Y
N
图4-2 投掷硬币实验模拟框图
所谓随机数就是一组随机出现的数列,通常
用的是[0,1]区间的随机数。这时要求[0,1]区
间的随机数必须具备下列性质:一是它的均匀性,
即这些随机数落在[0,1]区间内任一位置的概率
是相同的;另一个是它的随机性,即这些数在
[0,1]区间内任一位置出现与否是随机的、独立
的。如以R表示随机数,则出现0≤R≤
≤R≤1的概率相等,,这样就可以
模拟硬币出现的情况。如以随机数R≤
出现正面,以R≥,则模拟模
型就建立起来了。
至于用什么办法获得[0,1]区间的均匀随机数,
后面将专门论述。设I是投掷次数,N为正面出现
次数,R为随机数,P是正面出现频率,下面画出
模拟模型框图,如图4-2所示。
根据研究的系统对象的性质,系统仿真可分为
连续系统仿真和离散事件系统仿真。连续系统是指系统状态随时间连续变化的系统,系统行为通常是一些连续变化的过程。连续系统模型通常是用一组方程式描述,如微分方程、差分方程等。差分方程形式上是时间离散的,但变量的变化过程本质上是时间连续的,如人口的变化过程、导弹运动、化工过程等。因此,连续系统仿真的主要任务就是如何求解系统运动方程组。离散时间系统中,表征系统性能的状态只能在随机的时间点上发生跃变,且这种变化是由随机事件驱动的,在两个时间点之间,系统状态不发生任何变化。
蒙特卡罗仿真
蒙特卡罗(Monte-Carlo)仿真是一种特殊的数值计算仿真方法,它是充分利用计算机计算能力的随机实验方法。下面通过一个单变量积分问题作简要介绍。
设是区间(a,b)内的连续函数,且已知在该区间内,要求计算
的值。当的形式比较复杂且是非可积函数时,用解析法往往十分困难。但却可以构成一个十分简单的离散、随机性仿真模型。
拒绝
接受
d
x
x
b
xj
xi
a
0
c
e
f(xi)
f(xj)
图4-3 求定积分的仿真模型
因,令c为之上限,则函数所表示的曲线将包含在边长为c和(b-a)的矩形之内,如图4-3所示。
若在(a,b)和(0,c)区间中分别产生两
个均匀分布的随机数xi和yi,由此构成的坐标点
Pi(xi,yi)必定在矩形abde内。为了计算该积分
的值,可规定以下准则:
若yi≤f(xi),则接受该点并作计数统计;
若yi>f(xi),则舍弃该点不作计数统计。
设共产生N个随机仿真点,如果共接受个
m点,(即恰在曲线上或在曲线以下的点),当N充分大时有
曲线下面积(4-1)
由上式可见,通过产生随机数的方法来统计落在曲线下的坐标点数目,即可计算出定积分的值,计算的精度将随N的增大而提高。这就是典型的蒙特卡罗方法。
将蒙特卡罗方法划分为一种仿真方法,主要是因为许多仿真问题都包含了随机数应用的缘故。但系统仿真和蒙特卡罗方法是两种数值计算技术