- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实际的一些带随机因素的复杂系统,用分析 方法建模常需要作许多简化假设,使模型与实 际问题可能相差甚远,导致解答根本应用。这 时,计算机模拟几乎成唯一选择。
静态模拟和动态模拟
静态模拟(static simulation):通过模拟方法 只要求求得问题的结果的模拟方法。
典型实例是用蒙特卡罗(Monte Carlo)方法 求数值积分的值。
没理由假设)它在何处取值的概率大,在何处取值的概
率小,就只好用 Ua,b 来模拟。
4.rand (m, n) 生成 mn 阶的0,1上服从均匀 分布的随机数矩阵;rand 生成在0,1上服从均匀
分布Байду номын сангаас随机数。
5. normrnd ,, m, n产生 m n 阶的服从均值
、方差 的正态分布的随机数矩阵;
优点:直观。 缺点:花费较大、周期较长,在模型上改变 系统结构和系数都较困难。且许多系统无法进 行物理模拟,如社会经济系统、生态系统等。
数学模拟-计算机模拟
在一定的假设条件下,运用数学运算模拟系 统的运行,称为数学模拟。现代数学模拟都在 计算机上进行,故也称计算机模拟。
优点:计算机模拟可反复进行,改变系统的 结构和系数都比较容易。
动态模拟(dynamic simulation):通过模拟方 法研究系统的状态随时间连续变化的情形。
动态模拟又可分为连续系统模拟和离散事件 系统模拟。
连续系统动态模拟:研究系统的状态随时间 连续变化的情形,其模型一般是微分方程模 型。建模时首先确定系统的连续状态变量,然 后将它在时间上进行离散化处理, 并由此模拟 系统的运行状态。
用蒙特卡洛方法计算二重积分
计算二重积分 I D f x, ydxdy ,f x, y 0 ,
x, y D 。它的几何意义是以 f x, y 为曲顶、D
为底的曲顶柱体V 的体积。
⑴假设 V 包含在体积已知的立体 内。 ⑵在 内产生一个服从均匀分布的随机数
,则 P落在V内 V的体积/的体积。
计算机数学模拟
(一)模拟(Simulation)概念
1. 模拟:利用物理的、数学的模型来类比、 模仿现实系统及其演变过程,以寻求过程规律 的一种方法。
2. 思路:建立一个包含所研究系统的主要特 点试验模型。通过对这个试验模型的运行,获 得所要研究系统的必要信息。
物理模拟
形式:对实际系统及其过程用功能相似的实 物系统去模仿。例如,军事演习、船艇实验、 沙盘作业等。
normrnd , 产生服从均值 、方差 的正
态分布的随机数。
正态分布 N , 2 的密度函数 f x
1
x2
e 。 2 2
2
当研究对象视为大量相互独立的随机变量之和,且其
中每一种变量对总和的影响都很小时,可认为该对象服
从正态分布。
例如,机械加工得到的零件尺寸的偏差、射击命中点
Nv = sum(v1&v2); I = Nv/N*4
执行后得到 I 2.6681。 N 值越大越精确。
(三)生成随机数的函数
在 Matlab 中可产生满足各种分布的随机数: 1.unidrnd(N,m,n) 产生服从 1,2,…,N 的等概 率的离散均匀分布的 mn 阶的随机数矩阵; unidrnd(N) 产生相应的随机数。
的体积为 221 4 。
创建p_jifen.m如下:
clear; N = 1000000;
x = unifrnd(-1,1,N,1); y = unifrnd(-1,1,N,1);
MATLAB 程序 p_jifen.m
z = rand(N,1);
v1 = (x.^2+y.^2)<1; v2 = (x.^2+z.^2)<1;
⑶产生在 内的 N 个服从均匀分布的随机 数,若 Nc 个落在 V 内,则 I 的体积 NV / N 。
算例 I
1 x2 dxdy
x2 y2 1
曲顶柱体V : x2 y2 1, x2 z2 1, z 0 。
包含V 的立方体 : x 1, y 1 , 0 z 1 。
离散事件系统模拟:离散事件系统模拟讨论 的是系统状态只在一些离散时间点上,由于随 机事件驱动而发生变化,其模型一般用流程图 或网络来表示。
(二)蒙特卡洛方法
蒙特卡洛(Monte Carlo)方法是计算机模拟 的基础。它得名于赌城——摩纳哥的蒙特卡洛。
基本思路: ⑴建立一个概率模型,使所求问题的解正 好是该模型的参数或特征量。 ⑵通过模拟一统计试验,统计某事件发生 的比率,当试验次数很大时比率就近似事件发 生的概率。 ⑶利用所建概率模型,求要估计的参数。
0,
x 0.
则称 X 服从参数为 的指数分布。
参数为 的指数分布的期望值为 1 。
排队服务系统中,顾客到达率为常数时的到达间隔、 故障率为常数时零件的寿命都服从指数分布。指数分布 在排队论、可靠性分析中有广泛应用。
它的概率分布为 P k 1 N , k 0,1,2,..., N 。
2.binornd (k, p, m, n) 生成参数为 k,p 的 mn 阶的二项分布随机数矩阵;binornd (k, p)生成 k,p 的相应的随机数。
它的概率分布为 P 1 p, P 1 1 p 。
P k Cnk pk 1 p nk , k 0,1,..., n 。
3.unifrnd(a,b,m, n) 产生 mn 阶在a,b上服
从均匀分布 Ua,b 的随机数矩阵;unifrnd(a,b)
产生在a,b上服从均匀分布 Ua,b 的随机数。
当只知道一个随机变量取值在 a,b内,但不知道(也
与目标的偏差、各种测量误差、人的身高、体重等,都
可近似看成服从正态分布。
6. exprnd , m, n 产生 m n 阶期望值为 的
指数分布的随机数矩阵;exprnd 产生期望值
为 的指数分布的随机数。
若连续型随机变量 X 的概率密度函数为
f
x
ex ,
x 0, 其中 0 为常数,