Monte -Karlo integratsiyasi

Fotonika, iqtisodiyot, video o'yinlarni ishlab chiqish va muhandislik kabi son-sanoqsiz sohalar uchun murakkab integrallarni yechish zaruratdir.

Achinarli haqiqat shundaki, ko'plab qiziqarli masalalarda analitik tarzda echib bo'lmaydigan integrallar mavjud, shuning uchun tegishli baholarni topish uchun muqobil raqamli usullarni qo'llash kerak . Shuni ta'kidlash kerakki, Monte -Karlo integratsiyasi kabi raqamli usulni qo'llagan holda, biz integralni "hal qilmaymiz", aksincha, integralning qiymatini to'g'ri baholaymiz. Ko'pgina ilovalar uchun bu nomuvofiqlikni e'tiborsiz qoldirish mumkin, lekin farqni, ayniqsa, muammoning aniqligi qanchalik zarurligini ko'rib chiqishda yodda tutish kerak.

"Monte -Karlo usullari" ning zamonaviy variantini 1940 -yillarning boshlarida Los -Alamos laboratoriyasida kuzatish mumkin, u dastlab yadroviy bo'linish jarayonini modellashtirish, xususan, bo'linadigan materiallarda neytronlarning o'rtacha erkin yo'lini simulyatsiya qilish uchun ishlab chiqilgan. . Neytronlarning diffuziya yo'lini deterministik tarzda hal qilishning o'rniga, statistik namuna olish usuli qo'llanildi va u ajoyib ishladi. O'shandan beri "Monte -Karlo usuli" atamasi qaysi sohada qo'llanilayotganiga qarab keng ma'noga ega bo'ldi. Biroq, Monte-Karloning barcha ilovalari hal qilish qiyin bo'lgan muammoni hal qilish uchun statistik tanlovdan foydalanishning asosiy printsipiga ega .

Monte -Karlo integratori: bashoratchi

Birinchidan, biz Monte -Karlo yordamida integralning kutilayotgan qiymatini o'rganishimiz mumkin. An'anaga ko'ra, g (x) funktsiyasining kutilayotgan qiymatini, ehtimol, uning ehtimollik zichligi funktsiyasiga, f (x) ga ko'paytirish va kerakli mintaqa bo'yicha integralni olish yo'li bilan hisoblash mumkin :

Shu bilan bir qatorda, biz integratsiya chegaralari o'rtasida bir xil taqsimotni qayta -qayta tanlab, kutilgan qiymat uchun Monte -Karlo yaqinlashuvidan foydalanishimiz mumkin.

Ta'kidlanganidek, xi har bir noyob n = 1,2,3 va boshqalar uchun a va b chegaralar orasidagi yagona taqsimotdan olingan qiymatdir . Bu yondashuv f (x) funktsiyasini namuna qiladi va katta sonlar qonunidan birlashtirilgan kutilgan qiymatni toping.

Bir tomondan, 1/ n ko'paytiruvchi koeffitsienti ba'zan 1/ ( n -1) sifatida beriladi, chunki n -namunalar bilan chindan ham n -1 daraja erkinlik bor, lekin n etarlicha katta bo'lsa, 1/ n va 1/( n -1) ahamiyatsiz.

Kutilayotgan qiymat uchun bashoratchining shaklini hisobga olgan holda, integralning bahosini kengaytirish oddiy. Kutilgan qiymat formulasi quyida ko'rsatilganidek, integratsiya chegaralari diapazoniga ko'paytiriladi.

Integral smeta integralning maydoni/hajmini taxminiy topish uchun integratsiyalashuv chegaralari bilan aniqlangan to'rtburchaklar kengligi bilan birga kutilayotgan qiymatni hisoblagichdan foydalanadi.

Biz uni nisbatan oddiy misolda sinab ko'rishimiz mumkin, integralni olamiz:

Analitik yechim taxminan

13.340. Namuna o'lchami n = 200 bo'lgan Monte -Karlo integratsiyasi texnikasini qo'llash uchun biz qisqacha c ++ dasturini yozishimiz mumkin .

Yaqinroq narsani chop etish kerak:

13.28 bahosi kutilgan analitik echimdan uzoq emas

13.34, ayniqsa, faqat n = 200 namuna o'lchami borligini hisobga olsak .

Ammo Monte -Karlo integratsiyasi usuli qanchalik aniq bajarilmoqda? Bunga javob berish uchun biz Monte -Karlo integratsiyalashuvi texnikasiga mos kelmaydigan farqni ko'rib chiqishimiz kerak.

Monte -Karlo integratsiyasi: Variant

Monte -Karlo integratsiyalashuv sxemasining o'zgaruvchanligi tasodifiy o'zgaruvchilar atrofida dispersiyani hisoblashning an'anaviy jarayoniga mos keladi. Biz bir vazifasi ajralmas olib avvalgi sanoq sistemasida bilan davom etsa g (x) , integral kutilmoqda qiymati atrofida zid g (x) berilgan bo'lishi mumkin

Qisqartirish uchun men Monte -Karlo integratsiyalashuvi sxemasiga xos bo'lgan standart og'ish munosabatlarining hosilasini o'tkazib yubormoqchiman. Agar biz g (x) funktsiyasining integralini va E [g (x)] integralning kutilayotgan qiymatini olish belgisini davom ettirsak , standart og'ish munosabati quyidagicha berilishi mumkin.

Bu erda qo'shimcha V atamasi integratsiya chegaralarining umumiy hajmini ifodalaydi. Agar biz a dan b gacha bo'lgan chegaralar orasidagi 1 o'lchovli integralni baholasak , tenglamani quyidagicha yozish mumkin edi.

Ushbu formatdan foydalanib, biz standart og'ish yoki dispersiyani (standart og'ish² = dispersiya) integratsiya bahosi bilan osongina hisoblashimiz mumkin. Xato tenglamasining eng aniq natijalaridan biri shundaki, Monte -Karlo integratsiyalashuv bahosining standart og'ishi namunalar sonining kvadrat ildiziga teskari proportsionaldir.

Shunday qilib, biz taxmin qilingan xatoni kerakli miqdorga kamaytirish uchun namuna hajmini qanchalik ko'paytirish kerakligi haqida tasavvurga egamiz. Masalan, xatoni ikki barobar kamaytirish namunalar sonini to'rt barobar ko'paytirishni talab qiladi!

Xatolarni kamaytirish, ayniqsa, boshqa raqamli integratsiya sxemalariga qaraganda, kechirimli jarayon emas. Biroq, boshqa raqamli usullar ko'pincha o'lchovlilik la'natidanaziyat chekadi , ya'ni siz integralning hajmini oshirganingizda xato funktsiyasi keskin yomonlashadi. Bundan farqli o'laroq, Monte-Karlo integratsiyasi 1/ sqrt (n) xato o'lchovini integral o'lchovlar sonidan qat'i nazar saqlaydi va bu uni yuqori o'lchovli masshtablash uchun ideal qiladi.

Hisoblangan xatoning namuna kattaligiga mutanosibligini ko'rsatish uchun biz avvalgi misolning integralini ishlatishimiz mumkin, shu bilan birga tobora kattalashib borayotgan namunaviy o'lchamlarning standart og'ishlarini hisoblashimiz mumkin. Biz n = 8, 32, 128, 512, 2048 ni hisoblashga harakat qilishimiz mumkin (har safar namuna hajmi 4 barobar ko'payadi ...)

Natijada nima bo'lishi kerak:

Namuna hajmining 4 barobar oshishi kutilganidek, taxminchi xatosining 2 barobar kamayishiga olib keldi!

Variantlarni kamaytirish

Monte -Karlo integratsiyasining asosiy kontseptsiyasi juda sodda va algoritmning ko'pgina o'zgarishlari statistik xatolikni yoki aniq baholash uchun zarur bo'lgan namunalar sonini kamaytirishga mo'ljallangan - bu usullar odatda dispersiyani kamaytirish toifasiga kiradi. Men har bir usul haqida batafsil to'xtalmayman, lekin har xil turdagi optimallashtirish protseduralari haqida tasavvurga ega bo'lsam, ulardan qaysi biri mos kelishini aniqlashga yordam beradi.

Namuna olishning ahamiyati

Ilgari, biz integratsiya chegaralari orasidagi tasodifiy bir xil taqsimotdan namuna oldik. Ko'pincha funktsiyalarda "ahamiyatsiz" ma'lumotlar qiymatlari bo'lgan hududlar mavjud bo'lib, ular integral qiymatining umumiy yig'indisida ahamiyatsiz darajada kichik rol o'ynashi mumkin. Agar biz tanlangan taqsimotni bir xil taqsimotdan, ehtimol qiziqish funktsiyasiga o'xshash ehtimollik zichligi funktsiyasiga moslashtira olsak, biz statistik jihatdan ishonchli integratsiya bahosiga tezroq etib, namuna olish dispersiyasini kamaytira olamiz. Namuna olish uchun sherik funktsiyasini tanlash juda oddiy emas va ba'zida integratsiyalashgan funktsiyani oldindan bilishni talab qiladi.

Tegishli sheriklik ehtimoli zichligi funktsiyasi tanlanganidan so'ng (masalan, p (x) ), xi qiymatlari sherik taqsimotidan tanlanadi va integratsiyalashuv bahosi yangi tanlab olish tarafdorligini hisobga oluvchi ko'paytiruvchi omil yordamida hisoblanadi. Multiplikativ omilni ba'zan muhim vazndeb atashadi . Og'irlikning ahamiyati bir xil bo'lmagan namunalar hali ham taxminni haqiqiy kutilgan qiymatga olib kelishini ta'minlaydi. Muhim tanlovdan foydalangan holda Monte -Karlo bahosining umumiy ifodasi:

Agar biz a ning b ga integratsiyalashuv chegaralaridan foydalangan holda bir xil taqsimot tanlamasidan o'tayapmiz deb hisoblasak, PDF = 1/(max-min) kabi bir xil taqsimotning ehtimollik zichligi funktsiyasidan foydalanib, ifodani yanada soddalashtirishimiz mumkin .

Masalan, quyida berilgan funktsiyani va unga mos keladigan grafikni ko'rib chiqing. Faraz qilaylik, biz x = [0,6] oralig'ida aniq kutilgan qiymatni yoki integratsiya bahosini topmoqchimiz .

Agar biz Monte -Karlo integratsiyasining qo'pol kuchidan foydalansak, x = [0,10] va x = [4,6] diapazonidan olingan namunalar x = [2,4] diapazonidagi ma'lumotni bermaydi . integratsiyasi yuqori. Tasodifiy qiymatlarni tanlab olish uchun yordamchi funktsiya g (x) shakliga mos kelishi kerak , chunki x = [2,4] o'rtasida namuna olish ehtimoli yuqori va tashqariga parchalanadi. Shunday qilib, masalan, m = 3 va ph = 1 bo'lgan oddiy taqsimotdan foydalanishimiz mumkin .

Oddiy Monte -Karlo integratsiyasining ishlashini Monte -Karlo integratsiyasining samaradorligini taqqoslash orqali biz qo'shni funktsiyadan namuna olish xatoni qanday kamaytirishi mumkinligini ko'rsatishimiz mumkin:

Biz xatolarni takrorlashlar sonini hisoblash uchun bosma chiqindidan foydalanishimiz mumkin va biz tanlaymizki, biz hamma hollarda namunaning standart og'ishini kamaytirishimiz mumkin.

Tanlovning ahamiyati-bu ahamiyatsiz mashq, ayniqsa, funktsiyaning birlashtirilgan shakli haqida kam narsa ma'lum bo'lganda. Agar ehtiyotkorlik bo'lmasa, xato portlashi yoki hatto cheksizlikka olib kelishi mumkin.

Stratifikatsiyalangan namuna olish

Stratifikatsiyalangan namuna olish - bu dispersiyani kamaytirishning yana bir usuli, bunda integratsiya hajmi har biri alohida baholanadigan sub -domenlarga bo'linadi. Har bir subdomenning taxminiy bahosi ularning subdomain integratsiyalashuv hajmiga qarab birlashtiriladi. Stratifikatsiyalangan namuna olish , funktsiyaning shakli to'g'risida oldindan hech qanday ma'lumotga ega bo'lmagan holda , har doim tanlov dispersiyasini kamaytirishning foydasiga ega. Optimallashtirilgan tabaqalashtirilgan namuna olish tartibi ma'lum bir cho'qqilar yoki qiymatlarni guruhlash orqali funktsiyani taqqoslanadigan qiymatlarga ega bo'lgan hududlarga rekursiv ravishda ajratishi mumkin. Xuddi shunday, funktsiya tuzilishi to'g'risida oldindan hech qanday ma'lumotga ega bo'lmagan holda, integratsiya hajmini bir xil hajmdagi asarlarga ajratishning sodda yondashuvi.

G (x) funktsiyasi bo'yicha integralning tabaqalashtirilgan namunaviy bahosi :

Bu erda asl namunaviy hajm k sub -domenlarga bo'linadi , bu erda har bir j -subdomainda V_j hajmi va n_j namunalari olinadi. Standart og'ish ifodasi quyidagicha o'zgartiriladi:

Bu erda σ_j - har bir j -subdomain ichidagi namunalarning standart og'ishi.

Qatlamli namuna olishning oddiy misolini quyidagi rasmda qo'llash mumkin, bu erda biz integratsiya diapazonini teng o'lchamdagi beshta mintaqaga ajratamiz (ya'ni x = [0,4], x = [4,8], x = [8 , 12], x = [12,16], x = [16,20]).

Quyidagi kod oddiy Monte -Karlo integratsiyasini tabaqalangan namuna olish bilan taqqoslaydi.

Agar biz har ikkala yondashuvning xatosini tuzadigan bo'lsak, tabaqalashtirilgan namuna olish afzallik beradi.

O'qiganingiz uchun tashakkur - har qanday taklif yoki tuzatish qabul qilinadi! Iltimos, menga mediumCameron@gmail.com elektron manziliga murojaat qiling

Manbalar

  1. Lisovskaya, Vera. Matematik statistika, Chalmers - TMS150, Stoxastik ma'lumotlarni qayta ishlash va simulyatsiya , www.math.chalmers.se/Stat/Grundutb/CTH/tms150/1112/.
  2. Jarosh, Voytsex. "Monte -Karlo ommaviy axborot vositalarida engil transportning samarali usullari." UC, San -Diego, 2008, cs.dartmouth.edu/

Kameron Mcelfresh

UCLAda fanshunoslik bo'yicha doktorlik dissertatsiyasi. Hozirgi vaqtda ekstremal muhitda ishlash uchun materiallarni loyihalashtirishga yordam beradigan modellarni ishlab chiqishga e'tibor qaratilmoqda.