基于视觉的机器人的控制方法、设备及存储介质

文档序号:30925365发布日期:2022-07-29 23:39阅读:106来源:国知局
基于视觉的机器人的控制方法、设备及存储介质

1.本发明涉及视觉辅助控制领域,尤其涉及一种基于视觉的机器人的控制方法、设备及存储介质。


背景技术:

2.视觉强化学习(visual reinforcement learning)算法在机器人控制、游戏智能等领域取得了巨大的成功,它是一种直接以高维视觉作为输入的强化学习算法,旨在处理具有高维感知数据的复杂的控制任务。以经典的深度q网络(deep q-network,dqn)算法为例,它使用原始图像作为输入,结合深度神经网络构建端到端的训练模型,并在49种atari游戏上取得了优异的性能。此外,一些现有的视觉强化学习算法,例如impala算法和qt-opt算法,分别在解决基于视觉的多任务学习和基于视觉的机器人抓取问题上取到了较好的成果。
3.然而,尽管这些方法在训练环境中表现良好,但它们训练得到的策略难以被推广到新的环境中。这是因为输入图像中常包含许多和决策任务无关的视觉因素,如图像的背景、图像的拍摄角度、障碍物的颜色等。当将机器人放入一个新环境,仅更改这些无关视觉因素,虽然从决策层面来看,环境的实际意义是相同的(或称为语义上等价),但从数据层面上看,机器人观测到的环境分布会因为这些视觉因素的微小变化而发生较大的偏移。这将导致机器人识别不出其原先所学习到的任务相关信息,从而限制了它的泛化能力。现有的视觉强化算法能在单个环境下训练得到最优策略,但如果将这些策略应用于其他的相似环境,其性能表现通常会很差。
4.为了提高泛化性能,研究者们将目光投向于表征学习,希望训练出的表征只编码图像输入中与任务相关的特征,而摒弃那些由视觉因素引起的任务无关信息,以使得基于所学表征优化得到的机器人具备较强的泛化能力。为了达到该目的,一些研究者提出了相似性度量(similarity metrics),通过该度量方式判断出语义上等价的图像,通过让这些图像的表征相似来辅助表征学习。另一些研究者利用马尔科夫决策过程的特有属性(例如奖励、概率转移函数等)来设计辅助任务,从而学习出不受无关视觉因素干扰的不变表征。现有的这些方法在学习表征的过程中,都利用到了奖励函数和概率转移函数来获得任务相关的特征。
5.然而,进行机器人控制的视觉强化学习任务中无法获取到强化学习中常用的状态(任务相关且有语义的向量数据)的概率转移函数,于是现有方法使用能获取到的观测数据(图像数据)的转移函数作为替代。但是,由于观测转移函数表示着前一时刻的输入图像到下一时刻的输入图像的转移概率,不仅包含了机器人的状态转移概率,也包含了无关视觉因素的转移概率。因此,使用观测转移函数进行表征学习可能会错误的学到由视觉干扰引起的任务无关信息,导致学得的表征质量下降,无法保证基于视觉控制机器人的视觉抗干扰性能。
6.有鉴于此,特提出本发明。


技术实现要素:

7.本发明的目的是提供了一种基于视觉的机器人的控制方法,能提升基于视觉控制机器人的抗未知视觉干扰性能,提升控制的准确性,进而解决现有技术中存在的上述技术问题。
8.本发明的目的是通过以下技术方案实现的:
9.本发明实施方式提供一种基于视觉的机器人的控制方法,包括:
10.步骤1,通过与机器人通信连接的摄像头按预设时间间隔获取多张包含机器人和环境的图像,将获取的多张图像通过强化学习帧栈堆叠得到用于后续控制的输入图像数据;
11.步骤2,使用训练好的卷积特征编码器对所述步骤1中得到的输入图像数据进行编码,得到一个50维的向量即为t-级奖励序列表征数据;
12.步骤3,使用训练好的多层感知决策模型将所述步骤2中得到的t-级奖励序列表征数据映射为一个最优动作,使所述机器人执行该最优动作来对该机器人进行最优控制。
13.本发明实施方式还提供一种控制设备,包括:
14.至少一个存储器,用于存储一个或多个程序;
15.至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现本发明所述的方法。
16.本发明实施方式进一步提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时能实现本发明所述的方法。
17.与现有技术相比,本发明所提供的基于视觉的机器人的控制方法、设备及存储介质,其有益效果包括:
18.通过将多张图像通过强化学习帧栈堆叠得到用于后续控制的输入图像数据,再通过训练好的卷积特征编码器将输入图像数据编码成t-级奖励序列表征数据,利用训练好的多层感知决策模型将所述步骤2中得到的t-级奖励序列表征数据映射为一个最优动作,进而利用该最优动作实现机器人的最优控制;由于编码得到的t-级奖励序列表征数据不包含无关视觉因素的转移概率,在提取表征的过程中不再受干扰于观测转移函数引入的任务无关信息,提升了基于视觉控制机器人的抗未知视觉干扰性能。
附图说明
19.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
20.图1为本发明实施例提供的基于视觉机器人的控制方法的流程图。
21.图2为本发明实施例提供的基于视觉机器人的控制方法的卷积特征编码器、多层感知决策模型和双头特征函数预测器的构成示意图。
22.图3为本发明实施例提供的基于视觉机器人的控制方法的仿真实验示意图;其中,(a)为容器机器人完成碗抓球控制任务的示意图;(b)为平衡车机器人完成摇杆控制任务的示意图;(c)为猎豹机器人完成向前奔跑控制任务的示意图;(d)为二维手指机器人完成转
动平衡杆控制任务的示意图;(e)为二维双连杆机器人完成机械杆移动控制任务的示意图;(f)为二足人形机器人完成向前奔跑控制任务的示意图。
23.图4、图5、图6为本发明实施例提供的基于视觉机器人的控制方法的在动态背景干扰下控制仿真机器人与现有控制方法的训练效果对比曲线图;其中,图4(a)为容器机器人完成碗抓球控制任务的训练次数对比曲线图;图4(b)为平衡车机器人完成摇杆控制任务的训练次数对比曲线图;图5(a)为猎豹机器人完成向前奔跑控制任务的训练次数对比曲线图;图5(b)为二维手指机器人完成转动平衡杆控制任务的训练次数对比曲线图;图6(a)为二维双连杆机器人完成机械杆移动控制任务的训练次数对比曲线图;图6(b)为二足人形机器人完成向前奔跑控制任务的训练次数对比曲线图。
24.图7、图8、图9为本发明实施例提供的基于视觉机器人的控制方法动态色彩干扰下控制仿真机器人与现有控制方法的训练效果对比曲线图;其中,图7(a)为容器机器人完成碗抓球控制任务的训练次数对比曲线图;图7(b)为平衡车机器人完成摇杆控制任务的训练次数对比曲线图;图8(a)为猎豹机器人完成向前奔跑控制任务的训练次数对比曲线图;图8(b)为二维手指机器人完成转动平衡杆控制任务的训练次数对比曲线图;图9(a)为二维双连杆机器人完成机械杆移动控制任务的训练次数对比曲线图;图9(b)为二足人形机器人完成向前奔跑控制任务的训练次数对比曲线图。
具体实施方式
25.下面结合本发明的具体内容,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,这并不构成对本发明的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
26.首先对本文中可能使用的术语进行如下说明:
27.术语“和/或”是表示两者任一或两者同时均可实现,例如,x和/或y表示既包括“x”或“y”的情况也包括“x和y”的三种情况。
28.术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
29.术语“由
……
组成”表示排除任何未明确列出的技术特征要素。若将该术语用于权利要求中,则该术语将使权利要求成为封闭式,使其不包含除明确列出的技术特征要素以外的技术特征要素,但与其相关的常规杂质除外。如果该术语只是出现在权利要求的某子句中,那么其仅限定在该子句中明确列出的要素,其他子句中所记载的要素并不被排除在整体权利要求之外。
30.除另有明确的规定或限定外,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如:可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本文中的具体含
义。
31.当浓度、温度、压力、尺寸或者其它参数以数值范围形式表示时,该数值范围应被理解为具体公开了该数值范围内任何上限值、下限值、优选值的配对所形成的所有范围,而不论该范围是否被明确记载;例如,如果记载了数值范围“2~8”时,那么该数值范围应被解释为包括“2~7”、“2~6”、“5~7”、“3~4和6~7”、“3~5和7”、“2和5~7”等范围。除另有说明外,本文中记载的数值范围既包括其端值也包括在该数值范围内的所有整数和分数。
32.术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述和简化描述,而不是明示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本文的限制。
33.下面对本发明所提供的基于视觉的机器人的控制方法、设备及存储介质进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。
34.如图1所示,本发明实施例提供一种基于视觉的机器人的控制方法,包括:
35.步骤1,通过与机器人通信连接的摄像头按预设时间间隔获取多张包含机器人和环境的图像,将获取的多张图像通过强化学习帧栈堆叠得到用于后续控制的输入图像数据;
36.步骤2,使用训练好的卷积特征编码器对所述步骤1中得到的输入图像数据进行编码,得到一个50维的向量即为t-级奖励序列表征数据;
37.步骤3,使用训练好的多层感知决策模型将所述步骤2中得到的t-级奖励序列表征数据映射为一个最优动作,使所述机器人执行该最优动作来对该机器人进行最优控制。
38.上述方法的步骤1中,与机器人通信连接的摄像头包括:机器人内部设置的摄像头和机器人周边的外部摄像头;
39.所述预设时间间隔为1秒;
40.多张包含机器人和环境的图像为三张图像。
41.上述方法中,预先按以下方式对卷积特征编码器和多层感知决策模型进行训练,得到预先训练好的卷积特征编码器和多层感知决策模型,先收集训练启动用的不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中,训练过程包括以下步骤:
42.步骤21,通过与机器人通信连接的内部摄像头和周边的外部摄像头,获取包含机器人和环境的三张图像,将获取的三张图像通过强化学习帧栈堆叠处理为一个输入图像样本;
43.步骤22,通过作为卷积特征编码器的卷积神经网络,对所述步骤21中获得的输入图像样本进行编码得到相应的输出表征数据,再以作为多层感知决策模型的多层感知机将所述卷积特征编码器的输出表征数据映射为具体控制机器人行为的决策动作数据,然后按机器人具体控制任务使用该机器人对应的通用奖励函数计算所述输入图像样本和决策动作数据对应的奖励数据;
44.步骤23,将所述步骤21、22收集的输入图像样本、决策动作数据和奖励数据按数据收集的时间先后顺序存放在经验回放池中;
45.步骤24,从经验回放池存储的数据中取出256个输入图像样本、256个决策动作数据和256个奖励数据作为一个批数据,将该批数据里的奖励数据依据数据收集的时间先后顺序排列成整体奖励序列,按预设时长t将整体奖励序列分为多个奖励序列段,多个奖励序列段作为一个批次的奖励序列段,将一个批次的奖励序列段中的每个奖励序列段看作随机变量,通过随机变量的特征函数公式以采样的方式计算出一个批次的奖励序列的特征函数采样值,每个奖励序列段计算不少于64次,得到不少于64个批次的特征函数采样值;
46.步骤25,以卷积特征编码器对批数据中的输入图像样本的编码作为双头特征函数预测器的输入,以对不少于64个批次的特征函数采样值的预测值作为该双头特征函数预测器的输出,利用所述步骤23中的批数据和得到的不少于64个批次的特征函数采样值对双头特征函数预测器进行训练,在所述双头特征函数预测器训练过程中优化更新卷积特征编码器,使优化更新的卷积特征编码器能编码出机器人控制任务所需要的t-级奖励序列表征数据;
47.步骤26,用所述步骤24优化更新的卷积特征编码器将所述步骤23的批数据中的输入图像样本编码为t-级奖励序列表征数据,再用传统强化学习中的策略评估和策略提升以所述t-级奖励序列表征数据为输入,训练更新多层感知决策模型;
48.步骤27,重复所述步骤21至27的操作,直到经验回放池中的数据量超出预设的训练结束数据量后结束训练。
49.上述方法中,训练开始前,按以下方式收集训练启动用的不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中,包括:
50.步骤201,通过与机器人通信连接的内部摄像头和周边的外部摄像头,获取包含机器人和环境的三张图像,将获取的三张图像通过强化学习帧栈堆叠处理为一个输入图像样本;
51.步骤202,使用初始化的卷积神经网络作为卷积特征编码器,对所述步骤21中获得的输入图像样本进行编码得到相应的输出表征数据,再以初始化后的多层感知机作为多层感知决策模型,将所述卷积特征编码器的输出表征数据映射为具体控制机器人行为的决策动作数据,然后按机器人具体控制任务使用该机器人对应的通用奖励函数计算所述输入图像样本和决策动作数据对应的奖励数据;
52.步骤203,重复所述步骤21和22的操作收集不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中。
53.上述的步骤203中,收集的输入图像样本、决策动作数据和奖励数据的数量均不少于5000个。
54.上述方法的步骤24中,对整体奖励序列进行分段的预设时长t为5秒;
55.所述步骤25中,所述双头特征函数预测器为基于多层感知机设计的输出层采用双头结构的全连接网络结构,能匹配特征函数复数值中的实部和虚部;
56.所述步骤27中,预设的训练结束数据量为1000000个。
57.上述方法的步骤24中,以采样的方式计算出一个批次的奖励序列的特征函数采样
值的随机变量的特征函数公式为:
[0058][0059]
上述公式中各参数含义为:r为随机变量,是t时刻下长度为t秒的奖励序列段;o为作为输入的t时刻下的一个输入图像样本,由t时刻下的三个图像通过强化学习帧栈堆叠得到;a为t时刻下长度为t秒的动作序列段,即按时间顺序排列整体决策动作数据,按预设时长t将整体动作序列分为多个动作序列段,起始于t时刻的动作序列段就是a;ω为特征函数的采样点;e为求期望的数学表达公式;i为复数单位《
·
,
·
》为内积运算p为观测数据o和动作序列a到某一奖励序列段的概率密度函数;
[0060]
按上述公式对每个奖励序列段重复计算不少于64次,即得到所述步骤24中的64个批次的特征函数采样值。
[0061]
上述方法的步骤25中,所述双头特征函数预测器ψ=(ψ
cos

sin
)使用卷积特征编码器的输出φ(o)作为输入,通过公式预测奖励序列段的特征函数采样值中的实部ψ
cos
和虚部ψ
sin
,所述双头特征函数预测器的损失函数为:
[0062][0063]
所述公式中各参数含义为:e为求期望的数学表达公式;o、a、ω为o、a、ω的随机变量;为强化学习任务中保存历史数据的经验回放池;为标准高斯分布;和sin(《ω,r》)分别为特征函数采样值计算公式中e
i《ω,r》
的实部和虚部;
[0064]
所述步骤25中,通过公式所述步骤25中,通过公式进行多层感知决策模型的策略评估,其中,q是用于拟合当前多层感知决策模型π的动作价值函数的函数估计器;(o,a,r,o

)是保存历史数据的经验回放池中的输入图像样本、决策动作数据和奖励数据;a

是多层感知决策模型在以φ(o

)为输入时映射得到的输出值;
[0065]
通过公式进行多层感知决策模型的策略提升,来得到最优控制的多层感知决策模型,其中,logπ(a|z)是多层感知决策模型在输入表征z的情况下采取动作a的概率。
[0066]
本发明实施例还提供一种控制设备,包括:
[0067]
至少一个存储器,用于存储一个或多个程序;
[0068]
至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现上述的方法。
[0069]
本发明进一步提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时能实现上述的方法。
[0070]
综上可见,本发明实施例的基于视觉的机器人的控制方法,通过将帧栈堆叠图像作为输入图像数据,经训练好的卷积特征编码器编码成t-级奖励序列表征数据的方式,不
需要观测转移函数,利用和任务直接相关的奖励函数构成长期奖励序列分布,并通过预测特征函数的方式拟合奖励序列分布,实现只编码任务相关信息、不引入任务无关信息的表征方式,基于视觉对机器人进行控制时,有效增强了视觉强化学习算法训练得到的策略从训练环境迁移至包含视觉干扰的新环境时的泛化性能。
[0071]
为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,下面以具体实施例对本发明实施例所提供的基于视觉的机器人的控制方法进行详细描述。
[0072]
实施例1
[0073]
如图1所示,本发明实施例提供一种基于视觉的机器人的控制方法,包括:
[0074]
步骤1,通过与机器人通信连接的摄像头(包括机器人内部摄像头和外部周围的摄像头)按预设时间间隔获取三张包含机器人和环境的图像,将获取的三张图像通过强化学习帧栈堆叠得到用于后续控制的输入图像数据;
[0075]
步骤2,使用训练好的卷积特征编码器对所述步骤1中得到的输入图像数据进行编码,得到一个50维的向量即为t-级奖励序列表征数据;
[0076]
步骤3,使用训练好的多层感知决策模型将所述步骤2中得到的t-级奖励序列表征数据映射为一个最优动作,使所述机器人执行该最优动作来对该机器人进行最优控制。
[0077]
上述方法中,预先按以下方式对卷积特征编码器和多层感知决策模型进行训练,得到预先训练好的卷积特征编码器和多层感知决策模型,先收集训练启动用的不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中,训练过程包括以下步骤:
[0078]
步骤21,通过与机器人通信连接的内部摄像头和周边的外部摄像头,获取包含机器人和环境的三张图像,将获取的三张图像通过强化学习帧栈堆叠处理为一个输入图像样本;
[0079]
步骤22,通过作为卷积特征编码器的卷积神经网络,对所述步骤21中获得的输入图像样本进行编码得到相应的输出表征数据,再以作为多层感知决策模型的多层感知机将所述卷积特征编码器的输出表征数据映射为具体控制机器人行为的决策动作数据,然后按机器人具体控制任务使用该机器人对应的通用奖励函数计算所述输入图像样本和决策动作数据对应的奖励数据;
[0080]
步骤23,将所述步骤21、22收集的输入图像样本、决策动作数据和奖励数据按数据收集的时间先后顺序存放在经验回放池中;
[0081]
步骤24,从经验回放池存储的数据中取出256个输入图像样本、256个决策动作数据和256个奖励数据作为一个批数据,将该批数据里的奖励数据依据数据收集的时间先后顺序排列成整体奖励序列,按预设时长t将整体奖励序列分为多个奖励序列段,多个奖励序列段作为一个批次的奖励序列段,将一个批次的奖励序列段中的每个奖励序列段看作随机变量,通过随机变量的特征函数公式以采样的方式计算出一个批次的奖励序列的特征函数采样值,每个奖励序列段计算不少于64次,得到不少于64个批次的特征函数采样值;
[0082]
步骤25,以卷积特征编码器对批数据中的输入图像样本的编码作为双头特征函数预测器的输入,以对不少于64个批次的特征函数采样值的预测值作为该双头特征函数预测器的输出,利用所述步骤23中的批数据和得到的不少于64个批次的特征函数采样值对双头特征函数预测器进行训练,在所述双头特征函数预测器训练过程中优化更新卷积特征编码
器,使优化更新的卷积特征编码器能编码出机器人控制任务所需要的t-级奖励序列表征数据;
[0083]
步骤26,用所述步骤24优化更新的卷积特征编码器将所述步骤23的批数据中的输入图像样本编码为t-级奖励序列表征数据,再用传统强化学习中的策略评估和策略提升以所述t-级奖励序列表征数据为输入,训练更新多层感知决策模型;
[0084]
步骤27,重复所述步骤21至27的操作,直到经验回放池中的数据量超出预设的训练结束数据量后结束训练。
[0085]
上述方法中,训练开始前,按以下方式收集训练启动用的不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中,包括:
[0086]
步骤201,通过与机器人通信连接的内部摄像头和周边的外部摄像头,获取包含机器人和环境的三张图像,将获取的三张图像通过强化学习帧栈堆叠处理为一个输入图像样本;
[0087]
步骤202,使用初始化的卷积神经网络作为卷积特征编码器,对所述步骤21中获得的输入图像样本进行编码得到相应的输出表征数据,再以初始化后的多层感知机作为多层感知决策模型,将所述卷积特征编码器的输出表征数据映射为具体控制机器人行为的决策动作数据,然后按机器人具体控制任务使用该机器人对应的通用奖励函数计算所述输入图像样本和决策动作数据对应的奖励数据;
[0088]
步骤203,重复所述步骤21和22的操作收集不少于256个输入图像样本、决策动作数据和奖励数据,并按数据收集的时间先后顺序存放在强化学习通用的经验回放池中。
[0089]
上述的步骤203中,收集的输入图像样本、决策动作数据和奖励数据的数量均不少于5000个。
[0090]
上述方法的步骤24中,对整体奖励序列进行分段的预设时长t为5秒。
[0091]
上述步骤22中,通过卷积特征编码器将输入图像样本编码为t-级奖励序列表征数据,这种t-级奖励序列表征数据是和任务相关且不随视觉干扰等因素变化的,而观测转移函数是会引入的视觉干扰信息的,主要体现在:观测转移函数与视觉干扰信息是相关的,它同时包含了状态和视觉干扰的转移函数,且观测转移概率是会随着环境的变化而变化的,现有将输入图像数据编码为观测转移函数中的信息会同时编码到视觉干扰中的任务无关信息,导致机器人难以学习到可迁移的技能,降低机器人控制的准确性。但相比于观测转移函数,奖励信号的分布和强化学习的任务直接相关,且奖励信号是不受视觉干扰因素影响的。本发明将一个长度为t的奖励序列定义为t维的随机变量r,并将其中一个样本定义为r=(r1,

,r
t
),在相同的动作序列a=(a1,

,a
t
)下r的条件概率分布有:
[0092]
p(r∣o,a)=p(r∣[o]s,a)
[0093]
ꢀꢀꢀꢀꢀꢀꢀꢀ
=p(r2∣s,a1)p(r3∣s,a1,a2)

p(r
t+1
∣s,a1,

,a
t
)
[0094]
ꢀꢀꢀꢀꢀꢀꢀꢀ
=p(r∣[o

]s,a)=p(r∣o

,a).
[0095]
基于该公式能确定奖励序列r的概率分布p(
·
∣o,a)是由状态s和动作序列a共同决定的,可以看出奖励序列分布是和任务相关且不随视觉干扰等因素变化的。
[0096]
上述步骤2的t-级奖励序列表征数据的定义为:一个表征如果能够在任意观测下采取长度为t的任意动作序列,从而到达任意的奖励序列分布,那么它就被称为
t-级奖励序列表征。即,存在函数f使得下式成立:
[0097][0098]
根据上述对t-级奖励序列表征数据的定义,确定了如何编码得出t-级奖励序列表征数据。
[0099]
由于上述定义的t-级奖励序列表征数据要保证收敛到最优策略的t-级奖励序列表征数据需要t趋向∞,这是无法在现实场景中应用的,因为在实际实现过程中本发明将t设置为一个有限的常数,以符合实际场景的训练步骤。为了保证使用有限长度的t编码出的t-级奖励序列表征数据是∞-级奖励序列表征的一种有效近似,本发明使t-级奖励序列表征的最优值函数以一种有界近似于真实的最优值函数,如是t-级奖励序列表征,是环境e中的最优值函数,是建立在φ表征空间中的最优值函数,是奖励空间的边界,则对于任意的和有
[0100][0101]
基于上述对t-级奖励序列表征的定义和如何近似最优值函数的说明,通过公式f(r;φ(o),a)=p(r∣o,a)实现将输入图像数据编码得出t-级奖励序列表征数据:
[0102]
再使用编码得出的t-级奖励序列表征数据去预测奖励序列的概率密度函数。
[0103]
为避免将奖励序列看作一个高维的随机变量r,在仅有少量的奖励序列样本的情况下,很难拟合其概率密度函数的问题,本发明将随机变量的概率密度函数转换为能进行无限次地采样特征函数,以基于特征函数进行采样的方法,在现有的强化学习算法中实现了t-级奖励序列表征的学习任务(图1),即奖励序列特征函数的预测任务(具体参见训练过程的步骤21至27)。
[0104]
其中,训练步骤25中,为了精准的预测奖励序列分布的特征函数,首先基于强化学习的经验回放池提供了训练过程中的理论损失函数为:
[0105][0106]
然而由于特征函数的期望在经验回放池中无法计算,为此做一步放缩得到上界损失函数,来最小化上述损失函数的上界:
[0107][0108]
考虑到特征函数的复数形式,针对性的设计了双头特征函数预测器ψ,该双头特征函数预测器使用了最基础的多层感知机结构,但在输出层使用了双头结构ψ=(ψ
cos

sin
),其中ψ
cos
和ψ
sin
分别用于估计特征函数的实部和虚部。基于双头特征函数预测器结构,
todorov教授开发,应用于最优控制、状态估计、系统辨识等领域,在机器人动态多点接触的应用场合(如多指灵巧手操作)有明显优势。),对本发明的控制方法在仿真环境中进行机器人控制任务。
[0121]
本实施例基于mujoco的机器人建模平台,谷歌的robotics实验室在deepmind开源的dm control基准上扩展并提供了distracting control suite(dcs)平台,封装了三种类型的视觉干扰(背景、颜色和相机姿势的变化),为基于视觉的控制任务提供了一个新的测试基准。
[0122]
如图3(a)-3(f)所示,在6个不同的仿真机器人控制环境下实现并测试了本发明的控制方法。在这些任务环境中,可观测的状态为仿真机器人各个部位(如腿部、关节等)的不同物理量(如位置、角度、速度等),可控制的动作为特定部位(如腿部、头部)使用的力的大小。具体地,6个仿真机器人控制环境分别为:
[0123]
(1)ball in cup catch:控制平面容器在垂直面上平移,以便其摆动并接住附在其底部的球。接球任务(catch)有一个稀疏奖励,当球在杯中得分为1,否则为0。其中观测空间为8维,动作空间为2维。
[0124]
(2)cartpole swingup:控制小车使其摇起并平衡一个无外力作用的杆子。在摆起任务(swingup)中,杆子一开始指向正下方。其中观测空间为5维,动作空间为1维。
[0125]
(3)cheetah run:控制二维的双足机器人向前奔跑。其中观测空间为17维,动作空间为6维。
[0126]
(4)finger spin:控制二维手指去旋转一个在无外力作用的铰链上的身体。其中状态空间为12维,动作空间为2维。在旋转任务(spin)中,身体必须要连续不间断地旋转。
[0127]
(5)reacher easy:控制二维的双连杆伸手,使伸手上的末端感触器穿过目标球体。在简单任务(easy)中,目标球体较大。其中观测空间为7维,动作空间为2维。
[0128]
(6)walker walk:控制二维人形机器人向前奔跑。在行走任务(walk)中,奖励中包含机器人前进的速度。其中观测空间为24维,动作空间为6维。
[0129]
以上6种任务输入的图片尺寸为3
×
84
×
84,在实验中,输入为3帧连续图像的叠加,尺寸为9
×
84
×
84。并且,在实验中设定机器人每几帧会重复执行由当前策略选择出的行动,图4显示了不同环境中机器人重复执行动作的帧数。
[0130]
不同环境中机器人重复执行动作的帧数如下表1
[0131][0132]
在本实施例中,提高了视觉输入的机器人控制方法在具有视觉干扰的没见过的测试环境中的泛化性能。在没有任何先验环境知识(如数据增强、下游调整、环境标签)的情况
下,在多环境中训练机器人,并研究不同的控制算法所训练的机器人在其没见过的测试环境中的性能。
[0133]
对于每种环境,都将本发明的控制方法与之前最先进的方法进行比较:
[0134]
(1)curl:一种用对比学习作为辅助任务的rl算法;
[0135]
(2)drq:一种在deepmind control(dmcontrol)任务上具有最先进性能的有效方法;
[0136]
(3)misa:最近的一种因果推理方法,通过近似一步奖励和动态来学习不变表示;
[0137]
(4)dbc:一种通过双模拟度量学习表征的rl泛化方法;
[0138]
(5)sac:一种传统的深度强化学习算法。
[0139]
将针对两种视觉干扰情况对本发明的控制方法(即基于特征函数的奖励序列预测算法,cresp)的泛化能力进行测试。
[0140]
(1)动态背景下的视觉干扰。
[0141]
按照distracting control suite(dcs)中的基准设置,在6个dmcontrol任务上使用动态背景干扰。从不同的视频中提取出动态背景代替图像中的原始背景。在训练过程中,使用2种动态背景用于训练机器人的决策,在测试阶段则使用另外30种动态背景进行评估。通过从经验池中随机采样历史数据来估计奖励序列分布。尽管做了上述近似,但cresp在大多数任务上表现良好,并且在一种与cresp算法相近的先验方法(misa)上取得了明显的改进。在上述的6个mujoco任务中,cresp平均实现了12.3%的性能改进。图4(a)、图4(b)、图5(a)、图5(b)、图6(a)、图7(b)显示了本发明控制方法(即cresp)与其他五种对比方法的学习曲线。
[0142]
(2)动态色彩干扰的评估。
[0143]
为了进一步证明cresp算法在包含视觉干扰的新环境上具有更好的泛化能力,对dcs基准使用了第二种视觉干扰方式,即动态颜色干扰。
[0144]
将在每一轮回合中不断改变机器人的颜色。其中,颜色的变化被建模为高斯分布,其均值被设置为前一次机器人的颜色,其标准差被设置为超参数β。使用2个训练环境,其中超参数β分别被设置为0.1和0.2,在测试环境中,则以β=0.5评估机器人的表现。
[0145]
这些结果表明,cresp有效提高了在包含动态颜色干扰的新环境上的泛化性能,并且比最好的先验方法平均多获得49.7%的得分。图7(a)、图7(b)、图8(a)、图8(b)、图9(a)、图9(b)显示了本发明控制方法(即cresp)与其他五种对比方法的学习曲线。
[0146]
实施例3
[0147]
准备阶段:
[0148]
选定待实验的控制任务,将其拆分为机器人与环境两部分。其中机器人接受环境反馈的状态选择动作;环境接受动作决定新的状态。然后,抽象出机器人可执行的动作,并设定好机器人接受的奖励。最大化奖励的累积值即我们的目标。
[0149]
训练阶段:
[0150]
使用深度学习方法实现上述伪代码,将其部署于机器人中,用于机器人控制,机器人遵循伪代码中的相应流程与训练环境进行交互,并将交互信息用于策略的训练,重复进行一段时间的训练。
[0151]
验证阶段:
[0152]
将训练环境得到的学习策略部署于测试环境机器人。注意,在测试过程中使用的环境相较于训练过程中使用的环境包含一定的视觉干扰因素(例如使用随机的动态背景、随机改变机器人的颜色等),以评价策略迁移至新环境时的泛化性。让机器人与环境交互,计算一定次数决策中,获取的奖励总和,作为评价效果的指标。该和越大,说明训练效果越好。
[0153]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本文背景技术部分公开的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1