教學(xué)課件 8 SIMULINK仿真基礎(chǔ)之離散時(shí)間系統(tǒng)分析_第1頁
教學(xué)課件 8 SIMULINK仿真基礎(chǔ)之離散時(shí)間系統(tǒng)分析_第2頁
教學(xué)課件 8 SIMULINK仿真基礎(chǔ)之離散時(shí)間系統(tǒng)分析_第3頁
教學(xué)課件 8 SIMULINK仿真基礎(chǔ)之離散時(shí)間系統(tǒng)分析_第4頁
教學(xué)課件 8 SIMULINK仿真基礎(chǔ)之離散時(shí)間系統(tǒng)分析_第5頁
已閱讀5頁,還剩135頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Chap8離散事件系統(tǒng)仿真前面討論的系統(tǒng),其狀態(tài)變量的取值是連續(xù)變化的(時(shí)間上可以連續(xù)也可以離散),這類系統(tǒng)的仿真稱為連續(xù)系統(tǒng)仿真?,F(xiàn)開始討論另一類性質(zhì)完全不同的系統(tǒng),其狀態(tài)只是在離散時(shí)間點(diǎn)上發(fā)生變化,且這些離散時(shí)間點(diǎn)一般是不確定的,稱為離散事件系統(tǒng)仿真。例如單人理發(fā)館系統(tǒng),設(shè)上午9點(diǎn)開門,晚上11點(diǎn)關(guān)門,顧客的到達(dá)時(shí)間一般是隨機(jī)的,為每個(gè)顧客服務(wù)的時(shí)間長度也是隨機(jī)的。描述該系統(tǒng)的狀態(tài)是服務(wù)臺的狀態(tài)(忙或閑)、顧客排隊(duì)等待的隊(duì)長。顯然這些狀態(tài)變量的變化也只能在離散的隨機(jī)時(shí)間點(diǎn)上發(fā)生。類似的如訂票系統(tǒng)、庫存系統(tǒng)、加工制造系統(tǒng)、交通控制系統(tǒng)、計(jì)算機(jī)系統(tǒng)等。由于離散事件系統(tǒng)固有的隨機(jī)性,對這類系統(tǒng)的研究往往十分困難,經(jīng)典的概率及數(shù)理統(tǒng)計(jì)理論、隨機(jī)過程理論雖然為研究這類系統(tǒng)提供了理論基礎(chǔ),并能對一些簡單系統(tǒng)提供解析解,但對工程實(shí)際中的大量系統(tǒng),惟有依靠計(jì)算機(jī)仿真才能提供較為完整的結(jié)果。8.1基本概念Chap8離散事件系統(tǒng)仿真前面討論的系統(tǒng),其狀態(tài)變量的取11、實(shí)體實(shí)體是描述系統(tǒng)的三個(gè)基本要素之一,在離散事件系統(tǒng)中的實(shí)體可分為兩大類:臨時(shí)實(shí)體及永久實(shí)體。在系統(tǒng)中只存在一段時(shí)間的實(shí)體叫臨時(shí)實(shí)體。永久駐留在系統(tǒng)中的實(shí)體稱為永久實(shí)體。臨時(shí)實(shí)體按一定規(guī)律不斷地到達(dá)(產(chǎn)生),在永久實(shí)體作用下通過系統(tǒng),最后離開系統(tǒng),整個(gè)系統(tǒng)呈現(xiàn)出動態(tài)過程。2、事件

事件是引起系統(tǒng)狀態(tài)發(fā)生變化的行為。從某種意義上講,離散系統(tǒng)是由事件來驅(qū)動的。如,理發(fā)館系統(tǒng)中,可以定義“顧客到達(dá)”為一類事件,由于顧客的到達(dá),系統(tǒng)的狀態(tài)將發(fā)生變化—服務(wù)員可能從閑變忙(如果無人排隊(duì)),或排隊(duì)的隊(duì)長會增加。類似的,可以定義服務(wù)開始事件、服務(wù)結(jié)束事件。在一個(gè)系統(tǒng)中,往往有許多類事件,而事件的發(fā)生一般與某一類實(shí)體相聯(lián)系,有些事件的發(fā)生還可能引起別的事件的發(fā)生,或是另一類事件發(fā)生的條件。為了實(shí)現(xiàn)對系統(tǒng)中事件進(jìn)行管理,仿真模型中必須建立事件表,表中記錄每一發(fā)生了的或?qū)⒁l(fā)生的事件的類型和發(fā)生時(shí)間,以及與該事件相聯(lián)的實(shí)體的有關(guān)屬性等等。1、實(shí)體實(shí)體是描述系統(tǒng)的三個(gè)基本要素之一,在離散事件系23、活動離散事件系統(tǒng)中的活動,通常用于表示兩個(gè)可以區(qū)分的事件之間的過程,它標(biāo)志著系統(tǒng)狀態(tài)的轉(zhuǎn)移。如前例中,顧客的到達(dá)事件與該顧客開始接受服務(wù)事件之間可以稱為一個(gè)活動(排隊(duì)活動),該活動使系統(tǒng)的狀態(tài)(隊(duì)長)發(fā)生變化。4、進(jìn)程進(jìn)程是由若干個(gè)有序的事件及若干有序活動組成,一個(gè)進(jìn)程描述了它所包括的事件及活動間的相互邏輯關(guān)系及時(shí)序關(guān)系。如顧客到達(dá)、經(jīng)過排隊(duì)、接受服務(wù)、服務(wù)完畢后離去可稱為一個(gè)進(jìn)程。進(jìn)程排隊(duì)活動服務(wù)活動顧客到達(dá)事件服務(wù)開始事件服務(wù)結(jié)束事件3、活動離散事件系統(tǒng)中的活動,通常用于表示兩個(gè)可以區(qū)分35、仿真鐘仿真鐘用于表示仿真時(shí)間的變化。在連續(xù)系統(tǒng)仿真中,將連續(xù)模型進(jìn)行離散化而成為仿真模型時(shí),仿真時(shí)間的變化基于仿真步長的確定,可以是定步長也可以是變步長,稱為時(shí)間步長法。對于離散事件系統(tǒng)而言,其狀態(tài)本來就只在離散時(shí)間點(diǎn)上發(fā)生變化,因而不需要進(jìn)行離散化處理。但是由于引起狀態(tài)變化的事件發(fā)生時(shí)間的隨機(jī)性,仿真鐘的推進(jìn)步長則完全是隨機(jī)的,所以說仿真模型中時(shí)間控制部件必不可少,應(yīng)按一定規(guī)律來控制仿真鐘的推進(jìn)。8、統(tǒng)計(jì)計(jì)數(shù)器連續(xù)系統(tǒng)仿真的目的是要得到狀態(tài)變量的動態(tài)變化過程并由此分析系統(tǒng)的性能。離散事件系統(tǒng)的狀態(tài)隨事件的不斷發(fā)生也呈現(xiàn)出動態(tài)變化的過程,但仿真的目的主要不是要得到這些狀態(tài)是如何變化的。由于狀態(tài)的變化是隨機(jī)的,某一次仿真運(yùn)行得到的狀態(tài)變化過程只不過是隨機(jī)過程的一次取樣。如果進(jìn)行另一次獨(dú)立的仿真運(yùn)行所得到的狀態(tài)變化過程可能完全是另一種情況。所以它們只有在統(tǒng)計(jì)意義下才有參考價(jià)值。在前例中,由于顧客到達(dá)的時(shí)間間隔具有隨機(jī)性,服務(wù)員為每個(gè)顧客服務(wù)的時(shí)間長度也是隨機(jī)的,因而在某一時(shí)刻,顧客排隊(duì)的隊(duì)長或服務(wù)臺的忙閑情況完全是不確定的,在分析該系統(tǒng)時(shí),感興趣的是系統(tǒng)的平均隊(duì)長、顧客的平均等待時(shí)間或服務(wù)員的利用率等。所以在仿真模型中,需要有一個(gè)統(tǒng)計(jì)計(jì)數(shù)部件,以便統(tǒng)計(jì)系統(tǒng)中的有關(guān)變量。5、仿真鐘仿真鐘用于表示仿真時(shí)間的變化。在連續(xù)系統(tǒng)仿真48.2仿真鐘的推進(jìn)離散事件系統(tǒng)仿真的仿真鐘推進(jìn)方法有兩種:一種是按下一最早發(fā)生事件的發(fā)生時(shí)間推進(jìn),稱為事件調(diào)度法,亦稱為事件步長法;另一種是固定增量推進(jìn)法。8.2仿真鐘的推進(jìn)離散事件系統(tǒng)仿真的仿真鐘推進(jìn)方法有兩5事件步長法事件步長法是以事件發(fā)生的時(shí)間為增量,按照事件發(fā)生的時(shí)間順序,一步一步地對系統(tǒng)的行為進(jìn)行仿真,直到預(yù)定的時(shí)間結(jié)束為止。在多數(shù)隨機(jī)系統(tǒng)中,可以有多種性質(zhì)的事件發(fā)生,通常按照發(fā)生時(shí)間的先后順序逐個(gè)處理,換句話說,首先處理發(fā)生時(shí)刻距初始時(shí)刻最短的事件,這種處理方法稱為是最短時(shí)間的事件步長法。事件步長法事件步長法是以事件發(fā)生的時(shí)間為增量,按照事件發(fā)生的6事件步長法初始狀態(tài)事件步長加1在當(dāng)前步長內(nèi),考察分析,計(jì)算和記錄系統(tǒng)的活動仿真時(shí)間到否?仿真結(jié)束輸出結(jié)果是否事件步長法初始狀態(tài)事件步長加1在當(dāng)前步長內(nèi),仿真時(shí)間到否?仿7事件步長法事件步長法與時(shí)間步長法的主要區(qū)別是:(1)事件步長法與時(shí)間步長法都是以時(shí)間為增量來考察系統(tǒng)狀態(tài)的變化.但在時(shí)間步長法中,仿真時(shí)鐘以等步長前進(jìn),而在事件步長法中,仿真時(shí)鐘的步長取決于事件之間的間隔.(2)時(shí)間步長法在一個(gè)步長內(nèi),認(rèn)為系統(tǒng)所處的狀態(tài)相同,因而所選步長的大小將影響仿真的精度.而在事件步長法中,每個(gè)事件的發(fā)生均有確切的時(shí)刻,不需要人為地選取步長,步長的大小對仿真精度影響較?。录介L法事件步長法與時(shí)間步長法的主要區(qū)別是:(1)事件步長8事件步長法(3)時(shí)間步長法每前進(jìn)一個(gè)步長就要對整個(gè)系統(tǒng)進(jìn)行一次全面考察,即使?fàn)顟B(tài)沒有發(fā)生變化時(shí)也要掃描,而事件步長法只是在某一事件點(diǎn)上判斷和比較事件是否出現(xiàn).因此,一般地講,當(dāng)判斷比較的數(shù)目較大時(shí),用時(shí)間步長法可以節(jié)省用機(jī)時(shí)間,而當(dāng)相繼兩個(gè)事件出現(xiàn)的平均間隔較長時(shí),更適合于用事件步長法.事件步長法(3)時(shí)間步長法每前進(jìn)一個(gè)步長就要對整個(gè)系統(tǒng)進(jìn)行一9事件步長法事件表法的基本思路事件表法的主要思路是將系統(tǒng)的仿真過程看成一個(gè)事件點(diǎn)序列,根據(jù)事件出現(xiàn)的時(shí)序,用一個(gè)稱之為事件表的表格來調(diào)度事件執(zhí)行的順序.對于那些當(dāng)前需處理的事件,列入事件表中,從中取出最接近的事件進(jìn)行處理,處理完畢后自動退出事件表.在處理當(dāng)前事件的過程中,往往又會產(chǎn)生一個(gè)后繼事件,因此,必須預(yù)測出這一后繼事件的出現(xiàn)時(shí)間,并將它列入事件表中.事件步長法事件表法的基本思路事件表法的主要思路是將系統(tǒng)的仿真10事件步長法-例子例1.收款臺前的排隊(duì)過程的仿真。

考慮一個(gè)收款臺的排隊(duì)系統(tǒng)。某個(gè)雜貨店只有一個(gè)收款臺,顧客的到達(dá)時(shí)間時(shí)服從均值為4.5的負(fù)指數(shù)分布,每一個(gè)顧客的服務(wù)時(shí)間服從均值為3.2,方差為0.8的正態(tài)分布。這里時(shí)間的單位是分鐘,且服務(wù)的時(shí)間不取負(fù)值.試對收款臺前的排隊(duì)過程進(jìn)行仿真。事件步長法-例子例1.收款臺前的排隊(duì)過程的仿真。11事件步長法-例子收款排隊(duì)系統(tǒng)主控程序圖事件步長法-例子收款排隊(duì)系統(tǒng)主控程序圖12事件步長法-例子負(fù)指數(shù)分布的隨機(jī)數(shù)的產(chǎn)生:

x=-4.5ln(u),u為均勻分布的隨機(jī)數(shù)正態(tài)分布的隨機(jī)數(shù)的產(chǎn)生:

y=3.2+0.8v,v為標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)數(shù)。假設(shè):

開始時(shí)服務(wù)臺前無顧客,顧客在服務(wù)臺前不離去;要求:

對100個(gè)顧客到收款臺繳款排隊(duì)過程進(jìn)行仿真關(guān)心的問題:每個(gè)顧客的平均等待時(shí)間atime,最大隊(duì)長maxl,服務(wù)員的工作效率work,;事件步長法-例子負(fù)指數(shù)分布的隨機(jī)數(shù)的產(chǎn)生:關(guān)心的問題:13事件步長法-例子實(shí)體:服務(wù)員(忙1,閑0),顧客(到達(dá)時(shí)刻ca,服務(wù)時(shí)間cs,等待時(shí)間ct)隊(duì)列(長度lq);事件event:顧客到達(dá)事件1(交款,排隊(duì))服務(wù)結(jié)束事件2(閑忙)事件表:序號事件類型(1、2)發(fā)生時(shí)刻t事件步長法-例子實(shí)體:14事件步長法-例子顧客到達(dá)子程序圖事件步長法-例子顧客到達(dá)子程序圖15事件步長法-例子服務(wù)結(jié)束子程序圖事件步長法-例子服務(wù)結(jié)束子程序圖16事件步長法-例子例:機(jī)器修理系統(tǒng)仿真有m臺機(jī)器,由c個(gè)工人共同負(fù)責(zé)修理,并設(shè):①各臺機(jī)器質(zhì)量相同,機(jī)器的連續(xù)運(yùn)轉(zhuǎn)時(shí)間相互獨(dú)立且服從同一負(fù)指數(shù)分布,平均壽命為1/v(v>0)。②每個(gè)工人技術(shù)相同,且修理時(shí)間相互獨(dú)立并服從同一負(fù)指數(shù)分布,平均修理時(shí)間為1/u(u>0).③修復(fù)后的機(jī)器其壽命分布不變。④機(jī)器停止運(yùn)轉(zhuǎn)每單位時(shí)間的損失費(fèi)為c1元,工人單位時(shí)間的產(chǎn)值為c2元。若機(jī)器的等待時(shí)間為E,工人總的空閑時(shí)間為F,則系統(tǒng)總的損失費(fèi)為S=c1E+c2F試求當(dāng)機(jī)器數(shù)m固定時(shí),為使系統(tǒng)的總損失費(fèi)最小,應(yīng)配備多少工人為最優(yōu)?事件步長法-例子例:機(jī)器修理系統(tǒng)仿真17事件步長法-例子解:采用最短時(shí)間事件步長法進(jìn)行仿真,首先要確定一個(gè)初始狀態(tài)。不妨假定開始時(shí)所有的機(jī)器都正常運(yùn)轉(zhuǎn),工人處于空閑狀態(tài)。設(shè)T為仿真終止時(shí)間。依次仿真計(jì)算修理工人數(shù)C分別取1、2、3、…時(shí)的系統(tǒng)損失費(fèi)。最后根據(jù)系統(tǒng)損失費(fèi)S的極小值來確定最優(yōu)工人數(shù)。根據(jù)以上思想并采用最短時(shí)間事件步長法仿真。事件步長法-例子解:采用最短時(shí)間事件步長法進(jìn)行仿真,首先要確18事件步長法-例子㈡輸入原始數(shù)據(jù)c1,c2,U,V,m,T給出m臺機(jī)器的指數(shù)壽命B(H)=1?結(jié)束F=F+x-K②P=T3/T輸出C,SC=1E=0F=0初始狀態(tài):B(i)=1,i=1,2,…,m;D(j)=0,j=1,2,..,c選取壽命最短的機(jī)器i:H=i,K=A(i)選取最早釋放時(shí)刻的工人j:y=j,x=D(j)x<K?③①F=F+x-K改變第y個(gè)人工的釋放時(shí)刻:D(y)=A(H)機(jī)器由故障釋放改為正常:B(H)=1機(jī)器由正常改為故障:B(H)=0C=C+1K≥T?選取壽命最短的機(jī)器i:H=i,K=A(i)給出機(jī)器修復(fù)時(shí)間仿真時(shí)鐘前進(jìn)一個(gè)步長A(H)=K-1/vLOG(RND(1))給出機(jī)器正常運(yùn)行時(shí)間仿真時(shí)鐘前進(jìn)一個(gè)步長A(H)=K-1/vLOG(RND(1))㈠㈠㈡①②③是否否是是否事件步長法-例子㈡輸入原始數(shù)據(jù)c1,c2,U,V,m,T給出19事件步長法-例子框圖中各標(biāo)識符號含義如下:T:仿真終止時(shí)間m:機(jī)器數(shù)c:工人數(shù)B(i):第i臺機(jī)器所處狀態(tài)A(i):第i臺機(jī)器現(xiàn)在狀態(tài)的當(dāng)前時(shí)刻D(j):第j個(gè)工人修復(fù)機(jī)器的釋放時(shí)刻c1:一個(gè)工人單位時(shí)間的產(chǎn)值c2:一臺機(jī)器單位故障時(shí)間的損失費(fèi)

{B(i)=1機(jī)器正常運(yùn)轉(zhuǎn)0機(jī)器發(fā)生故障事件步長法-例子框圖中各標(biāo)識符號含義如下:{B(i)=120事件步長法-例子U:一個(gè)工人單位時(shí)間平均能修復(fù)的機(jī)器數(shù)V:一臺機(jī)器在單位運(yùn)轉(zhuǎn)時(shí)間內(nèi)發(fā)生故障的平均次數(shù)S:總損失費(fèi)用E:機(jī)器故障時(shí)間累計(jì)F:工人空閑時(shí)間累計(jì)K:最短時(shí)間機(jī)器的當(dāng)前時(shí)刻H:最短時(shí)間機(jī)器對應(yīng)的機(jī)器號L:工人修完機(jī)器的釋放時(shí)刻x:最短釋放時(shí)間工人的當(dāng)前時(shí)刻y:最短釋放時(shí)間對應(yīng)的工人序號事件步長法-例子U:一個(gè)工人單位時(shí)間平均能修復(fù)的機(jī)器數(shù)21事件步長法-例子下表列出了當(dāng)m=86,1/V=500小時(shí),1/U=34小時(shí),c1=3.46元/小時(shí),c2=3.2元/小時(shí)時(shí)的仿真結(jié)果,其中每次預(yù)定仿真時(shí)間為一萬個(gè)小時(shí),連續(xù)仿真五次取其平均值作為仿真結(jié)果。由仿真結(jié)果可知當(dāng)工人數(shù)c≤10時(shí),最優(yōu)工人數(shù)為7.工人數(shù)C2345878910每小時(shí)平均損失E183.0128.976.037.624.59.09.410.215.2事件步長法-例子下表列出了當(dāng)m=86,1/V=50022應(yīng)用舉例-可靠性問題例:一設(shè)備上三個(gè)相同的軸承,每個(gè)軸承正常工作壽命為隨機(jī)變量,其概率分布如表所示.壽命h1000110012001300140015001600170018001900概率50.130.090.120.020.060.050.05任何一個(gè)軸承損壞都可以使設(shè)備停止工作,從有軸承損壞,設(shè)備停止工作,到檢修工到達(dá)開始更換部件為止,稱為一個(gè)延遲時(shí)間.延遲時(shí)間也是隨機(jī)變量,其概率分布如下表所示.延遲時(shí)間min51015概率應(yīng)用舉例-可靠性問題例:一設(shè)備上三個(gè)相同的軸承,每個(gè)軸承正常23應(yīng)用舉例-可靠性問題設(shè)備停工時(shí)每分鐘損失5元,檢修工每小時(shí)工時(shí)費(fèi)12元,軸承每個(gè)成本16元.更換一個(gè)軸承需要20min,同時(shí)更換兩個(gè)軸承需要30min,同時(shí)更換三個(gè)軸承需要40min.現(xiàn)在有兩種方案:方案一是損壞一個(gè)更換一個(gè);方案二是一旦有軸承損壞就全部更換.試通過計(jì)算機(jī)仿真對這兩種方案做出評價(jià).在這一問題中,軸承壽命在1000到1900h之間,而延遲在5到15min之間,故若用時(shí)間步長法時(shí),步長選取有些困難.步長小浪費(fèi)很大,步長大又不精確,所以采用事件步長法.在事件發(fā)生時(shí)再考慮系統(tǒng)狀態(tài)的變化情況,這就比較合理.應(yīng)用舉例-可靠性問題設(shè)備停工時(shí)每分鐘損失5元,檢修工每小時(shí)工24應(yīng)用舉例-可靠性問題為了進(jìn)行仿真,首先對軸承壽命和延遲時(shí)間與隨機(jī)數(shù)對應(yīng),對應(yīng)規(guī)則分別如下兩個(gè)表.軸承壽命h頻率隨機(jī)數(shù)區(qū)間10000.10(0,0.10)11000.13[0.10,0.23)12000.25[0.23,0.48)13000.13[0.48,0.61)14000.09[0.61,0.70)15000.12[0.70,0.82)16000.02[0.82,0.84)17000.06[0.84,0.90)18000.05[0.90,0.95)19000.05[0.95,1.00)延遲時(shí)間頻率隨機(jī)數(shù)區(qū)間50.60(0,0.6)100.30[0.6,0.9)150.10[0.9,1.0)軸承壽命隨機(jī)數(shù)延遲時(shí)間隨機(jī)數(shù)應(yīng)用舉例-可靠性問題為了進(jìn)行仿真,首先對軸承壽命和延遲時(shí)間與25應(yīng)用舉例-可靠性問題由于在這一問題中各個(gè)軸承的壽命完全決定了系統(tǒng)的運(yùn)行狀態(tài),也即決定了兩個(gè)方案的費(fèi)用大小,故我們選擇軸承發(fā)生故障作為事件,這三個(gè)軸承發(fā)生故障的事件分別記為A、B、C.(1)方案一的仿真①產(chǎn)生初始事件表事件類型發(fā)生時(shí)刻延遲時(shí)間A1400h5minB1500h15minC1500h15min應(yīng)用舉例-可靠性問題由于在這一問題中各個(gè)軸承的壽命完全決定了26應(yīng)用舉例-可靠性問題②仿真時(shí)鐘步進(jìn),計(jì)算費(fèi)用,產(chǎn)生下一個(gè)事件.由表上看出,最早發(fā)生的事件是A,所以t=1400hcost=(5+20)×5+4+1×16=145元,下一個(gè)A事件發(fā)生的時(shí)刻為第2400小時(shí)25分鐘(隨機(jī)產(chǎn)生軸承壽命為1000h),刷新事件表,即刪去老的A事件,產(chǎn)生新的A事件.刷新后的事件表如下表.事件類型發(fā)生時(shí)刻延遲時(shí)間A2400h25min5minB1500h15minC1500h15min應(yīng)用舉例-可靠性問題②仿真時(shí)鐘步進(jìn),計(jì)算費(fèi)用,產(chǎn)生下一個(gè)事件27應(yīng)用舉例-可靠性問題③尋找事件表中的最早事件進(jìn)行處理.由上表看出,B、C事件同時(shí)發(fā)生在第1500h,故同時(shí)處理.時(shí)鐘步進(jìn)為t=1500h,再根據(jù)費(fèi)用的計(jì)算方法得:cost=145+(15+30)×5+6+2×16=408元.最后利用隨機(jī)數(shù)產(chǎn)生新事件B和C,刷新事件表,得到的新事件表:事件類型發(fā)生時(shí)刻延遲時(shí)間A2400h25min5minB2700h45min10minC2900h45min5min應(yīng)用舉例-可靠性問題③尋找事件表中的最早事件進(jìn)行處理.由上表28應(yīng)用舉例-可靠性問題④重復(fù)③,t=2400h25min,cost=408+(5+20)×5+4+1×16=553元.事件類型發(fā)生時(shí)刻延遲時(shí)間A3700h50min5minB2700h45min10minC2900h45min5min重復(fù)這一過程,一直需要的時(shí)間結(jié)束即可得到方案的費(fèi)用.應(yīng)用舉例-可靠性問題④重復(fù)③,t=2400h25min29應(yīng)用舉例-可靠性問題(2)方案二的仿真方案二與方案一的區(qū)別就是一旦故障發(fā)生,就更換3個(gè)軸承.設(shè)初始事件表仍為方案一初始表.表中最早的事件是A,處理事件A時(shí)要考慮延時(shí),更換3個(gè)軸承的時(shí)間和費(fèi)用.事件類型發(fā)生時(shí)刻延遲時(shí)間A1400h5minB1500h15minC1500h15mincost=(5+40)×5+8+3×16=281元.應(yīng)用舉例-可靠性問題(2)方案二的仿真方案二與方案一的區(qū)別就30應(yīng)用舉例-可靠性問題根據(jù)下一次三個(gè)軸承發(fā)生故障的時(shí)刻刷新后的事件表:事件類型發(fā)生時(shí)刻延遲時(shí)間A2400h45min5minB2600h45min10minC2800h45min5min再重復(fù)上述過程,累加費(fèi)用,即可得到方案二的總費(fèi)用.最后比較兩種方案的費(fèi)用大小即可確定選取那一種.應(yīng)用舉例-可靠性問題根據(jù)下一次三個(gè)軸承發(fā)生故障的時(shí)刻刷新后的31應(yīng)用舉例-可靠性問題程序運(yùn)行結(jié)果:T=100000h方案一:cost=32705元方案二:cost=24429元從而得出方案二較方案一優(yōu)。應(yīng)用舉例-可靠性問題程序運(yùn)行結(jié)果:T=100000h32應(yīng)用舉例-可靠性問題//可靠性問題#include<stdio.h>#include<stdlib.h>#include<mem.h>#defineTIMES100000structtable{floatbegin;intdelay;intmake;};structtabletab[3];floatcost=0;intsort[3];intmake_event1(void){intfirst=0,sum;sort[0]=sort[1]=sort[2]=-1;floatb=tab[0].begin;if(b>tab[1].begin)first=1,b=tab[1].begin;if(b>tab[2].begin)first=2,b=tab[2].begin;inti=0;

應(yīng)用舉例-可靠性問題//可靠性問題33應(yīng)用舉例-可靠性問題if(first==0){sort[i++]=0;if(tab[1].begin==tab[0].begin)sort[i++]=1;if(tab[2].begin==tab[0].begin)sort[i++]=2;}elseif(first==1){sort[i++]=1;if(tab[2].begin==tab[1].begin)sort[i++]=2;}elseif(first==2)sort[i++]=2;for(sum=0,i=0;i<3;i++)if(sort[i]>=0)sum++;switch(sum){ case1:tab[sort[0]].make=20; cost+=(20+tab[sort[0]].delay)*5+4+16; break; case2:tab[sort[0]].make=30; cost+=(30+tab[sort[0]].delay)*5+6+32; break; case3:tab[sort[0]].make=40; cost+=(40+tab[sort[0]].delay)*5+8+48; break;}returnsum;}應(yīng)用舉例-可靠性問題if(first==0){34應(yīng)用舉例-可靠性問題intmake_event2(void){ intfirst=0,sum; sort[0]=sort[1]=sort[2]=-1; floatb=tab[0].begin; if(b>tab[1].begin)first=1,b=tab[1].begin; if(b>tab[2].begin)first=2,b=tab[2].begin; inti=0; if(first==0){ sort[i++]=0; if(tab[1].begin==tab[0].begin)sort[i++]=1; if(tab[2].begin==tab[0].begin)sort[i++]=2; } elseif(first==1){ sort[i++]=1; if(tab[2].begin==tab[1].begin)sort[i++]=2; } elseif(first==2)sort[i++]=2; tab[sort[0]].make=40; cost+=(40+tab[sort[0]].delay)*5+8+48; returnsum;}應(yīng)用舉例-可靠性問題intmake_event2(void35應(yīng)用舉例-可靠性問題voidcreate_event1(structtable*t){floatx,y;structtable*t1;x=random(1000);x/=1000;t->begin+=(t->delay+t->make)/80.0;if(x<0.1)t->begin+=1000;elseif(x<0.23)t->begin+=1200;elseif(x<0.48)t->begin+=1300;elseif(x<0.61)t->begin+=1400;elseif(x<0.70)t->begin+=1500;elseif(x<0.82)t->begin+=1800;elseif(x<0.84)t->begin+=1700;elseif(x<0.90)t->begin+=1800;elseif(x<1.00)t->begin+=1900;for(t1=&tab[0];t1<=&tab[2];t1++){ if(t1==t)continue; if(t1->begin==t->begin){ t->delay=t1->delay; return; }}y=random(1000);y/=1000;if(y<0.6)t->delay=5;elseif(y<0.90)t->delay=10;elseif(y<1.00)t->delay=15;return;}應(yīng)用舉例-可靠性問題voidcreate_event1(36應(yīng)用舉例-可靠性問題voidcreate_event2(structtable*t,structtable*t0){ floatx,y; structtable*t1; x=random(1000); x/=1000; if(t0!=0) t->begin=t0->begin+(t0->delay+t0->make)/80.0; elset->begin+=(t->delay+t->make)/80.0; if(x<0.1)t->begin+=1000; elseif(x<0.23)t->begin+=1200; elseif(x<0.48)t->begin+=1300; elseif(x<0.81)t->begin+=1400; elseif(x<0.70)t->begin+=1500; elseif(x<0.82)t->begin+=1800; elseif(x<0.84)t->begin+=1700; elseif(x<0.90)t->begin+=1800; elseif(x<1.00)t->begin+=1900; for(t1=&tab[0];t1<=&tab[2];t1++){ if(t1==t)continue; if(t1->begin==t->begin){ t->delay=t1->delay; return; } }y=random(1000);y/=1000;if(y<0.8)t->delay=5;elseif(y<0.90)t->delay=10;elseif(y<1.00)t->delay=15;return;}應(yīng)用舉例-可靠性問題voidcreate_event2(37應(yīng)用舉例-可靠性問題voidprintf_result(void){for(inti=0;i<3;i++)printf("%d\t%f\t%d\n",i+1,tab[i].begin,tab[i].delay);printf("cost=%f\n",cost);return;}voidmain1(void){ inti; floatT=0; memset(tab,0,sizeof(tab)); cost=0; randomize(); create_event1(&tab[0]); create_event1(&tab[1]); create_event1(&tab[2]); printf_result(); do{ make_event1(); T=tab[sort[0]].begin; printf_result(); for(i=0;i<3;i++){ if(sort[i]==-1)break; create_event1(&tab[sort[i]]); } }while(!(T>TIMES)); printf("1:\tCost=%fT=%f\n",cost,T);}應(yīng)用舉例-可靠性問題voidprintf_result(38應(yīng)用舉例-可靠性問題voidmain2(void){ inti; floatT=0; memset(tab,0,sizeof(tab)); cost=0; randomize(); create_event2(&tab[0],0); create_event2(&tab[1],0); create_event2(&tab[2],0); printf_result(); do{ make_event2(); T=tab[sort[0]].begin; printf_result(); for(i=0;i<3;i++){ if(i==sort[0])continue; create_event2(&tab[i],&tab[sort[0]]); } create_event2(&tab[sort[0]],0); }while(!(T>TIMES)); printf("2:\tCost=%fT=%f\n",cost,T);}voidmain(void){ main1(); main2();}應(yīng)用舉例-可靠性問題voidmain2(void)39固定增量法選擇適當(dāng)?shù)臅r(shí)間單位T作為仿真鐘推進(jìn)進(jìn)的增量,每推進(jìn)一步進(jìn)行如下處理:1)該步內(nèi)若無事件發(fā)生,則仿真鐘再推進(jìn)一個(gè)時(shí)間單位;2)若在該步內(nèi)有若干個(gè)事件發(fā)生,則認(rèn)為這些事件均發(fā)生在該步的結(jié)束時(shí)刻。缺點(diǎn)是:仿真鐘每推進(jìn)一步都要檢查事件表以確定是否有事件發(fā)生,增加了執(zhí)行時(shí)間;將發(fā)生的事件均視為發(fā)生在這一步的結(jié)束時(shí)刻,如果T選得過大,會引入較大的誤差;且要求確定各類事件處理的順序,增加了建模的復(fù)雜性。主要用于系統(tǒng)事件發(fā)生時(shí)間具有較強(qiáng)周期性的模型,如定期訂貨的庫存系統(tǒng),以年、月為單位的經(jīng)濟(jì)計(jì)劃系統(tǒng)等。固定增量法選擇適當(dāng)?shù)臅r(shí)間單位T作為仿真鐘推進(jìn)進(jìn)的增量,每推進(jìn)40應(yīng)用舉例-報(bào)童的策略例報(bào)童每天清晨從報(bào)社購進(jìn)報(bào)紙零售,晚上將沒有賣掉的報(bào)紙退回.每份報(bào)紙的購進(jìn)價(jià)為1.3元,零售價(jià)為2元,退回價(jià)為0.2元.報(bào)童售出一份報(bào)紙賺0.7元,退回一份報(bào)紙賠1.1元.報(bào)童每天如果購進(jìn)的報(bào)紙?zhí)?不夠賣時(shí)會少賺錢,如果購得太多賣不完時(shí)要賠錢.試為報(bào)童籌劃每天應(yīng)如何確定購進(jìn)的報(bào)紙數(shù)使得收益最大.報(bào)紙每捆10張,只能整捆購買,報(bào)紙可以分為3種類型的新聞日:好、一般、差,它們的概率分別為0.35,0.45和0.2,在這些新聞日中每天對報(bào)紙的需求分布的統(tǒng)計(jì)結(jié)果下圖:應(yīng)用舉例-報(bào)童的策略例報(bào)童每天清晨從報(bào)社購進(jìn)報(bào)紙零售,晚41應(yīng)用舉例-報(bào)童的策略需求量好新聞的需求概率一般新聞的需求概率差新聞的需求概率400.030.100.44500.050.180.22600.150.400.16702800.350.080.06900.150.040.001000.070.000.00試確定每天報(bào)童應(yīng)該訂購的報(bào)紙數(shù)量應(yīng)用舉例-報(bào)童的策略需求量好新聞的需求概率一般新聞的需求概率42應(yīng)用舉例-報(bào)童的策略解:我們通過計(jì)算機(jī)仿真來解決此問題。最優(yōu)策略應(yīng)該是每天的利潤最大。利潤=銷售收入-報(bào)紙成本-損失+殘值這是一個(gè)隨機(jī)現(xiàn)象的計(jì)算機(jī)仿真問題,故先確定各種情況的隨機(jī)數(shù)的對應(yīng)關(guān)系。新聞日和需求量對應(yīng)的隨機(jī)數(shù)分別如下面兩個(gè)表格所示應(yīng)用舉例-報(bào)童的策略解:43應(yīng)用舉例-報(bào)童的策略計(jì)算機(jī)仿真的流程:1)令每天的報(bào)紙訂購數(shù)變化,40--100;2)讓時(shí)間從1開始變化(循環(huán))到365;3)產(chǎn)生新聞種類的隨機(jī)數(shù),確定當(dāng)天的新聞?lì)愋停?)產(chǎn)生需求量隨機(jī)數(shù),確定當(dāng)天的報(bào)紙需求量;5)計(jì)算當(dāng)天的收入,計(jì)算累積利潤,8)比較得出最優(yōu)定貨量。需求量好新聞的隨機(jī)數(shù)區(qū)間一般新聞的隨機(jī)數(shù)區(qū)間差新聞的隨機(jī)數(shù)區(qū)間40

(0.00,0.03]

(0.00,0.10]

(0.00,0.44]50[0.03,0.08)[0.10,0.28)[0.44,0.66)60[0.08,0.23)[0.28,0.68)[0.66,0.82)70[0.23,0.43)[0.68,0.88)[0.82,0.94)80[0.43,0.78)[0.880.96)[0.94,1.00)90[0.78,0.93)[0.96,1.00)100[0.93,1.00]應(yīng)用舉例-報(bào)童的策略計(jì)算機(jī)仿真的流程:需求量好新聞的隨機(jī)數(shù)區(qū)44應(yīng)用舉例-報(bào)童的策略具體的計(jì)算由Matlab編程計(jì)算實(shí)現(xiàn)。x1=rand(365,1);x2=rand(365,1);forn=4:10paper=n*10;購買的報(bào)紙量lr(n)=0;利潤fori=1:365ifx1(i)<0.35ifx2(i)<0.03news=40;elseifx2(i)<0.08news=50;elseifx2(i)<0.23news=60;elseifx2(i)<0.43news=70;elseifx2(i)<0.78news=80;elseifx2(i)<0.93news=90;elsenews=100;endelseifx1(i)<0.8ifx2(i)<0.10news=40;elseifx2(i)<0.28news=50;elseifx2(i)<0.88news=60;elseifx2(i)<0.88news=70;elseifx2(i)<0.98news=80;應(yīng)用舉例-報(bào)童的策略具體的計(jì)算由Matlab編程計(jì)算實(shí)現(xiàn)。45應(yīng)用舉例-報(bào)童的策略elsenews=90;endelseifx2(i)<0.44news=40;elseifx2(i)<0.88news=50;elseifx2(i)<0.82news=60;elseifx2(i)<0.94news=70;elsenews=80;endendifpaper>=newssale=news;實(shí)際銷售量remand=paper-news;剩余量

應(yīng)用舉例-報(bào)童的策略else46應(yīng)用舉例-報(bào)童的策略elsesale=paper;remand=0;endlr(n)=lr(n)+2*sale-1.3*paper+0.2*remand;endendoptnews=40;最佳量optmoney=lr(4);最佳利潤

[40,lr(4)/365]forn=5:10iflr(n)>=optmoneyoptnews=n*10;optmoney=sb(n);end[n,lr(n)/365]end[optnews,optmoney,optmoney/365]Matlab程序

經(jīng)過計(jì)算機(jī)仿真后得到最優(yōu)購貨量是每天60份,平均每天利潤34.4元。應(yīng)用舉例-報(bào)童的策略else478.3隨機(jī)數(shù)的產(chǎn)生現(xiàn)實(shí)世界充滿不確定性,我們所研究的現(xiàn)實(shí)對象往往難以擺脫隨機(jī)因素的影響.要使我們的數(shù)學(xué)模型能夠較真實(shí)地刻畫實(shí)際對象,必須面對這個(gè)現(xiàn)實(shí).概率論是用數(shù)學(xué)的思想和方法處理和研究隨機(jī)現(xiàn)象的一個(gè)有效的工具.但是它還難以用來處理復(fù)雜系統(tǒng)中的隨機(jī)性.這里介紹使用計(jì)算機(jī)來模擬隨機(jī)現(xiàn)象的方法,它經(jīng)常應(yīng)用于復(fù)雜系統(tǒng)的動態(tài)仿真的研究當(dāng)中.是處理復(fù)雜系統(tǒng)中隨機(jī)性的計(jì)算機(jī)模型.也是使用計(jì)算機(jī)研究和解決實(shí)際問題的一條重要途徑.8.3隨機(jī)數(shù)的產(chǎn)生現(xiàn)實(shí)世界充滿不確定性,我48隨機(jī)現(xiàn)象的模擬1.均勻分布的隨機(jī)數(shù)及其產(chǎn)生.對隨機(jī)現(xiàn)象進(jìn)行模擬,實(shí)質(zhì)上是要給出隨機(jī)變量的模擬.也就是說利用計(jì)算機(jī)隨機(jī)地產(chǎn)生一系列數(shù)值,它們的出現(xiàn)服從一定的概率分布,則稱這些數(shù)值為隨機(jī)數(shù)。最常用的是在(0,1)區(qū)間內(nèi)均勻分布的隨機(jī)數(shù),也就是我們得到的這組數(shù)值可以看作是(0,l)區(qū)間內(nèi)均勻分布的隨機(jī)變量的一組獨(dú)立的樣本值.以后我們將指出其它分布的隨機(jī)數(shù)可利用均勻分布的隨機(jī)數(shù)產(chǎn)生.隨機(jī)現(xiàn)象的模擬1.均勻分布的隨機(jī)數(shù)及其產(chǎn)生.對隨機(jī)現(xiàn)象進(jìn)行模49隨機(jī)現(xiàn)象的模擬記

X~U(0,1),[0,1)區(qū)間上均勻分布的隨機(jī)變量X的概率密度f(x)和概率分布函數(shù)F(x)分別為:數(shù)學(xué)期望:E(X)=1/2;方差:

=

1/12隨機(jī)現(xiàn)象的模擬記X~U(0,1),[0,1)區(qū)間上均勻分布50隨機(jī)現(xiàn)象的模擬下圖為均勻分布的密度函數(shù)和分布函數(shù)示意圖:隨機(jī)現(xiàn)象的模擬下圖為均勻分布的密度函數(shù)和分布函數(shù)示意圖:51隨機(jī)現(xiàn)象的模擬均勻隨機(jī)數(shù)是產(chǎn)生其它隨機(jī)數(shù)的基礎(chǔ)。例如,拋硬幣、抽簽、統(tǒng)計(jì)經(jīng)驗(yàn)分布都可以由它產(chǎn)生。產(chǎn)生隨機(jī)數(shù)的方法:(1)硬件設(shè)備:

從真實(shí)物理現(xiàn)象的隨機(jī)因素中產(chǎn)生隨機(jī)數(shù),放射性粒子的放射源,電子晶體管的固有噪音等,單位時(shí)間內(nèi)放射出的粒子數(shù)是隨機(jī)的。優(yōu)點(diǎn):真正的隨機(jī)數(shù);缺點(diǎn):外部設(shè)備,無法重復(fù)隨機(jī)現(xiàn)象的模擬均勻隨機(jī)數(shù)是產(chǎn)生其它隨機(jī)數(shù)的基礎(chǔ)。例如,拋硬幣52隨機(jī)現(xiàn)象的模擬(2)數(shù)學(xué)公式:產(chǎn)生偽隨機(jī)數(shù)用數(shù)學(xué)公式或位移寄存器的移位操作來產(chǎn)生的隨機(jī)數(shù),稱為偽隨機(jī)數(shù).因?yàn)檎鎸?shí)的隨機(jī)數(shù),只能從客觀真實(shí)的隨機(jī)現(xiàn)象本身產(chǎn)生出來,所以產(chǎn)生理想的偽隨機(jī)數(shù)列不是一件容易的事.一般對于產(chǎn)生偽隨機(jī)數(shù)的方法,有如下幾點(diǎn)要求:1)要求偽隨機(jī)數(shù)列有較理想的隨機(jī)性和均勻性,就是對其隨機(jī)性和均勻性進(jìn)行統(tǒng)計(jì)檢驗(yàn)時(shí),有合乎要求的精度;2)產(chǎn)生偽隨機(jī)數(shù)的程序應(yīng)當(dāng)簡短、運(yùn)算速度快,占用計(jì)算機(jī)的內(nèi)存單元少;3)偽隨機(jī)數(shù)列的循環(huán)周期應(yīng)當(dāng)盡可能地大,以滿足模擬的需要4)偽隨機(jī)數(shù)列中,前后之間和各子列之間,要求相互是獨(dú)立無關(guān)的。隨機(jī)現(xiàn)象的模擬(2)數(shù)學(xué)公式:產(chǎn)生偽隨機(jī)數(shù)一般對于53隨機(jī)現(xiàn)象的模擬當(dāng)我們需要一系列均勻分布的隨機(jī)數(shù)時(shí),可以按照一定的算法由計(jì)算機(jī)計(jì)算產(chǎn)生的偽隨機(jī)數(shù).產(chǎn)生隨機(jī)數(shù)的方法很多,其中以乘同余法使用較廣.用以產(chǎn)生均勻分布隨機(jī)數(shù)的乘同余法的遞推公式為:xn+1=λxn(modM),rn=xn/M其中,λ是乘因子,M是模數(shù).前面式子的右端稱為以M為模數(shù)(modulus)的同余式。給定了一個(gè)初值x0(稱為種子)后,計(jì)算出的rn即為(0,l)上均勻分布的隨機(jī)數(shù).隨機(jī)現(xiàn)象的模擬當(dāng)我們需要一系列均勻分布的隨機(jī)數(shù)時(shí),可以按照一54隨機(jī)現(xiàn)象的模擬無論用哪一種方法產(chǎn)生的隨機(jī)數(shù)都存在這樣的問題,必須對它進(jìn)行統(tǒng)計(jì)檢驗(yàn).看看它們是否具有較好的獨(dú)立性和均勻性.一般在計(jì)算機(jī)(或計(jì)算器)及其使用的算法語言中都有隨機(jī)數(shù)生成的命令,它們所生成的隨機(jī)數(shù)都是經(jīng)過檢驗(yàn)并且可用的.這里就不再詳細(xì)介紹檢驗(yàn)的方法了.隨機(jī)現(xiàn)象的模擬無論用哪一種方法產(chǎn)生的隨機(jī)數(shù)都存在這樣的問題,55隨機(jī)現(xiàn)象的模擬C語言中與隨機(jī)數(shù)有關(guān)的函數(shù):randomize(void);初始化x=random(intM);產(chǎn)生0~M之間的隨機(jī)數(shù)x=rand(void);產(chǎn)生0~215-1之間的隨機(jī)數(shù)Matlab中與隨機(jī)數(shù)有關(guān)的函數(shù):Rand(n) n*n個(gè)[0,1]之間均勻分布隨機(jī)數(shù)Rand(m,n)m*n個(gè)[0,1]之間均勻分布隨機(jī)數(shù)randn(n) n*n個(gè)N(0,1)標(biāo)準(zhǔn)正態(tài)分布隨機(jī)數(shù)randn(m,n) m*n個(gè)N(0,1)標(biāo)準(zhǔn)正態(tài)分布隨機(jī)數(shù)隨機(jī)現(xiàn)象的模擬C語言中與隨機(jī)數(shù)有關(guān)的函數(shù):56隨機(jī)現(xiàn)象的模擬2.隨機(jī)變量的模擬利用均勻分布的隨機(jī)數(shù)可以產(chǎn)生具有任意分布的隨機(jī)變量的樣本,從而可以對隨機(jī)變量的取值情況進(jìn)行模擬.(l)離散型隨機(jī)變量的模擬.設(shè)隨機(jī)變量X的分布律為Pr(X=xi)=pi,i=1,2,…,令p(0)=0,p(n)=∑pi,n=1,2,…,將p(n)作為分點(diǎn),把區(qū)間(0,1)分為一系列小區(qū)間(p(n-1),p(n)).對于均勻的隨機(jī)變量R~U(0,l),則有Pr(p(n-1)<R≤

p(n))=p(n)-p(n-1)=pi,n=1,2,…,ni=1隨機(jī)現(xiàn)象的模擬2.隨機(jī)變量的模擬利用均勻分布的隨機(jī)數(shù)可以產(chǎn)生57隨機(jī)現(xiàn)象的模擬由此可知,事件(p(n-1)<R≤

p(n))和事件(X=xn)有相同的發(fā)生的概率.因此我們可以用隨機(jī)變量R落在小區(qū)間內(nèi)的情況來模擬離散的隨機(jī)變量X的取值情況.具體執(zhí)行的過程是:每產(chǎn)生一個(gè)(0,1)上均勻分布的隨機(jī)數(shù)(以后簡稱隨機(jī)數(shù))r,若p(n-1)<r≤

p(n)則理解為發(fā)生事件“X=xn”.于是就可以模擬隨機(jī)變量的取值情況.隨機(jī)現(xiàn)象的模擬由此可知,事件(p(n-1)<R≤p(n))58隨機(jī)現(xiàn)象的模擬(2)連續(xù)型隨機(jī)變量的模擬一般說來,具有給定分布的連續(xù)型隨機(jī)變量可以利用在區(qū)間(0,1)上均勻分布的隨機(jī)數(shù)來模擬.最常用的方法是反函數(shù)法.由概率論的理論可以證明,若隨機(jī)變量Y有連續(xù)的分布函數(shù)F(y),而X是區(qū)間(0,l)上均勻分布的隨機(jī)變量,令Z=F-1(X),則Z與Y有相同的分布.由此,若已知Y的概率密度為f(y),由Y=F-1(X)可得X=F(Y)=∫f(y)dyY-∞隨機(jī)現(xiàn)象的模擬(2)連續(xù)型隨機(jī)變量的模擬一般說來,具有給定分59隨機(jī)現(xiàn)象的模擬是區(qū)間(0,l)上均勻分布的隨機(jī)變量.如果給定區(qū)間(0,1)上均勻分布的隨機(jī)數(shù)ri,則具有給定分布的隨機(jī)數(shù)yi可由方程中解出.ri=F(Y)=∫f(y)dyyi0例當(dāng)需要模擬服從參數(shù)為λ的指數(shù)分布時(shí),由ri=∫λe-λxdy=1-e-λyiyi0可得yi=-(1/λ)ln(1-ri).因?yàn)?1-ri)和ri同為(0,1)區(qū)間上的均勻分布的隨機(jī)數(shù),故上式可以簡化為yi=-(lnri)/λ.隨機(jī)現(xiàn)象的模擬是區(qū)間(0,l)上均勻分布的隨機(jī)變量.如果給定60隨機(jī)現(xiàn)象的模擬反函數(shù)法是一種普通的方法,但當(dāng)反函數(shù)不存在或難以求出時(shí),就不宜于使用了.舍選法是另一種方法,其實(shí)質(zhì)是從許多均勻隨機(jī)數(shù)中選出一部分,使之成為具有給定分布的隨機(jī)數(shù).步驟如下:設(shè)隨機(jī)變量X有密度f(x),又存在實(shí)數(shù)a<b,使Pr(a<X<b)=1.1).選取常數(shù)λ,使λf(x)≤l,x∈(a,b);2).產(chǎn)生均勻的隨機(jī)數(shù)r1和r2,令y=a+(b-a)r1;隨機(jī)現(xiàn)象的模擬反函數(shù)法是一種普通的方法,但當(dāng)反函數(shù)不存在或難61隨機(jī)現(xiàn)象的模擬3).若r2≤λf(y),則令x=y,否則剔除r1和r2,重返步驟2,如此重復(fù)循環(huán),產(chǎn)生的隨機(jī)數(shù)x1,x1,..,xn,服從的概率分布由密度函數(shù)f(x)確定.若不存在上述的有限區(qū)間,可以選擇一個(gè)有限區(qū)間(a1,b1)使得Pr(a1<X<b1)>1-其中是充分小的正數(shù).重復(fù)上面的步驟,所產(chǎn)生的隨機(jī)數(shù)僅會出現(xiàn)較小的誤差.隨機(jī)現(xiàn)象的模擬3).若r2≤λf(y),則令x=y,否則剔62隨機(jī)現(xiàn)象的模擬(3)正態(tài)隨機(jī)數(shù)的模擬,除了可用反函數(shù)和舍選法模擬正態(tài)隨機(jī)變量外,還有兩種常用的方法.坐標(biāo)變換法:設(shè)r1,r2是相互獨(dú)立的均勻隨機(jī)數(shù),令

x1=(-2lnr1)1/2cos(2r2)

x2=(-2lnr1)1/2sin(2r2)則x1,x2是相互獨(dú)立的標(biāo)準(zhǔn)正態(tài)的隨機(jī)數(shù).隨機(jī)現(xiàn)象的模擬(3)正態(tài)隨機(jī)數(shù)的模擬,除了可用反函數(shù)和舍選法63隨機(jī)現(xiàn)象的模擬另一個(gè)方法是利用中心極限定理.設(shè)xi,i=1,2,…,n是n個(gè)相互獨(dú)立的(0,1)上的均勻的隨機(jī)變量,有E(xi)=1/2,D(xi)=1/12,由中心極限定理知 y=(∑xi--)將漸近服從正態(tài)分布N(0,l).因此,取n個(gè)均勻的隨機(jī)數(shù)ri,則有y=(∑ri--)√n/12li=1nn2√n/12li=1nn2隨機(jī)現(xiàn)象的模擬另一個(gè)方法是利用中心極限定理.設(shè)xi,i=1,64隨機(jī)現(xiàn)象的模擬將可看成是標(biāo)準(zhǔn)正態(tài)分布N(0,1)的隨機(jī)數(shù).這里的n應(yīng)取得足夠大,一般取n=10即可.若取n=12,則上式簡化為 z=∑ri-8再由y=x+得到正態(tài)分布N(,2)的隨機(jī)數(shù)y.i=1n隨機(jī)現(xiàn)象的模擬將可看成是標(biāo)準(zhǔn)正態(tài)分布N(0,1)的隨機(jī)數(shù).這65計(jì)算機(jī)仿真舉例出發(fā)時(shí)刻(T)

1:00

1:051:10頻率

0.7

0.2

0.1例趕火車過程仿真一列火車從A站經(jīng)過B站開往C站,某人每天趕往B站乘這趟火車。已知火車從A站到B站運(yùn)行時(shí)間為均值30分鐘、標(biāo)準(zhǔn)差為2分鐘的正態(tài)隨機(jī)變量.火車大約在下午1點(diǎn)離開A站。離開時(shí)刻的頻率分布為計(jì)算機(jī)仿真舉例出發(fā)時(shí)刻(T)1:001:051:166計(jì)算機(jī)仿真舉例

0.1

0.2

0.4

0.3頻率1:34

1:32

1:30

1:28到達(dá)時(shí)刻(T)用計(jì)算機(jī)仿真火車開出、火車到達(dá)B站、這個(gè)人到達(dá)B站情況,并給出能趕上火車的仿真結(jié)果。

引入以下變量:

T1火車從A站開出的時(shí)刻;

T2火車從A站運(yùn)行到B站所需要的時(shí)間;

T3此人到達(dá)B站的時(shí)刻;

0.1

0.2

0.7P(頻率)10

5

0T1(分)這個(gè)人到達(dá)B站時(shí)的頻率分布為:計(jì)算機(jī)仿真舉例0.367計(jì)算機(jī)仿真舉例

T1,T2,T3是隨機(jī)變量,其概率分布為x1=0.7,x2=0.9,y1=0.3,y2=0.7,y3=0.9,開車時(shí)間的仿真測試s1=0;s2=0;s3=0;求概率x=rand(10000,1);fori=1:10000ifx(i)<0.7s1=s1+1;endifx(i)>0.9s3=s3+1;endend[s1/10000,1-s1/10000-s3/10000,s3/10000]計(jì)算機(jī)仿真舉例T1,T2,T3是隨機(jī)變量,其概率68計(jì)算機(jī)仿真舉例T2(分)28303234P(頻率)

0.3

0.4

0.2

0.1

s1=0;s2=0;s3=0;s4=0;x=rand(10000,1);fori=1:10000ifx(i)<0.3s1=s1+1;elseifx(i)<0.7s2=s2+1;elseifx(i)<0.9s3=s3+1;elses4=s4+1;endendend[s1/10000,s2/10000,s3/10000,s4/10000]人到達(dá)時(shí)刻仿真測試計(jì)算機(jī)仿真舉例T2(分)283069計(jì)算機(jī)仿真舉例火車運(yùn)行時(shí)間的仿真測試x=randn(10000,1);fori=1:10000y(i)=30+2*x(i);end趕上火車的仿真結(jié)果s=0;x1=rand(10000,1);x2=rand(10000,1);x3=randn(10000,1);fori=1:10000ifx1(i)<0.7T1=0;elseifx1(i)<0.9T1=5;elseT1=10;endT2=30+2*x3(i);ifx2(i)<0.3T3=28;elseifx2(i)<0.7T3=30;elseifx2(i)<0.9T3=32;elseT3=34;endifT3<T1+T2s=s+1;endend[s/10000]計(jì)算機(jī)仿真舉例火車運(yùn)行時(shí)間的仿真測試趕上火車的仿真結(jié)果if70Chap8離散事件系統(tǒng)仿真前面討論的系統(tǒng),其狀態(tài)變量的取值是連續(xù)變化的(時(shí)間上可以連續(xù)也可以離散),這類系統(tǒng)的仿真稱為連續(xù)系統(tǒng)仿真?,F(xiàn)開始討論另一類性質(zhì)完全不同的系統(tǒng),其狀態(tài)只是在離散時(shí)間點(diǎn)上發(fā)生變化,且這些離散時(shí)間點(diǎn)一般是不確定的,稱為離散事件系統(tǒng)仿真。例如單人理發(fā)館系統(tǒng),設(shè)上午9點(diǎn)開門,晚上11點(diǎn)關(guān)門,顧客的到達(dá)時(shí)間一般是隨機(jī)的,為每個(gè)顧客服務(wù)的時(shí)間長度也是隨機(jī)的。描述該系統(tǒng)的狀態(tài)是服務(wù)臺的狀態(tài)(忙或閑)、顧客排隊(duì)等待的隊(duì)長。顯然這些狀態(tài)變量的變化也只能在離散的隨機(jī)時(shí)間點(diǎn)上發(fā)生。類似的如訂票系統(tǒng)、庫存系統(tǒng)、加工制造系統(tǒng)、交通控制系統(tǒng)、計(jì)算機(jī)系統(tǒng)等。由于離散事件系統(tǒng)固有的隨機(jī)性,對這類系統(tǒng)的研究往往十分困難,經(jīng)典的概率及數(shù)理統(tǒng)計(jì)理論、隨機(jī)過程理論雖然為研究這類系統(tǒng)提供了理論基礎(chǔ),并能對一些簡單系統(tǒng)提供解析解,但對工程實(shí)際中的大量系統(tǒng),惟有依靠計(jì)算機(jī)仿真才能提供較為完整的結(jié)果。8.1基本概念Chap8離散事件系統(tǒng)仿真前面討論的系統(tǒng),其狀態(tài)變量的取711、實(shí)體實(shí)體是描述系統(tǒng)的三個(gè)基本要素之一,在離散事件系統(tǒng)中的實(shí)體可分為兩大類:臨時(shí)實(shí)體及永久實(shí)體。在系統(tǒng)中只存在一段時(shí)間的實(shí)體叫臨時(shí)實(shí)體。永久駐留在系統(tǒng)中的實(shí)體稱為永久實(shí)體。臨時(shí)實(shí)體按一定規(guī)律不斷地到達(dá)(產(chǎn)生),在永久實(shí)體作用下通過系統(tǒng),最后離開系統(tǒng),整個(gè)系統(tǒng)呈現(xiàn)出動態(tài)過程。2、事件

事件是引起系統(tǒng)狀態(tài)發(fā)生變化的行為。從某種意義上講,離散系統(tǒng)是由事件來驅(qū)動的。如,理發(fā)館系統(tǒng)中,可以定義“顧客到達(dá)”為一類事件,由于顧客的到達(dá),系統(tǒng)的狀態(tài)將發(fā)生變化—服務(wù)員可能從閑變忙(如果無人排隊(duì)),或排隊(duì)的隊(duì)長會增加。類似的,可以定義服務(wù)開始事件、服務(wù)結(jié)束事件。在一個(gè)系統(tǒng)中,往往有許多類事件,而事件的發(fā)生一般與某一類實(shí)體相聯(lián)系,有些事件的發(fā)生還可能引起別的事件的發(fā)生,或是另一類事件發(fā)生的條件。為了實(shí)現(xiàn)對系統(tǒng)中事件進(jìn)行管理,仿真模型中必須建立事件表,表中記錄每一發(fā)生了的或?qū)⒁l(fā)生的事件的類型和發(fā)生時(shí)間,以及與該事件相聯(lián)的實(shí)體的有關(guān)屬性等等。1、實(shí)體實(shí)體是描述系統(tǒng)的三個(gè)基本要素之一,在離散事件系723、活動離散事件系統(tǒng)中的活動,通常用于表示兩個(gè)可以區(qū)分的事件之間的過程,它標(biāo)志著系統(tǒng)狀態(tài)的轉(zhuǎn)移。如前例中,顧客的到達(dá)事件與該顧客開始接受服務(wù)事件之間可以稱為一個(gè)活動(排隊(duì)活動),該活動使系統(tǒng)的狀態(tài)(隊(duì)長)發(fā)生變化。4、進(jìn)程進(jìn)程是由若干個(gè)有序的事件及若干有序活動組成,一個(gè)進(jìn)程描述了它所包括的事件及活動間的相互邏輯關(guān)系及時(shí)序關(guān)系。如顧客到達(dá)、經(jīng)過排隊(duì)、接受服務(wù)、服務(wù)完畢后離去可稱為一個(gè)進(jìn)程。進(jìn)程排隊(duì)活動服務(wù)活動顧客到達(dá)事件服務(wù)開始事件服務(wù)結(jié)束事件3、活動離散事件系統(tǒng)中的活動,通常用于表示兩個(gè)可以區(qū)分735、仿真鐘仿真鐘用于表示仿真時(shí)間的變化。在連續(xù)系統(tǒng)仿真中,將連續(xù)模型進(jìn)行離散化而成為仿真模型時(shí),仿真時(shí)間的變化基于仿真步長的確定,可以是定步長也可以是變步長,稱為時(shí)間步長法。對于離散事件系統(tǒng)而言,其狀態(tài)本來就只在離散時(shí)間點(diǎn)上發(fā)生變化,因而不需要進(jìn)行離散化處理。但是由于引起狀態(tài)變化的事件發(fā)生時(shí)間的隨機(jī)性,仿真鐘的推進(jìn)步長則完全是隨機(jī)的,所以說仿真模型中時(shí)間控制部件必不可少,應(yīng)按一定規(guī)律來控制仿真鐘的推進(jìn)。8、統(tǒng)計(jì)計(jì)數(shù)器連續(xù)系統(tǒng)仿真的目的是要得到狀態(tài)變量的動態(tài)變化過程并由此分析系統(tǒng)的性能。離散事件系統(tǒng)的狀態(tài)隨事件的不斷發(fā)生也呈現(xiàn)出動態(tài)變化的過程,但仿真的目的主要不是要得到這些狀態(tài)是如何變化的。由于狀態(tài)的變化是隨機(jī)的,某一次仿真運(yùn)行得到的狀態(tài)變化過程只不過是隨機(jī)過程的一次取樣。如果進(jìn)行另一次獨(dú)立的仿真運(yùn)行所得到的狀態(tài)變化過程可能完全是另一種情況。所以它們只有在統(tǒng)計(jì)意義下才有參考價(jià)值。在前例中,由于顧客到達(dá)的時(shí)間間隔具有隨機(jī)性,服務(wù)員為每個(gè)顧客服務(wù)的時(shí)間長度也是隨機(jī)的,因而在某一時(shí)刻,顧客排隊(duì)的隊(duì)長或服務(wù)臺的忙閑情況完全是不確定的,在分析該系統(tǒng)時(shí),感興趣的是系統(tǒng)的平均隊(duì)長、顧客的平均等待時(shí)間或服務(wù)員的利用率等。所以在仿真模型中,需要有一個(gè)統(tǒng)計(jì)計(jì)數(shù)部件,以便統(tǒng)計(jì)系統(tǒng)中的有關(guān)變量。5、仿真鐘仿真鐘用于表示仿真時(shí)間的變化。在連續(xù)系統(tǒng)仿真748.2仿真鐘的推進(jìn)離散事件系統(tǒng)仿真的仿真鐘推進(jìn)方法有兩種:一種是按下一最早發(fā)生事件的發(fā)生時(shí)間推進(jìn),稱為事件調(diào)度法,亦稱為事件步長法;另一種是固定增量推進(jìn)法。8.2仿真鐘的推進(jìn)離散事件系統(tǒng)仿真的仿真鐘推進(jìn)方法有兩75事件步長法事件步長法是以事件發(fā)生的時(shí)間為增量,按照事件發(fā)生的時(shí)間順序,一步一步地對系統(tǒng)的行為進(jìn)行仿真,直到預(yù)定的時(shí)間結(jié)束為止。在多數(shù)隨機(jī)系統(tǒng)中,可以有多種性質(zhì)的事件發(fā)生,通常按照發(fā)生時(shí)間的先后順序逐個(gè)處理,換句話說,首先處理發(fā)生時(shí)刻距初始時(shí)刻最短的事件,這種處理方法稱為是最短時(shí)間的事件步長法。事件步長法事件步長法是以事件發(fā)生的時(shí)間為增量,按照事件發(fā)生的76事件步長法初始狀態(tài)事件步長加1在當(dāng)前步長內(nèi),考察分析,計(jì)算和記錄系統(tǒng)的活動仿真時(shí)間到否?仿真結(jié)束輸出結(jié)果是否事件步長法初始狀態(tài)事件步長加1在當(dāng)前步長內(nèi),仿真時(shí)間到否?仿77事件步長法事件步長法與時(shí)間步長法的主要區(qū)別是:(1)事件步長法與時(shí)間步長法都是以時(shí)間為增量來考察系統(tǒng)狀態(tài)的變化.但在時(shí)間步長法中,仿真時(shí)鐘以等步長前進(jìn),而在事件步長法中,仿真時(shí)鐘的步長取決于事件之間的間隔.(2)時(shí)間步長法在一個(gè)步長內(nèi),認(rèn)為系統(tǒng)所處的狀態(tài)相同,因而所選步長的大小將影響仿真的精度.而在事件步長法中,每個(gè)事件的發(fā)生均有確切的時(shí)刻,不需要人為地選取步長,步長的大小對仿真精度影響較小.事件步長法事件步長法與時(shí)間步長法的主要區(qū)別是:(1)事件步長78事件步長法(3)時(shí)間步長法每前進(jìn)一個(gè)步長就要對整個(gè)系統(tǒng)進(jìn)行一次全面考察,即使?fàn)顟B(tài)沒有發(fā)生變化時(shí)也要掃描,而事件步長法只是在某一事件點(diǎn)上判斷和比較事件是否出現(xiàn).因此,一般地講,當(dāng)判斷比較的數(shù)目較大時(shí),用時(shí)間步長法可以節(jié)省用機(jī)時(shí)間,而當(dāng)相繼兩個(gè)事件出現(xiàn)的平均間隔較長時(shí),更適合于用事件步長法.事件步長法(3)時(shí)間步長法每前進(jìn)一個(gè)步長就要對整個(gè)系統(tǒng)進(jìn)行一79事件步長法事件表法的基本思路事件表法的主要思路是將系統(tǒng)的仿真過程看成一個(gè)事件點(diǎn)序列,根據(jù)事件出現(xiàn)的時(shí)序,用一個(gè)稱之為事件表的表格來調(diào)度事件執(zhí)行的順序.對于那些當(dāng)前需處理的事件,列入事件表中,從中取出最接近的事件進(jìn)行處理,處理完畢后自動退出事件表.在處理當(dāng)前事件的過程中,往往又會產(chǎn)生一個(gè)后繼事件,因此,必須預(yù)測出這一后繼事件的出現(xiàn)時(shí)間,并將它列入事件表中.事件步長法事件表法的基本思路事件表法的主要思路是將系統(tǒng)的仿真80事件步長法-例子例1.收款臺前的排隊(duì)過程的仿真。

考慮一個(gè)收款臺的排隊(duì)系統(tǒng)。某個(gè)雜貨店只有一個(gè)收款臺,顧客的到達(dá)時(shí)間時(shí)服從均值為4.5的負(fù)指數(shù)分布,每一個(gè)顧客的服務(wù)時(shí)間服從均值為3.2,方差為0.8的正態(tài)分布。這里時(shí)間的單位是分鐘,且服務(wù)的時(shí)間不取負(fù)值.試對收款臺前的排隊(duì)過程進(jìn)行仿真。事件步長法-例子例1.收款臺前的排隊(duì)過程的仿真。81事件步長法-例子收款排隊(duì)系統(tǒng)主控程序圖事件步長法-例子收款排隊(duì)系統(tǒng)主控程序圖82事件步長法-例子負(fù)指數(shù)分布的隨機(jī)數(shù)的產(chǎn)生:

x=-4.5ln(u),u為均勻分布的隨機(jī)數(shù)正態(tài)分布的隨機(jī)數(shù)的產(chǎn)生:

y=3.2+0.8v,v為標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)數(shù)。假設(shè):

開始時(shí)服務(wù)臺前無顧客,顧客在服務(wù)臺前不離去;要求:

對100個(gè)顧客到收款臺繳款排隊(duì)過程進(jìn)行仿真關(guān)心的問題:每個(gè)顧客的平均等待時(shí)間atime,最大隊(duì)長maxl,服務(wù)員的工作效率work,;事件步長法-例子負(fù)指數(shù)分布的隨機(jī)數(shù)的產(chǎn)生:關(guān)心的問題:83事件步長法-例子實(shí)體:服務(wù)員(忙1,閑0),顧客(到達(dá)時(shí)刻ca,服務(wù)時(shí)間cs,等待時(shí)間ct)隊(duì)列(長度lq);事件event:顧客到達(dá)事件1(交款,排隊(duì))服務(wù)結(jié)束事件2(閑忙)事件表:序號事件類型(1、2)發(fā)生時(shí)刻t事件步長法-例子實(shí)體:84事件步長法-例子顧客到達(dá)子程序圖事件步長法-例子顧客到達(dá)子程序圖85事件步長法-例子服務(wù)結(jié)束子程序圖事件步長法-例子服務(wù)結(jié)束子程序圖86事件步長法-例子例:機(jī)器修理系統(tǒng)仿真有m臺機(jī)器,由c個(gè)工人共同負(fù)責(zé)修理,并設(shè):①各臺機(jī)器質(zhì)量相同,機(jī)器的連續(xù)運(yùn)轉(zhuǎn)時(shí)間相互獨(dú)立且服從同一負(fù)指數(shù)分布,平均壽命為1/v(v>0)。②每個(gè)工人技術(shù)相同,且修理時(shí)間相互獨(dú)立并服從同一負(fù)指數(shù)分布,平均修理時(shí)間為1/u(u>0).③修復(fù)后的機(jī)器其壽命分布不變。④機(jī)器停止運(yùn)轉(zhuǎn)每單位時(shí)間的損失費(fèi)為c1元,工人單位時(shí)間的產(chǎn)值為c2元。若機(jī)器的等待時(shí)間為E,工人總的空閑時(shí)間為F,則系統(tǒng)總的損失費(fèi)為S=c1E+c2F試求當(dāng)機(jī)器數(shù)m固定時(shí),為使系統(tǒng)的總損失費(fèi)最小,應(yīng)配備多少工人為最優(yōu)?事件步長法-例子例:機(jī)器修理系統(tǒng)仿真87事件步長法-例子解:采用最短時(shí)間事件步長法進(jìn)行仿真,首先要確定一個(gè)初始狀態(tài)。不妨假定開始時(shí)所有的機(jī)器都正常運(yùn)轉(zhuǎn),工人處于空閑狀態(tài)。設(shè)T為仿真終止時(shí)間。依次仿真計(jì)算修理工人數(shù)C分別取1、2、3、…時(shí)的系統(tǒng)損失費(fèi)。最后根據(jù)系統(tǒng)損失費(fèi)S的極小值來確定最優(yōu)工人數(shù)。根據(jù)以上思想并采用最短時(shí)間事件步長法仿真。事件步長法-例子解:采用最短時(shí)間事件步長法進(jìn)行仿真,首先要確88事件步長法-例子㈡輸入原始數(shù)據(jù)c1,c2,U,V,m,T給出m臺機(jī)器的指數(shù)壽命B(H)=1?結(jié)束F=F+x-K②P=T3/T輸出C,SC=1E=0F=0初始狀態(tài):B(i)=1,i=1,2,…,m;D(j)=0,j=1,2,..,c選取壽命最短的機(jī)器i:H=i,K=A(i)選取最早釋放時(shí)刻的工人j:y=j,x=D(j)x<K?③①F=F+x-K改變第y個(gè)人工的釋放時(shí)刻:D(y)=A(H)機(jī)器由故障釋放改為正常:B(H)=1機(jī)器由正常改為故障:B(H)=0C=C+1K≥T?選取壽命最短的機(jī)器i:H=i,K=A(i)給出機(jī)器修復(fù)時(shí)間仿真時(shí)鐘前進(jìn)一個(gè)步長A(H)=K-1/vLOG(RND(1))給出機(jī)器正常運(yùn)行時(shí)間仿真時(shí)鐘前進(jìn)一個(gè)步長A(H)=K-1/vLOG(RND(1))㈠㈠㈡①②③是否否是是否事件步長法-例子㈡輸入原始數(shù)據(jù)c1,c2,U,V,m,T給出89事件步長法-例子框圖中各標(biāo)識符號含義如下:T:仿真終止時(shí)間m:機(jī)器數(shù)c:工人數(shù)B(i):第i臺機(jī)器所處狀態(tài)A(i):第i臺機(jī)器現(xiàn)在狀態(tài)的當(dāng)前時(shí)刻D(j):第j個(gè)工人修復(fù)機(jī)器的釋放時(shí)刻c1:一個(gè)工人單位時(shí)間的產(chǎn)值c2:一臺機(jī)器單位故障時(shí)間的損失費(fèi)

{B(i)=1機(jī)器正常運(yùn)轉(zhuǎn)0機(jī)器發(fā)生故障事件步長法-例子框圖中各標(biāo)識符號含義如下:{B(i)=190事件步長法-例子U:一個(gè)工人單位時(shí)間平均能修復(fù)的機(jī)器數(shù)V:一臺機(jī)器在單位運(yùn)轉(zhuǎn)時(shí)間內(nèi)發(fā)生故障的平均次數(shù)S:總損失費(fèi)用E:機(jī)器故障時(shí)間累計(jì)F:工人空閑時(shí)間累計(jì)K:最短時(shí)間機(jī)器的當(dāng)前時(shí)刻H:最短時(shí)間機(jī)器對應(yīng)的機(jī)器號L:工人修完機(jī)器的釋放時(shí)刻x:最短釋放時(shí)間工人的當(dāng)前時(shí)刻y:最短釋放時(shí)間對應(yīng)的工人序號事件步長法-例子U:一個(gè)工人單位時(shí)間平均能修復(fù)的機(jī)器數(shù)91事件步長法-例子下表列出了當(dāng)m=86,1/V=500小時(shí),1/U=34小時(shí),c1=3.46元/小時(shí),c2=3.2元/小時(shí)時(shí)的仿真結(jié)果,其中每次預(yù)定仿真時(shí)間為一萬個(gè)小時(shí),連續(xù)仿真五次取其平均值作為仿真結(jié)果。由仿真結(jié)果可知當(dāng)工人數(shù)c≤10時(shí),最優(yōu)工人數(shù)為7.工人數(shù)C2345878910每小時(shí)平均損失E183.0128.976.037.624.59.09.410.215.2事件步長法-例子下表列出了當(dāng)m=86,1/V=50092應(yīng)用舉例-可靠性問題例:一設(shè)備上三個(gè)相同的軸承,每個(gè)軸承正常工作壽命為隨機(jī)變量,其概率分布如表所示.壽命h1000110012001300140015001600170018001900概率50.130.090.120.020.060.050.05任何一個(gè)軸承損壞都可以使設(shè)備停止工作,從有

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論