看板 GO 關於我們 聯絡資訊
※ 引述《zeat (Lucifer)》之銘言: :   有個網友問了我如何調整mogo的等級, 其實我也不知 : 道XD 但基於好奇心, 我去找了些資料:) :   如同那位網友所講, 我參考了mogo的網頁發現了下面 : 這個說明. : "What is the level of MoGo?": all depends on the time you give to it. With : very little time, it can be no better than random, and with infinite time, it : plays perfectly! You are surely in between :-). Seriously, if it is too : strong, give it less time. If it is too weak, buy a faster computer, give it : more time, or play with handicap. Anyway, we did our best, sorry if it is : still too weak :-p. On a fast computer it should be at about 3 dan on 9x9 and : 3 kyu on 19x19. :   的確mogo並沒有設定level, 我看過整個網頁(幾乎啦 : XD)我發現mogo所強調的是絕對的勝利, 因此並沒有辦法 : 調整他的等級. :   但可以透過給予較短的思考時間或較差的等級的電腦 : , 讓mogo的演算法無法得出最佳解. (嗯, 就像我們跟mogo : 打架時,我們拿槍mogo拿刀... 嗯, 有點賤XD) :   為何會如此呢? 我猜想是為了學術研究, 我看過mogo : 所採行的演算法簡介. 與一般使用patten模擬人類思考的 : 電腦不同, mogo使用的是一種名為UCT的演算法. 在這種 : 演算法下是無法調整等級的, 因為每一步都會求出最佳解 : . (詳細可以參考http://0rz.tw/VwUWP這篇pdf) :   不過呢, 以上的成立是有個但書的. 本人英文極破( : 升四技二專的統測英文16分(挺), 謎之音:這沒什麼好現 : 的吧╮(╯_╰)╭), 因此我不保證我是否看錯, 看漏... :   為此發文就是希望可以討論XD 不要因為我的錯而誤 : 導了別人 ̄▽ ̄ 很簡單的講一下mogo的程式是怎麼算棋的。 對於一個給定的盤面,它怎麼決定接下來要下哪呢? 基本上是亂下...... 假設黑白兩方一路random下到結束,然後算贏(輸)幾目,把這當做所選的位置的分數。 只這樣亂下一盤基本上沒有意義的,不過如果是成千上萬盤的話就有了。 最後,把所有亂下的局中統計出來最好的點當做下一手的地方。 有點像是我們下子後,算接下來的棋局 只是算哪邊我們通常會有個大概,但是電腦沒有,又不知道怎麼教電腦會 於是乾脆就讓它搜所有空格。 這就是為什麼mogo佈局很怪,又常常會手拔,但是局布又不算弱的原因。 所以給它時間長了,取樣當然會比較準,也比較容易算到較強的手。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.31.173
Jamei:聽起來是很暴力的演算法…… = = 02/28 09:38
monyo:其實是很酷的作法~~ 02/28 11:28
MarioPuzo:酷 也許這是電腦圍棋要打敗人類的最快方式 02/28 11:51
neji12149:真的很暴力的演算= = 02/28 12:37
xhank76:感覺對圍棋的發展跟研究很有幫助... 02/28 12:54
dreamerx:給他串聯兩百台電腦來算算看... 02/28 13:30
ilw4e:蠻有意思的 圍棋程式難開發就是因為沒辦法建立完整的tree 02/28 15:12
ilw4e:用他那個UCT隨機模擬應該是可以大幅減小資料量 02/28 15:13
microball:嘖嘖 原來是這樣喔 02/28 15:30
microball:那局部跟死活有關的一定會非常強 02/28 15:30
carlcarl:自我進化這樣= =" 02/28 15:31
danielcz:mogo=Monte Carlo go,UCT是剪枝處理的Monte Carlo算法 03/04 12:00