一款开源的中国象棋人工智能程序
源码地址:
https://github.com/xiongfang/Chinese-Chess
工程:Unity项目。可以用Unity引擎打开
语言:C#
算法:神经网络算法+遗传算法
目录结构:
Assets/Fonts 字体资源
Assets/Models 所有模型资源,包括象棋和棋盘模型
Assets/NGUI NGUI插件
Assets/Others 其他资源。主要是ui预制体
Assets/Scripts 脚本文件
Assets/Scripts/AI 主要AI算法,人工神经网络
Assets/StreamingAssets 可动态加载的资源目录。主要保存的是遗传算法学习之后的神经网络权重
Assets/UI UI预制体
代码简介
主要类:
UGameEngine 游戏的总管理器。初始化入口
UChessboard 棋盘类,管理一个棋盘
UChess 棋子基类,有众多子类,包括:UChess_Ju(車),UChess_Ma(马)..等
--UChess_Ju
--UChess_Ma
--UChess_Pao
--UChess_Shi
--UChess_Xiang
--UChess_Bing
--UChess_Jiang
UGamer 游戏者基类,子类包括:UBot(机器人),UPlayer(玩家)
--UBot
--UPlayer
UController 控制器基类,每个UGamer包含一个控制器,相当于大脑
--UBotAIController 机器人AI控制器,内部使用神经网络算法
--UPlayerController 玩家控制器,内部使用玩家输入
UGenAlg 神经网络算法管理器
UGenome 神经网络算法的基因
UNeuron 神经网络算法的细胞
UNeuronLayer 神经网络细胞层
UNeuronNet 神经网络
一款开源的中国象棋人工智能程序相关推荐
- 搭建一款开源的微信商城小程序:海风小店
搭建一款开源的微信商城小程序:海风小店 准备工作 申请小程序账号 申请小程序账号只需要按照官网文档说明操作即可,这里我就不展开说了,地址:https://developers.weixin.qq.co ...
- java象棋游戏参考文献_java中国象棋(论文+程序)
java中国象棋(论文+程序) 如有需要请联系 QQ:958035640 目 录 第1章 象棋的由来. ------------------------ 1 第2章 技术可行性分析 --------- ...
- 开源一个中国象棋 alpha zero 程序
先上代码 github,这个项目现在仍然在积极开发和维护的阶段,通过这个项目你可以组建自己的集群并且训练自己的中国象棋 alpha go: icyChessZero 中国有 13+亿人,中国象棋的受众 ...
- 中国象棋棋盘java_Java中国象棋博弈程序探秘[2]——棋盘的表示
棋盘的表示 转载请保留作者信息: 作者:88250 MSN & Gmail & QQ:DL88250@gmail.com 在象棋博弈程序中,首先我们要确定下棋盘-棋子的数据结构描述. ...
- 5款开源网站流量统计应用程序
网站流量分析是每个站长的必备工作.我们之前介绍过一些提供在线流量统计服务的网站: 下面则是5款开源的PHP网站流量统计应用程序. piwik Piwik 是一套基于Php+MySQL技术构建的开源网站 ...
- 我的中国象棋游戏程序单机版
花了十天时间(2006-8-21到2006-8-31日) ,开发了一个拥有完全自主知识产权的中国象棋单机版游戏软件. 该软件在VS2003环境下开发,使用VB.NET语言.关键技术:GDI+.开发并应 ...
- 象棋的c++程序语言,纯C++中国象棋控制台程序(学习版)
适合人群: 这个游戏适合初学C++语言,不想了解MFC的同学. 界面: 用数字表示棋子和棋盘 跨平台: 也可以在Linux下面运行,可以作为一个C++中国象棋的游戏引擎. 走棋: 通过写程序走棋,例如 ...
- 纯C++中国象棋控制台程序(学习版)
适合人群: 这个游戏适合初学C++语言,不想了解MFC的同学. 界面: 用数字表示棋子和棋盘 跨平台: 也可以在Linux下面运行,可以作为一个C++中国象棋的游戏引擎. 另外:C++中国象棋(研究探 ...
- php开源程序 流量统计,5款开源网站流量统计应用程序
网站流量分析是每个站长的必备工作.我们之前介绍过一些提供在线流量统计服务的网站: 下面则是5款开源的PHP网站流量统计应用程序. piwik Piwik 是一套基于Php+MySQL技术构建的开源网站 ...
- 安卓android中国象棋chess程序项目源码源代码,C/C++编程笔记:C语言打造中国象棋游戏,项目源代码分享!,c语言笔记大全...
#include#include #define INTERVAL 50 //前面的间隔 #define CHESS_GRID_SIZE 70 //格子宽度 #define ROW 10 #defin ...
最新文章
- 2018 OO第一次总结(作业1-3)
- BitLocker Partition Recovery
- 解决idea 控制台中文乱码
- JS数组reduce()方法
- 钉钉微应用接入钉钉免登陆配置记录。NET实现
- 猪年看猪,猪男猪女一共十个。
- java8 stream to map_Java 8 Stream Api 中的 map和 flatMap 操作
- LeetCode 1634. 求两个多项式链表的和
- jquery实现图片等比例缩放,解决max-width在ie中不兼容问题
- 解决阿里云主机受到攻击的问题 2
- 熊猫分发_熊猫重命名列和索引
- java 间接引用_Java中的四种引用方式的区别
- 加拿大 生物工程计算机最好的学校,加拿大哪些大学有生物工程本科专业?这五大院校是理科与工科的完美结合!...
- ROS2的create_publisher参数详解
- 由C注释向C++注释转换简单实现
- 查找mac系统下的隐藏文件以及隐藏文件夹的方法
- 声纹识别--基础学习笔记
- matlab 年积日与年月日转换,空间大地测量与GPS导航定位时间系统相互转换,格里高利时通用时儒略日,GPS时,年积日相互转换的源代码程序...
- 北京铁警的春运日记本:“手机、爷爷、救护车”
- 云南计算机网络技术专业培训学院,云南哪些大学有计算机网络技术专业