许倬作者

使用平行的属性网络模块化自动驾驶中的控制策略网络

作者简介:许倬,UC Berkeley博士在读,研究方向包括机器学习、增强学习、控制理论及其在机器人和自动驾驶等领域的应用。

目前神经网络控制策略在机器人和自动驾驶的领域中都被广泛探索和应用,因为这些使用模仿学习和增强学习等方法所训练的策略网络相比于传统的控制方法具有相当多的优势。首先,神经网络可以表示非常复杂的模型;其次,多种驾驶场景和模式可以同时、全面地影响策略网络的训练;此外,相比于线上优化的方法,策略网络的执行往往更快。但是,策略网络的实际应用收到一系列限制,其中一个非常重要的问题则是训练和知识迁移的困难性。

以以下的一个驾驶案例为例(见下图),假设我们对于第一个驶向既定目标地的任务训练了一个输入维度为10维的策略网络。假设我们新增添了一个躲避障碍物的属性,而这个属性新增添了5维的信息输入,那么我们需要新训练一个15维输入的神经网络。而由于我们对于神经网络的内部运转的无知性,尽管这两个任务非常相似,我们也无法复用任何已有知识而只能完全重新训练新的策略网络。同理,假设我们新增添一个限速的属性,而它又带来了新的5维输入,我们又不得不重新训练一个新策略网络

图1. 三个典型的类似的驾驶任务,但是对于他们的策略网络(非层级结构神经网络),没有知识可以被复用,因此每个新任务需要重新训练一个新的策略网络

因此我们的工作目标是建立起一套依据任务属性的策略网络模块化系统,从而达到对于不同的驾驶属性,如车道保持,障碍物躲避和交通规则,每一个属性模块分别给出相关指示,而这些指示共同给出一个整体的驾驶指令。如下图所示车道保持模块首先吸取车道相关信息,并且给出相应的驾驶建议;障碍躲避模块吸收障碍物信息,交通规则模块吸收交通规则相关的信息,它们都给出和相应属性相关的驾驶要求。最后,整个属性网络整合所有属性模块的要求,给出最终的驾驶指令,亦即策略网络的输出。

图2. 平行的属性网络的各模块的结构示意图我们提出的平行属性网络目标即为实现这一功能。这种层级结构的策略网络用一个独立的神经网络来充当此前描述的属性模块,该神经网络的输入为该属性相关的信息,而输出特定的驾驶要求。为了解释不同属性网络的输出,我们首先把各个属性分为两类,一类是基础的车道保持属性,另一类是附加的属性,如避障、遵守交通规则等。对于基础的车道保持属性,相应的属性模块充当一个纯车道保持策略网络,输出一个当前时刻的驾驶命令,如下图红色向量所示。而对于其他的附加属性,相应的属性模块则输出一个在驾驶命令空间里的属性集,这个属性集被定义为,如果驾驶命令属于该属性集,则这一驾驶属性可以被满足,对于某两个属性,下图中的蓝色和黄色椭圆内的空间表示了这两个属性集。最后,平行属性网络执行一个投影,将红色向量指代的最初的指令向量投影到所有属性集的交集中得到最终的指令,亦即图中的绿色向量,即求得距离原指令最近的满足所有属性的命令。

图3. 平行属性网络的内部运行方式我们进行了详尽的仿真与实车实验验证了所提出的方法的有效性和优越性。在第一组实验的训练中,我们使用了线性属性集假设,并且使用了增强学习和模仿学习的方法训练了各个属性网络,并且将各个属性网络组合起来作为策略网络去控制无人车执行了很多未经训练的驾驶任务。我们主要考察了查车道保持、避障、遵守红绿灯和限速等常见驾驶属性,下图展示了若干未经直接训练,而是直接通过属性模块组合而成的策略网络执行相关任务时的驾驶行为示意图。我们的实验证明了:(1)使用模块化方法,高维的驾驶任务可以被降级成很多低维的属性,从而更容易训练;(2)平行属性网络可以动态处理不同任务造成的不同维度的网络输入;(3)对于一些未被训练的任务,通过组合以训练的属性模块,我们可以得令人满意的策略网络

图4. 平行属性网络作为策略网络控制无人车车道保持同时服从红绿灯

图5. 平行属性网络作为策略网络控制无人车车道保持同时服从限z

图6. 平行属性网络作为策略网络控制无人车躲避障碍物同时服从红绿灯和限速理论上,各个属性模块的训练可以使用增强学习和模仿学习,并且对于模仿学习,训练集可以来自于人类标注或者理论计算结果。我们在实验中比较了增强学习、模仿学习、以及用于生成模仿学习训练集的专家执行者的表现,如下图所示。这一实验说明,增强学习可以得到比模仿学习更好的效果,这也是本方法的突出优势之一。

图7. 增强学习、模仿学习training log以及生成模仿学习数据集的专家执行者的表现对比最后,我们还进行了实车实验,验证了我们的方法可以实时地控制无人车执行驾驶任务。实车实验中我们使用平行属性网络作为控制策略在仿真空间中生成一系列参考轨迹,再使用控制器控制无人车沿着轨迹形势,这一部分工作主要整理发表在[2]文中。实验表明,使用我们的平行属性网络作为路径规划单元的控制系统可以控制无人车实时执行变道避障任务,下图主要定性展示展示无人车在执行变道避障时的行为以及车载监控视角的表现。

  图8. 变道避障实车实验的现场照片以及车内监控视角示意图

具体方法及更详尽的分析请参考论文

[1] Zhuo Xu, Haonan Chang, Chen Tang, Changliu Liu, and Masayoshi Tomizuka, “Toward Modularization of Neural Network Autonomous Driving Policy Using Parallel Attribute Networks”in IEEE Intelligent Vehicles Symposium (IV), June. 2019

[2] Chen Tang*, Zhuo Xu*, and M. Tomizuka, “Disturbance Observer based Tracking Controller for Neural Network Driving Policy Transfer”, to appear in IEEE Transactions on Intelligent Transportation Systems in 2019.

ControlPlusAI
ControlPlusAI

分享机器人控制和AI领域里的一些知识和感想,偏学术。由来自UC Berkeley, Stanford, CMU的研究者们原创撰稿。

理论自动驾驶
相关数据
机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

控制理论技术

控制理论是工程学与数学的跨领域分支,主要处理在有输入信号的动力系统的行为。系统的外部输入称为“参考值”,系统中的一个或多个变数需随着参考值变化,控制器处理系统的输入,使系统输出得到预期的效果。 控制理论一般的目的是借由控制器的动作让系统稳定,也就是系统维持在设定值,而且不会在设定值附近晃动。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

策略网络技术

在强化学习中,策略网络指一组相对稳定的关系,这些关系具有非等级和相互依赖的性质,将各个行为者(actor)联系起来。

路径规划技术

路径规划是运动规划的主要研究内容之一。运动规划由路径规划和轨迹规划组成,连接起点位置和终点位置的序列点或曲线被称为路径,构成路径的策略则被称为路径规划。路径规划在很多领域都具有广泛的应用,如机器人的自主无碰行动;无人机的避障突防飞行等。

模仿学习技术

模仿学习(Imitation Learning)背后的原理是是通过隐含地给学习器关于这个世界的先验信息,就能执行、学习人类行为。在模仿学习任务中,智能体(agent)为了学习到策略从而尽可能像人类专家那样执行一种行为,它会寻找一种最佳的方式来使用由该专家示范的训练集(输入-输出对)。

推荐文章
暂无评论
暂无评论~