网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月21日漏签0天
人工智能吧 关注:114,282贴子:505,656
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 23回复贴,共1页
<<返回人工智能吧
>0< 加载中...

使用类反射算法使AI学习五子棋

  • 只看楼主
  • 收藏

  • 回复
  • 囧乐乐day
  • 贾维斯
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
exe和源文件已经加进附件中。(打开源文件先安装gamemaker)
很早就做好了,但是后来进行了不少调整。声明一下,这个程序是对反射算法的模拟与实现,有一些点可能会和反射算法有不同,那是根据我的理解改编的。我不会讲反射算法理论,我这里是对这次实践的解释。要理论请自行搜索。
反射会作为最基础的记忆单位(每个反射链由两个神经元结合在一起)(原谅我,我在源文件里把反射这种对象名称写成了oNeuron,请忽略)储存了一个强度,当一个信号穿过它,新信号值变化成旧信号值*强度。
0<=强度<=1。穿过时,同时会巩固这个强度;也就是增加一定的值,可以在源文件的oBegin对象里的create事件的memoryreinforce变量里设置。
同时,每一毫秒会遗忘掉的强度,可以在源文件的oBegin对象里的create事件的memorydecay变量里设置。
以上的对反射与记忆的模拟。
以下是对需要与欲望的模拟,涉及到评估。
评估函数最大是100000分,也就是100%(也就是1)。对应的局面是五子连棋。
其次是+****+,得分50000.
O****+,得分10000
+***++,得分1000
++**++,得分100
+++*++,得分10.
其中,*是我方棋子,O是空位,+是别人棋子。
用这个方法对机器人方棋子局面进行一次评估,然后减去对人类方局面评估的分数(因为是惩罚,抑制信号用减数),得到的值对每个反射都施加一遍。例如机器人方五子连棋100000分,人类方局面分数为0,所有神经网络里反射都会增到最大值。
但是要是人类方出现了++**++的局势,已经对机器人反射进行了一次抑制信号,又轮到人类时又在另一个地方下出了+++*++,是否要把上次的抑制信号再算进来?
不用,我们有一个记录上次局面总评分的变量。每次把这次评分减去上次评分,得到的就是这一次出现的新评分。在evaluation函数里,e和f记录当前的评分(分别代表兴奋的评分和抑制的评分),g和h记录上次的。对所有反射施加时,施加的强度是e-g和f-h。
接下来是不同功能(动作、感觉)的神经元如何排列。
棋盘的每个格子对应神经网络上的每三个神经元:感受这个格子机器人方的棋子、将机器人的棋子下在这个位置上和感受这个格子人类方的棋子。比如说吧,把这三种神经元对应ABC,神经元会是像这样排列的。
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
分别对应棋盘15*15尺寸。
我还没能把训练成全能神,你们自己去试验吧,我没这个时间。闲着的多跟它下,要是它有什么成果请回复我。
要批评我或者给予我建议和意见的也好,希望我这个贴不会太冷清。


fz五子棋 - 优化2.exe
大小:2.51MB下载:18次转存:6次
文件已失效
fz五子棋 - 优化2.gmk
大小:322.75KB下载:7次转存:6次
文件已失效
  • 囧乐乐day
  • 贾维斯
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我们使用oNeuron对象模拟一个两个神经元之间的反射链。在o Begin中进行初始化一些必备的数据,同时在oGame里也初始化了一些数据。
同时,在evaluation函数的下面有几个进行评估局面的函数,分别是水平一行、垂直一行、左对角线一行、右对角线一行。每一个函数都是使用我之前说过的评估标准判定并给予分数的。我遍历了整个棋盘,以每一个位置作为起点,把我说的四条线都判断一遍。这样我就可以把所有能找到的棋线判断一遍了。


2025-05-21 14:59:58
广告
  • 就带没
  • 无人机
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
学习了。


  • whygod3
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
标记。


  • 囧乐乐day
  • 贾维斯
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
对九楼的补充


  • 囧乐乐day
  • 贾维斯
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
还有,要是一直不跟它下,它会遗忘。所以最好不要中途离场。


  • 囧乐乐day
  • 贾维斯
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
对九楼的更多补充(当进行了我的提示后):


  • 建设西路东口
  • 阿童木
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
反射算法神经元演示程序 exe文件及源码
http://pan.baidu.com/s/1dEAjRgP


2025-05-21 14:53:58
广告
  • 建设西路东口
  • 阿童木
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
已加精


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 23回复贴,共1页
<<返回人工智能吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示