一种仿蛇搜救机器人适应性步态自主涌现方法转让专利

申请号 : CN201811596803.2

文献号 : CN109719721B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹政才肖清黄冉胡标张东耿鹏李俊宽

申请人 : 北京化工大学

摘要 :

本发明公开了一种仿蛇搜救机器人适应性步态自主涌现方法,针对仿蛇搜救机器人的特殊机械结构及其所处复杂动态非结构环境,使用深度强化学习理论设计相应的步态自主学习方法。此方法应用于仿蛇搜救机器人,可以通过不断从环境中获取信息生成最优控制策略,实现在复杂非结构的救援现场中仿蛇搜救机器人的适应性步态自主涌现。该方法使用分布式并行近似策略优化,将多个仿蛇搜救机器人间策略经验相互共享,实现对未知救援环境的快速适应性学习。本发明解决传统强化学习方法不能适应复杂非结构环境以及算法收敛速度慢、稳定性差等问题,更切合实际,能够使仿蛇搜救机器人在搜救任务中自主生成适应性最优步态。

权利要求 :

1.一种仿蛇搜救机器人适应性步态自主涌现方法,其特征在于:包含以下步骤:步骤1.1基于动态高斯参数空间探索机理,构建用于仿蛇搜救机器人步态生成的深度高斯策略网络,以及用于评价控制策略优劣的深度高斯估值网络;

步骤1.2建立仿蛇搜救机器人经验共享体系,使用异步并行经验共享池收集多个机器人从搜救任务获取的信息、对应奖赏信号及其自身位姿关节状态信息;

步骤1.3设计基于策略梯度估计的本地近似策略优化器,对步骤1.1中的深度高斯策略网络进行训练,得到局部优化的仿蛇搜救机器人步态控制策略;

步骤1.4根据步骤1.2中的异步经验共享池与步骤1.3的本地近似策略优化器,构建仿蛇搜救机器人全局策略优化器,针对当前对应的搜救环境信息对多个机器人的本地策略优化进行全局优化调整,生成相应的最优适应性步态,完成整个仿蛇搜救机器人适应性步态自主涌现方法的设计;

步骤1.1的具体实施过程如下,

步骤1.1.1从参数为μ、σ、∈的高斯分布N中对深度神经网络参数进行随机采样,其中μ和σ分别为高斯随机过程的均值和方差,∈为对角单位矩阵;在单次策略更新过程中将网络参数保持不变;经过高斯采样的网络参数表示为:ζ=μ+σ×∈;相应的深度高斯网络全连接层单个神经元输出通过以下公式计算:y=f(ζwx+ζb),f(·)为对应神经网络非线性激活函数,w和b分别表示神经网络权值与偏置;

步骤1.1.2使用统计学中的相对熵原理对每次采样的随机参数进行限制;通过使用相对熵公式 其中DKL(·)代表相对熵距离,πθ为对应神经网络策略,计算每次采样后深度高斯网络的概率分布变化,当采样前后的相对熵 时,其中κ为预期的策略更新步长,将采样的参数进行相应比例缩放后,作为最终的深度高斯网络参数;

步骤1.1.3根据步骤1.1.2中生成的深度高斯网络参数,分别构建深度高斯估值网络和深度高斯策略网络。

2.根据权利要求1所述的一种仿蛇搜救机器人适应性步态自主涌现方法,其特征在于:步骤1.2的具体实施步骤如下,

步骤1.2.1构建多仿蛇搜救机器人经验共享协议;

步骤1.2.2根据步骤1.2.1中的经验共享协议,建立异步并行经验回溯共享池;对收集到的搜救环境信息、对应奖赏信号和仿蛇搜救机器人自身位姿关节数据进行实时处理,建立以经验时间排序的有序数据训练集,计算数据训练集相关的统计信息;

步骤1.2.3根据步骤1.1.3中的深度高斯估值网络,批量计算累计奖赏期望R,建立估值网络训练集;

步骤1.2.4使用步骤1.2.3得到的训练集对深度高斯估值网络进行随机梯度下降训练。

3.根据权利要求1所述的一种仿蛇搜救机器人适应性步态自主涌现方法,其特征在于:步骤1.3的实施过程如下,

步骤1.3.1根据当前深度高斯策略网络参数,收集计算本地累计奖赏期望;

步骤1.3.2根据步骤1.1得到的深度高斯估值网络,建立策略评价指标,通过计算策略优势函数,其中γ为相应奖赏折扣因子, 为时序差分学习损失函数;

步骤1.3.3计算经过单次迭代过后更新的深度高斯策略网络相对熵步骤1.3.4通过 计算本地近似策略优化指标及相对于网络参数的梯度估计值,其中β为策略更新相对熵距离惩罚因子,并将计算结果同步到异步经验共享池中。

4.根据权利要求1所述的一种仿蛇搜救机器人适应性步态自主涌现方法,其特征在于:步骤1.4的实施过程如下,

步骤1.4.1根据步骤1.2中的异步经验共享池收集多个仿蛇搜救机器人对当前搜救环境探索的测量信息及其对应的本地策略梯度估计值,通过以下公式进行全局策略优化:其中η为平方相对熵惩罚因子;

步骤1.4.2根据步骤1.2中的经验共享池收集累计奖励期望,通过随机梯度下降更新全局深度高斯估值网络;

步骤1.4.3生成针对当前搜救环境的适应性步态,更新全局策略参数,通过队列并行推送到各个仿蛇搜救机器人。

说明书 :

一种仿蛇搜救机器人适应性步态自主涌现方法

技术领域

[0001] 本发明涉及仿生机器人技术领域,具体地说是指一种仿蛇搜救机器人适应性步态自主涌现方法。技术背景
[0002] 智能化的仿生机器人,尤其是仿蛇搜救机器人已被证明是拥有广泛用途的机器人。仿蛇搜救机器人具有稳定性好、横截面小、柔性等特点,能在各种粗糙、陡峭、崎岖的复杂地形上行走,并可攀爬障碍物,这是以轮子或腿作为行走工具的机器人难以做到的。受生物蛇的启发,仿蛇搜救机器人不是利用轮子,而是利用模块之间的相对转动,使身体弯曲伸张实现运动。可以由多种执行器结构实现驱动,目前大多利用伺服电机驱动。仿蛇搜救机器人由多个相同的模块构成,各节有独立的驱动系统。采用统一的车厢式结构和活动坐标式运动方式依靠躯体和地面间的相互作用实现驱动,它有多种运动形式,前进的动力和机构的运动形式有密切的关系。从运动角度考虑,它至少要有两节模块相连。如果有特殊的传感器、执行器、电池时,它需要头和尾两模块。模块之间连接可以用关节或简单的刚性连接。
[0003] 由于模块化结构的特点,仿蛇搜救机器人具有很高的灵活性,且可靠性和维护性高,适于在搜救任务中复杂多变的恶劣环境下作业。仿蛇搜救机器人多冗余的结构特性,使其能够快速穿梭于崎岖不平的地面,这使得仿蛇机器人尤其适用于搜救、侦察等任务。然而相比于传统轮式或足式机器人,仿蛇搜救机器人这种多冗余欠驱动系统的运动控制难度要大很多,加之搜救任务中外界环境复杂多变,传统机器人动力学分析方法及控制方法已不再适用于仿蛇搜救机器人。
[0004] 近几年来,世界各地的研究人员设计出各种各样的仿蛇机器人,同时提出了一系列针对仿蛇搜救机器人的控制方法。Pettersen等人基于级联控制和反馈线性化理论,提出了一种针对完整约束仿蛇机器人的路径跟踪控制方法。该方法使用牛顿欧拉法对完整约束仿蛇机器人进行动力学建模,再使用反馈线性化理论将高度非线性的微分方程转化为线性模型,最后融合级联控制方法实现仿蛇机器人的路径跟踪。  Fukushima等人在IEEE Transactions on Robotics期刊上提出了使用螺旋驱动机理对仿蛇机器人进行建模与控制的方法。Kazuyuki等人研制了一种使用舵机与滑轮组带有死锁功能的半自动仿蛇搜救机器人。该机器人具有柔性被动关节,当遇到障碍物时能够实现柔性避碰。Tang等人在IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS)上发表了基于被动锚点的仿蛇机器人直线运动步态研究。该研究使用完整约束对仿蛇机器人进行运动学建模,并通过对其进行关键参数分析,提升了直线运动步态的效率。虽然以上方法弄够实现对仿蛇搜救机器人步态的控制,但仍然存在以下主要不足:(1)需要复杂繁琐的运动学及动力学建模,理论分析的准确程度直接影响控制器的性能。当仿蛇机器人的关节数量或载荷发生变化时,需要重新进行建模分析,容错性较低;(2)需要针对特定的机械结构或周围环境设计步态控制方法,缺乏复杂动态环境适应性,难以适应实际搜救任务中复杂多变的动态非结构环境。

发明内容

[0005] 本发明的目的在于提供一种仿蛇搜救机器人步态自主涌现方法,通过机器人在运行过程中,不断从救援任务环境中收集信息,自主生成适应当前救援环境的最优步态控制策略,解决上述由于仿蛇搜救机器人机理建模不准确导致控制器性能低下和机器人步态控制缺乏复杂动态环境适应性等问题。本发明利用深度神经网络、近似策略优化、置信域区间约束、高斯参数空间探索、分布式计算原理等设计一种针对搜救任务复杂动态非结构环境下的仿蛇搜救机器人适应性步态自主涌现方法,使仿蛇搜救机器人能根据不同搜救任务自主生成相应的最优适应性步态,智能进行控制策略调整,高效准确地完成搜救工作。
[0006] 一种仿蛇搜救机器人适应性步态自主涌现方法,包含以下步骤:
[0007] 1.1基于动态高斯参数空间探索机理,构建用于仿蛇搜救机器人步态生成的深度高斯策略网络,以及用于评价控制策略优劣的深度高斯估值网络,其中包括以下步骤:
[0008] 步骤1.1.1从高斯分布N(μ,σ×∈)中对深度神经网络参数进行随机采样,其中μ和σ分别为高斯随机过程的均值和方差,ε为对角单位矩阵。在单次策略更新过程中将网络参数保持不变。经过高斯采样的网络参数可表示为:ζ=μ+σ×∈。相应的深度高斯网络全连接层单个神经元输出通过以下公式计算:y=f(ζwx+ζb),f(·)为对应神经网络非线性激活函数,w和b分别表示神经网络权值与偏置;
[0009] 步骤1.1.2使用统计学中的相对熵原理对每次采样的随机参数进行限制,避免由于深度高斯网络随机采样步长过大,导致算法不稳定。通过使用相对熵公式其中DKL(·)代表相对熵距离,πθ为对应神经网络策略,计算每次采样后深度高斯网络的概率分布变化,当采样前后的相对熵 时,其中κ为预期的策略更新步长,将采样的参数进行相应比例缩放后,作为最终的高斯网络参数;
[0010] 步骤1.1.3根据步骤1.1.2中生成的深度高斯网络参数,分别构建深度高斯估值网络和深度高斯策略网络。
[0011] 1.2建立仿蛇搜救机器人经验共享体系,使用异步并行经验共享池收集多个机器人从搜救任务获取的信息、对应奖赏信号及其自身位姿关节状态信息。
[0012] 步骤1.2.1构建多仿蛇搜救机器人经验共享协议;
[0013] 步骤1.2.2根据步骤1.2.1中的经验共享协议,建立异步并行经验回溯共享池。对收集到的搜救环境信息、对应奖赏信号和仿蛇搜救机器人自身位姿关节数据进行实时处理,建立以经验时间排序的有序数据训练集,计算数据训练集相关的统计信息;
[0014] 步骤1.2.3根据步骤1.1.3中的深度高斯估值网络,批量计算累计奖赏期望R,建立估值网络训练集;
[0015] 步骤1.2.4使用步骤1.2.3得到的训练集对深度高斯估值网络进行随机梯度下降训练。
[0016] 1.3设计基于策略梯度估计的本地近似策略优化器,对步骤1.1中的深度高斯策略网络进行训练,得到局部优化的仿蛇搜救机器人步态控制策略。其中包括以下步骤:
[0017] 步骤1.3.1根据当前深度高斯策略网络参数,收集计算本地累计奖赏期望;
[0018] 步骤1.3.2根据步骤1.1得到的深度高斯估值网络,建立策略评价指标,通过计算策略优势函数,其中γ为相应奖赏折扣因子, 为时序差分学习损失函数;
[0019] 步骤1.3.3计算经过单次迭代过后更新的深度高斯策略网络相对熵[0020]
[0021] 步骤1.3.4通过 计算本地近似策略优化指标及相对于网络参数的梯度估计值,其中β为策略更新相对熵距离惩罚因子,并将计算结果同步到异步经验共享池中。
[0022] 1.4根据步骤1.2中的异步经验共享池与步骤1.3的本地近似策略优化器,构建仿蛇搜救机器人全局策略优化器,针对当前对应的搜救环境信息对多个机器人的本地策略优化进行全局优化调整,生成相应的最优适应性步态,完成整个仿蛇搜救机器人适应性步态自主涌现方法的设计。其中,全局策略优化器设计包含以下步骤:
[0023] 步骤1.4.1根据步骤1.2中的异步经验共享池收集多个仿蛇搜救机器人对当前搜救环境探索的测量信息及其对应的本地策略梯度估计值,通过以下公式进行全局策略优化:
[0024]
[0025] 其中η为平方相对熵惩罚因子。
[0026] 步骤1.4.2根据步骤1.2中的经验共享池收集累计奖励期望,通过随机梯度下降更新全局深度高斯估值网络;
[0027] 步骤1.4.3生成针对当前搜救环境的适应性步态,更新全局策略参数,通过队列并行推送到各个仿蛇搜救机器人。
[0028] 本发明是一种基于深度强化学习的仿蛇搜救机器人适应性步态自主涌现方法,与现有的技术相比,具有以下明显的优势和有益效果:
[0029] 本发明设计过程简洁明了,可实现针对搜救任务中复杂动态非结构环境下的适应性步态自主生成,方法具有一定适应性和通用性。本发明解决了现有仿蛇搜救机器人步态控制方法依赖运动学、动力学建模以及步态需要根据特定场景进行人工设计,导致的步态控制容错性较低、难以适应复杂动态非结构搜救环境等问题,大大提高了仿蛇搜救机器人的环境适应能力及智能化程度。

附图说明

[0030] 图1是本发明中的仿蛇搜救机器人机构示意图;
[0031] 图2是本发明中的仿蛇搜救机器人适应性步态自主生成整体示意图;
[0032] 图3是本发明中的高斯参数空间参数探索示意图;
[0033] 图4是本发明中的异步并行经验共享示意图;
[0034] 图5是本发明中的近似策略梯度优化模块示意图;
[0035] 图6是本发明中的仿蛇搜救机器人适应性步态自主生成流程图;
[0036] 图7~10是本发明中的仿蛇搜救机器人适应性步态生成仿真结果图。

具体实施方式

[0037] 为了更好地理解本发明的技术方案,以下结合附图和具体例子对本发明的实施方式作进一步的介绍。注意,以下结合附图和具体实例子描述的诸方面仅是示例性的,而不应被理解为对本发明的保护范围进行任何限制。
[0038] 步骤1:使用Unity 3D引擎依照真实搜救环境搭建相应仿真环境;
[0039] 步骤2:使用SolidWorks构建仿蛇搜救机器人模型,并导入Unity 3D物理引擎中;
[0040] 步骤3:在Unity 3D搭建的仿真环境中设置虚拟传感器,感知虚拟搜救环境及仿蛇搜救机器人自身位姿关节状态信息;
[0041] 步骤4:根据搜救任务需求,构建基于马尔可夫决策过程的强化学习训练环境,设置对应的奖赏惩罚函数;
[0042] 步骤5:构建全局深度高斯估值网络,构建全局深度高斯策略网络;
[0043] 步骤6:根据步骤5中生成的全局网络,同步单个仿蛇搜救机器人本地高斯估值网络和策略网络结构;
[0044] 步骤7:初始化经验共享池;
[0045] 步骤8:从高斯分布N(μ,σ×∈)中对神经网络参数进行随机采样,得到高斯网络参数ζ=μ+σ×∈,其中单个深度高斯网络神经元输出为y=f(ζwx+ζb);
[0046] 步骤9:计算策略网络采样前后相对熵 当相对熵超出目标阈值δ时,将高斯网络每个神经元参数乘以相应比例因子α;
[0047] 步骤10:使用步骤9中采样的参数初始化全局深度高斯估值网络和策略网络;
[0048] 步骤11:通过队列并行同步网络参数到各个仿蛇搜救机器人,初始化机器人本地高斯估值网络和策略网络;
[0049] 步骤12:在搜救环境中,各个仿蛇搜救机器人异步并行地进行探索,收集搜救环境信息、对应奖赏信号和自身位姿关节状态信息;
[0050] 步骤13:各个仿蛇搜救机器人通过共享队列,实时并行地将所搜集到的信息上传到经验缓冲池中;
[0051] 步骤14:经验缓冲池对接收到的搜救环境信息和仿蛇机器人位姿关节状态数据进行实时处理,建立以经验时间排序的有序数据训练集;
[0052] 步骤15:当经验缓冲池收集到足够的数据后,使用全局深度高斯估值网络批量计算累计奖赏期望R,建立估值网络训练集;
[0053] 步骤16:使用步骤15中构建的训练集对全局深度高斯网络进行随机梯度下降训练,根据迭代步数逐渐减小学习速率;
[0054] 步骤17:仿蛇搜救机器人计算对应本地累计奖赏期望;
[0055] 步骤18:根据步骤5得到的本地深度高斯估值网络,通过 计算策略优势函数,其中
[0056] 步骤19:计算本地深度高斯策略网络相对熵
[0057] 步骤20:通过以下式子计算本地近似策略优化:
[0058]
[0059] 步骤21:将本地近似策略优化计算结果及相对于网络参数的梯度估计值异步上传到经验共享池中;
[0060] 步骤22:根据步骤14中的经验共享池收集多个仿蛇机器人对当前搜救环境探索的测量信息及其对应的本地近似策略梯度估计值,通过以下方法进行全局策略优化:
[0061]
[0062] 步骤23:更新全局策略参数;
[0063] 步骤24:根据步骤15中的经验共享池收集累计奖励期望,更新全局深度高斯估值网络;
[0064] 步骤25:保存当前网络参数到经验共享池,通过队列将全局策略参数和全局估值参数并行推送到各个仿蛇搜救机器人;
[0065] 步骤26:进行下一轮迭代直到算法收敛或达到最大迭代次数。
[0066] 对所设计的仿蛇搜救机器人适应性步态自主生成算法的有效性进行仿真验证:设仿蛇搜救机器人总共10个关节模块构成,每个模块长度为0.15m。仿蛇搜救机器人对应的质量及转动惯量由Unity 3D的物理引擎自动计算得到。仿真中所有物体刚度系数及摩擦力系数保持物理引擎的默认值。奖赏惩罚函数设置为仿蛇搜救机器人头部运动方向速度的数值,加上各关节驱动力矩绝对值,除此以外不对步态生成算法进行任何人工先验知识的设计。仿真过程中仿蛇搜救机器人通过Unity 3D物理引擎中的虚拟传感器收集搜救环境信息,以及仿蛇机器人位姿关节状态数据,通过相应API传递给上层控制算法进行实时处理。具体仿真结果如图7~10所示。
[0067] 说明:图7为正则化后的仿蛇搜救机器人观测信息,图8为正则化后的仿蛇搜救机器人步态控制输出,图9为多次运行后得到的奖赏惩罚函数平均值训练曲线,图 10为仿真得到的最佳奖赏惩罚函数训练曲线。
[0068] 由以上仿真结果图7~10可以看出,仿蛇搜救机器人在虚拟的搜救环境中能够不断学习、优化步态,快速且稳定地提升步态控制性能,面对复杂动态非结构的搜救任务能够通过在环境中高效探索,自主生成适应性步态。