基于Python实现的智能五子棋游戏设计与实现

智能五子棋游戏

设计要求

使用Python语言,结合博弈树启发式搜索alpha-beta剪枝技术,开发一个人机五子棋博弈游戏

具体要点

  1. 设计一个1515列棋盘,要求自行给出估价函数,按极大极小搜索方法,并采用α-β剪枝技术
  2. 采用人机对弈方式,对弈双方设置不同颜色的棋子,一方走完一步后,等待对方走步,对弈过程的每个棋局都在屏幕上显示出来;
  3. 当某一方在横、竖或斜方向上先有5个棋子连成一线时,该方为赢。

PS

能力有限😢,游戏以玩家执黑先下,且忽略禁手为前提进行设计。

更新记录

  • Version 0.5 :完成初版核心代码,游戏可以正常运行,满足结束游戏的判定*(即横、竖或斜方向上先有5个棋子连成一线)*时,游戏正常结束,但AI思考时间过长,平均时长80s。
  • Version 0.5 _improved
    1. 优化评估函数缩小搜索范围,使得AI更加智能,思考时间更短,平均时长1s;
    2. 优化游戏结束判断,使玩家和AI胜利输出不同文字
    3. AI难度下降,落子效果不佳。
  • Version 1.0
    1. 增加最大搜索深度AI智能程度显著提升,对弈难度提升;
    2. AI思考时间过长,为确保胜利落子速度慢;
  • Version 1.0_beta
    1. 修改权重,对威胁更大的棋子形式赋予更大权重
    2. 修改搜索深度,减少思考时间;
    3. 增加连续棋子情况的判断,从而判断棋形,使AI具有更优的落子选择;
    4. 修改评价函数,适应前面的更改;
    5. 从运行结果来看效果不佳,智能程度不如v1.0版本,落子选择不佳。
  • Version 1.5
    1. 基于v1.0版本,优化落子位置判断,避免用户选择落子在已有棋子的位置;
    2. 优化获取当前棋局合法移动位置的函数,缩短AI思考时间,平均时长40s,基本保持AI智能程度不变,对弈难度不降低。
  • Version 2.0史诗级重大更新
    1. 增加GUI界面用户选择落子位置方式改为鼠标点击,对弈过程更直观易读;
    2. 保持原有AI智能程度,难度适中,测试中暂未出现无厘头的落子情况。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨果同学的编程之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值