编者按:本文提出了HTARADrQ算法,该算法通过平均估计函数、循环机制、时间关注和分层框架,使无人机能够更好地在连续动作空间中进行动作。通过仿真和实际测试,验证了算法的可行性和有效性。
《A Hierarchical Reinforcement Learning Algorithm Based on Attention Mechanism for UAV Autonomous Navigation》
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS
Zun Liu , Yuanqiang Cao, Jianyong Chen , and Jianqiang Li
摘要:无人驾驶飞行器(uav)越来越多地应用于许多具有挑战性和多样化的应用中。同时,无人机的自主导航和避障能力也变得越来越重要。本文旨在通过引入注意机制和层次机制,填补深度强化学习理论与实际应用之间的空白,解决深度强化学习在实际应用中遇到的一些严重问题。更具体地说,为了提高DRL的鲁棒性,我们使用平均估计函数代替正态值估计函数。然后,我们设计了一个循环网络和一个时间注意机制来提高算法的性能。第三,我们提出了一个分层框架,以提高其在长期任务中的表现。利用仿真环境和实际环境对无人机自主导航方法进行了评价。结果表明,基于DRL的导航方法在不同的环境下都具有良好的性能,优于原始DrQ算法。
关键词:无人机,自主导航,深度强化学习,分层强化学习
近年来,无人机以其机动性好、成本低等优点,在民用和军用领域得到了广泛的应用。其中,结合计算机视觉的无人机已先后应用于视频监控[1]、智能交通[2]、[3]、灾后搜救[4]、情报采集[5]、[6]等场景。然而,上述场景对常规操作任务(如起飞、导航、目标探测和环境交互,特别是避障)施加了一些限制。结合人工智能技术,利用无人机有限的传感器收集到的信息,提高自主导航能力是非常必要的。
传统技术曾在无人机自主导航中发挥重要作用,从非学习到基于学习。感知和回避是最普遍的非学习型技巧之一。这些技术可以避免碰撞,并通过将车辆转向相反的方向来进行导航。Odelga等[7]设计了集成惯性和光流距离测量的传感器,其中使用卡尔曼滤波估计无人机线速度。为了避免碰撞,他们还使用RGB-D摄像机为操作员提供视觉输入,以及构建以机器人为中心的概率障碍模型的数据。对于无人机导航,Wang等[8]提出了一种非线性信号校正观测器(NSCO)方法来估计无人机的位置和飞行速度。Tiemann等[9]为了使无人机能够在没有无线定位的地方独立飞行,开发了一种将超宽带定位与单目SLAM增强融合的技术。Kim等[10]提出了一种独特的全源导航滤波器,称为压缩伪SLAM。它可以以一种计算效率高的方式顺利地组合所有可用的信息。
为了降低避障算法对环境的依赖性,增强其适用性,许多研究者开始结合强化学习(RL)来处理自主导航问题。已经做了一些工作,并取得了良好的效果。Imanberdiyev等[11]提出了一种基于模型的DRL算法TEXPLORE,用于无人机在无阻碍网格地图中导航,作为一种增强的控制方法。Wang等[12] 开发了一种非专家辅助(LwH)的DRL方法。该方法采用具有稀疏奖励的马尔可夫决策过程(MDP)来框架大规模复杂环境下自主无人机导航的挑战。He等[13]提出了一种基于rl的方法来解决无人机自主导航问题。该方法与仿生单目视觉感知方法相结合。与基于SLAM和光流的导航方法相比,该方法的计算效率更高。Tong等[14]提出了一种分布式DRL架构。该体系结构将无人机导航问题划分为两个子任务。每个子任务通过基于长短期记忆(LSTM)技术的DRL网络与数据交互,并开发了一个损失函数来整合两个子任务。为了在动态和多障碍物环境下成功进行导航,Zhang等[15]开发了一种基于drl的方法,并取得了良好的性能。此外,Xin等[16]提出了一种基于经验回放的DRL方法来进行自主导航。[3]提出了一种新的基于深度Q学习的空气辅助车辆缓存方案,以响应车辆用户的驾驶安全相关请求。[17]为无人机设计了一种导航策略,以提高数据新鲜度和与物联网(IoT)设备的连通性。[2]采用具有时间关注的递归神经网络来解决无人机的导航问题。在没有碰撞的情况下覆盖的距离方面,与之前的工作相比,它提供了更好的结果。为了实现无人机的自主性,Chansuparp等[18]采用了简化点云数据和增强后向奖励函数的TD3算法
分层强化学习 (HRL)是一种针对大规模问题的重要计算方法。它可以进行不同程度的时间抽象,大大降低了维数和训练难度。Rafati等[19]提出了一种高效而通用的子目标发现方法。该方法基于无模型HRL框架。采用无监督学习方法,可以自动学习子目标来解决大规模强化学习问题。Florensa等[20]使用随机神经网络(SNNs)提供了一个广泛的框架,SNNs是一种由计算图中的随机单元组成的神经网络。该框架可以为一系列具有稀疏奖励的任务训练策略。
对于真实环境中的强化学习,强化学习在真实环境中的应用面临的主要挑战之一是由于过多的动作状态对导致的“维度诅咒”,这使得它难以收敛或学习有效的策略。例如,在无人机的自主避障中,直接输入照片和传感器信息会导致算法缺乏通用性和鲁棒性,阻碍了算法在实践中的应用。
以往的无人机自主导航研究经常遇到训练不稳定、收敛速度慢、状态空间过大等问题。为了解决这些问题,我们引入了关注和分层机制,并提出了一个无人机自主导航和避障的DRL框架。导航和避障问题被描述为MDP,并以一种新颖的在线DRL算法解决。本研究的重点是填补强化学习中虚拟环境与真实环境之间的空白。算法的设计思想和训练过程的随机性保证了模型的输入尽可能丰富。它可以覆盖无人机在真实飞行过程中获取的深度图。它还可以进行动作和子策略的选择,从而保证无人机在真实环境中的有效性。该算法基于DrQ[21],包括均值估计函数、时间注意机制、分层框架和递归。本文的主要贡献有:
1) 我们提出了分层时间注意循环平均DrQ (HTARADrQ)。HTARADrQ可以学习在不同的时间抽象层次上操作。它可以大大降低状态-动作对的维数和训练难度。
2) 提出的时间注意循环平均DrQ (TARADrQ)包括估计函数、时间注意机制和循环。在训练中表现出更强的稳定性。它还展示了在处理较长的输入序列和探索时间依赖性方面的更强能力。
3) 通过仿真和实际测试,验证了该算法的可行性和有效性。
本文的其余部分组织如下:第二节介绍了基于学习的无人机导航的相关工作。第三节介绍了我们提出的算法。第四节进行了基准测试和分析。第五节展示了我们提出的HTARADrQ算法在现实世界中的测试结果。最后,第六节是本文的结论。
A. 基于学习的无人机导航
障碍物检测和避障任务得益于自主导航。在文献中,单目障碍物检测方法要么基于使用传统机器学习的场景检测,要么基于使用深度学习的计算机视觉。Smolyansky等人[22]开发了一种微型飞行器(MAV)系统,可以在森林等非结构化室外环境中自动跟踪路径。该系统采用了一种名为TrailNet的深度神经网络(DNN)。它可以估计视觉方向和MAV相对于轨迹中心的横向偏移量。Korris等[23]提供了一种基于CNN的自监督室内无人机导航技术。这种方法通过使用回归CNN来解决实时避障问题。数据来自机载单目摄像机。Loquercio等[24]开发了一种基于CNN的名为DroNet的网络,可以让无人机安全地通过城市街道。DroNet是一个八层剩余网络,有两个输出。其中一个输出是操纵角度,允许无人机在避开障碍物的同时保持导航。另一个输出是碰撞的可能性,使无人机能够识别危险情况并迅速做出反应。Kaufmann等[25]研究了一些动态情况下自主无人机竞速的问题。他们还提出了一种将控制系统和CNN与尖端路径规划相结合的方法。这种方法完全依赖于不需要任何显式的环境映射。Lee等人[26]提供了一种新的方法,通过单个相机在种植森林中自主导航微型无人机。由于单目视觉缺乏深度信息,他们提出了一种名为Faster Region-based Convolutional Neural Network (Faster R-CNN)的深度学习模型来识别树干。
最近,研究人员试图利用深度学习算法为无人机寻找一种稳定的控制方法。Hii等[27]提出了一种基于DRL的无人机投递优化系统。根据该研究,无人机交付是无人机在避开各种障碍物的情况下到达某个位置的路径,它还采用了多种DRL算法来帮助无人机实现目标。Shin等人[28]使用各种强化学习算法(如无监督学习、监督学习和强化学习)对无人机进行了实验研究。Hodge等人[29]开发了一种通用导航算法,通过无人机机载传感器的数据引导无人机到达问题地点。为了构建通用的自适应导航系统,本研究采用了一种结合增量课程学习和LSTM的近端策略优化DRL算法。Li等[30]提出了一种独特的DRL框架来帮助复杂情况下的自主导航。该框架考虑了时间抽象和策略效率。它采用效率正则化的方法动态地选择动作决策的频率。Chikhaoui等[31]为基于DRL的无人机导航提供了自主框架。该框架以PPO算法为基础,考虑了无人机的能量限制。
B. 分层强化学习
HRL是一种探索高级对象空间以解决稀疏奖励或长期挑战的方法。由于子目标、备选方案、技能和宏观动作的概念是相互关联的,因此,HRL技术的模块化结构总体上促进了迁移和多任务学习。分层规划是一个众所周知的人工智能话题。Kulkarni等[32]开发了在不同时间尺度上运行的分层DQN (h-DQN)。它可以分层组织目标驱动和内在激励DRL模块。h-DQN结合了顶层和底层的行动价值功能。前者获得内在子目标或选择的技巧,后者学习原始行动的策略以实现每个子目标的目标。Vezhnevets等[33]开发了HRL的封建网络(FuNs)。它包含一个管理模块和一个工作模块。管理模块为长周期设置抽象操作和子目标,工作模块在每个时间步选择原子动作来实现管理器的子目标。Bacon等[34]发展了option-criticism体系结构,建立了option的策略梯度定理。该方法通过从策略到option逐步学习option内策略和终止条件。它还集成了option发现和option学习。Harutyunyan等人[35]通过option-criticism的棱镜考察了短期option的灵活性和长期option的效率之间存在的困境。与非策略学习算法类似,将行为与终止状态解耦,将option学习转化为多步策略学习。
智能体有能力在没有人类干预的情况下探索他们的环境并获得重要的能力。Eysenbach等[36]开发了一种称为DIAYN的算法。这是一种在没有奖励功能的情况下获得有价值技能的策略。DIAYN在决策过程中采用最小熵原则,对信息理论目标进行优化以获取知识。Li等人[37]开发了一种具有无偏隐依赖基线的新型分层策略梯度,称为分层近端策略优化(hierarchical Proximal policy Optimization, HiPPO)。HiPPO是一种同时有效训练所有层次的机制。他们还设计了一种训练时间抽象的方法,以增加获得的能力对环境变化的适应能力。为了促进探索和分层技能获取,Chuck等人[38]创建了一种被称为假设提议和评估(HyPE)的方法,并在软件中实现。HyPE的样本效率来源于对现实世界和模拟环境中行为的隐含假设。Zhang等[39]介绍了一种称为HIDIO的分层强化学习方法。该技术用于以自我监督的方式学习任务不可知选项。这些选项可以同时用于解决稀疏奖励问题。在这项工作中,我们将分层框架与DRL算法相结合,以提高算法在长期任务上的性能
C. DrQ算法
为了优化最大熵策略和基于能量的策略,Haarnoja等[40]设计了一种软Q学习算法。在软Q学习中,将最优策略指定为玻尔兹曼分布,并采用变分方法构建采样网络。它可以从理想策略描述的分布中近似出样本。为了提高迁移能力,可以通过软Q学习来增强勘探,并辅助基于能量的随机策略来实现组合性。第二年,Haarnoja等人[41]基于[40]中的最大能量强化学习框架,开发了一种名为soft actor-critic (SAC)的算法。行为人试图最大化预测熵和奖励。SAC是一种连接确定性策略梯度和随机策略优化的非策略方法。利用截断的双Q技术和目标函数中的熵正则化,SAC训练策略优化熵和预期回报之间的权衡,同时仍保持合理的熵水平。从本质上讲,熵是衡量策略随机化程度的指标。这个过程类似于开发和探索之间的权衡。此外,它有可能防止学习策略收敛到次优的局部最优。DrQ[21]在图片输入上使用数据增强来提供更可靠的输出。有两种方法来正则化DrQ中的值函数。它可以提供一种自然的方式来使用MDP结构,通过一种直接的无模型DRL学习方法。在我们的工作中,我们提出了基于DrQ的无人机自主导航方法。仿真结果表明,与其他最先进的方法相比,该方法有明显的改进。
在本节中,提出了一种基于DRL的响应式框架,用于无人机在未知环境下的自主导航。该框架不依赖SLAM,而是利用当前可用的传感器数据对无人机进行导航。此外,我们的框架不需要大量的机载优化,这对于计算资源有限的小型无人机来说是有利的。系统框架如图1所示。
图1 基于DRL的无人机自主导航系统
A. 问题表述
无人机在陌生环境下的自主导航将面临顺序决策的挑战。根据合适的奖励函数的定义,这个问题可以描述为一个MDP。其中表示下一状态,当前状态为。本文将无人机自主导航的挑战用MDP来表述。MDP可以用元组<>来定义。这个元组由一组状态、一组动作、一个奖励函数、一个转移函数和一个折扣因子组成。有许多方法可以用来求解具有有限状态和动作空间的MDP,例如动态规划。另一方面,转移概率和奖励函数在大多数MDP中是无法获得的。RL算法的目的是识别一个将状态映射到动作的最佳策略。假设无人机从地心坐标系的三维点出发,飞向的目标点。时刻的状态由一些原始深度图片以及无人机的各种状态特征组成,其表达式为:。无人机状态特征可以定义为:,其中表示无人机当前位置与目标位置之间的欧氏距离,表示无人机的偏航角,表示无人机的前向夹角和目标位置。无人机的偏航角速度由策略网络产生的动作表示。
B. HTARADrQ
原有的DrQ方法存在训练过程不稳定、对时间序列数据处理能力不足、对长期任务性能不佳等问题。这些问题导致DrQ在无人机自主导航任务中表现不佳。为了提高算法在无人机自主导航任务中的性能,我们提出了分层时间注意力递归平均DrQ (HTARADrQ)。HTARADrQ将DrQ与平均估计函数、时间注意力和分层框架相结合。平均估计函数使训练过程更加稳定。采用时间注意机制的算法可以更好地处理时间序列数据。分层框架可以将长期任务划分为子任务层次结构。高级策略可以识别出最佳子任务,并通过学习将其作为高级行动。子任务本身可能更容易学习,从而进一步提高算法的性能。改进的细节如下所述。
平均估计函数: DrQ采用软策略迭代优化agent与环境交互获得的奖励。软政策迭代的目的是在政策审查和政策改进之间交替进行,但它只能在最大熵范式中发挥作用。DrQ代理的网络由三部分组成:演员网络、评论家网络和目标评论家网络。行动者网络可以根据代理人的当前状态预测代理人的行为。状态-作用对的值由估计。与相同,可用来估计状态-作用对的目标值。软Q学习和Q学习一样,有Q值高估的问题。在我们的工作中,我们通过平均估计策略来缓解软Q学习的高估。这样可以使训练过程更加稳定,提高性能。平均估计函数如下式所示:
其中为损失函数,为期望值算子,为存储过往经验的重播缓冲区,为无人机在时刻的状态,为无人机在t时刻的动作,为Q值函数,为折现因子,为奖励函数,为值函数,为温度因子,为先前学习到的动作状态估计的个数。此外,如图2所示,我们将CNN模块的最后一个全连接层替换为global average pooling(GAP)。与全连接层相比,优势在于GAP没有需要优化的参数,可以避免这一层的过拟合。此外,GAP对空间信息进行了总结,对输入的空间变换具有更强的鲁棒性。
图2 TARADrQ的Actor架构
时间注意:在无人机的自主导航任务中,由于传感器的部分可观测性导致的感知信息不完整和附带噪声非常普遍。因此,无人机无法收集足够的环境信息来发展适当的导航行为。为了处理这个问题,引入了递归的概念,以便更好地评估环境的潜在状态。我们在DrQ中提出了一种递归机制来改善无人机的自主导航,并在CNN模块的输出中增加了一个额外的递归神经网络(RNN)。RNN模块分析网络中包含的时间信息,而不是单一的历史数据集作为输入。此外,由于RNN提供的跨时间的连通性,可以集成和研究更长的历史数据序列,使生成的策略更可信。更具体地说,我们使用LSTM单元作为RNN架构的基础,并将其与DrQ算法相结合,该算法被称为平均DrQ (ADrQ)。
此外,为了识别先验状态下最重要的帧,我们提出了时间注意循环平均DrQ (TARADrQ)。TARADrQ可以在LSTM细胞层的输出上纳入时间注意力,如图2所示。时间注意机制为LSTM单元的输出提供标量权重。这些权重是在不同的时间步长学习的。如公式4所示,Wi为每个LSTM单元输出的权重,为LSTM单元隐藏向量,和为可学习参数,激活函数为ReLU,然后是softmax函数。根据这个概念,每个习得的权重依赖于前一个时间步长的信息和当前状态信息,如公式4所示。在下一步中,我们计算组合上下文向量,如图5所示,上下文向量是LSTM单元输出在个时间步长的加权和。在计算动作之前,与无人机状态数据连接,并通过actor网络的三个完全连接层发送。学习到的权重是LSTM输出的相关性。因此,优化过程的目标是最大化导航成功率的可能性。为了学习适当的行为,优化过程可以学习选择哪些状态相对更重要。这是因为当注意力计算动作输出时,时间注意力可以显式地考虑来自前T帧的LSTM输出特征。与原来的DrQ和ADrQ相比,TARADrQ在处理时间序列数据和时间关系的能力上有了很多改进。
分层框架: 自主导航任务是一项长期任务,HRL可以将一项困难的任务分解成更容易的子任务来执行。它使用了通过强化学习学到的规则层次结构。在分层结构中,最高级别的策略通常选择主任务的子任务作为当前操作。该策略被训练成按顺序完成子任务,然后产生激励奖励并发送给该策略。通过与该子任务相关的内部奖励,较低级别的策略可以学习完成同一级别的子任务。最低级别的策略响应于识别最基本的活动,这些活动被称为原始操作。现在我们提出HTARADrQ,如图3所示,它由一个主策略和M个子策略组成。在每个时间步,主策略将根据当前状态st预测一个主操作,如公式6所示。子策略的索引是从0到。然后,算法根据主动作选择子策略。所选择的子策略将根据当前状态分N步预测无人机的控制动作。对于当前状态,agent可以学习从个子策略中选择一个,并应用该子策略来预测动作
图3 分层结构框架
C. 奖励函数
公式7和公式8分别是子策略和主策略的奖励函数。是无人机前一位置与目标位置之间的欧氏距离。是当前位置与目标位置之间的欧氏距离。如果无人机崩溃或超时,子策略将获得负奖励-1,以降低模型在该状态下选择操作的概率。当无人机到达目标点时,子策略将获得1的正奖励,以增加模型在该状态下选择动作的概率。在其他情况下,无人机将获得奖励。当无人机接近终点时,奖励为正。否则,奖励是消极的。式8是总体政策的奖励函数。是总体政策的回报。是子策略在第i步的奖励。
D. 分层时间注意递归平均DrQ
在本节中,我们将描述HTARADrQ算法的训练过程。首先,我们需要初始化所需的参数,包括主策略,子策略,主缓冲区和子缓冲区。主策略网络由网络和目标网络组成。子策略网络由行动者网络、批评家网络和目标批评家网络组成。然后,在执行任务之前将重置环境。在任务期间,如果当前步骤少于种子步骤,主策略和子策略将随机选择一个操作。否则,它们将根据当前状态预测动作。子策略由主动作选择,分步执行。在每个子步骤中,代理将执行子操作并更新子策略。当任务完成或终止时,主策略将被更新。完整的算法组织为算法1。
在本部分中,我们在仿真环境中测试了HTARADrQ算法,以评估其自主导航和避障能力。根据环境的实际状态分配大量参数,训练agent在100,000个环境中学习策略步骤。为了提供一个比较点,SAC[41]、DrQ[21]、ADrQ和TARADrQ算法都是针对无人机自主导航任务进行训练的。在无人机仿真环境Airsim中对该方法进行了验证。
A. 训练环境与设置
为了验证HTARADrQ在无人机导航任务中的性能,我们首先进行了仿真实验。我们构建了三个环境,如图4所示。环境A是一个精心设计的场景,带有难度和一般障碍。环境B是室内走廊环境,白色的建筑和周围的墙壁是障碍物。环境C是核电站的模拟环境,被认为是下一个现实世界的应用。将归一化范围[0,1]应用于所有感官输入。主策略网络和子策略网络的权值初始化均为均匀分布。
图4 实验环境
在训练时,无人机的飞行速度保持在1.0 m/s。为了增加随机性,在训练过程中随机初始化每集的起始点和结束点。该算法的输入包含无人机的深度图像和状态。深度图像大小为144×256。所有输入数据归一化为[0,1]。算法的输出为[- 60,60]范围内的偏航角速度。在训练过程中,前1000步的动作选择由随机化算法进行。HTARADrQ的每个子策略模型将在与环境交互后进行训练。每一集结束后,总体政策模型将被训练30次。对于每5000次交互,训练模型将用40集进行测试。每个测试集的起始点和结束点也是随机初始化的。当测试过程完成后,培训过程将继续。当交互次数达到10万次时,训练阶段结束。表1总结了所有的hyper-parameters。将参数设置如表1所示,可以稳定模型训练,加快收敛速度。
表1 参数设置
B. 培训结果及分析
首先,我们评估了最终的HTARADrQ模型在这三种环境下的性能,并将其与SAC、DrQ、ADrQ和TARADrQ进行了比较。它们的参数设置和训练过程是相同的。图5描述了他们在训练期间的平均剧集回报。使用三个随机种子来训练五种算法中的每一种。在每5000步中,每个算法将执行一次评估rollout。实线代表三种种子的平均值,阴影区代表三种种子的变异。实线曲线显示HTARADrQ在无人机自主导航任务上优于其他无人机,包括学习速度和整体性能。阴影区域表示HTARADrQ在训练过程中比其他的更稳定。根据HTRADrQ,平均估计函数降低了错误Q值的可能性和参数传递过程的方差。通过用GAP代替全连接层来减小模型的参数。循环机制使DrQ能够处理时间序列数据并从中提取时间序列信息。时间注意机制可以决定每个输入帧的重要性。它会导致更准确的预测。分层框架将长期学习任务分解为多个子问题或子任务层次。高级策略通过选择最佳子任务作为高级操作来执行任务。在子任务的序列上,任务分解可以有效地缩短原任务的视界。学习子任务更容易。因此,与其他算法相比,HTARADrQ在训练过程中更加稳定,收敛速度更快。
图5 训练期间的平均情节奖励曲线。(a)为各算法在环境a中的训练结果;(b)为各算法在环境b中的训练结果;(c)为各算法在环境c中的训练结果
其次,我们比较了HTARADrQ与SAC、DrQ、ADrQ和TARADrQ的避碰性能。结果见表2。我们发现,如果加入平均估计函数、时间关注和层次框架,平均碰撞步长会增加。换句话说,agent的避障能力得到了提高。采用平均估计函数和全局平均池化操作使算法的训练过程更加稳定。这可以在一定程度上提高智能体的避障能力。由于具有周期性和暂时性的注意机制,智能体能够从其周围环境中处理和提取更丰富、更重要的信息。因此,智能体可以避开障碍物,提高预测的准确性。分层框架有利于子任务的学习。它允许智能体获得更有效的避障策略。
表2 碰撞情况下每个模型的平均飞行步数
为了检验SAC、DrQ、ADrQ、TARADrQ和HTARADrQ之间的性能差异,我们在每个环境中测试了这些模型。在每个环境中,我们测试了100轮,其中每个测试的起点和终点是随机生成的。图6显示了导航任务的平均成功率、平均碰撞率和平均超时率。图中的蓝条表示平均成功率。图中的橙色条表示平均碰撞率。图中的绿色条表示平均超时率。可以看出,自主导航模型结合注意机制和层次机制可以学习到更好的导航策略。因此,与SAC、DrQ、ADrQ和TARADrQ相比,HTARADrQ可以更好地学习自主导航策略,并且具有更高的成功率和更低的碰撞率。
图6 测试结果。(a)为各算法在环境a中的测试结果。(b)为各算法在环境b中的测试结果。(c)为各算法在环境c下的测试结果
C. 注意机制
为了验证时间注意机制的有效性,本节使用训练好的模型进行模拟环境B中的各种实验,如直飞实验、转弯实验、避障实验等。图7为该导航模型在直飞实验中的预测结果。第一行是环境的俯视图,绿点表示无人机的位置。第二行是环境的RGB图像。第三行是环境的深度图像。第四行是每帧深度图像对应的注意权值。从图中可以看出,从第一帧到第四帧,注意力权重不断增加。注意模块认为第四帧的深度图像比其他三帧更重要,因此给予第四帧最大的权重。然后,基于四帧深度图像的注意权值,导航模型的预测值为0.15◦/s。在这个偏航角速度下,无人机可以向前飞行。上述实验结果表明,该导航模型学习到了较好的直航策略。
图7 导航模型在直飞试验中的预测结果
图8为转弯试验中导航模型的预测结果。从图中可以看出,第一帧和第四帧的注意权重大于第二帧和第三帧。注意模块认为第四框架提供的信息是最重要的,但是第一框架提供的信息也应该被考虑。在第一张深度图像中,几乎一半的区域是黑色的。它表明无人机此时非常接近左墙。因此,注意力模块给予第一帧更大的权重。然后,基于四帧深度图像的注意权值,导航模型的预测值为-37.23◦/s。实验结果表明,该导航模型学习了较好的转向策略。
图8 导航模型在转弯试验中的预测结果
图9为避障实验中导航模型的预测结果。从图中可以看出,从第一帧到第四帧的注意权重差异不是很大。这意味着注意模块认为这四个框架提供的信息都是重要的。然后,基于四帧深度图像的关注权重,导航模型的预测值为59.68◦/s。在这个偏航角速度下,无人机将向右转以避开左边的墙壁,以防止碰撞事件。实验结果表明,该导航模型学习了较好的避障策略。
图9 避障实验中导航模型的预测结果
D. 消融实验
为了说明分级机制对性能的影响,以及分级机制与其他改进方法相结合的效果,我们在本节进行了消融实验。实验结果见表3。从表中可以看出,每个模型的平均成功率加入分层机制后,环境改善了2% ~ 4%。与只加入层次机制的算法相比,加入层次机制等方法后,模型的平均成功率提高了2% ~ 8%。当算法中加入四种改进方法时,模型的平均成功率最高。可见,分层机制可以在一定程度上提高性能。同时,层次机制可以与循环机制、注意机制、平均值函数相结合,相互促进,进一步提高模型性能。
表3 各模型在各环境下导航任务的平均成功率结果
在本节中,进行了一些真实世界的测试,以验证我们训练的无人机自主导航模型的性能,以及一般的实际结果。
A. 飞行平台
无人机飞行平台基于大疆F550搭建,如图10所示,配备CUAV V5自动驾驶仪。我们设计并为Manifold 2C车载计算机配备了深度传感器,并集成了SLAM算法进行定位和导航。形成了一个组装方便、结构清晰、具有自主飞行能力、可根据不同实验任务进行异化的多功能实验平台。开发了基于QGroundControl的地面站平台,实现了航路规划和无人机状态实时监控。
图10 飞行平台。(a)为我司自组装无人机。(b)为导航系统框架。(c)为地面站平台。(d)为SLAM系统的测试结果
B. 在真实世界中的评估
首先,在办公环境中进行了模拟实验。办公环境平面图如图11所示,其中阴影区域代表障碍物,粗线代表周围的墙壁。本实验的起始和结束位置也显示在图中。图11中有数字标记的位置与图12中的位置相对应。在飞行过程中持续采集环境深度图像和无人机状态信息。将采集到的环境深度图像和无人机状态信息输入到导航模型中,由导航模型预测无人机的偏航角速度。
图11 测试环境的俯视图
图12 导航模型预测结果
实验中使用的模型是经过训练的HTARADrQ模型。模型预测结果如图12所示。第一列是无人机的位置号,第二列是原始环境图像,第三列是环境的深度图像,第四列是导航模型的预测偏航率。负偏航角速度表示向左偏航,而正的意思是向右偏航。从图中可以看出,第一到第三个位置的预测偏航率在[−10,10]之间,因为无人机在这些位置不需要进行大的偏转角,只需要向前移动。在第四个和第五个位置,可以看到无人机在这些位置应该向左转弯,并且偏航角速度的预测值都是大负值。第六次偏航率预测介于[−10,10]之间,因为在这个位置,无人机应该向前飞行。在第7和第8个位置,无人机应该在这些位置向左偏转。此时预测值为较大的负值,使无人机向左转,避免碰撞。在第9个位置,可以看到左边有障碍物,此时预测的偏航率为正,这样无人机可以稍微偏转到右边,避开障碍物。在最后一个位置,可以看到结束位置在前方不远,无人机只需要向前飞行。此时,偏航角速度的预测值在[−10,10]之间。
本文研究了无人机在陌生环境下的自主导航问题,并采用DRL方法解决了这一问题。我们提出了HTARADrQ算法,该算法通过平均估计函数、循环机制、时间关注和分层框架,使无人机能够更好地在连续动作空间中进行动作。通过实时仿真验证了该方法的有效性,其中无人机试图在不与任何障碍物发生碰撞的情况下实现目标。我们的测试结果证明了本文所描述的技术可用于无人机自主导航,并且优于原有的DrQ算法。对于今后的工作,可以构建更加逼真的仿真环境,缩小仿真环境与真实环境之间的差距。在计算奖励时,也可以考虑飞行过程中的能量消耗。考虑飞行过程中的速度和角速度,可以进一步提高算法在复杂环境和路径下的导航性能。
参考文献
联系人:唐老师 |
电话:13917148827 |
邮箱:tangyanqin@tongji.edu.cn |
点“阅读原文”获取论文