數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 計(jì)算機(jī)模擬_第1頁
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 計(jì)算機(jī)模擬_第2頁
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 計(jì)算機(jī)模擬_第3頁
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 計(jì)算機(jī)模擬_第4頁
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 計(jì)算機(jī)模擬_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)

計(jì)算機(jī)模擬/sundae_meng實(shí)驗(yàn)?zāi)康膶?shí)驗(yàn)內(nèi)容學(xué)習(xí)計(jì)算機(jī)模擬的基本過程與方法.1.模擬的概念.4.實(shí)驗(yàn)作業(yè).3.計(jì)算機(jī)模擬實(shí)例.2.產(chǎn)生隨機(jī)數(shù)的計(jì)算機(jī)命令./sundae_meng連續(xù)系統(tǒng)模擬實(shí)例:追逐問題離散系統(tǒng)模擬實(shí)例:排隊(duì)問題用蒙特卡羅法解非線性規(guī)劃問題返回計(jì)算機(jī)模擬實(shí)例/sundae_meng模擬的概念

模擬就是利用物理的、數(shù)學(xué)的模型來類比、模仿現(xiàn)實(shí)系統(tǒng)及其演變過程,以尋求過程規(guī)律的一種方法.

模擬的基本思想是建立一個(gè)試驗(yàn)的模型,這個(gè)模型包含所研究系統(tǒng)的主要特點(diǎn).通過對這個(gè)實(shí)驗(yàn)?zāi)P偷倪\(yùn)行,獲得所要研究系統(tǒng)的必要信息./sundae_meng模擬的方法1.物理模擬:對實(shí)際系統(tǒng)及其過程用功能相似的實(shí)物系統(tǒng)去模仿.例如,軍事演習(xí)、船艇實(shí)驗(yàn)、沙盤作業(yè)等.

物理模擬通常花費(fèi)較大、周期較長,且在物理模型上改變系統(tǒng)結(jié)構(gòu)和系數(shù)都較困難.而且,許多系統(tǒng)無法進(jìn)行物理模擬,如社會(huì)經(jīng)濟(jì)系統(tǒng)、生態(tài)系統(tǒng)等./sundae_meng

在實(shí)際問題中,面對一些帶隨機(jī)因素的復(fù)雜系統(tǒng),用分析方法建模常常需要作許多簡化假設(shè),與面臨的實(shí)際問題可能相差甚遠(yuǎn),以致解答根本無法應(yīng)用.這時(shí),計(jì)算機(jī)模擬幾乎成為唯一的選擇.

在一定的假設(shè)條件下,運(yùn)用數(shù)學(xué)運(yùn)算模擬系統(tǒng)的運(yùn)行,稱為數(shù)學(xué)模擬.現(xiàn)代的數(shù)學(xué)模擬都是在計(jì)算機(jī)上進(jìn)行的,稱為計(jì)算機(jī)模擬.2.?dāng)?shù)學(xué)模擬

計(jì)算機(jī)模擬可以反復(fù)進(jìn)行,改變系統(tǒng)的結(jié)構(gòu)和系數(shù)都比較容易.

蒙特卡羅(MonteCarlo)方法是一種應(yīng)用隨機(jī)數(shù)來進(jìn)行計(jì)算機(jī)模擬的方法.此方法對研究的系統(tǒng)進(jìn)行隨機(jī)觀察抽樣,通過對樣本值的觀察統(tǒng)計(jì),求得所研究系統(tǒng)的某些參數(shù)./sundae_meng例1

在我方某前沿防守地域,敵人以一個(gè)炮排(含兩門火炮)為單位對我方進(jìn)行干擾和破壞.為躲避我方打擊,敵方對其陣地進(jìn)行了偽裝并經(jīng)常變換射擊地點(diǎn).

經(jīng)過長期觀察發(fā)現(xiàn),我方指揮所對敵方目標(biāo)的指示有50%是準(zhǔn)確的,而我方火力單位,在指示正確時(shí),有1/3的射擊效果能毀傷敵人一門火炮,有1/6的射擊效果能全部消滅敵人.

現(xiàn)在希望能用某種方式把我方將要對敵人實(shí)施的20次打擊結(jié)果顯現(xiàn)出來,確定有效射擊的比率及毀傷敵方火炮的平均值.分析:這是一個(gè)概率問題,可以通過理論計(jì)算得到相應(yīng)的概率和期望值.但這樣只能給出作戰(zhàn)行動(dòng)的最終靜態(tài)結(jié)果,而顯示不出作戰(zhàn)行動(dòng)的動(dòng)態(tài)過程.

為了能顯示我方20次射擊的過程,現(xiàn)采用模擬的方式./sundae_meng

需要模擬出以下兩件事:

1.問題分析[2]當(dāng)指示正確時(shí),我方火力單位的射擊結(jié)果情況[1]觀察所對目標(biāo)的指示正確與否模擬試驗(yàn)有兩種結(jié)果,每種結(jié)果出現(xiàn)的概率都是1/2.

因此,可用投擲1枚硬幣的方式予以確定,當(dāng)硬幣出現(xiàn)正面時(shí)為指示正確,反之為不正確.

模擬試驗(yàn)有三種結(jié)果:毀傷1門火炮的可能性為1/3(即2/6),毀傷兩門的可能性為1/6,沒能毀傷敵火炮的可能性為1/2(即3/6).

這時(shí)可用投擲骰子的方法來確定:如果出現(xiàn)的是1、2、3點(diǎn):則認(rèn)為沒能擊中敵人;如果出現(xiàn)的是4、5點(diǎn):則認(rèn)為毀傷敵人一門火炮;若出現(xiàn)的是6點(diǎn):則認(rèn)為毀傷敵人兩門火炮./sundae_meng2.符號假設(shè)i:要模擬的打擊次數(shù);k1:沒擊中敵人火炮的射擊總數(shù);k2:擊中敵人一門火炮的射擊總數(shù);k3:擊中敵人兩門火炮的射擊總數(shù).E:有效射擊比率;E1:20次射擊平均每次毀傷敵人的火炮數(shù).3.模擬框圖初始化:i=0,k1=0,k2=0,k3=0i=i+1骰子點(diǎn)數(shù)?k1=k1+1k2=k2+1k3=k3+1k1=k1+1i<20?E=E1=0×

+1×

+2×

停止硬幣正面?YNNY1,2,34,56/sundae_meng4.模擬結(jié)果/sundae_meng/sundae_meng5.理論計(jì)算/sundae_meng6.結(jié)果比較

返回

雖然模擬結(jié)果與理論計(jì)算不完全一致,但它卻能更加真實(shí)地表達(dá)實(shí)際戰(zhàn)斗動(dòng)態(tài)過程.用蒙特卡羅方法進(jìn)行計(jì)算機(jī)模擬的步驟:[1]設(shè)計(jì)一個(gè)邏輯框圖,即模擬模型.這個(gè)框圖要正確反映系統(tǒng)各部分運(yùn)行時(shí)的邏輯關(guān)系.[2]模擬隨機(jī)現(xiàn)象.可通過具有各種概率分布的模擬隨機(jī)數(shù)來模擬隨機(jī)現(xiàn)象./sundae_meng產(chǎn)生模擬隨機(jī)數(shù)的計(jì)算機(jī)命令

在MATLAB軟件中,可以直接產(chǎn)生滿足各種分布的隨機(jī)數(shù),命令如下:2.產(chǎn)生m×n階[0,1]均勻分布的隨機(jī)數(shù)矩陣:

rand(m,n)

產(chǎn)生一個(gè)[0,1]均勻分布的隨機(jī)數(shù):rand1.產(chǎn)生m×n階[a,b]上均勻分布U(a,b)的隨機(jī)數(shù)矩陣:

unifrnd(a,b,m,n)

產(chǎn)生一個(gè)[a,b]均勻分布的隨機(jī)數(shù):unifrnd(a,b)

當(dāng)只知道一個(gè)隨機(jī)變量取值在(a,b)內(nèi),但不知道(也沒理由假設(shè))它在何處取值的概率大,在何處取值的概率小,就只好用U(a,b)來模擬它.例1的計(jì)算機(jī)模擬/sundae_mengToMATLAB(rnd)當(dāng)研究對象視為大量相互獨(dú)立的隨機(jī)變量之和,且其中每一種變量對總和的影響都很小時(shí),可以認(rèn)為該對象服從正態(tài)分布.機(jī)械加工得到的零件尺寸的偏差、射擊命中點(diǎn)與目標(biāo)的偏差、各種測量誤差、人的身高、體重等,都可近似看成服從正態(tài)分布./sundae_meng若連續(xù)型隨機(jī)變量X的概率密度函數(shù)為其中>0為常數(shù),則稱X服從參數(shù)為的指數(shù)分布.指數(shù)分布的期望值為

排隊(duì)服務(wù)系統(tǒng)中顧客到達(dá)率為常數(shù)時(shí)的到達(dá)間隔、故障率為常數(shù)時(shí)零件的壽命都服從指數(shù)分布.指數(shù)分布在排隊(duì)論、可靠性分析中有廣泛應(yīng)用.注意:MATLAB中,產(chǎn)生參數(shù)為的指數(shù)分布的命令為exprnd()例顧客到達(dá)某商店的間隔時(shí)間服從參數(shù)為0.1的指數(shù)分布

指數(shù)分布的均值為1/0.1=10.指兩個(gè)顧客到達(dá)商店的平均間隔時(shí)間是10個(gè)單位時(shí)間.即平均10個(gè)單位時(shí)間到達(dá)1個(gè)顧客.顧客到達(dá)的間隔時(shí)間可用exprnd(10)模擬./sundae_meng設(shè)離散型隨機(jī)變量X的所有可能取值為0,1,2,…,且取各個(gè)值的概率為其中>0為常數(shù),則稱X服從參數(shù)為的泊松分布.泊松分布在排隊(duì)系統(tǒng)、產(chǎn)品檢驗(yàn)、天文、物理等領(lǐng)域有廣泛應(yīng)用.泊松分布的期望值為/sundae_meng如相繼兩個(gè)事件出現(xiàn)的間隔時(shí)間服從參數(shù)為的指數(shù)分布,則在單位時(shí)間間隔內(nèi)事件出現(xiàn)的次數(shù)服從參數(shù)為的泊松分布.即單位時(shí)間內(nèi)該事件出現(xiàn)k次的概率為:反之亦然.指數(shù)分布與泊松分布的關(guān)系:(1)指兩個(gè)顧客到達(dá)商店的平均間隔時(shí)間是10個(gè)單位時(shí)間.即平均10個(gè)單位時(shí)間到達(dá)1個(gè)顧客.(2)指一個(gè)單位時(shí)間內(nèi)平均到達(dá)0.1個(gè)顧客例(1)顧客到達(dá)某商店的間隔時(shí)間服從參數(shù)為0.1的指數(shù)分布

(2)該商店在單位時(shí)間內(nèi)到達(dá)的顧客數(shù)服從參數(shù)為0.1的泊松分布/sundae_meng

返回例2敵坦克分隊(duì)對我方陣地實(shí)施突襲,其到達(dá)規(guī)律服從泊松分布,平均每分鐘到達(dá)4輛.(1)模擬敵坦克在3分鐘內(nèi)到達(dá)目標(biāo)區(qū)的數(shù)量,以及在第1、2、3分鐘內(nèi)各到達(dá)幾輛坦克.(2)模擬在3分鐘內(nèi)每輛敵坦克的到達(dá)時(shí)刻.

(1)用poissrnd(4)進(jìn)行模擬.ToMATLAB(poiss)(2)坦克到達(dá)的間隔時(shí)間應(yīng)服從參數(shù)為4的負(fù)指數(shù)分布,用exprnd(1/4)模擬.

ToMATLAB(time)/sundae_meng連續(xù)系統(tǒng)模擬實(shí)例:追逐問題

狀態(tài)隨時(shí)間連續(xù)變化的系統(tǒng)稱為連續(xù)系統(tǒng).對連續(xù)系統(tǒng)的計(jì)算機(jī)模擬只能是近似的,只要這種近似達(dá)到一定的精度,也就可以滿足要求.例追逐問題:

如圖,正方形ABCD的4個(gè)頂點(diǎn)各有1人.在某一時(shí)刻,4人同時(shí)出發(fā)以勻速v=1m/s按順時(shí)針方向追逐下一人,如果他們始終保持對準(zhǔn)目標(biāo),則最終按螺旋狀曲線于中心點(diǎn)O.試求出這種情況下每個(gè)人的行進(jìn)軌跡.OBCDA/sundae_meng1.建立平面直角坐標(biāo)系:A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4).2.取時(shí)間間隔為Δt,計(jì)算每一點(diǎn)在各個(gè)時(shí)刻的坐標(biāo).4.對每一個(gè)點(diǎn),連接它在各時(shí)刻的位置,即得所求運(yùn)動(dòng)軌跡.求解過程:ToMATLAB(chase)返回/sundae_mengv=1;dt=0.05;x=[001010];y=[010100];fori=1:4plot(x(i),y(i),'.'),holdonendd=20;while(d>0.1)x(5)=x(1);y(5)=y(1);

fori=1:4d=sqrt((x(i+1)-x(i))^2+(y(i+1)-y(i))^2);x(i)=x(i)+v*dt*(x(i+1)-x(i))/d;y(i)=y(i)+v*dt*(y(i+1)-y(i))/d;plot(x(i),y(i),'.'),holdon

endend計(jì)算程序:ToMATLAB(chase)返回/sundae_meng離散系統(tǒng)模擬實(shí)例:排隊(duì)問題

排隊(duì)論主要研究隨機(jī)服務(wù)系統(tǒng)的工作過程.

在排隊(duì)系統(tǒng)中,服務(wù)對象的到達(dá)時(shí)間和服務(wù)時(shí)間都是隨機(jī)的.排隊(duì)論通過對每個(gè)個(gè)別的隨機(jī)服務(wù)現(xiàn)象的統(tǒng)計(jì)研究,找出反映這些隨機(jī)現(xiàn)象平均特性的規(guī)律,從而為設(shè)計(jì)新的服務(wù)系統(tǒng)和改進(jìn)現(xiàn)有服務(wù)系統(tǒng)的工作提供依據(jù).

對于排隊(duì)服務(wù)系統(tǒng),顧客常常注意排隊(duì)的人是否太多,等候的時(shí)間是否長,而服務(wù)員則關(guān)心他空閑的時(shí)間是否太短.于是人們常用排隊(duì)的長度、等待的時(shí)間及服務(wù)利用率等指標(biāo)來衡量系統(tǒng)的性能./sundae_meng[1]系統(tǒng)的假設(shè):(1)顧客源是無窮的;(2)排隊(duì)的長度沒有限制;(3)到達(dá)系統(tǒng)的顧客按先后順序依次進(jìn)入服務(wù),即“先到先服務(wù)”.單服務(wù)員的排隊(duì)模型:在某商店有一個(gè)售貨員,顧客陸續(xù)來到,售貨員逐個(gè)地接待顧客.當(dāng)?shù)絹淼念櫩洼^多時(shí),一部分顧客便須排隊(duì)等待,被接待后的顧客便離開商店.設(shè):1.顧客到來間隔時(shí)間服從參數(shù)為0.1的指數(shù)分布.2.對顧客的服務(wù)時(shí)間服從[4,15]上的均勻分布.3.排隊(duì)按先到先服務(wù)規(guī)則,隊(duì)長無限制.

假定一個(gè)工作日為8小時(shí),時(shí)間以分鐘為單位.[1]模擬一個(gè)工作日內(nèi)完成服務(wù)的個(gè)數(shù)及顧客平均等待時(shí)間t.[2]模擬100個(gè)工作日,求出平均每日完成服務(wù)的個(gè)數(shù)及每日顧客的平均等待時(shí)間./sundae_meng

[2]符號說明

w:總等待時(shí)間;ci:第i個(gè)顧客的到達(dá)時(shí)刻;

bi:第i個(gè)顧客開始服務(wù)時(shí)刻;ei:第i個(gè)顧客服務(wù)結(jié)束時(shí)刻.

xi:第i-1個(gè)顧客與第i個(gè)顧客到達(dá)之間的時(shí)間間隔

yi:對第i個(gè)顧客的服務(wù)時(shí)間c1b1c3c4c5c2e1b2e2b3e3b4e4b5ci=ci-1+xiei=bi+yibi=max(ci,ei-1)t/sundae_meng[3]模擬框圖初始化:令i=1,ei-1=0,w=0產(chǎn)生間隔時(shí)間隨機(jī)數(shù)xi服從參數(shù)為0.1的指數(shù)分布

ci=xi

,bi=xi

產(chǎn)生服務(wù)時(shí)間隨機(jī)數(shù)yi服從[4,15]的均勻分布

ei=bi+yi累計(jì)等待時(shí)間:w=w+bi-ci準(zhǔn)備下一次服務(wù):i=i+1產(chǎn)生間隔時(shí)間隨機(jī)數(shù)xi服從參數(shù)為0.1的指數(shù)分布

ci=ci-1+xi

確定開始服務(wù)時(shí)間:bi=max(ci,ei-1)bi>480?YNi=i-1,t=w/i輸出結(jié)果:完成服務(wù)個(gè)數(shù):m=i

平均等待時(shí)間:t停止[1]模擬1日

simu1.m[2]模擬100日ToMATLAB(simu2)返回/sundae_meng用蒙特卡羅法解非線性規(guī)劃問題/sundae_meng基本假設(shè)

試驗(yàn)點(diǎn)的第j個(gè)分量xj服從[aj,bj]內(nèi)的均勻分布.符號假設(shè)求解過程

先產(chǎn)生一個(gè)隨機(jī)數(shù)作為初始試驗(yàn)點(diǎn),以后則將上一個(gè)試驗(yàn)點(diǎn)的第j個(gè)分量隨機(jī)產(chǎn)生,其他分量不變而產(chǎn)生一新的試驗(yàn)點(diǎn).這樣,每產(chǎn)生一個(gè)新試驗(yàn)點(diǎn)只需一個(gè)新的隨機(jī)數(shù)分量.當(dāng)K>MAXK或P>MAXP時(shí)停止迭代./sundae_meng框圖初始化:給定MAXK,MAXP;k=0,p=0,Q:大整數(shù)xj=aj+R(bj-aj)j=1,2,…,nj=0j=j+1,p=p+1P>MAXP?YNxj=aj+R(bj-aj)gi(X)≥0?i=1,2…nYNj<n?f(X)≥Q?YNX*=X,Q=f(X)k=k+1k>MAXK?YN輸出X,Q,停止YN/sundae_meng

在MATLAB軟件包中編程,共需3個(gè)M文件:randlp.m,mylp.m,

lpconst.m.主程序?yàn)閞andlp.m.%mylp.mfunctionz=mylp(x)

%目標(biāo)函數(shù)z=2*x(1)^2+x(2)^2-x(1)*x(2)-8*x(1)-3*x(2);

%轉(zhuǎn)化為求最小值問題/sundae_meng%randlp.m

function[sol,r1,r2]=randlp(a,b,n)

%隨機(jī)模擬解非線性規(guī)劃debug=1;a=0;

%試驗(yàn)點(diǎn)下界b=10;

%試驗(yàn)點(diǎn)上界n=1000;

%試驗(yàn)點(diǎn)個(gè)數(shù)r1=unifrnd(a,b,n,1);

%n

1階的[a,b]均勻分布隨機(jī)數(shù)矩陣r2=unifrnd(a,b,n,1);sol=[r1(1)r2(1)];z0=inf;fori=1:nx1=r1(i);x2=r2(i);lpc=lpconst([x1x2]);

iflpc==1z=mylp([x1x2]);

ifz<z0z0=z;

sol=[x1x2];

end

endendToMATLAB(randlp)返回/sundae_meng實(shí)驗(yàn)作業(yè)1.編一個(gè)福利彩票電腦選號的程序./sundae_meng4.某設(shè)備上安裝有4只型號規(guī)格完全相同的電子管,已知電子管壽命服從1000~2000h之間的均勻分布.電子管損壞時(shí)有兩種維修方案,一是每次更換損壞的那只;二是當(dāng)其中1只損壞時(shí)4只同時(shí)更換.已知更換時(shí)間為換1只時(shí)需1h,4只同時(shí)換為2h.更換時(shí)機(jī)器因停止運(yùn)轉(zhuǎn)每小時(shí)的損失為20元,又每只電子管價(jià)格10元,試用模擬方法確定哪一個(gè)方案經(jīng)濟(jì)合理?5.

導(dǎo)彈追蹤問題:設(shè)位于坐標(biāo)原點(diǎn)的甲艦向位于x軸上點(diǎn)A(1,0)處的乙艦發(fā)射導(dǎo)彈,導(dǎo)彈頭始終對準(zhǔn)乙艦.如果乙艦以最大的速度(常數(shù))沿平行于y軸的直線行駛,導(dǎo)彈的速度為5.模擬導(dǎo)彈運(yùn)行的軌跡.乙艦行駛多遠(yuǎn)時(shí),導(dǎo)彈將它擊中?/sundae_meng初始化:i=0,k1=0,k2=0,k3=0i=i+1骰子點(diǎn)數(shù)?k1=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論