CN116486356A - 一种基于自适应学习技术的狭窄场景轨迹生成方法 - Google Patents
一种基于自适应学习技术的狭窄场景轨迹生成方法 Download PDFInfo
- Publication number
- CN116486356A CN116486356A CN202310426658.8A CN202310426658A CN116486356A CN 116486356 A CN116486356 A CN 116486356A CN 202310426658 A CN202310426658 A CN 202310426658A CN 116486356 A CN116486356 A CN 116486356A
- Authority
- CN
- China
- Prior art keywords
- track
- vehicle
- cost
- point
- data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005516 engineering process Methods 0.000 title claims abstract description 21
- 238000012549 training Methods 0.000 claims abstract description 47
- 230000006870 function Effects 0.000 claims abstract description 38
- 238000012512 characterization method Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 12
- 230000008859 change Effects 0.000 claims description 25
- 230000006399 behavior Effects 0.000 claims description 17
- 238000011156 evaluation Methods 0.000 claims description 17
- 230000001133 acceleration Effects 0.000 claims description 12
- 239000003245 coal Substances 0.000 claims description 12
- 230000003044 adaptive effect Effects 0.000 claims description 11
- 238000009825 accumulation Methods 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 230000007613 environmental effect Effects 0.000 claims description 8
- 230000002787 reinforcement Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000004888 barrier function Effects 0.000 claims description 4
- 238000013213 extrapolation Methods 0.000 claims description 4
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 230000036461 convulsion Effects 0.000 claims description 3
- 238000013210 evaluation model Methods 0.000 claims description 3
- 238000012886 linear function Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000004083 survival effect Effects 0.000 claims description 3
- 238000000605 extraction Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 6
- 238000005070 sampling Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 206010063385 Intellectualisation Diseases 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011438 discrete method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/48—Matching video sequences
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开一种基于自适应学习技术的狭窄场景轨迹生成方法,包括离线训练步骤和在线轨迹生成步骤,使用同一套策略生成网络模型,可以适用于不同的场景,且训练完成后只需要保存一套网络参数,整个算法更简洁易于维护;同时,该算法仅仅需要通过网络来学习两个轨迹表征参数,大大的降低了网络模型的参数量和训练难度,并增强了轨迹生成算法的可解释性与可靠性,保证了生成轨迹满足车辆运动学约束;另外,在策略生成网络模型训练过程中,引入了专家驾驶数据训练奖励函数权重,极大的降低了奖励函数调参的难度,同时随着训练数据的丰富,算法生成的轨迹特性将吸取专家驾驶的驾驶经验,使得生成的轨迹更加拟人化、智能化。
Description
技术领域
本发明属于智能汽车自动驾驶技术领域,具体涉及到一种基于自适应学习技术的狭窄场景轨迹生成方法。
背景技术
近年来,随着多种类型的传感器成本降低、感知检测算法的智能化以及底盘线控技术的普及,自动驾驶技术越来越多的在普通乘用车和商用车上得到了应用,轨迹规划是自动驾驶系统中不可或缺的模块之一,在整个自动驾驶系统中,承担了承上启下的作用,该模块需要接收上游的所有环境输入,再综合决策后计算出安全、高效、舒适的行车轨迹,之后控制执行机器跟踪该轨迹从而完成自动驾驶任务。
现有的自动驾驶轨迹规划技术主要有以下几类:1.基于搜索与采样的算法,以open space场景的hybrid A star以及结构化道路的lattice planner算法应用最为广泛;2.基于曲线拟合的算法,主要是基于圆弧、螺旋线、多项式曲线、B样条曲线等方式来生成轨迹;3.基于数值优化的算法,主要是构造优化函数以及约束来生成最优轨迹;4.基于深度学习强化学习的数据驱动的方法。
上述不同的轨迹算法都在目前的大多数自动驾驶系统中得到了应用或者尝试,也在过去的一段时间内解决了大量自动驾驶任务中轨迹生成的任务。然而,上述的几种方法仍然存在一定的局限性,主要体现在如下几个方面:1.基于采样和搜索的算法存在算力消耗不稳定、轨迹帧间连续性较差、多维搜索较耗时等问题;2.基于曲线拟合的算法,需要在不同场景下维护多套曲线生成算法和参数,例如圆弧直线螺旋线在泊车场景中对不同起始位置、轨迹段数等都需要不同的处理;3.基于数值优化的算法,大多需要先找出一个可行的凸空间来求解,同时在障碍物复杂场景较为耗时;4.基于深度学习的End-To-End算法存在可解释性差,安全性难以保证的问题;另外,前3种算法还普遍存在生成的轨迹拟人化差的情况,部分场景虽然能完成任务却不能像人类司机一样智能,诸如在泊车场景存在轨迹换挡点位置不合理,生成多余的换挡轨迹等问题。
发明内容
针对上述问题,本发明的主要目的在于设计一种基于自适应学习技术的狭窄场景轨迹生成方法,综合考虑了传统轨迹生成算法稳定、可靠以及深度学习算法,解决园区、泊车等狭窄场景下轨迹规划过程中,智能化、拟人化差的问题。
为了实现上述目的本发明采用如下技术方案:
一种基于自适应学习技术的狭窄场景轨迹生成方法,该方法包括离线训练步骤和在线轨迹生成步骤;
所述的离线训练步骤包括:
步骤1:自车及环境数据获取;包括自车状态数据、环境数据信息、历史状态累积信息;
步骤2:针对步骤1获取的数据信息进行特征提取;
步骤3:根据步骤2提取的特征数据,通过轨迹生成模型得到轨迹生成的参数,并得到车辆的轨迹点;
步骤4:基于步骤3生成的轨迹点结合专家驾驶数据,进行车辆轨迹点的优化;
所述的在线训练步骤包括:
步骤5:加载步骤3轨迹生成模型中训练好的参数,根据步骤1的数据输入,在固定时间步通过步骤3的轨迹参数,生成行车轨迹。
作为本发明进一步的描述,步骤1中,所述的自车状态数据,包括车辆位置、速度、加速度、方向盘转角、油门刹车、档位中的一种或多种;
所述的环境数据包括地图信息、动态障碍物信息;
所述的地图信息包括车道边界、库位边界、停车线中的一种或多种;所述的动态障碍物信息包括障碍物的位置、速度、轮廓信息中的一种或多种;
所述的历史状态累积信息,包括当前档位方向累计行驶距离、累计换挡次数中的一种或多种。
作为本发明进一步的描述,步骤2中,对于自车状态数据和历史状态累积信息,使用普通数据归一算法组成1*n维的向量S;
对于动态障碍物信息和地图信息,使用图神经网络的算法表达几何边界信息。
作为本发明进一步的描述,步骤3中,所述轨迹生成模型的构建包括:simulator模块、策略生成网络模型、轨迹表征模型、奖励评估模块;
根据步骤2提取的特征数据,通过策略生成网络模块和奖励评估模块得到轨迹生成的参数,将该参数输入到满足车辆运动学约束的轨迹表征模块得到车辆轨迹点。
作为本发明进一步的描述,所述的simulator模块为交互环境模拟器,基于简化的单车模块对自车状态数据、环境数据信息进行更新,得到固定时间完整的轨迹点;
更新的微分方程为:
其中,x(t),y(t),θ(t)分别表示车辆位置和朝向,v(t)表示车辆速度,表示前轮转角,a(t)表示加速度,Lw表示车辆轴距,ω(t)表示前轮转角速率,jerk(t)表示加速度关于时间变化率。
作为本发明进一步的描述,所述的策略生成网络模型使用PPO连续行为空间强化学习算法,其包含一个策略网络和一个评估网络计算策略梯度,通过梯度下降算法训练更新网络参数,得到使得累积奖励最大的策略参数;
即:输入t时刻的环境数据信息,输出轨迹参数s和dkappa,其中s表示当前轨迹点累积长度,dkappa表示当前点处的曲率关于s的变化率。
作为本发明进一步的描述,所述的轨迹表征模型使用螺旋线模型,通过输入参数s和dkappa,进行输出满足车辆动力学的轨迹点,并将该轨迹点输入所述的simulator模块进行执行,更新自车状态数据及环境数据信息。
作为本发明进一步的描述,所述满足车辆动力学的轨迹点加快输出为通过基准螺旋线查表,并通过缩放的方式进行轨迹点的螺旋线计算,具体步骤包括:
步骤3.1:根据菲涅尔积分计算单位坐标系下的螺旋基准点,并保存到磁盘中,表示为:
p=[x,y,theta,kappa,dkappa];其中,x,y为轨迹点坐标,theta为车辆在该轨迹点处的朝向,kappa为该轨迹点处的曲率,dkappa为该轨迹点处曲率变化率;
步骤3.2:针对缩放后的螺旋线点查表,给定当前的start_point以及需要外推的ds;其中,start_point=[x,y,theta,s,kappa,dkappa];
步骤3.3:找到当前start_point对应下标的基准点,并根据kappa算出缩放因子,得到非基准点的位置,即得出固定时间下的螺旋线。
作为本发明的进一步描述,所述的奖励评估模块基于所述simulator模块的更新结构评估当前轨迹的优劣并计算cost值;
其中,奖励函数包括用于目标引导的costgoal、用于表示轨迹平滑程度的costsmooth、用于表示历史状态累积信息的costlegacy、用于惩罚与环境发生碰撞行为的costcollision、以及为了避免车辆不动的单步存活奖励与完成目标的奖励costrl;
上述cost由权重项参数加权组合得到最终cost,计算方式为:
cost=wgoal*costgoal+wsmooth*costsmooth+wlegacy*costlegacy+wcollision*costcollision+wrl*costrl
coskgoal=wpose*Δpose+wheading*|Δheading|
costsmooth=wkappa*||Δkappa||2+wdkappa*||Δkappa||2
其中,wgoal,wsmooth,wlegacy,wcollision,wrl分别为costgoal,costsmooth,costlegacy,costcollision,costrl的权重;
Δpose为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δheading为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δkappa表示轨迹点的曲率变化量,为t+1时刻曲率kappat+1减去kappat;
Δdkappa表示轨迹点曲率变化率的变化量,为t+1时刻曲率dkappat+1减去dkappat;
wkappa和wdkappa分别表示轨迹点曲率和轨迹点曲率变化率项cost的权重。
dist为车辆t时刻到障碍物的最近距离,d为碰撞安全阈值。
作为本发明进一步的描述,步骤4中,所述的轨迹参数优化为奖励评估模型参数优化过程,优化方式为:基于专家驾驶轨迹数据和步骤3中策略生成网络模型的轨迹参数,通过max-margin损失函数训练奖励函数的权重参数,损失函数表示如下:
其中,τh,i表示第i条专家驾驶轨迹数据,τ为步骤3策略算法生成的轨迹数据,f函数为关于轨迹cost的线性函数,w为奖励函数中的权重参数,N为训练轨迹的总条数。
相对于现有技术,本发明的技术效果为:
本发明提供了一种基于自适应学习技术的狭窄场景轨迹生成方法,使用同一套策略生成网络模型,可以适用于不同的场景,且训练完成后只需要保存一套网络参数,整个算法更简洁易于维护;同时,该算法仅仅需要通过网络来学习两个轨迹表征参数,大大的降低了网络模型的参数量和训练难度,并增强了轨迹生成算法的可解释性与可靠性,保证了生成轨迹满足车辆运动学约束;另外,在策略生成网络模型训练过程中,引入了专家驾驶数据训练奖励函数权重,不仅极大的降低了奖励函数调参的难度,同时随着训练数据的丰富,算法生成的轨迹特性将吸取专家驾驶的驾驶经验,同时也不失去对新场景的泛化能力,使得生成的轨迹更加拟人化、智能化。
附图说明
图1为本发明的整体框架示意图;
图2为本发明中特征提取结构示意图;
图3为本发明的轨迹表征模型示意图。
具体实施方式
下面结合附图对本发明进行详细描述:
一种基于自适应学习技术的狭窄场景轨迹生成方法,参考图1-3所示,该方法包括离线训练步骤和在线轨迹生成步骤;
所述的离线训练步骤包括:
步骤1:自车及环境数据获取;包括自车状态数据、环境数据信息、历史状态累积信息;
步骤2:针对步骤1获取的数据信息进行特征提取;
步骤3:根据步骤2提取的特征数据,通过轨迹生成模型得到轨迹生成的参数,并得到车辆的轨迹点;
步骤4:基于步骤3生成的轨迹点结合专家驾驶数据,进行车辆轨迹点的优化;
所述的在线训练步骤包括:
步骤5:加载步骤3轨迹生成模型中训练好的参数,根据步骤1的数据输入,在固定时间步(在自动驾驶轨迹规划中一般指100毫秒)通过步骤3的轨迹参数,生成行车轨迹。
具体的,本实施例,针对上述公开的轨迹生成方法进行具体分析,内容如下:
1、步骤1中,充分考虑了驾驶环境下的输入数据复杂性,针对各数据的分析如下:
(1)、自车状态数据,包括但不限于车辆位置、速度、加速度、方向盘转角、油门刹车、档位等信息中的一种或多种;通常从线控底盘或者定位相关模块获取。
(2)、环境数据包括但不限于地图信息、动态障碍物信息,通常可以来自预先采集的地图或者传感器实时检测。地图信息包括但不限于车道边界、库位边界、停车线中的一种或多种;动态障碍物信息包括障碍物的位置、速度、轮廓信息中的一种或多种。
还需要说明的是,上述的动态障碍物信息的输入组织成一组向量点的形式,每个点代表障碍物轮廓或者边线的一个点,每个向量点的输入,表示如下:
其中,分别对应障碍物轮廓或者边界的点,ai代表其他附加属性,比如动态障碍物轨迹点速度值。
为了让不同时间帧保持一致,所有障碍物的轮廓点和车道、库位边界点需要归一化到自车坐标系下,如此,该算法就不需要很大范围的全局地图,只需要自车周边一定距离(针对泊车任务10到15米)的局部地图。
之后所有的节点经过图卷积的得到一些列sub graph,并最终输出1*256的向量。
(3)、历史状态累积信息,记录了包括但不限于当前档位方向累计行驶距离、累计换挡次数等历史信息。
历史信息可以表征过去一段时间的生成的累积轨迹的效果,会影响到最终生成的行车轨迹。本实施例的实验中初步考虑了自车当前档位累积行驶的距离以及当前轨迹的总换挡次数,该输入可以让后续算法训练得到换挡次数更少的轨迹,同时也可以减少生成微小段导致下游控制执行机构较难跟踪。
2、步骤2中,输入数据信息的特征提取包括两种方法,具体为:
(1)、对于自车状态数据和历史状态累积状态信息,使用普通数据归一算法组成1*n维的向量S;
本实施例,实验中n=9,S=[dx,dy,dtheta,g,kappa,dkappa,v,s,gearcount],其中dx,dy,dtheta表示当前位置姿态离目标姿态的差距,目标姿态可以是泊车入库最后车辆在库位内的姿态,也可以是出库过程中车辆摆正到目标道路的姿态。g表示当前档位(前进为0,倒车为1),kappa表示当前当前车辆行驶轨迹的曲率,dkappa为当前车辆行驶轨迹的曲率关于行驶距离的变化率。v为当前车辆行驶速度,s为当前档位方向累计行驶距离,gearcount为当前任务已经经历的换挡总次数。
(2)、对于动态障碍物信息和地图信息这类具有几何形状的数据,使用图神经网络的算法表达几何边界信息。
本实施例,实验中采用VectorNet的图神经网络作为障碍物边界特征提取网络。其中,网络的输入为自车坐标系下一定范围内的障碍物外轮廓位置、速度、库位及可行驶车道区域边界点位置以及当前时刻下自车外轮廓点位置数据;网络的输出为1*256维的张量,表征当前环境的碰撞安全特征。
本实施例,综合上述两种提取方法的数据,最终拼接到出1*265维的环境特征数据,如图2所示。
还需要说明的是,本实施例,该部分的数据特征提取使用了Python 3.7来编码,特征数据的保存和训练使用了pytorch 1.4.11。
本实施通过不同的数据特征提取方法,使得下游的输入策略算法能够获得统一结构的输入数据,极大地降低了不同场景下算法的维护难度,并且该环节也可以通过预训练降低整体方法框架的训练难度。
3、步骤3中,轨迹生成模型的构建包括:simulator模块、策略生成网络模型、轨迹表征模型、奖励评估模块;根据步骤2提取的特征数据,通过策略生成网络模块和奖励评估模块得到轨迹生成的参数,将该参数输入到满足车辆运动学约束的轨迹表征模块得到车辆轨迹点。
simulator模块,负责根据车辆运动模型更新自车状态以及环境信息,同时还需要维护自车与环境交互过程的累积奖励值;策略生成网络模型,需要根据输入的特征张量计算可以唯一描述轨迹的模型参数;轨迹表征模型,可以描述轨迹形态的参数,本实施例使用螺旋线来表征轨迹,一方面参数较少,另一方面曲率连续适合生成高质量的行车轨迹;奖励评估模块,对产生的轨迹更新进行综合评估,从而促进策略生成网络模型不断生成更优的轨迹。
具体的,本实施例,针对上述步骤3中的四个模块进行具体分析,内容如下:
(1)simulator模块为交互环境模拟器,模拟车辆与物理环境的交互,基于简化的单车模块对自车状态数据、环境数据信息进行更新,得到固定时间完整的轨迹点;
更新的微分方程为:
其中,x(t),y(t),θ(t)分别表示车辆位置和朝向,v(t)表示车辆速度,表示前轮转角,a(t)表示加速度,Lw表示车辆轴距,ω(t)表示前轮转角速率,jerk(t)表示加速度关于时间变化率。
通过上述微分方程,在时刻t给定加速度和前轮转角,既可以得到一条0~T时刻完整的轨迹点,同时,利用步骤3的策略生成网络模型生成螺旋线的参数s(可正可负,正向为前进,负向为倒车)和参数dkappa;另外,在生成螺旋线轨迹外推点的时候需要对轨迹点的曲率,方向盘转角、转角速率等进行约束。
具体的,simulator模块有如下作用:
①提供车辆初始位置姿态,环境数据信息(可行驶空间边界、障碍物);
②提供车辆运动学模型,在t时刻根据车辆位置姿态和控制输入(加速度和前轮转角速率)更新t+1时刻的位置姿态;
③负责更新车辆和环境的交互结果,比如:是否碰撞,是否达成预设目标位姿,环境输入的更新等。
(2)策略生成网络模型使用PPO连续行为空间强化学习算法,其包含一个策略网络和一个评估网络计算策略梯度,通过梯度下降算法训练更新网络参数,得到使得累积奖励最大的策略参数;
即:根据输入t时刻的环境数据信息,基于连续行为空间强化学习算法输出轨迹生成参数,包括但不限于s和dkappa,其中s表示当前轨迹点累积长度,dkappa表示当前点处的曲率关于s的变化率。
(3)轨迹表征模型使用螺旋线模型,通过输入轨迹生成参数s和dkappa,进行输出一组满足车辆动力学的轨迹点,并将该轨迹点输入simulator模块进行执行,更新自车状态数据及环境数据信息。因此,策略生成网络模型在当前状态计算出向前行驶距离s(s为负可以表示倒车行驶)和曲率变化率就能生成出满足车辆运动学的曲率平滑轨迹。
还需要说明的是,为了加快上述满足车辆动力学轨迹点的计算速度,本实施例的轨迹表征模型通过基准螺旋线查表,并通过缩放的方式进行轨迹点的螺旋线计算,具体步骤包括:
步骤3.1:根据菲涅尔积分计算单位坐标系下的螺旋基准点,并保存到磁盘中,表示为:p=[x,y,theta,kappa,dkappa];其中,x,y为轨迹点坐标,theta为车辆在该轨迹点处的朝向,kappa为该轨迹点处的曲率,dkappa为该轨迹点处曲率变化率;
该生成过程是在系统启动前一次调用的,因此,耗时可以忽略;由于车辆轨迹由kappa限制,所以,只需要保存零点左右一部分的长度的基准点数据就可以,本实施例中,取kappa在[-0.2 0.2]的段。
步骤3.2:针对缩放后的螺旋线点查表,给定当前的start_point以及需要外推的ds;其中,start_point=[x,y,theta,s,kappa,dkappa];
上述的“ds”是指轨迹向外延长的长度,对应螺旋线模型的自变量。
步骤3.3:找到当前start_point对应下标的基准点,并根据Kappa算出缩放因子,得到非基准点的位置,即得出固定时间下的螺旋线;
上述的“下标”指根据start_point处曲率Kappa和dKappa计算出的基准点s0,下标对应的计算方式为:
s0=kappastart_point*r1*r2
其中,dkappa_base为生成基准螺旋线数据表时候的曲率变化率,本实施例为π/2;dkappa_start_point为start_point点处的曲率的导数;kappa_start为start_point点处的曲率;
在上述步骤3.1的螺旋基准点数据表中查找与s0最接近的s对应的点,该点在数据表中第i行,则对应下标就是i。
具体的,本实施例,针对该螺旋线生成加速过程进行详细分析,内容如下:
a、首先构建两个神经网络,一个策略网络,一个评估网络,均以步骤2中提取的特征为输入,随机初始化两个神经网络;
b、在0~T的时间步和simulator交互T步,得到一组数据<s0,a0,s1,r0>,其中,s0为当前时间t得到的环境特征数据,a0为策略网络生成的行为,对于连续行为空间来说,该策略可以为一个正态分布,本实施例中行为2维,返回的是两个维度的均值和标准差。之后根据该分布采样行为,并发送给simulator执行,执行完该行为后,系统转换到状态s1,并根据步骤3奖励评估模块中定义的奖励函数,生成当前的单步奖励值。
c、当积累到一定数量的数据后,开始训练,训练的目标是使得每一步行为的奖励之和的期望最大化;根据得到的轨迹数据累积奖励,可以计算到策略网络的参数梯度更新为:
其中,N为训练轨迹总条数,Tn为单条轨迹的总时间步数,R(τn)为第n条轨迹的累计奖励,为策略网络的梯度,pθ为状态/>下采取行为/>的概率分布。
d、通过上述梯度更新策略网络的参数,同时通过单步之间的BellMan迭代更新目标评估值,根据目标评估值和实时策略网络得到的评估值,可以构造损失函数,此处使用MSE损失函数。
e、随着迭代训练步数增多,策略网络生成的行为使得累积奖励越来越大。
(4)奖励评估模块基于simulator模块的更新结构评估当前轨迹的优劣并计算cost值;
其中,奖励函数包括目标引导的costgoal(用于描述车辆接近目标点的趋势)、轨迹平滑程度的costsmooth(描述轨迹曲率以及曲率变化率的趋势)、用于表示历史状态累积的costlegacy(轨迹换挡次数、当前档位行驶距离,微小段距离等)、用于惩罚与环境发生碰撞行为的costcolision、以及为了避免车辆不动的单步存活奖励与完成目标的奖励costrl;
上述几项cost由不同的权重项参数加权组合得到最终cost,计算方式为:
cost=wgoal*costgoal+wsmooth*costsmooth+wlegacy*costlegacy+wcollision*costcollision+wrl*costrl
coskgoal=wpose*Δpose+wheading*|Δheading|
costsmooth=wkappa*||Δkappa||2+wdkappa*||Δdkappa||2
其中,上式中wgoal,wsmooth,wlegacy,wcollision,wrl分别为costgoal,costsmooth,costlegacy,costcollision,costrl的权重;
Δpose为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δheading为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δkappa表示轨迹点的曲率变化量,为t+1时刻曲率kappat+1减去kappat;
Δdkappa表示轨迹点曲率变化率的变化量,为t+1时刻曲率dkappat+1减去dkappat;
wkappa和wdkappa分别表示轨迹点曲率和轨迹点曲率变化率项cost的权重。
dist为车辆t时刻到障碍物的最近距离,d为碰撞安全阈值(本实施例中设置为0.2米)。
本实施例,步骤3中公开的内容具有以下优势:
步骤3中根据车辆的运动学模型设计了合适的simalator,训练早期可以快速的获取大量数据,同时数据是满足车辆运动学约束的;
步骤3中的轨迹表征模型区别于现有的大多数端到端的算法,该模型通过简单的两个参数描述轨迹,从而大大降低了测量网络的参数量;另外,通过查表法的创新加速了螺旋线的实时生成效率,可以极大的降低交互训练的耗时;
步骤3中选用连续行为空间强化学习算法,可以使得策略的行为也是连续的,区别于离散型为只能得到有限个离散行为值,连续性为更能提升不同时间片的轨迹一致性。
步骤3中选用泛化能力更强的强化学习而非监督学习,可以提升算法对于未知环境输入的适应能力,因此对于不同场景用于自适应能力。
4、步骤4中,轨迹参数优化为奖励评估模型参数优化过程,是为了解决步骤3中的奖励函数权重参数较难确定的问题;本实施例中,具体优化方式为:基于人类专家驾驶轨迹数据和步骤3中策略生成网络模型的轨迹参数,通过max-margin损失函数来训练奖励函数的权重参数,损失函数表示如下:
其中,τh,i表示第i条专家驾驶轨迹数据,τ为步骤3策略算法生成的轨迹数据,f函数为关于轨迹cost的线性函数,形式与步骤3中奖励函数一样,该损失函数的意义在于最大化的区分出人类驾驶数据和算法生成数据,w为奖励函数中的权重参数,该损失函数可以用SVM或者简单的神经网络进行训练。
还需要说明的是,步骤4的训练过程,可以独立于步骤3中的训练,通过离线数据预训练得到,通过max-margin损失函数最大化的区分出好的驾驶轨迹(专家驾驶轨迹)和坏的驾驶轨迹(策略算法生成的轨迹);最终可以通过该奖励函数权重增加步骤3中训练的稳定性,同时也使得策略算法生成的轨迹更加智能化和拟人化。
本实施例,步骤4区别于一般强化学习算法需要大量人工经验来设计奖励函数,步骤4通过设计合理的数据输入和损失函数使得人类专家驾驶数据对算法具有指导意义,使得奖励函数更加稳定,提升整体算法训练的稳定性,同时,人类专家驾驶数据的接入也使得算法生成的轨迹更加像人类驾驶的特点,可以提升输出轨迹的智能性和拟人化。
5、步骤5中,根据步骤1中的输入的结构数据,在每个时刻t就可以延伸出一个轨迹点,多次调用即可在线生成一条行驶轨迹。
本实施例,步骤5的在线推理只需要分别加载框架中不同部分的网络模型,就能在不同场景的输入下快速得到规划轨迹,同时步骤2、步骤3、步骤4页可以分开进行,降低整体的训练难度。
综合上述轨迹生成方法,步骤1到步骤4为离线训练步骤,步骤3训练的策略神经网络的参数会保持到磁盘中;步骤5为在线轨迹生成的步骤,首先从磁盘中加载训练好的策略神经网络的参数和特征提取网络的参数,能够直接根据步骤1中的输入数据得到0~T时间同步的一系列轨迹参数s和dkappa,经过轨迹表征模型即可生成出一条行驶轨迹。
本发明提供了一种适用于园区和地库等狭窄场景的自动驾驶轨迹生成方法,通过输入自车状态信息、环境障碍物以及库位车道边线数据,首先经过特征提取模块生成结构规则的特征张量数据;然后基于策略生成网络模型根据特征张量数据生成轨迹表征参数;最后通过轨迹表征模型和生成的轨迹表征参数生成轨迹;另外通过结合了专家驾驶数据的奖励函数参数训练模型解决了策略生成网络模型训练中奖励函数权重参数不易确定的问题,同时也增强了最终生成轨迹的拟人化特性。
本发明公开的技术方案相对于现有技术的有益效果主要体现在以下几点:
1.本发明公开的轨迹生成方法区别于传统的搜索采样或者曲线拟合方法,该方法使用同一套策略网络模型可以适用于不同的场景(如水平、垂直、斜列车位的泊入泊出、地库狭窄转弯等),训练完成后只需要保存一套网络参数,使得整个算法更简洁易于维护。
2.本发明公开的轨迹生成方法区别于现有的end-to-end的深度学习轨迹生成模型,该算法仅仅需要通过网络来学习2个轨迹表征参数,不仅大大的降低了网络模型的参数量和训练难度,而且增强了轨迹生成算法的可解释性与可靠性,保证了生成轨迹一定满足车辆运动学约束。
3.本发明公开的轨迹生成方法在策略网络训练过程中,创新性的引入了通过人类专家驾驶数据来训练奖励函数权重的方法,这不仅极大的降低了奖励函数调参的难度,同时随着训练数据的丰富,算法生成的轨迹特性将吸取人类老司机的驾驶经验,同时也不失去对新场景的泛化能力,使得生成的轨迹更加拟人化、智能化。
以上实施例仅用以说明本发明的技术方案而非限制,本领域普通技术人员对本发明的技术方案所做的其他修改或者等同替换,只要不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:该方法包括离线训练步骤和在线轨迹生成步骤;
所述的离线训练步骤包括:
步骤1:自车及环境数据获取,包括自车状态数据、环境数据信息、历史状态累积信息;
步骤2:针对步骤1获取的数据信息进行特征提取;
步骤3:根据步骤2提取的特征数据,通过轨迹生成模型得到轨迹生成的参数,并得到车辆的轨迹点;
步骤4:基于步骤3生成的轨迹点结合专家驾驶数据,进行车辆轨迹点的优化;
所述的在线训练步骤包括:
步骤5:加载步骤3轨迹生成模型中训练好的参数,根据步骤1的数据输入,在固定时间步通过步骤3的轨迹参数,生成行车轨迹。
2.根据权利要求1所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:步骤1中,所述的自车状态数据,包括车辆位置、速度、加速度、方向盘转角、油门刹车、档位中的一种或多种;
所述的环境数据包括地图信息、动态障碍物信息;
所述的地图信息包括车道边界、库位边界、停车线中的一种或多种;所述的动态障碍物信息包括障碍物的位置、速度、轮廓信息中的一种或多种;
所述的历史状态累积信息,包括当前档位方向累计行驶距离、累计换挡次数中的一种或多种。
3.根据权利要求2所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:步骤2中,对于自车状态数据和历史状态累积信息,使用普通数据归一算法组成1*n维的向量S;对于动态障碍物信息和地图信息,使用图神经网络的算法表达几何边界信息。
4.根据权利要求1所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:步骤3中,所述轨迹生成模型的构建包括:simulator模块、策略生成网络模型、轨迹表征模型、奖励评估模块;
根据步骤2提取的特征数据,通过策略生成网络模块和奖励评估模块得到轨迹生成的参数,将该参数输入到满足车辆运动学约束的轨迹表征模块得到车辆轨迹点。
5.根据权利要求4所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:所述的simulator模块为交互环境模拟器,基于简化的单车模型对自车状态数据、环境数据信息进行更新,得到固定时间完整的轨迹点;
更新的微分方程为:
其中,x(t),y(t),θ(t)分别表示车辆位置和朝向,v(t)表示车辆速度,表示前轮转角,a(t)表示加速度,Lw表示车辆轴距,ω(t)表示前轮转角速率,jerk(t)表示加速度关于时间变化率。
6.根据权利要求5所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:所述的策略生成网络模型使用PPO连续行为空间强化学习算法,其包含一个策略网络和一个评估网络计算策略梯度,通过梯度下降算法训练更新网络参数,得到使得累积奖励最大的策略参数;
即:输入t时刻的环境数据信息,输出轨迹参数s和dkappa,其中s表示当前轨迹点累积长度,dkappa表示当前点处的曲率关于s的变化率。
7.根据权利要求6所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:所述的轨迹表征模型使用螺旋线模型,通过输入参数s和dkappa,进行输出满足车辆动力学的轨迹点,并将该轨迹点输入所述的simulator模块进行执行,更新自车状态数据及环境数据信息。
8.根据权利要求7所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:所述满足车辆动力学的轨迹点加快输出为通过基准螺旋线查表,并通过缩放的方式进行轨迹点的螺旋线计算,具体步骤包括:
步骤3.1:根据菲涅尔积分计算单位坐标系下的螺旋基准点,并保存到磁盘中,表示为:p=[x,y,theta,kappa,dkappa];其中,x,y为轨迹点坐标,theta为车辆在该轨迹点处的朝向,kappa为该轨迹点处的曲率,dkappa为该轨迹点处曲率变化率;
步骤3.2:针对缩放后的螺旋线点查表,给定当前的start_point以及需要外推的ds;其中,start_point=[x,y,theta,s,kappa,dkappa];
步骤3.3:找到当前start_point对应下标的基准点,并根据kappa算出缩放因子,得到非基准点的位置,即得出固定时间下的螺旋线。
9.根据权利要求8所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:所述的奖励评估模块基于所述simulator模块的更新结构评估当前轨迹的优劣并计算cost值;
其中,奖励函数包括用于目标引导的costgoal、用于表示轨迹平滑程度的costsmooth、用于表示历史状态累积信息的costlegacy、用于惩罚与环境发生碰撞行为的costcollision、以及为了避免车辆不动的单步存活奖励与完成目标的奖励costrl;
上述cost由权重项参数加权组合得到最终cost,计算方式为:
cost=wgoal*costgoal+wsmooth*costsmooth+wlegacy*costlegacy+wcollision*costcollision+wrl*costrl
coskgoal=wpose*Δpose+wheading*|Δheading|
costsmooth=wkappa*||Δkappa||2+wdkappa*||Δdkappa||2
其中,wgoal,wsmooth,wlegacy,wcollision,wrl分别为costgoal,costsmooth,costlegacy,costcollision,costrl的权重;
Δpose为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δheading为t+1时刻车辆位姿(xt+1,yt+1)与目标位姿(xgoal,ygoal)的误差减去t时刻车辆位姿(xt,yt)与目标位姿(xcoal,ycoal)的误差;
Δkappa表示轨迹点的曲率变化量,为t+1时刻曲率kappat+1减去kappat;
Δdkappa表示轨迹点曲率变化率的变化量,为t+1时刻曲率dkappat+1减去dkappat;
wkappa和wdkappa分别表示轨迹点曲率和轨迹点曲率变化率项cost的权重。
dist为车辆t时刻到障碍物的最近距离,d为碰撞安全阈值。
10.根据权利要求9所述的一种基于自适应学习技术的狭窄场景轨迹生成方法,其特征在于:步骤4中,所述的轨迹参数优化为奖励评估模型参数优化过程,优化方式为:基于专家驾驶轨迹数据和步骤3中策略生成网络模型的轨迹参数,通过max-margin损失函数训练奖励函数的权重参数,损失函数表示如下:
其中,τh,i表示第i条专家驾驶轨迹数据,τ为步骤3策略算法生成的轨迹数据,f函数为关于轨迹cost的线性函数,w为奖励函数中的权重参数,N为当前训练的轨迹总条数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310426658.8A CN116486356A (zh) | 2023-04-20 | 2023-04-20 | 一种基于自适应学习技术的狭窄场景轨迹生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310426658.8A CN116486356A (zh) | 2023-04-20 | 2023-04-20 | 一种基于自适应学习技术的狭窄场景轨迹生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116486356A true CN116486356A (zh) | 2023-07-25 |
Family
ID=87211343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310426658.8A Pending CN116486356A (zh) | 2023-04-20 | 2023-04-20 | 一种基于自适应学习技术的狭窄场景轨迹生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116486356A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117274425A (zh) * | 2023-08-31 | 2023-12-22 | 武汉理工大学 | 一种基于几何特征的样条曲线生成方法、系统及终端 |
CN117601904A (zh) * | 2024-01-22 | 2024-02-27 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
-
2023
- 2023-04-20 CN CN202310426658.8A patent/CN116486356A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117274425A (zh) * | 2023-08-31 | 2023-12-22 | 武汉理工大学 | 一种基于几何特征的样条曲线生成方法、系统及终端 |
CN117274425B (zh) * | 2023-08-31 | 2024-05-24 | 武汉理工大学 | 一种基于几何特征的样条曲线生成方法、系统及终端 |
CN117601904A (zh) * | 2024-01-22 | 2024-02-27 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
CN117601904B (zh) * | 2024-01-22 | 2024-05-14 | 中国第一汽车股份有限公司 | 车辆行驶轨迹的规划方法、装置、车辆及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297494B (zh) | 一种基于滚动博弈的自动驾驶车辆换道决策方法及系统 | |
CN112347567B (zh) | 一种车辆意图和轨迹预测的方法 | |
CN112356830B (zh) | 一种基于模型强化学习的智能泊车方法 | |
CN110745136B (zh) | 一种驾驶自适应控制方法 | |
CN107264534B (zh) | 基于驾驶员经验模型的智能驾驶控制系统和方法、车辆 | |
CN112099496B (zh) | 一种自动驾驶训练方法、装置、设备及介质 | |
CN113291308B (zh) | 一种考虑驾驶行为特性的车辆自学习换道决策系统及方法 | |
Cai et al. | Vision-based autonomous car racing using deep imitative reinforcement learning | |
CN116486356A (zh) | 一种基于自适应学习技术的狭窄场景轨迹生成方法 | |
CN110969848A (zh) | 一种对向双车道下基于强化学习的自动驾驶超车决策方法 | |
Wu et al. | Deep reinforcement learning on autonomous driving policy with auxiliary critic network | |
CN114407931A (zh) | 一种高度类人的自动驾驶营运车辆安全驾驶决策方法 | |
CN114564016A (zh) | 一种结合路径规划和强化学习的导航避障控制方法、系统及模型 | |
CN112389436A (zh) | 基于改进lstm神经网络的安全性自动驾驶换道轨迹规划方法 | |
CN115257745A (zh) | 一种基于规则融合强化学习的自动驾驶换道决策控制方法 | |
CN114312830A (zh) | 一种考虑危险驾驶工况的智能车耦合决策模型及方法 | |
CN114228690B (zh) | 一种基于ddpg和迭代控制的自动驾驶车辆侧倾控制方法 | |
CN116476825B (zh) | 一种基于安全可信强化学习的自动驾驶车道保持控制方法 | |
Jiang et al. | Implementation of human-like driver model based on recurrent neural networks | |
Lodhi et al. | Autonomous vehicular overtaking maneuver: A survey and taxonomy | |
CN117585017A (zh) | 一种自动驾驶车辆换道决策方法、装置、设备及存储介质 | |
CN114355897A (zh) | 一种基于模型和强化学习混合切换的车辆路径跟踪控制方法 | |
CN116872971A (zh) | 一种基于人机协同增强的自动驾驶控制决策方法及系统 | |
Coad et al. | Safe trajectory planning using reinforcement learning for self driving | |
CN115743178A (zh) | 一种基于场景自适应识别的自动驾驶方法及系统 |
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 |