CN112264995B - 一种基于层级强化学习的机器人双轴孔装配方法 - Google Patents

一种基于层级强化学习的机器人双轴孔装配方法 Download PDF

Info

Publication number
CN112264995B
CN112264995B CN202011107036.1A CN202011107036A CN112264995B CN 112264995 B CN112264995 B CN 112264995B CN 202011107036 A CN202011107036 A CN 202011107036A CN 112264995 B CN112264995 B CN 112264995B
Authority
CN
China
Prior art keywords
function
assembly
current
robot
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011107036.1A
Other languages
English (en)
Other versions
CN112264995A (zh
Inventor
徐静
杨文昊
侯志民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN202011107036.1A priority Critical patent/CN112264995B/zh
Publication of CN112264995A publication Critical patent/CN112264995A/zh
Application granted granted Critical
Publication of CN112264995B publication Critical patent/CN112264995B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control

Abstract

本发明提出一种基于层级强化学习的机器人双轴孔装配方法,属于人工智能技术应用领域。该方法将待学习的装配技术进行分解,通过将待学习的技术进行分解成多个选项,通过不断训练每个选项内部的行为策略最终学习出解决双轴孔的装配策略。本发明利用层级强化学习算法用于解决工业中的双轴孔装配问题,更好的利用人工智能的技术有效提高工业生产的效率。

Description

一种基于层级强化学习的机器人双轴孔装配方法
技术领域
本发明属于人工智能技术应用领域,特别涉及一种基于层级强化学习的机器人双轴孔装配方法。
背景技术
智能制造快速发展的趋势下,机器人自动化装配技术具有巨大的市场需求,随着人工智能技术的快速发展,人工智能技术比如强化学习技术已经被越来越多的应用在各种装配领域中。尽管传统强化学习算法如深度确定性策略梯度算法(DDPG)算法已经被用于解决机器人双轴孔装配问题,如“Feedback Deep Deterministic Policy Gradient WithFuzzy Reward for Robotic Multiple Peg-in-Hole Assembly Tasks”。但是针对双轴孔装配问题由于接触状态十分复杂,仅通过有限的力传感信息无法准确判断接触状态,并且双轴孔装配问题中状态和装配动作都是高维连续的量,针对机器人双轴孔装配问题中策略复杂无法通过简单试错的方法进行学习,现有强化学习方法解决学习该装配策略时需要大量尝试,学习效率较低
发明内容
本发明的目的是为克服已有技术的不足之处,提出一种基于层级强化学习的机器人双轴孔装配方法。本方法通过设定选项个数,并且利用上层策略选择合适的选项分别进行训练,通过不断训练每个选项内部的行为策略,最终学习出解决双轴孔的装配策略,提高装配效率。
本发明提出一种基于层级强化学习的机器人双轴孔装配方法,其特征在于,该方法分为训练阶段和实际装配阶段,包括以下步骤:
1)训练阶段;具体步骤如下:
1-1)预先确定层级强化学习方法的装配训练回合总数为L;设定双轴孔装配的目标深度为D,当机器人携带轴到达目标深度D时,一个回合结束;
在双轴孔装配的一个回合中,按照时间顺序将该回合分为n个互不相同的装配阶段,则一个回合中装配阶段序号ω的取值范围为{1,2,3…n},ω的n种取值分别与装配过程n个互不相同的装配阶段一一对应;
设定奖励函数r(st),代表观测到环境状态st时收获的奖励值;设定动作价值函数的学习率αu,终止函数的学习率αβ,上层策略函数的学习率αΩ,下层策略函数的学习率αω和衰减率γ;
1-2)设定机器人双轴孔装配的上层策略函数为πΩω|st,ω,θΩ),下层策略函数为πω(at|stω),终止函数为βω(stβ);
其中上层策略函数的输入量为st和ω,st代表t时刻观测获得的环境状态,双轴孔装配中的环境状态包括机器人在该时刻的力和扭矩信息[Fx,Fy,Fz,Mx,My,Mz]以及该时刻轴的位置位姿信息[Px,Py,Pz,Ox,Oy,Oz],其中,Fx,Fy,Fz分别为机器人在工作空间坐标系下受到的沿x,y,z轴正方向的力,Mx,My,Mz分别为机器人在工作空间坐标系下受到的沿x,y,z轴正方向的扭矩,Px,Py,Pz分别为轴末端点在工作空间坐标系下的沿x,y,z坐标轴的位置坐标,Ox,Oy,Oz分别为轴线方向相对于x,y,z坐标轴的位置角;θΩ代表上层策略函数的参数;θω是上层策略函数的输出量,代表ω所对应装配阶段内的运动控制参数;
下层策略函数的输入量为st,输出量为at,at代表装配过程中t时刻的装配动作
Figure GDA0003263023760000021
包括该时刻机器人在工作空间坐标系下分别绕x,y,z轴的三个旋转运动量
Figure GDA0003263023760000022
和三个平移运动量
Figure GDA0003263023760000023
上层策略函数的输出量θω是下层策略函数的参数;
终止函数的输入量为st,θβ是终止函数的参数,终止函数的输出值为取值{0,1}的判定结果,当终止函数的输出值等于1时代表双轴孔装配当前的装配阶段结束,当终止函数的输出值等于0时代表双轴孔装配当前的装配阶段未结束;
对上层策略函数参数θΩ和终止函数参数θβ分别进行初始化;
定义动作价值函数QU(st,at,ω|θQ),代表机器人在ω所对应装配阶段内,在状态st时,执行动作at时能够收到的奖励值,并对动作价值函数的参数θQ进行初始化;
设定装配训练回合数l的初始值为1;
1-3)在装配训练回合l开始时,机器人将轴运动到设定的初始位置,设定每个训练回合初始位置对应的时刻t=1,设定该回合中装配阶段序号ω的初始值为1;在第1个训练回合的t=1时刻,获取该时刻初始位置对应的st并输入初始的上层策略函数πΩω|st,ω,θΩ),该函数输出参数θω作为下层策略函数πω(at|stω)的参数的θω的初始值;
1-4)在装配训练回合l中的t时刻,获取观测环境状态st,将st输入当前终止函数βω(stβ)后,对当前终止函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,然后进入步骤1-5);
如果输出值为0,代表当前装配阶段未终止,则进入步骤1-6),θω不更新;
1-5)将st输入当前上层策略函数πΩω|stΩ),该函数输出更新后的当前下层策略函数的参数θω,然后进入步骤1-6);
1-6)将st输入当前下层策略函数πω(at|stω),该函数输出t时刻机器人对应动作at;然后令机器人执行动作at,机器人携带轴抵达新的位置,得到t+1时刻的环境状态的状态st+1
1-7)将st+1输入当前奖励函数,该函数输出t+1时刻收获的奖励值r(st+1),然后根据时间差分算法对当前动作价值函数QU(st,at,ω|θQ)的参数θQ进行更新,得到更新后的当前动作价值函数QU(st,at,ω|θQ):
Figure GDA0003263023760000031
Figure GDA0003263023760000032
其中,δt表示t时刻的时序差分误差,at+1表示在t+1时刻当前下层策略函数输出的动作;
Figure GDA0003263023760000033
表示将st+1输入当前下层策略函数πω(at|stω)得到t+1时刻的动作at+1
1-8)利用更新后的当前动作价值函数QU(st,at,ω|θQ)对当前上层策略函数和当前终止函数进行更新学习,更新参数θΩ和θβ,表达式如下:
Figure GDA0003263023760000034
Figure GDA0003263023760000035
其中,
AΩ(st+1,ω)=QΩ(st+1,ω)-VΩ(st+1),
QΩ(st+1,ω)=∑aπω(at|stω)QU(st,at,ω|θQ),
VΩ(st+1)=∑ωπΩω|st+1,ω,θΩ)QΩ(st+1,ω);
θΩ和θβ更新后,分别得到更新后的当前上层策略函数和更新后的当前终止函数;
1-9)根据st+1,判断机器人携带轴是否到达了指定的目标深度D:
如果抵达目标深度D,则当前装配训练回合l终止,执行步骤1-10);
如果未抵达目标深度D,则当前装配训练回合l未终止,令t=t+1,然后重新返回步骤1-4);
1-10)判断装配训练的回合数l是否到达设定的装配训练回合总数L:
如果l≥L,则训练阶段结束,最终获得的训练完毕上层策略函数参数θΩ和终止函数参数θβ分别记为
Figure GDA0003263023760000041
Figure GDA0003263023760000042
然后进入步骤2);
如果l<L,则更新装配训练的回合数l←l+1,然后重新返回步骤1-3);
2)实际装配阶段;具体步骤如下:
2-1)在实际装配开始时,将
Figure GDA0003263023760000043
作为终止函数βω(st,θβ)的参数,此时的终止函数记为
Figure GDA0003263023760000044
Figure GDA0003263023760000045
作为上层策略函数πΩω|st,ω,θΩ)的参数,此时的上层策略函数记为
Figure GDA0003263023760000046
初始化t=1,ω=1;机器人携带轴运动到设定的初始位置,获取此时刻对应的环境状态并作为t时刻的环境状态st
2-2)将st输入上层策略函数
Figure GDA0003263023760000047
该函数输出参数θω作为下层策略函数πω(at|st,θω)的参数θω的初始值;
2-3)将st输入终止函数
Figure GDA0003263023760000048
对该函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,进入步骤2-4);如果输出值为0,代表当前装配阶段未终止,则进入步骤2-5),θω不更新;
2-4)将st输入上层策略函数
Figure GDA0003263023760000049
该函数输出更新后的参数θω
2-5)将st输入下层策略函数πω(at|st,θω),该函数输出t时刻机器人对应动作at;然后令机器人执行动作at,携带轴抵达新的位置,更新环境状态为st+1
2-6)根据st+1,判断机器人携带轴是否到达了目标深度D:
如果抵达目标深度D,则装配完成;如果未抵达目标深度D,则装配未完成,令t=t+1,然后重新返回步骤2-3)。
本发明的特点及有益效果在于:
1)层级强化学习方法相比于传统基于马尔可夫理论的强化学习算法在解决复杂问题时将问题进行分解设定一些基础目标,然后根据设定的基础目标继续分别进行训练学习,因此其效率更高。
2)本发明将待学习的装配技术进行分解,通过将待学习的技术进行分解成多个选项,然后通过逐个选项学习有效提高学习效率。
3)本发明目的在于能够将要解决的问题进行分解,通过对待解决问题的分解能够减少很多无用的尝试,将能够提高基于学习强化学习算法在实际工业环境中的应用效率。
4)本发明利用层级强化学习算法主要用于解决工业中的双轴孔装配问题,更好的利用人工智能的技术有效提高工业生产的效率。
具体实施方式
本发明提出一种基于层级强化学习的机器人双轴孔装配方法,下面结合具体实施例对本发明进一步详细说明如下。
本发明提出一种基于层级强化学习的机器人双轴孔装配方法,其中,双轴孔装配系统包含轴、孔、工作平台,机器人,力传感器和控制计算机,其中,机器人底端与工作平台固结,机器人输出端与力传感器基座固结,力传感器测量端与轴固结,孔固结在工作平面上,控制计算机通过线缆连接并控制机器人。该系统各部分均可采用常规部件。
双轴孔装配中根据轴和孔的接触状态可以将双轴孔装配系统的一个完整的装配过程按照时间顺序分为n个互不相同的装配阶段,则装配阶段序号ω的取值范围为{1,2,3…n},ω的n种取值分别与装配过程n个互不相同的装配阶段一一对应,当ω取i(i∈{1,2,3…n})时,代表装配系统处于第i个装配阶段。
利用层级强化学习方法解决双轴孔装配问题需要学习两个策略函数:
一个是上层策略函数πΩω|st,ω,θΩ),其中上层策略的输入量为st和ω,其中st代表t(t∈{0,1,2…})时刻观测获得的环境状态,双轴孔装配中的环境状态包括通过力传感器获得的机器人在该时刻的六个力信号[Fx,Fy,Fz,Mx,My,Mz],包括机器人工作空间坐标系下受到分别沿x,y,z轴正方向的力Fx,Fy,Fz和扭矩Mx,My,Mz,以及该时刻轴的位置位姿信息[Px,Py,Pz,Ox,Oy,Oz],包括轴末端点在工作空间坐标系下的分别沿x,y,z坐标轴的位置坐标Px,Py,Pz和轴线方向分别相对于x,y,z坐标轴的位置角Ox,Oy,Oz;θΩ代表上层策略函数的参数;θω是上层策略函数的输出量,代表ω所对应装配阶段内的运动控制参数。上层策略函数的工作过程可写为:
Figure GDA0003263023760000051
或θω=πΩ(st,ω,θΩ)。
另一个是下层策略函数:πω(at|st,θω),其中下层策略的输入量为st,输出量为at,at代表装配过程中t时刻的装配动作
Figure GDA0003263023760000052
包括机器人在工作空间坐标系下分别绕x,y,z轴的三个旋转运动量
Figure GDA0003263023760000053
和三个平移运动量
Figure GDA0003263023760000054
上层策略函数的输出量θω是下层策略函数的参数。下层策略函数的工作过程可写为:
Figure GDA0003263023760000055
Figure GDA0003263023760000056
或at=πω(stω)。
除学习策略之后,还需要学习一个装配阶段终止的终止函数βω(stβ),其中,终止函数的输入量为st,θβ是终止函数的参数,终止函数的输出值为取值{0,1}的判定结果,当终止函数的输出值等于1时代表双轴孔装配系统当前所处的装阶段结束,需要根据上层策略函数选择下一个装配阶段对应的下层策略函数参数θω
另需预先确定分层强化学习算法的装配训练回合总数为L,双轴孔装配中的每一个装配回合的终止定义为机器人携带轴到达了指定的目标深度D(每一个回合的目标深度一致);需预先确定奖励函数r(st),代表观测到环境状态st时收获的奖励值;需预先确定动作价值函数的学习率αu,终止函数的学习率αβ,上层策略函数的学习率αΩ,下层策略函数的学习率αω和衰减率γ。
本发明提出一种基于层级强化学习的机器人双轴孔装配方法,分为训练阶段和实际装配阶段,包括以下步骤:
1)训练阶段;具体步骤如下:
1-1)预先确定层级强化学习方法的装配训练回合总数为L,(L建议取值范围100~200);双轴孔装配中的每一个装配回合的终止定义为机器人携带轴到达了指定的目标深度D;预先确定奖励函数r(st),代表观测到环境状态st时收获的奖励值;预先确定动作价值函数的学习率αu(建议取值范围为0.9-0.99),终止函数的学习率αβ(建议取值范围为0.9-0.99),上层策略函数的学习率αΩ(建议取值范围为0.9-0.99),下层策略函数的学习率αω(建议取值范围为0.9-0.99)和衰减率γ(建议取值为0.9)。
1-2)设定机器人双轴孔装配的上层策略函数为πΩω|st,ω,θΩ),下层策略函数为πω(at|stω),终止函数为βω(stβ);
其中上层策略函数的输入量为st和ω,st代表t(t∈{0,1,2…})时刻观测获得的环境状态,双轴孔装配中的环境状态主要包括通过力传感器获得的机器人在该时刻六个力信号[Fx,Fy,Fz,Mx,My,Mz],包括机器人该时刻在工作空间坐标系下受到分别沿x,y,z轴正方向的力Fx,Fy,Fz和扭矩Mx,My,Mz,以及该时刻轴的位置位姿信息[Px,Py,Pz,Ox,Oy,Oz],包括轴末端点该时刻在工作空间坐标系下的分别沿x,y,z坐标轴的位置坐标Px,Py,Pz和轴线方向分别相对于x,y,z坐标轴的位置角Ox,Oy,Oz;OΩ代表上层策略函数的参数;Oω是上层策略函数的输出量,代表ω所对应装配阶段内的运动控制参数。上层策略函数的工作过程可写为:
Figure GDA0003263023760000061
或θω=πΩ(st,ω,θΩ)。
下层策略函数的输入量为st,输出量为at,at代表装配过程中t时刻的装配动作
Figure GDA0003263023760000062
包括该时刻机器人在工作空间坐标系下分别绕x,y,z轴的三个旋转运动量
Figure GDA0003263023760000063
和三个平移运动量
Figure GDA0003263023760000064
上层策略函数的输出量θω是下层策略函数的参数。下层策略函数的工作过程可写为:
Figure GDA0003263023760000065
或at=πω(stω)。
终止函数的输入量为st,θβ是终止函数的参数,终止函数的输出值为取值{0,1}的判定结果,当终止函数的输出值等于1时代表双轴孔装配当前的装配阶段结束,需要根据上层策略函数选择下一个装配阶段对应的下层策略函数参数θω。当终止函数的输出值等于0时代表双轴孔装配当前的装配阶段未结束。
对上层策略函数参数θΩ和终止函数参数θβ分别进行初始化。
定义动作价值函数QU(st,at,ω|θQ),代表机器人在ω所对应装配阶段内,在状态st时,执行动作at时能够收到的奖励值,并对动作价值函数的参数θQ进行初始化。所述参数θΩ,θβ,θQ的初始值可以取-1~1之间的随机值;
设定装配训练回合数l的初始值为1。
1-3)在装配训练回合l(l∈{1,2,3…L})开始时,机器人将轴运动到设定的初始位置,设定每个训练回合初始位置对应的时刻t=1,设定该回合中装配阶段序号ω的初始值为1。
在第1个训练回合的t=1时刻,获取该时刻初始位置对应的st并输入初始的上层策略函数πΩω|st,ω,θΩ),该函数输出参数θω作为下层策略函数πω(at|stω)的参数θω的初始值。
1-4)在装配训练回合l中的t时刻,观测环境状态st,将st输入当前终止函数后,对当前终止函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,然后执行步骤1-5)。
如果输出值为0,代表当前装配阶段未终止,则跳过步骤1-5)执行步骤1-6),此时θω不更新:θω与当前装配训练回合上一时刻(即t-1时刻)的θω取值相同;若t时刻是装配回合开始的第一个时刻(即t=1),则θω取上一个装配训练回合结束时的θω取值(若当前训练回合为第1个回合,则θω保持初始值不变)。
1-5)将st输入当前上层策略函数πΩω|stΩ),该函数输出更新后的当前下层策略函数的参数θω,然后进入步骤1-6);
1-6)将st输入当前下层策略函数πω(at|stω),该函数输出t时刻机器人对应动作at。然后令机器人执行动作at,机器人携带轴抵达新的位置,得到新的状态st+1(即t+1时刻的环境状态)。
1-7)观测机器人下一时刻(即t+1时刻)的环境状态st+1,将st+1输入当前奖励函数,该函数输出t+1时刻收获的奖励值r(st+1),然后根据时间差分算法对当前动作价值函数QU(st,at,ω|θQ)的参数θQ进行更新:
Figure GDA0003263023760000071
Figure GDA0003263023760000072
其中,δt表示t时刻的时序差分误差,at+1表示在t+1时刻当前下层策略函数输出的动作;
Figure GDA0003263023760000073
表示将st+1输入当前下层策略函数πω(at|stω)得到t+1时刻的动作at+1
将更新后的参数θQ作为动作价值函数新的参数,得到更新后的当前动作价值函数QU(st,at,ω|θQ)。
1-8)利用更新后的当前动作价值函数QU(st,at,ω|θQ)对当前上层策略函数和当前终止函数进行更新学习,因此参数θΩ和θβ可以利用策略梯度下降理论进行更新:
Figure GDA0003263023760000081
其中αω代表下层策略函数的学习率,将更新后的θΩ作为新的当前上层策略函数的参数。
Figure GDA0003263023760000082
其中αβ代表终止函数的学习率,AΩ(st+1,ω)=QΩ(st+1,ω)-VΩ(st+1),其中QΩ(st+1,ω)=∑aπω(at|stω)QU(st,at,ω|θQ),VΩ(st+1)=∑ωπΩω|st+1,ω,θΩ)QΩ(st+1,ω)。将更新后的θβ作为新的当前终止函数参数。
1-9)根据机器人t+1时刻观测到的环境状态st+1,判断机器人携带轴是否到达了指定的目标深度D:
如果抵达目标深度D,则当前装配训练回合l终止,执行步骤1-10)。
如果未抵达目标深度D,则当前装配训练回合l未终止,令t=t+1,然后重新返回步骤1-4);
1-10)判断装配训练的回合数l是否到达设定的装配训练回合总数L:
如果达到(即l≥L),则训练阶段结束,最终获得的训练完毕上层策略函数参数θΩ和终止函数参数θβ分别记为
Figure GDA0003263023760000083
Figure GDA0003263023760000084
然后进入步骤2)。
如果未达到即(l<L),则更新装配训练的回合数l←l+1,然后重新返回步骤1-3)。
2)实际装配阶段;在实际装配阶段,双轴孔装配的目标深度为D;具体步骤如下:
2-1)在实际装配开始时,将
Figure GDA0003263023760000085
作为终止函数βω(stβ)的参数,此时终止函数记为
Figure GDA0003263023760000086
Figure GDA0003263023760000087
作为上层策略函数πΩω|st,ω,θΩ)的参数,此时上层策略函数记为
Figure GDA0003263023760000088
初始化t=1,ω=1。机器人携带力传感器及轴运动到设定的初始位置,获取此时刻对应的环境状态并作为t时刻的环境状态st
2-2)将st输入上层策略函数
Figure GDA0003263023760000089
该函数输出参数θω作为下层策略函数πω(at|stω)的参数θω的初始值。
2-3)将st输入终止函数
Figure GDA00032630237600000810
对该函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,继续执行步骤2-4)。
如果输出值为0,代表当前装配阶段未终止,则跳过步骤2-4)执行步骤2-5),θω不更新,此时θω与上一时刻(即t-1时刻)的θω取值相同,若t时刻是装配回合开始的第一个时刻(即t=1),则θω取初始值。
2-4)将st输入上层策略函数
Figure GDA0003263023760000091
该函数输出更新后的参数θω
2-5)将st输入下层策略函数πω(at|stω),该函数输出t时刻机器人对应动作at。然后令机器人执行动作at,携带轴抵达新的位置,更新环境状态为st+1,(即t+1时刻的环境状态)。
2-6)观测机器人下一时刻(即t+1时刻)的环境状态st+1,判断机器人携带轴是否到达了指定的目标深度D:如果抵达目标深度D,则装配完成。如果未抵达目标深度D,则装配未完成,令t=t+1,然后重新返回执行步骤2-3)。

Claims (1)

1.一种基于层级强化学习的机器人双轴孔装配方法,其特征在于,该方法分为训练阶段和实际装配阶段,包括以下步骤:
1)训练阶段;具体步骤如下:
1-1)预先确定层级强化学习方法的装配训练回合总数为L;设定双轴孔装配的目标深度为D,当机器人携带轴到达目标深度D时,一个回合结束;
在双轴孔装配的一个回合中,按照时间顺序将该回合分为n个互不相同的装配阶段,则一个回合中装配阶段序号ω的取值范围为{1,2,3…n},ω的n种取值分别与装配过程n个互不相同的装配阶段一一对应;
设定奖励函数r(st),代表观测到环境状态st时收获的奖励值;设定动作价值函数的学习率αu,终止函数的学习率αβ,上层策略函数的学习率αΩ,下层策略函数的学习率αω和衰减率γ;
1-2)设定机器人双轴孔装配的上层策略函数为πΩω|st,ω,θΩ),下层策略函数为πω(at|st,θω),终止函数为βω(st,θβ);
其中上层策略函数的输入量为st和ω,st代表t时刻观测获得的环境状态,双轴孔装配中的环境状态包括机器人在该时刻的力和扭矩信息[Fx,Fy,Fz,Mx,My,Mz]以及该时刻轴的位置位姿信息[Px,Py,Pz,Ox,Oy,Oz],其中,Fx,Fy,Fz分别为机器人在工作空间坐标系下受到的沿x,y,z轴正方向的力,Mx,My,Mz分别为机器人在工作空间坐标系下受到的沿x,y,z轴正方向的扭矩,Px,Py,Pz分别为轴末端点在工作空间坐标系下的沿x,y,z坐标轴的位置坐标,Ox,Oy,Oz分别为轴线方向相对于x,y,z坐标轴的位置角;θΩ代表上层策略函数的参数;θω是上层策略函数的输出量,代表ω所对应装配阶段内的运动控制参数;
下层策略函数的输入量为st,输出量为at,at代表装配过程中t时刻的装配动作
Figure FDA0003263023750000011
包括该时刻机器人在工作空间坐标系下分别绕x,y,z轴的三个旋转运动量
Figure FDA0003263023750000012
和三个平移运动量
Figure FDA0003263023750000013
上层策略函数的输出量θω是下层策略函数的参数;
终止函数的输入量为st,θβ是终止函数的参数,终止函数的输出值为取值{0,1}的判定结果,当终止函数的输出值等于1时代表双轴孔装配当前的装配阶段结束,当终止函数的输出值等于0时代表双轴孔装配当前的装配阶段未结束;
对上层策略函数参数θΩ和终止函数参数θβ分别进行初始化;
定义动作价值函数QU(st,at,ω|θQ),代表机器人在ω所对应装配阶段内,在状态st时,执行动作at时能够收到的奖励值,并对动作价值函数的参数θQ进行初始化;
设定装配训练回合数l的初始值为1;
1-3)在装配训练回合l开始时,机器人将轴运动到设定的初始位置,设定每个训练回合初始位置对应的时刻t=1,设定该回合中装配阶段序号ω的初始值为1;在第1个训练回合的t=1时刻,获取该时刻初始位置对应的st并输入初始的上层策略函数πΩω|st,ω,θΩ),该函数输出参数θω作为下层策略函数πω(at|st,θω)的参数的θω的初始值;
1-4)在装配训练回合l中的t时刻,获取观测环境状态st,将st输入当前终止函数βω(st,θβ)后,对当前终止函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,然后进入步骤1-5);
如果输出值为0,代表当前装配阶段未终止,则进入步骤1-6),θω不更新;
1-5)将st输入当前上层策略函数πΩω|st,θΩ),该函数输出更新后的当前下层策略函数的参数θω,然后进入步骤1-6);
1-6)将st输入当前下层策略函数πω(at|st,θω),该函数输出t时刻机器人对应动作at;然后令机器人执行动作at,机器人携带轴抵达新的位置,得到t+1时刻的环境状态的状态st+1
1-7)将st+1输入当前奖励函数,该函数输出t+1时刻收获的奖励值r(st+1),然后根据时间差分算法对当前动作价值函数QU(st,at,ω|θQ)的参数θQ进行更新,得到更新后的当前动作价值函数QU(st,at,ω|θQ):
Figure FDA0003263023750000021
Figure FDA0003263023750000022
其中,δt表示t时刻的时序差分误差,at+1表示在t+1时刻当前下层策略函数输出的动作;
Figure FDA0003263023750000023
表示将st+1输入当前下层策略函数πω(at|st,θω)得到t+1时刻的动作at+1
1-8)利用更新后的当前动作价值函数QU(st,at,ω|θQ)对当前上层策略函数和当前终止函数进行更新学习,更新参数θΩ和θβ,表达式如下:
Figure FDA0003263023750000024
Figure FDA0003263023750000025
其中,
AΩ(st+1,ω)=QΩ(st+1,ω)-VΩ(st+1),
QΩ(st+1,ω)=∑aπω(at|st,θω)QU(st,at,ω|θQ),
VΩ(st+1)=∑ωπΩω|st+1,ω,θΩ)QΩ(st+1,ω);
θΩ和θβ更新后,分别得到更新后的当前上层策略函数和更新后的当前终止函数;
1-9)根据st+1,判断机器人携带轴是否到达了指定的目标深度D:
如果抵达目标深度D,则当前装配训练回合l终止,执行步骤1-10);
如果未抵达目标深度D,则当前装配训练回合l未终止,令t=t+1,然后重新返回步骤1-4);
1-10)判断装配训练的回合数l是否到达设定的装配训练回合总数L:
如果l≥L,则训练阶段结束,最终获得的训练完毕上层策略函数参数θΩ和终止函数参数θβ分别记为
Figure FDA0003263023750000031
Figure FDA0003263023750000032
然后进入步骤2);
如果l<L,则更新装配训练的回合数l←l+1,然后重新返回步骤1-3);
2)实际装配阶段;具体步骤如下:
2-1)在实际装配开始时,将
Figure FDA0003263023750000033
作为终止函数βω(st,θβ)的参数,此时的终止函数记为
Figure FDA0003263023750000034
Figure FDA0003263023750000035
作为上层策略函数πΩω|st,ω,θΩ)的参数,此时的上层策略函数记为
Figure FDA0003263023750000036
初始化t=1,ω=1;机器人携带轴运动到设定的初始位置,获取此时刻对应的环境状态并作为t时刻的环境状态st
2-2)将st输入上层策略函数
Figure FDA0003263023750000037
该函数输出参数θω作为下层策略函数πω(at|st,θω)的参数θω的初始值;
2-3)将st输入终止函数
Figure FDA0003263023750000038
对该函数的输出值进行判定:
如果输出值为1,代表当前装配阶段终止,则更新ω←ω+1,进入步骤2-4);如果输出值为0,代表当前装配阶段未终止,则进入步骤2-5),θω不更新;
2-4)将st输入上层策略函数
Figure FDA0003263023750000039
该函数输出更新后的参数θω
2-5)将st输入下层策略函数πω(at|st,θω),该函数输出t时刻机器人对应动作at;然后令机器人执行动作at,携带轴抵达新的位置,更新环境状态为st+1
2-6)根据st+1,判断机器人携带轴是否到达了目标深度D:
如果抵达目标深度D,则装配完成;如果未抵达目标深度D,则装配未完成,令t=t+1,然后重新返回步骤2-3)。
CN202011107036.1A 2020-10-16 2020-10-16 一种基于层级强化学习的机器人双轴孔装配方法 Active CN112264995B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011107036.1A CN112264995B (zh) 2020-10-16 2020-10-16 一种基于层级强化学习的机器人双轴孔装配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011107036.1A CN112264995B (zh) 2020-10-16 2020-10-16 一种基于层级强化学习的机器人双轴孔装配方法

Publications (2)

Publication Number Publication Date
CN112264995A CN112264995A (zh) 2021-01-26
CN112264995B true CN112264995B (zh) 2021-11-16

Family

ID=74337552

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011107036.1A Active CN112264995B (zh) 2020-10-16 2020-10-16 一种基于层级强化学习的机器人双轴孔装配方法

Country Status (1)

Country Link
CN (1) CN112264995B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115338610B (zh) * 2022-07-04 2024-02-13 中国科学院自动化研究所 双轴孔装配方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108161934A (zh) * 2017-12-25 2018-06-15 清华大学 一种利用深度强化学习实现机器人多轴孔装配的方法
CN110238839A (zh) * 2019-04-11 2019-09-17 清华大学 一种利用环境预测优化非模型机器人多轴孔装配控制方法
CN110390398A (zh) * 2018-04-13 2019-10-29 北京智行者科技有限公司 在线学习方法
CN110666793A (zh) * 2019-09-11 2020-01-10 大连理工大学 基于深度强化学习实现机器人方形零件装配的方法
CN111144580A (zh) * 2019-12-31 2020-05-12 中国电子科技集团公司信息科学研究院 一种基于模仿学习的层级强化学习训练方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10754308B2 (en) * 2017-11-09 2020-08-25 International Business Machines Corporation Decomposed perturbation approach using memory based learning for compliant assembly tasks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108161934A (zh) * 2017-12-25 2018-06-15 清华大学 一种利用深度强化学习实现机器人多轴孔装配的方法
CN110390398A (zh) * 2018-04-13 2019-10-29 北京智行者科技有限公司 在线学习方法
CN110238839A (zh) * 2019-04-11 2019-09-17 清华大学 一种利用环境预测优化非模型机器人多轴孔装配控制方法
CN110666793A (zh) * 2019-09-11 2020-01-10 大连理工大学 基于深度强化学习实现机器人方形零件装配的方法
CN111144580A (zh) * 2019-12-31 2020-05-12 中国电子科技集团公司信息科学研究院 一种基于模仿学习的层级强化学习训练方法和装置

Also Published As

Publication number Publication date
CN112264995A (zh) 2021-01-26

Similar Documents

Publication Publication Date Title
CN108161934B (zh) 一种利用深度强化学习实现机器人多轴孔装配的方法
WO2022012265A1 (en) Robot learning from demonstration via meta-imitation learning
CN111515961B (zh) 一种适用于移动机械臂的强化学习奖励方法
CN111881772B (zh) 基于深度强化学习的多机械臂协同装配方法和系统
CN110238839B (zh) 一种利用环境预测优化非模型机器人多轴孔装配控制方法
CN113510704A (zh) 一种基于强化学习算法的工业机械臂运动规划方法
CN113031528B (zh) 一种基于深度确定性策略梯度的多足机器人非结构性地面运动控制方法
CN113821045B (zh) 一种腿足机器人强化学习动作生成系统
CN112264995B (zh) 一种基于层级强化学习的机器人双轴孔装配方法
CN111702766B (zh) 一种基于力觉引导的机械臂自适应开门旋拧方法
CN113043275A (zh) 基于专家演示和强化学习的微零件装配方法
CN115416024A (zh) 一种力矩控制的机械臂自主轨迹规划方法和系统
CN112749515A (zh) 融合生物启发和深度强化学习的损伤机器人步态自学习
Huang et al. A hybrid fuzzy logic and neural network algorithm for robot motion control
Kumar et al. Robotic arm movement optimization using soft computing
CN116408804A (zh) 一种基于门控循环单元的轴孔装配插孔方法
CN115674204A (zh) 一种基于深度强化学习与导纳控制的机器人轴孔装配方法
CN115446867A (zh) 一种基于数字孪生技术的工业机械臂控制方法及系统
CN111546035B (zh) 一种基于学习与预测的齿轮在线快速装配方法
CN114967472A (zh) 一种无人机轨迹跟踪状态补偿深度确定性策略梯度控制方法
Lopez-Juarez et al. On the design of intelligent robotic agents for assembly
CN115373415A (zh) 一种基于深度强化学习的无人机智能导航方法
Li et al. Research on the agricultural machinery path tracking method based on deep reinforcement learning
CN116774576A (zh) 基于神经网络间接估计的水下航行器动力学黑盒建模方法
CN113977583B (zh) 基于近端策略优化算法的机器人快速装配方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant