基于时空Transformer的移动机器人导航方法
未命名
09-13
阅读:104
评论:0

基于时空transformer的移动机器人导航方法
技术领域
1.本发明涉及移动机器人的导航避障方法,尤其涉及一种基于时空transformer的移动机器人强化学习导航方法,属于移动机器人领域。
背景技术:
2.在复杂和动态的环境中,例如拥挤的场景,如何实现机器人的高效和安全的自主导航是移动机器人领域许多应用的先决条件。
3.传统的机器人导航算法可分为全局和局部路径规划。全局路径规划根据已知的环境地图选择完整的路径,常用的方法包括a
*
、蚁群优化法和快速搜索随机树法等,但是这些方法过于依赖已知的静态地图,因此很难在动态环境中使用。局部路径规划方法,如人工势场法和动态窗口法等,可以重新规划局部路径来处理环境的动态变化,但是重新规划导航路径所需的计算开销在实际应用中常常受到限制,尤其在众多应用需求中,机器人需要在有人类活动的动态环境中完成各种服务任务,频繁的重新规划路线会带来巨大的计算开销。
4.随着深度学习和强化学习的快速发展,深度强化学习作为一种智能决策方法受到了研究者的广泛关注。得益于深度神经网络强大的处理数据能力和强化学习强大的决策能力,涌现出许多深度强化学习方法来处理机器人的自主导航任务。这些方法将导航表述为马尔可夫决策过程,以传感器观察值作为状态。通过与环境的交互,深度强化学习方法通过最大化动作的累积奖励,找到引导机器人到达目标位置的最优策略。其中,一些方法设计由全连接层为基础的网络处理状态信息,但是这类方法都只是在空间维度上考虑了机器人和环境之间的交互关系,并没有从时间维度去分析机器人以及环境中动静态障碍物在时序上的状态变化特征。另一些方法使用循环神经网络(rnn)来处理时间维度上的交互信息,由于其在时间序列预测方面的优势而被广泛应用,然而循环神经网络很难同时提取全局状态,这限制了导航性能。在复杂的动态环境中提取全面的时空状态表示仍然具有挑战性和开发不足。
技术实现要素:
5.本发明针对现有技术的不足,本发明提出一种基于时空transformer的移动机器人强化学习导航方法,空间transformer编码器用于提取全局空间特征,并捕捉行人和机器人之间的空间交互。时间transformer编码器被设计成模拟连续帧之间的时间相关性,并推断空间位置变换的动态关系,从而更准确的预测行人的运动状态。在综合时空状态表示的基础上,利用基于价值的强化学习方法获得最优导航策略。大大提升了复杂和动态环境中移动机器人自主导航的成功率和导航效率,具有重要的理论价值和实际意义。
6.基于时空transformer的深度强化学习移动机器人导航避障方法,具体包括以下步骤:
7.步骤1:状态空间和动作空间、奖励函数设定;
8.步骤2:构建基于时空transformer强化学习价值网络模型,所述的模型包括特征提取模块、全局空间状态编码器模块、全局时间状态编码器模块、时空特征融合模块、价值预测模块;
9.(a)特征提取模块
10.以连续3帧状态空间作为输入,由联合状态组成;h代表行人数量,l代表联合状态的序列长度;使用用于特征提取的可训练线性投影将x映射到n维,以获得初步特征f,即
[0011][0012]
其中是具有激活的嵌入函数,参数是嵌入权重矩阵;
[0013]
(b)全局空间状态编码器模块
[0014]
为了获得不同行人和机器人之间的全局空间位置关系,设计了以作为输入的全局空间状态编码器,通过空间多头自我注意层计算不同位置行人对机器人的重要性,并通过前馈网络将空间位置关系映射到更高维的特征空间;残差连接和层归一化用于帮助网络训练;空间编码器输出全局空间状态fs,其被公式化为:
[0015]fs
'=spatial-msa(ln(f))+f
[0016]fs
=ffn(ln(fs'))+fs'
[0017]
其中ffn包含两个具有激活函数的非线性层,spatial-msa表示空间多头自我注意层,ffn表示前馈网络,ln表示层归一化;
[0018]
(c)全局时间状态编码器模块
[0019]
由环境中障碍物的动态变化产生的时间信息在机器人决策中也起着重要的作用;设计了以作为输入的全局时间状态编码器,通过时间多头自我注意层捕获连续帧之间每个行人位置变化的时间相关性;前馈网络也用于将时间动态变换关系映射到更高维的特征空间;残差连接和层归一化也用来帮助网络训练;时间编码器输出时间状态表示f
t
,其被公式化为:
[0020]ft
'=temporal-msa(ln(f'))+f'
[0021]ft
=ffn(ln(f
t
'))+f
t
'
[0022]
其中ffn包含两个具有激活函数的非线性层,temporal-msa表示时间多头自我注意层;
[0023]
(d)时空特征融合模块
[0024]
为了有效融合空间和时间特征,得到综合的时空状态表征;将空间状态fs、时间状态f
t
进行拼接并输入特征融合模块得到综合的时空特征f
st
,即
[0025]fst
=ψ([fs,f
t
];w
ψ
)
[0026]
其中ψ(
·
)是具有激活的嵌入函数,参数w
ψ
是嵌入权重矩阵;
[0027]
(e)价值预测模块
[0028]
基于时空特征建立了预测价值v的价值预测模块:
[0029]
v=φ([average(f
st
),s
t+δt
];w
φ
)
[0030]
其是φ(
·
)具有激活的嵌入函数,参数w
φ
是嵌入权重矩阵;
[0031]
步骤3:将状态空间输入到时空transformer网络模型中,机器人采用模仿学习初始化价值网络v模型参数,并将产生的状态-价值数据对存入经验池e用于对经验池e初始化,将目标价值网络v'初始化为当前价值网络v;
[0032]
步骤4:循环导航事件,得到最优价值网络v
*
;在最优导航策略下,t时刻联合状态的最优价值表示为:
[0033][0034]
其中t是从t时刻的状态到最终状态决策次数,γ∈[0,1)表示折扣因子;
[0035]
步骤5:在仿真环境中随机设置目标点和行人位置,加载预训练好的价值网络v,通过最佳策略选择最优动作a
t
并不断更新机器人和行人的联合状态直到移动机器人到达目标位置,其中最佳策略表示为:
[0036][0037]
其中是在t时刻获得的奖励,δt为导航决策时间,a为动作空间的集合。
[0038]
作为优选,所述的状态空间和动作空间、奖励函数设定;具体为:
[0039]
对于在一个二维仿真环境中,将行人与机器人视为一个圆,机器人与行人交互过程中顺利达到目标点;在这个导航过程中,使用s
t
和来表示机器人和行人在t时刻的状态,其中表示第n个行人的状态;
[0040]st
=[p
x
,py,v
x
,vy,r,g
x
,gy,θ,v
pref
]
t
[0041][0042]
其中g=[g
x
,gy]代表目标点的位置,p=[p
x
,py]代表机器人的位置,v=[v
x
,vy]代表机器人的速度,r代表机器人的半径,θ表示航向角,v
pref
代表机器人的首选速度,代表行人的位置,代表行人的速度,ri代表第i个行人的半径,代表行人的首选速度;
[0043]
在t时刻,状态空间表示为联合状态联合状态不仅包含行人和机器人的状态信息,还包含潜在的人机交互信息;
[0044]
动作空间由离散空间的可行动作组成,由线速度和航向角构成;
[0045]
遵循以下原则设计奖励函数;奖励到达目标的智能体,惩罚发生碰撞的智能体,如果智能体在导航的过程中离行人太近也会得到一定的惩罚,引导智能体在导航的过程中给行人一定的舒适空间;奖励函数定义如下:
[0046][0047]
其中d
min
是决策时间δt内机器人和人类之间最短的间隔距离,dc代表人类可以忍受的最小舒适距离,dg表示机器人到目标位置的距离,a
t
=v
t
表示机器人动作。
[0048]
作为优选,所述的ψ(
·
)、φ(
·
)是具有gelu激活的嵌入函数。
[0049]
作为优选,步骤4中循环导航事件具体过程如下:
[0050]
随机初始化联合状态并利用当前最佳策略选取最优动作a
t
,不断更新当前的状态和奖励值,通过梯度下降更新价值网络v,直到移动机器人这一整个回合结束,即移动机器人到达目标点或超过导航时间;将当前价值网络v更新目标价值网络v',当达到训练次数,得到最优价值网络模型v
*
。
[0051]
作为优选,所述的决策时间δt=0.25。
[0052]
本发明具有以下效果:
[0053]
提出了一种新颖的基于时空transformer的深度强化学习方法,以解决复杂环境中自主导航的挑战性任务。有效地从行人与机器人的交互中提取空间和时间状态,形成一个全面的时空状态表示,获取丰富语义信息的同时,进一步提高了导航效率。在此基础上,价值网络可以产生对于状态评估的准确价值,并提供一个高效的导航策略。在不同的评估设置上的实验结果表明,大大提升了复杂和动态环境中移动机器人自主探索的成功率和导航效率,具有重要的理论价值和实际意义。
附图说明
[0054]
图1为基于时空transformer的网络模型结构示意图;
[0055]
图2为基于时空transformer的深度强化学习导航避障算法流程图;
[0056]
图3为强化学习时间差分方法训练价值网络流程图;
具体实施方式
[0057]
以下结合附图对本发明作进一步的解释说明。
[0058]
如图2所示,一种基于时空transformer的移动机器人强化学习导航方法,包括以下步骤:
[0059]
步骤1:状态空间和动作空间、奖励函数设定。
[0060]
对于在一个二维仿真环境中,将行人与机器人视为一个圆,机器人与行人交互过程中顺利达到目标点。在这个导航过程中,使用s
t
和来表示机器人和行人在t时刻的状态,其中表示第n个行人的状态。
[0061]st
=[p
x
,py,v
x
,vy,r,g
x
,gy,θ,v
pref
]
t
[0062][0063]
其中g=[g
x
,gy]代表目标点的位置,p=[p
x
,py]代表机器人的位置,v=[v
x
,vy]代表机器人的速度,r=0.3代表机器人的半径,θ表示航向角,v
pref
=1代表机器人的首选速度,代表行人的位置,代表行人的速度,ri=0.3代表第i个行人的半径,代表行人的首选速度;
[0064]
在t时刻,状态空间可以表示为联合状态联合状态不仅包含行人和机器人的状态信息,还包含潜在的人机交互信息。
[0065]
动作空间由离散空间的可行动作组成,由线速度和航向角构成。线速度有5种,指数分布于(0,v
pref
]之间,航向角有16种,均匀分布于(0,2π]之间。一共组成了80种可行动作。
[0066]
遵循以下原则设计奖励函数。奖励到达目标的智能体,惩罚发生碰撞的智能体,如果智能体在导航的过程中离行人太近也会得到一定的惩罚,引导智能体在导航的过程中给行人一定的舒适空间。奖励函数定义如下:
[0067][0068]
其中d
min
是决策时间δt=0.25内机器人和人类之间最短的间隔距离,dc代表人类可以忍受的最小舒适距离,dg表示机器人到目标位置的距离,dc的取值范围在(0.2,0.4)。
[0069]
步骤2:强化学习网络构建。
[0070]
如图1所示,基于时空transformer的深度强化学习价值网络,该网络用于评估状态价值,价值网络模型由特征提取模块、全局空间状态编码器模块、全局时间状态编码器模块、时空特征融合模块、价值预测模块五个部分组成:
[0071]
(a)特征提取模块
[0072]
价值网络以连续3帧状态空间作为输入,它由联合状态组成。h代表行人数量,l代表联合状态的序列长度。使用用于特征提取的可训练线性投影将x映射到维128,以获得初步特征f,即
[0073][0074]
其中是具有gelu激活的嵌入函数,参数是嵌入权重矩阵。
[0075]
(b)全局空间状态编码器模块
[0076]
为了获得不同行人和机器人之间的全局空间位置关系,设计了以作为输入的全局空间transformer编码器,通过空间多头自我注意层计算不同位置行人对机器人的重要性,并通过前馈网络将空间位置关系映射到更高维的特征空间。残差连接和层归一化用于帮助网络训练。空间编码器输出全局空间聚合状态fs,其可以被公式化为:
[0077]fs
'=spatial-msa(ln(f))+f,
[0078]fs
=ffn(ln(fs'))+fs',
[0079]
其中ffn包含两个具有gelu激活函数的非线性层,spatial-msa表示空间多头自我注意层,ffn表示前馈网络,ln表示层归一化。
[0080]
(c)全局时间状态编码器模块
[0081]
由环境中障碍物的动态变化产生的时间信息在机器人决策中也起着重要的作用。设计了以作为输入的全局时间transformer编码器,通过时间多头自我注意层捕获连续帧之间每个行人位置变化的时间相关性。前馈网络也用于将时间动态变换关系映射到更高维的特征空间。残差连接和层归一化也用来帮助网络训练。时间编码器输出综合的空间-时间状态表示f
t
,其可以被公式化为:
[0082]ft
'=temporal-msa(ln(f))+f
[0083]ft
=ffn(ln(f
t
'))+f
t
'
[0084]
其中ffn包含两个具有gelu激活函数的非线性层,temporal-msa表示时间多头自我注意层。
[0085]
(d)特征融合模块
[0086]
为了有效融合空间和时间特征,得到综合的时空状态表征。将空间状态fs、时间状态f
t
进行拼接并输入特征融合模块得到综合的时空特征f
st
,即
[0087]fst
=ψ([fs,f
t
];w
ψ
)
[0088]
其中ψ(
·
)是具有gelu激活的嵌入函数,参数w
ψ
是嵌入权重矩阵。
[0089]
(e)价值预测模块
[0090]
基于时空特征建立了预测价值v的价值预测模块:
[0091]
v=φ([average(f
st
),s
t+δt
];w
φ
)
[0092]
其是φ(
·
)具有gelu激活的mlp,参数w
φ
由表示。
[0093]
步骤3:将状态空间输入到时空transformer网络模型中,机器人采用模仿学习初始化价值网络v模型参数,并将产生的导航轨迹t存入经验池e,将目标价值网络v'初始化为当前价值网络v。
[0094]
步骤4:循环导航事件,得到最优价值网络v
*
。在最优导航策略下,t时刻联合状态的最优价值可以表示为:
[0095][0096]
其中t是从t时刻的状态到最终状态决策次数,γ∈[0,1)表示折扣因子,v
pref
表示智能体首选速度。
[0097]
步骤5:在仿真环境中随机设置目标点和行人位置,加载预训练好的价值网络v,通过最佳策略选择最优动作a
t
不断更新机器人和行人的联合状态直到移动机器人到达目标位置,其中最佳策略表示为:
[0098][0099]
其中是在t时刻获得的奖励,δt=0.25为导航决策时间。
[0100]
其中,步骤4中循环导航事件具体过程如下:
[0101]
如图3所示;随机初始化联合状态并利用当前最佳策略选取最优动作a
t
,不断更新当前的状态和奖励值,通过梯度下降更新价值网络v,直到移动机器人这一整个回合结束,即移动机器人到达目标点或超过导航时间,设置最大导航时间t=25秒。将当前价值网络v更新目标价值网络v',当达到训练次数,得到最优价值网络模型v
*
。
[0102]
步骤6、实验训练细节:模仿学习初始网络过程中,学习率为0.01,训练100个回合。在强化学习训练过程中,初始学习率为0.005,随着训练的继续,每隔1000个回合学习率更新为原来的0.9倍,并使用adamw优化器优化批量大小为100的数据,一共训练15000个回合。对训练好的最优价值网络v
*
进行500次导航测试,与基于lstm的网络模型相比,测试结果如
下所示:
[0103][0104]
技术特征:
1.基于时空transformer的移动机器人导航方法,其特征在于,该方法具体包括以下步骤:步骤1:状态空间和动作空间、奖励函数设定;步骤2:构建基于时空transformer强化学习价值网络模型,所述的模型包括特征提取模块、全局空间状态编码器模块、全局时间状态编码器模块、时空特征融合模块、价值预测模块;(a)特征提取模块以连续3帧状态空间作为输入,由联合状态组成;h代表行人数量,l代表联合状态的序列长度;使用用于特征提取的可训练线性投影将x映射到n维,以获得初步特征f,即其中是具有激活的嵌入函数,参数是嵌入权重矩阵;(b)全局空间状态编码器模块设计了以作为输入的全局空间状态编码器,通过空间多头自我注意层计算不同位置行人对机器人的重要性,并通过前馈网络将空间位置关系映射到更高维的特征空间;残差连接和层归一化用于帮助网络训练;空间编码器输出全局空间状态f
s
,其被公式化为:f
s
'=spatial-msa(ln(f))+ff
s
=ffn(ln(f
s
'))+f
s
'其中ffn包含两个具有激活函数的非线性层,spatial-msa表示空间多头自我注意层,ffn表示前馈网络,ln表示层归一化;(c)全局时间状态编码器模块设计了以作为输入的全局时间状态编码器,通过时间多头自我注意层捕获连续帧之间每个行人位置变化的时间相关性;前馈网络也用于将时间动态变换关系映射到更高维的特征空间;残差连接和层归一化也用来帮助网络训练;时间编码器输出时间状态表示f
t
,其被公式化为:f
t
'=temporal-msa(ln(f'))+f'f
t
=ffn(ln(f
t
'))+f
t
'其中ffn包含两个具有激活函数的非线性层,temporal-msa表示时间多头自我注意层;(d)时空特征融合模块将空间状态f
s
、时间状态f
t
进行拼接并输入特征融合模块得到综合的时空特征f
st
,即f
st
=ψ([f
s
,f
t
];w
ψ
)其中ψ(
·
)是具有激活的嵌入函数,参数w
ψ
是嵌入权重矩阵;(e)价值预测模块基于时空特征建立了预测价值v的价值预测模块:v=φ([average(f
st
),s
t+δt
];w
φ
)其是φ(
·
)具有激活的嵌入函数,参数w
φ
是嵌入权重矩阵;
步骤3:将状态空间输入到时空transformer网络模型中,机器人采用模仿学习初始化价值网络v模型参数,并将产生的状态-价值数据对存入经验池e用于对经验池e初始化,将目标价值网络v'初始化为当前价值网络v;步骤4:循环导航事件,得到最优价值网络v
*
;在最优导航策略下,t时刻联合状态的最优价值表示为:其中t是从t时刻的状态到最终状态决策次数,γ∈[0,1)表示折扣因子;步骤5:在仿真环境中随机设置目标点和行人位置,加载预训练好的价值网络v,通过最佳策略选择最优动作a
t
并不断更新机器人和行人的联合状态直到移动机器人到达目标位置,其中最佳策略表示为:其中是在t时刻获得的奖励,δt为导航决策时间,a为动作空间的集合。2.如权利要求1所述的基于时空transformer的移动机器人导航方法,其特征在于:所述的状态空间和动作空间、奖励函数设定;具体为:对于在一个二维仿真环境中,将行人与机器人视为一个圆,机器人与行人交互过程中顺利达到目标点;在这个导航过程中,使用s
t
和来表示机器人和行人在t时刻的状态,其中表示第n个行人的状态;s
t
=[p
x
,p
y
,v
x
,v
y
,r,g
x
,g
y
,θ,v
pref
]
t
其中g=[g
x
,g
y
]代表目标点的位置,p=[p
x
,p
y
]代表机器人的位置,v=[v
x
,v
y
]代表机器人的速度,r代表机器人的半径,θ表示航向角,v
pref
代表机器人的首选速度,代表行人的位置,代表行人的速度,r
i
代表第i个行人的半径,代表行人的首选速度;在t时刻,状态空间表示为联合状态联合状态不仅包含行人和机器人的状态信息,还包含潜在的人机交互信息;动作空间由离散空间的可行动作组成,由线速度和航向角构成;遵循以下原则设计奖励函数;奖励到达目标的智能体,惩罚发生碰撞的智能体,如果智能体在导航的过程中离行人太近也会得到一定的惩罚,引导智能体在导航的过程中给行人一定的舒适空间;奖励函数定义如下:其中d
min
是决策时间δt内机器人和人类之间最短的间隔距离,d
c
代表人类可以忍受的
最小舒适距离,d
g
表示机器人到目标位置的距离,a
t
=v
t
表示机器人动作。3.如权利要求1所述的基于时空transformer的移动机器人导航方法,其特征在于:所述的ψ(
·
)、φ(
·
)是具有gelu激活的嵌入函数。4.如权利要求1所述的基于时空transformer的移动机器人导航方法,其特征在于:步骤4中循环导航事件具体过程如下:随机初始化联合状态并利用当前最佳策略选取最优动作a
t
,不断更新当前的状态和奖励值,通过梯度下降更新价值网络v,直到移动机器人这一整个回合结束,即移动机器人到达目标点或超过导航时间;将当前价值网络v更新目标价值网络v',当达到训练次数,得到最优价值网络模型v
*
。5.如权利要求1或2所述的基于时空transformer的移动机器人导航方法,其特征在于:所述的决策时间δt=0.25。
技术总结
本发明涉及一种基于时空Transformer的移动机器人导航方法,本发明时空Transformer模型由一个全局空间状态编码器和一个时间状态编码器组成,建立在Transformer结构上。空间状态编码器用于提取全局空间特征,并捕捉行人和机器人之间的空间交互。时间状态编码器被设计成模拟连续帧之间的时间相关性,并推断空间位置变换的动态关系。在综合时空状态表示的基础上,利用基于价值的强化学习方法获得最优导航策略。本发明提高了在复杂动态环境中导航避障的成功率和导航效率。对行人的未来运动状态预测更加准确,解决了机器人导航过程中的短视问题和现有导航避障过程中机器人对动态环境时空特征提取不充分的问题。空特征提取不充分的问题。空特征提取不充分的问题。
技术研发人员:杨宇翔 姜家豪 高明裕 何志伟 黄继业 李平
受保护的技术使用者:杭州电子科技大学
技术研发日:2022.11.22
技术公布日:2023/9/11
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:控制棒驱动机构及其密封壳、密封壳的制造方法与流程 下一篇:动效绘制方法和装置与流程