五子棋项目的实现

Posted fly0512

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了五子棋项目的实现相关的知识,希望对你有一定的参考价值。

 

 

       在这个学期里花了一个学期的时间零零散散写了一个五子棋项目,项目的实现主要还是根据华南理工大学里面刘瑞的一篇硕士论文《五子棋人工智能算法设计与实现》。其实我也不认识他,但是在知网找相关资料时,就发现这篇的引用率最高也是最通俗易懂的那个,其中也看了一本《数据结构,算法设计》的书,这本书非常的无聊,认真看完了递归就看不下去了。后面都是当字典用,遇到要运用的点,再看这个展开。效果还不错。在整个项目过程中,一开始人机对战用到的是贪婪算法,就是遍历当前整个棋盘,专门写一个评估函数,有多少棋子元在一起就评估多少分,最后根据分数来决定要下子的位置。这就是我们求当前局面最优值的思想,但是在实际的过程中,当我们实现这个算法的时候,只要我们有意三三开局,电脑就会识别不出来,所以这种算法的算力非常的有限。而我们采用博弈树算法,不但可以判断当前局面的最优值,还可以预判在接下来的一段时间内的预测值,虽然本质还是求最优解的过程,但是感觉智能程度已经大大提高。

       开始这个项目首先我们还是先需求分析把要实现的功能先列出来:

技术分享图片

技术分享图片

做完需求分析我们再是实机模块的设计。

 

以上是关于五子棋项目的实现的主要内容,如果未能解决你的问题,请参考以下文章

pygame实现五子棋项目(python项目)

五子棋项目的实现具体的总结

Android 蓝牙对战五子棋项目实现(含人机对战功能)

Java五子棋课程设计

Linux项目实战——五子棋(单机人人对战版)

python小游戏 五子棋小游戏设计与实现