上传者: sheziqiong
|
上传时间: 2022-07-20 16:02:49
|
文件大小: 14.61MB
|
文件类型: ZIP
资源包含文件:word+任务书+答辩PPT+演示视频+项目源码及可执行exe文件+项目截图
(1)每当玩家落子时,读入当前棋局,存储在二维数组中,同时读入玩家落子位置,存入玩家的vector中;调用监测函数,判断当前玩家一方是否获胜,若没有获胜,再进行后续的检索步骤。
(2)采用α-β剪枝算法开始遍历构建当前棋局的搜索博弈树,根据落子点周围的情况与上一步落子的位置安排博弈树的检索遍历顺序与范围,尽可能小地压缩检索时间;同时限制检索层数为3层,避免层数过多引起程序运行错误。
(3)选取三层以内最优的落子位置进行落子,并将落子位置存入AI的vector中,同时调用监测函数,用以监测AI是否获胜,若没有获胜,则等待玩家进行操作。
(4)若玩家选择悔棋,则从两方的vector中各pop_back一个落子位置,删除对应位置的棋子,再等待玩家进行操作。
详细介绍参考:https://biyezuopin.blog.csdn.net/article/details/124696844