因为csdn的六子棋比赛才知道六子棋刚刚知道的第一天下午便写了一个六子棋的小程序,也报名参加了比赛不过写这个程序不是用来作弊了,而且它也达不到作弊的水平
暂时这个软件称为ShadowStar ConnectK Chess,可以下K子棋就是包括六子棋、五子棋、井字棋,或者自己定义下法
本来我的想法是做一个树,搜索最佳的线路不过发现太难了。就根据自己的理解写了一个简单的评估函数可以下K子棋,棋力比较差但是可以下棋了还是比较兴奋,如果不注意嘚话还能被它赢了
我是分析六子棋的棋盘怎么做上的每一个点,找出四个角度、两个方向上的棋子分布情况再根据这些情况评分。
现茬网上基本上找不到六子棋的算法网上的五子棋算法很多,不过大多数写的都很繁杂也没有注释。
有两个主要的问题请教一下各位:
1、博弈算法一般的思路是怎样的我想我的思路可能是一种,就是分析每一个点可不可以把线段做为评估的主要对象?比如一条线上棋孓的分布是:--O-X-OO-(O代表白子X黑子)如果分析白子的话就分成两个线段
2、请详细解释一下alpha-beta算法,这个网上有很多可是说的太简单。我只是想知道它的反回值是什么分值还是坐标?或者树的结点第一层怎么来的?
其实有很多问题这两点是我比较困惑的,请各位不吝赐教