围棋AI之路(一)理论

本文介绍了围棋AI的基本思路,通过从根节点开始,运用UCB公式选择子节点,模拟对局并更新节点收益,不断迭代直至找到最佳决策点。在过程中,当遇到已模拟过的叶节点,会生成新的子节点继续探索。
摘要由CSDN通过智能技术生成
注:本文其实只介绍mogo程序所采用的MC+UCT算法。

记得以前还曾为深蓝击败顶尖人类棋手而暗喜,庆幸自己选择了围棋这一体现人类智慧优越感的游戏。因为人机博弈的设计不外乎两个方面:估值和搜索,而这两者在国际象棋上表现非常好,深蓝仅仅靠的暴力搜索下出的妙手让大师也手足无措,你要不信,去问问卡斯帕罗夫和深蓝对局时什么感受。

然后估值和搜索用在围棋上似乎失灵了,一来无值可估,计算机如何看待局部的好手成了全局的恶手,它又如何学会弃子呢?二来搜索空间太大,计算机算不了多少步,它的基本思路是考虑我方可能下的每手棋,对方的所有可能应对,而对每一个应对,又考虑我方接下来的所有应对……这是一个指数增长的算法,用不了几步就成了一个天文数字。但是围棋中的征子动辄二三十步,摩尔定律十八个月翻一番充其量也就是个平方,追的上指数吗?

深蓝拿下国象,黑石拿下五子棋,唯有围棋几十年来固若金汤,可说是仅存的一片乐土了。我也曾经坚信,除非基础理论出现重大变革,否则计算机在围棋上战胜人类是痴人说梦。然后这个信念随着2007年mogo的出现,动摇了。确切的说,我的信念是在前几天和mogo下过几盘棋后动摇的。

直到昨天我才好好研究了一下mogo所用的算法,心中狂喜,我为这样天才的想法而叫好,我不再为信念动摇而悲伤了,反正我业余玩玩,总也玩不过职业的。等到计算机真的攻下围棋,我就叛变,何况我的主业本就是计算机。

话说我闻道欣喜之余,总想找个人去传道,我可怜的妻子,没有半点程序基础的人,就成了第一个受害者,在她理解了我的倾述欲望后,问我:“要多久?”我想了想,坚定的回答:“十分钟。”

一个真正天才的想法只是常人没想到而已,它本身不会很复杂的,因此我觉得十分钟足矣。

MC方法
我先介绍蒙特卡罗(即MC)方法,这是一个赌城的名字,Monte Carlo,位于摩纳哥。这个方法与赌博有关,如果你愿意,你也可以把它叫做拉斯维加斯方法,或者麻糕方法,没听过麻糕?那么插播一个笑话:

a:听到一特好听的歌,歌词只记得是“一个芝麻糕,不如一针细”,求歌名啊!
b:你可知Macau,不是我真姓……-_-!


为了启发她使用MC方法,我从
  • 4
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 31
    评论
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值