【论文笔记】A Review of Motion Planning for Highway Autonomous Driving
文章目录
- I. INTRODUCTION
- II. CONSIDERATIONS FOR HIGHWAY MOTION PLANNING
- A. Terminology
- B. Motion Planning Scheme
- C. Specificities of Highway Driving
- D. Constraints on Highway Driving
- E. What Is at Stake in this Paper
- III. STATE OF THE ART
- A. Taxonomy Description
- B. Algorithm Classification
- 1) Space Configuration
- a) Sampling-Based Decomposition
- b) Connected Cells Decomposition
- c) Lattice Representation
- 2) Pathfinding Algorithms
- 3) Attractive and Repulsive Forces
- 4) Parametric and Semi-parametric Curves
- 5) Numerical Optimization
- 6) Artificial Intelligence
- a) AI Logic-Based Approach
- b) AI Heuristic Algorithms
- c) AI Approximate Reasoning
- d) AI Human-Like Methods
- IV. COMPARISON TABLE FOR HIGHWAY APPLICATIONS
- V. FUTURE RESEARCH DIRECTIONS
- A. Data Management
- 1) Data Uncertainty and Trustworthiness
- 2) Data Synchronization
- B. Adaptive Mobility
- 1) Safety
- 2) Eco-driving Planning
- 3) Perception Compensation
- 4) Route Context
- 5) Service Orientation
- C. Cooperative Planning
- D. Validation and Evaluation
- 1) Transition Stability
- 2) Evaluation
- 3) Ethics
- 4) Algorithm Relaxation
I. INTRODUCTION
首先介绍了一些自动驾驶汽车的起源、相关辅助驾驶技术的应用、相关的政策与标准、DARPA挑战赛以及其他的自动驾驶汽车项目情况和进展。
作者介绍了一些Motion Planning先前的综述和文献:
- 机器人领域:[20], [21], [22];
- 自动驾驶:[23], [24], [25];
- 为了适应自动驾驶汽车的工业现实原型,研究的标准化带来了新的问题,如功能安全、实时计算、系统方法或低成本开发,以及停车场、十字路口管理或高速公路驾驶的特定场景的应用。
- 基于高速公路研究自动驾驶的原因:
- 环境简单、道路结构简单;
- 驾驶行为有限且不复杂;
- 较易实现完全自动驾驶。
II. CONSIDERATIONS FOR HIGHWAY MOTION PLANNING
A. Terminology
这部分介绍了一些基本的术语和概念(不完全记录):
- configuration space:几何状态空间(机器人配置空间)。
- evolution space:指自车在空间和时间上可以安全移动的区域。
二者都包含:
- collision space:会和障碍物发生碰撞;
- uncertain space:有概率会和障碍物发生碰撞;
- free space:不会和障碍物发生碰撞。
- 作者将构建路径、轨迹、机动或动作序列的生成(generation)与规划(planning)区分开来。
B. Motion Planning Scheme
- [18], [24], [27]这三篇文献有对自动驾驶层级架构的描述。
作者介绍了一种典型的分层模式:
- motion strategy输入:从perception, localization以及communication
(Vehicle-to-X -V2X)模块获取的自车、障碍物行为以及基础设施的相关信息。(不关注如何收集,但关注测量的质量、不确定度以及可靠性) - scene representation:提供包含自车、障碍物、周围环境、交通等等的感知地图。
- 从perception, localization以及communication (Vehicle-to-X -
V2X)模块到motion strategy模块形成一个闭环系统:传递当前和未来的一些信息。 - control:控制,执行(actuation)。
闭环系统:反馈当前车辆的一些状态给Motion部分。 - 和驾驶员之间的交互:警示驾驶员风险;反馈驾驶员意图。
作者在本文中提出的分层方式:
- (i) route planning:全局规划器;
- (ii) prediction:预测,基于当前以及历史信息推测周围环境的变化;
- (iii) decision making
- (iv) generation
- (v) deformation
Deformation是指在运动规划中对生成的运动轨迹进行微调以适应环境和特定的限制,从而提高运动规划的准确性和可行性的过程。这个过程可以分为两个阶段:高层策略和低层策略。在高层策略阶段,通过生成多个可能的运动轨迹,并基于特定的评估标准选择最合适的轨迹;在低层策略阶段,通过微调轨迹实现对环境和限制的适应。Deformation还可以被看作是一种反应式的策略,能够在生成的运动轨迹上实时调整,以避免障碍物和保持轨迹的连续性。
在最近的工作[32], [33]中,motion planning的方法主要被分为high-level和low-level两个部分:
- high-level(predictive):包含三个部分:风险评估(risk evaluation),标准最小化(criteria minimization),约束(constraint submission)。这三个部分主要用在决策部分:从一系列的规划轨迹中选择一个作为决策;或先进行决策再进行相应的规划。high-level得益于较长视野的预测,但比较耗时。
- low-level (reactive):将运动生成这一过程用基于反应的方法代替。
表格中是各模块的距离范围和时间范围。
C. Specificities of Highway Driving
作者主要考虑的场景仅限于是结构化道路且速度超过60km/h的单向交通流。相较于城市道路场景,交通行为更加简单统一。
作者在本文中主要关注八种情况:
- Lane keeping;
- Car following;
- Lane changing;
- Lateral-most lane changing:变道到最外侧车道;
- Passing;
- Overtaking;
- Merging;
- Highway toll:高速收费站。
- 编队行驶的运动规划需要有更强的鲁棒性与稳定性。相关文献:[35]。
- 基于高速的运动规划和基于城市道路的运动规划最主要的不同是预瞄时间的不同,前者有更长的预瞄距离/时间。
D. Constraints on Highway Driving
- 硬约束:考虑交通规则与避免碰撞
- 软约束:考虑时间、距离、耗能最小化,舒适度。
- 其他可行性约束:车辆非完整性约束;光滑的路径——轨迹需要可微且曲率连续;车辆动力学约束。
- 除了基于虚拟势场的方法以及数值优化的方法,大多数的方法较少甚至没有考虑到车辆模型。
- 随时间变化的动态约束(例如单调性?)。
E. What Is at Stake in this Paper
这段主要关注高速公路自动驾驶的运动策略算法,强调实时有效性,不拘泥于数学复杂性(Simple is the BEST!)。作者分类算法从实际应用角度出发,分析它们的优缺点,同时考虑模拟或实验。相比于最优性,更看重可行性。在高速公路驾驶中,关键是确保至少一种连续运动策略。
III. STATE OF THE ART
Motion Planing 相关的问题:
- scene representation传过来的数据会有不同的类型(离散/连续、代数/分析或静态/动态),motion planning问题的形式也会相应的不同。
- 运动规划结合了五个不可避免的方面,(i)状态估计,(ii)时间演化,(iii)行动规划,(iv)标准优化,(v)遵守约束。如何处理这些会改变相应的问题。
A. Taxonomy Description
讲述作者如何对Motion Planing的方法进行分类
分类特征:
- 输出的类型:空间,路径,轨迹,操作或者是符号表示。
- 同时还需要考虑算法返回的是分解之后的运动(decomposition motion)还是参考运动(reference motion)。前者被称为set-algorithm,需要一个补充的算法去找到可行的运动;后者被称为solve-algorithm;
- 时空性质:predictive or reactive horizon;
- 所用的数学域(方法):基于几何,启发式,逻辑,认知,仿生(geometric, heuristic, logic,cognitive, biomimetic)。
- geometric几何方法基于空间的属性,直接处理环境与自身车辆的空间约束(运动学约束)。接下来需要处理大空间探索和优化问题。
- heuristic启发式方法依赖问题相关知识,快速找到近似解,避免计算复杂度和道路阻塞情况,但不保证找到最优解。
- logic逻辑方法指基于推断的演绎方法,易将结果和原因联系起来,但易受组合爆炸影响。
- cognitive认知方法依赖先验知识和常识评估情境,模仿人类决策过程,但自动驾驶应用经验不足,理论有效性未经验证,不认可基于认知的算法。驾驶员行为复杂且非理性,难以建模。
- biomimetic仿生方法,它描述了受物理启发的算法,遵循物理定律,这些定律便于实现,但可能会陷入无限循环运动行为。必须使用可行解来获得系统的收敛性。
B. Algorithm Classification
1) Space Configuration
Space Configuration类的算法主要的难点在于用合适的参数去表示运动或环境空间,且空间离散的程度需要很好的权衡。
这类算法的主要思想:
- 对evolution space采样或离散;
- 去除不可行或碰撞区域;
- 将剩余部分作为free-space的约束;或者使用路径寻找(pathfinding)算法or曲线规划的方式。
a) Sampling-Based Decomposition
主要有两种方式:
- 基于运动学约束在evolution space里进行采样,计算量更高;
- 随机采样,计算更快,但依赖于采样分布,不可复现、不完备。
两者都非最优,且不能保证完备性。
不过采样的方式可以在动态重规划中运用,且不需要对障碍物空间进行建模。
- 比较典型的算法PRM,相关详细介绍自动驾驶路径规划——基于概率采样的路径规划算法,作者提到的[33],基于参考线进行采样,再利用目标函数去寻找最好的节点集,并在路径上进行速度分配。
- 更好的策略是同时考虑时间和空间的维度(spatiotemporal sampling)[43]。
- 不过以上的这些方法在结构化道路中运用的较少,多运用在非结构化 环境中。
b) Connected Cells Decomposition
Cells Decomposition首先将空间利用几何信息分割成若干个单元格,再构建相应的拓扑结构。
图5是各类Cells Decomposition的相关应用。主要包括以下两类方法( 障碍物表示方法 or 不基于障碍物进行表示):
-
占据栅格(occupancy grid):栅格考虑障碍物信息与不确定度;但是需要的存储空间大、计算量大,遇到动态障碍物容易出错。
-
连通图(connectivity graph):节点代表单元格,边代表单元格之间的关系。
-
障碍物表示方法:
- 基于障碍物尺寸和速度的凸多边形[45]、矩形[46]、三角形[47]、圆形[48]、[49]、[50]、椭球形状[32]、[51];或整个道路车道[52]
- [53]中采用了probabilistic occupancy的方法。
-
不基于障碍物进行表示:
- 最直观的方法是exact decomposition,图5(e)。[50]中运用到了MDP。
- 考虑到非完整约束的curvilinear or polar grids.由于计算量大且精准度有限,被淘汰了。
- 向量直方图Vector Field Histograms(VFH)。[56];[57]考虑了kinodynamic约束。VFH对于不确定性较为鲁棒。
- DW动态窗口法。减小搜索空间同时减少计算量,可以动态避障。
- Voronoi decomposition:缺点:单元格的大小不一致、缺乏运动学可行性、不适应于动态场景、等间距不能保证安全。使用approximate methods后仍然存在难以适应动态场景的问题。
- visibility decomposition:图5(a);
- 行驶走廊driving corridor:图5©,使用道路边界以及障碍物时空位置。[49]利用Velocity Obstacles构建动态行驶走廊。缺点:计算时间长。
总结一下:Cells Decomposition仍不能算是highway planning中主流的方式,因为其虽然利用了障碍物的信息,但却忽略了道路的相关domain knowledge;对于highway planning,需要将动态障碍物约束以及道路约束进行结合。
c) Lattice Representation
- Lattice通常可以基于栅格生成,同时可以定义相关的运动基元,用于连接相连的状态(控制空间的状态或者状态空间的状态)。
- Lattice主要用于上文所述的predictive planning
- 优点:考虑车辆动力学约束以及时空上的约束;可以线下计算以用于快速重规划
- 缺点:结构固定,难以应用到reactive planning中。感觉可以通过相对高频的重规划实现reactive的避障等功能
比较原始的lattice基于最大转向策略maximum turn strategy进行;之后有将速度因素考虑进来的maximum turn strategy策略。但这两种方式所预定义的运动集合通常难以适应动态环境而且需要高稠密度才能达到理想的位置。之后又有自适应环境的latticeenvironment-adapted lattice出现,基于参考线、车道线进行撒点;还有其他的将驾驶员行为融合进来的方法。
Lattice将道路边界和运动学约束考虑进来并且能够实现较快的重规划,对于Highway Planning而言,十分有利。但是每一轮迭代所需要的存储空间等等会对计算量带来影响。
2) Pathfinding Algorithms
- Pathfinding类的算法通常需要有一个代价函数进行优化。
- 这些算法运用广泛,可以被用在已知或未知的环境中。
- 主要的缺点:依赖于图的大小以及复杂度;需要有space configuration的相关信息,对于空旷场景适应能力差。
- 介绍了经典的Dijkstra、AStar等算法,可参考【移动机器人运动规划】01 —— 常见地图基础 |图搜索基础
- 启发函数设计的例子:基于距离自车道边界以及行驶距离进行设计;基于行驶时间以及危险驾驶的惩罚进行设计。
- Anytime Weighted A* (AWA*):对启发函数取权重,减少计算时间。
- hybridstate A*:考虑动力学约束,采用基于非完整约束但不考虑障碍物的启发函数以及基于障碍物但不考虑非完整约束的启发函数。
- D* :基于动态场景
- RRT可以生成运动学可行的路径同时可以用于reactive的避障路径生成中。
- RRT*:渐进最优。缺点:随机采样可能导致图的连通性较差,同时难以复现。对于高速道路,环境信息通常比较简单且是可知的,用确定性的搜索算法可能会更好。
3) Attractive and Repulsive Forces
-
基于引力和斥力(场)的方法的优点:
- 可以适应于动态的场景
- 不需要对场景进行显示建模
-
这类方法通常基于梯度下降法(不考虑车辆模型)或者基于Newton第二定律(考虑车辆模型)
-
因为对所有空间进行建模比较困难,这类方法通常运用于运动轨迹的应对动态变化的调整。
-
Artificial Potential Field (APF):[99];[100]基于电场的思想;APF直接产生控制输入[96],或者产生优化问题所需的约束[46],[101]
-
Velocity Vector Field (VVF):速度矢量场,动态轨迹更平稳
-
缺点:距离障碍物太近时会产生超调;会陷入局部极小值,通常采用随机启发跳出局部极小值。不过在Highway Planning中可能还需要局部极小值去避免不合时宜的换道。
-
Virtual Force Field (VFF):采用向量直方图的方法,同时利用概率分布作为虚拟力。
-
另一个缺点:只考虑了空间维度进行动态避障,使得在面对障碍物时,往往会采取从旁边行驶过的策略。
-
elastic band:弹性带算法针对上述情况进行改进
虽然这一类算法可能计算量比较大,但是对于Highway Planning比较有效。
4) Parametric and Semi-parametric Curves
-
参数曲线和半参数曲线作为主流Highway Planning几何算法的原因:
- 高速道路本身就是一系列简单、预先定义的曲线组成的;
- 预定义曲线集合很容易作为候选测试轨迹。
- 可以直接考虑运动学约束
-
几何约束和动态约束通常分开考虑,换句话:路径规划和速度规划进行解耦[106],[107]。解耦可以使得车辆能够适应动态场景。
-
作者主要探讨两类曲线算法:
- 直接用曲线生成相应的候选轨迹库,需要进一步选择。
- 第一类算法通常利用了触须算法tentacles algorithm的原理[108],相比于space decomposition的方法,计算空间和时间都缩短了不少。
- Dubins曲线:曲线和直线结合[110];
- [42],[109]
- 不过,这类方法存在曲线曲率二阶导不连续的情况,难以运用到车辆模型中(可以用优化or拟合的方法补偿)。作者提到用螺旋曲线连接直线和圆弧曲线以达到曲线曲率二阶导连续。
- 回旋曲线曲率与曲线横坐标成比例[50]。这个特性可以用于横向加速度的限制以及舒适度的约束上。[111],[112],[113].
- 回旋曲线需要不断迭代,很消耗计算时间
- sigmoid or S-function
- 基于路径点生成曲线轨迹
- Point-based的曲线生成能够很好地适应环境约束以及动态约束,也可以作为平滑步骤。
- [29] :三次螺旋曲线
- [80] : 三次函数用于速度生成,四次和五次多项式用于横纵向轨迹生成;
- [81] : 三次多项式函数与平滑后的四次曲率多项式用以生成路径,三次多项式用以速度生成。
- 对于多项式插值计算比较复杂的问题,半参数样条曲线对此进行了改进。需要将曲线定义为一系列分段多项式。
- Bézier curves:使用控制点而非插值点作为拐点,因此不会完全沿着预定义的控制点前进。容易实现,计算量小。[49],[116];[117]用到了SVM去提供控制点。
- 总结:曲线类的算法通常会结合其他算法,而且曲线的选择取决于具体的问题和环境信息。
- 直接用曲线生成相应的候选轨迹库,需要进一步选择。
5) Numerical Optimization
- 优化算法也是竞争性组合运筹学的一部分,以避免组合爆炸。
- 作者介绍了两种优化算法在运动规划中的应用:
- 通过有效的方法解决复杂的问题同时减少搜索时间。
- 用数学的方法在给定约束中解决问题,也是本文主要讨论的方面。
- 优点:易于处理问题的约束,可以处理多准则优化问题,将车辆模型的状态维数和运动学纳入考虑。
- Linear Programming (LP):线性规划。[81]
- Sequential LP (SLP): 序列线性规划[119]
- Nonlinear Programming(NLP):非线性规划;NLP用于非线性回归问题的特殊情况,如路径优化中用到Levenberg-Marquardt算法[29],[104],或者是用于BVP问题[33]的求解。
-
Levenberg-Marquardt算法是一种非线性最小二乘优化算法,常用于拟合曲线或解决非线性优化问题。该算法结合了梯度下降和高斯牛顿方法的优点,可以在迭代过程中自适应地调整步长,具有快速收敛和高效稳定的特点。在拟合曲线、信号处理、机器学习等领域广泛应用。
-
- Quadratic Programming (QP):二次规划。
- sequential quadratic programming (SQP):序列二次规划。[18]
- Mixed Integer Quadratic Programming (MIQP):[120],[121]
- Model Predictive Control (MPC):模型预测控制[46], [47], [51], [113], [118], [122], [123]。MPC重规划能力强,但是对于非凸问题以及高复杂度的问题求解存在欠缺。
- Dynamic Programming (DP):动态规划,将复杂问题分解。[49],[124]
6) Artificial Intelligence
- AI类的算法泛化能力强,在不改变算法结构的基础上进行新的调整。
- 四类算法:类人、启发式、近似推理、逻辑
a) AI Logic-Based Approach
-
定义专家系统来解决特定的复杂任务,依赖于知识库和推理引擎来自动化推理系统。
-
基于逻辑的AI算法具有快速架构(fast architecture,不是很理解)的优点,可用于预测性(predictive)或反应式的planning中。
-
主要优点:可以模拟人类逻辑和理性推理
-
缺点:知识库需要离散化具有大量因果规则和调优参数的环境变量。
-
rule-based:
- [126]在高速公路上基于规则的意图预测的令人满意的结果,并将其用于[127]中的变道机动。
- 其主要优点是可以清楚地识别因果关系,标记方便,实现简单。
- 其主要缺点是循环推理和规则的穷举枚举,导致无限循环,影响计算时间;如果当前情况与规则库中的观察结果不匹配,则可能做出不合适的决策。
- 规则的顺序也很重要,可以通过启发式的方式对规则进行排序。
-
decision trees决策树:
- [78]描述所有可能行驶的车道;
- [32],[128]用二元决策图(binary decision diagrams)和流程图表示布尔函数。
- 难以描述不确定的和近似的情况。决策树还应该考虑他车的危险和不合法行为,即考虑法律的因素。
-
Finite State Machine (FSM)有限状态机:
- [55]用于紧急停车;[129]将动作和状态的序列映射为路径生成和跟踪控制;[18]采用平行的状态图表去描述同时发生的状态。
- 主要缺点是它们只基于确定的知识,不能推广到未知情况。
-
Bayesian networks贝叶斯网络:
- 考虑到不确定性。
- 贝叶斯网络是基于概率转换的因果关系的统计表示。他们提出了一个基于知识的参数识别步骤,以确定输出序列中最可能的状态序列。
- [27]比较障碍物的意图,返回自车的操作。
- [50]采用了MDP去选择触须轨迹库中的轨迹。[130]在车道保持、变道决策中运用MDP。
- MDP的优点是能够同时评估多个预测信息。
- POMDP:[131],[132],[133]
-
总结:
- 基于人工智能逻辑的方法大多适用于约束和可预测的环境(例如高速场景)
- 主要缺点是缺乏自主性和严格的程序结构,无法实现自适应和可重构算法。
b) AI Heuristic Algorithms
- 启发式算法基于经验,有利于自然环境过程的探索。它们的目标是找到一个近似解,因此当传统的穷举方法失败时,它们可以被用作更快、更有效的算法。
- 通常返回一系列的动作集合。
- 它们的主要优点是计算时间短,复杂度低,处理复杂问题的能力强。
- 但是不能保证全局最优性和准确性。
- agent:启发式的算法通常涉及智能体(agent)这一概念。
- 启发式智能体的功能允许包含多策略决策,如[132],包括到目标的距离、车道选择偏差、最大偏航率和策略成本。
- 适应于具有不确定性的环境
- Support Vector Machines (SVM):
- [117]利用SVM去拟合贝塞尔曲线的控制点;[134]则是应用于变道决策之中。
- Evolutionary methods :
- Evolutionary methods进化算法是一类广泛使用的学习算法,受生物模拟的启发,具有自然的合理演化过程,如繁殖、突变、重组和选择。首先,需要确定一组与适应度函数相关联的先验解来评估它们的质量。然后应用一组演化过程来寻找更好的优化问题的解决方案。
- [136]应用了两种遗传算法来改进模糊控制模块,[137]详细介绍了一种基于速度、角度、打断和回避时间的4染色体结构遗传算法
- 这种算法的稳定性和风险与突变机制有关,其随机过程可能导致局部最小值。
c) AI Approximate Reasoning
-
与逻辑推理的区别不同之处在于知识库是非布尔型的;以及对新知识进行分类以适应未来情况的学习方法。
-
fuzzy logic:
- 模糊逻辑依赖于多值变量,并且包括基于布尔折衷的模糊专家系统,可以数学建模模糊性并且接近认知推理。
- 主要优点是所设计规则的灵活性和容忍度,并可扩展到不确定数据
- 主要缺点是缺乏可追溯性和缺乏系统的设计方法。
- [138]依据与障碍物之间的间距来确定换道时机。[139]和[140]分别对侧误差和角误差使用模糊规则,提出基于参考地图的自动超车机动和横向跟随。
-
Artificial Neural Networks (ANN):
- ANN在决策以及路径生成方面都有应用。
- 主要优点是它们能够通过对多维数据进行训练来学习
- 缺乏对解决方案有很好的因果解释。
- 另一个缺点是需要大量的数据,这使得它们的计算成本很高。
- [122]采用了Hidden Markov Models (HMM)隐马尔可夫模型和高斯混合回归相结合的方法。
- [141]使用了Levenberg-Marquardt算法在一个三层的人工神经网络上来学习驾驶速度。
- [142]则用卷积神经网络模拟驾驶员的车道变换轨迹,而[143]则将学习阶段与人类驾驶员的控制输入进行了比较。
- [133]中使用强化学习来确定场景表达中的每个智能体的策略,[144]和[145]则用于多目标超越和自动换道机动中。
- [146]中探索了深度学习方法,[147]则将感知和规划块整合到端到端学习中。
- [148]中采用贝叶斯概率来扩展神经网络,在不确定性情况下进行belief networks置信网络学习。
-
总结:
- 近似推理的AI算法依赖于逻辑和统计基础,这些基础扩展到认知属性。他们还提供了自适应推理,以适当地演变为他们的环境。对复杂变化的环境适应能力、泛化能力好。
- 这些算法的主要缺点是缺乏真实驾驶场景中的反馈。
d) AI Human-Like Methods
-
主要优点是决策过程的抽象和通用表示
-
但是难以建模并被准确使用
-
三类方法:risk, task, and game
-
Risk estimators:
- 风险估计器Risk estimators用于在具有认知偏差的情景分析中进行合理的决策。
- 优点:直观。
- 相关评价指标:
- Time-To-Collision (TTC):[51],[55],[150];
- Time-To-React (TTR):[151],[152]
- Time-To-Intercept (TTI):[154]
- Binary risk estimators二元风险估计器提供了对场景的粗略评估,但障碍物未来运动的不确定性是一个不容忽视的参数。
- Probabilistic risk estimators概率风险估计器更适合于提供更真实的场景表示。
- compensation risk:
- compensation risk:为了适应驾驶员的风险感知,补偿风险估计器引入了驾驶员的状态,如压力、困倦或疾病.[157]中引入了Time of Zone Clearance (TZC)。
-
Task, taxonomic models:
-
他们通过行为和能力需求来识别顺序驱动任务关系。
-
由一系列任务构成
-
缺点之一是它们难以明确描述,因为它们要么专注于驾驶任务,如变道或合并,要么很难详尽无遗。
-
-
game theory 博弈论:
- 这种方法的主要优点是它可以快速获得一个训练有素的驾驶员模型
- 缺点是假定所有参与者都遵守规则,但没有考虑到现实情况中的一些变化。
- 在[133]中,模型在针对其他行为进行训练时,会开发出更复杂的策略。作者在训练阶段使用POMDP对交通参与者的知识和Jaakola强化学习进行建模。
IV. COMPARISON TABLE FOR HIGHWAY APPLICATIONS
表格汇总了之前的算法。
V. FUTURE RESEARCH DIRECTIONS
A. Data Management
- 文献[166]详细介绍了影响运动规划的几个感知挑战,文献[167]讨论了改进驾驶控制算法的条件。
- 作者载这一部分主要关心的两个问题:
- 在不确定性和可信度方面,多少数据才足够?how much data is enough in terms of uncertainties and trustworthiness?
- 我们如何对延迟和非同步数据做出决策?how do we make a decision with latency and unsynchronized data?
1) Data Uncertainty and Trustworthiness
- 数据不确定性和可信度相关算法:
- 卡尔曼估计Kalman estimators[52], [169]
- 马尔可夫过程Markov processes [131], [170]
- 蒙特卡洛方法Markov processes [131], [170]
- evidential theory [52]
- 区间算法interval arithmetic [171]
- 此外,规划阶段还必须确保运动连续性,以确保即使数据丢失也能保证车辆的安全。
2) Data Synchronization
- 场景的数据是用不同的频率和延迟获得的
- 第一个解决方案是为运动规划模块和控制器运行具有相同时间步长的算法,并外推最后获得的数据。
- 第二种方案是基于一个在每次新数据到达时能进行刷新的规划器。然后,混合逻辑将在固定频率上运行,并在新数据到达时刷新数据,通过外推数据集来改进传播方程。
B. Adaptive Mobility
- 指出了人类驾驶员在面对机器人驾驶员时需要考虑的安全问题,包括尊重、可接受性、可预测性或舒适度等方面。
1) Safety
- 出于安全考虑,需要有足够智能的算法来区分永久或暂时的危险
- 自动驾驶中的纵向距离和速度控制通常比人类驾驶更快,因此纵向安全空间可以更小
- 相比之下,人类驾驶员的横向距离控制通常更稳定;因此,自动驾驶的横向安全空间必须更大。
- 此外,这个安全空间必须足以应对环境中的意外(例如,前方车辆的意外刹车,不可预见的死胡同)。
- 人类接管和人机混合驾驶的自动驾驶汽车相关问题:
- 第一个问题是在驾驶员收回控制权的情况下保持稳定和预测性的决策
- 第二种是人类驾驶员和机器的决策可能相互矛盾[177]。
- 人类驾驶员在面对自动驾驶时需要考虑的安全问题,包括尊重、可接受性、可预测性或舒适度等方面。
2) Eco-driving Planning
- 生态驾驶(Eco-driving)被表示为一个多标准优化问题(见III-B5),具有基于能源效率和环境保护的代价函数,达到节能低碳的目标。主要考虑两个方面。
- 首先对自动驾驶汽车的动力学模型进行了分析,提出了低加速、恒速等平稳机动以降低油耗的方法
- 第二,有良好的预测和预期,以避免突然产生机动
3) Perception Compensation
- 关于感知的一个问题是驾驶场景的固定视角的约束
- 然而,当人类驾驶员必须做出决定时,他/她会通过移动车辆来优化他/她的感知,从而在更大的感知环境中获取更多信息。
4) Route Context
- 全局的路径规划实际上对于局部的路径规划会产生相应的约束。例如,右侧高速公路出口需要自车导航到最右边的车道。
5) Service Orientation
- 根据不同车辆的用途,基于服务属性,调整决策行为。
- 到目前为止,经典的方法是时空域决策,即车辆必须在何时何地导航。现在加入了第三个维度:车辆如何导航
C. Cooperative Planning
-
individual:
- 每辆车都独立于其他车辆做出决定,但会考虑互动[159]和礼貌[184]等因素。
-
collective:
- a swarm intelligence:群体智能
- 这种集体决策需要对其他车辆的状态了解,并进行强有力的通信。通过群体智能、事件驱动方法、风险估计和模糊逻辑建模,可以使车辆协作,实现编队机动。同时,智能基础设施也可以作为管理者或控制器,通过协调调度程序实现车辆行动的预期和监控,文献中主要介绍了基于知识推理引擎和代理的智能高速公路管理者。
-
shared:
- 自动驾驶技术与人类驾驶员的合作方式和共享决策。SAE自动化级别描述了驾驶员和自动驾驶车辆之间的共享合作。驾驶员的经验对于自动驾驶系统是有用的,可以采用模糊化方法将其与系统决策结合。研究还探讨了如何将自动驾驶车辆的行为与驾驶员类型相适应,以更好地推广自动驾驶技术。
D. Validation and Evaluation
1) Transition Stability
- “Transition Stability” 指的是转换稳定性,即在使用不同的运动规划算法时,系统间转换是否稳定、可靠并且鲁棒。如果转换不稳定,就需要添加一个高级别的监管者来验证决策、动作和观察的一致性。
- 在[195]中,作者提出了一种类似于FSM决策的行为模式,实现了可以在手动和自动驾驶之间以及不同的机动模式之间切换的架构。
2) Evaluation
- 主要包括在仿真和实验测试中进行人为驾驶员的评价(安全、平滑、操作时间)和使用关键绩效指标(KPIs)等方式。
3) Ethics
- 机器人系统与人类互动时,需要考虑伦理道德问题。相关研究提出了基于混合理性和人工智能的道德部署策略,以及将道德纳入决策中的方法。
4) Algorithm Relaxation
- 严格遵守和松弛驾驶规则是确保自动驾驶汽车安全的关键。事实上,即使是硬约束也可能在危急情况下变得危险[13]。
相关文章:
【论文笔记】A Review of Motion Planning for Highway Autonomous Driving
文章目录 I. INTRODUCTIONII. CONSIDERATIONS FOR HIGHWAY MOTION PLANNINGA. TerminologyB. Motion Planning SchemeC. Specificities of Highway DrivingD. Constraints on Highway DrivingE. What Is at Stake in this Paper III. STATE OF THE ARTA. Taxonomy DescriptionB…...
YOLOv8改进算法之添加CA注意力机制
1. CA注意力机制 CA(Coordinate Attention)注意力机制是一种用于加强深度学习模型对输入数据的空间结构理解的注意力机制。CA 注意力机制的核心思想是引入坐标信息,以便模型可以更好地理解不同位置之间的关系。如下图: 1. 输入特…...
2023年10月腾讯云优惠活动汇总:腾讯云最新优惠、代金券整理
腾讯云作为国内领先的云服务提供商,致力于为用户提供优质、稳定的云服务。为了更好地满足用户需求,腾讯云推出了各种优惠活动。本文将给大家分享腾讯云最新优惠活动,帮助用户充分利用腾讯云提供的优惠。 一、腾讯云优惠券领取【点此领取】 腾…...
BUUCTF reverse wp 65 - 70
[SWPU2019]ReverseMe 反编译的伪码看不明白, 直接动调 这里显示"Please input your flag", 然后接受输入, 再和32进行比较, 应该是flag长度要求32位, 符合要求则跳转到loc_E528EE分支继续执行 动调之后伪码可以读了 int __cdecl main(int argc, const char **arg…...
xorm数据库操作之Join、Union
golang的数据库操作xorm使用起来非常方便,不用再自己写SQl语句,而且xorm自己给我们做了SQL防注入等操作,用起来既方便又安全。此次文章我不会记录xorm的基本操作,我值记录一些特殊用法问题,包括动态创建表单、基于xorm…...
排序:基数排序算法分析
1.算法思想 假设长度为n的线性表中每个结点aj的关键字由d元组 ( k j d − 1 , k j d − 2 , k j d − 3 , . . . , k j 1 , k j 0 ) (k_{j}^{d-1},k_{j}^{d-2},k_{j}^{d-3},... ,k_{j}^{1} ,k_{j}^{0}) (kjd−1,kjd−2,kjd−3,...,kj1,kj0)组成, 其中&am…...
用go实现http服务端和请求端
一、概述 本文旨在学习记录下如何用go实现建立一个http服务器,同时构造一个专用格式的http客户端。 二、代码实现 2.1 构造http服务端 1、http服务处理流程 基于HTTP构建的服务标准模型包括两个端,客户端(Client)和服务端(Server)。HTTP 请求从客户端…...
幂级数和幂级数的和函数有什么关系?
幂级数和幂级数的和函数有什么关系? 本文例子引用自:80_1幂级数运算,逐项积分、求导【小元老师】高等数学,考研数学 求幂级数 ∑ n 1 ∞ 1 n x n \sum\limits_{n1}^{\infty}\frac{1}{n}x^n n1∑∞n1xn 的和函数 ÿ…...
Git多账号管理通过ssh 公钥的方式,git,gitlab,gitee
按照目前国内访问git,如果不科学上网,我们很大可能访问会超时。基于这个,所以我现在的git 配置已经增加到了3个了 一个公司gitlab,一个git,一个gitee. 以下基于这个环境,我们来说明下如何创建配置ssh公钥。…...
在nodejs常见的不良做法及其优化解决方案
在nodejs常见的不良做法及其优化解决方案 当涉及到在express和nodejs中开发应用程序时。遵循最佳实践对于确保项目的健壮性、可维护性和安全性至关重要。 在本文中,我们将探索开发人员经常遇到的几种常见的错误做法,并通过代码示例研究优化的最佳做法&…...
关于layui upload上传组件上传文件无反应的问题
最近使用layui upload组件时,碰到了上传文件无反应的问题,感到非常困惑。 因为使用layui upload组件不是一次两次了,之前每次都可以,这次使用同样的配方,同样的姿势,为什么就不行了呢? 照例先…...
容器网络之Flannel
第一个问题位置变化,往往是通过一个称为注册中心的地方统一管理的,这个是应用自己做的。当一个应用启动的时候,将自己所在环境的 IP 地址和端口,注册到注册中心指挥部,这样其他的应用请求它的时候,到指挥…...
SVM(下):如何进行乳腺癌检测?
⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据开发、数据分析等。 🐴欢迎小伙伴们点赞👍🏻、收藏⭐️、…...
嵌入式Linux应用开发-第十五章具体单板的按键驱动程序
嵌入式Linux应用开发-第十五章具体单板的按键驱动程序 第十五章 具体单板的按键驱动程序(查询方式)15.1 GPIO操作回顾15.2 AM335X的按键驱动程序(查询方式)15.2.1 先看原理图确定引脚及操作方法15.2.2 再看芯片手册确定寄存器及操作方法15.2.3 编程15.2.3.1 程序框架15.2.3.2 硬…...
MySQL体系结构和四层架构介绍
MySQL体系结构图如下: 四层介绍 1. 连接层: 它的主要功能是处理客户端与MySQL服务器之间的连接(比如Java应用程序通过JDBC连接MySQL)。当客户端应用程序连接到MySQL服务器时,连接层对用户进行身份验证、建立安全连接并管理会话状态。它还处理…...
【产品运营】如何做好B端产品规划
产品规划是基于当下掌握的多维度信息,为追求特定目的,而制定的产品资源投入计划。 产品规划是基于当下掌握的多维度信息(客户需求、市场趋势、竞争对手、竞争策略等),为追求特定目的(商业增长、客户满意等&…...
ruoyi-启动
1 springboot 版本 git 地址 ruoyi-vue-pro: 🔥 官方推荐 🔥 RuoYi-Vue 全新 Pro 版本,优化重构所有功能。基于 Spring Boot MyBatis Plus Vue & Element 实现的后台管理系统 微信小程序,支持 RBAC 动态权限、数据权限…...
select完成服务器并发
服务器 #include <myhead.h>#define PORT 4399 //端口号 #define IP "192.168.0.191"//IP地址//键盘输入事件 int keybord_events(fd_set readfds); //客户端交互事件 int cliRcvSnd_events(int , struct sockaddr_in*, fd_set *, int *); //客户端连接事件 …...
初级篇—第四章聚合函数
文章目录 聚合函数介绍聚合函数介绍COUNT函数AVG和SUM函数MIN和MAX函数 GROUP BY语法基本使用使用多个列分组WITH ROLLUP HAVING基本使用WHERE和HAVING的对比开发中的选择 SELECT的执行过程查询的结构SQL 的执行原理 练习流程函数 聚合函数介绍 聚合函数作用于一组数据&#x…...
计算机图像处理-中值滤波
非线性滤波 非线性滤波是利用原始图像跟模版之间的一种逻辑关系得到结果,常用的非线性滤波方法有中值滤波和高斯双边滤波,分别对应cv2.medianBlur(src, ksize)方法和cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace[, dst[, borderType]])方法。 …...
Golang中的包和模块设计
Go,也被称为Golang,是一种静态类型、编译型语言,因其简洁性和对并发编程的强大支持而受到开发者们的喜爱。Go编程的一个关键方面是其包和模块系统,它允许创建可重用、可维护和高效的代码。本博客文章将深入探讨在Go中设计包和模块…...
web:[极客大挑战 2019]Upload
题目 页面显示为一个上传,猜测上传一句话木马文件 先查看源代码看一下有没有有用的信息,说明要先上传图片,先尝试上传含有一句话木马的图片 构造payload <?php eval($_POST[123]);?> 上传后页面显示为,不能包含<&…...
ICMP差错包
ICMP报文分类 Type Code 描述 查询/差错 0-Echo响应 0 Echo响应报文 查询 3-目的不可达 0 目标网络不可达报文 差错 1 目标主机不可达报文 差错 2 目标协议不可达报文 差错 3 目标端口不可达报文 差错 4 要求分段并设置DF flag标志报文 差错 5 源路由…...
算法基础课第二部分
算法基础课 第四讲 数学知识AcWing1381. 阶乘(同余,因式分解) 质数AcWing 866. 质数的判定---试除法AcWing 868. 质数的判定---埃氏筛AcWing867. 分解质因数---试除法AcWing 197. 阶乘---分解质因数---埃式筛 约数AcWing 869. 求约数---试除法AcWing 870. 约数个数-…...
【数据结构】外部排序、多路平衡归并与败者树、置换-选择排序(生成初始归并段)、最佳归并树算法
目录 1、外部排序 1.1 基本概念 1.2 方法 2、多路平衡归并与败者树 2.1 K路平衡归并 2.2 败者树 3、置换-选择排序(生成初始归并段)编辑 4、最佳归并树 4.1 理论基础编辑 4.2 构造方法 编辑 5、各种排序算法的性质 1、外部排序 1.1 基本概…...
抽象工厂模式 创建性模式之五
在看这篇文章之前,请先看看“简单工厂模式”和“工厂方法模式”这两篇博文,会更有助于理解。我们现在已经知道,简单工厂模式就是用一个简单工厂去创建多个产品,工厂方法模式是每一个具体的工厂只生产一个具体的产品,然…...
servlet如何获取PUT和DELETE请求的参数
1. servlet为何不能获取PUT和DELETE请求的参数 Servlet的规范是POST的数据需要转给request.getParameter*()方法,没有规定PUT和DELETE请求也这么做 The Servlet spec requires form data to be available for HTTP POST but not for HTTP PUT or PATCH requests. T…...
【Vue.js】使用Element中的Mock.js搭建首页导航左侧菜单---【超高级教学】
一,Mock.js 1.1 认识Mock.js Mock.js是一个用于前端开发中生成随机数据、模拟接口响应的 JavaScript 库。模拟数据的生成器,用来帮助前端调试开发、进行前后端的原型分离以及用来提高自动化测试效率 总结来说,Element中的Mock.js是一个用于…...
从技术创新到应用实践,百度智能云发起大模型平台应用开发挑战赛!
大模型已经成为未来技术发展方向的重大变革,热度之下更需去虚向实,让技术走进产业场景。在这样的背景下,百度智能云于近期发起了“百度智能云千帆大模型平台应用开发挑战赛”。 挖掘大模型落地应用 千帆大模型平台应用开发挑战赛启动 在不久前…...
简单三步 用GPT-4和Gamma自动生成PPT PDF
1. 用GPT-4 生产PPT内容 我想把下面的文章做成PPT,请你给出详细的大纲和内容 用于谋生的知识,学生主要工作是学习,成年人的工作是养家糊口,这是基本的要求,在这之上,才能有更高的追求。 不要短期期望过高…...
机械公司网站源码/sem专员
整理 | WA出品 |程序员研修院继快手、字节后,又一家企业取消大小周8月17日,BOSS直聘宣布将从2021年9月1日起取消“大小周”,恢复双休,员工薪资中的“周末加班费”正常发出,薪资总额不变。发布时长不到两小时ÿ…...
池州做网站/企业员工培训内容及计划
LeetCode 53. 最大子序和 大家好,我叫亓官劼(q guān ji ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客 本文原创为亓官劼,请大家支持原…...
wordpress胖子马/网站优化公司大家好
HTML的table表格的列数如果太多或者某一列的内容太长,就会导致表格td的内容被挤压变形,对后台的使用体验非常不友好。比如下面的情况: 那么如何在表格列数较多的情况下添加横向滚动条?其实很简单,只需要给table外面包一…...
PHP MySQL 网站开发实例/上海牛巨微seo
首先要说明的是现在的Elasticsearch已经不支持删除一个type了,所以使用delete命令想要尝试删除一个type的时候会出现如下错误,如果存在一个名为edemo的index和tets的type: No handler found for uri [/edemo/test] and method [DELETE] 1 所以…...
免费的素材网站有哪些/黄山网站建设
在ASP.NET 2.0 中, 采用 Forms 身份认证方式, 在配置节的 slidingExpiration true/false,这里的具体意义我不甚清楚,查了一下MSDN和一些网上的说法, 更迷惑了。望大家能给一个确切的解释,十分感谢。转载于…...
iis7如何部署网站/杭州百度百科
1、安装安卓开发环境(教程很多,不细写) 2、安装eclipse下载eclipse,解压即可3、安装python下载地址:https://www.python.org/downloads/release/python-2713/下载文件:python-2.7.13.msi配置环境变量&#…...