需要金币:2000 个金币 | 资料包括:完整论文 | ||
转换比率:金额 X 10=金币数量, 例100元=1000金币 | 论文字数:16798 | ||
折扣与优惠:团购最低可5折优惠 - 了解详情 | 论文格式:Word格式(*.doc) |
摘要:围棋,一种双人对抗的棋类游戏,十分的具有谋略性意义。近年来谈起人工智能,我们首先想到的应该就是围棋了,因为在2016的时候,在当时的人工智能圈和围棋圈发生了一件大事,谷歌的AlphaGo战胜了当时人类的最强棋手李世石,人工智能一时名声大噪,而普通百姓之间也一时间都在讨论着人工智能的话题。由于从小也学过围棋,再加上对于人工智能的爱好,所以我决定开发一个基于Java的围棋对弈系统。本系统采用JAVA中的Swing以及AWT组件来开发本系统的GUI,只需要使用少量的代码就可以利用Swing通用、灵活的功能和模块化组件来创建优雅的用户图形界面。游戏主要实现人机对战和玩家对战两个功能,人机对战中设置不同的难度等级,可以让用户根据自身的需求合理的选择与自己相符的电脑AI。本系统采用极大极小值搜索算法和Alpha-Beta剪枝算法方法,设计并实现了围棋AI的模块与功能,研究了围棋在电脑上的局面表示,走棋过程中走法生成和局面评估、博弈树搜索等一系列问题。通过本课题研究,对增强我们自己自身的思维逻辑能力,对于人工智能的研究也具有重要意义、价值。本次设计让我对算法的研究更加深入,同时对我未来研究人工智能方面也有很大的帮助。 关键词:围棋游戏,java,极大极小值搜索算法,Alpha-Beta剪枝算法
目录 摘要 Abstract 第1章 绪论-1 1.1 背景-1 1.2 国内外研究现状-3 1.3 系统建设目标-5 1.4 开发的意义-5 1.5 论文的组织结构-6 第二章 围棋对弈系统的需求分析-7 2.1 围棋系统概述-7 2.1.1 围棋定义-7 2.1.2 围棋的规则-9 2.2 围棋和Java的关系-9 2.3 极大极小值搜索算法-10 2.4 Alpha-Beta剪枝算法-11 第三章 围棋对弈系统的设计与实现-14 3.1 系统需求分析-14 3.1.1 围棋对弈系统流程图-14 3.1.2 开发围棋的任务目的-15 3.1.3 系统总体结构-16 3.2 界面设计-17 3.2.1 用户登陆界面图-17 3.2.2 系统主界面-19 3.3 Alpha-Beta剪枝算法-20 第四章 系统测试-22 4.1 软硬件环境-22 4.2 测试-22 4.3 测试总结-27 第五章 总结-28 参考文献-29 致谢-30 |