本项目的目的是学习并使用Python实现极大极小值搜索、alpha-beta剪枝以及Zobrist置换表等算法,并将这些算法应用到五子棋AI程序中。
除基于Pygame实现的可视化图形界面外,本项目还实现了一个基于pyautogui的在欢乐五子棋上自动下棋的程序。
pip install -r requirements.txt
运行可视化图形界面
python game.py
运行自动化下棋程序
python auto_play.py
项目具体介绍详见B站:【五子棋AI第一期】从零开始弈!悟!
-
有时在通过图形界面进行人机对战时会出现AI已落子但界面不显示的问题,重启程序有概率可以解决这一问题。这一问题目前在自动化下棋程序中未出现。
-
自动化程序有时会出现实际落子与程序内部模拟落子有偏差的情况,表现是鼠标在落子前会漂移。此问题出现的概率较低。
该项目签署了MIT 授权许可,详情请参阅 LICENSE