李滿枝,王洪濤,張廣路
(海南師范大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,海南 ???571158)
蒙特卡羅法在二重積分中的改進(jìn)算法
李滿枝,王洪濤,張廣路
(海南師范大學(xué) 數(shù)學(xué)與統(tǒng)計(jì)學(xué)院,海南 海口 571158)
應(yīng)用蒙特卡羅方法計(jì)算二重積分,給出算法的詳細(xì)計(jì)算原理和計(jì)算流程步驟,在現(xiàn)有的算法基礎(chǔ)上進(jìn)行改進(jìn),并給出實(shí)例的具體計(jì)算結(jié)果.數(shù)值模擬結(jié)果表明:改進(jìn)的新算法簡(jiǎn)化了計(jì)算過(guò)程,且模擬的精度較高.
蒙特卡羅方法;二重積分;數(shù)值計(jì)算
二重積分的傳統(tǒng)計(jì)算方法要先化成累次積分,再根據(jù)被積函數(shù)的原函數(shù)進(jìn)行計(jì)算,但若原函數(shù)難以求得,則該積分就無(wú)法直接計(jì)算,具有很大的局限性.蒙特卡羅方法為求解二重積分提供了一個(gè)新的計(jì)算方法,該方法利用計(jì)算機(jī)的快速計(jì)算和高精度的特點(diǎn)來(lái)模擬隨機(jī)投點(diǎn)實(shí)驗(yàn),然后通過(guò)概率模型,由數(shù)學(xué)期望的計(jì)算來(lái)得到積分的近似值.
蒙特卡羅方法以隨機(jī)模擬和統(tǒng)計(jì)試驗(yàn)為手段,從隨機(jī)變量的概率分布中,通過(guò)選擇隨機(jī)數(shù)的方法產(chǎn)生一種符合該隨機(jī)變量概率分布特性的隨機(jī)數(shù)值序列,作為輸入變量序列進(jìn)行特定的模擬試驗(yàn)、求解的方法[1-2].在應(yīng)用蒙特卡羅方法求解二重積分時(shí),必須要在包含積分域的矩形區(qū)域中產(chǎn)生非均勻的隨機(jī)點(diǎn),然后設(shè)法轉(zhuǎn)換成我們需要的隨機(jī)數(shù)序列并以此作為數(shù)字模擬試驗(yàn)的輸入變量序列進(jìn)行模擬求解[3].
本文在傳統(tǒng)蒙特卡羅方法的基礎(chǔ)上做了改進(jìn),直接在積分區(qū)域中產(chǎn)生隨機(jī)點(diǎn)進(jìn)行計(jì)算,由此簡(jiǎn)化計(jì)算過(guò)程,節(jié)省計(jì)算機(jī)時(shí),提高計(jì)算效率.最后通過(guò)算例驗(yàn)證改進(jìn)算法的可行性與優(yōu)良性.
積分都可以看作是某個(gè)隨機(jī)變量的數(shù)學(xué)期望.因此,在利用蒙特卡羅方法計(jì)算二重積分的時(shí)候,采用了這個(gè)隨機(jī)變量的算術(shù)平均值來(lái)作為其近似值[3-5].
定理 (傳統(tǒng)蒙特卡羅方法)設(shè)f(x,y)為區(qū)域D上的有界函數(shù),
1)取一個(gè)包含D的矩形區(qū)域Ω:a≤x≤b,c≤y≤d;
3)(xi,yi),i=1,2,…,n 是以 g(x,y)為概率密度的隨機(jī)數(shù)列,設(shè)(xi,yi),i=1,2,…,k 為落在 D中的k個(gè)隨機(jī)數(shù),則n充分大時(shí),有
定理的證明參見(jiàn)文[3-4].
定理 (改進(jìn)蒙特卡羅方法)設(shè)f(x,y)為區(qū)域D上的有界函數(shù),
其中AD是區(qū)域D的面積;
2)(xi,yi),i=1,2,…,n是以g(x,y)為概率密度的隨機(jī)數(shù)列,設(shè)(xi,yi),i=1,2,…,n 為落在 D中的n個(gè)隨機(jī)數(shù),則n充分大時(shí),有
3)設(shè)(xi,yi),i=1,2,…,n為落在D中的n個(gè)隨機(jī)數(shù),則n充分大時(shí),有
由積分中值定理,曲邊梯形D(上曲邊為y=b2(x),下曲邊為 y=a2(x))的面積在區(qū)間[a1,b1]內(nèi)任意插入n-1個(gè)分點(diǎn) xi,x0=a1,xn=b1,a1< xi< b1,(,i=1,2,…,n-1),當(dāng)n很大時(shí)即,當(dāng) n 充分大時(shí),AD可近似看作為區(qū)域D的面積.
由上式展開(kāi)得
證畢.
與傳統(tǒng)算法相比,改進(jìn)算法省略了取包含D的矩形區(qū)域Ω的步驟,因此也省略了min(a2(x))=c,max(b2(x))=d 的計(jì)算,省略了判斷隨機(jī)數(shù)落在積分區(qū)域D的步驟,從而大大降低計(jì)算難度,簡(jiǎn)化了計(jì)算步驟.
根據(jù)公式(4)可知
計(jì)算結(jié)果見(jiàn)圖1,圖2,圖3.
在計(jì)算過(guò)程采用線性同余器產(chǎn)生均勻隨機(jī)數(shù),應(yīng)用以上步驟求解二重積分得到較好的結(jié)果.當(dāng)增加抽取樣本次數(shù),計(jì)算量增加,其精度也隨之增加,但是二者不成正比例關(guān)系.從圖3可以看出:當(dāng)隨機(jī)數(shù)的數(shù)目N=990時(shí),誤差d=0.009 254,是最佳數(shù)據(jù).再產(chǎn)生更多的隨機(jī)數(shù),誤差反而較大.所以應(yīng)用蒙特卡羅法求解二重積分存在最優(yōu)數(shù)據(jù)問(wèn)題.總的看來(lái),用蒙特卡羅方法求解的算法描述簡(jiǎn)單,有較高的計(jì)算精度,對(duì)于求解二重積分是個(gè)簡(jiǎn)單有效的方法.
[1]徐鐘濟(jì).蒙特卡羅方法[M].上海:上海科學(xué)技術(shù)出版社,1985.
[2]方再根.計(jì)算機(jī)模擬和蒙特卡羅方法論[M].北京:北京工業(yè)學(xué)院出版社,1988.
[3]尹增謙,管景峰,等.蒙特卡羅方法及應(yīng)用[J].物理與工程,2002,12(3):46-50.
[4]劉輝玲,葉鋒.計(jì)算多重積分的均勻隨機(jī)數(shù)蒙特卡羅法的實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2008,4(8):2289-2291.
[5]黎鎖平.運(yùn)用蒙特卡羅方法求解隨機(jī)性問(wèn)題[J].甘肅工業(yè)大學(xué)學(xué)報(bào),2001,27(2):95-97.
[6]Fishman G S.Monte Carlo-Concepts,Algorithmsand Applications[M].New York:Springer,1996.
[7]Niederreiter H.Random Number Generation and Quasi-Monte Carlo methods[M].CBMS-NSF Regional Conference Seriesin Applied Mathematics,63:SIAM,1992.
[8]Robert C P,Casella G.Monte Carlo Statistical Method(second edition)[M].New York:Springer,2004.
責(zé)任編輯:畢和平
Calculation of Double Integrals Based on Monte Carlo Method
LI Manzhi,WANG Hongtao,ZHANG Guanglu
(College of Mathematics and Statistics,Hainan Normal University,Haikou 571158,China)
In this paper Monte Carlo method was used to calculate double integral.The realization steps,algorithm and the realization of a concrete example were were given.The example shows that the improved Monte-Carlo method has a better computing algorithm and a better accuracy.
Monte Carlo method;double integrals;numerical calculate
O 242
A
1674-4942(2010)03-0242-03
2010-05-17
海南省教育廳高等學(xué)校資助項(xiàng)目(Hjsk2010-41);海南師范大學(xué)青年教師科研資助項(xiàng)目(QN0921);海南師范大學(xué)應(yīng)用數(shù)學(xué)重點(diǎn)學(xué)科項(xiàng)目