System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于生成对抗模仿学习的机械臂复杂操作技能学习方法及系统技术方案_技高网

基于生成对抗模仿学习的机械臂复杂操作技能学习方法及系统技术方案

技术编号:40767178 阅读:4 留言:0更新日期:2024-03-25 20:16
本发明专利技术公开了一种基于生成对抗模仿学习的机械臂复杂操作技能学习方法及系统,方法包括:获取复杂任务数据,将复杂任务的轨迹分割为多个子任务轨迹;针对每个子任务轨迹,确定每个子任务的强化学习RL参数,获取对应子任务的专家策略,形成子任务专家策略集合;基于所述子任务专家策略集合,使用生成对抗模仿学习GAIL算法进行预训练,得到子任务策略集合;其中所述子任务策略集合包括子任务专家策略和子任务生成策略以及对应的奖励函数;基于子任务策略集合,通过领域随机化的方法,使用SAC算法进行正式训练,得到子任务的最优策略集合。通过GAIL预训练使底层子任务不再从零开始学习,只需要有限的样本数量就可以引导策略学习。

【技术实现步骤摘要】

本专利技术属于机械臂任务规划,涉及一种基于生成对抗模仿学习的机械臂复杂操作技能学习方法及系统


技术介绍

1、随着机器人技术的不断发展,机器人开始出现在家庭生活中,来辅助一些行动不变的老年人完成日常生活中的任务。但是在复杂、多态、非结构化的家庭环境中,使用传统的学习方法无法让机器人学到复杂操作技能,也无法让机器人拥有自主决策能力。

2、针对上述问题,分层强化学习一直是机器人学习复杂操作技能的传统方法。然而,分层强化学习在底层子任务学习中存在样本效率低、奖励稀疏等问题;在上层复杂任务的规划学习过程中,往往面临学习时间过长甚至难以完全学会整个复杂任务的问题;同时由于真实环境和仿真环境之间存在的误差,仿真环境迁移到真实环境后的策略可能会失效。


技术实现思路

1、目的:为了克服现有技术中存在的不足,本专利技术提供一种基于生成对抗模仿学习的机械臂复杂操作技能学习方法及系统。底层子技能通过专家策略进行快速学习,减少了探索时间;上层将子策略作为行为树的叶子节点进行规划,降低了行为树的复杂性,也节省了学习整体任务的时间;同时采用了领域随机化的方法,在仿真环境中添加了大量的随机化因素,使得机械臂学到的策略更具抗干扰性和适应性。

2、技术方案:为解决上述技术问题,本专利技术采用的技术方案为:

3、第一方面,本专利技术提供一种机械臂复杂操作技能学习方法,包括:

4、获取复杂任务数据,其中所述复杂任务数据包括机械臂执行复杂任务的轨迹;

5、将复杂任务的轨迹分割为多个子任务轨迹;

6、针对每个子任务轨迹,确定每个子任务的强化学习rl参数,获取对应子任务的专家策略,形成子任务专家策略集合;

7、基于所述子任务专家策略集合,使用生成对抗模仿学习gail算法进行预训练,得到子任务策略集合;其中所述子任务策略集合包括子任务专家策略和子任务生成策略以及对应的奖励函数;

8、基于子任务策略集合,通过领域随机化的方法,使用sac算法进行正式训练,得到子任务的最优策略集合。

9、在一些实施例中,所述机械臂执行复杂任务的轨迹包括机械臂末端的位置x、y、z和位姿dx、dy、dz、dw,以及夹持器的闭合程度μ,其中0≤μ≤1。

10、在一些实施例中,将复杂任务的轨迹分割为多个子任务轨迹,包括:使用bp-ar-hmm算法将复杂任务的轨迹分割为多个子任务轨迹。

11、在一些实施例中,针对每个子任务轨迹,确定每个子任务的强化学习rl参数,获取对应子任务的专家策略,形成子任务专家策略集合,包括:

12、对于第i个子任务的rl参数,定义为一个马尔可夫决策过程mdp,mdp是一个五元组mi=<si,ai,pi,ri,γ>;其中si表示为状态空间,包括机械臂自身的状态以及所感知的环境状态,自身的状态包括机械臂夹持器、机械臂的位置和姿态,环境状态根据不同的子任务设置;ai表示动作空间,动作空间被定义为下一时刻机械臂的位姿减去当前时刻机械臂的位姿的差;pi表示状态转移概率;ri表示奖励函数,每个子任务都包含两种奖励函数:基础奖励和结果奖励,基础奖励表示机械臂在探索过程中得到的实时奖励,结果奖励则是根据一个回合的结果给予的成功奖励或者失败惩罚;γ表示奖励衰减值;

13、每个子任务的专家策略包括:机械臂当前时刻t的状态空间st,当前时刻t的动作空间at,下一时刻t+1的状态空间st+1,当前时刻t的实时奖励rt,一个回合结束的最终奖励repisode和一个回合开始的标志位estart;其中st包括机械臂自身的状态以及所感知的环境状态,at是机械臂末端的位置和姿态的移动方向,st+1中的机械臂位姿是st、at中的机械臂位姿之和。

14、在一些实施例中,基于所述子任务专家策略集合,使用生成对抗模仿学习gail算法进行预训练,得到子任务策略集合,包括:

15、构建生成对抗模仿学习模型,所述生成对抗模仿学习模型包括生成器和判别器;

16、利用所述子任务专家策略集合,对生成器和判别器进行对抗训练;

17、通过训练好的生成器生成子任务生成策略;

18、通过训练好的判别器生成每个子任务的奖励函数,得到子任务策略集合。

19、进一步地,在一些实施例中,其中构建生成对抗模仿学习模型包括:

20、构建生成器的网络结构:生成器网络的输入为子任务专家策略集合πe中的状态动作对(s,a),输出为生成器模仿子任务专家策略生成的子任务生成策略πg,记为策略gw(s,a),生成器的损失函数lg为:

21、

22、其中表示期望值,dφ(gw(s,a))表示为判别器d判断策略gw(s,a)是专家轨迹的概率,dφ(gw(s,a))=sigmoid(gw(s,a)),其中sigmoid是一种激活函数;

23、通过添加熵来鼓励生成器生成多变的轨迹,熵损失le为:

24、le=-σ[(1-sigmoid(gw(s,a)))*gw(s,a)+softplus(gw(s,a))]

25、其中σ为熵损失系数,softplus是一种激活函数;

26、构建判别器的网络结构:判别器的输入为gw(s,a),输出为dφ(gw(s,a)),判别器的损失函数ld为:

27、

28、因此生成对抗模仿学习模型的总损失函数为ltotal=lg+le+ld;

29、通过训练好的判别器生成每个子任务的奖励函数,包括:将判别器d的输出来作为奖励函数训练模仿者策略,所述奖励函数r(s,a)为:

30、r(s,a)=-log(1-dφ(gw(s,a))+β)

31、其中β表示熵损失权重,dφ(gw(s,a))表示为判别器d判断策略gw(s,a)是专家轨迹的概率。

32、在一些实施例中,基于子任务策略集合,通过领域随机化的方法,使用sac算法进行正式训练,得到子任务的最优策略集合,包括:

33、领域随机化的方法包括:正式训练过程中,为每个子任务引入随机化因素,包括智能体随机化因素和环境随机化因素;

34、sac网络包括一个策略网络、主值网络和目标值网络,主值网络和目标值网络均包含两个结构相同的q网络net1和net2;

35、策略网络用来更新策略πθ,策略网络输入当前时刻状态、输出当前时刻动作以及动作分布的熵值,网络结构为五层全连接神经网络,包含一个输入层、三个包含128个神经元的隐含层和一个包含2个神经元的输出层;输出层为每个动作维度生成均值和标准差,从经验池中采样后,采用tanh激活函数将动作归一化到[-1,1]的范围内;

36、主值网络用来输出当前状态的价值,目标值网络用来输出下一状态的价值,主值网络和目标值网络均包含两个结构相同的q网络net1和net2,网络结构均为五层全连接神经网络,包含一个输入层、三个包含128个神经元的隐含层以及一个输本文档来自技高网...

【技术保护点】

1.一种机械臂复杂操作技能学习方法,其特征在于,包括:

2.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,

3.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,针对每个子任务轨迹,确定每个子任务的强化学习RL参数,获取对应子任务的专家策略,形成子任务专家策略集合,包括:

4.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,基于所述子任务专家策略集合,使用生成对抗模仿学习GAIL算法进行预训练,得到子任务策略集合,包括:

5.根据权利要求4所述的机械臂复杂操作技能学习方法,其特征在于,构建生成对抗模仿学习模型包括:

6.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,基于子任务策略集合,通过领域随机化的方法,使用SAC算法进行正式训练,得到子任务的最优策略集合,包括:

7.根据权利要求6所述的机械臂复杂操作技能学习方法,其特征在于,使用SAC算法进行正式训练包括:

8.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,

9.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,还包括:响应于有复杂任务需要执行,将复杂任务分割为多个子任务,从子任务的最优策略集合中选出对应的子任务最优策略以构建行为树,实现新任务的规划。

10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9任一项所述方法的步骤。

...

【技术特征摘要】

1.一种机械臂复杂操作技能学习方法,其特征在于,包括:

2.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,

3.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,针对每个子任务轨迹,确定每个子任务的强化学习rl参数,获取对应子任务的专家策略,形成子任务专家策略集合,包括:

4.根据权利要求1所述的机械臂复杂操作技能学习方法,其特征在于,基于所述子任务专家策略集合,使用生成对抗模仿学习gail算法进行预训练,得到子任务策略集合,包括:

5.根据权利要求4所述的机械臂复杂操作技能学习方法,其特征在于,构建生成对抗模仿学习模型包括:

6.根据权利要求1所述的机械臂复杂操作技能学习...

【专利技术属性】
技术研发人员:高翔马陈昊徐国政王强刘元归陈盛
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1