应用于自动驾驶的控制方法、装置、电子设备及介质与流程

文档序号:23720788发布日期:2021-01-24 08:06阅读:134来源:国知局
应用于自动驾驶的控制方法、装置、电子设备及介质与流程

[0001]
本公开涉及自动驾驶技术领域,具体涉及一种应用于自动驾驶的控制方法、装置、电子设备及介质。


背景技术:

[0002]
在自动驾驶系统中,路径规划与控制算法发挥着整合传感信息、计算行车路径的作用,代替人类对路况进行判断,同时对车辆进行智能控制,是决定自动驾驶安全性和有效性的关键所在。循迹算法通过人为预先设定轨迹,使车辆沿该轨迹行驶,是目前最为实用的自动驾驶路径规划算法之一。
[0003]
目前自动驾驶路径规划技术主要基于传统的循迹点连接方法,主要侧重于生成规划路径,而不考虑车辆行进方向等参数。在车辆控制方面,传统的模块组合算法需要对不同的场景进行穷举和划分,并针对不同场景作出相应的规划,但考虑到现实情况的复杂性,通常难以穷举出所有情况,泛化能力较差。


技术实现要素:

[0004]
为了解决相关技术中的问题,本公开实施例提供一种应用于自动驾驶的控制方法、装置、电子设备及介质。
[0005]
第一方面,本公开实施例中提供了一种应用于自动驾驶的控制方法。
[0006]
具体地,所述应用于自动驾驶的控制方法,包括:
[0007]
基于预设轨迹确定当前阶段的轨迹输入;
[0008]
获取当前阶段的环境图像以及车身状态;
[0009]
基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作。
[0010]
结合第一方面,本公开在第一方面的第一种实现方式中,所述基于预设轨迹确定当前阶段的轨迹输入包括:
[0011]
获取预设轨迹,所述预设轨迹包括多个循迹点;
[0012]
获取当前位置和航向角;
[0013]
基于所述当前位置和航向角,确定地图区域;
[0014]
基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点。
[0015]
结合第一方面的第一种实现方式,本公开在第一方面的第二种实现方式中,所述基于所述当前位置和航向角,确定地图区域包括:
[0016]
以当前位置为坐标原点,所述航向角的方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数。
[0017]
结合第一方面,本公开在第一方面的第三种实现方式中,所述获取当前阶段的环境图像包括:
[0018]
通过摄像头采集原始图像;
[0019]
对所述原始图像降采样至预定尺寸,得到所述环境图像。
[0020]
结合第一方面,本公开在第一方面的第四种实现方式中,所述车身状态包括车辆行驶速度和加速度。
[0021]
结合第一方面、第一方面的第一种至四种实现方式中的任一项,本公开在第一方面的第五种实现方式中,所述基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作包括:
[0022]
将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作。
[0023]
结合第一方面的第五种实现方式,本公开在第一方面的第六种实现方式中,所述特征提取层包括步长为1的3*3卷积层、步长为2的3*3最大池化层以及二级残差块,所述动作选择层包括基于双延迟深度确定性策略梯度的强化学习模型。
[0024]
结合第一方面的第六种实现方式,本公开在第一方面的第七种实现方式中,该方法还包括:
[0025]
基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值。
[0026]
第二方面,本公开实施例中提供了一种应用于自动驾驶的控制装置。
[0027]
具体地,所述控制装置包括:
[0028]
确定模块,被配置为基于预设轨迹确定当前阶段的轨迹输入;
[0029]
获取模块,被配置为获取当前阶段的环境图像以及车身状态;
[0030]
生成模块,被配置为基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作。
[0031]
第三方面,本公开实施例提供了一种电子设备,包括存储器和处理器,其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如第一方面、第一方面的第一种至第七种实现方式中任一项所述的方法。
[0032]
第四方面,本公开实施例中提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面、第一方面的第一种至第七种实现方式中任一项所述的方法。
[0033]
根据本公开实施例提供的技术方案,通过基于预设轨迹确定当前阶段的轨迹输入;获取当前阶段的环境图像以及车身状态;基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0034]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0035]
结合附图,通过以下非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加明显。在附图中:
[0036]
图1示出根据本公开实施例的应用于自动驾驶的控制方法的流程图;
[0037]
图2示出根据本公开实施例的确定当前阶段的轨迹输入的流程图;
[0038]
图3示出根据本公开实施例的地图区域的示意图;
[0039]
图4示出根据本公开实施例的预测模型的结构示意图;
[0040]
图5示出根据本公开实施例的应用于自动驾驶的控制装置的框图;
[0041]
图6示出根据本公开实施例的电子设备的框图;
[0042]
图7示出适于实现本公开实施例的控制方法和装置的结构示意图。
具体实施方式
[0043]
下文中,将参考附图详细描述本公开的示例性实施例,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施例无关的部分。
[0044]
在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。
[0045]
另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
[0046]
目前自动驾驶路径规划技术主要基于传统的循迹点连接方法,主要侧重于生成规划路径,而不考虑车辆行进方向等参数。在车辆控制方面,传统的模块组合算法需要对不同的场景进行穷举和划分,并针对不同场景作出相应的规划,但考虑到现实情况的复杂性,通常难以穷举出所有情况,泛化能力较差。
[0047]
图1示出根据本公开实施例的应用于自动驾驶的控制方法的流程图。
[0048]
如图1所示,该方法包括操作s110~s130。
[0049]
在操作s110,基于预设轨迹确定当前阶段的轨迹输入;
[0050]
在操作s120,获取当前阶段的环境图像以及车身状态;
[0051]
在操作s130,基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作。
[0052]
根据本公开实施例提供的技术方案,通过基于预设轨迹确定当前阶段的轨迹输入;获取当前阶段的环境图像以及车身状态;基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0053]
根据本公开实施例,预设轨迹是预先规划好的路线,可以通过各种已有的算法获得。轨迹输入是基于预设轨迹确定的,可以是预设轨迹本身,也可以是根据当前阶段所处的位置从预设轨迹中确定的一个部分。
[0054]
图2示出根据本公开实施例的确定当前阶段的轨迹输入的流程图。
[0055]
如图2所示,该方法包括操作s210~s240。
[0056]
在操作s210,获取预设轨迹,所述预设轨迹包括多个循迹点;
[0057]
在操作s220,获取当前位置和航向角;
[0058]
在操作s230,基于所述当前位置和航向角,确定地图区域;
[0059]
在操作s240,基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点。
[0060]
根据本公开实施例,预设轨迹可以由多个循迹点构成。航向角即自动驾驶设备的朝向,例如自动驾驶汽车的朝向。
[0061]
根据本公开实施例,可以基于当前位置和航向角,可以确定供当前阶段自动驾驶参考的地图区域。地图区域可以是该自动驾驶设备附近的区域,可以在自动驾驶设备所朝向的方向上比相反方向具有更大的面积。例如,以自动驾驶汽车为原点,正北方向为y轴建立直角坐标系,如果汽车朝向正北方向,可以确定(-10k,-k)、(-10k,9k)、(10k,-k)、(10k,9k)围成的地图区域,其中k为正数,例如k可以取值为1米。
[0062]
根据本公开实施例,可以将该地图区域对应于一个二值矩阵,二值矩阵中的每一个元素对应该地图区域的一个相应的子区域。如果子区域内包含循迹点,可以将二值矩阵中对应的元素置为1,否则置为0,反之亦然。
[0063]
图3示出根据本公开实施例的地图区域的示意图。
[0064]
如图3所示,该地图区域被划分为11*11个子区域,其中,标为黑色的子区域示意了该区域中包含循迹点。按照图3所示意的实施例,可以使用11*11的二值矩阵表示如下,作为轨迹输入:
[0065][0066]
根据本公开实施例提供的技术方案,通过获取预设轨迹,所述预设轨迹包括多个循迹点,获取当前位置和航向角,基于所述当前位置和航向角,确定地图区域,基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点,从而可以实时确定预设轨迹在当前区域中的信息,便于实现实时车辆控制。
[0067]
根据本公开实施例,所述基于所述当前位置和航向角,确定地图区域包括:
[0068]
以当前位置为坐标原点,所述航向角的方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数。
[0069]
根据本公开实施例,n可以等于2m,从而使地图区域为正方形区域,便于后续的数
据处理。例如,可以确定(-5.05,0)、(5.05,0)、(5.05,10.1)、(-5.05,10.1)围成的地图区域,单位为米。
[0070]
根据本公开实施例提供的技术方案,通过以当前位置为坐标原点,所述航向角的方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数,从而能够实时获取最适合当前驾驶状况的地图区域的数据。
[0071]
根据本公开实施例,环境图像可以通过各种传感器获得。例如可以通过设置在车辆上的激光雷达获得的点云信息,也可以是图像传感器采集的图像信息等,例如单目黑白摄像头获取800*600像素的周围环境图片。
[0072]
根据本公开实施例,环境图像可以是对采集的原始数据进行预处理得到的图像。例如,获取当前阶段的环境图像包括:
[0073]
通过摄像头采集原始图像;
[0074]
对所述原始图像降采样至预定尺寸,得到所述环境图像,例如,可以对800*600像素的周围环境图片降采样为100*75像素的图像作为环境图像。
[0075]
根据本公开实施例提供的技术方案,通过摄像头采集原始图像;对所述原始图像降采样至预定尺寸,得到所述环境图像,从而可以在可接受的特征丢失程度下尽可能地减小输入尺寸的大小,从而减少计算量,提高系统的运行效率。
[0076]
根据本公开实施例,所述车身状态可以包括车辆行驶速度和加速度,通过车辆行驶速度和加速度能够简洁有效地反映实时的车身状态。
[0077]
根据本公开实施例,所述基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作包括:
[0078]
将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作。
[0079]
根据本公开实施例提供的技术方案,通过将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0080]
图4示出根据本公开实施例的预测模型的结构示意图。
[0081]
如图4所示,该预测模型可以包括状态输入层、特征提取网络和演员与评论家网络。
[0082]
根据本公开实施例,状态输入层用于接收输入,包括轨迹输入、车身状态以及环境图像。
[0083]
根据本公开实施例,特征提取层用于处理轨迹输入和环境图像,提取其特征信息。该特征提取层例如可以是卷积神经网络,可以包括多个卷积层、池化层、残差结构等。在本
公开实施例中,特征提取层包括三个重复的结构,每个结构由一个卷积层、一个池化层和两个残差块构成,卷积层例如可以采用步长为1,卷积核为3*3的卷积层,池化层例如可以采用代表步长为2的最大池化层,残差块例如可以包括两条并联的通路,其中一条设有relu激活层-3*3的卷积层-relu激活层-3*3的卷积层,经过两个卷积层得到的特征与另一条通路传来的原始特征拼接,向后传递。
[0084]
演员与评论家网络(actor-critic):对于actor网络,经过特征提取的轨迹输入和摄像头采集输入与车身速度与加速度一同输入全连接层,激活函数为relu函数,而后输入lstm层(长短时记忆网络,long short-term memory),输出动作a
t
;对于critic网络,经过特征提取的轨迹输入和环境图像、车身状态、动作a
t
一同输入全连接层,激活函数为relu函数,而后输入lstm层,输出表示奖励的q值,通过q值影响actor网络生成动作a
t
的过程。其中,全连接层例如可以具有256个隐藏神经元,lstm层例如可以具有256个隐藏单元。
[0085]
根据本公开实施例,该方法还可以包括基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值。
[0086]
例如,可以定义奖励值如下:
[0087][0088]
其中
[0089][0090][0091]
其中为偏离道路中心的惩罚项,为与障碍物最短距离的惩罚项,d
t
表示当前位置距离轨迹的最短距离,d
b
代表当前位置距离最近障碍物的最短距离。k为因子调节参数,取值越大,车辆与预设轨迹的距离对于奖励值的影响越大,β与δ代表对于距离的放大系数。上式物理含义为:车辆与轨迹距离越近,与障碍物距离越远,获得的奖励越高。该奖励值可以参与到critic网络中的q值的计算。
[0092]
根据本公开实施例提供的技术方案,通过基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0093]
根据本公开实施例,所述动作选择层包括基于双延迟深度确定性策略梯度(td3,twin delayed deep deterministic policy gradient)的强化学习模型。在actor-critic网络的基础上结合dqn(deep q-learning)网络的思想得到ddpg(deep deterministic policy gradient)算法,td3是一种对ddpg算法的进一步改进,采用了一组actor和两组critic,每组包括一个当前网络和一个目标网络,共使用6个网络共同产生决策,缓解了ddpg难以收敛的问题。
[0094]
下面通过一具体实施例对本公开的应用于自动驾驶的控制方法进行说明。
[0095]
算法设定:
[0096]
[1]输入:迭代轮数t,状态特征维度p,动作集a,步长α,衰减因子γ,探索率ε,当前
actor网络(权重记为),目标actor网络(权重记为),当前critic网络(权重记为θ
1

2
),目标critic网络(权重记为θ

1


2
),批量梯度下降的样本数q,目标q网络参数更新频率c。
[0097]
[2]输出:目标actor网络参数记为
[0098]
[3]状态s:如上文所述的轨迹输入,车身状态和换环境图像,轨迹输入的具体设定如下:矩阵中的每个元素对应0.1m*0.1m的区域,以当前汽车的位置作为原点,车的航向角为y轴的正方向,图像矩阵的区域为(-50,0),(50,0),(50,100),(-50,100)。
[0099]
[4]动作a:输出(-30,30)的前轮转向角所对应的方向盘转角,单位为度。
[0100]
[5]即时奖励r:用于车辆与环境的交互,用于衡量车辆决策的合理性,决策越合理,即时奖励越高。可以参考上文对于奖励值的设定。
[0101]
[6]网络结构可以参考上文图4部分的描述,动作选择层选用td3算法。
[0102]
算法步骤:
[0103]
步骤1、建立经验回放的集合d,即用于存储转移信息<s,a,r,s

>(状态、动作、奖励、下一动作)的缓存区;
[0104]
步骤2、获取状态s数据,计算并执行获得奖励r及下一步状态s


[0105]
步骤3、将上述转移信息<s,a,r,s

>保存到回放记忆d当中,如果d的容量满了,随机删除一条旧的记录;
[0106]
步骤4、对记忆池里的样本进行批量随机采样,即从回放记忆中随机选取一批数量为n的转移数据<s,a,r,s

>,n越小,训练速度越快,稳定性越差,n越大则反之。本公开实施例中设置n=32。
[0107]
步骤5、使用随机梯度下降法更新两个critic网络,其目标方程为:
[0108][0109]
其中γ为衰减因子且γ~[0,1],当衰减因子定义为γ=0,则下一动作完全基于即时奖励,不考虑未来奖励。γ的值越高,对未来奖励越看重。公式中竖线的含义为概率论中的条件分布,在给定网络θ
m
情况下,得到q'(s,a|θ
m
)的值,即将(s,a)输入网络θ
m
得到的q'值。本公开实施例设定γ=0.99,用于平衡即时奖励与未来奖励。通过神经网络的梯度反向传播算法来更新critic网络的参数θ。
[0110]
步骤6、每隔t个循环新一次actor当前网络,及actor和critic目标网络(本公开实施例设定t=3)。actor网络更新目标方程为:
[0111][0112]
此处当s的概率分布为s,a=π(s)时,对q(s,a)求期望值。通过神经网络的梯度反向传播算法来更新actor网络的所有参数目标网络更新为:
[0113]
θ

i
=τθ
i
+(1-τ)θ

i
[0114][0115]
其中τ为权重,范围在0到1之间,并满足τ<<1,一般取值在10-5
~10-2
区间,本公开实施例设定τ=2
×
10-4

[0116]
步骤7、循环步骤2-步骤6共m次(本专利中m=2000),经过m轮次训练,车辆能够大致按照预设轨迹行驶。
[0117]
本公开实施例通过深度强化学习td3网络在当前位置进行决策,输入预设路径相对于自身位置的映射,输出实时输出方向盘转角控制车辆的行进路线,能够适应动态变化的环境,提高了避障成功率,降低崩溃和迷路的概率,达到自动驾驶的目标,提高自动驾驶的安全可靠性。利用神经网络进行决策,解决传统循迹算法的缺陷,如循迹点分布不均匀、不平滑导致的车辆决策不连续,轨迹歪歪扭扭、不稳定的问题,提高自动驾驶的稳定性。
[0118]
图5示出根据本公开实施例的应用于自动驾驶的控制装置的框图。其中,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。
[0119]
如图5所示,所述应用于自动驾驶的控制装置500包括确定模块510、获取模块520和生成模块530。
[0120]
确定模块510,被配置为基于预设轨迹确定当前阶段的轨迹输入;
[0121]
获取模块520,被配置为获取当前阶段的环境图像以及车身状态;
[0122]
生成模块530,被配置为基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作。
[0123]
根据本公开实施例提供的技术方案,通过基于预设轨迹确定当前阶段的轨迹输入;获取当前阶段的环境图像以及车身状态;基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0124]
根据本公开实施例,所述基于预设轨迹确定当前阶段的轨迹输入包括:
[0125]
获取预设轨迹,所述预设轨迹包括多个循迹点;
[0126]
获取当前位置和航向角;
[0127]
基于所述当前位置和航向角,确定地图区域;
[0128]
基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点。
[0129]
根据本公开实施例提供的技术方案,通过获取预设轨迹,所述预设轨迹包括多个循迹点,获取当前位置和航向角,基于所述当前位置和航向角,确定地图区域,基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点,从而可以实时确定预设轨迹在当前区域中的信息,便于实现实时车辆控制。
[0130]
根据本公开实施例,所述基于所述当前位置和航向角,确定地图区域包括:
[0131]
以当前位置为坐标原点,所述航向角的方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数。
[0132]
根据本公开实施例提供的技术方案,通过以当前位置为坐标原点,所述航向角的
方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数,从而能够实时获取最适合当前驾驶状况的地图区域的数据。
[0133]
根据本公开实施例,所述获取当前阶段的环境图像包括:
[0134]
通过摄像头采集原始图像;
[0135]
对所述原始图像降采样至预定尺寸,得到所述环境图像。
[0136]
根据本公开实施例提供的技术方案,通过摄像头采集原始图像;对所述原始图像降采样至预定尺寸,得到所述环境图像,从而可以在可接受的特征丢失程度下尽可能地减小输入尺寸的大小,从而减少计算量,提高系统的运行效率。
[0137]
根据本公开实施例,所述车身状态包括车辆行驶速度和加速度。
[0138]
根据本公开实施例提供的技术方案,通过车辆行驶速度和加速度能够简洁有效地反映实时的车身状态。
[0139]
根据本公开实施例,所述基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作包括:
[0140]
将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作。
[0141]
根据本公开实施例提供的技术方案,通过将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0142]
根据本公开实施例,所述特征提取层包括步长为1的3*3卷积层、步长为2的3*3最大池化层以及二级残差块,所述动作选择层包括基于双延迟深度确定性策略梯度的强化学习模型。
[0143]
根据本公开实施例提供的技术方案,通过基于双延迟深度确定性策略梯度的强化学习模型,能够适应动态变化的环境,提高了避障成功率,降低崩溃和迷路的概率。
[0144]
根据本公开实施例,该装置还可以包括奖励确定单元,被配置为基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值。
[0145]
根据本公开实施例提供的技术方案,通过基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值,从而提供一种端到端解决方案,将各种输入参数直接映射到转向控制动作的动作空间,通过使自动驾驶汽车获得最大的奖赏,实时控制车辆行进方向,按照预设轨迹行驶,以此节省模块间交互消耗的计算资源,并能通过训练增强算法对不同场景的泛化能力。
[0146]
本公开还公开了一种电子设备,图6示出根据本公开实施例的电子设备的框图。
[0147]
如图6所示,所述电子设备600包括存储器601和处理器602,其中,存储器601用于
存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器602执行以实现如下操作:
[0148]
基于预设轨迹确定当前阶段的轨迹输入;
[0149]
获取当前阶段的环境图像以及车身状态;
[0150]
基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作。
[0151]
根据本公开实施例,所述基于预设轨迹确定当前阶段的轨迹输入包括:
[0152]
获取预设轨迹,所述预设轨迹包括多个循迹点;
[0153]
获取当前位置和航向角;
[0154]
基于所述当前位置和航向角,确定地图区域;
[0155]
基于所述地图区域生成二值矩阵作为当前阶段的轨迹输入,所述二值矩阵中的每个元素的值表示所述地图区域内的对应子区域是否包含所述循迹点。
[0156]
根据本公开实施例,所述基于所述当前位置和航向角,确定地图区域包括:
[0157]
以当前位置为坐标原点,所述航向角的方向为y轴方向,确定地图中(-m,0)、(m,0)、(m,n)、(-m,n)所围成的地图区域,其中,m、n为正数。
[0158]
根据本公开实施例,所述获取当前阶段的环境图像包括:
[0159]
通过摄像头采集原始图像;
[0160]
对所述原始图像降采样至预定尺寸,得到所述环境图像。
[0161]
根据本公开实施例,所述车身状态包括车辆行驶速度和加速度。
[0162]
根据本公开实施例,所述基于当前阶段的所述轨迹输入、环境图像以及车身状态,生成当前阶段的转向控制动作包括:
[0163]
将当前阶段的所述轨迹输入、环境图像以及车身状态输入至基于强化学习的预测模型,以获取当前阶段的转向控制动作,其中,所述预测模型包括特征提取层和动作选择层,所述特征提取层用于分别提取所述轨迹输入和所述环境图像的特征,所述动作选择层用于根据所述轨迹输入和所述环境图像的特征,以及所述车身状态生成转向控制动作。
[0164]
根据本公开实施例,所述特征提取层包括步长为1的3*3卷积层、步长为2的3*3最大池化层以及二级残差块,所述动作选择层包括基于双延迟深度确定性策略梯度的强化学习模型。
[0165]
根据本公开实施例,所述处理器还用于执行:
[0166]
基于与预设轨迹的偏离程度以及与障碍物之间的距离确定所述强化学习模型的奖励值。
[0167]
图7示出适于实现本公开实施例的控制方法和装置的结构示意图。
[0168]
如图7所示,计算机系统700包括处理单元701,其可以根据存储在只读存储器(rom)702中的程序或者从存储部分708加载到随机访问存储器(ram)703中的程序而执行上述实施例中的各种处理。在ram 703中,还存储有系统700操作所需的各种程序和数据。处理单元701、rom 702以及ram 703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
[0169]
以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;
以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。其中,所述处理单元701可实现为cpu、gpu、tpu、fpga、npu等处理单元。
[0170]
特别地,根据本公开的实施例,上文描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行上述方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
[0171]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0172]
描述于本公开实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过可编程硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
[0173]
作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中电子设备或计算机系统中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
[0174]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1