一字棋函数说明剖析

上传人:我** 文档编号:116123537 上传时间:2019-11-15 格式:PPTX 页数:9 大小:1.06MB
返回 下载 相关 举报
一字棋函数说明剖析_第1页
第1页 / 共9页
一字棋函数说明剖析_第2页
第2页 / 共9页
一字棋函数说明剖析_第3页
第3页 / 共9页
一字棋函数说明剖析_第4页
第4页 / 共9页
一字棋函数说明剖析_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《一字棋函数说明剖析》由会员分享,可在线阅读,更多相关《一字棋函数说明剖析(9页珍藏版)》请在金锄头文库上搜索。

1、人工智能 一字棋程序说明 主函数main 程序输出当前棋盘并提示判断是否玩家先走步; 然后玩家电脑依次走步; 当当前棋盘能够判断输赢时,游戏结束,否则 直到棋盘下满,游戏结束。 打印函数PrintQP 打印二维数组,即当前棋盘。 玩家走步函数User Input 实现玩家的走步,并判断玩家的走步是否有误, 返回结果。 计算机走步函数AutoDone 该函数是整个程序实现智能的关键所在,函数 中定义两个临时棋盘,一个是给计算机试探走 步使用,另一个是计算机替玩家走步使用,并 结合其他的判断语句和评价函数e_fun,得出一 个最佳的走步坐标,并实现。 评价函数e_fun 采用极大极小函数的思想,该

2、函数对当前棋盘 直接计算count的值。count的值等于所有空格上 都放上计算机的棋子后,计算机的三个棋子所 组成的行、列及对角线的总数减去所有空格上 都放上人的棋子后,人的三个棋子所组成的 行、列及对角线的总数。返回该值。 极大极小策略思想 判定输赢函数IsWin 因为每次导致输赢的只会是当前放置的棋子,输 赢算法中只需从当前点开始扫描判断是否已经 形成三子。对于这个子的八个方向判断是否已 经形成三子。如果有,则说明有一方胜利,如 果没有则继续搜索,直到有一方胜利或者搜索 完整个棋盘。 总结 在人机对垒中,分别编 写了计算机走步函数,人走步函数,评 分函数,判定输赢函数,以及打印函数和主函数。计算机在走步之 前先将当前棋盘复制给临时棋盘,在此我定义了两个临时棋盘,在 临时棋盘1中计算机试探性地走了一步,相应地在临时棋盘2中的相 同位置计算机帮人走了一步,最后计算机再将临时棋盘2送入评价函 数,并记录评分。重置临时棋盘1和2,依次对所有空缺位置进行试 探。 本次设计在对极大极小分析法理解的基础之上,结合自己的一些 想法编写而成,在程序实现初期,出现了很多BUG,例如计算机不 能准确地判断对自己构成危险的走步,还有就是计算机在可以获胜 情况下,没有走对棋子等等。还好这些问题在接下来对程序的不断 完善中得以解决。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号