CN115879377B - 一种智能飞行汽车模态切换的决策网络的训练方法 - Google Patents
一种智能飞行汽车模态切换的决策网络的训练方法 Download PDFInfo
- Publication number
- CN115879377B CN115879377B CN202211684467.3A CN202211684467A CN115879377B CN 115879377 B CN115879377 B CN 115879377B CN 202211684467 A CN202211684467 A CN 202211684467A CN 115879377 B CN115879377 B CN 115879377B
- Authority
- CN
- China
- Prior art keywords
- decision
- intelligent
- sub
- training
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012549 training Methods 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000006870 function Effects 0.000 claims abstract description 66
- 238000004088 simulation Methods 0.000 claims abstract description 64
- 230000009471 action Effects 0.000 claims description 21
- 239000013598 vector Substances 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 17
- 238000011065 in-situ storage Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000004927 fusion Effects 0.000 claims description 7
- 230000008901 benefit Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 3
- 238000013527 convolutional neural network Methods 0.000 claims description 3
- 238000011176 pooling Methods 0.000 claims description 3
- 229910000831 Steel Inorganic materials 0.000 claims description 2
- 239000010959 steel Substances 0.000 claims description 2
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000004422 calculation algorithm Methods 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 8
- 230000002787 reinforcement Effects 0.000 description 8
- 230000001133 acceleration Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 2
- 230000019771 cognition Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种智能飞行汽车模态切换的决策网络的训练方法,涉及深度学习技术领域,所述方法包括:基于A3C网络构建总决策网络;在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:采用CoppeliaSim仿真器中随机搭建M个模拟环境;复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。本申请的训练方法提高了智能飞行汽车模态切换的决策网络的鲁棒性。
Description
技术领域
本申请涉及深度学习技术领域,尤其是涉及一种智能飞行汽车模态切换的决策网络的训练方法。
背景技术
目前智能飞行汽车的模态切换有两种方式:人工遥控切换与智能模态切换。人工遥控切换依靠驾驶员进行判定,在合理的时间和工况下进行模态切换。智能模态切换完全依据人工智能,根据机器人周围环境信息和载具自身的状态,判断合适的时机进行模态切换,其中,智能模态切换使用基于机器学习的强化学习算法,遵循马尔可夫决策过程,通过智能飞行汽车的传感器,充分感知机器人周围环境,通过深度学习方法和神经网络生成决策。
基于强化学习算法的智能决策器具有人工智能的性质,需要大量的数据支持训练,同时,为保证被训练的决策器具有全面的决策能力,用于训练的数据应该具有全面性。
发明内容
有鉴于此,本申请提供了一种智能飞行汽车模态切换的决策网络的训练方法,以解决上述技术问题。
第一方面,本申请实施例提供了一种智能飞行汽车模态切换的决策网络的训练方法,包括:
基于A3C网络构建总决策网络;
在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:
采用CoppeliaSim仿真器中随机搭建M个模拟环境,每个模拟环境包括智能飞行汽车、可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,以及可以判断智能飞行汽车是否越过的场地边界;
复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。
进一步地,在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件;包括:
步骤S1:按照预设的采样周期获取智能飞行汽车在模拟环境中的状态,包括:智能飞行汽车的RGB相机采集的前方的RGB图像和自身的位置信息;
步骤S2:利用子决策网络对智能飞行汽车在模拟环境中的状态进行处理,生成模态切换的决策指令;
步骤S3:对智能飞行汽车根据决策指令执行动作后的模拟环境进行检测,获取此次运动产生的奖励数值;
步骤S4:判智能飞行汽车是否触发下述条件之一:与障碍物发生碰撞、到达终点和越过场地边界,若为是,则此次训练周期结束;否则,转入步骤S1。
进一步地,所述子决策网络包括:特征提取模块、位置处理模块、拼接模块和决策模块;
所述特征提取模块,包括3个单元,每个单元包括3层卷积神经网络和1层池化层;
所述位置处理模块包括两个全连接层;
所述决策模块包括:全连接层、Dropout层、残差训练单元、LSTM单元和三个输出通道;每一个输出通道使用两个全连接层。
进一步地,利用子决策网络对RGB图像和位置信息进行处理,生成模态切换的决策指令;包括:
利用特征提取模块对RGB图像进行处理,得到图像特征,所将图像特征转换为1维的图像向量;
利用位置处理模块将2维的位置向量信息升维到10维,得到位置向量;
利用拼接模块对1维的图像向量和10维的位置向量进行拼接,得到融合向量;
利用决策模块对融合向量进行处理,第一输出通道输出一个介于0和1之间的数值,该数值为智能飞行汽车的状态的价值函数;第二输出通道输出介于0和1之间的执行动作的决策值,当决策值超过0.5,则智能飞行汽车的执行动作为空中飞行,否则,智能飞行汽车执行动作为地面行驶;第三输出通道输出地面行驶的七种模态的概率或空中飞行的五种模态的概率。
进一步地,所述地面行驶的七种模态包括:前进1m;原地顺时针转向30度,前进1m;原地逆时针转向30度,前进1m;原地顺时针转向60度,前进1m;原地逆时针转向60度,前进1m;原地顺时针转向90度,前进1m;原地逆时针转向90度,前进1m。
进一步地,所述空中飞行的五种模态包括:向前飞行1m;向前左前方45度飞行1m;向前右前方45度飞行1m;向前左前方90度飞行1m;向前右前方90度飞行1m。
进一步地,计算每个子决策网络的损失函数;包括:
计算价值损失函数VLoss:
其中,Rt为第t次运动的奖励数值,T为一个训练周期内的智能飞行汽车的运动次数,V(st)在第t次状态st的价值函数;ξ为预先设定的折扣系数;V(st+1)在第t+1次状态st+1的价值函数;
计算策略损失函数PLoss:
其中,A为优势函数,通过贝尔曼方程计算得到;θ为子决策网络的权重,p(st;)在第t次状态st下选择的执行动作的概率;
计算熵损失函数Eloss:
则子决策网络的损失函数TotalLoss为:
TotalLoss=loss+loss+loss。
第二方面,本申请实施例提供了一种智能飞行汽车模态切换的决策网络的训练装置,包括:
构建单元,用于基于A3C网络构建总决策网络;
训练单元,用于在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:
采用CoppeliaSim仿真器中随机搭建M个模拟环境,每个模拟环境包括智能飞行汽车、可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,以及可以判断智能飞行汽车是否越过的场地边界;
复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。
第三方面,本申请实施例提供了一种电子设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现本申请实施例的方法。
本申请的训练方法提高了智能飞行汽车模态切换的决策网络的鲁棒性。
附图说明
为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法的流程图;
图2为本申请实施例提供的智能飞行汽车模态切换的决策网络的训练装置的功能结构图;
图3为本申请实施例提供的电子设备的功能结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先对本申请实施例的设计思想进行简单介绍。
伴随着机器人技术的发展,更加多样性的任务需求应运而生,其中随着任务多样性的增加,人们发现单一模态的机器人针对某些特定任务表现非常不佳。随着无人机领域的发展,同时具有地面行驶能力与飞行能力的机器人开始出现。对于这种兼具地面行驶能力与飞行能力的机器人,统称为智能飞行汽车,或两栖机器人。由于地面行驶所需要的燃料远远小于飞行过程中所需要的燃料,智能飞行汽车应尽可能保证大量的地面行驶,减少飞行时间,因此智能飞行汽车的模态切换策略成为了一个待研究的问题。目前已经有对智能飞行汽车的模态切换策略进行自动训练的技术方案,但是普遍存在训练时间长且鲁棒性不高的技术缺陷。
为此,本申请提供了一种智能飞行汽车模态切换的决策网络的训练方法,通过在CoppeliaSim仿真器中搭建相应环境,可以短时间内生成大量的数据,训练出成熟的行进策略;采用PyRep工具包实现控制,模拟智能飞行汽车行进,得到成熟的模态切换策略。其中,模态切换的决策网络选用了A3C(A3C全称为Asynchronous Advantage Actor-Critic)网络,同时采用了Ray并行计算架构,引入了多线程并行计算的方法。在网络的设计上,采用了LSTM长短周期模块,增加了两栖机器人决策的连贯性,保证了策略的连续。同时本申请提出了与强化学习算法相配套的仿真器训练环境,该环境基于CoppeliaSim仿真器,在仿真器中从底层设计了两栖机器人的控制器,使得两栖机器人精确执行地面运动和空中飞行动作,还原了其在真实世界中的动力学状态,真实模拟了陆空机器人在真实世界环境中运动的状态。
与现有的技术相比,本申请的优势在于:
1.本申请的决策网络采用了A3C网络,在生成成熟策略的同时,由于多线程的训练方式,同时应用Ray的多线程并行计算技术,大大提升了整体模型训练的速度;A3C网络的基于优化策略的原理可以增加智能飞行汽车策略的连贯性;设计了基于A3C的可以并行计算快速收敛的算法;该算法可包括:Actor-Critic为主体的网络,基于优化策略的方式,增强了智能体对历史模态的认知,丰富了网络的输入信息,相比基于优化值函数的方法,提升了网络的性能;合并了Actor-Critic网络成一个网络结构,增加了网络的稳定性,减少了训练过程中冗余的计算过程,进一步加快计算的速度;网络引入了LSTM长短周期序列模块,增强了网络对历史状态的感知;网络的运算方面引入了Ray的并行计算方法,缩短了训练所需要的时间。
2.本申请采用CoppeliaSim仿真器,该仿真器和现实环境的相似性较高,同时CoppeliaSim仿真器支持多个场景并行计算,可以满足多个环境的并行计算的需求;仿真中的智能飞行汽车,应用了四轮四转向的地盘和折叠机构的机翼,充分模拟了机器人在真实环境的运动状态;仿真器中的环境含有大量复杂的环境,可以充分的模拟现实环境中的各种障碍,同时为网络的提供多样性的障碍数据,增大了决策网络的鲁棒性。
3.本申请采用CoppeliaSim仿真器构建多个模拟环境,复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;在不同的模拟环境中采集数据,通过A3C网络的更新策略更新子决策网络,再统一将子决策网络中的参数上传到总决策网络中,提高了总决策网络的训练速度,缩短了训练时间。
在介绍了本申请实施例的应用场景和设计思想之后,下面对本申请实施例提供的技术方案进行说明。
如图1所示,本申请实施例提供了一种智能飞行汽车模态切换的决策网络的训练方法,包括:
步骤101:基于A3C网络构建总决策网络;
本实施例使用A3C的强化学习网络制定智能飞行汽车的模态切换策略,与传统的DQN等基于值函数的强化学习原理不同,A3C采用了策略梯度原理,应用了两个网络通过对抗的方法生成最优策略;并且采用TD-error的方法进行参数更新,通过不断迭代策略,得到最优的策略,从而使智能飞行汽车产生最优策略,完成指定的任务。
步骤102:在一个训练周期内,执行下述步骤:
步骤201:利用CoppeliaSim仿真器随机搭建M个模拟环境,每个模拟环境包括可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,可以判断智能飞行汽车是否越过的场地边界;
其中,本实施例采用CoppeliaSim仿真器,同时结合PyRep工具包搭建仿真环境,CoppeliaSim仿真器具有多种的接口,可依据Python,MATLAB以及Lua脚本进行编译,发布控制指令于被控对象。同时根据外设的脚本语言,进行了场景的构建,以及场景的改进,不需要人为从仿真器端进行场景的重建。本实施例在CoppeliaSim仿真器中,搭建了智能飞行汽车的模态切换策略器所需要的训练环境,包括智能飞行汽车,起点,障碍物以及终点。智能飞行汽车在行进过程中可以自动切换飞行和地面行驶两种模态,地面行驶模态使用四轮四转向底盘,具有更加灵活的运动属性,飞行模态应用折叠机翼机构,提供充足的升力。
步骤202:复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
步骤203:在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件;
步骤204:当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。
具体的,在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件;包括:
步骤S1:按照预设的采样周期获取智能飞行汽车在模拟环境中的状态,包括:智能飞行汽车的RGB相机采集的前方的RGB图像和自身的位置信息;
本实施例应用两种传感器进行信息的采集,同时作为决策网络的输入;第一种传感器为IMU,用于测量智能飞行汽车的运动速度以及位置,另外一种传感器为视觉传感器,用于获得图像信息,通过图像识别智能飞行汽车前方的障碍物。
步骤S2:利用子决策网络对智能飞行汽车在模拟环境中的状态进行处理,生成模态切换的决策指令;
对于图像信号的处理,本实施例采用特征提取模块,包括3个单元,每个单元包括3层卷积神经网络和1层池化层;特征提取模块充分提取图像中的信息。对于位置信息,本实施例使用了两层全连接层的信息提取方式,将1x2的位置向量信息升维到1x10维,充分提取位置信息。然后将图像信息转换为1维的图像向量,将位置向量和图像向量进行拼接,完成信息的融合。
对于融合信息的处理,本实施例采用全连接网络和Dropout层相结合的方式,先通过2层全连接网络,再通过1层Dropout层,同时引入了残差训练的方式,防止出现梯度消失的问题。最后在残差训练模块后接入LSTM长短期记忆模块,增加了网络的记忆性,考虑了过去时刻的状态以及动作,增强网络对连续动作的认知度。决策模块的输出为3项,输出网络的结构连接在LSTM模块后,每一个输出通道使用两层的全连接网络:利用决策模块对融合向量进行处理,第一输出通道输出一个介于0和1之间的数值,该数值为智能飞行汽车的状态的价值函数;第二输出通道输出介于0和1之间的执行动作的决策值,当决策值超过0.5,则智能飞行汽车的执行动作为空中飞行,否则,智能飞行汽车执行动作为地面行驶;第三输出通道输出地面行驶的七种模态的概率或空中飞行的五种模态的概率,将概率值最大的模态作为执行动作。
本实施例设定了机器人的七种模地面行驶模态,如表1所示:
表1:智能飞行汽车的地面行驶模态
序号 | 运动执行机构 |
0 | 前进1m |
1 | 原地顺时针转向30度,前进1m |
2 | 原地逆时针转向30度,前进1m |
3 | 原地顺时针转向60度,前进1m |
4 | 原地逆时针转向60度,前进1m |
5 | 原地顺时针转向90度,前进1m |
6 | 原地逆时针转向90度,前进1m |
同时智能飞行汽车具有5种空中飞行模态,如表2所示:
表2:智能飞行汽车的空中飞行模态
序号 | 运动执行机构 |
0 | 向前飞行1m |
1 | 向前左前方45度飞行1m |
2 | 向前右前方45度飞行1m |
3 | 向前左前方90度飞行1m |
4 | 向前右前方90度飞行1m |
步骤S3:对智能飞行汽车根据决策指令执行动作后的模拟环境进行检测,获取此次运动产生的奖励数值;
针对仿真器中的智能飞行汽车的地面运动模态与飞行模态,本实施例在Pyrep控制包中编写了两套反馈控制方法,更加真实的展示了智能飞行汽车的运动过程。本实施例的地面行驶控制算法借鉴了PyRep工具包中的集成的四轮四转向控制算法,建立了以机器人四个轮子为被控对象,以车辆线速度与角速度为观测量的反馈算法。飞行反馈控制采用5级串联PID控制,分别为角加速度环,姿态环,加速度环,速度环以及位移环,以四个电机的转速为被控对象,角加速度、姿态、加速度、线速度、位移为观测量的串级控制算法。
智能飞行汽车接受决策指令并执行命令,通过预先编写入CoppeliaSim仿真器的PyRep控制包来分配各个执行机构(轮胎或者是机翼)的具体运动状态,执行结束当下命令后,在观测新状态之前,计算此次运动所产生的奖励数值。
为便于模拟智能飞行汽车连续的运动过程,将一个强化学习步长的运动过程拆分为多段子步长,一个强化学习的步长对应仿真器中的1s,每一个子步长对应仿真器的0.02s,因此这种仿真方法可以连续模拟智能飞行汽车运动的全过程。对于每一个子步长,陆空机器人依据飞行与地面行进的控制方法,实时仿真机器人在现实环境中的运动模态。
步骤S4:判智能飞行汽车是否触发下述条件之一:与障碍物发生碰撞、到达终点和越过场地边界,若为是,则此次训练周期结束;否则,转入步骤S1。
本实施例中,计算每个子决策网络的损失函数;包括:
计算价值损失函数VLoss:
其中,Rt为第t次运动的奖励数值,T为一个训练周期内的智能飞行汽车的运动次数,V(st)在第t次状态st的价值函数;ξ为预先设定的折扣系数;V(st+1)在第t+1次状态st+1的价值函数;
计算策略损失函数PLoss:
其中,A为优势函数,通过贝尔曼方程计算得到;θ为子决策网络的权重,p(st;θ)在第t次状态st下选择的执行动作的概率;
计算熵损失函数Eloss:
则子决策网络的损失函数TotalLoss为:
TotalLoss=Vloss+Ploss+Eloss
步骤103:判断是否达到预设的训练周期数量,若为是,则训练结束,否则,转入步骤102。
重新生成多个仿真环境,重新开始一个训练周期;不断重复训练周期,直到达到预定的训练周期数量,可视为陆空两栖无人车的到了成熟的模态切换以及地面避障的策略,说明强化学习方法可以帮助智能飞行汽车自动驾驶和模态切换。
下面利用一个实例对本申请的技术方案进行详细描述。
首先在CoppeliaSim仿真器随机生成多个仿真环境,包括基于真实世界运动学模型的智能飞行汽车,包含折叠飞行机构以及地面四轮四转向底盘的地面行驶机构,高度形状均不相同的障碍物,起点以及终点。值得注意的是该仿真环境建立之后,仿真环境的信息不会作为先验信息传入到智能飞行汽车中,整个过程中的智能飞行汽车基于局部感知进行模态切换的决策。同时设定智能飞行汽车的控制算法,地面行驶算法基于PyRep工具包中的四轮四转向控制算法,飞行控制基于5级串级PID控制算法。依据A3C的原理,生成4个随机的仿真环境,同时生成1个总决策网络以及4个子决策网络,初始化总决策网络的参数并传入到子决策网络中。
在完成了仿真环境的设定之后开始训练,智能飞行汽车通过IMU以及视觉传感器采集周围环境中的信息,并传入子决策网络中,得到了3种输出:第一个输出为价值函数,由于该输出的激活函数为Sigmoid,并且输出tensor大小为1x1,因此输出为一个尺寸为1x1的浮点数,其范围分布在[0,1];第二个输出为模态切换策略,输出的范围和第一个输出相同,其范围分布在[0,1]中,设定模态切换阈值,其中超过0.5,智能飞行汽车切换为飞行模态,如果小于0.5,智能飞行汽车切换为地面行驶模态;第三个输出为地面行驶的七种模态的概率或空中飞行的五种模态的概率。本实施例采用均匀分布的抽样函数,增加了算法的稳定性,但是会增加训练的周长,但是因为应用了A3C的训练算法,不会对结果产生过多的影响。
在一个动作之后,CoppeliaSim仿真器接收到指令,通过控制指令发送相应的命令到运动机构,让机器人进行1s的运动,每一个0.02s的时间间隔仿真器进行检测,检测机器人与障碍物是否发生碰撞、到达终点或者越过场地边界,根据检测结果生成奖励数值,奖励数值的设定如表3所示:
表3
重复上述过程直到智能飞行汽车到达终点、超出范围或者与障碍物发生碰撞,结束一个训练周期。在一个训练周期结束后计算损失函数,通过记录的每一个的step中的状态-动作-奖励对,通过拔靴法得到每一个step所对应的advantages,即为优势。对一个环境中记录的状态-动作-奖励信息进行划分,每一组数据由长度为128的batch组成,其中不足128长度的剩余数据单独作为一个batch传入网络。
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。然后进入下一个训练周期。
基于上述实施例,本申请实施例提供了一种智能飞行汽车模态切换的决策网络的训练装置,参阅图2所示,本申请实施例提供的智能飞行汽车模态切换的决策网络的训练装置200至少包括:
构建单元201,用于基于A3C网络构建总决策网络;
训练单元202,用于在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:
采用CoppeliaSim仿真器中随机搭建M个模拟环境,每个模拟环境包括智能飞行汽车、可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,以及可以判断智能飞行汽车是否越过的场地边界;
复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新。
需要说明的是,本申请实施例提供的智能飞行汽车模态切换的决策网络的训练装置200解决技术问题的原理,与本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法相似,因此,本申请实施例提供的智能飞行汽车模态切换的决策网络的训练装置200的实施可以参见本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法的实施,重复之处不再赘述。
基于上述实施例,本申请实施例还提供了一种电子设备,参阅图3所示,本申请实施例提供的电子设备300至少包括:处理器301、存储器302和存储在存储器302上并可在处理器301上运行的计算机程序,处理器301执行计算机程序时实现本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法。
本申请实施例提供的电子设备300还可以包括连接不同组件(包括处理器301和存储器302)的总线303。其中,总线303表示几类总线结构中的一种或多种,包括存储器总线、外围总线、局域总线等。
存储器302可以包括易失性存储器形式的可读介质,例如随机存储器(RandomAccess Memory,RAM)3021和/或高速缓存存储器3022,还可以进一步包括只读存储器(ReadOnly Memory,ROM)3023。
存储器302还可以包括具有一组(至少一个)程序模块3024的程序工具3025,程序模块3024包括但不限于:操作子系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备300也可以与一个或多个外部设备304(例如键盘、遥控器等)通信,还可以与一个或者多个使得用户能与电子设备300交互的设备通信(例如手机、电脑等),和/或,与使得电子设备300与一个或多个其它电子设备300进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入/输出(Input/Output,I/O)接口305进行。并且,电子设备300还可以通过网络适配器306与一个或者多个网络(例如局域网(Local AreaNetwork,LAN),广域网(Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图3所示,网络适配器306通过总线303与电子设备300的其它模块通信。应当理解,尽管图3中未示出,可以结合电子设备300使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of IndependentDisks,RAID)子系统、磁带驱动器以及数据备份存储子系统等。
需要说明的是,图3所示的电子设备300仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被处理器执行时实现本申请实施例提供的方法。具体地,该可执行程序可以内置或者安装在电子设备300中,这样,电子设备300就可以通过执行内置或者安装的可执行程序实现本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法。
本申请实施例提供的方法还可以实现为一种程序产品,该程序产品包括程序代码,当该程序产品可以在电子设备300上运行时,该程序代码用于使电子设备300执行本申请实施例提供的智能飞行汽车模态切换的决策网络的训练方法。
本申请实施例提供的程序产品可以采用一个或多个可读介质的任意组合,其中,可读介质可以是可读信号介质或者可读存储介质,而可读存储介质可以是但不限于是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合,具体地,可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、光纤、便携式紧凑盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请实施例提供的程序产品可以采用CD-ROM并包括程序代码,还可以在计算设备上运行。然而,本申请实施例提供的程序产品不限于此,在本申请实施例中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
最后所应说明的是,以上实施例仅用以说明本申请的技术方案而非限制。尽管参照实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,对本申请的技术方案进行修改或者等同替换,都不脱离本申请技术方案的精神和范围,其均应涵盖在本申请的权利要求范围当中。
Claims (9)
1.一种智能飞行汽车模态切换的决策网络的训练方法,其特征在于,包括:
基于A3C网络构建总决策网络;
在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:
采用CoppeliaSim仿真器中随机搭建M个模拟环境,每个模拟环境包括智能飞行汽车、可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,以及可以判断智能飞行汽车是否越过的场地边界;
复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件;包括:
步骤S1:按照预设的采样周期获取智能飞行汽车在模拟环境中的状态,包括:智能飞行汽车的RGB相机采集的前方的RGB图像和自身的位置信息;
步骤S2:利用子决策网络对智能飞行汽车在模拟环境中的状态进行处理,生成模态切换的决策指令;
步骤S3:对智能飞行汽车根据决策指令执行动作后的模拟环境进行检测,获取此次运动产生的奖励数值;
步骤S4:判智能飞行汽车是否触发下述条件之一:与障碍物发生碰撞、到达终点和越过场地边界,若为是,则此次训练周期结束;否则,转入步骤S1。
2.根据权利要求1所述的方法,其特征在于,所述子决策网络包括:特征提取模块、位置处理模块、拼接模块和决策模块;
所述特征提取模块,包括3个单元,每个单元包括3层卷积神经网络和1层池化层;
所述位置处理模块包括两个全连接层;
所述决策模块包括:全连接层、Dropout层、残差训练单元、LSTM单元和三个输出通道;每一个输出通道使用两个全连接层。
3.根据权利要求2所述的方法,其特征在于,利用子决策网络对RGB图像和位置信息进行处理,生成模态切换的决策指令;包括:
利用特征提取模块对RGB图像进行处理,得到图像特征,所将图像特征转换为1维的图像向量;
利用位置处理模块将2维的位置向量信息升维到10维,得到位置向量;
利用拼接模块对1维的图像向量和10维的位置向量进行拼接,得到融合向量;
利用决策模块对融合向量进行处理,第一输出通道输出一个介于0和1之间的数值,该数值为智能飞行汽车的状态的价值函数;第二输出通道输出介于0和1之间的执行动作的决策值,当决策值超过0.5,则智能飞行汽车的执行动作为空中飞行,否则,智能飞行汽车执行动作为地面行驶;第三输出通道输出地面行驶的七种模态的概率或空中飞行的五种模态的概率。
4.根据权利要求3所述的方法,其特征在于,所述地面行驶的七种模态包括:前进1m;原地顺时针转向30度,前进1m;原地逆时针转向30度,前进1m;原地顺时针转向60度,前进1m;原地逆时针转向60度,前进1m;原地顺时针转向90度,前进1m;原地逆时针转向90度,前进1m。
5.根据权利要求3所述的方法,其特征在于,所述空中飞行的五种模态包括:向前飞行1m;向前左前方45度飞行1m;向前右前方45度飞行1m;向前左前方90度飞行1m;向前右前方90度飞行1m。
6.根据权利要求1所述的方法,其特征在于,计算每个子决策网络的损失函数;包括:
计算价值损失函数VLoss:
其中,Rt为第t次运动的奖励数值,T为一个训练周期内的智能飞行汽车的运动次数,V(st)在第t次状态st的价值函数;ξ为预先设定的折扣系数;V(st+1)在第t+1次状态st+1的价值函数;
计算策略损失函数PLoss:
其中,A为优势函数,通过贝尔曼方程计算得到;θ为子决策网络的权重,p(st;θ)在第t次状态st下选择的执行动作的概率;
计算熵损失函数Eloss:
则子决策网络的损失函数TotalLoss为:
TotalLoss=Vloss+Ploss+Eloss。
7.一种智能飞行汽车模态切换的决策网络的训练装置,其特征在于,包括:
构建单元,用于基于A3C网络构建总决策网络;
训练单元,用于在一个训练周期内,执行下述步骤,直至达到预设的训练周期数量:
采用CoppeliaSim仿真器中随机搭建M个模拟环境,每个模拟环境包括智能飞行汽车、可以判断是否发生碰撞的障碍物,起点以及可以判断智能飞行汽车是否到达的终点,以及可以判断智能飞行汽车是否越过的场地边界;
复制M个总决策网络作为M个子决策网络,为每个模拟环境分配一个子决策网络;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件,计算每个子决策网络的损失函数;
当所有的模拟环境的当前训练周期均结束,计算M个子决策网络的损失函数的平均值,作为总决策网络的损失函数,利用损失函数对总决策网络的权重参数进行更新;
在各模拟环境中对对应的子决策网络进行训练,直至到达训练周期结束条件;包括:
步骤S1:按照预设的采样周期获取智能飞行汽车在模拟环境中的状态,包括:智能飞行汽车的RGB相机采集的前方的RGB图像和自身的位置信息;
步骤S2:利用子决策网络对智能飞行汽车在模拟环境中的状态进行处理,生成模态切换的决策指令;
步骤S3:对智能飞行汽车根据决策指令执行动作后的模拟环境进行检测,获取此次运动产生的奖励数值;
步骤S4:判智能飞行汽车是否触发下述条件之一:与障碍物发生碰撞、到达终点和越过场地边界,若为是,则此次训练周期结束;否则,转入步骤S1。
8.一种电子设备,其特征在于,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684467.3A CN115879377B (zh) | 2022-12-27 | 2022-12-27 | 一种智能飞行汽车模态切换的决策网络的训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211684467.3A CN115879377B (zh) | 2022-12-27 | 2022-12-27 | 一种智能飞行汽车模态切换的决策网络的训练方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115879377A CN115879377A (zh) | 2023-03-31 |
CN115879377B true CN115879377B (zh) | 2023-11-28 |
Family
ID=85755591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211684467.3A Active CN115879377B (zh) | 2022-12-27 | 2022-12-27 | 一种智能飞行汽车模态切换的决策网络的训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115879377B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708355A (zh) * | 2020-06-19 | 2020-09-25 | 中国人民解放军国防科技大学 | 基于强化学习的多无人机动作决策方法和装置 |
CN113643439A (zh) * | 2020-05-11 | 2021-11-12 | 辉达公司 | 使用一个或更多个神经网络的反应预测 |
CN114492157A (zh) * | 2021-12-22 | 2022-05-13 | 同济大学 | 一种基于个性化驾驶员模型的自动驾驶测试场景生成方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10984783B2 (en) * | 2019-03-27 | 2021-04-20 | Intel Corporation | Spoken keyword detection based utterance-level wake on intent system |
-
2022
- 2022-12-27 CN CN202211684467.3A patent/CN115879377B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113643439A (zh) * | 2020-05-11 | 2021-11-12 | 辉达公司 | 使用一个或更多个神经网络的反应预测 |
CN111708355A (zh) * | 2020-06-19 | 2020-09-25 | 中国人民解放军国防科技大学 | 基于强化学习的多无人机动作决策方法和装置 |
CN114492157A (zh) * | 2021-12-22 | 2022-05-13 | 同济大学 | 一种基于个性化驾驶员模型的自动驾驶测试场景生成方法 |
Non-Patent Citations (4)
Title |
---|
Adversarial Skill Learing for the robust manipulation;pingcheng jian等;《ICFA》;第1-3节 * |
基于深度学习的自动驾驶技术综述;张新钰;高洪波;赵建辉;周沫;;清华大学学报(自然科学版)(第04期);104-110 * |
引入注意力机制的视频声源定位;肖易明;张海剑;孙洪;丁昊;;信号处理(第12期);43-52 * |
目标跟踪算法综述;卢湖川;李佩霞;王栋;;模式识别与人工智能(第01期);第1-3节 * |
Also Published As
Publication number | Publication date |
---|---|
CN115879377A (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Interpretable end-to-end urban autonomous driving with latent deep reinforcement learning | |
Gao et al. | Intention-net: Integrating planning and deep learning for goal-directed autonomous navigation | |
Kahn et al. | Uncertainty-aware reinforcement learning for collision avoidance | |
CN107861508B (zh) | 一种移动机器人局部运动规划方法及装置 | |
Morales et al. | A survey on deep learning and deep reinforcement learning in robotics with a tutorial on deep reinforcement learning | |
Chen et al. | Stabilization approaches for reinforcement learning-based end-to-end autonomous driving | |
EP3788549B1 (en) | Stacked convolutional long short-term memory for model-free reinforcement learning | |
WO2021057059A1 (zh) | 一种神经网络的获取方法以及相关设备 | |
Chaffre et al. | Sim-to-real transfer with incremental environment complexity for reinforcement learning of depth-based robot navigation | |
CN113253733B (zh) | 一种基于学习和融合的导航避障方法、装置及系统 | |
Xiao et al. | Multimodal fusion for autonomous navigation via deep reinforcement learning with sparse rewards and hindsight experience replay | |
Sun et al. | Event-triggered reconfigurable reinforcement learning motion-planning approach for mobile robot in unknown dynamic environments | |
Sebastian et al. | Neural network based heterogeneous sensor fusion for robot motion planning | |
CN117553798A (zh) | 复杂人群场景中移动机器人的安全导航方法、设备及介质 | |
CN115879377B (zh) | 一种智能飞行汽车模态切换的决策网络的训练方法 | |
US20220269948A1 (en) | Training of a convolutional neural network | |
Trasnea et al. | GridSim: a vehicle kinematics engine for deep neuroevolutionary control in autonomous driving | |
Jaladi et al. | End-to-end training and testing gamification framework to learn human highway driving | |
US20240054008A1 (en) | Apparatus and method for performing a task | |
Zhang et al. | Recent advances in robot trajectory planning in a dynamic environment | |
Sharma | SAC-RL: Continuous Control of Wheeled Mobile Robot for Navigation in a Dynamic Environment | |
Kebria et al. | Autonomous navigation via deep imitation and transfer learning: a comparative study | |
Chen et al. | Motion planning for heterogeneous unmanned systems under partial observation from uav | |
Shi et al. | Path Planning of Unmanned Aerial Vehicle Based on Supervised Learning | |
Anderson et al. | Autonomous navigation via a deep Q network with one-hot image encoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |