一种基于深度强化学习的停车策略的制作方法

文档序号:18456428发布日期:2019-08-17 01:37阅读:434来源:国知局
一种基于深度强化学习的停车策略的制作方法

本发明涉及交通工具技术领域,特别涉及一种基于深度强化学习的停车策略。



背景技术:

目前对于自动泊车技术主要的技术路线是基于传统的路径规划算法,如rrt、prm、a*等。其基本思想是在预先制作好的场景地图内,随机产生路径,之后对随机生成的路径进行碰撞检测,即检测路径是否会穿过障碍物,或路径是否在车辆可行驶区域内。再在所有可行的路径中,利用迪杰斯特拉算法等方法选择其中最优的停车路径。

但是,上述现有技术存在以下缺陷:由于现有技术需要先产生随机路径,当场景较为复杂时(障碍物较多、车位狭小),难以产生可行的路径,使得最终得到的规划路径质量较差;现有技术针对不同的场景(不同车库、甚至同一车库的不同车位)都需要重新进行计算其最优路径,使得其泛化能力较差;传统算法对于地图精度有较高的要求,因而在应用有较大噪声的传感器输入(如:相机、lidar等)时,规划效果较差。对规划路径的选择较少,缺少选择最优解的可选规划路径数量。



技术实现要素:

为解决了现有技术中的技术问题。本发明提供了一种基于深度强化学习的停车方法,其特征在于:所述方法可由深度强化学习算法获得停车规划路线;

在深度强化学习算法的训练过程中,由车辆观测状态、车辆预测动作和奖励函数构成元组,所述元组每隔规定时间更新一次;

根据当前车辆观测状态,输出预测动作和奖励函数进行路线规划,当元组更新一次后,根据更新后的车辆观测状态,输出预测动作和奖励函数进行再一次的路线规划,直至车辆到达目标车位;由此可以得到奖励函数值最高的停车规划路线。

优选的,所述车辆观测状态包括车辆坐标(x,y,yaw),其中,x,y分别表示车辆转向中心在可行区域的坐标系下的x坐标与y坐标,yaw为车辆当前姿态与x轴的角度。

优选的,传感器信息为车辆四个角点处安装的传感器测量得到的各角点到最近障碍物的距离。

优选的,所述车辆预测动作包括车辆线速度和车辆转向角度。

优选的,所述奖励函数表示车辆的终止状态与目标车位的距离,车辆的终止状态越接近目标车位,获得的奖励值r越高。

优选的,在采用深度强化学习算法来训练停车策略的过程中,建立第一神经网络和第二神经网络,其中,所述第一神经网络采用车辆观测状态作为输入,输出奖励函数的函数值用于量化当前状态的好坏;第二神经网络采用车辆观测状态作为输入,输出车辆预测动作。

优选的,所述停车规划路线的优越程度可通过以下公式进行评价:

y=a*distance(carposition,targetposition)+b*abs(caryaw-targetyaw)+c*targetreached

其中,y表示停车路径的优越程度;a,b表示控制任务完成度;c表示任务完成的额外奖励;假设规划任务的空间(即上述可行区域)大小为l米*l米,则a=1/l;b=1/2π;c=1,distance()函数返回车辆转向中心距离目标车位点的距离,abs()函数为取括号内数的绝对值,targetreached表明车辆是否到达目标车位,如果车辆到达目标车位,则targetreach=1,否则,targetreach=0。

本发明实施例还提供了一种基于深度强化学习的停车路线获取系统,其特征在于:所述系统可由深度强化学习算法系统获得停车规划路线;

在深度强化学习算法系统的训练过程中,由车辆观测状态、车辆预测动作和奖励函数构成元组,所述元组每隔规定时间更新一次;

根据当前车辆观测状态,输出预测动作和奖励函数进行路线规划,当元组更新一次后,根据更新后的车辆观测状态,输出预测动作和奖励函数进行再一次的路线规划,直至车辆到达目标车位;由此可以得到奖励函数值最高的停车规划路线。

优选的,所述车辆观测状态包括车辆坐标(x,y,yaw),其中,x,y分别表示车辆转向中心在可行区域的坐标系下的x坐标与y坐标,yaw为车辆当前姿态与x轴的角度。

优选的,传感器信息为车辆四个角点处安装的传感器测量得到的各角点到最近障碍物的距离。

优选的,所述车辆预测动作包括车辆线速度和车辆转向角度。

优选的,所述奖励函数表示车辆的终止状态与目标车位的距离,车辆的终止状态越接近目标车位,获得的奖励值r越高。

优选的,在采用深度强化学习算法来训练停车策略的过程中,建立第一神经网络和第二神经网络,其中,所述第一神经网络采用车辆观测状态作为输入,输出奖励函数的函数值用于量化当前状态的好坏;第二神经网络采用车辆观测状态作为输入,输出车辆预测动作。

优选的,所述停车规划路线的优越程度可通过以下公式进行评价:

y=a*distance(carposition,targetposition)+b*abs(caryaw-targetyaw)+c*targetreached。

其中,y表示停车路径的优越程度;a,b表示控制任务完成度;c表示任务完成的额外奖励;假设规划任务的空间(即上述可行区域)大小为l米*l米,则a=1/l;b=1/2π;c=1,distance()函数返回车辆转向中心距离目标车位点的距离,abs()函数为取括号内数的绝对值,targetreached表明车辆是否到达目标车位,如果车辆到达目标车位,则targetreach=1,否则,targetreach=0。

本发明的发明点包括如下几个方面,但不仅限于这几个方面:

(1)提出了以车辆观测状态、车辆预测动作和奖励函数构成元组,基于该元组的泊车规划方法,具有基于产品特点提取特征,使得需要的参数少;基于目标函数:(距离+转向+碰撞),系数不需要调整。这是本发明的发明点之一。举例来说,只需要提取车辆的观测状态o,基于观测状态o即可输出预测动作a,车辆执行预测动作a后,再基于执行预测动作a后的观测状态o输出预测动作a,车辆再执行预测动作a,以此类推循环,经过多次输出预测动作a,即可得到由车辆初始位置行驶至目标车位的停车策略,由于该过程中只需要提取车辆的观测状态o,使得获取停车策略所需要的参数相对较少。在获取停车策略的过程中是需要实时提取车辆的观测状态o,主要是获取坐标、与障碍物的距离等参数,使得对地图精度的要求相对较低;在获取停车策略的过程中,由于是基于实时提取的车辆的观测状态o输出预测动作a,经过多次基于观测状态o预测动作a的重复过程,即使目标车位发生变化,也无需重新进行规划,继续基于当前的观测状态o输出预测动作a即可,有利于提高其泛化能力;这是本发明的发明点之一。

(2)本申请采用深度强化学习的方式来提取特征,采用深度强化学习的方法相比于传统的特征提取方法,具有整体规划时间更快,对外界的反应更快等突出的技术效果。这是本发明的发明点之一。

(3)通过建立合适的公式算法y来衡量停车规划路线的优越程度,使得最终的停车规划路线更加科学。在这一公式中创造性的使用了表示控制任务完成度的两个参数;以及表示任务完成的额外奖励的参数,对优越程度的衡量更加全面,这是本发明的发明点之一。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:

图1是本发明实施例提供的一种环境设计的示意图;

图2是本发明实施例提供的一种的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。

在实车运行时,在仿真环境中,使用停车策略获得可以安全入库的规划路线,其中,停车策略是指输入当前车辆的定位位姿和目标车位的定位位姿,输出控制车辆到达目标车位的车辆线速度和车辆转向角度,停车策略输出的车辆线速度和车辆转向角度约束车辆只能在可行区域内行驶并最终驶入目标车位中。

具体的,在用户开启获取停车策略的仿真软件程序时,仿真软件程序首先获取车辆当前所处环境的地图,根据地图、用户输入的目标车位信息以及车辆当前在地图中的坐标信息,获取车辆由当前位置驶入目标车位时可行驶的区域,即可行区域,获取侧面距离,侧面距离即车辆驶入该可行区域环境时,车辆相对靠近目标车位的车身侧面距离车位线的距离,而后进入训练停车策略的过程。

例如,仿真环境可以如图1所示,矩形区域a为可行区域,可行区域的长度可以为8-10m,可行区域的宽可以为5-6m;矩形区域b为目标车位,目标车位的宽可以为2.6-3m;目标车位中箭头的指向为停车时车头的朝向,即车辆必须按该朝向停到目标车位才视为任务成功;侧面距离的取值可以在0.5-2m之间,不同侧面距离对应不同停车任务下的最优停车策略,具体而言,侧面距离过小或过大都会加大寻找最优停车策略的难度,例如,侧面距离为0.5时就很难泊车,侧面距离为2米时就相对容易一些。

本申请通过深度强化学习来训练停车策略,只有在探索到目标车位或者发生碰撞才会停止规划,并根据奖励函数获得相应奖励。具体的,在深度强化学习过程中,本申请从探索序列中学习停车策略,探索序列[o0,a0,r0,o1,a1,r1,o2,a2,r2,...]中的每个元组(oi,ai,ri)由三个元素组成:车辆观测状态o,车辆在该观测状态下执行的预测动作a,任务反馈奖励值r,探索目标argmax(a0,a1,a2,...)(r0+r1+r2+...),i=0,1,2,....等自然数,i表示元组更新的序数。

在深度强化学习过程中,元组(即观测状态o、预测动作a和奖励值r)每0.1s更新一次。也就是说,实时根据当前观测状态o,输出预测动作a和奖励值r进行路线规划,例如,基于初始的当前观测状态o0输出预测动作a0,车辆执行预测动作a0后得到更新的当前观测状态o1,奖励函数基于更新的当前观测状态o1和目标车位输出奖励值r0,得到原始元组(当前观测状态o0、预测动作a0、奖励值r0);将更新后的当前观测状态o1视为当前观测状态,再基于当前观测状态o1输出预测动作a1,车辆再执行预测动作a1得到更新的当前观测状态o2,奖励函数再基于更新的当前观测状态o2和目标车位得到奖励值r1,得到更新一次的元组(当前观测状态o1、预测动作a1、奖励值r1);以此类推,直至车辆到达目标车位,由各次输出的预测动作a组成一条由初始位置到目标车位的完成路线。

在仿真环境中,车辆观测状态(observation)包括当前车辆坐标和传感器信息。根据可行区域的地图信息获得车辆在可行区域中的当前车辆坐标为(x,y,yaw),其中,x,y分别表示车辆转向中心在可行区域的坐标系下的x坐标与y坐标,yaw为车辆当前姿态与x轴的角度。传感器信息(s1,s2,s3,s4)为车辆四个角点(例如,车辆最前端的两个角点和车辆最后端的两个角点,具体如图1中1、2、3、4所示的四个角点)处安装的声呐传感器测量得到的各角点到最近障碍物的距离。因此,车辆观测状态为七维向量o=(x,y,yaw,s1,s2,s3,s4)。

车辆的动作空间(action)为能够控制车辆运动的输出,即上述预测动作a。在该仿真环境中预测动作a包括车辆线速度linear_v和车辆转向角度angular_z,即a=(linear_v,angular_z)。

奖励函数(reward)用于返回奖励值r。奖励值r除了终止状态之外都为零,其中,终止状态包括步数超过最大步长(步长即从起始状态到终止状态元组更新的次数)、车辆撞到障碍物以及车辆到达目标车位。目标车位为(target_x,target_y,target_yaw),其中,target_x表示x坐标、target_y表示y坐标及target_yaw表示车位姿态的偏移角度(在目标车位停车时车头的朝向与x轴的夹角)。当车辆到达终止状态但未到达目标车位时,环境中的奖励函数返回一个r=-sqrt((x-target_x)2+(y-target_y)2)/10-abs(yaw-target_yaw)/π,该r表示奖励值,车辆的终止状态越接近目标车位,获得的奖励值r越高。当车辆的终止状态到达目标车位时,环境中的奖励函数返回的奖励值r会在上述r的基础上加一,即r=r+1。

基于合理且简单的奖励函数设计,深度强化学习算法可以探索出奖励最高的规划线路,使用神经网络来拟合深度强化学习中状态评价和停车策略输出。

在采用深度强化学习算法来训练停车策略的过程中,具体而言,建立两个神经网络actor和critic,其中,神经网络critic采用上述车辆观测状态o作为输入,输出奖励值r(valuefunction)用于量化当前状态的好坏(是否容易从该状态驶到目标车位),使用神经网络critic拟合车辆观测状态o与奖励值r的关系,该关系的表达式即上述奖励函数;神经网络actor同样采用车辆观测状态o作为输入,输出预测动作a,即在该车辆观测状态下神经网络actor预测出车辆应该采用该预测动作a以驶入目标车位,使用神经网络actor拟合车辆观测状态o与预测动作a选择的分布。具体来说,actor和critic网络是为了将actor网络在观测状态o下输出的预测动作a获得更高的奖励值r,其中,更新之后的预测动作的分布和原动作分布的kullback-leiblerdivergence(kl散度,用于度量两个概率分布之间的距离)小于某个阈值。神经网络critic和actor的隐含层采用相同的结构,即包含三层64节点全连接的隐含层,且都使用relu函数作为激活函数,但神经网络critic在最后一层隐含层后添加一层全连接的线性层来输出函数值r,而神经网络actor则添加了一层全连接层并使用tanh作为激活函数,以输出预测的车辆线速度和车辆转向角度。

采用神经网络来实现状态评价和动作预测可以很好拟合上述复杂环境中不同状态对应的函数值及驶入目标车位的最佳策略。主要原因包括非线性的激活函数以及多层隐含层,使得神经网络可以对环境中隐含的障碍信息进行提取,且actor-critic的双网络结构在保证智能体对于环境探索的前提下,使得训练过程更加稳定和平滑,也提升了样本的效率。

在训练停车策略得到多条停车路径之后,本申请还可以通过以下强化学习奖励公式来评价每一条可能的停车路径的优越程度(结果数值越大表示停车路径越优):

y=a*distance(carposition,targetposition)+b*abs(caryaw-targetyaw)+c*targetreached。

其中,y表示停车路径的优越程度;a,b表示控制任务完成度;c表示任务完成的额外奖励;假设规划任务的空间(即上述可行区域)大小为l米*l米,则a=1/l;b=1/2π;c=1,distance()函数返回车辆转向中心距离目标车位点的距离,abs()函数为取括号内数的绝对值,targetreached表明车辆是否到达目标车位,如果车辆到达目标车位,则targetreach=1,否则,targetreach=0。

以下结合图2所示的流程图来描述训练停车策略的过程,该训练停车策略的过程在模拟器中完成,当用户开启获取停车策略的仿真软件程序时,仿真软件程序由车辆的当前位置开始训练停车策略,进入自动泊车的场景。在训练停车策略的过程中,首先,仿真软件程序中的算法模块(explorer)将车辆当前的观测状态o0输入神经网络actor和critic中,神经网络actor基于观测状态o0输出对车辆的预测动作a0(也称控制量velocityyawrate);之后控制车辆执行预测动作a0,得到下一个观测状态o1,仿真软件中的神经网络critic通过奖励函数(rewardfunction)基于下一个观测状态o1和目标车位得到预测动作a0对应的函数值r0(statereward);神经网络actor并进入下一个观测状态o1的预测,基于下一个观测状态o1输出对应的预测动作a1,控制车辆执行预测动作a1,神经网络critic通过奖励函数基于车辆执行预测动作a1后的观测状态o2和目标车位得到预测动作a1对应的函数值r1,依次类推,直至车辆到达终止状态(到达目标车位或撞到障碍物)。这样经过多次基于观测状态o输出预测动作a以及控制车辆执行预测动作a的过程,就得到一个完成的由车辆初始位置行驶至目标车位的车辆轨迹(trajectory),随着训练的进行,车辆不断探索不同的路径,最终获得一个足够好的泊车策略。

显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1