System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及ai训练,特别是一种游戏ai训练方法。
技术介绍
1、通过强化学习模型与模仿学习模型训练产出用于游戏中控制游戏角色的模型,是目前较常用的ai训练方法。该方法基于快速傅里叶变换的前后帧对比作为补充的训练特征及损失依据,可极大提升ai智能体的表现。
2、但该方法进行游戏ai训练时未考虑时序上前后帧误差的约束,会导致游戏中的智能体在执行与时序相关操作的时候因前后帧观察值的高方差而产生异常。
技术实现思路
1、本专利技术的目的在于克服现有技术的缺点,提供一种游戏ai训练方法。
2、本专利技术的目的通过以下技术方案来实现:一种游戏ai训练方法,包括以下步骤:
3、s1:获取游戏场景中的样本数据;
4、s2:对样本数据取固定帧长度的窗口值;
5、s3:计算窗口值前后帧的误差,并计算误差长度的均值,再乘以预设权重作为训练负奖励;
6、s4:计算窗口值的快速傅里叶变换。
7、优选的,步骤s1中,样本数据包括坐标值和方向角度。
8、优选的,步骤s2中,窗口值的大小为32。
9、优选的,步骤s2中,窗口值的大小为64。
10、优选的,步骤s3中,当窗口值为坐标值时,通过下一帧减去上一帧的值得到误差;当窗口值为角度值时,计算公式为:
11、α*(sin xl+cos xl);
12、其中,α为插值权重,xl为固定长度的窗口值。
13、优
14、
15、x0[n]={x[n]|n%2=0};
16、x1[n]={x[n]|n%2=1};
17、
18、其中,n为窗口值高度,x为窗口值的元素取值;
19、计算窗口中所有元素的损失:
20、losswindow=β*fft(x);
21、其中,losswindow为窗口中所有元素的损失,β为预设窗口值损失权重;
22、得到critic网络的损失值losscritc:
23、losscritc=losswindow+lossv。
24、本专利技术具有以下优点:本专利技术通过获取时序相关性强的样本数据,并计算窗口值前后帧的误差以及快速傅里叶变换,再将计算的误差均值与权重相乘作为奖励值中的惩罚项,从而有效避免游戏ai操纵角色时异常抖动,再将经快速傅里叶变换后的窗口值作为critic网络损失的一部分,提升了游戏ai的训练收敛效果,减少了游戏ai异常表现。
本文档来自技高网...【技术保护点】
1.一种游戏AI训练方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的游戏AI训练方法,其特征在于:所述步骤S1中,样本数据包括坐标值和方向角度。
3.根据权利要求2所述的游戏AI训练方法,其特征在于:所述步骤S2中,窗口值的大小为32。
4.根据权利要求2所述的游戏AI训练方法,其特征在于:所述步骤S2中,窗口值的大小为64。
5.根据权利要求4所述的游戏AI训练方法,其特征在于:所述步骤S3中,当窗口值为坐标值时,通过下一帧减去上一帧的值得到误差;当窗口值为角度值时,计算公式为:
6.根据权利要求5所述的游戏AI训练方法,其特征在于:所述步骤S4中,计算窗口值的快速傅里叶变换的公式为:
【技术特征摘要】
1.一种游戏ai训练方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的游戏ai训练方法,其特征在于:所述步骤s1中,样本数据包括坐标值和方向角度。
3.根据权利要求2所述的游戏ai训练方法,其特征在于:所述步骤s2中,窗口值的大小为32。
4.根据权利要求2所述的游戏ai训练方法,其特征...
【专利技术属性】
技术研发人员:张啸宇,
申请(专利权)人:成都先知者科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。