楼主:
Django (Cython)
2016-03-14 21:02:53这几天看来看去似乎最多篇文章都是想要针对打劫来突破
不过很少人讨论征子...我个人觉得这可能是一个突破点
(其实我觉得#1MveEG8q 这篇内文和推文有些跟我想法就有点相似...)
为什么会觉得征子是一个突破点呢
因为他是一个手数很长的单行道
以前AI用的Alpha-Beta系列算法和现在的MCTS算法
如果没有特别去补这块 可能都会碰到难题
Alpha-Beta系列其实本质上是穷举 征子征到棋盘对面要二三十手
要穷举这么多手不太可能 只能穷举到一半
然后用审局函数(类似形势判断的意思)判定现在盘面
但是没有特别给电脑征子的知识的话 这个下到一半的征子恐怕电脑是看不懂谁死谁活的..
至于MCTS为什么会有问题呢
就如上面说的 他是一个手数很长的单行道
假设我(电脑)是白方 黑方一直跑 我每一手都只有一个著点可以继续征(没引征点的话)
中间只要我一手下错 黑方就跑掉了
反过来说也是 只要被征方一手没跑 就马上被吃了
而MCTS是靠(大量)随机下子模拟棋局的话
相对于根本没有标准答案的序盘
可能有不同手筋/不同转换余地/局部手顺没这么长的中盘
征子你要电脑连续随机下30手都下在"标准答案"的地方是很困难的
或者可以说 我随机模拟一盘 刚好模拟到这个正确结果的机率小到趋近于0
就算模拟到了那样本数也微不足道
当然还有一招是从职棋的谱中自然习得
但是职棋的谱又不可能真的把征子征到棋盘底死给你看
电脑怎么知道被征掉的那方不跑是因为会跑到最后被吃掉?
怎么知道征掉别人的那方不提掉是因为对方不可能跑得掉?
所以说征子的确是大有可能需要特别写规则去照顾的..
当然我们是希望这种人类的"特别干涉"越少越好
我们不会特别去教电脑下什么定石什么手筋
这样case by case的去教不但根本教不完而且可能根本反效果
但至少初阶的程式不特别照顾征子的话一定会爆炸
这种特别喂给电脑的知识叫domain knowledge
其实靠随机模拟的MCTS一开始可能就需要一些基本的domain knowledge 不然会很恐怖
例如至少要教他有两个眼的大龙不可以去自填
不然一方下到形势大好结果把单官填完开始填自己眼位自杀..这样模拟的结果根本没意义
(而且这样电脑怎么知道什么时候一盘棋是下完了???)
嗯...回到一开始说的目的 当然我相信AlphaGo一定有做好面对基本征子的准备
(连我都知道征子是个常见的困扰 他们怎可能不知道...)
补强这块的算法可能也比初阶的程式采取的方案更完备
不过如果变得更复杂
例如带有征子的攻杀
或是引征又复合其他手筋的情况
或许alphago会产生很大的困扰
当然其他手数长的(对人类而言的)单行道 我也觉得都可以试试
征子对电脑的难题总归一句就是 有手数长的唯一解 但是人类解答非常轻松 电脑很困难
所以才要特别解决
其他棋型有手数长的单行道的话 恐怕一般人类也不是这么容易看清
但是职棋应该是有机会得多...
(P.S.其实我觉得中盘阿法狗那些莫名其妙的着手也是跟单行道有关...虽然人类
看得很明白我都应对你这些来闹的着手都没有用 但是对电脑而言你只要中间一手下错
我就出棋逆转了 所以判断自己劣势的时候就会来搞这些地方
就战略来讲是对的(落后要搞棋)
只是战术上来讲
他选择了随机模拟时对手有可能下错 但实际上人类不可能应错的点
所以那些棋就人的眼光看起来很可笑 但我不觉得这是bug)
作者:
aaaba (小强)
2016-03-14 21:11:00印象中rollout有避免被吃子的policy
作者:
ilw4e (可以吃吗?)
2016-03-14 21:28:00手数长的唯一解对人类来说就是区域的穷举法,这人脑有优势
作者:
birdy590 (Birdy)
2016-03-14 21:31:00mcts不是随机下子 所以这结果无法预测
作者:
pichu215 (用红茶浇花)
2016-03-14 21:40:00想看alphaGO下大雪崩定石的各种变化...
作者:
hanmas 2016-03-14 21:43:00ladder是他神经网络的基本参数 审盘时就直接算玩死活了论文附表有写
作者:
zeat (L.)
2016-03-14 21:46:00古力讲第三盘提到的活征不知道alphago会不会
下大雪崩真的会累死棋士 XD 可以试试看啦 也要阿发师愿意应才行
作者:
zeat (L.)
2016-03-14 22:02:00说不定alphago遇到大雪崩或大斜千变这种棋都会选简单定型的变化(OS:谁跟你算到死
作者:
MicroB ( )
2016-03-15 01:43:00AG的模拟走子网络有3段 不是光随机乱下的李世石是和几百个能高速运算的三段对决