五子棋(含较高级的人机对战)
五子棋(含较高级的人机对战算法)
这是我自己做的五子棋,含有人人对战,人机对战模式,还有悔棋、保存棋局功能。
只要还没有输棋,就可以无限制悔棋。
可以将未下完的棋局保存下来,下次接着下。
?
???????? 五子棋人机对战思路:
我遇到的问题:电脑怎么判断它应该要下棋的位置?
解决思路:
一、
1、建立一个二维数组,该二维数组对应于五子棋棋盘上的每一个位置。
2、我们用一种评分规则,给每一个位置打一个分数,将这个分数保存在二维数组的对应位置上。
3、从二维数组中找到分值最大的位置,那么电脑就在棋盘的对应位置上下棋
?
二、评分规则的优劣很关键,它决定了电脑下棋的智能性如何。
要得到一个较好的评分规则,我们应该从五子棋本身的规则、特征去分析。如:四连,三连,二连 一边四连,一边三连,一边二连等,给每一种情形评价其重要程度,然后给出一个分值保存到二维数组中。
?
?