您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 随机性模型与模拟方法 数学建模
随机性模型与模拟方法随机变量蒙特卡罗方法随机数的生成模拟一、随机变量何谓随机变量?随机变量是一个其值不可预测的变量。虽然一个随机变量在个别试验中其结果不确定,但在大量重复试验中其结果是具有统计规律的。正是随机变量的这种规律性使我们可以利用它来建模。例如我们可以利用下述的数据:得出一个模型。时间t(秒)0123456789变量X1022120102是一个离散的随机变量并取值于0,1和2。我们不可能给出与的确定的关系式,但是可以通过数的不同值出现次数来描述这随机型的规律列表如下:这个表给出了随机变量的变化规律,频率告诉某个特定的事件发生的频繁程度。如果我们需要构造一个含有随机变量的模型,可以假设这个规律总是成立的,模型的假设可以基于这几个数据之上。实际操作时可以把频率分布当作概率函数来处理,但应注意概率是频率的极限值,这两者是有差异的。在处理一个简单的理论模型时,对概率函数X012频数334频率0.30.30.4tXXXX必须作出合适的选择。例如,假设在上述问题中的随机变量取三个值时等于可能的,这样其概率函数为这个例子说明在处理随机变量的模型时有以下两种选择:(1)使用一个理论模型。这在任何一本概率统计的书上都可以找到一些标准的理论模型如二项分布等。每一个都基于一定的假设之下成立的,所以在选用时要特别注意其假设条件。(2)使用基于实际数据的频率表,并不去套用不准理论模型。Px012X131313使用前者的好处在于能精确地叙述变量的概率,在处理问题时可以充分发挥数理统计的作用。但这一好处把所求模式制约在了处理简单情形。随着复杂性的增加,数学就变的太难。使用后者的好处在于模型时基于观测到的数据而不是基于假设之上。增加复杂性并不成为一大障碍,但我们不再能利用数理统计而得求助于模拟以及模型的统计结果。在建立随机性模型时,首先要注意,将要处理的是离散还是连续的随机变量。1、离散随机变量离散随机变量的理论模型是由概率函数来刻画的。这个式子说明随机变量取值时的概率。对于离散型的随机变量有下面三种重要的分布pxPXxXx(0-1)分布设随机变量只可能取0、1两个值,它的分布规律是则称服从(0-1)分布。对于一个随机实验,如果它的样本空间只包含两个元素,即,我们总能在上定义一个服从(0-1)分布的随机变量来描述这个随机实验的结果。例如,对新生儿的性别进行登记,检查产品的质量是否合格等都可以用(0-1)分布的随机变量来描述。X1(1),0,1(01)kkPXkppkp12,SeeSX120()1eeXXeee当当(2)二项分布设实验只有两个可能的结果,将独立地重复地进行次,则称这一串重复的独立实验为重贝努利实验。它是一重和重要的数学模型,有着广泛的应用。若用表示重贝努利实验中事件发生的次数,是一个随机变量,它服从如下的二项分布特别,当时二项分布就是(0-1)分布。(1),0,1,2,...,nknkkPxkppkn1nEEnXnAX(3)泊松分布设随机变量所有可能的取值为而取各个值的概率为其中,是常数,则称服从参数为的泊松分布。可以证明当很小时,以为参数的二项分布,当时趋于以为参数的泊松分布,其中0,1,2,...,,!kePxkk0,1,2,...,kn0nnpXpX,np2、连续的随机变量理论模型的连续型随机变量可以由概率密度函数来描述,对所有的存在,且,随机变量落在区间的概率可由来给出,在连续型随机变量中下述两种是重要的。()()pdffxx()0fx12(,]xx21()xxfxdx()1fxdx(1)均匀分布设连续型随机变量具有概率密度则称在区间(a,b)上服从均匀分布。在区间(a,b)上服从均匀分布的随机变量,具有下述意义的等可能性,即它落在区间(a,b)中任意等长度的子区间内的可能性是相同的,或者说它落在子区间内的概率只依赖于子区间的长度而与子区间的位置无关。(2)正态分布设连续型随机变量的概率密度为其中为常数,则称服从参数为的1,()0,axbfxba其他X2221(),2xfxex,0,XXXX正态分布。连续型随机变量的值如同离散的一样可以用频率表给出,但不同的是离散的随机变量每个频率对应于随机变量的一个值,而对于随机变量每一个频率对应于随机变量的一个取值范围。二、蒙特卡罗方法蒙特卡罗方法是计算模拟的基础,其名字来源于世界著名的赌城——摩纳哥的蒙特卡罗。其思想来源于著名的蒲丰投针问题。1777年法国科学家蒲丰提出了下述著名问题:平面上画有等距离的一些平行线,取一根长度为的针,随机地向有平行线的平面上掷去,求针与平行线相交的概率。我们用几何概型来解决这一问题。设M为针落下后的中点,表示中点M到最近一条平行线的距离,表示针于平行线的交角,如图2.18所示。那么基本时间区域x0aa0ll,|0,02axx图2.18asin2lx2aoxMx它为平面上的一个矩形,其面积为。为使针与平行线(与最后的一条平行线)相交,其充要条件是的面积为,这样针与平行线相交的概率为设一共投掷次(是一个事先选好的相当大的自然数),观察到针和直线相交的次数为。()2aS020axA01()sin2SAldl()()SApSnmAn/mn从上式我们看到,当比值不变时,值始终不变。取为的近似值,我们可以算出的近似值。可以想象当投掷次数越来越多时计算的结果就越来越准确。下表时这些实验的有关资料(此处把折算为1):/la实验者年份针长投掷次数相交次数的实验值pulf18500.8500025323.1596Smith18550.632041218.53.1554DeMorggenC18601.0600382.53.137Fox18840.7510304893.1595Lazzerini19010.83340818083.141592Reina19250.541925208593.1795ppamn由此可以看出蒙特卡罗方法的基本步骤:首先,建立一个概率模型,使它的某个参数等于问题的解。然后按照假设的分布,对随机变量选出具体的值(这一过程又叫着抽样),从而构造出一个确定性的模型,计算出结果。再通过几次抽样实验的结果,的到参数的统计特性,最终算出解的近似值。蒙特卡罗方法主要用再难以定量分析的概率模型,这种模型一般的不到解析的结果,或虽然又解析结果,但计算代价太大以至不可用。也可以用在算不出解析结果的定性模型中。用蒙特卡罗方法解题,需要根据随机变量遵循的分布规律选出具体的至,即抽样。随机变量的抽样方法很多,不同的分布采用的方法不尽相同。在计算机上的各种分布的随机数事实上都是按照一定的确定性方法产生的伪随机数。三、随机数的生成我们知道对于丢硬币的随机结果可以用以下的离散随机变量的改里函数来描述如果我们需要模拟随机变量的以个值或一个集合,可以用丢硬币然后记录其其结果的方法来得到,然而这具又相当的局限性,这里我们用数学程序来产生拟随机变量。即看上去是随机出现的,但并非真正的随家便朗,它们产生于一个梯推公式。不过这些拟随机数并没有明显的规律,当给于适当的伸缩之后,它们非常接近于在区间的均匀分布。X01P(x)0.50.50,1这种方法的思想是,设计一个把和之间的整数映射到它们自身上的函数,然后从开始,依次计算例如通过下面的公式可以产生这样的一组随机变量给定任意一个初值,如代入公式得,然后用去除得;同样代入公式,可以得,重复这一过程可以得到我们所需要的一组随机变量。在程序设计和软件包中通常用来表示由这样,我们用它来表示从上的均匀分布所产生的随机变量。0Mf0x01(),fxx12(),.fxx1973nnXX11(mod1000),1000nnXR071,X1890X100010.890R20.333R[0,1]1890X我们可以从它构造出另外的随机变量。例如,可以从给出区间上的连续均匀分布的随机变量。如果我们要生成带参数的指数分布,可以用。如果我们要生成平均值未零,标准差为1的正态分布,可以用下列公式和来给出的两个值,令或可以生成型的正态分布。()XabaRND[,]ab(1/)ln()XRND1/2212[2ln()]cos(2)XRNDRND1/2112[2ln()]cos(2)XRNDRND1XX2XX(,)X为了得到离散的随机变量,我们把分成若干部分。例如设计一个离散的随机变量有下列的概率函数。取一个RND值:如果,则;如果,则;如果,则。对于连续的随机变量除了取生成的随机变量是每类的中点外,我们可以用同样的思想进行列表分类。如x0120.30.30.40-1010-1515-20频率0.20.50.3PxX00.3RND0X0.30.6RND1X0.6RND2X的一个值将平移到。一个更细致的方法是用线性插值而不是取中点,即给出。从已知的模拟一个连续随机变量的理论分布,可以用以下方法:0.36RND12.5X100.360.250.5X11.6Xpdf(1)逆累积分布函数法如果随机变量的是,则累积分布函数是。如果把它作为一个随机变量,是上的均匀分布。从上的均匀分布取一个值,解方程得对应得的值,例如,设累积分布函数为解得。这就是我们所要的由这个分布所生成的的值pdf()fx()()xFxftdtF[0,1]RND()RNDFx1(())xFRND0.5sin0()0xxfx否则00()0.5sin0.5cos0.5(1cos)xxFxtdttx0.5(1cos)RNDXarccos(12)XRNDX[0,1](2)排除法对于这种方法我们需要用两个值来生成一个值。设的值在区间外为,而的最大值是。我们可以通过如下的步骤生成的值。从上的均匀分布生成和;用计算;计算;用算出;如果,则接受,否则排除回到。对于上面的例子,我们取RNDX[,]ab0c[0,1]1RND2RND1()xabaRND2ycRND()yfx).a0,,0.5.abc()fx()fx1RND()fx2RNDxx)a)b)c)d)eX四、模拟模拟是现象的模型所产生的再现。所谓数学模拟就是用模型使现象再现。因此,表示现象的部分或总体的基本方程和表示自然规律的数学模型全是数学模拟。然而,狭义地讲主要指的是数字模拟。它是将复杂现象作出可以用数字计算机表达的数学模型,从数值上进行各种实验。各种方法随着计算机的进步已广泛地应用起来。因此我们所说的模拟主要是指数学模拟。例2.18一列火车大约在下午1点离开站其规律如下;火车从到途中所需要的平均时间为分,由分钟的标准差。如果你要赶的是这趟火车的下一站,而你到达的站的时间分布为问你能赶上这列火车的概率是多少?A离站时间13.0013.0513.10概率0.70.20.1时间13.2813.3013.3213.34概率0.30.40.20.1B302AB为了回答这个问题,我们需要一些随机数。这里我们将采用上面给出的那些随机数,即等。而我们所要模拟的是火车离站的时间;火车途中的时间;你到达车站的时间。这样你赶上火车的条件是。为模拟这个问题只需要生成,和的值,然后检验这条件。但如何得到的值是不明显的,因并不知道这个分布。这样,假设一个模型,取平均值为30,标准差为2的正态分布,由所给的条件知,为离散的,而为连续的随机变量。0.890,0.333,0.304,0.491,0.630.1t2t3t312ttt1t2t1t2t3t3t)a)b)cB以分为时间单位,从的下午以点起算,构造的模型如下其中。计算结果为,和,这样。在这种场合你比火车提前到达4分钟
本文标题:随机性模型与模拟方法 数学建模
链接地址:https://www.777doc.com/doc-3485601 .html