一种基于强化学习的无人机B样条路径规划方法及系统

未命名 08-26 阅读:188 评论:0

一种基于强化学习的无人机b样条路径规划方法及系统
技术领域
1.本发明涉及无人机路径规划技术领域,尤其涉及一种基于强化学习的无人机b样条路径规划方法及系统。


背景技术:

2.近年来,随着电器元件的不断小型化,微型飞行器特别是四旋翼飞行器在机器人界引发了越来越多的关注。由于四旋翼微型飞行器具有极高的机动性、敏捷性与灵活性,其能够被应用于各种特殊场景下,例如航空摄影与勘探、灾害搜索与救援、设备监视与检查,同时,为了让四旋翼微型飞行器能够在相对危险或人类操作员无法进入的极端环境中完成任务,空中机器人必须要具备相当的自主导航与自主行动的能力。
3.为了使四旋翼飞行器具备良好的自主飞行能力,其整体自主控制系统框架应当包含运动控制、状态估计、环境感知和运动规划这四个主要部分。其中运动规划负责协调整个系统的各个环节,在复杂环境下实现与操作员的任务交互与自主决策,由于运动规划模块的功能实现必须依托其他底层功能模块,因此,运动规划往往被视为四旋翼飞行器自主控制系统框架的最高层。概括地讲,我们可以将运动规划问题分为前端的离散路径寻搜索和后端的连续轨迹优化。对于前端的路径搜索,目前已经发表并在实际中予以应用了的方法有基于采样的方法,如快速随即搜索树(rrt)算法;和基于搜索的方法,如a*,dijkstra,广度优先搜索(bfs),深度优先搜索(dfs)等。目前前端路径搜索算法已经较为成熟,能够基于无人机栅格地图快速搜索得到可行的前端路径。
4.后端的连续轨迹优化算法相较于前端路径搜索,有着更大的计算复杂度,对无人机路径规划的时效性影响较大。为了保证四旋翼飞行器的运动动力学可行性,需要及时的对初始几何轨迹实现参数化,这是轨迹生成的主要目标。通常,轨迹生成问题被表述为在满足安全性和运动动力学可行性约束的同时最小化总控制成本,针对这一问题可将其分为硬约束和软约束两种方法。
5.解决以上问题的可行方法之一,是采用基于学习的轨迹规划方法代替基于优化的轨迹规划方法,省去求解最优轨迹的计算量,基于环境信息端到端生成无人机轨迹,从而实现无人机在复杂、动态环境下的高效率避障路径规划。在当前深度学习领域的发展背景下,强化学习是最适合用于轨迹规划的学习方法。无人机在空间中的飞行可以根据时间关系,建模为马尔可夫决策过程,并在马尔可夫决策过程的基础之上挑选合适的学习算法,通过在仿真环境中不断试错,训练得到能够稳定应用的强化学习算法,而后应用至实物无人机。但在目前的相关研究中,强化学习算法进行路径规划面临着一些问题。第一方面,现有无人机强化学习路径规划算法多采用端到端的方法,即强化学习直接控制底层飞控。由于强化学习算法无法证明收敛性,故不能保证所规划的轨迹一定安全,为算法的应用带来了隐患;另一方面,无人机的轨迹规划问题与控制问题的输出量都是连续变量,对应至强化学习算法,需要应用actor-critic强化学习算法进行求解;但是现存的该类强化学习算法,如深度确定性策略梯度等的训练过程较为脆弱,容易出现不收敛的情况,难以在无人机强化学习
问题上进行直接应用。


技术实现要素:

6.为解决上述技术问题,本发明的目的在于提供一种基于强化学习的无人机b样条路径规划方法及系统,所述一种基于强化学习的无人机b样条路径规划方法及系统可有效解决小型四旋翼无人机在复杂地形或障碍物环境下的安全、实时路径规划问题。
7.为达到上述技术效果,本发明采用了以下技术方案:
8.本发明提供了一种基于强化学习的无人机b样条路径规划方法,替代传统的基于优化的无人机路径规划方法,馈入有效避免最优化问题迭代求解所带来的计算量问题,实现在0.1s内规划10个路径点以上的四旋翼无人机避障轨迹,有效提升四旋翼无人机在复杂环境下的机动性、灵活性、鲁棒性。
9.本方法的核心思想是:用均匀b样条将无人机在时空中的平滑轨迹以多个控制点的形式进行表示,并将控制点选取的过程视为马尔可夫决策过程,采用强化学习算法按时间次序选取多个轨迹点,快速输出一条完整的轨迹。强化学习算法层面,本方法采用了一种创新性的离散动作-连续评价结构,充分利用离散强化学习的低复杂度、高稳定性特点,支持无偏离线经验回放,提高算法效率。本方法在整体轨迹规划流程上也作出了创新,首先根据点云数据信息建立无人机周边的障碍物栅格地图,而后利用a*算法建立无人机在空间上的安全飞行走廊,对安全飞行走廊信息进行编码,以编码信息和已选取的b样条轨迹点作为状态信息,循环生成无人机轨迹点。完整轨迹生成后,本算法可以对轨迹的避障效果与动力学进行验证,防止不合理轨迹的出现,克服强化学习算法鲁棒性差的问题,实现复杂未知环境下的高效无人机强化学习路径规划。
10.具体地,本发明提供的一种基于强化学习的无人机b样条路径规划方法,该方法步骤包括:
11.s1:基于传感器点云信息,构建障碍物栅格地图,在栅格地图上采用局部a*算法规划安全飞行走廊,将安全飞行走廊所在区域栅格地图作为状态信息;
12.s2:构建无人机路径规划强化学习算法以及强化学习深度神经网络;采用b样条描述无人机时空轨迹,b样条控制点为强化学习算法的输出;
13.s3:执行所述强化学习算法,对地图进行编码,所述状态信息以及当前b样条控制点作为强化学习算法的输入,所述强化学习算法输出后续b样条控制点,循环得到整条轨迹,然后将所获得的经验输出至样本池;
14.s4:利用步骤3所获得的样本池,循环迭代所述强化学习深度神经网络,优化得到强化学习路径规划最优策略。
15.其中,所述s1中基于传感器点云信息建立栅格地图,采用一个尺寸为[x
×
k,y
×
k,z
×
k]的三维张量进行表示,无人机位于该地图的中心格子,即[x
×
k/2,y
×
k/2,z
×
k/2]的位置;
[0016]
优选地,所述局部a*算法具体为:首先从无人机当前位置到目标位置作一条直线,从无人机位置开始检测该直线穿过的每一个栅格,格子内无障碍则不采用a*算法,直接将该格子加入轨迹,如出现障碍物,则对于该直线上的每一块局部障碍物,均用a*算法在栅格地图上规划一条绕过该障碍物的轨迹。
[0017]
优选地,a*寻路结束后,截取包含轨迹起点到轨迹终点或中间点的部分栅格地图作为强化学习算法的输入量,具体为:截取大小为边长3*l个格子的立方体栅格地图,截取后在局部栅格地图上对轨迹进行编码,对于局部轨迹从开始到结束的每个格子,给予一个序号:如该格子是整体轨迹的第p个格子,则编号为-p;按时间顺序,对于局部栅格地图上的每一个轨迹点,对轨迹点周边[-∈,∈]范围内的栅格赋值-p;轨迹点邻域发生重叠的,以相对靠后的轨迹点为准,除轨迹周边范围外,栅格地图其余所有位置赋值为1。
[0018]
优选地,无人机在时空中的平滑轨迹通过3阶均匀b样条表示,b样条的参数为时间,按照以下方法进行计算:
[0019][0020][0021][0022]
式中,n
i,p
(t)为b样条p阶第i个基函数,δt为两个控制点的确定时间间隔,p(t)为t时刻的无人机位置。
[0023]
优选地,将b样条轨迹点的选取过程建模为马尔可夫决策过程,即按序列依次选取轨迹点,所述马尔可夫决策过程由以下的五元组进行表示:
[0024][0025]
其中,状态空间为:包含所有的状态信息主要构成为无人机安全飞行走廊所对应的栅格地图(map),尺寸为3l3,以及无人机b样条轨迹的前三个点,共9维;
[0026]
动作空间为代表无人机在t时刻的加加速度(jerk)轨迹点
[0027]
,在本方法中是一个确定性的转移函数,即可以根据s(t),a(t)唯一确定s(t+δt);
[0028]
r是奖励函数r
t
=r(s(t),a(t));
[0029]
γ是奖励值折扣率
[0030]
优选地,奖励函数r
t
=r(s(t),a(t))的具体计算方式为:
[0031][0032][0033][0034]
[0035]
式中,分别为速度、加速度、加加速度惩罚项,速度惩罚项用于限制无人机的最大速度,而加速度惩罚项、加加速度惩罚项的目的是使得轨迹更加的平滑;则是起着关键性作用的位置奖励,其设置为:
[0036]
(1)如果无人机偏离整体轨迹大于∈,则位置奖励置为-d,同时轨迹终止;
[0037]
(2)计算无人机与轨迹内各个栅格的中心点的欧氏距离,如距离最后一个栅格最近,则轨迹规划成功,位置奖励+d,轨迹规划终止;
[0038]
(3)如无人机距第n个栅格最近,而上一时刻无人机距离第m个栅格最近,如n>m,赋予正奖励如n<=m,
[0039]
优选地,所述强化学习深度神经网络包括四个深度神经网络,其中一个深度神经网络用作编码器,将安全飞行走廊栅格地图编码为512个特征;其余三个深度神经网络分别对应为离散q网络、连续评价网络以及连续目标评价网络,该三个深度神经网络的参数分别为:θd,θq,θ
′q。
[0040]
优选地,所述离散q网络数学表示为:
[0041]
qd(s(t),ai(t);θd),i∈{1,2,3},该网络的状态-行为值函数是为三个动作维度(jerk控制点的三个坐标轴)分别定义的;输入状态s(t),用于输出每个维度i上的每个离散动作;ai(t)所对应的状态-行为值;该网络在使用前需要将连续的动作空间离散化,分解为三个独立的子状态空间;在本发明中为保证计算效率,将jerk控制点的每个维度离散为20份,形成以下三个子动作空间:
[0042][0043][0044][0045]
其中,j
x1
=j
y1
=j
z1
=j
min
+i
×
(jmax-jmin)/20为三个坐标轴上的离散动作,离散q网络可以通过贪婪策略的形式选取最优动作,即在三个动作子空间中,选取对应的离散q网络状态行为值最大的动作:
[0046][0047][0048][0049][0050]
优选地,本发明提供的一种基于强化学习的无人机b样条路径规划方法包括步骤:
[0051]
a1:采用a*算法生成安全飞行走廊栅格地图;
[0052]
a2:获取当前的无人机位置p(0)=[p
x
(0),py(0),pz(0)],v(0)=[v
x
(0),vy(0),vz(0)],a(0)=[a
x
(0),ay(0),az(0)];
[0053]
a3:解线性方程组,得无人机b样条位置轨迹的前三个控制点;上述前三个控制点分别记为p-3δt
,p-2δt
,p-1δt

[0054]
a4:编码安全飞行走廊栅格地图,与前三个控制点结合,得到521个状态量;
[0055]
a5:动作生成,调用离散q网络,生成当前动作,即jerk控制点
[0056]
a6:基于最大加速度约束的动作调节;
[0057]
a7:基于j(t)计算下一个轨迹点;
[0058]
p
t
=(j(t)/δt3)+3p
t-δt-3p
t-2δt-p
t-3δt

[0059]
a8:计算奖励函数r
t

[0060]
a9:循环步骤4-8,直到完成10个路径点的选取,或轨迹到达飞行走廊终点,或轨迹偏出飞行走廊;
[0061]
a10:验证轨迹安全性后,将轨迹输出至无人机飞控;
[0062]
a11:经验样本储存至强化学习经验样本池;
[0063]
a12:基于所述经验样本池对所述强化学习算法进行优化;
[0064]
优选地,所述a6具体包括:
[0065]

计算上一加速度控制点a
t-δt

[0066]

计算当前动作(jerk控制点)所对应的方向向量以及方向上的最大动作:
[0067]j|||1||
(t)=j(t)/||j(t)||2[0068]

通过三角余弦公式计算在动作方向上不超过加速度最大限制所能容许的最大动作量j
amax

[0069]

基于约束的动作调整:
[0070][0071]
优选地,所述a12包括步骤:
[0072]
b1:经验采样,从池中抽取一定数量的样本:
[0073]
b2:编码器网络将经验样本中的栅格地图编码为512个状态特征
[0074]
b3:离散q网络基于输入s(t+δt),选取对应的最优动作a(t+δt);
[0075]
b4:利用连续目标q网络计算目标q函数值:
[0076]
y(t)=r
t
+γq

(s(t+δt),a(t+δt);θ
′q)
[0077]
b5:计算值函数迭代误差jq(θq),并更新连续q网络:
[0078]jq
(θq)=[q(s(t),a(t),q)-y(t)]2[0079][0080]
b6:基于值函数迭代误差对编码器网络的梯度,更新编码器网络
[0081]
b7:基于现行的离散q网络,以s(t)为状态重新生成新的动作:
[0082][0083]
b8:计算离散q网络与连续q网络之间的q函数误差:
[0084]
[0085][0086][0087][0088]
b9:更新离散q网络权重:
[0089][0090]
b10:更新目标连续q网络权重:
[0091]
θ
′q←
(1-τ)θ
′q+τθq[0092]
b11:循环步骤1-10,直至所述强化学习算法收敛。
[0093]
与现有技术相比,本发明的有益效果为:
[0094]
本方法创新性地利用强化学习方法规划无人机在时空中的b样条平滑轨迹。相比于传统无人机路径规划算法,能够实现端到端地输出无人机路径,避免了复杂的优化过程,大大降低了无人机路径规划的计算量,有效保证了无人机在复杂环境条件下的灵活性,能够进一步提升无人机未知环境下探索飞行的表现,具体地,本发明的优势还包括:
[0095]
(1)本方法具有路径实时重规划的特点,可以不间断地执行路径规划程序,因此当环境中出现突发障碍物时,本方法能够做到第一时间响应并作出有效规避,充分地提升了无人机飞行过程中的安全性、鲁棒性。
[0096]
(2)本方法不涉及底层飞控,仅采用强化学习规划路径,路径执行过程可以有效适配各种不同的路径跟踪算法,具有很强的普适性、泛化性。
[0097]
(3)本方法加入了轨迹验证步骤,在强化学习生成轨迹后,首先验证轨迹的安全性,再执行轨迹,相比于其他的强化学习无人机路径规划算法,有效解决了强化学习算法在实际环境中应用的风险问题。
[0098]
(4)本方法采用了离散q网络-连续q网络所组成的策略-评价结构强化学习算法,能够基于值函数有效拟合连续状态空间下的策略,相比于该类问题常用的强化学习算法,有效提升了稳定性以及训练速度,降低了对于超参数的敏感度,使得整体训练过程效率更高。
[0099]
(4)本发明中的强化学习方法能够做到虚拟训练-实际执行,有效降低了强化学习算法的训练成本,避免强化学习实物训练所造成的损失问题以及强化学习虚-实交互所带来的不稳定问题,使得本算法的实用得到了充分提升。
附图说明
[0100]
图1是本发明所提供的强化学习无人机b样条路径规划整体流程图;
[0101]
图2是基于加速度限制的动作(jerk轨迹点)调节的示意图。
具体实施方式
[0102]
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于
更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。
[0103]
实施例1
[0104]
为解决小型四旋翼无人机在复杂地形或障碍物环境下的安全、实时路径规划问题,本实施例提供了一种基于强化学习的无人机b样条路径规划方法,替代传统的基于优化的无人机路径规划方法,有效避免最优化问题迭代求解所带来的计算量问题,实现在0.1s内规划10个路径点以上的四旋翼无人机避障轨迹,有效提升四旋翼无人机在复杂环境下的机动性、灵活性、鲁棒性。
[0105]
本方法的核心思想,是用均匀b样条将无人机在时空中的平滑轨迹以多个控制点的形式进行表示,并将控制点选取的过程视为马尔可夫决策过程,采用强化学习算法按时间次序选取多个轨迹点,快速输出一条完整的轨迹。强化学习算法层面,本方法采用了一种创新性的离散动作-连续评价结构,充分利用离散强化学习的低复杂度、高稳定性特点,支持无偏离线经验回放,提高算法效率。
[0106]
本方法在整体轨迹规划流程上也做出了创新,首先根据点云数据信息建立无人机周边的障碍物栅格地图,而后利用a*算法建立无人机在空间上的安全飞行走廊,对安全飞行走廊信息进行编码,以编码信息和已选取的b样条轨迹点作为状态信息,循环生成无人机轨迹点。完整轨迹生成后,本算法可以对轨迹的避障效果与动力学进行验证,防止不合理轨迹的出现,克服强化学习算法鲁棒性差的问题,实现复杂未知环境下的高效无人机强化学习路径规划。
[0107]
具体地,本实施例提供的一种基于强化学习的无人机b样条路径规划方法,该方法步骤包括:
[0108]
01基于栅格地图信息规划无人机安全飞行走廊
[0109]
安全飞行走廊是一种在无人机路径规划技术中常用的方法,基本思想是首先给出无人机由起点到终点的轨迹可行域,而后在该可行域上规划精确轨迹。在本发明中,主要考虑采用局部a*的方法对无人机得到轨迹进行规划,具体规划方法如下:
[0110]
(1)基于前端的建图算法,建立一个无人机周边的栅格地图,该地图长x米,宽y米,高z米,地图分辨率为1/k米。栅格地图采用一个尺寸为[x
×
k,y
×
k,z
×
k]的三维张量进行表示,无人机位于该地图的中心格子,即[x
×
k/2,y
×
k/2,z
×
k/2]的位置,如某个格子中有障碍物,则该位置的值为1,否则为0栅格地图建立结束后,对地图内的障碍物进行膨胀,膨胀尺寸为无人机轴距/2+∈。
[0111]
(2)采用局部a*的方式在栅格地图中寻找一条合理轨迹,具体为:
[0112]
首先从无人机当前位置到目标位置作一条直线,从无人机位置开始检测该直线穿过的每一个栅格,格子内无障碍则不采用a*算法,直接将该格子加入轨迹,如出现障碍物,则对于该直线上的每一块局部障碍物,均用a*在栅格地图上规划一条绕过该障碍物的轨迹。
[0113]
(3)截取部分轨迹作为强化学习算法的输入量。具体截取大小为l3。首先在整体轨迹上确定局部轨迹起点(无人机当前位置点);以及局部轨迹终点,终点选取应以轨迹长度适中,可供无人机在3-5秒内飞行为原则。而后以轨迹起点与终点的平均点为局部地图中心点,截取其周围以l米为边长的正方形作为局部地图,即边长为3*l个格子的栅格地图。
[0114]
(4)栅格地图上的安全飞行走廊编码,对于局部轨迹从开始到结束的每个格子,给予一个序号:如该格子是整体轨迹的第p个格子,则编号为-p。按时间顺序,对于局部栅格地图上的每一个轨迹点,对轨迹点周边[-∈,∈]范围内的栅格赋值-p。轨迹点邻域发生重叠的,以相对靠后的轨迹点为准。除轨迹周边范围外,栅格地图其余所有位置置1,即假设除轨迹邻域外,其余位置都填满障碍物,以将无人机限制在轨迹周边范围内。
[0115]
至此,完成无人机安全飞行走廊的构建,安全飞行走廊以局部栅格地图进行表示,该局部栅格地图是强化学习算法的状态输入之一。在本实施例中,该栅格地图的尺寸设置为[18,18,18],地图分辨率1/3,即表示6m^3范围内的安全飞行走廊。
[0116]
2.无人机路径规划问题强化学习算法建模
[0117]
完成安全飞行走廊建立后,本方法将构建强化学习的马尔可夫决策过程模型,以及深度强化学习深度神经网络,搭建基于安全飞行走廊以及已选取的无人机b样条轨迹点规划后续轨迹点的基本架构。
[0118]
首先,本方法采用均匀b样条对无人机在时空中的平滑轨迹进行表示,其中位置信息通过以下3阶b样条进行表示:
[0119][0120][0121][0122]
在以上公式中,考虑到b样条是均匀的,本方法选择直接将时间t作为b样条的参数。n
i,p
(t)为b样条p阶第i个基函数,δt为两个控制点的确定时间间隔,p(t)为t时刻的无人机位置。基于b样条的导数性质,可以反推得到速度2阶b样条函数、加速度1阶b样条函数以及加加速度(jerk)0阶b样条函数:
[0123][0124]vi
=(p
i-p
i-1
)/δt
[0125]ai
=(p
i-2p
i-1
+p
i-2
)/δt2[0126]ji
=(p
i-3p
i-1
+3p
i-2-p
i-3
)/δt3[0127]
上式中v(t),a(t),j(t)为速度曲线函数、加速度曲线函数、jerk曲线函数;vi,ai,ji为速度、加速度、jerk的b样条控制点。同理,也可以基于低阶的加加速度、加速度函数推导得到无人机位置轨迹。以上b样条方程能够充分保证无人机路径加速度的连续性以及jerk的存在性,避免做出超出无人机运动学极限的路径规划。
[0128]
本方法将b样条轨迹点的选取建模为马尔可夫决策过程,即按序列依次选取轨迹点。马尔可夫决策过程是一种用于解决序贯决策问题的数学模型,其可以由以下的五元组进行表示:
[0129][0130]
根据无人机复杂环境路径规划的需要,我们针对性地设计了适用于本问题的马尔可夫五元组。其中状态空间为:可夫五元组。其中状态空间为:代表无人机在t时刻的状态信息,其主要构成为无人机安全飞行走廊所对应的栅格地图(map),尺寸为3l3,以及无人机b样条轨迹的前三个点,共9维。动作空间为为jerk控制点的上下限),代表无人机在t时刻的加加速度(jerk)轨迹点由该轨迹点可以反向推导t时刻的加速度、速度、位置轨迹点。p为状态转移概率p(s(t+δt)|s(t,a(t))),在本方法中是一个确定性的转移函数,即可以根据s(t),a(t)唯一确定s(t+δt);r是奖励函数r
t
=r(s(t),a(t)),其可以表示为:
[0131][0132][0133][0134][0135]
上式中为速度、加速度、加加速度惩罚项,速度惩罚项用于限制无人机的最大速度,而加速度、加加速度惩罚项的目的则是尽可能地使轨迹更加的平滑。则是起着关键性作用的位置奖励,其设置为:
[0136]
如果无人机偏离整体轨迹大于∈,则位置奖励置为-d,同时轨迹终止;
[0137]
计算无人机与轨迹内各个栅格的中心点的欧氏距离,如距离最后一个栅格最近,则轨迹规划成功,位置奖励+d,轨迹规划终止;
[0138]
如无人机距第n个栅格最近,而上一时刻无人机距离第m个栅格最近,如n>m,赋予正奖励
[0139]
如n<=m,
[0140]
γ是奖励值折扣率,即奖励函数随时间衰减的速率,在本方法中设置为0.95。基于以上马尔可夫五元组,本方法可以拟合一个最优路径规划策略π(a(t)|s(t)),通过最大化以下状态-行为值函数,实现路径规划策略的迭代优化。状态-行为值函数为:
[0141][0142]
本方法主要考虑规划未来的10个轨迹点,所以状态-行为值函数仅加和10步以内的奖励值,后续奖励值不考虑。
[0143]
在本方法中,主要采取值迭代的方法最大化状态-行为值函数,同时优化最优路径规划策略。为使用强化学习的方法求解路径规划问题,本发明的强化学习模块主要使用了
三个深度神经网络,分别为离散q网络,连续评价网络,连续目标评价网络,三个网络的参数分别为:θd,θq,θ
′q。
[0144]
为有效处理栅格地图状态信息,本方法需要一个额外的编码器网络,对于18*18*18的安全飞行走廊栅格地图进行表示。编码器网络采用多层三维卷积网络将18*18*18转换至512个特征。在本方法的默认设置中,该深度神经网络共包括4层:
[0145]
1层:卷积核(kernel size)[6,6,6],步长(stride)2,填充(padding)2,一层特征
‑‑
64层特征,输出尺寸[64,9,9,9]
[0146]
2层:卷积核[5,5,5],步长2,填充2,64层特征

128层特征,输出尺寸[128,5,5,5]
[0147]
3层:卷积核[3,3,3],步长1,填充1,128层特征
‑‑
256层特征,输出尺寸[256,5,5,5]
[0148]
4层:卷积核[5,5,5],无填充,无需步长,256层特征
‑‑
512层特征,输出尺寸[512,1,1,1],并重构为512维特征
[0149]
离散q网络数学表示为qd(s(t),ai(t);θd),i∈{1,2,3},该网络的状态-行为值函数是为三个动作维度(jerk控制点的三个坐标轴)分别定义的。输入状态s(t),输出每个维度i上的每个离散动作ai(t)所对应的状态-行为值。该网络在使用前需要将连续的动作空间离散化,分解为三个独立的子状态空间。在本发明中为保证计算效率,将jerk控制点的每个维度离散为20份,形成以下三个子动作空间:
[0150][0151][0152][0153]
其中j
x1
=j
y1
=j
z1
=j
min
+i
×
(jmax-jmin)/20为三个坐标轴上的离散动作,离散q网络共有两个隐藏层,输出神经元数为512(安全飞行走廊特征)+9(b样条位置控制点特征),每个隐藏层256神经元,输出层60个神经元。离散q网络可以通过贪婪策略的形式选取最优动作,即在三个动作子空间中,选取对应的离散q网络状态行为值最大的动作:
[0154][0155][0156][0157][0158]
连续q网络数学表示为q(s(t),a(t);θq),该网络作用类似于actor-critic结构中的评价网络,其状态-行为值函数是定义在整个三维连续动作空间上的,网络输入512维地图特征、9维轨迹点特征和3维动作a(t),输出状态、动作所对应的状态-行为值(1维)。该网络结构为524个输入神经元,2个256神经元隐藏层以及一个输出神经元。连续目标q网络数学表示为q

(s(t),a(t);θ
′q),其具有与连续q网络完全相同的结构,但网络参数相比连续q网络具有滞后性。
[0159]
本发明中,强化学习路径规划方法寻找最优策略的过程可以简述为:连续q网络将离散q网络视为策略网络,基于该策略进行值迭代,拟合最优状态-行为值函数;离散q网络则学习跟随连续q网络的q函数,在该学习过程中自发地拟合强化学习路径规划的最优策略。该流程将在本说明书的方法流程第四部分(路径规划强化学习算法离线训练)详细讲述。
[0160]
此外,本发明的强化学习系统还包括一个经验池,用于储存经验样本{s(t),a(t),r(t),s(t+1)}。至此,完成无人机路径规划问题的强化学习建模。
[0161]
3.强化学习无人机b样条轨迹生成与执行
[0162]
完成无人机强化学习系统建模后,本方法便可以执行强化学习无人机路径选取过程,生成一条由多个位置控制点所组成的无人机轨迹。具体路径生成方法可以通过以下的流程以及图1进行描述:
[0163]
(1)生成安全飞行走廊栅格地图(具体过程详见上文)
[0164]
(2)获取当前的无人机位置p(0)=[p
x
(0),py(0),pz(0)],v(0)=[v
x
(0),vy(0),vz(0)],a(0)=[a
x
(0),ay(0),az(0)]
[0165]
(3)解线性方程组,得无人机b样条位置轨迹的前三个点。该三个点分别记为p-3δt
,p-2δt
,p-1δt
,可以通过解以下线性方程组获得:
[0166][0167][0168]
a-δt
n-1,1
(0)=a(0)
[0169]
其中v-iδt
,a-iδt
是p-iδt
的函数,具体计算方法已经在以上第二部分中给出。
[0170]
(4)状态编码,三个初始点构成强化学习初始状态信息s(0)的轨迹点部分。对于安全飞行走廊栅格地图,本方法采用将无人机所在格子的值置0的形式在其上标示无人机的位置,标示无人机位置后的安全飞行走廊栅格地图记为map
t
。通过编码器网络提取栅格地图512层特征,与三个轨迹点合为521个状态量。
[0171]
(5)动作生成,调用离散q网络,生成当前动作,即jerk控制点
[0172][0173]
(6)动作约束调节,考虑到选取jerk控制点会造成无人机速度或加速度超出限制,本发明设计了一种加速度约束机制,速度则是基于上文所述的奖励值函数进行调节。基于最大加速度约束的动作调节分为以下几个步骤:
[0174]

计算上一加速度控制点a
t-δt

[0175]

计算当前动作(jerk控制点)所对应的方向向量以及方向上的最大动作:
[0176]j||1||
(t)=j(t)/||j(t)||2[0177]

通过三角余弦公式计算在动作方向上不超过加速度最大限制所能容许的最大动作量j
amax
,具体见图1;
[0178]

基于约束的动作调整:
[0179][0180]
以上动作约束调节示意图见图2.需要指出的是,在经验样本储存过程中,储存的是未经调整的动作。
[0181]
(7)基于j(t)计算下一个轨迹点:
[0182]
p
t
=(j(t)/δt3)+3p
t-δt-3p
t-2δt-p
t-3δt
[0183]
(8)计算奖励函数r
t
[0184]
(9)循环4-8,直到完成10个路径点的选取,或轨迹到达飞行走廊终点,或轨迹偏出飞行走廊。
[0185]
(10)验证轨迹安全性,如在栅格地图上没有发生碰撞,则将轨迹输出至无人机飞控,执行飞行过程。如果轨迹第i个点发生碰撞,则仅执行到第i-1个点或者不执行。
[0186]
(11)将轨迹中的所有单步状态经验样本储存至强化学习经验样本池,用于强化学习算法优化
[0187]
4.路径规划强化学习算法离线训练
[0188]
在强化学习训练方面,本发明采取了一种值函数强化学习与actor-critic结构结合的特殊方法,以连续值函数为参考训练离散值函数,策略则是最大化离散值函数。本发明的强化学习训练过程是独立于轨迹生成过程的,强化学习方法在不断生成无人机轨迹经验样本的同时,可以利用已储存的经验样本进行离线训练,这种重复利用离线经验的机制可以有效加速算法整体的收敛过程。需要指出的是,强化学习算法是需要通过试错进行提升的,在算法整体未经训练时,输出的轨迹并不具有合理性、可行性,故本方法需要首先在无人机仿真环境中进行训练,当方法可以稳定输出合理的避障轨迹后,再转移到实物无人机之上进行部署。
[0189]
在策略离线训练开始前,为保证强化学习中样本概率分布的泛化性,需要经验池中积累一定数量的初始样本,默认设置中需要大于1000个。样本构成为{s(t),a(t),r
t
,s(t+δt)},或者:
[0190]
{map
t-δt
,p
t-3δt
,p
t-2δt
,p
t-δt
,p
t
,j
t
,r
t
,map
t
}
[0191]
{map
t-δt
,p
t-3δt
,p
t-2δt
,p
t-δt
}可以构成s(t),s(t+1)则可以由{map
t
,p
t-2δt
,p
t-δt
,p
t
}组成。基于经验样本,本方法可以通过以下步骤拟合状态-行为值函数,学习最优强化学习路径规划策略:
[0192]
(1)状态编码,采用编码器网络将经验样本中的栅格地图编码为512个状态特征
[0193]
(2)离散q网络基于输入s(t+δt),选取对应的最优动作a(t+δt),该选取策略与强化学习轨迹规划时相同,即采取贪婪策略在三个维度上各自选取最大q函数值所对应动作并聚合为整体动作。
[0194]
(3)利用连续目标q网络计算目标q函数值:
[0195]
y(t)=r
t
+γq

(s(t+δt),a(t+δt);θ
′q)
[0196]
(4)计算值函数迭代误差jq(θq),并更新连续q网络:
[0197]jq
(θq)=[q(s(t),a(t),q)-y(t)]2[0198][0199]
(5)基于值函数迭代误差对编码器网络的梯度,更新编码器网络
[0200]
(6)基于现行的离散q网络,以s(t)为状态重新生成一个新的动作:
[0201][0202]
(7)计算离散q网络与连续q网络之间的q函数误差,针对离散q网络的每一个输出神经元都计算一个子误差并加和为总体误差函数jd(θd):
[0203][0204][0205][0206][0207]
(8)更新离散q网络权重:
[0208][0209]
(9)更新目标连续q网络权重,其中τ是一个介于[0,0.01]之间的常数,可根据需要调整:
[0210]
θ
′q←
(1-τ)θ
′q+τθq[0211]
(10)更新目标连续q网络权重,其中τ是一个介于[0,0.01]之间的常数,可根据需要调整:
[0212]
θ
′q←
(1-τ)θ
′q+τθq[0213]
(11)循环步骤1-10,直至算法收敛。收敛后,本方法即可实现稳定的无人机强化学习b样条路径规划。
[0214]
以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。本发明未详细描述的技术、形状、构造部分均为公知技术。

技术特征:
1.一种基于强化学习的无人机b样条路径规划方法,其特征在于,包括步骤:s1:基于传感器点云信息,构建障碍物栅格地图,在栅格地图上采用局部a*算法规划安全飞行走廊,将安全飞行走廊所在区域栅格地图作为状态信息;s2:构建无人机路径规划强化学习算法以及强化学习深度神经网络;采用b样条描述无人机时空轨迹,b样条控制点为强化学习算法的输出;s3:执行所述强化学习算法,对地图进行编码,所述状态信息以及当前b样条控制点作为强化学习算法的输入,所述强化学习算法输出后续b样条控制点,循环得到整条轨迹,然后将所获得的经验输出至样本池;s4:利用步骤3所获得的样本池,循环迭代所述强化学习深度神经网络,优化得到强化学习路径规划最优策略。2.如权利要求1所述的一种基于强化学习的无人机b样条路径规划方法,其特征在于:所述s1中基于传感器点云信息建立栅格地图,采用一个尺寸为[x
×
k,y
×
k,z
×
k]的三维张量进行表示,无人机位于该地图的中心格子,即[x
×
k/2,y
×
k/2,z
×
k/2]的位置;优选地,所述局部a*算法具体为:首先从无人机当前位置到目标位置作一条直线,从无人机位置开始检测该直线穿过的每一个栅格,格子内无障碍则不采用a*算法,直接将该格子加入轨迹,如出现障碍物,则对于该直线上的每一块局部障碍物,均用a*算法在栅格地图上规划一条绕过该障碍物的轨迹。3.如权利要求1所述的一种基于强化学习的无人机b样条路径规划方法,其特征在于:a*寻路结束后,截取包含轨迹起点到轨迹终点或中间点的部分栅格地图作为强化学习算法的输入量,具体为:截取大小为边长3*l个格子的立方体栅格地图,截取后在局部栅格地图上对轨迹进行编码,对于局部轨迹从开始到结束的每个格子,给予一个序号:如该格子是整体轨迹的第p个格子,则编号为-p;按时间顺序,对于局部栅格地图上的每一个轨迹点,对轨迹点周边[-∈,∈]范围内的栅格赋值-p;轨迹点邻域发生重叠的,以相对靠后的轨迹点为准,除轨迹周边范围外,栅格地图其余所有位置赋值为1。4.如权利要求1所述的一种基于强化学习的无人机b样条路径规划方法,其特征在于:无人机在时空中的平滑轨迹通过3阶均匀b样条表示,b样条的参数为时间,按照以下方法进行计算:行计算:行计算:式中,n
i,p
(t)为b样条p阶第i个基函数,δt为两个控制点的确定时间间隔,p(t)为t时刻的无人机位置。5.如权利要求1所述的一种基于强化学习的无人机b样条路径规划方法,其特征在于:将b样条轨迹点的选取过程建模为马尔可夫决策过程,即按序列依次选取轨迹点,所述
马尔可夫决策过程由以下的五元组进行表示:其中,状态空间为:包含所有的状态信息主要构成为无人机安全飞行走廊所对应的栅格地图(map),尺寸为3l3,以及无人机b样条轨迹的前三个点,共9维;动作空间为代表无人机在t时刻的加加速度(jerk)轨迹点p(s(t+δt)|s(t,a(t))),在本方法中是一个确定性的转移函数,即可以根据s(t),a(t)唯一确定s(t+δt);r是奖励函数r
t
=r(s(t),a(t));γ是奖励值折扣率。6.如权利要求5所述的一种基于强化学习的无人机b样条路径规划方法,其特征在于:奖励函数r
t
=r(s(t),a(t))的具体计算方式为:=r(s(t),a(t))的具体计算方式为:=r(s(t),a(t))的具体计算方式为:=r(s(t),a(t))的具体计算方式为:式中,分别为速度、加速度、加加速度惩罚项,速度惩罚项用于限制无人机的最大速度,而加速度惩罚项、加加速度惩罚项的目的是使得轨迹更加的平滑;则是起着关键性作用的位置奖励,其设置为:(1)如果无人机偏离整体轨迹大于∈,则位置奖励置为-d,同时轨迹终止;(2)计算无人机与轨迹内各个栅格的中心点的欧氏距离,如距离最后一个栅格最近,则轨迹规划成功,位置奖励+d,轨迹规划终止;(3)如无人机距第n个栅格最近,而上一时刻无人机距离第m个栅格最近,如n>m,赋予正奖励如n<=m,7.如权利要求1所述的一种基于强化学习的无人机b样条路径规划方法:所述强化学习深度神经网络包括四个深度神经网络,其中一个深度神经网络用作编码器,将安全飞行走廊栅格地图编码为512个特征;其余三个深度神经网络分别对应为离散q网络、连续评价网络以及连续目标评价网络,该三个深度神经网络的参数分别为:θ
d
,θ
q
,θ

q
。8.如权利要求7所述的一种基于强化学习的无人机b样条路径规划方法:所述离散q网络数学表示为:q
d
(s(t),a
i
(t);θ
d
),i∈{1,2,3},该网络的状态-行为值函数是为三个动作维度(jerk控制点的三个坐标轴)分别定义的;输入状态s(t),用于输出每个维度i上的每个离散动作;a
i
(t)所对应的状态-行为值;该网络在使用前需要将连续的动作空间离散化,分解为三个
独立的子状态空间;在本发明中为保证计算效率,将jerk控制点的每个维度离散为20份,形成以下三个子动作空间:成以下三个子动作空间:成以下三个子动作空间:其中,j
x1
=j
y1
=j
z1
=j
min
+i
×
(j
m
ax-j
m
in)/20为三个坐标轴上的离散动作,离散q网络可以通过贪婪策略的形式选取最优动作,即在三个动作子空间中,选取对应的离散q网络状态行为值最大的动作:态行为值最大的动作:态行为值最大的动作:态行为值最大的动作:9.一种基于强化学习的无人机b样条路径规划方法,其特征在于,包括步骤:a1:采用a*算法生成安全飞行走廊栅格地图;a2:获取当前的无人机位置p(0)=[p
x
(0),p
y
(0),p
z
(0)],v(0)=[v
x
(0),v
y
(0),v
z
(0)],a(θ)=[a
x
(0),a
y
(0),a
z
(0)];a3:解线性方程组,得无人机b样条位置轨迹的前三个控制点;上述前三个控制点分别记为p-3δt
,p-2δt
,p-1δt
;a4:编码安全飞行走廊栅格地图,与前三个控制点结合,得到521个状态量;a5:动作生成,调用离散q网络,生成当前动作,即jerk控制点a6:基于最大加速度约束的动作调节;a7:基于j(t)计算下一个轨迹点;p
t
=(j(t)/δt3)+3p
t-δt-3p
t-2δt-p
t-3δt
;a8:计算奖励函数r
t
;a9:循环步骤4-8,直到完成10个路径点的选取,或轨迹到达飞行走廊终点,或轨迹偏出飞行走廊;a10:验证轨迹安全性后,将轨迹输出至无人机飞控;a11:经验样本储存至强化学习经验样本池;a12:基于所述经验样本池对所述强化学习算法进行优化。10.一种基于强化学习的无人机b样条路径规划系统,其特征在于,包括:预处理单元,基于传感器点云信息构建障碍物栅格地图;路径规划单元,基于所述障碍物栅格地图构建安全飞行走廊;训练模块,基于所述安全飞行走廊对所构建的强化学习算法以及强化学习深度神经网
络进行优化,并通过所述强化学习算法以及强化学习深度神经网络实现对无人机飞行路径的规划。

技术总结
本发明提供了一种基于强化学习的无人机B样条路径规划方法,替代传统的基于优化的无人机路径规划方法,有效避免最优化问题迭代求解所带来的计算量问题,实现在0.s秒内规划10个路径点以上的四旋翼无人机避障轨迹,有效提升四旋翼无人机在复杂环境下的机动性、灵活性、鲁棒性。基于上述强化学习的无人机B样条路径规划方法,本发明还进一步基于强化学习的无人机B样条路径规划系统,从而有效解决现有技术中存在的问题。中存在的问题。中存在的问题。


技术研发人员:高彬 孙健 张野晨 陈伟
受保护的技术使用者:北京理工大学重庆创新中心
技术研发日:2023.06.06
技术公布日:2023/8/23
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐