最近有空,将网上的各类关于棋类软件(尤其是象棋软件)的编程思路(主要是博弈思路)、算法走马观花的看了一遍。
个人的看法:不排除当今顶级的棋软作者还留有适当的“后手”用于逐渐添加在新版本内的动机,但是,目前的棋软实力估计已接近瓶颈,进一步的工作无非是统计更多的样本而对一些参数进行微调,从而能稍微提高些许能力。
那么,下一步的路在何方?
注意到一个现象:目前的特级大师和棋软作者间的交集似乎不多,仅有的几次“人机大战”似乎也是以表演性质居多。估计有了前几次的结果,更多的特级大师不想一世英名败在计算机手里而望而生畏,估计今后的“人机大战”也会寥寥,国际象棋就是个例子。另外,特级大师中,很少有参与到软件开发;反过来,软件的研发团队中,似乎专业棋手也几乎没有。
如果在目前的象棋联赛中,组织者规定:每个队伍可以有一位计算机选手(当然,队伍的教练可根据实际情况来决定这个名额是由人参加还是计算机参加),但该棋软必须拥有独立的知识产权。其实,既然现在棋软已经在幕后成为了不少专业队的陪练,何必再羞答答地不肯示人,索性走向前台呗。
那么,今后的专业棋手和棋软的融合必将更加紧密,好的棋手和好的编程人员才能创造出更好的象棋软件。
这样,在实力和资金的推动下(相信如果这样,这种联赛最起码在短期内又会增加关注人群和赞助公司),棋软一定会更前一步的发展。
至于很多人担心的如果在计算机的不断穷举下,最后会导致象棋的索然无味,其实也大不必担心。以五子棋为例,当被计算出黑棋必胜时,规则自然会产生一些对先行的“禁手”,围棋的先行贴子、贴目也是一个道理。如果有一天,象棋被算出了红棋必胜,那么在规则上来些红方禁手就足以建立新的平衡。所有的这些,其实对于象棋的发展是有益的!