<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 智能計算 > 業(yè)界動態(tài) > 人工智能之蒙特卡羅方法(MCM)

          人工智能之蒙特卡羅方法(MCM)

          作者: 時間:2018-05-08 來源:網(wǎng)絡(luò) 收藏

            提到蒙特卡羅(也有翻譯成“蒙特卡洛”)一詞,人們不禁想到摩納哥的賭城。這兩者之間有必然聯(lián)系么?答案是:Exactly!

          本文引用地址:http://www.ex-cimer.com/article/201805/379559.htm
          人工智能之蒙特卡羅方法(MCM)

            大家想想,賭博跟什么有關(guān)?首先想到的是隨機性和概率性。對,那蒙特卡羅方法就是與概率論和數(shù)理統(tǒng)計有關(guān)。

            提出

            蒙特卡羅方法于20世紀40年代美國在第二次世界大戰(zhàn)中研制原子彈的“曼哈頓計劃”計劃的成員S.M.烏拉姆和J.馮·諾伊曼(計算機之父)首先提出。數(shù)學家馮·諾伊曼用馳名世界的賭城—摩納哥的MonteCarlo—來命名這種方法,為它蒙上了一層神秘色彩。在這之前,蒙特卡羅方法就已經(jīng)存在。1777年,法國數(shù)學家布豐(Georges Louis Leclere de Buffon)提出用投針實驗的方法求圓周率π。這被認為是蒙特卡羅方法的起源。

          人工智能之蒙特卡羅方法(MCM)

            傳統(tǒng)的經(jīng)驗方法由于不能逼近真實的物理過程,很難得到滿意的結(jié)果,而蒙特卡羅方法由于能夠真實地模擬實際物理過程,故解決問題與實際非常符合,可以得到很圓滿的結(jié)果。這也是以概率論和數(shù)理統(tǒng)計理論方法為基礎(chǔ)的一種計算方法,是使用隨機數(shù)(或更常見的偽隨機數(shù))來解決很多計算問題的方法。將所求解的問題同一定的概率模型相聯(lián)系,用電子計算機實現(xiàn)統(tǒng)計模擬或抽樣,以獲得問題的近似解。為象征性地表明這一方法的概率統(tǒng)計特征,故借用賭城-蒙特卡羅命名。該命名既反映了該方法的部分內(nèi)涵,又便于記憶,因此得到人們的普遍接受。

            BTW:MonteCarlo一詞來源于意大利語,是為了紀念王子摩納哥查理三世。蒙特卡羅(MonteCarlo)雖然是個賭城,但很小,估計跟北京的一條街差不多大。

          人工智能之蒙特卡羅方法(MCM)

            MCM概述

            蒙特卡羅方法MCM(Monte Carlo Method),也稱隨機抽樣或統(tǒng)計模擬方法,是二十世紀四十年代中期由于科學技術(shù)的發(fā)展和電子計算機的發(fā)明,而被提出的一種以概率統(tǒng)計理論為指導的一類非常重要的數(shù)值計算方法。是指使用隨機數(shù)(或偽隨機數(shù))來解決很多計算問題的方法。與它對應的是確定性算法。蒙特卡羅方法在金融工程學,宏觀經(jīng)濟學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算)以及之機器學習等領(lǐng)域應用廣泛。

            MCM基本思想

            當所求解問題是某種隨機事件出現(xiàn)的概率,或者是某個隨機變量的期望值時,通過某種“實驗”的方法,以這種事件出現(xiàn)的頻率估計這一隨機事件的概率,或者得到這個隨機變量的某些數(shù)字特征,并將其作為問題的解。

            有一類問題的維數(shù)(變量個數(shù))可能高達數(shù)百甚至數(shù)千,解題難度隨維數(shù)的增加呈指數(shù)增長,這就是所謂的維數(shù)的災難(Curse of Dimensionality)。即使使用速度最快的計算機,傳統(tǒng)的數(shù)值計算方法也難以對付,但蒙特卡羅方法MCM的計算復雜性不再依賴于維數(shù),MCM能很好地用來對付維數(shù)的災難。為提高方法的效率,科學家們提出了許多所謂的“方差縮減”技巧。

            另一類形式與蒙特卡羅方法MCM相似,但理論基礎(chǔ)不同的方法—“擬蒙特卡羅方法”(Quasi-Monte Carlo方法)—近年來也獲得迅速發(fā)展。我國數(shù)學家華羅庚、王元提出的“華—王”方法即是其中的一例。這種方法的基本思想是“用確定性的超均勻分布序列(Low DiscrepancySequences)代替蒙特卡羅方法MCM中的隨機數(shù)序列。該方法對某些問題的求解比蒙特卡羅方法MCM計算速度上提高數(shù)百倍,計算精度上也有很大提高。

            MCM基本原理

            由概率定義知,某事件的概率可以用大量試驗中該事件發(fā)生的頻率來估算,當樣本容量足夠大時,可認為該事件的發(fā)生頻率即為其概率。因此,先對影響其可靠度的隨機變量進行大量的隨機抽樣,然后把這些抽樣值一組一組地代入功能函數(shù)式,確定結(jié)構(gòu)是否失效,最后從中求得結(jié)構(gòu)的失效概率。MCM正是基于此思路進行分析的。

            設(shè)有統(tǒng)計獨立的隨機變量Xi(i=1,2,3,…,k),其對應的概率密度函數(shù)分別為fx1,fx2,…,fxk,功能函數(shù)式為Z=g(x1,x2,…,xk)。

            首先根據(jù)各隨機變量的相應分布,產(chǎn)生N組隨機數(shù)x1,x2,…,xk值,計算功能函數(shù)值Zi=g(x1,x2,…,xk)(i=1,2,…,N),若其中有L組隨機數(shù)對應的功能函數(shù)值Zi≤0,則當N→∞時,根據(jù)伯努利大數(shù)定理及正態(tài)隨機變量的特性有:結(jié)構(gòu)失效概率,可靠指標。

            從MCM的思路可看出,MCM可以回避結(jié)構(gòu)可靠度分析中的數(shù)學困難,不管狀態(tài)函數(shù)是否非線性、隨機變量是否非正態(tài),只要模擬的次數(shù)足夠多,就可得到一個比較精確的失效概率和可靠度指標。特別當變異系數(shù)較大時,與JC法計算的可靠指標相比,結(jié)果更為精確,并且由于思路簡單易于編制程序。

          人工智能之蒙特卡羅方法(MCM)

            MCM主要步驟

            蒙特卡羅方法工作過程可以歸結(jié)為三個主要步驟:

            1)構(gòu)造或描述概率過程

            對于本身就具有隨機性質(zhì)的問題,主要是正確描述和模擬這個概率過程,對于本來不是隨機性質(zhì)的確定性問題,必須事先構(gòu)造一個人為的概率過程,它的某些參量正好是所要求問題的解。即將不具有隨機性質(zhì)的問題轉(zhuǎn)化為隨機性質(zhì)的問題。打個不恰當?shù)谋确?,工作中有困難,要迎著困難上;沒有困難,也要制造困難,再迎著困難上^_^

            2)實現(xiàn)從已知概率分布抽樣

            構(gòu)造了概率模型以后,由于各種概率模型都可以看作是由各種各樣的概率分布構(gòu)成的,因此產(chǎn)生已知概率分布的隨機變量(或隨機向量),就成為實現(xiàn)蒙特卡羅方法模擬實驗的基本手段,這也是蒙特卡羅方法被稱為隨機抽樣的原因。隨機數(shù)是具有概率分布的隨機變量。隨機數(shù)是實現(xiàn)蒙特卡羅模擬的基本工具。隨機數(shù)序列就是具有這種分布的總體的一個簡單子樣,也就是一個具有這種分布的相互獨立的隨機變數(shù)序列。產(chǎn)生隨機數(shù)的問題,就是從這個分布的抽樣問題。在計算機上,可以用物理方法產(chǎn)生隨機數(shù),但價格昂貴,不能重復,使用不便。另一種方法是用數(shù)學遞推公式產(chǎn)生。這樣產(chǎn)生的序列,與真正的隨機數(shù)序列不同,所以稱為偽隨機數(shù)(或偽隨機數(shù)序列)。但經(jīng)過多種統(tǒng)計檢驗表明,偽隨機數(shù)(或偽隨機數(shù)序列)與真正的隨機數(shù)(或隨機數(shù)序列)具有相近的性質(zhì),因此可把它作為真正的隨機數(shù)來使用。

            3)建立各種估計量

            構(gòu)造了概率模型并能從中抽樣后,即實現(xiàn)模擬實驗后,就要確定一個隨機變量,作為所要求的問題的解,稱它為無偏估計。建立各種估計量,相當于對模擬實驗的結(jié)果進行考察和登記,從中得到問題的解。

            通常蒙特卡羅方法通過構(gòu)造符合一定規(guī)則的隨機數(shù)來解決各種實際問題。對于那些由于計算過于復雜而難以得到解析解或者根本沒有解析解的問題,蒙特卡羅方法是一種有效的求出數(shù)值解的方法。

          人工智能之蒙特卡羅方法(MCM)

            MCM工作過程

            在解決實際問題的時應用蒙特卡羅方法主要有兩部分工作:

            1.用蒙特卡羅方法模擬某一過程時,需要產(chǎn)生某一概率分布的隨機變量。

            2.用統(tǒng)計方法把模型的數(shù)字特征估計出來,從而得到實際問題的數(shù)值解。

            從理論上來說,蒙特卡羅方法需要大量的實驗。但求的是近似解,模擬樣本數(shù)越大,實驗次數(shù)越多,所得到的結(jié)果才越精確。但樣本數(shù)增加會帶來計算量的大幅上升。

            MCM估算圓周率

          人工智能之蒙特卡羅方法(MCM)

            利用蒙特卡羅方法可用于,如圖,在邊長為 2r 的正方形內(nèi)作一個半徑為 r 的圓,正方形的面積等于 2r×2r=4r^2,圓的面積等于 π×r×r=πr^2,由此可得出,正方形的面積與圓形的面積的比值為 4:π。假設(shè)向正方形的標靶上隨機投擲飛鏢,如果擊中點在標靶上是均勻分布的,即作為某一點的坐標散布于正方形內(nèi),那么落在正方形內(nèi)的點數(shù) N 與落在圓形內(nèi)的點數(shù) K 的比值接近于正方形的面積與圓的面積的比值,即,N:K ≈ 4:π,因此,π ≈ 4K/N 。用此方法求圓周率,需要大量的均勻分布的隨機數(shù)才能獲得比較準確的數(shù)值。

          人工智能之蒙特卡羅方法(MCM)

            MCM評估圍棋盤面

            我們都知道谷歌DeepMind圍棋程序 AlphaGo和它超越人類的強大計算能力。事實上,蒙特卡羅方法思想也用在了圍棋盤面評估。每個圍棋盤面都有一個“最優(yōu)值”,對應于博弈雙方都采用完美走法的情況下得到的圍棋盤面的最終結(jié)果。對于圍棋已經(jīng)證明,計算這個“最優(yōu)值”的時間至少隨該盤面到終盤之間的步數(shù)呈指數(shù)級數(shù)增長,比如平均200步的話,每步平均增長200倍數(shù)量的可能盤面。從理論上無法得到“最優(yōu)值”,于是人們想到用蒙特卡羅方法思想對整個可能性空間進行某種采樣,然后通過統(tǒng)計估值的方法逼近這個“最優(yōu)值”。這就是2006年提出的一種稱為蒙特卡羅樹搜索的動態(tài)評估方法。

          人工智能之蒙特卡羅方法(MCM)

            現(xiàn)有的蒙特卡羅樹搜索雖然能保證大量采樣的結(jié)果足夠收斂到盤面“最優(yōu)值”,但為達到“足夠收斂”所需的采樣次數(shù)仍然是隨整個可能性空間的規(guī)模指數(shù)級增長。但是在圍棋弈棋系統(tǒng)的實踐中,蒙特卡羅樹搜索在比賽時間受限的情況下確實表現(xiàn)出遠遠超過傳統(tǒng)方法的棋力。最近幾年人們在選擇策略中加入更多和圍棋相關(guān)的專家知識,使得基于蒙特卡羅樹搜索的圍棋弈棋系統(tǒng)水平不斷提高。蒙特卡羅樹搜索成為在完美信息博弈場景中進行決策的一種關(guān)鍵技術(shù),在很多現(xiàn)實世界的應用中有著廣闊前景。

          人工智能之蒙特卡羅方法(MCM)

            MCM應用領(lǐng)域

            越來越廣泛。它不僅較好地解決了多重積分計算、微分方程求解、積分方程求解、特征值計算和非線性方程組求解等高難度和復雜的數(shù)學計算問題,而且在統(tǒng)計物理、粒子輸運計算、量子熱力學計算、空氣動力學計算、核物理、真空技術(shù)、系統(tǒng)科學、信息科學、公用事業(yè)、地質(zhì)、金融工程學、宏觀經(jīng)濟學、生物醫(yī)學、可靠性、計算機科學及之機器學習等廣泛的領(lǐng)域都得到成功的應用。

            MCM發(fā)展歷程

            1)公元20世紀初期,盡管實驗次數(shù)數(shù)以千計,利用蒙特卡羅方法所得到的圓周率π值,還是達不到公元5世紀祖沖之的推算精度。這可能是傳統(tǒng)蒙特卡羅方法長期得不到推廣的主要原因。

            2)計算機技術(shù)的發(fā)展,使得蒙特卡羅方法在最近10年得到快速的普及?,F(xiàn)代的蒙特卡羅方法,已經(jīng)不必親自動手做實驗,而是借助計算機的高速運轉(zhuǎn)能力,使得原本費時費力的實驗過程,變成了快速和輕而易舉的事情。它不但用于解決許多復雜的科學方面的問題,也被項目管理人員經(jīng)常使用。

            MCM優(yōu)點

            1)算法簡單,省卻了繁復的數(shù)學推導和演算過程,使得一般人也能夠理解和掌握;

            2)適應性強,問題的幾何形狀的復雜性對它的影響不大;

            3)速度快,該方法的收斂性是指概率意義下的收斂,因此問題維數(shù)的增加不會影響它的收斂速度;

            4)存貯少,處理大型復雜問題時的存貯單元很省。

            MCM缺點

            如果輸入一個模式中的隨機數(shù)并不像設(shè)想的那樣是隨機數(shù),而卻構(gòu)成一些微妙的非隨機模式,那么采用蒙特卡羅方法求解問題的結(jié)果有可能是錯的。

            MCM與GA比較

            蒙特卡羅方法MCM與遺傳算法GA(請參加公眾號“科技優(yōu)化生活”-(28))等智能優(yōu)化算法有相似之處,都屬于隨機近似方法,都不能保證得到最優(yōu)解等,但它們也有著本質(zhì)的差別。1)層次不一樣,MCM只能稱之為方法,GA則屬于仿生智能算法,比MCM要復雜得多。2)應用領(lǐng)域不同,MCM是一種模擬統(tǒng)計方法,如果問題可以描述成某種統(tǒng)計量的形式,那么就可以用MCM來解決;而GA等則適用于大規(guī)模的組合優(yōu)化問題,以及復雜函數(shù)求最值、參數(shù)優(yōu)化等。

          人工智能之蒙特卡羅方法(MCM)

            結(jié)語

            蒙特卡羅方法MCM也稱統(tǒng)計模擬方法,是以概率統(tǒng)計理論為指導的一類非常重要的數(shù)值計算方法。是指使用隨機數(shù)(或更常見的偽隨機數(shù))來解決很多計算問題的方法。蒙特卡羅方法MCM通過構(gòu)造符合一定規(guī)則的隨機數(shù)來解各種實際問題。在金融工程學,宏觀經(jīng)濟學,計算物理學(如粒子輸運計算、量子熱力學計算、空氣動力學計算)以及人工智能之機器學習等領(lǐng)域應用廣泛。



          關(guān)鍵詞: 人工智能 MCM

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();