蒙特卡洛与围棋
今天看到頭條上有位網友提出了一個蒙特卡洛和圍棋的問題,以為大佬的回答我覺得很有意思,特摘抄與此。
蒙特卡洛算法是20世紀十大最偉大的算法,阿法狗就采用了蒙特卡洛算法。蒙特卡洛樹不是一種算法,蒙特卡洛才是一種算法。
先來個動態圖感受下蒙特卡洛樹:
在五子棋中,因為每一步的選擇點并不多,以當前電腦的計算力可以用窮舉找到最佳下法。
顯然,以當前電腦的計算力,無法對圍棋進行暴力窮舉。
那么,蒙特卡洛算法有什么神奇之處呢?
一、為什么叫蒙特卡洛(蒙特.卡洛)
20世紀40年代美國“曼哈頓計劃”的成員S.M.烏拉姆和J.馮·諾伊曼首先提出的,用馳名世界的賭城—摩納哥的Monte Carlo命名。
二、原理
本質是一種統計方法,即用大量的隨機樣本,以出現概率當作問題的解。
比如計算圓周率π:
顯然上圖1/4圓與正方形的面積比為:
那么,如果在正方形內隨機產生n個點,通過計算這些點和原點的距離,判斷這些點是否在1/4圓內。
在1/4圓內的點數/n = π/4 。即點落在1/4圓內的概率*4 = π。 隨機模擬30000個點,$ \pi$的估算值與真實值相差0.07%.
原來概率與統計可以這么用。
推而廣之,可以計算任意一個積分的值。
關于蒙特卡洛還有許多神奇的應用,請移步
《A Business Planning Example》
《蒙特卡羅(Monte Carlo)模擬的一個應用實例》
《微觀不可預測的交通的蒙特卡羅模擬》
《基于蒙特卡羅數值模擬的大跨橋梁狀態評估》
回到問題上,阿法狗是怎么選擇下一步的呢?
簡單的說
以上2步反復進行,顯然,模擬的次數越多,越有可能得到最優解。
這也就是為什么同樣的zen7軟件,電腦越快、計算時間越久,下法越厲害。
總結
- 上一篇: 【导航链接】计算机科研学习
- 下一篇: 中国旋转开关行业市场供需与战略研究报告