AI五子棋需求规格说明书
AI-Gobang
AI五子棋小程序 github地址:https://github.com/holidaysss/AI-Gobang
程序简介
AlphaGo Zero在世界舞台上取得的巨大成功体现了人工智能算法的快速发展和其蕴含着的应用价值,本团队借鉴AlphaGo Zero算法思想和架构,简单实现五子棋的人工智能棋手,通过人工智能自我的不断下棋,不断训练,并且不断迭代更新自身-自训练模式,从而训练一个水平极高的人工智能棋手,让广大玩家体验一把与“AlphaGo Zero”的感觉。本团队提出的程序-AI五子棋不仅加入人工智能元素,并且以微信小程序的方式部署,为所有微信用户提供简洁方便的模式风格轻松进行五子棋游戏。
参考资料
AlphaGo Zero的主要论文文献,互联网上的AlphaGo Zero算法研究文章,AlphaGo Zero 相关的知识文章,微信小程序游戏类型开发知识文章,python后端开发知识文章,服务器搭建配置知识文章,python必要运行环境搭建配置知识文章。 AlphaZero: Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm AlphaGo Zero: Mastering the game of Go without human knowledge
程序架构
前端设计
AI五子棋前端设计主要从两个角度进行编程开发:游戏设计,信息处理。
游戏设计:
- 五子棋棋盘,棋子等图像界面的设计
- 五子棋基础规则设定 a. 棋子可以根据玩家的指定位置落到棋盘的指定位置-坐标 b. 玩家只可以按照规则下棋,不存在连续下棋,未同意下撤回棋子,同个位置下两遍等异常情况
- 游戏基础功能设定,比如开始游戏,再来一菊,放弃下棋等
- 可以根据后端指示的游戏状态执行对应操作,特别地,棋盘的胜负状态是由后端判断的。
信息处理:
- 可以为每一个微信用户生成一个唯一的Token或者标识
- 可以与后端进行正确的信息通信,并且执行后端要求的请求。同时也可以正常地向后端发送信息
- 以JSON格式作为数据规范格式,当前数据格式
后端开发
后端开发主要从两个角度入手:游戏开发,Web开发
游戏开发:
- 完整编程开发五子棋游戏,可以正常生成棋盘,并且可以进行三种游戏模式:人机模式,人人模式,鸡鸡模式。
- 初步理解AlphaGo Zero的算法思想和技术,并且尝试实现算法,训练人工智能模型。
- 整合训练好的模型和算法逻辑称为一个可实例化的对象 - 称人工智能棋手(AI棋手)
Web开发:
- 正确与前端进行信息交流
- 准确每一个用户生成临时棋盘环境,每个用户的棋盘游戏环境互不干扰。
- 合理存放用户的token标识等数据
- 同个用户标识可以在不同时间段内生成多个棋盘,但是每一个时间段只能对应一个棋盘环境
- 服务器web框架的部署,性能,效率,安全和稳定等方面的测试
用户环境:微信小程序(小游戏)
预期用户人数:1001
目标用户特点:可爱,善良,聪明。
AI五子棋需求规格说明书的更多相关文章
- 天转凉了,注意保暖,好吗(需求规格说明书放在github了)
团队项目——AI五子棋(小程序) 一.团队展示: 队名:未来的将来的明天在那里等你 小组 队员: 龙天尧(队长)(3116005190),林毓植(3116005188),黄晖朝(3116005178) ...
- 基于 Java Web 的毕业设计选题管理平台--选题报告与需求规格说明书
一.选题报告 目录 团队名称 团队成员 项目名称 项目描述 创新与收益 用户场景分析 真实用户调研 未来市场与竞争 项目导图 比例权重 总结 1.团队名称--指南者团队 2.团队成员 孔潭活:2015 ...
- 需求规格说明书(SRS)特点
需求说明书的7大特征: 完整性 正确性 可行性 必要性 划分优先级 无二义性 可验证性 每条需求规格说明书的4大特点: 完整性 一致性 可修改性 可跟踪性 需求管理就是一种获取.组织并记录系统需求的系 ...
- 【软件需求工程与建模 - 小组项目】第6周 - 成果展示2 - 软件需求规格说明书V4.3
成果展示2 - 软件需求规格说明书V4.3
- 【项目 · Wonderland】需求规格说明书 · 终版
[项目 · Wonderland]需求规格说明书 · 终版 Part 0 · 简 要 目 录 Part 1 · 流 程 / 分 工 Part 2 · 需 求 规 格 说 明 书 Part 1 · 流 ...
- 失物找寻APP软件需求规格说明书——第三次团队作业
⭐对于软件需求规格说明书的理解 在没写这份软件需求规格说明书的时候我们组成员都不是很理解它的必要性,当然,写完之后才知道它的作用. 软件需求说明书的存在是为了使用户和软件开发者双方对该软件的初始规定有 ...
- 需求规格说明书——阿里八八“好记”APP
工作流程 ① 组长查阅相关文档.示例文件等,根据本小组项目特点进行定制需求规格说明书目录. ② 根据选题报告工作进行任务分配,追求工作量最小化.效率最大化. ③ 分工编辑文档. ④ 组长搭建Githu ...
- <项目需求规格说明书> - 福大易宝
福大易宝-<项目需求规格说明书> 流程 在开会时统一了项目的开发背景,具体功能,然后在同一个工作环境下进行该说明书的编写. 分工 1.李佳铭.杜宏庆共同负责引言和项目描述的内容. 2.刘双 ...
- 软件需求规格说明书(转自http://blog.csdn.net/li_canhui/article/details/6927540)
转自http://blog.csdn.net/li_canhui/article/details/6927540 1概述 1.1编写目的 指出编写<需求规格说明书>的目的.下面是示例: 编 ...
随机推荐
- 关于HttpClient上传中文乱码的解决办法
使用过HttpClient的人都知道可以通过addTextBody方法来添加要上传的文本信息,但是,如果要上传中文的话,或还有中文名称的文件会出现乱码的问题,解决办法其实很简单: 第一步:设置Mult ...
- 【分享】JS如何为复制的Web文本添加其他信息
看到了两篇关于这题的讨论,简单的记录一下!o(* ̄▽ ̄*)ブ 1. stackoverflow , How to add extra info to copied web text 2. 黑客派, ...
- ORA-28000 帐户已被锁定问题处理
1.问题描述 应用监控程序报警ORA-28000,PL/SQL无法登陆数据库 2.问题分析 oracle11g中默认在default概要文件中设置了 “FAILED_LOGIN_ATTEMPTS=10 ...
- Centos7中网络及设备相关配置
centos7中,不再赞成使用ifconfig工具,取而代之的是nmcli工具,服务管理也是以systemctl工具取代了service,这些之前版本的工具虽然在centos7中还可以继续使用,只是出 ...
- VNPY - windows 安装踩坑记录
twisted requires PyHamcrest>=, which is not ins grin requires argparse>=1.1, which is not inst ...
- mock js使用方法简单记录
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 二叉树之AVL树
高度为 h 的 AVL 树,节点数 N 最多2^h − 1: 最少N(h)=N(h− 1) +N(h− 2) + 1. 最少节点数n 如以斐波那契数列可以用数学归纳法证明: 即: N(0) = 0 ( ...
- 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询。这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧!
日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 “SYSDATE”来指定查询的日期. SELECT TRUNC (SYSDATE, 'MO ...
- echarts 图表后面背景色
"splitArea": { "show": true, "areaStyle": { "color": [ " ...
- 生成git,ssh的key
git clone ssh 代码: 报错: Warning: Permanently added 'gitee.com,120.55.226.24' (ECDSA) to the list of kn ...