UEC比赛总结

上周我和朱岩去日本电气通信大学(University of Electro-Communications, UEC)参加了第9届UEC杯计算机围棋比赛,获得了第二名的成绩和与小林光一九段下让3子棋的资格,由我代替DarkForest摆子体会“肉臂”的感觉,开局稍缓,中盘战斗非常有力,但打劫还是有问题,最后在赢棋的情况下认输了,有点可惜。而Zen同样被让3子赢了五目左右。

这次收获还挺大的,主要是能和诸位做计算机围棋的前辈进行面对面的交流。Zen的作者加藤英树和CrazyStone的作者Remi Coulom给了我很多建议和意见。他们毕竟做了很多年的计算机围棋,经验是非常丰富的,而且非常愿意分享。

DarkForest目前为止的主要问题还在快速走子上,快速走子有误,则最后盘面和初始盘面会天差地别,对最后的胜者估计错误,统计上对胜率的估计也就不准。这样在选定下一招的时候就会有错。UEC的比赛分为两天,第一天我们输给了Zen和CrazyStone,全是快速走子的问题,对Zen的这盘将左边的死棋下成活棋,对CrazyStone的这盘则是在模拟时,未能在每次都让对手点上死活的关键点,导致对大龙的死活判断出了问题,一半模拟认为对手大优,另一半模拟认为己方大优,最后平均下来反而是己方略好,但事实上对手早就赢定了。晚上复盘发现了这个问题,终于在凌晨一点修好了一部分,不过说实在离完全修好,还有很长的路要走。所谓Devil is in the details,就是这个意思,虽然AlphaGo的大框架很简单,但要做到它这个水平,还是要花大量时间,两位一作在计算机围棋上多年的功力在此展现。

快速走子因为是需要快(速度达到微秒级别),神经网络目前还是使不上劲的。至少在Zen和CrazyStone看来,在通过模拟对盘面进行估计这一方面,围棋仍然需要大量的手工规则去解决各种特殊情况。作者们花了五至十年的时间一点一点地收集各种特殊情况,不停地积累和调试规则,并且感叹目前为止都没有好的系统性的解决方案。AlphaGo的文章说的是用大量局部模式加上多类Logistics回归,然而我这里实现出来并不是这样,一些死活和对杀的情况必须要百分之百做对,而Logistics回归输出的则是概率,所以经常有下错的时候。我猜测AlphaGo可能也会有类似的规则,但是文章中似乎并未提及。如果他们的估值网络非常厉害,那这些规则都可以去掉了。但是看他们最新在UCI的演讲,由快速走子和估值网络分别得到的两类胜率似乎都比较重要。

第一天台湾团队的CGI Intelligence在小组赛中七战全胜,最后一局还赢了Zen,但在第二天的淘汰赛中输给了我们。我猜测他们也是基于相似框架的算法,但是DCNN或者说大局观可能有所不及,在模拟盘面方面,则同样有一些特殊情况未能处理。所以导致一开始布局就落后,然后为了获胜而冒险侵入对方领地,却因为计算不够精确而失败。

===========================

棋谱:

第一天 First-day results

第二天 Second-day results

电圣战网上还没有官方的,这个是DF输给小林的一局:http://yuandong-tian.com/densei4_1_en.sgf



Article Comments


Text Annotations

Select text in the article above to add an annotation, or view existing threads below.