java的网络五子棋设计(源码)
本文基于java技术开发了一款网络五子棋游戏,该游戏支持人机对弈和网络对弈两种游戏模式,并具有验证用户身份和保存游戏功能。在人机对弈模式中,通过极大-极小值搜索算法构造一棵棋盘博弈树,利用评估函数对博弈树各个分支进行估值,最后基于Alpha-beta剪枝算法对博弈树进行剪枝优化;在网络对弈模式中,通过Java Socket网络编程技术构建了服务器端和客户端,利用多线程技术,在服务器和客户端之间实现一对多的通信。测试结果表明本系统功能较为完善,性能比较良好,系统运行稳定。
目录
摘要 1
关键词 1
ABSTRACT 1
KEY WORDS 1
引言
1. 选题背景 1
1.1 问题的提出 1
1.2 国内外研究现状 2
1.3 研究目的和内容 2
2. 开发平台及应用技术 2
2.1 ECLIPSE 2
2.2 JAVA SOCKET 2
2.3 MYSQL 3
3. 系统的设计及实现 3
3.1系统框架及流程 3
3.2 数据库设计 4
3.3 人机对弈模式设计 5
3.3.1 人机对弈模式流程图 5
3.3.2 极大极小值算法 6
3.3.3 Alphabeta剪枝算法 7
3.3.4 人机对弈模块程序设计伪代码 7
3.4 网络对弈模式设计 9
3.4.1 网络对弈模式流程图 9
3.4.2 服务器端 9
3.4.3 客户端 10
4. 系统测试 11
4.1 开始界面测试 12
4.2 人机对弈界面测试 12
4.3 网络对弈界面测试 13
4.4服务器端测试 13
5. 不足与展望 14
致谢 14
参考文献: 15
附录 16
基于java的网络五子棋设计
The design of the Gobang network game base *好棒文|www.hbsrm.com +Q: ^351916072^
d on java technology
Student majoring in computer science and technology MING Yue
Tutor LIU Jinding
Abstract:Based on Java technology, this essay designs a Gobang network game. The game supports two kinds of game modes: manmachine game and network game. The game has the function of verifying user identity and saving game information. In the manmachine mode, a chess game tree is constructed by a maximalminimal search algorithm. The evaluation function is used to estimate the branches of the game tree. Finally, the game tree is pruned based on the Alphabeta pruning algorithm. In the network game mode, the server and client are built using the Java Socket network programming technology. Using the multithreading technology, onetomany communication between the server and the client is realized. The test results show that this system is stable and fully functional.
Key words: the Gobang game; the maximalminimal search algorithm; the Alphabeta pruning algorithm; network programming
引言:计算机博弈[1],即为人工智能的一个分支[2],是近年来一个比较火热的研究方向,主要以研究棋类博弈来探索“智力”效果。比如谷歌的AlphaGo博弈技巧关键在于其使用的深度卷积神经网络的整体设计和神经网络的训练过程[3,4]。与围棋一样,五子棋也属于很典型的博弈游戏。作为一种益智小游戏,五子棋不仅适宜幼儿开发脑力,而且适合老年人修身养性,所以研究五子棋博弈算法不仅可以提高逻辑思维能力,而且可以享受游戏的乐趣。本文旨在基于Java技术设计一款既可以支持人机对弈,又能支持网络对弈的五子棋小游戏。
选题背景
1.1 问题的提出
计算机博弈游戏是一个极具挑战性和趣味性的研究领域。它使用的核心技术是博弈搜索算法,这类搜索算法是人工智能领域的重要研究基础,很多实际问题都可以利用这种算法解决。研究五子棋搜索算法的重点就是如何让电脑获利最大,虽然网上已经有了很多效率比较高的成熟算法,但是还没有哪一个算法能保证绝对获胜。到目前为止,效率较高的人机对弈算法策略主要有两种。
一种是使用分数表来评价整个棋局,评估哪个位置得分最高。一般而言,棋盘大小是15*15,那么一个棋盘上五元组(五子相连)就有572个。棋盘上的一个棋位属于多个五元组,根据一个五元组里的黑白棋子数量的不同,给这个五元组计算分数,这些五元组的分数和就是这个棋位的总分数。
目录
摘要 1
关键词 1
ABSTRACT 1
KEY WORDS 1
引言
1. 选题背景 1
1.1 问题的提出 1
1.2 国内外研究现状 2
1.3 研究目的和内容 2
2. 开发平台及应用技术 2
2.1 ECLIPSE 2
2.2 JAVA SOCKET 2
2.3 MYSQL 3
3. 系统的设计及实现 3
3.1系统框架及流程 3
3.2 数据库设计 4
3.3 人机对弈模式设计 5
3.3.1 人机对弈模式流程图 5
3.3.2 极大极小值算法 6
3.3.3 Alphabeta剪枝算法 7
3.3.4 人机对弈模块程序设计伪代码 7
3.4 网络对弈模式设计 9
3.4.1 网络对弈模式流程图 9
3.4.2 服务器端 9
3.4.3 客户端 10
4. 系统测试 11
4.1 开始界面测试 12
4.2 人机对弈界面测试 12
4.3 网络对弈界面测试 13
4.4服务器端测试 13
5. 不足与展望 14
致谢 14
参考文献: 15
附录 16
基于java的网络五子棋设计
The design of the Gobang network game base *好棒文|www.hbsrm.com +Q: ^351916072^
d on java technology
Student majoring in computer science and technology MING Yue
Tutor LIU Jinding
Abstract:Based on Java technology, this essay designs a Gobang network game. The game supports two kinds of game modes: manmachine game and network game. The game has the function of verifying user identity and saving game information. In the manmachine mode, a chess game tree is constructed by a maximalminimal search algorithm. The evaluation function is used to estimate the branches of the game tree. Finally, the game tree is pruned based on the Alphabeta pruning algorithm. In the network game mode, the server and client are built using the Java Socket network programming technology. Using the multithreading technology, onetomany communication between the server and the client is realized. The test results show that this system is stable and fully functional.
Key words: the Gobang game; the maximalminimal search algorithm; the Alphabeta pruning algorithm; network programming
引言:计算机博弈[1],即为人工智能的一个分支[2],是近年来一个比较火热的研究方向,主要以研究棋类博弈来探索“智力”效果。比如谷歌的AlphaGo博弈技巧关键在于其使用的深度卷积神经网络的整体设计和神经网络的训练过程[3,4]。与围棋一样,五子棋也属于很典型的博弈游戏。作为一种益智小游戏,五子棋不仅适宜幼儿开发脑力,而且适合老年人修身养性,所以研究五子棋博弈算法不仅可以提高逻辑思维能力,而且可以享受游戏的乐趣。本文旨在基于Java技术设计一款既可以支持人机对弈,又能支持网络对弈的五子棋小游戏。
选题背景
1.1 问题的提出
计算机博弈游戏是一个极具挑战性和趣味性的研究领域。它使用的核心技术是博弈搜索算法,这类搜索算法是人工智能领域的重要研究基础,很多实际问题都可以利用这种算法解决。研究五子棋搜索算法的重点就是如何让电脑获利最大,虽然网上已经有了很多效率比较高的成熟算法,但是还没有哪一个算法能保证绝对获胜。到目前为止,效率较高的人机对弈算法策略主要有两种。
一种是使用分数表来评价整个棋局,评估哪个位置得分最高。一般而言,棋盘大小是15*15,那么一个棋盘上五元组(五子相连)就有572个。棋盘上的一个棋位属于多个五元组,根据一个五元组里的黑白棋子数量的不同,给这个五元组计算分数,这些五元组的分数和就是这个棋位的总分数。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/1687.html