自动化学报  2017, Vol. 43 Issue (11): 1931-1940   PDF    
基于无模型自适应控制的无人驾驶汽车横向控制方法
田涛涛1, 侯忠生1, 刘世达1, 邓志东2     
1. 北京交通大学电子信息工程学院先进控制系统研究所 北京 100044;
2. 清华大学计算机系, 智能技术与系统国家重点实验室, 清华信息科学与技术国家实验室 (筹) 北京 100084
摘要: 提出了一种基于无模型自适应控制的无人驾驶汽车横向控制方案.首先,将无人驾驶汽车循迹跟踪控制问题转化成预瞄偏差角跟踪问题,然后基于无人驾驶汽车横向控制系统的动态线性化数据模型,设计出无模型自适应控制算法、伪梯度估计算法和伪梯度重置算法,进而实现了自主车辆的无人驾驶.该方法的实现仅用到无人驾驶汽车运行时的输入输出数据,避免了对无人驾驶汽车进行复杂机理建模的难题,对于复杂的无人驾驶汽车运行过程具有很好的自适应性,对不同的无人驾驶车辆具有较强的可移植性.该方案已实际应用于清华大学无人驾驶汽车实验平台,在北京市丰台区的实地测试实验、在江苏省常熟市高速路的测试以及2015年"中国智能车未来挑战赛"的现场应用验证了所提方案的有效性.
关键词: 无模型自适应控制     无人驾驶汽车     横向控制     预瞄偏差角    
Model-free Adaptive Control Based Lateral Control of Self-driving Car
TIAN Tao-Tao1, HOU Zhong-Sheng1, LIU Shi-Da1, DENG Zhi-Dong2     
1. Advanced Control Systems Laboratory, School of Electronic and Information Engineering, Beijing Jiaotong University, Beijing 100044;
2. Department of Computer Science, State Key Laboratory of Intelligent Technology and Systems, Tsinghua National Laboratory for Information Science and Technology, Tsinghua University, Beijing 100084
Manuscript received : September 5, 2016, accepted: January 5, 2017.
Foundation Item: Supported by National Natural Science Foundation of China (61120106009, 61433002, 91420106), Beijing Natural Science Foundation Joint Fund for Science and Technology Rail Transportation (W17E000020)
Author brief: TIAN Tao-Tao Master student at the Advanced Control Systems Laboratory, School of Electronic and Information Engineering, Beijing Jiaotong University. His research interest covers data-driven control and optimal strategy under the environment of big data;
LIU Shi-Da Ph. D. candidate at the Advanced Control Systems Laboratory, School of Electronic and Information Engineering, Beijing Jiaotong University. His research interest covers learning control, data-driven control, and complex industrial process;
DENG Zhi-Dong Professor at the Department of Computer Science, Tsinghua University. His research interest covers artificial intelligence, deep neural network, computational neuroscience, driverless car, and advanced robotics
Corresponding author. HOU Zhong-Sheng Professor at the Advanced Control Systems Laboratory, School of Electronic and Information Engineering, Beijing Jiaotong University. His research interest covers model free adaptive control, data-driven control, learning control, intelligent transportation system, and application of data mining in medical and traffic field. Corresponding author of this paper
Recommended by Associate Editor WEI Qing-Lai
Abstract: In this paper, a control scheme based on model free adaptive control is proposed for the lateral control problem of self-driving car. First, the trajectory tracking problem for self-driving car is converted into the stabilization problem concerning a preview-deviation-yaw. Then, the lateral control system of the self-driving car is converted into a virtual dynamical linearization data model via a novel dynamic linearization technique. After that, a model free adaptive control algorithm, and its corresponding pseudo gradient estimating algorithm and pseudo gradient resetting algorithm are designed, such that the automatic drive of the self-driving car can be realized. The implementation of the proposed method only utilizes the input and output data of the self-driving car, avoiding complex modeling of the self-driving car. Thus, it has good adaptability to complex operation processes of self-driving car and is also applicable to other self-driving cars. Furthermore, the proposed scheme is employed in the experimental platform of self-driving car developed by Tsinghua University. Finally, the effectiveness of the proposed method is verified via the field tests in Fengtai District, Beijing, the field tests in the freeway of Changshu, Jiangsu, and the field applications in "2015 Chinese Intelligent Car Future Challenge Competition".
Key words: Model-free adaptive control (MFAC)     self-driving car     lateral control     preview-deviation-yaw    

近年来, 无人驾驶汽车日渐成为汽车研究领域的热点[1-2].由于汽车是一个复杂的非线性系统, 且运行于不同的工况下, 因此, 无人驾驶汽车的循迹跟踪控制问题一直是学术界研究的重点和难点[3].

无人驾驶汽车循迹跟踪控制问题包括纵向控制和横向控制两个部分.纵向控制是指对车速的控制, 这类控制问题可以归结为对油门或刹车的控制[4]; 横向控制是指在不同车速和负载等条件下, 控制汽车转向使得汽车位置处于期望轨迹中心线处, 这类问题可以归结为对方向盘的控制[5-6].相比于纵向控制, 横向控制更为重要, 原因是横向控制直接决定循迹跟踪的性能, 是保障无人驾驶汽车安全和稳定的基础[5], 对控制算法要求较高, 本文仅就无人驾驶汽车横向控制问题进行研究.

针对无人驾驶汽车横向控制问题, 文献[6]基于汽车动力学模型设计出了状态反馈控制器, 且利用模糊增益规划(Fuzzy gain scheduling, FGS)调节控制器的输出增益, 并在TAIWAN $i$TS-1无人驾驶汽车平台上进行了验证; 文献[7]利用模型预测控制(Model predictive control, MPC)分别就汽车非线性模型和汽车时变线性模型设计了两类控制器, 并给出了仿真分析和真车实验结果; 文献[8]基于汽车运动学模型设计了参数随车速变化的比例积分微分(Proportional-integral-derivative, PID)控制器, 并将该算法应用于Babieca原型车中; 文献[9]利用PID控制器作内环较低精度控制器, 外环利用模糊控制器做高精度控制, 在实际的道路环境中进行了尝试.然而, 上述基于模型的方法需要满足相应的假设条件.例如, 侧向加速度小于0.4 g、车辆的纵向速度为常数、前轮转角直接作为输入等[6], 这些假设在实际的无人驾驶汽车运行过程中很难被满足.另外, 从理论上分析, 除了车辆本身的动力学非线性外, 车辆动力学行为与运行速度、道路以及其他天气等因素密切相关, 欲想全部精确建立汽车以及环境的动力学模型, 然后进行控制系统设计, 显然不是可行的方法[5].而采用模糊控制方法, 其隶属度函数的确定和专家经验都很难遍历所有工况下的情况, 难度大, 可应用性差[9].

在汽车运行的过程中, 会产生大量的输入输出(Input/output, I/O)数据, 这些I/O数据包含了车辆的动力学信息, 利用数据驱动的方式对无人驾驶汽车进行控制, 是目前一个新颖的方法.在数据驱动控制方面, 近些年一些典型的数据驱动控制方法相继提出并得到广泛的研究与应用, 包括虚拟参考反馈整定[10-11]、自适应动态规划[12-16]、无模型自适应控制[16-17]等.

无模型自适应控制(Model-free adaptive control, MFAC)是一种典型的在线数据驱动控制方法[16, 18], 其原理是在闭环系统的每一个动态工作点处建立一个等价的动态线性化数据模型, 然后基于此等价的虚拟数据模型设计控制器, 进而实现非线性系统的自适应控制[18].截至目前, MFAC已经得到了广泛的应用, 包括广域电力系统[19]、网络延时与丢包问题[20]、多自由度机器人外骨骼控制[21]、交直流微电网[22]以及自动泊车系统[23]等.理论和实践表明, MFAC结构简单、鲁棒性强、便于工程实现, 而且MFAC不使用模型的信息, 上述由于模型假设带来的不匹配问题可以有效地被避免.

本文提出了基于MFAC的无人驾驶汽车横向控制方案, 首先将横向控制问题转化为预瞄偏差角(汽车当前位置点和预瞄点的连线与汽车运行方向延长线形成的夹角)跟踪问题, 然后利用动态线性化技术将预瞄偏差角跟踪系统转化为等价的偏格式数据模型, 进而设计出无模型自适应控制算法、伪梯度估计算法和伪梯度重置算法.该方案仅利用无人驾驶汽车运行过程中的I/O数据, 不包含车辆的模型信息, 对于不同的车辆具有很强的可移植性.本文方案已经应用于清华大学"睿龙"号无人驾驶汽车平台, 北京市丰台区的实地测试以及江苏省常熟市高速环线的实验结果表明, MFAC对于无人驾驶汽车横向控制问题具有很明显的优势. "睿龙"号无人驾驶汽车应用MFAC预瞄偏差角跟踪方案参加了2015年第七届中国智能车未来挑战赛, 其控制算法在比赛全程中没有出现任何问题.

本文结构安排如下:第1节对无人驾驶汽车控制问题进行描述, 第2节提出基于预瞄偏差角跟踪系统的无人驾驶汽车横向控制方案, 第3节针对预瞄偏差角设计MFAC控制器, 第4节给出在实际的无人驾驶汽车平台和实际道路上的实验结果, 第5节得出结论.

1 无人驾驶控制问题描述 1.1 无人驾驶汽车平台简介

清华大学"睿龙"号无人驾驶汽车平台以及汽车各个设备的分布情况如图 1所示.该无人驾驶汽车平台由长安CS35自动挡汽车改装而成, 保留原车中车载汽车状态传感器, 并外接无人驾驶必需的定位定姿和环境感知传感器, 包括GPS天线及接收机、摄像头、64线激光雷达、4线激光雷达以及毫米波雷达等, 这些传感器相当于无人驾驶汽车的"眼睛"; 汽车后备箱处放置主控计算机以实现数据采集、分析以及对汽车进行闭环控制等工作, 相当于无人驾驶汽车的"大脑"; 汽车的执行机构(油门、刹车和转向)通过CAN总线与主控计算机通信, 执行机构相当于无人驾驶汽车的"四肢", CAN总线和千兆以太网通讯相当于无人驾驶汽车的"神经连接".其中, 无人驾驶汽车的定位定姿与环境感知采用多传感器信息融合技术, 例如利用差分GPS与惯性测量单元、里程计等多传感信息融合实现汽车位姿信息的获取[24]; 利用64线激光雷达(HDL)实现路缘的检测[25]; 利用黑白摄像头进行路面车道线图像信息的提取[6, 26], 利用彩色摄像头进行红绿灯以及交通标志的识别[27]等.定位定姿和环境感知设备的作用如表 1所示.

图 1 车载传感器分布图 Figure 1 Vehicle sensors distribution
表 1 定位定姿和环境感知设备的作用 Table 1 Navigation and environmental perception equipments
1.2 无人驾驶汽车的控制结构

无人驾驶控制问题的横向控制和纵向控制的控制结构如图 2所示.

图 2 控制系统结构图 Figure 2 Control system structure

在无人驾驶汽车运行过程中, 车载传感器不断将车辆状态信息数据传输给主控计算机, 主控计算机计算出车辆的期望速度和期望位姿, 传感器同时提供车辆当前速度以及当前位姿的信息.

根据车辆的期望速度和当前速度可以计算出油门和刹车的控制量, 即纵向控制; 根据当前车辆的位姿和期望的位姿可以计算出方向盘转角的控制量, 即横向控制.算出的控制量通过CAN总线驱动相应的执行机构, 以便达到循迹跟踪的目的.

纵向控制关注速度, 而横向控制关注方向, 在变化的车速、变化的负载以及变化的路况下控制汽车方向盘使得汽车跟踪上期望轨迹, 横向控制直接决定了无人驾驶汽车循迹跟踪的性能.

2 基于预瞄偏差角跟踪的无人驾驶汽车横向控制方案 2.1 基本概念

当汽车的运行速度较快时(例如在高速路上行驶时), 司机会盯着前方较远的一个点; 当汽车的速度较慢时(例如即将转弯时), 则会盯着前面较近的一个点.

无人驾驶参考这样的过程, 引入了预瞄点和预瞄距离的概念[8], 如图 3所示.

图 3 预瞄点与预瞄距离示意图 Figure 3 Preview point and preview distance profile

预瞄点指的是在期望轨迹上、汽车前方某一距离的点, 这段距离称为预瞄距离.需要注意的是预瞄距离是期望轨迹上距离汽车当前点最近的点与预瞄点的弧长距离, 并不是预瞄点和汽车当前点连线的长度.

预瞄距离与汽车运行速度之间的关系可以用经验公式(1)表示[8]

$ \begin{align} l(v) = \begin{cases} {l_{\min }},&v \le {v_{\min }}{\rm{ }}\\ av + {l_{\min }},&{v_{\min }} < v \le {v_{\max }}\\ {l_{\max }},&v > {v_{\max }} \end{cases} \end{align} $ (1)

其中, $l$是预瞄距离(m), $v$是当前汽车的速度(m/s), $l_{\min}$是最小预瞄距离(m), $l_{\max}$是最大的预瞄距离(m), $a$是常数.这里存在最大的预瞄距离, 是汽车设备感知能力具有限制的缘故, 而存在最小的预瞄距离, 则是为了在汽车速度为零时保证预瞄点在汽车前方位置处(汽车自身具有一定长度, 而汽车当前点的选取在汽车中心处).

在实际应用中, 基于预瞄的控制策略多被采用.然而因为预瞄点和预瞄距离的参与, 对无人驾驶汽车循迹跟踪问题进行数学建模的难度会增大, 这是由于车辆模型和预瞄控制策略需要同时被考虑进建模过程中.

无人驾驶汽车在驾驶过程中一些常用的概念如图 4(a)所示, 相关的符号含义见表 2.

图 4 横向控制问题示意图 Figure 4 Schematic diagram of lateral control problem
表 2 常用概念符号意义 Table 2 The meaning of common concepts and symbols

连接预瞄点与当前位置点, 假设汽车的运动方向与这条连线的夹角为$\theta$, 定义该夹角为预瞄偏差角(Preview-deviation-yaw)[28], 规定当预瞄点在汽车运行方向右前侧时的预瞄偏差角为正.

2.2 预瞄偏差角跟踪方案

图 4(a)可知, 当$LD \rightarrow 0$$AD \rightarrow 0$时, 无人驾驶汽车便能跟踪上期望轨迹.

图 4(a)中几何关系可知

$ \begin{equation} \theta = \arctan \frac{X}{l} -AD \end{equation} $ (2)

$\theta\rightarrow0$时, 由式(2)可知汽车的运行情况如图 4(b)所示, 由于汽车朝向预瞄点的方向运动, 所以有$X(k+1)<X(k)$, 所以序列$\{X(k)|X(k)\geq 0$, $k \in {\bf N}^+\}$的极限为0, 即$X(k)\rightarrow0$, 又由于预瞄距离$l(k)\neq0$, 故有$\arctan$$(X/l)\rightarrow0$, 则由式(2)可知$AD\rightarrow0$.

另一方面, 由图 4(a)可知

$ \begin{equation} \sin \theta = \frac{{LD}}{{len}} \end{equation} $ (3)

$\theta\rightarrow0$时, 由于两点距离$len\neq0$, 所以有$LD \rightarrow$ 0.

通过分析可知, 控制$\theta$使之趋于0为无人驾驶汽车循迹跟踪问题提供了解决思路.

为了便于工程实现, 对$\theta$跟踪系统的描述应采用离散化的表达形式.令$\theta(k)$表示当前时刻k的预瞄偏差角, $u(k)$表示当前时刻k的方向盘转角.由于无人驾驶汽车横向控制系统的非线性[7], 所以$\theta(k)$$u(k)$之间的关系也是非线性的.对于离散时间非线性系统的一般描述, 可以采用带外部输入的非线性自回归滑动平均(Nonlinear auto-regressive moving average with exogenous input, NARMAX)模型[29-31]来表示, 其表达为

$ \begin{align} \theta(k+1)=&\ f(\theta (k), \cdots, \theta(k-{k_\theta}), \nonumber\\ &\ u(k), \cdots, u(k-{k_u})) \end{align} $ (4)

其中, $f(\cdot)$: ${\bf R}^{k_{\theta}+k_{u}+2}\rightarrow{\bf R}$是一个未知的非线性函数, $k_{\theta}$$k_{u}$分别是两个未知的的参数.下文称式(4)表示的系统为预瞄偏差角跟踪系统.

对于无人驾驶横向控制问题, 就是求取合适的$u(k)$, 使得$\theta(k)$能够尽快、无超调地跟踪到0.预瞄偏差角的跟踪情况与汽车运行情况的对应关系如图 5所示.

图 5 预瞄偏差角跟踪情况与汽车运行情况图 Figure 5 Preview-deviation-yaw tracking condition and self-driving car operation condition

图 5可以看出, 对于预瞄偏差角跟踪系统的控制, 控制算法的设计至关重要.

3 预瞄偏差角跟踪系统控制器设计 3.1 问题描述

对于预瞄偏差角跟踪系统, 利用数学模型设计横向控制器的思路会遇到很大的阻碍, 这是因为汽车系统的数学模型难以建立, 循迹跟踪问题也很难用数学表达式精确描述, 即式(4)中的$f(\cdot)$很难有精确数学表达式.预瞄偏差角跟踪系统的阶数也是不确定的, 即式(4)中的$k_{\theta}$$k_{u}$是不确定的.

由此可知, 预瞄偏差角跟踪系统是一个难建模、复杂的非线性系统, 其固有的关于控制输入的非线性的特点使得这类系统的控制器设计变得非常困难, 利用线性化方法将此类系统转化到线性系统的框架中进行研究是处理此类一般非线性系统的常用做法[18].

本文采用无模型自适应控制算法(MFAC)作为无人驾驶汽车横向控制算法, 参考文献[18], 可以将预瞄偏差角系统(4)等价转化为基于I/O增量式的动态线性化数据模型, 并基于此数据模型设计控制器.

3.2 MFAC动态线性化

对于预瞄偏差角跟踪系统(4), 定义${\pmb U}_{L}(k)\in{\bf R}^{L}$为一个滑动时间窗口$[k-L+1, k]$内所有控制输入信号组成的向量, 如式(5).

$ \begin{equation} {{\pmb U}_L}(k) = {[u(k), \cdots, u(k-L + 1)]^{\rm T}} \end{equation} $ (5)

且满足当$k\leq0$时, 有${\pmb U}_{L}(k)={\bf 0}_{L}$, 其中$L$为控制输入线性化长度参数; ${\bf 0}_{L}$是维度为$L$的零向量.

对于预瞄偏差角跟踪系统, 很容易满足下面的假设:

假设1.   系统(4)输入输出可测可控.即对于一致有界的期望输出信号$\theta^*(k)$, 存在一致有界可行的输入信号$u(k)$, 使得在该输入信号驱动下, 系统的输出$\theta(k)$趋于期望信号$\theta^*(k)$.

假设2.   $f(\cdot)$关于第$(k_{\theta}+2)$个变量到第$(k_{\theta} + L+ 1)$个变量分别存在连续偏导数.

假设3.   系统(4)是广义Lipschitz的, 即满足对任意的$k_1\neq k_2$, $k_1, k_2\geq0$以及${\pmb U}_L(k_1)\neq {\pmb U}_L(k_2)$, 有

$ \begin{equation} |\theta ({k_1} + 1) -\theta ({k_2} + 1)| \le b\|{{\pmb U}_L}({k_1}) -{{\pmb U}_L}({k_2})\| \end{equation} $ (6)

其中, $\theta(k_i+1)=f(\theta(k_i), \cdots, \theta(k_i-k_{\theta}), u(k_i), \cdots$, $u(k_i-k_u))$, $i=1, 2$, $b>0$是一个常数.

$\Delta{\pmb U}_L(k)={\pmb U}_L(k)-{\pmb U}_L(k-1)$, 可以给出如下引理.

引理1[18]. 若非线性系统(4)满足假设1 ~ 3, 给定$L$, 那么当$\|\Delta{\pmb U}_L(k)\|\neq0$时, 一定存在一个称为伪梯度(Pseudo gradient, PG)的时变参数向量${\pmb \phi}_{p, L}(k) \in {\bf R}^L $, 使得系统(4)可以转化为如下数据模型

$ \begin{equation} \Delta \theta(k+1)={\pmb \phi}_{p, L}^{\rm T}(k)\Delta {{\pmb U}_L}(k) \end{equation} $ (7)

且对于任意时刻$k$, ${\pmb \phi}_{p, L}(k)=[\phi_1(k), \cdots, \phi_L(k)]^{\rm T}$是有界的.这种动态线性化称为基于偏格式的动态线性化(Partial form dynamic linearization, PFDL).其中, ${ \phi}_{p, L}(k)$下标中的$p$即PFDL首字母, $L$表示向量的长度.

根据引理1, 无人驾驶汽车预瞄偏差角跟踪系统动态线性化模型可以表示为

$ \begin{equation} \theta (k + 1) = \theta (k) + {\pmb \phi}_{p, L}^{\rm T}(k)\Delta {{\pmb U}_L}(k) \end{equation} $ (8)
3.3 控制器设计

考虑如下的控制输入准则函数

$ \begin{align} J(u(k)) = &\ {\left| {{\theta ^*}(k + 1) -\theta (k + 1)} \right|^2} +\nonumber\\ &\ \lambda {\left| {u(k) -u(k -1)} \right|^2} \end{align} $ (9)

其中, 第1项的引入是为了使得系统的输出与期望输出一致; 第2项是为了使方向盘不产生突变, 柔化执行器的处理过程, $\lambda>0$是一个权重因子.

将式(8)代入准则函数(9)中, 对$u(k)$求导, 并令其等于零, 得

$ \begin{align} u(k) = &\ u(k -1) + \nonumber\\[1mm] &\ \frac{{{\rho _1}{\phi _1}(k)({\theta ^*}(k + 1) -\theta (k))}}{{\lambda + |{\phi _1}(k){|^2}}} -\nonumber\\[1mm] &\ \frac{{{\phi _1}(k)\sum\limits_{i = 2}^L {{\rho _i}{\phi _i}(k)\Delta u(k -i + 1)} }}{{\lambda + |{\phi _1}(k){|^2}}} \end{align} $ (10)

其中, $\phi_i(k)$是时变参数向量${ \phi}_{p, L}(k)$的第$i$个元素, 步长因子$\rho_i\in(0, 1]$, $i=1, 2, \cdots, L $的引入是为了使控制算法设计具有更大的灵活性.

由式(10)可知, 为实现控制算法, 需要知道PG的值, 然而由于预瞄偏差角跟踪系统的模型未知, 且PG是时变参数, 其精确的真实值很难获取, 需要利用系统输入输出数据对其进行估计.

考虑如下的PG估计准则函数

$ \begin{align} J({{\pmb \phi} _{p, L}}(k)) = &\ |\theta (k) -\theta (k -1) -\nonumber\\ &\ {\pmb \phi} _{p, L}^{\rm T}(k)\Delta {{\pmb U}_L}(k -1){|^2} +\nonumber\\ &\ \mu \|{{\pmb \phi} _{p, L}}(k) -{\hat {\pmb \phi} _{p, L}}(k -1)\|{^2} \end{align} $ (11)

其中, $\mu>0$是权重因子.

对式(11)关于${\pmb \phi}_{p, L}(k)$求极值, 得到PG的估计算法为

$ \begin{align} {\hat {\pmb \phi} _{p, L}}(k) = &\ {\hat {\pmb \phi} _{p, L}}(k -1) +\notag\\[1mm] &\ \frac{{\eta \Delta {{\pmb U}_L}(k -1)(\theta (k) -\theta (k -1))}}{{\mu + \|\Delta {{\pmb U}_L}(k -1)|{|^2}}} -\notag\\[1mm] &\ \frac{{\eta \Delta {{\pmb U}_L}(k -1)({{\hat {\pmb \phi} }^{\rm T}}_{p, L}(k -1)\Delta {{\pmb U}_L}(k -1))}}{{\mu + \|\Delta {{\pmb U}_L}(k -1)|{|^2}}} \end{align} $ (12)

其中, 步长因子$\eta\in(0, 2]$是为了使控制算法设计具有更大的灵活性; $\hat { \phi}_{p, L}(k)$为未知PG ${\pmb \phi}_{p, L}(k)$的估计值.

为了使PG估计算法具有更强的跟踪时变参数的能力, 并更好地适应无人驾驶实际情况, 需要引入重置算法如下

$ \begin{equation} {\hat {\pmb\phi} _{p, L}}(k) = {\hat {\pmb\phi} _{p, L}}(1) \end{equation} $ (13)

如果$\|\hat {\pmb \phi}_{p, L}(k)\|\leq \varepsilon$, 或$\|\Delta{\pmb U}_L(k-1)\|\leq\varepsilon$, 或sign$(\hat \phi_1(k))\neq {\rm sign}(\hat\phi_1(1))$, 其中$\hat{\pmb \phi}_{p, L}(1)是\hat{\pmb \phi}_{p, L}(k)$的初始值, $\varepsilon$是一个小的正数.

式(10)、式(12)和式(13)即为所设计的控制算法, 文献[18]中有该控制算法稳定性的严格数学证明.

4 实验分析

本文分别进行无人驾驶汽车的低速实验和高速实验.

对于低速实验, 文献[9]设定的纵向速度为8 ~ 24 km/h, 为了进行对比分析, 本文设定纵向速度为15 km/h, 实验场地以及轨迹如图 6所示, 本文先利用PID控制方法进行跟踪实验, 然后利用第3.3节中设计的MFAC控制算法进行跟踪实验, 并比较两种算法对预瞄偏差角跟踪系统的跟踪效果以及它们针对无人驾驶汽车循迹跟踪控制问题的控制效果, 并与文献[8-9]的结果进行对比.

图 6 低速实验场地图 Figure 6 Low speed experimental site

对于高速实验, 文献[6]设定的纵向速度为60 ~ 80 km/h, 出于安全考虑, 本文设定纵向速度为60 km/h, 在图 7所示的常熟三环高架桥进行实验.本文对低速实验中的MFAC控制算法的参数不做任何修改, 直接进行高速实验, 分析控制效果, 并与文献[6-7]的结果进行比较.

图 7 高速公路实验场地图 Figure 7 Highway experimental site
4.1 设备连接关系及调试软件框架

无人驾驶汽车各个设备的连接关系以及调试软件框架如图 8所示.外加的定位和感知传感器数据通过以太网传输给主控计算机, 车速和踏板状态等原车自带传感器数据通过CAN总线传入主控计算机, 本文从交换机接入外部调试计算机, 编写控制算法调试软件, 通过TCP/IP协议直接对无人驾驶汽车进行控制.

图 8 设备连接关系及调试软件框架图 Figure 8 Equipment connection and debugging software framework

整个系统的控制周期为100 ms, 调试计算机在一个控制周期内需要完成计算控制量、绘制图形以及保存数据等工作.

外部调试计算机可以获取的数据如表 3所示.

表 3 汽车状态数据符号及意义 Table 3 Symbols and meanings of self-driving car0s state data

调试计算机向主控计算机发送的内容如下:

1) 计算出的方向盘的转角;

2) 计算出的油门和刹车的开度(两者互斥, 用同一变量表示, 该变量为正表示油门输入, 为负则表示刹车输入).

当主控计算机(客户端)和调试计算机(服务器端)握手成功后即开始循环控制, 客户端在每个控制周期内向服务器端传输汽车的状态信息, 服务器端则根据相应的算法计算出控制量并传回给客户端, 客户端通过CAN总线将计算出的控制量作用于执行机构(油门、刹车和方向盘), 进而实现闭环控制.

4.2 横向控制实验分析

实验平台采用式(1)的预瞄距离表达式, 参数分别是$l_{\min}=4$, $l_{\max}=30$, $v_{\min}=0$, $v_{\max}=26$, $a =$ 1.

在低速实验中, 对于无人驾驶汽车横向控制问题的分别利用增量式PID方法和MFAC方案进行对比实验, 其中PID控制器如式(14)所示:

$ \begin{align} du(k) = &\ {K_p}(e(k) -e(k -1)) + {K_i}e(k) +\notag\\ &\ {K_d}(e(k) -2e(k -1) + e(k))\notag\\ u(k) = &\ u(k -1) + du(k) \end{align} $ (14)

用Z-N法辅助以及大量的实验分析得到PID的最佳参数为$K_p=500$, $K_i=15$, $K_d=30$.

对于MFAC方案, 式(10)、式(12)和式(13)中的控制输入线性化长度参数、步长因子、权重因子和PG估计值的初值分别设定为$L=3$; $\rho_1=\rho_2 = \rho_3=1$; $\eta=1$; $\lambda=22$; $\mu=1$; $\hat{\pmb \phi}_{p, L}(1)= [0.5$ $0.5 0.5]^{\rm T}$; $\varepsilon$设为$10^{-5}$; 系统延迟时间为3.7 s.

为了比较两种控制算法对于预瞄偏差角的跟踪效果, 参考文献[9], 定义均方根误差指标为

$ \begin{equation} {\rm RMSE}(\cdot) = \sqrt {\frac{1}{N}\sum\limits_{n = 1}^N {|{l_n}{|^2}} } \end{equation} $ (15)

其中, $l_n$是第$n$个采样时刻的当前点与参考轨迹的距离, $N$是总采样点数.

两种算法的循迹跟踪效果、预瞄偏差角的跟踪效果和轨迹跟踪误差绝对值分别如图 9~11所示.两种控制算法的性能对比如表 4所示.

图 9 两种控制方法的跟踪效果对比图 Figure 9 Tracking effect comparison between two control methods
图 10 预瞄偏差角跟踪效果对比图 Figure 10 Preview-deviation-yaw tracking effect comparison
图 11 跟踪误差绝对值对比图 Figure 11 Absolute value of tracking error comparison
表 4 两种控制算法性能对比列表 Table 4 The performance of two control algorithms

图 9~11可以看出, PID方法在直线和小曲率转弯时的跟踪效果较好, 但是PID方法的自适应性不强, 很难同时适应直线和转弯的路况, 对于曲率比较大的转弯(例如图中的直角转弯), 不能很好地跟踪期望轨迹, 最大的转弯误差为1.5 m左右.

另一方面, 由于MFAC算法具有自适应性, 在直线、小曲率转弯和大曲率转弯都能很好地适应系统的变化, 故跟踪效果较好, 最大的转弯误差为0.4 m左右.

另外, 文献[8]中提出的控制算法在纵向速度为10 km/h和20 km/h时的建立时间分别是20 s和22 s; 文献[9]中提出的控制算法在纵向速度为12 km/h和16 km/h时的跟踪误差均方根分别为0.774和0.716.本文提出的MFAC算法在低速实验中的建立时间为5 s, 在纵向速度为15 km/h时的跟踪误差均方根为0.3320.

对于高速实验, 低速实验中MFAC控制算法参数不做任何修改, 设定纵向速度为60 km/h.跟踪效果如图 12所示.

图 12 高速跟踪轨迹图 Figure 12 Highway trajectory tracking

参考文献[6], 截取其中耗时100 s的路段, 本文截取路段为图 7$AB$段.该路段的跟踪误差绝对值以及预瞄偏差角的跟踪情况如图 13所示.

图 13 高速公路轨迹跟踪性能 Figure 13 Performance of highway trajectory tracking

$AB$段的跟踪误差的均方根为0.0738, 最大跟踪误差绝对值为0.1824 m; 预瞄偏差角的均方根为0.0025, 最大绝对值为0.0068 rad.文献[7]所设计的控制器在纵向车速为19 m/s (68.4 km/h)时的跟踪误差均方根为0.0751.文献[6]中实验路段上车速由80 km/h变为60 km/h, 又变回80 km/h, 整个路段的最大误差约为0.5 m.

通过图 9~13以及表 4的实验数据分析, 以及通过与相关文献的对比可以看出, 不论低速实验还是高速公路的实验, 针对无人驾驶汽车横向控制问题, 本文提出的基于MFAC的预瞄偏差角跟踪方案都具有明显的优势.

本文提出的控制算法利用C++语言编程实现, 矩阵和向量全部转化成简单的四则运算进行处理, 没有借助于任何专门的矩阵库或最优化库(文献[7]的算法实现需要借助用NPSOL软件包), 对于不同无人驾驶汽车平台具有很强的可移植性.

清华大学"睿龙"号无人驾驶汽车使用本文提出的预瞄偏差角跟踪方案, 并利用MFAC算法做核心控制算法, 参加第七届中国智能车未来挑战赛, 如图 14所示.该赛程全程约13.5公里, 途经典型城郊、城区、快速道路、居民小区以及越野路面等真实交通环境.在道路直行、直角转弯、U形转弯($180^{\circ}$转弯)等复杂路况的考验下, 本文设计的算法都令人满意地完成了指定任务, 没有出现任何故障.

图 14 2015年“中国智能车未来挑战赛”部分项目 Figure 14 Several competition items at "2015 Chinese Intelligent Car Future Challenge"
5 结论

本文针对无人驾驶汽车横向控制问题, 将无人驾驶汽车循迹跟踪控制问题转化成预瞄偏差角跟踪问题, 然后基于无人驾驶汽车横向控制系统的动态线性化数据模型, 设计出无模型自适应控制算法、伪梯度估计算法和伪梯度重置算法, 相比于传统的控制方案, 该方案优点如下:

1) 避免复杂的无人驾驶汽车机理建模.无人驾驶汽车模型难以建立, 基于预瞄的控制策略也很难进行精确的数学描述, 本文设计的基于MFAC的预瞄偏差角跟踪控制方案不使用汽车的数学模型, 避免了汽车建模带来的困难.

2) 被控对象物理意义明确, 方便调试.本文将无人驾驶汽车控制问题抽象为预瞄偏差角的跟踪问题, 将原问题中ADLD两个控制对象转化成预瞄偏差角一个控制对象, 简化了原问题的求解.

3) 控制算法具有很好的自适应性及鲁棒性.从实验的分析中可以看出, 不论是低速路段还是高速路段, 不论是直线还是转弯, 在对控制器参数不做任何修改的情况下, MFAC控制器都能适应系统的变化. MFAC的稳定性在理论上有严格的数学证明作为保障.

4) 可移植性很强, 适用于不同的无人驾驶汽车平台.本文使用C++语言编程, 不使用专门的矩阵库或最优化库, 非常便于向不同无人驾驶汽车平台进行移植.

5) 易于工程实现.本文使用的控制方案仅利用无人驾驶汽车运行过程中的预瞄偏差角和方向盘转角数据, 这些数据对于基于预瞄控制策略的无人驾驶汽车平台是很容易获取的.

本文基于该控制方案编写了调试计算机软件, 将该方案应用于真实的无人驾驶汽车平台.本文通过真实的无人驾驶平台在不同的实验场地分别进行低速实验和高速实验.在低速实验中, 将MFAC控制算法与经典PID控制算法进行对比, 与相关参考文献的工作进行比较; 对于高速实验, 截取其中100 s路段与相关文献的工作进行了比较.从对比实验的结果中可以看出, 对于无人驾驶汽车横向控制, 基于MFAC的预瞄偏差角跟踪方法具有很明显的优势.

本文提出的控制算法应用于清华大学"睿龙"号无人驾驶汽车平台并参与了第七届"中国智能车未来挑战赛", 整场比赛控制算法没有出现任何问题.

参考文献
1
Chen Hong, Gong Xun, Hu Yun-Feng, Liu Qi-Fang, Gao Bing-Zhao, Guo Hong-Yan. Automotive control:the state of the art and perspective. Acta Automatica Sinica, 2013, 39(4): 322-346.
( 陈虹, 宫洵, 胡云峰, 刘奇芳, 高炳钊, 郭洪艳. 汽车控制的研究现状与展望. 自动化学报, 2013, 39(4): 322-346.)
2
Jo K, Kim J, Kim D, Jang C, Sunwoo M. Development of autonomous car, Part Ⅰ:distributed system architecture and development process. IEEE Transactions on Industrial Electronics, 2014, 61(12): 7131-7140. DOI:10.1109/TIE.2014.2321342
3
Guo Jing-Hua, Luo Yu-Gong, Li Ke-Qiang. Cooperative and reconfigurable lateral and longitudinal control of intelligent electric vehicles. Control Theory and Applications, 2014, 31(9): 1238-1244.
( 郭景华, 罗禹贡, 李克强. 智能电动车辆横纵向协调与重构控制. 控制理论与应用, 2014, 31(9): 1238-1244.)
4
Yanakiev D, Kanellakopoulos I. Longitudinal control of automated CHVs with significant actuator delays. IEEE Transactions on Vehicular Technology, 2001, 50(5): 1289-1297. DOI:10.1109/25.950330
5
Xia Y Q, Pu F, Li S F, Gao Y. Lateral path tracking control of autonomous land vehicle based on ADRC and differential flatness. IEEE Transactions on Industrial Electronics, 2016, 63(5): 3091-3099. DOI:10.1109/TIE.2016.2531021
6
Wu S J, Chiang H H, Perng J W, Chen C J, Wu B F, Lee T T. The heterogeneous systems integration design and implementation for lane keeping on a vehicle. IEEE Transactions on Intelligent Transportation Systems, 2008, 9(2): 246-263. DOI:10.1109/TITS.2008.922874
7
Falcone P, Borrelli F, Asgari J, Tseng H E, Hrovat D. Predictive active steering control for autonomous vehicle systems. IEEE Transactions on Control Systems Technology, 2007, 15(3): 566-580. DOI:10.1109/TCST.2007.894653
8
Sotelo M A. Lateral control strategy for autonomous steering of Ackerman-like vehicles. Robotics and Autonomous Systems, 2003, 45(3-4): 223-233. DOI:10.1016/j.robot.2003.09.002
9
Pérez J, Milanés V, Onieva E. Cascade architecture for lateral control in autonomous vehicles. IEEE Transactions on Intelligent Transportation Systems, 2011, 12(1): 73-82. DOI:10.1109/TITS.2010.2060722
10
Guardabassi G O, Savaresi S M. Virtual reference direct design method:an off-line approach to data-based control system design. IEEE Transactions on Automatic Control, 2000, 45(5): 954-959. DOI:10.1109/9.855559
11
Campi M C, Lecchini A, Savaresi S M. Virtual reference feedback tuning:a direct method for the design of feedback controllers. Automatica, 2002, 38(8): 1337-1346. DOI:10.1016/S0005-1098(02)00032-8
12
Zhang Ji-Lie, Zhang Hua-Guang, Luo Yan-Hong, Liang Hong-Jing. Nearly optimal control scheme using adaptive dynamic programming based on generalized fuzzy hyperbolic model. Acta Automatica Sinica, 2013, 39(2): 142-149.
( 张吉烈, 张化光, 罗艳红, 梁洪晶. 基于广义模糊双曲模型的自适应动态规划最优控制设计. 自动化学报, 2013, 39(2): 142-149.)
13
Zhang J L, Zhang H G, Liu Z W, Wang Y C. Model-free optimal controller design for continuous-time nonlinear systems by adaptive dynamic programming based on a precompensator. ISA Transactions, 2015, 57: 63-70. DOI:10.1016/j.isatra.2014.08.018
14
Wei Q L, Liu D R, Yang X. Infinite horizon self-learning optimal control of nonaffine discrete-time nonlinear systems. IEEE Transactions on Neural Networks and Learning Systems, 2015, 26(4): 866-879. DOI:10.1109/TNNLS.2015.2401334
15
Wei Q L, Liu D R, Lin H Q. Value iteration adaptive dynamic programming for optimal control of discrete-time nonlinear systems. IEEE Transactions on Cybernetics, 2016, 46(3): 840-853. DOI:10.1109/TCYB.2015.2492242
16
Hou Zhong-Sheng, Xu Jian-Xin. On data-driven control theory:the state of the art and perspective. Acta Automatica Sinica, 2009, 35(6): 650-667.
( 侯忠生, 许建新. 数据驱动控制理论及方法的回顾和展望. 自动化学报, 2009, 35(6): 650-667.)
17
Xu J X, Hou Z S. Notes on data-driven system approaches. Acta Automatica Sinica, 2009, 35(6): 668-675.
18
Hou Z S, Jin S T. Model Free Adaptive Control:Theory and Applications. Boca Raton, USA: CRC Press, 2014.
19
Lu C, Zhao Y, Men K, Tu L, Han Y D. Wide-area power system stabiliser based on model-free adaptive control. IET Control Theory and Applications, 2015, 9(13): 1996-2007. DOI:10.1049/iet-cta.2014.1289
20
Pang Z H, Liu G P, Zhou D H, Sun D H. Data-based predictive control for networked nonlinear systems with network-induced delay and packet dropout. IEEE Transactions on Industrial Electronics, 2016, 63(2): 1249-1257. DOI:10.1109/TIE.2015.2497206
21
Wang X F, Li X, Wang J H, Fang X K, Zhu X F. Data-driven model-free adaptive sliding mode control for the multi degree-of-freedom robotic exoskeleton. Information Sciences, 2016, 327: 246-257. DOI:10.1016/j.ins.2015.08.025
22
Zhang H G, Zhou J G, Sun Q Y, Guerrero J M, Ma D Z. Data-driven control for interlinked AC/DC microgrids via model-free adaptive control and dual-droop control. IEEE Transactions on Smart Grid, 2015. DOI:10.1109/TSG.2015.2500269
23
Hou Zhong-Sheng, Dong Hang-Rui, Jin Shang-Tai. Model-free adaptive control with coordinates compensation for automatic car parking systems. Acta Automatica Sinica, 2015, 41(4): 823-831.
( 侯忠生, 董航瑞, 金尚泰. 基于坐标补偿的自动泊车系统无模型自适应控制. 自动化学报, 2015, 41(4): 823-831.)
24
Su K F, Deng Z D, Huang Z. Novel SLAM algorithm for UGVs based on unscented Kalman filtering. In:Proceedings of the 2012 IEEE International Conference on Computer Science and Automation Engineering (CSAE). Zhangjiajie, China:IEEE, 2012. 63-67 https://www.mendeley.com/research-papers/novel-slam-algorithm-ugvs-based-unscented-kalman-filtering/
25
Yao W T, Deng Z D, Zhou L P. Road curb detection using 3D lidar and integral laser points for intelligent vehicles. In:Proceedings of the Joint 6th International Conference on Soft Computing and Intelligent Systems (SCIS) and 13th International Symposium on Advanced Intelligent Systems (ISIS). Kobe, Japan:IEEE, 2012. 100-105 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6505310
26
Yao W T, Deng Z D. Robust real-time lane marking detection for intelligent vehicles in urban environment. Advances in Automation and Robotics. Berlin Heidelberg, Germany:Springer-Verlag, 2012. 421-428
27
Møgelmose A, Trivedi M M, Moeslund T B. Vision-based traffic sign detection and analysis for intelligent driver assistance systems:perspectives and survey. IEEE Transactions on Intelligent Transportation Systems, 2012, 13(4): 1484-1497. DOI:10.1109/TITS.2012.2209421
28
Ungoren A Y, Peng H. An adaptive lateral preview driver model. Vehicle System Dynamics, 2005, 43(4): 245-259. DOI:10.1080/00423110412331290419
29
Sales K R, Billings S A. Self-tuning control of non-linear ARMAX models. International Journal of Control, 1990, 51(4): 753-769. DOI:10.1080/00207179008934096
30
Pröll T, Karim M N. Real-time design of an adaptive nonlinear predictive controller. International Journal of Control, 1994, 59(3): 863-889. DOI:10.1080/00207179408923108
31
Chen S, Billings S A. Representations of non-linear systems:the NARMAX model. International Journal of Control, 1989, 49(3): 1013-1032. DOI:10.1080/00207178908559683