我们基于α-β剪枝人工智能方法的的中国象棋使用python实现,分为走法计算、评估函数与搜索和UI三部分,并采用历史启发算法进行优化,有着不错的效果。可以实现正常的人机对战,有着普通人的棋力,经过多轮测试,搜索五步的时候,电脑胜率达到80%左右。 (关于代码,my_chess.py里面是对可行走法的搜索,chinachess.py里面是象棋UI的实现,history_heuristic.py里面是历史启发算法优化部分,chess_constants.py是对棋盘、棋子基本单位的定义,my_game.py里面是Alpha-Beta算法的实现。) 我们的中国象棋使用python实现,分为走法计算、评估函数与搜索和UI三部分,并采用历史启发算法进行优化,有着不错的效果。可以实现正常的人机对战,有着普通人的棋力,经过多轮测试,搜索五步的时候,电脑胜率达到80%左右。 (关于代码,my_chess.py里面是对可行走法的搜索,chinachess.py里面是象棋UI的实现,history_heuristic.py里面是历史启发算法优化部分,chess_constants.py是对棋盘、棋子基本单位的定义,my_game.py里面是Alpha-Beta算法的实现。)
1
中国象棋在中国有着悠久的历史,属于二人对抗性游戏的一种。由于用具简单,趣味性强,成为流行极为广泛的棋艺活动。这是一份课程设计,实现中国象棋的代码,可以运行于vs2010上。
2021-11-07 21:19:20 25.08MB 课程 设计MFC C++ 中国象棋
1
中国象棋的代码 java编写的 有详细的描述与解释 对于做课程设计的人很有用
2021-09-30 18:16:48 51KB java chess
1
中国象棋是由两人轮流走子,在战法上遵循古代孙子兵法中的“不战而屈人之兵,善之善者也”的作战思想,以“将死”或“困毙”对方将(帅)为胜的一种二人对抗性游戏。对局时,由执红棋的一方先走,双方轮流各走一招,直至分出胜、负、和,对局即终了。在棋战中,人们可以从攻与防、虚与实、整体与局部等复杂关系的变化中提升思维能力。 一、行棋规定 对局开始前,双方棋子在棋盘上的摆法见右图。 对局时,由执红棋的一方先走,双方轮流走一步。 轮到走棋的一方,将某个棋子从一个交叉点走到另一个交叉点,或者吃掉对方的棋子而占领其交叉点,都算走了一着。 双方各走一着,称为一个回合。 走一着棋时,如果己方棋子能够走到的位置有对方棋子存在,就可以把对方棋子吃掉而占领那个位置。 一方的棋子攻击对方的帅(将),并在下一着要把它吃掉,称为“照将”,或简称“将”。“照将”不必声明。被“照将”的那一方输
2021-06-26 16:58:19 1.11MB 中国象棋 Qt
1
非常齐全的象棋设计材料,包括算法的设计和源代码。还有中国象棋计算机博弈的现状和未来
1
中国象棋代码,参考象眼,AI算法相当给力
2020-01-03 11:41:05 1.89MB 象棋 象眼 AI算法
1
本程序中设计了15个类,包括一个大类和14个小类。小类分别是车马炮象士帅兵(我方)和車馬砲相仕將兵(敌方)共12小类;一个象棋大类。也就是说将每一个棋子都进行了定义。 游戏包含三种棋谱,悔棋、和棋、查看消灭的对方棋子和游戏进行多少回合的修改化操作 缺点:悔棋操作中,有设计上的缺陷,你能发现吗?
2019-12-21 18:57:19 262KB C++课程大作业
1
Python项目案例开发从入门到实战源代码第15章 中国象棋代码.rar
2019-12-21 18:55:56 131KB python
1