CN111930015A - 一种无人车控制方法及装置 - Google Patents
一种无人车控制方法及装置 Download PDFInfo
- Publication number
- CN111930015A CN111930015A CN202010975140.6A CN202010975140A CN111930015A CN 111930015 A CN111930015 A CN 111930015A CN 202010975140 A CN202010975140 A CN 202010975140A CN 111930015 A CN111930015 A CN 111930015A
- Authority
- CN
- China
- Prior art keywords
- unmanned vehicle
- state
- time
- moment
- historical
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000012937 correction Methods 0.000 claims abstract description 44
- 238000003062 neural network model Methods 0.000 claims description 33
- 230000009471 action Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 25
- 230000015654 memory Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 16
- 238000005457 optimization Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 39
- 238000010586 diagram Methods 0.000 description 17
- 230000008859 change Effects 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000006872 improvement Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 101150036841 minJ gene Proteins 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本说明书公开了一种无人车控制方法及装置,基于历史时刻的控制量,确定上一时刻的状态估计值,以根据状态估计值以及上一时刻控制量,确定动力学模型输出的当前时刻预测状态,再根据历史时刻的控制量和真实状态,预测上一时刻预测状态,根据该历史时刻无人车的真实状态与上一时刻预测状态,确定动力学模型的预测误差,最后根据误差校正后的当前时刻预测状态和参考轨迹,确定沿参考轨迹像是所需各时刻的控制量,并从其中确定当前时刻的控制量,控制无人车行驶。充分考虑到了系统时滞带来的影响,以及运动模型在时滞情况下预测误差导致的精度问题,确定出更准确的控制量,控制无人车行驶,提高了无人车控制的准确度,提高无人车行驶的安全性。
Description
技术领域
本申请涉及计无人驾驶领域,尤其涉及一种无人车控制方法以及装置。
背景技术
目前,无人车控制方法中,为了简化对无人车控制的复杂程度,通常将对无人车的控制分为对无人车的横向控制以及对无人车的纵向控制,并通过两种控制实现无人车沿规划轨迹行驶。例如,对无人车转向角度的控制为横向控制,而与无人车速度的控制为纵向控制。
现有技术中,一般采用模型预测控制(Model Predictive Control)方法,确定如何控制无人车行驶。MPC通过在预测时间段内,求取每个时刻的无车人最优控制解,然后重复优化过程,从而实现无车人整个预测时间段控制量的优化求解。并且,由于控制无人车的过程中,无人车的状态并不会完全与想达到的状态一致,因此在控制过程中要不断根据无车人状态对未来的控制量作出调整。
在采用MPC对于无车人控制时,需要根据当前无人车的状态以及无人车预定行驶的规划轨迹,求出一组控制量序列,并取时序上最早的控制量作为控制器的输出传给执行器。
但是,在实际应用MPC的过程中,无人车的处理器计算控制量需要消耗时间,处理器根据控制量确定控制指令并通过数据总线(BUS)传输也会产生延时,执行器的机械结构从执行控制指令到完成相应的控制动作也存在一定的延时。上述这些可以统称为系统的延时,都会导致车辆在沿规划轨迹行驶时,产生行驶轨迹的误差。尤其是在横向控制时,更容易产生安全问题。
发明内容
本说明书实施例提供的一种无人车控制方法及装置,用于部分解决现有技术中存在的问题。
本说明书实施例采用下述技术方案:
本说明书提供的无人车控制方法,包括:
确定各历史时刻的控制量;
将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值;
将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态;
根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差;
根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值;
根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
可选地,确定各历史时刻的控制量,具体包括:
根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量;
根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长;
确定当前时刻之前所述时滞时长内各历史时刻的控制量。
可选地,根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量之前,所述方法还包括:
根据预设的更新频率,判断当前时刻是否需要更新时滞时长;
若是,则获取监测器监测到的所述无人车的执行器执行的动作;
若否,则根据上一时刻采用的时滞时长,确定当前时刻之前各历史时刻的控制量。
可选地,将确定出的各控制量作为输入,输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值,具体包括:
按照时间顺序,将确定出的各历史时刻中上一时刻之前的各历史时刻的控制量,依次输入所述预测神经网络模型,得到上一时刻所述无人车的状态估计值。
可选地,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差之前,所述方法还包括:
根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量;
根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长;
确定所述时滞时长之前最近的最近一个历史时刻的控制量,作为所述各历史时刻之前最近一个历史时刻的控制量,确定所述时滞时长之前最近的最近一个历史时刻的所述无人车的真实状态,作为所述各历史时刻之前最近一个历史时刻的真实状态。
可选地,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差,具体包括:
根据所述各历史时刻之前最近一个历史时刻的控制量以及真实状态,作为输入,输入所述动力学模型,确定所述各历史时刻中最早的历史时刻所述无人车的预测状态,作为上一时刻的的预测状态;
根据监测器监测到的所述各历史时刻之前最近一个历史时刻的真实状态与所述上一时刻的预测状态的差,确定所述动力学模型的预测误差。
可选地,所述预测状态至少包括所述无人车的坐标。
可选地,所述控制量包括所述无人车的转向角度以及转向方向。
可选地,根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,具体包括:
根据预先规划得到的待预测时段内无人车的参考轨迹,确定所述无人车在未来各时刻的参考位置;
基于任一时刻所述无人车的真实状态为根据所述时刻的上一时刻的状态校正值和所述时刻的上一时刻的控制量确定的,根据当前时刻的状态校正值以及所述无人车在未来各时刻的参考位置,以各未来时刻的状态校正值与相应时刻的参考位置差值最小,且未来各时刻的控制量最小为优化目标函数,解算未来各时刻的控制量;
根据解算得未来各时刻的控制量,确定当前时刻所述无人车的控制量。
本说明书提供的无人车控制装置,包括:
确定模块,确定各历史时刻的控制量;
第一预测模块,将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值;
第二预测模块,将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态;
误差确定模块,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差;
校正模块,根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值;
控制模块,根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的方法。
本说明书提供的无人车,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一所述的方法。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
基于若干历史时刻的控制量,得到上一时刻的状态估计值,并确定在状态估计值下采取上一时刻控制量控制无人车后,动力学模型得到的当前时刻的预测状态,也就是通过模型预估时滞对无人车状态的影响后,无人车的状态,但是由于模型存在误差,因此又通过不同的历史时刻的控制量和真实状态,预测上一时刻的预测状态,再基于从该历史时刻到当前时刻无人车状态变化可忽略的假设,根据该历史时刻所述无人车的真实状态与上一时刻的预测状态,确定动力学模型的误差,最后根据误差校正后的当前时刻的预测状态和参考轨迹,确定沿参考轨迹像是所需各时刻的控制量,并从其中确定当前时刻的控制量,控制无人车行驶。充分考虑到了系统时滞带来的影响,以及运动模型在时滞情况下预测误差导致的精度问题,并进一步基于在时滞时间内无人车运动变化较小,动力学模型的误差相似的假设,根据预测得到的上一时刻的预测状态和真实状态值,确定预测误差,以得到更准确的状态校正值,使得基于状态校正值和预先规划的参考轨迹,确定出更准确的控制量,控制无人车行驶,提高了无人车控制的准确度,提高无人车行驶的安全性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为现有无人车控制过程示意图;
图2为现有确定无人车控制量的算法框架示意图;
图3为本说明书实施例提供的无人车控制流程示意图;
图4为本说明书实施例提供的确定控制量的框架示意图;
图5 为本说明书实施例提供的无人车控制装置的结构示意图;
图6为本说明书实施例提供的实现无人车控制方法的无人车示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,为了提高无人车控制准确度,一般MPC方法是基于规划得到参考轨迹,以未来运动轨迹与参考轨迹的差异最小为优化目标,解算各时刻的无人车的控制量。其中,每个时刻的状态是通过上一时刻监测到的真实状态和上一时刻的控制量,通过动力学模型预测得到的,解算控制量的过程,如图1和图2所示。
在图1为现有无人车控制过程的示意图,无人车根据出发地点以及目的地点进行路径规划,确定要行驶的路径。在行驶过程中根据采集的环境信息,通过预测模块预测各障碍物的运动轨迹,以及根据电子地图以及定位芯片的数据,确定自身位置以及道路信息,再根据路径、障碍物的轨迹、自身位置以及道路信息,确定行驶决策,例如,变道、跟随、超车等。之后,根据行驶决策、障碍物的轨迹、自身位置以及道路信息,确定无人车未来一段时间内行驶的参考轨迹。最后,根据参考轨迹以及无人车的状态,确定具体的控制指令下发至移动装置,控制无人车行驶。而现有MPC控制过程,即图1中根据参考轨迹以及无人车的状态,确定控制量并发送控制指令的过程。也就是当在确定出无人车的未来一段时间的参考轨迹后,如何输出控制指令使无人车按照该参考轨迹行驶的过程,也就是图1中粗线框对应的步骤。
如图2为现有确定控制量的过程,可见,在k时刻通过规划得到的参考轨迹以及预测得到的无人车的预测状态,确定目标函数minJ(k),并解算得到当前的控制量u(k),基于控制量u(k)确定控制指令并下发至无人车的执行器,控制无人车行驶。其中,无人车的预测状态是根据上一时刻的控制量u(k-1)以及无人车上一时刻的状态x(k-1),通过动力学模型预测确定的。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图3为本说明书实施例提供的无人车控制流程示意图,包括:
S100:确定各历史时刻的控制量。
目前无人驾驶领域中,无人车的控制可以细分为对无人车的纵向控制以及对无人车的横向控制,纵向控制是指对无人车进行加速或者减速的控制,使无人车维持在预期速度行驶,纵向控制量包括对油门开度的控制量以及对刹车开度的控制量,横向控制是指对无人车进行转向角度的控制,使无人车维持在预期的行驶方向上,横向控制量包括对转向方向以及转向角度的控制。其中,转向方法包括相对于无人车车头方向的左侧转向还是右侧转向,转向角度通常从0度到转向轮的最大转向角度,例如,0°~40°。
一般的,对无人能车的纵向控制,较为容易预期,因此通常采用比例、积分、微分(Proportion Integral Differential,PID)算法,确定控制量便可达到较好效果。而横向控制通常涉及到至少两个维度方向上运动的改变,因此较为复杂,通常采用模型预测控制(Model Predictive Control,MPC)确定控制量,本说明书提供的无人车控制方法,用于确定无人车横向控制的控制量,使无人车行驶更加安全。
本说明书一个或多个实施例中,该无人车控制过程可由无人车上设置的处理设备执行,如无人车的行车电脑,或者由远程设置的服务器执行,服务器确定控制量后再发送至无人车的执行器执行。并且,由于本说明书主要就是解决无人车控制所涉及的系统时滞,采用服务器与无人车无线通信的方式时,该无人车控制的系统可视为至少有该无人车和该服务器组成,因此由服务器控制无人车行驶也可控制无人车安全行驶。
具体的,为了方便描述以无人车执行该控制过程为例进行说明,由于执行器执行控制指令存在延迟,从开始执行到执行完毕也存在延迟,指令的传输也存在延迟,而不同原因引起的延迟不一样,不同控制指令对应的延迟也不完全一致,因此无人车可先确定当前时刻之前各历史时刻的控制量,以便后续确定当前时刻输出的控制量。其中,各历史时刻的数量可以是预先设置的,具体数量可以根据需要设置,本说明书不做限制,例如,前时刻之前10个历史时刻、30个历史时刻等等。
另外,由于引起延迟的原因很多,并且在不同情况下,延迟的影响也不完全一致,因此在本说明书一个或多个实施例中,无人车可动态确定对当前时刻控制量会有影响的历史时间段,并获取该历史时间段内各历史时刻的控制量。也就是,该无人能车可动态调整各时刻需要的历史时刻的数量,并动态确定各历史时刻的控制量。
其中,该无人车可按照预设的时间间隔,确定控制量并向无人车的执行器发送根据控制量确定的控制指令,也就是说确定控制量的相邻历史时刻之间存在预设的时间间隔,该时间间隔可根据需要设置,例如,1ms、10ms等等,本说明书不做限制。该执行器为控制无人车的转向轮转向方法以及转向角度的控制设备。
具体的,首先,该无人能车可通过监测器,实时监测无人能车执行的动作,具体是执行器执行的动作,并根据监测到的动作以及各历史时刻向执行器发送的控制量,确定与当前监测到的动作匹配的控制量。例如,当监测到当前执行的是向左转10°的动作,则根据历史上发送的控制量确定向左转10°的控制量。
当然,由于延时也存在最大范围的,因此无人车可从最大延时间内各历史时刻向执行器发送的控制量中,确定与当前无人车动作匹配的控制量。
之后,无人车可根据确定匹配的控制量,确定当前时刻所述无人车的时滞时长,由于匹配的控制量是历史时刻确定出的,因此可将该历史时刻与当前时刻之间的时差,作为时滞时长。
最后,在该时滞时长内确定出的控制量,已经生成控制指令下发给执行器,因此在该时滞时长内的各历史时刻确定的控制量,都有可能对无人车未来行驶产生影响,因此无人车可确定当前时刻之前时滞时长内各历史时刻的控制量,以便后续根据各控制量,确定当前时刻无人车的控制量,并基于确定出的控制量继续控制无人车行驶。
需要说明的是,由于物理规则的限制,通常来说时滞时长是不可避免的,但是在任何控制系统中时滞都是尽力避免的,因此在本说明书提供的一个或多个实施例中,基于在该时滞时长内,该无人车的状态变化可以忽略不计的假设,对时滞时长内动力学模型产生的误差进行校正,以使确定出的控制量更加准确,无人车行驶更加安全。
S102:将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值。
基于上述分析可确定延迟带来的时滞时间是不断动态变化的,而不同时刻无人车的状态不同,执行器执行的动作不同等等,都会影响预测无人车状态准确性的因素。于是,为了在通过预先训练的动力学模型得到的预测状态更准确,便于确定出准确的控制量,在本说明书一个或多个实施例中,该无人车可以先确定当前时刻动力学模型的预测误差,以对动力学模型输出的预测结果进行误差校正。
具体的,为了进行误差校正,本说明书一个或多个实施例中,该无车人可先将步骤S100确定出的至少部分各历史时刻的控制量作为输入,输入预先训练的预测神经网络模型,确定当前时刻的上一时刻无人车的状态估计值。其中,由于不同历史时刻的控制量均会对当前时刻无人车的状态产生影响,因此该预测神经网络模型,具体可以是基于时间序列输入的神经网络模型,例如,长短期记忆网络(Long Short-Term Memory,LSTM)、时钟控制循环神经网络(Clockwork Recurrent Neural Network,CR-RNN)等等。
另外,当该无人车是动态调整进行控制所需要的历史时刻的数量时,则该无人车可以将确定出的当前时刻之前时滞时间内各历史时刻的控制量,均作为预测神经网络模型的输入。而若,该无人车是根据预设的数量确定各历史时刻的控制量,则该无人车按照时间从远到近的顺序,保留至少一个历史时刻的控制量,不作为输入,而作为后续步骤确定预测误差所需的控制量。例如,确定出15个历史时刻的控制量,则无人车可将距离当前最近的14个历史时刻的控制量作为预测神经网络模型的输入。
在本说明书一个或多个实施例中,以预先训练的预测神经网络模型为LSTM为例进行说明,在该无人车还未行驶时(即,还没有向执行器发送控制指令时),无人车向预测神经网络模型输入为0,此时可以仅根据规划的参考轨迹,即无人车需要行驶的轨迹,确定控制量。之后随着时间变化,无人车在不同时刻,需要确定控制量以确定控制指令发送至执行器,当无人车至少向执行器输入两个控制指令后,无人车便可将各历史时刻确定的控制量,按照时间顺序,依次输入预测神经网络模型,并得到当前时刻的上一时刻无人车的状态估计值。
由于动力学模型是根据上一时刻的控制量以及状态值,确定并输出当前时刻的预测状态,因此为了确定当前时刻动力学模型的预测误差,需要先确定上一时刻无人车的状态估计值。
由于在每个时刻,该无人车都需要通过预测神经网络模型,确定该时刻的上一时刻无人车的状态估计值,因此无人车每次可仅将上一时刻之前最近的历史时刻的控制量输入预测神经网络模型,则预测神经网络模型可连续的根据上一次计算得到的隐层特征和输入的控制量,计算得到上一时刻的状态估计值。
或者,在每个时刻,该无人车都根据步骤S100确定出的各历史时刻的控制量,按照时间顺序,将确定出的各历史时刻中上一时刻之前的各历史时刻的控制量,依次输入预测神经网络模型,得到上一时刻无人车的状态估计值。
需要说明的是,在本说明书中,由于确定出的控制量仅对应无人车横向控制,因此该状态也可仅包含该无人车的坐标,用于使无人车根据确定出的控制量进行控制之后,无人车的坐标与参考轨迹的差异最小,也就是沿着参考轨迹行驶。
进一步地,该预测神经网络模型,可以通过历史上多次行驶过程中,采集的多个时刻无人车的控制量,作为训练样板,以无人车在各时刻的坐标为训练样本的标签,训练预测神经网络模型,以预测神经网络模型输出的状态估计值与无人车的坐标的差值最小为优化目标,调整预测神经网络模型的模型参数,直至该预测神经网络模型输出结果准确度达到预设阈值,或者训练次数达到预设次数位置,确定该预测神经网络模型训练完成。
S104:将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态。
在本说明书中,无人车在确定出上一历史时刻的状态估计值后,便可将上一历史时刻的控制量以及该状态估计值作为输入,输入预先训练的动力学模型,得到该动力学模型输出的当前时刻该无人车的预测状态。该预测状态是基于预测的状态估计值和实际的控制量确定出来的,可作为确定动力学模型的误差后校正的基础。
具体的,该动力学模型可以是预先训练得到的,当然通常动力学模型可根据需要设置输入以及输出,再根据实际测得的车辆状态,训练该模型的模型参数。于是,在本说明书中,该动力学模型可以是预先训练的通用的模型,也可以是专门训练的用于输入状态值和控制量,输出预测状态的模型。
当然,由于动力学模型的应用在车辆运动以及车辆状态预测领域中已经较为成熟,因此对于该动力学模型的具体如何训练本申请不再赘述。
需要说明的是,在本说明书的动力学模型是基于车辆的动力学模型,通常来说基于车辆动力学模型的横向控制算法包括:线性二次型调节器(Linear QuadraticRegulator,LQR)控制算法、MPC等,本说明书对于具体采用何种算法不做限制。
另外,动力学模型通常用于确定作用于物体的力与物体运动的关系,本说明书中的动力学模型区别于运动学模型,车辆运动学是从几何学的角度确定车辆的运动规律,包括车辆在空间的位置、速度等随时间而产生的变化,因此车辆运动学模型应该能反映车辆位置、速度、加速度等与时间的关系。通常来说,运动学模型用于本说明书提供的方法之前的车辆控制过程中,也就是规划无人车的参考轨迹得过程,使规划出的参考轨迹更切合实际,满足车辆行驶过程中的运动学几何约束。当然,车辆运动学模型也可用于对无人车的执行器的控制,通常基于车辆运动学模型横向控制算法包括:纯跟踪控制(Pure Pursuit)算法、后轮反馈控制(Rear wheel feedback)及前轮反馈控制(Front wheel feedback)算法。
进一步地,本说明书提供的方法因为在误差校正过程中,并未确定轨迹误差,而是确定坐标误差也就是单个位置的坐标预测误差,因此并不适用对运动学模型的误差校正。
S106:根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差。
在本说明书中,为了确定当前动力学模型的预测误差,该无人车还需要基于时滞时长内无人车状态变化可以忽略的假设,根据所述历史时刻中指定的历史时刻的控制量以及该指定的历史时刻的真实状态作为输入,输入该动力学模型,将得到的预测结果作为当前时刻之前上一时刻的预测状态,以便基于上一时刻所述无人车的真实状态和上一时刻的预测状态确定动力学模型的预测误差。
具体的,该无人车可根据步骤S100确定各历史时刻中以及步骤S102用于输入预测神经网络模型控制量对应的历史时刻,确定输入预测神经网络模型的控制量对应的历史时刻之前最近的历史时刻,作为指定的历史时刻,之后确定该指定的历史时刻的控制量,以及该指定的历史时刻该无人车的真实状态,然后将确定出的指定的历史时刻的控制量以及真实状态作为输入,输入该动力学模型,确定该指定的历史时刻的下一时刻的该无人车的预测状态,并作为上一时刻的预测状态。由于基于时滞时长内无人车状态变化可以忽略的假设,因此可假设得到的指定的历史时刻的下一时刻的预测状态,与上一时刻的预测状态之间差异可以忽略,并将得到的预测结果作为上一时刻的预测状态。
之后,由于上一时刻的真实状态是已经确定的,因此该无人车可以根据上一时刻的真实状态和上一时刻的预测状态,确定该动力学模型的预测误差。并且,由于在本说明书中,该无人车的状态可以包括该无人车的坐标,因此确定出的上一时刻的预测状态和上一时刻的真实状态,至少包括了该无人能车上一时刻的坐标以及预测得到的上一时刻的坐标,该无人车可将该两个坐标之间的差值作为该动力学模型的预测误差。当然,由于真实状态是准确的,因此无人车也可基于真实状态包含的坐标,确定该预测状态包含的坐标与该真实状态包含的坐标方位上的差异以及距离上的差值,作为预测误差。
另外,在本说明书中,该无人车也可将历史时刻中指定的历史时刻的控制量以及指定的历史时刻的真实状态作为输入,输入同一动力学模型后,得到指定的历史时刻的下一时刻的预测状态,也就是步骤S102中输入预测神经网络模型中最早的历史时刻的预测状态。则也可根据输入预测神经网络模型中最早的历史时刻的真实状态,以及步骤S106得到该预测状态,确定该动力模型的预测误差。
当然,此时确定出的预测误差,是动力模型在指定的历史时刻的下一时刻的误差,因此也可假设动力学模型在时滞时长内的误差变化可以忽略,可将确定出的预测误差用于后续步骤。
S108:根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值。
在本说明书中,当确定出动力学模型的预测误差后,该无人车便可根据预测误差,对步骤S104得到的当前时刻无人车的预测状态进行调整,确定调整后的状态校正值。以便后续步骤根据状态校正值,以及规划的参考轨迹,确定当前时刻所述无人车的控制量。
具体的,如在步骤S106中所述的,该预测误差是以真实状态为基准,确定出的预测状态与真实状态之间的误差,并且,由于本说明书中无人车的状态至少包括无人车的坐标,因此该预测误差至少包括了坐标维度上的误差,可以包括方位上的误差和距离上的误差,则可根据预测误差对步骤S104得到的预测状态的包含的坐标进行调整,得到状态校正值。
图4为本说明书实施例提供的确定控制量的框架示意图。通过预测神经网络,得到该运动力学模型更准确的输入,以确定当前时刻的预测状态。而另一个动力学模型输出结果,则用于确定预测误差,然后再对当前时刻的预测状态进行误差校正,将误差校正后的结果用于最终确定无人车的控制量。
S110:根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
在本说明书中,当无人车确定出状态校正值之后,便可根据预先规划得到的待预测时段内无人车的参考轨迹,以及该当前时刻的状态校正值,确定无人车的控制量。以根据确定出的控制量,控制无人车行驶。
具体的,在本说明书中,该无人车可基于无人车k时刻的预测状态,与无人车k-1时刻的预测状态和无车在k-1时刻的控制量存在线性关系的假设,计算当前时刻的空指令。
……
并且,在本说明书中,由于假设时滞时长内状态变化可以忽略,因此存在,为确定出的无人车在k时刻动力学模型的预测误差,而预测误差为真实状态与预测状态确定的,即,为k时刻无人车的真实状态,为确定出的无人车在k时刻的动力学模型输出的预测状态。
于是,为了使无人车可以按照参考轨迹行驶,可确定目标函数:,其中,为表征从k时刻
开始待预测时段内控制无人车行驶的轨迹,即待预测时段内各时刻预测得到的该无人车的
预测状态,也就是。表征待预测
时段内无人车行驶的参考轨迹,即。因
此以参考轨迹与预测状态之间的差距最小为优化目标,而表征从k时刻开始待预测时
段内各时刻无人车的控制量。当然,控制量越小无人车行驶可更平稳。Q和R为预设的参数矩
阵,可根据需要设置,本申请不做限制。
并且,基于前述的关系式,可确定目标函数中的各时刻的预测状态,都可以通过当前时刻的预测状态以及各时刻的控制量表示,因此可将目标函数简化为仅包含待预测时段内各时刻无人车的控制量的目标函数,通过解该目标函数,确定待预测时段内各时刻无人车的控制量,并根据解中当前时刻的控制量,控制无人车行驶。当然,上述计算过程与MPC方法中的循环优化过程类似,因此对于数学计算部分的内容,本申请不再赘述。
基于图3所示的无人车控制方法,基于若干历史时刻的控制量,得到上一时刻的状态估计值,并确定在状态估计值下采取上一时刻控制量控制无人车后,动力学模型得到的当前时刻的预测状态,也就是通过模型预估时滞对无人车状态的影响后,无人车的状态,但是由于模型存在误差,因此又通过不同的历史时刻的控制量和真实状态,预测上一时刻的预测状态,再基于从该历史时刻到当前时刻无人车状态变化可忽略的假设,根据该历史时刻所述无人车的真实状态与上一时刻的预测状态,确定动力学模型的误差,最后根据误差校正后的当前时刻的预测状态和参考轨迹,确定沿参考轨迹像是所需各时刻的控制量,并从其中确定当前时刻的控制量,控制无人车行驶。充分考虑到了系统时滞带来的影响,以及运动模型在时滞情况下预测误差导致的精度问题,并进一步基于在时滞时间内无人车运动变化较小,动力学模型的误差相似的假设,根据预测得到的上一时刻的预测状态和真实状态值,确定预测误差,以得到更准确的状态校正值,使得基于状态校正值和预先规划的参考轨迹,确定出更准确的控制量,控制无人车行驶,提高了无人车控制的准确度,提高无人车行驶的安全性。
另外,在本说明书中该无人车可用于无人配送,本说明书提供的上述无人车控制方法具体可应用于使用无人车进行配送的领域中,当无人车进行配送时,通过该控制方法,控制无人车沿规划出的参考轨迹行驶,如,使用无人车进行快递、外卖等配送的场景。
在本说明书中,并不限制该无人车控制过程的主体,有移动功能的机器人在移动过程中,也可通过执行该无人车控制过程确定控制策略,或者具有无人驾驶功能的车辆,在实现无人驾驶功能时,也可通过执行该无人车控制过程进行运动状态的规划,或者,智能车辆在控制车辆运动状态时,也可通过该过程进行运动状态的规划,例如,利用车辆在使用自适应巡航控制(Adaptive Cruise Control,ACC)功能时,通过该运动状态规划过程控制车辆的运动状态,等等。也就是说,本说明书提供的无人车运动状态规划过程为:对自身运动状态可自主控制的设备,如何对运动状态进行规划的过程。因此,在本说明书中执行该运动状态规划过程的主体,既可以是无人车、也可以是机器人、智能车辆或者具有无人假设功能的车辆等,本说明书对此不做限制。
基于图3所示的无人车控制过程,本说明书实施例还对应提供无人车控制装置的结构示意图,如图5所示。
图5为本说明书实施例提供的无人车控制装置的结构示意图,所述装置包括:
确定模块200,确定各历史时刻的控制量;
第一预测模块202,将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值;
第二预测模块204,将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态;
误差确定模块206,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差;
校正模块208,根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值;
控制模块210,根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
可选地,所述确定模块200,根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量,根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长,确定当前时刻之前所述时滞时长内各历史时刻的控制量。
其中,所述确定模块200,根据预设的更新频率,判断当前时刻是否需要更新时滞时长,若是,则获取监测器监测到的所述无人车的执行器执行的动作,若否,则根据上一时刻采用的时滞时长,确定当前时刻之前各历史时刻的控制量。
可选地,所述第一预测模块202,按照时间顺序,将确定出的各历史时刻中上一时刻之前的各历史时刻的控制量,依次输入所述预测神经网络模型,得到上一时刻所述无人车的状态估计值。
可选地,所述误差确定模块206,根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量,根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长,确定所述时滞时长之前最近的最近一个历史时刻的控制量,作为所述各历史时刻之前最近一个历史时刻的控制量,确定所述时滞时长之前最近的最近一个历史时刻的所述无人车的真实状态,作为所述各历史时刻之前最近一个历史时刻的真实状态。
可选地,所述误差确定模块206,根据所述各历史时刻之前最近一个历史时刻的控制量以及真实状态,作为输入,输入所述动力学模型,确定所述各历史时刻中最早的历史时刻所述无人车的预测状态,作为上一时刻的预测状态,根据监测器监测到的所述各历史时刻之前最近一个历史时刻的真实状态与所述上一时刻的预测状态的差,确定所述动力学模型的预测误差。
可选地,所述预测状态,至少包括所述无人车的坐标。
可选地,所述控制量包括所述无人车的转向角度以及转向方向。
可选地,所述控制模块210,根据预先规划得到的待预测时段内无人车的参考轨迹,确定所述无人车在未来各时刻的参考位置,基于任一时刻所述无人车的真实状态为根据所述时刻的上一时刻的状态校正值和所述时刻的上一时刻的控制量确定的,根据当前时刻的状态校正值以及所述无人车在未来各时刻的参考位置,以各未来时刻的状态校正值与相应时刻的参考位置差值最小,且未来各时刻的控制量最小为优化目标函数,解算未来各时刻的控制量,根据解算得未来各时刻的控制量,确定当前时刻所述无人车的控制量。
本说明书实施例还提供了计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述无人车控制方法中的任一个。
基于图3提供的无人车控制过程,本说明书实施例还提出了图6所示的无人车的示意结构图。如图6,在硬件层面,该无人车包括处理器、内部总线、网络接口、内存以及非易失性存储器,处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述无人车控制方法中的任一个。当然,该无人车中还可包括实现无人车其他功能所需要的硬件。例如,无人车移动所需的移动装置、进行通信所需的通信装置、采集周围环境信息的电子设备等等。
当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (12)
1.一种无人车控制方法,其特征在于,包括:
确定各历史时刻的控制量;
将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值;
将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态;
根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差;
根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值;
根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
2.如权利要求1所述的方法,其特征在于,确定各历史时刻的控制量,具体包括:
根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量;
根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长;
确定当前时刻之前所述时滞时长内各历史时刻的控制量。
3.如权利要求2所述的方法,其特征在于,根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量之前,所述方法还包括:
根据预设的更新频率,判断当前时刻是否需要更新时滞时长;
若是,则获取监测器监测到的所述无人车的执行器执行的动作;
若否,则根据上一时刻采用的时滞时长,确定当前时刻之前各历史时刻的控制量。
4.如权利要求1所述的方法,其特征在于,将确定出的各控制量作为输入,输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值,具体包括:
按照时间顺序,将确定出的各历史时刻中上一时刻之前的各历史时刻的控制量,依次输入所述预测神经网络模型,得到上一时刻所述无人车的状态估计值。
5.如权利要求1所述的方法,其特征在于,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差之前,所述方法还包括:
根据监测器监测到的所述无人车的执行器执行的动作,以及各历史时刻向所述执行器发送的控制量,确定与当前所述执行的动作匹配的控制量;
根据所述匹配的控制量,确定当前时刻所述无人车的时滞时长;
确定所述时滞时长之前最近的最近一个历史时刻的控制量,作为所述各历史时刻之前最近一个历史时刻的控制量,确定所述时滞时长之前最近的最近一个历史时刻的所述无人车的真实状态,作为所述各历史时刻之前最近一个历史时刻的真实状态。
6.如权利要求5所述的方法,其特征在于,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差,具体包括:
根据所述各历史时刻之前最近一个历史时刻的控制量以及真实状态,作为输入,输入所述动力学模型,确定所述各历史时刻中最早的历史时刻所述无人车的预测状态,作为上一时刻的预测状态;
根据监测器监测到的所述各历史时刻之前最近一个历史时刻的真实状态与所述上一时刻的预测状态的差,确定所述动力学模型的预测误差。
7.如权利要求1~6任一所述的方法,其特征在于,所述预测状态至少包括所述无人车的坐标。
8.如权利要求1~6任一所述的方法,其特征在于,所述控制量包括所述无人车的转向角度以及转向方向。
9.如权利要求7所述的方法,其特征在于,根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,具体包括:
根据预先规划得到的待预测时段内无人车的参考轨迹,确定所述无人车在未来各时刻的参考位置;
基于任一时刻所述无人车的真实状态为根据所述时刻的上一时刻的状态校正值和所述时刻的上一时刻的控制量确定的,根据当前时刻的状态校正值以及所述无人车在未来各时刻的参考位置,以各未来时刻的状态校正值与相应时刻的参考位置差值最小,且未来各时刻的控制量最小为优化目标函数,解算未来各时刻的控制量;
根据解算得未来各时刻的控制量,确定当前时刻所述无人车的控制量。
10.一种无人车控制装置,其特征在于,包括:
确定模块,确定各历史时刻的控制量;
第一预测模块,将确定出的至少部分历史时刻的控制量作为输入,依次输入预先训练的预测神经网络模型,得到上一时刻所述无人车的状态估计值;
第二预测模块,将所述上一历史时刻的控制量以及所述状态估计值作为输入,输入预先训练的动力学模型,预测得到当前时刻所述无人车的预测状态;
误差确定模块,根据所述历史时刻中指定的历史时刻的控制量以及所述指定的历史时刻的真实状态作为输入,输入所述动力学模型,将得到的预测结果作为上一时刻的预测状态,并根据上一时刻所述无人车的真实状态与所述上一时刻的预测状态,确定所述动力学模型的预测误差;
校正模块,根据当前时刻所述无人车的预测状态以及所述预测误差,确定所述无人车当前时刻的状态校正值;
控制模块,根据预先规划得到的待预测时段内无人车的参考轨迹以及所述状态校正值,确定当前时刻所述无人车的控制量,并根据所述控制量控制所述无人车行驶。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-9任一所述的方法。
12.一种无人车,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1-9任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010975140.6A CN111930015B (zh) | 2020-09-16 | 2020-09-16 | 一种无人车控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010975140.6A CN111930015B (zh) | 2020-09-16 | 2020-09-16 | 一种无人车控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111930015A true CN111930015A (zh) | 2020-11-13 |
CN111930015B CN111930015B (zh) | 2021-06-04 |
Family
ID=73333829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010975140.6A Active CN111930015B (zh) | 2020-09-16 | 2020-09-16 | 一种无人车控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930015B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112346467A (zh) * | 2021-01-04 | 2021-02-09 | 北京三快在线科技有限公司 | 一种无人驾驶设备的控制方法及装置 |
CN113895461A (zh) * | 2021-11-17 | 2022-01-07 | 中国第一汽车股份有限公司 | 车辆横向控制方法、装置、车辆及介质 |
CN114115247A (zh) * | 2021-11-10 | 2022-03-01 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
CN114520777A (zh) * | 2021-12-27 | 2022-05-20 | 上海仙途智能科技有限公司 | 时滞辨识方法及装置、计算机可读存储介质、终端 |
WO2022156182A1 (zh) * | 2021-01-25 | 2022-07-28 | 魔门塔(苏州)科技有限公司 | 车辆动力学模型的构建及车辆状态信息预测方法、装置 |
CN115076019A (zh) * | 2022-06-24 | 2022-09-20 | 清华大学 | 一种用于波浪发电装置的控制方法、装置和电子设备 |
CN115195849A (zh) * | 2022-05-27 | 2022-10-18 | 新石器慧通(北京)科技有限公司 | 一种无人车远程控制方法和装置 |
CN115273561A (zh) * | 2022-07-25 | 2022-11-01 | 北京安达维尔航空设备有限公司 | 直升机前视告警方法、装置、设备和计算机可读存储介质 |
CN117908527A (zh) * | 2022-10-10 | 2024-04-19 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106950956A (zh) * | 2017-03-22 | 2017-07-14 | 合肥工业大学 | 融合运动学模型和行为认知模型的行车轨迹预测系统 |
US10254759B1 (en) * | 2017-09-14 | 2019-04-09 | Waymo Llc | Interactive autonomous vehicle agent |
CN110007298A (zh) * | 2018-01-04 | 2019-07-12 | 武汉科技大学 | 一种目标超前预测跟踪方法 |
CN110221611A (zh) * | 2019-06-11 | 2019-09-10 | 北京三快在线科技有限公司 | 一种轨迹跟踪控制方法、装置及无人驾驶车辆 |
CN110989577A (zh) * | 2019-11-15 | 2020-04-10 | 深圳先进技术研究院 | 自动驾驶决策方法及车辆的自动驾驶装置 |
CN111121777A (zh) * | 2019-11-26 | 2020-05-08 | 北京三快在线科技有限公司 | 无人驾驶设备轨迹规划方法、装置、电子设备和存储介质 |
CN111152796A (zh) * | 2020-04-07 | 2020-05-15 | 北京三快在线科技有限公司 | 一种车辆运动状态预测方法及装置 |
-
2020
- 2020-09-16 CN CN202010975140.6A patent/CN111930015B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106950956A (zh) * | 2017-03-22 | 2017-07-14 | 合肥工业大学 | 融合运动学模型和行为认知模型的行车轨迹预测系统 |
US10254759B1 (en) * | 2017-09-14 | 2019-04-09 | Waymo Llc | Interactive autonomous vehicle agent |
CN110007298A (zh) * | 2018-01-04 | 2019-07-12 | 武汉科技大学 | 一种目标超前预测跟踪方法 |
CN110221611A (zh) * | 2019-06-11 | 2019-09-10 | 北京三快在线科技有限公司 | 一种轨迹跟踪控制方法、装置及无人驾驶车辆 |
CN110989577A (zh) * | 2019-11-15 | 2020-04-10 | 深圳先进技术研究院 | 自动驾驶决策方法及车辆的自动驾驶装置 |
CN111121777A (zh) * | 2019-11-26 | 2020-05-08 | 北京三快在线科技有限公司 | 无人驾驶设备轨迹规划方法、装置、电子设备和存储介质 |
CN111152796A (zh) * | 2020-04-07 | 2020-05-15 | 北京三快在线科技有限公司 | 一种车辆运动状态预测方法及装置 |
Non-Patent Citations (2)
Title |
---|
刘凯 等: "高速无人驾驶车辆的操控稳定性研究", 《汽车工程》 * |
胡家铭 等: "基于模型预测控制的无人驾驶履带车辆轨迹跟踪方法研究", 《兵工学报》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112346467A (zh) * | 2021-01-04 | 2021-02-09 | 北京三快在线科技有限公司 | 一种无人驾驶设备的控制方法及装置 |
WO2022144010A1 (zh) * | 2021-01-04 | 2022-07-07 | 北京三快在线科技有限公司 | 无人驾驶设备的控制 |
WO2022156182A1 (zh) * | 2021-01-25 | 2022-07-28 | 魔门塔(苏州)科技有限公司 | 车辆动力学模型的构建及车辆状态信息预测方法、装置 |
CN114115247A (zh) * | 2021-11-10 | 2022-03-01 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
CN114115247B (zh) * | 2021-11-10 | 2024-03-26 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
CN113895461A (zh) * | 2021-11-17 | 2022-01-07 | 中国第一汽车股份有限公司 | 车辆横向控制方法、装置、车辆及介质 |
CN114520777B (zh) * | 2021-12-27 | 2023-12-26 | 上海仙途智能科技有限公司 | 时滞辨识方法及装置、计算机可读存储介质、终端 |
CN114520777A (zh) * | 2021-12-27 | 2022-05-20 | 上海仙途智能科技有限公司 | 时滞辨识方法及装置、计算机可读存储介质、终端 |
CN115195849A (zh) * | 2022-05-27 | 2022-10-18 | 新石器慧通(北京)科技有限公司 | 一种无人车远程控制方法和装置 |
CN115195849B (zh) * | 2022-05-27 | 2024-04-30 | 新石器慧通(北京)科技有限公司 | 一种无人车远程控制方法和装置 |
CN115076019A (zh) * | 2022-06-24 | 2022-09-20 | 清华大学 | 一种用于波浪发电装置的控制方法、装置和电子设备 |
CN115273561A (zh) * | 2022-07-25 | 2022-11-01 | 北京安达维尔航空设备有限公司 | 直升机前视告警方法、装置、设备和计算机可读存储介质 |
CN115273561B (zh) * | 2022-07-25 | 2024-05-10 | 北京安达维尔航空设备有限公司 | 直升机前视告警方法、装置、设备和计算机可读存储介质 |
CN117908527A (zh) * | 2022-10-10 | 2024-04-19 | 北京三快在线科技有限公司 | 一种无人设备控制方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111930015B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111930015B (zh) | 一种无人车控制方法及装置 | |
JP7345676B2 (ja) | 自動または半自動運転車両の適応制御 | |
US10012984B2 (en) | System and method for controlling autonomous vehicles | |
Tuchner et al. | Vehicle platoon formation using interpolating control: A laboratory experimental analysis | |
JP7334364B2 (ja) | 自動運転車または半自動運転車のアダプティブコントロール | |
CN112292646A (zh) | 车辆的控制系统、用于控制车辆的方法和非暂时性计算机可读存储器 | |
Heil et al. | Adaptive and efficient lane change path planning for automated vehicles | |
WO2017138664A1 (en) | Method for controlling motion of vehicle and control system of vehicle | |
CN110688920B (zh) | 一种无人驾驶控制方法、装置及服务器 | |
US11673584B2 (en) | Bayesian Global optimization-based parameter tuning for vehicle motion controllers | |
US20200363816A1 (en) | System and method for controlling autonomous vehicles | |
CN112180925B (zh) | Agv轨迹跟随方法、装置及处理设备 | |
CN111352384A (zh) | 用于控制自动化或自主运动机构的方法和分析评价单元 | |
CN112896191B (zh) | 轨迹处理方法、装置、电子设备和计算机可读介质 | |
CN112346467B (zh) | 一种无人驾驶设备的控制方法及装置 | |
Kim et al. | Vehicle path prediction using yaw acceleration for adaptive cruise control | |
CN115356991A (zh) | 基于运动状态优化的多目标运动融合控制方法和系统 | |
CN116700288A (zh) | 一种基于自适应模型预测控制的移动机器人局部轨迹规划方法及系统 | |
Vallon et al. | Data-driven strategies for hierarchical predictive control in unknown environments | |
CN113885514B (zh) | 基于模糊控制和几何追踪的agv路径跟踪方法及系统 | |
CN114779641A (zh) | 基于新航向误差定义的环境自适应mpc路径追踪控制方法 | |
JP7019885B2 (ja) | 車両制御値決定装置、車両制御値決定方法、およびプログラム | |
CN111045428B (zh) | 避障方法、移动机器人及计算机可读存储介质 | |
Farag et al. | MPC track follower for self-driving cars | |
JP6599817B2 (ja) | 演算装置、演算方法およびプログラム |
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 |