A New Vehicle Motion Model for Improved Predictions and Situation Assessment 一种新的车辆运动模型,用于改进预测和情境评估
Joakim Sörstedt, Lennart Svensson, Fredrik Sandblom, and Lars Hammarstrand 乔基姆·索尔斯特德、伦纳特·斯文森、弗雷德里克·桑德布隆和拉尔斯·哈马斯特兰德
Abstract 摘要
Reliable and accurate vehicle motion models are of vital importance for automotive active safety systems for a number of reasons. First of all, these models are necessary in tracking algorithms that provide the safety system with information. Second, the motion model is often used by the safety application to make long-term predictions about the future traffic situation. These predictions are then part of the basic data used by the system to determine if, when, and how to intervene. In this paper, we suggest a framework for designing accurate vehicle motion models. The resulting models differ from conventional models in that the expected control input from the driver is included. By also providing a methodology for a formal treatment of the uncertainties, a model structure well suited, e.g., in a tracking algorithm, is obtained. To utilize the framework in an application will require careful design and validation of submodels to calculate the expected driver control input. We illustrate the potential of the framework by examining the performance for a specific model example using real measurements. The properties are compared with those of a constant acceleration model. Evaluations indicate that the proposed model yields better predictions and that it has an ability to estimate the prediction uncertainties. 可靠和准确的车辆运动模型对于汽车主动安全系统至关重要,原因有很多。首先,这些模型在跟踪算法中是必要的,为安全系统提供信息。其次,运动模型通常被安全应用用来对未来交通情况进行长期预测。这些预测随后成为系统判断是否、何时以及如何干预的基本数据的一部分。在本文中,我们建议了一种设计准确车辆运动模型的框架。所得到的模型与传统模型的不同之处在于包含了来自驾驶员的预期控制输入。通过提供一种对不确定性进行正式处理的方法,获得了一种非常适合于跟踪算法的模型结构。要在应用中利用该框架,需要仔细设计和验证子模型,以计算预期的驾驶员控制输入。我们通过使用真实测量数据检查特定模型示例的性能来说明该框架的潜力。其属性与恒定加速度模型的属性进行了比较。 评估表明,所提出的模型产生了更好的预测,并且具有估计预测不确定性的能力。
ACURRENT trend in today’s automotive industry is to equip vehicles with increasingly more active safety systems. These have the objective of aiding the driver in different accident-prone situations, such as unintentional lane departures or dangers caused by distracted drivers. Based on sensor data, active safety systems try to assess the situation and detect dangerous scenarios. Some examples of active safety systems that are currently available on the market are given in [1]. To improve these systems in the future, detailed vehicle motion models will be most valuable. The reasons for this are at least threefold. 当前汽车行业的一个趋势是为车辆配备越来越多的主动安全系统。这些系统的目标是在不同的事故多发情况下帮助驾驶员,例如无意间偏离车道或因分心驾驶者造成的危险。基于传感器数据,主动安全系统试图评估情况并检测危险场景。目前市场上可用的一些主动安全系统的例子见于[1]。为了在未来改进这些系统,详细的车辆运动模型将是最有价值的。原因至少有三个。
The motion model is an integral part of the tracking system that provides the safety system with information 运动模型是跟踪系统的一个重要组成部分,为安全系统提供信息
regarding the surrounding environment. More precise motion models would improve the tracking system’s ability to handle complex traffic scenarios. 关于周围环境。更精确的运动模型将提高跟踪系统处理复杂交通场景的能力。
2) An active safety system needs to decide when and how to intervene. In theory, an accurate motion model enables the safety applications to make better long-term predictions and thereby allow decisions to be made earlier and with greater confidence [2]. 2) 一种主动安全系统需要决定何时以及如何进行干预。理论上,准确的运动模型使安全应用能够做出更好的长期预测,从而允许更早地做出决策,并且更有信心地做出决策 [2]。
3) Careful modeling of specific situations of interest, e.g., related to different driver maneuvers, can help the safety application to classify and understand the traffic situation. 3) 对特定感兴趣情况的仔细建模,例如与不同驾驶员操作相关的情况,可以帮助安全应用程序分类和理解交通状况。
The motion models predominantly used in tracking systems are derived from the fundamental laws of dynamics and assume that the input is approximately white Gaussian noise. Such models have extensively been employed in numerous applications and often with satisfactory results [3]-[5]. However, there are reasons to believe that traditional models can be improved to better meet the demands of future safety systems. For instance, more accurate long term predictions would be most useful for a decision making algorithm. 在跟踪系统中主要使用的运动模型源自动力学的基本法则,并假设输入大致为白噪声高斯噪声。这些模型已广泛应用于许多应用中,并且通常取得令人满意的结果[3]-[5]。然而,有理由相信传统模型可以改进,以更好地满足未来安全系统的需求。例如,更准确的长期预测对于决策算法将是非常有用的。
A main weakness in traditional models is that they do not capture the influence the driver has on the vehicle motion. Under normal conditions, it is reasonable to believe that the vehicle is completely controlled by the driver. Attempts to model driver behavior have previously appeared in the literature. In [6], a driver behavior model is used to design an adaptive cruise controller, and in [7], similar ideas have been used for threat assessment. Other examples of driver behavior models have been developed for micro traffic simulators [8] and in the ongoing European Union projects integrated human modeling and simulation to support human error risk analysis of partially autonomous driver assistance systems (ISI-PADAS) [9] and Information Technology for error remediation and trapping emergencies (ITERATE) [10]. A closely related problem exists in the field of robotics, where algorithms are designed to find a collision-free path through a partly unknown environment, see, e.g., [11] and the references therein. We believe that neither of these models fulfill the requirements from a future active safety system. For instance, the models in [6] and [11] are not suitable from a tracking perspective as they do not provide a stochastic description of the vehicle motion. Similarly, the idea in [7] is not well suited for decision making as it does not capture the variations in driving styles and driving preferences among different drivers. Finally, since the models for micro process simulators are designed for simulation purposes, they lack a description of uncertainties in predictions as well as the ability to adapt model parameters to observed data. These properties are essential for filtering and decision making purposes and 传统模型的一个主要弱点是它们未能捕捉到驾驶者对车辆运动的影响。在正常情况下,认为车辆完全由驾驶者控制是合理的。文献中曾出现过对驾驶者行为进行建模的尝试。在[6]中,使用了一个驾驶者行为模型来设计自适应巡航控制器,而在[7]中,类似的思想被用于威胁评估。其他驾驶者行为模型的例子已被开发用于微观交通模拟器[8],以及正在进行的欧盟项目中,集成人类建模和仿真以支持部分自动驾驶辅助系统的人为错误风险分析(ISI-PADAS)[9]和用于错误修正和紧急情况处理的信息技术(ITERATE)[10]。在机器人领域存在一个密切相关的问题,算法被设计用来在部分未知环境中找到无碰撞路径,参见,例如,[11]及其中的参考文献。我们认为这些模型都未能满足未来主动安全系统的要求。 例如,文献[6]和[11]中的模型从跟踪的角度来看并不合适,因为它们没有提供车辆运动的随机描述。同样,文献[7]中的想法不太适合决策,因为它没有捕捉到不同驾驶者之间驾驶风格和驾驶偏好的变化。最后,由于微观过程模拟器的模型是为模拟目的而设计的,它们缺乏对预测不确定性的描述以及根据观察数据调整模型参数的能力。这些特性对于过滤和决策目的至关重要。
make these models inappropriate alternatives in their current form. The same arguments also hold for the models so far presented in the ISI-PADAS and ITERATE projects. 使这些模型在其当前形式下成为不合适的替代品。相同的论点也适用于迄今为止在 ISI-PADAS 和 ITERATE 项目中提出的模型。
In this paper, we continue to develop the model framework introduced in [12] and [13]. The idea is that the driver controls the vehicle by making a tradeoff between different objectives, such as the desire to travel fast and to travel comfortably. To describe the expected driver control signal, we use a cost function that reflects the driver objectives. By minimizing this cost function, the most likely control signal can be calculated. Compared with [12] and [13], the model framework is extended here to cover a more generic model structure. More importantly, it is also adapted to handle uncertainties in the cost function parameters. This allows us to design models that not only contain knowledge regarding typical driver behavior but also able to capture variations among different drivers and to adapt as driver behavior changes. 在本文中,我们继续发展在[12]和[13]中介绍的模型框架。其思想是,驾驶员通过在不同目标之间进行权衡来控制车辆,例如快速行驶的愿望和舒适行驶的愿望。为了描述预期的驾驶员控制信号,我们使用一个反映驾驶员目标的成本函数。通过最小化这个成本函数,可以计算出最可能的控制信号。与[12]和[13]相比,这里扩展了模型框架,以涵盖更通用的模型结构。更重要的是,它还适应于处理成本函数参数中的不确定性。这使我们能够设计不仅包含典型驾驶员行为知识的模型,还能够捕捉不同驾驶员之间的变化,并随着驾驶员行为的变化而调整。
The main contribution of this paper is the model structure described in Section III. This structure suggests a method for including the expected driver input in a model structure and provides guidelines on how to construct cost functions. In contrast to other commonly used methods, our approach has the advantage that model parameters have a clear interpretation. Having said that, a significant amount of work still remains before this approach can be used by an application. First of all, the cost function needs to be adjusted and validated for the intended application. Second, an efficient implementation for minimizing the cost function has to be developed. To illustrate the performance of the suggested model structure, we present one cost function and evaluate it using real measurements. In the studied examples, the proposed model explains the data better and provides better predictions compared with a constant acceleration (CA) model. 本文的主要贡献是第三节中描述的模型结构。该结构提出了一种将预期驱动输入纳入模型结构的方法,并提供了构建成本函数的指导方针。与其他常用方法相比,我们的方法具有模型参数具有明确解释的优势。尽管如此,在该方法可以被应用程序使用之前,仍然需要进行大量工作。首先,需要针对预期应用调整和验证成本函数。其次,必须开发出一种有效的实现方法来最小化成本函数。为了说明所建议的模型结构的性能,我们提出了一个成本函数,并使用实际测量进行评估。在研究的示例中,所提出的模型比恒定加速度(CA)模型更好地解释了数据,并提供了更好的预测。
This paper is organized as follows: Section II presents the notation and some of the most commonly used motion models in tracking applications. In Section III, a general description of the proposed modeling framework is provided. A specific design of the cost function is described in Section IV and later evaluated on measured data in Section V. Finally, Section VI contains the conclusions. 本文的组织结构如下:第二节介绍了符号和一些在跟踪应用中最常用的运动模型。第三节提供了所提建模框架的一般描述。第四节描述了成本函数的具体设计,并在第五节对测量数据进行了评估。最后,第六节包含结论。
II. BACKGROUND II. 背景
The vehicle motion model describes the evolution of a timediscrete vector x_(k)inR^(n_(x))\mathbf{x}_{k} \in \mathcal{R}^{n_{x}} that is referred to as the state vector of the model. For vectors and matrices (indicated by boldface), we use the subindex kk as notation for a discrete-time instant with a continuous counterpart in t_(k)t_{k}, whereas the notation x(k)x(k) is used for scalars. The continuous time interval between two samples is constant and denoted as T_(s)=t_(k)-t_(k-1)T_{s}=t_{k}-t_{k-1}. We consider a state vector partitioned as 车辆运动模型描述了一个称为模型状态向量的时间离散向量 x_(k)inR^(n_(x))\mathbf{x}_{k} \in \mathcal{R}^{n_{x}} 的演变。对于向量和矩阵(用粗体表示),我们使用下标 kk 作为离散时间瞬间的符号,其在 t_(k)t_{k} 中有一个连续对应,而符号 x(k)x(k) 用于标量。两个样本之间的连续时间间隔是恒定的,表示为 T_(s)=t_(k)-t_(k-1)T_{s}=t_{k}-t_{k-1} 。我们考虑一个被划分的状态向量为
where x_(k)^(h)\mathbf{x}_{k}^{h} is the state vector for the host vehicle, z_(k)^(t)\mathbf{z}_{k}^{t} is the state vector for the nearest target vehicle in front of the host vehicle, and the vector r_(k)\mathbf{r}_{k} contains parameters describing the road. Our main interest in this paper is to derive a model for the vector x_(k)^(h)\mathbf{x}_{k}^{h}. 其中 x_(k)^(h)\mathbf{x}_{k}^{h} 是主车的状态向量, z_(k)^(t)\mathbf{z}_{k}^{t} 是主车前方最近目标车的状态向量,向量 r_(k)\mathbf{r}_{k} 包含描述道路的参数。我们在本文中的主要兴趣是推导向量 x_(k)^(h)\mathbf{x}_{k}^{h} 的模型。
For z_(k)^(t)\mathbf{z}_{k}^{t} and r_(k)\mathbf{r}_{k}, we use standard models, which are described in this section. The model we propose for the host vehicle can also be used for one or several target vehicles, but for simplicity, we apply it only on the host vehicle. 对于 z_(k)^(t)\mathbf{z}_{k}^{t} 和 r_(k)\mathbf{r}_{k} ,我们使用标准模型,这在本节中进行了描述。我们为主车提出的模型也可以用于一个或多个目标车辆,但为了简便起见,我们仅将其应用于主车。
We restrict the scope to Markovian models of the form 我们将范围限制为以下形式的马尔可夫模型
where f_(k-1)(*)\mathbf{f}_{k-1}(\cdot) is a possibly time-varying and nonlinear function of x_(k-1)\mathbf{x}_{k-1} and a stochastic noise vector e_(k-1)inR^(n_(e))\mathbf{e}_{k-1} \in \mathcal{R}^{n_{e}}. The noise process accounts for model uncertainties and is traditionally modeled as an independent identically distributed process with zero mean. 其中 f_(k-1)(*)\mathbf{f}_{k-1}(\cdot) 是一个可能随时间变化的非线性函数,依赖于 x_(k-1)\mathbf{x}_{k-1} 和一个随机噪声向量 e_(k-1)inR^(n_(e))\mathbf{e}_{k-1} \in \mathcal{R}^{n_{e}} 。噪声过程考虑了模型的不确定性,通常被建模为一个独立同分布的过程,均值为零。
An important subgroup of the general model structure (2) is the family of linear motion models defined by the matrices A_(k-1)inR^(n_(x)xxn_(x))\mathbf{A}_{k-1} \in \mathcal{R}^{n_{x} \times n_{x}} and B_(k-1)inR^(n_(x)xxn_(e))\mathbf{B}_{k-1} \in \mathcal{R}^{n_{x} \times n_{e}}, such as 一般模型结构(2)的一个重要子组是由矩阵 A_(k-1)inR^(n_(x)xxn_(x))\mathbf{A}_{k-1} \in \mathcal{R}^{n_{x} \times n_{x}} 和 B_(k-1)inR^(n_(x)xxn_(e))\mathbf{B}_{k-1} \in \mathcal{R}^{n_{x} \times n_{e}} 定义的线性运动模型族,例如
These motion models are popular in tracking applications because they enable simple and efficient algorithms such as the Kalman filter [14] to estimate and predict the states. 这些运动模型在跟踪应用中很受欢迎,因为它们使得像卡尔曼滤波器 [14] 这样的简单高效算法能够估计和预测状态。
A frequently used linear motion model is the CA model. In this model, the state vector z_(k)^(t)\mathbf{z}_{k}^{t} is parameterized as 一个常用的线性运动模型是 CA 模型。在该模型中,状态向量 z_(k)^(t)\mathbf{z}_{k}^{t} 被参数化为
where (eta_(x)^(t)(k),eta_(y)^(t)(k))\left(\eta_{x}^{t}(k), \eta_{y}^{t}(k)\right) is the center position of the vehicle, and (eta^(˙)_(x)^(t)(k),eta^(˙)_(y)^(t)(k))\left(\dot{\eta}_{x}^{t}(k), \dot{\eta}_{y}^{t}(k)\right) and (eta^(¨)_(x)^(t)(k),eta^(¨)_(y)^(t)(k))\left(\ddot{\eta}_{x}^{t}(k), \ddot{\eta}_{y}^{t}(k)\right) are the first and second order time derivatives of eta_(x)^(t)(k)\eta_{x}^{t}(k) and eta_(y)^(t)(k)\eta_{y}^{t}(k). In the version of the CA model employed here, the noise process e_(k)\mathbf{e}_{k} determines the jerk between sample instances. The acceleration, velocity, and position increments are thus given by e_(k)T_(s),e_(k)T_(s)^(2)//2\mathbf{e}_{k} T_{s}, \mathbf{e}_{k} T_{s}^{2} / 2 and e_(k)T_(s)^(3)//6\mathbf{e}_{k} T_{s}^{3} / 6, respectively. The system matrices then take the form 其中 (eta_(x)^(t)(k),eta_(y)^(t)(k))\left(\eta_{x}^{t}(k), \eta_{y}^{t}(k)\right) 是车辆的中心位置, (eta^(˙)_(x)^(t)(k),eta^(˙)_(y)^(t)(k))\left(\dot{\eta}_{x}^{t}(k), \dot{\eta}_{y}^{t}(k)\right) 和 (eta^(¨)_(x)^(t)(k),eta^(¨)_(y)^(t)(k))\left(\ddot{\eta}_{x}^{t}(k), \ddot{\eta}_{y}^{t}(k)\right) 是 eta_(x)^(t)(k)\eta_{x}^{t}(k) 和 eta_(y)^(t)(k)\eta_{y}^{t}(k) 的一阶和二阶时间导数。在这里采用的 CA 模型版本中,噪声过程 e_(k)\mathbf{e}_{k} 决定了样本实例之间的冲击。因此,加速度、速度和位置增量分别由 e_(k)T_(s),e_(k)T_(s)^(2)//2\mathbf{e}_{k} T_{s}, \mathbf{e}_{k} T_{s}^{2} / 2 和 e_(k)T_(s)^(3)//6\mathbf{e}_{k} T_{s}^{3} / 6 给出。系统矩阵则呈现出以下形式
where the noise process is modeled as e_(k)∼N(0,C_(e))\mathbf{e}_{k} \sim \mathcal{N}\left(\mathbf{0}, \mathbf{C}_{e}\right), where C_(e)=diag[[sigma_(eta^(¨)_(x))^(2),sigma_(eta^(¨)_(y))^(2)]]\mathbf{C}_{e}=\operatorname{diag}\left[\begin{array}{cc}\sigma_{\ddot{\eta}_{x}}^{2} & \sigma_{\ddot{\eta}_{y}}^{2}\end{array}\right]. 噪声过程被建模为 e_(k)∼N(0,C_(e))\mathbf{e}_{k} \sim \mathcal{N}\left(\mathbf{0}, \mathbf{C}_{e}\right) ,其中 C_(e)=diag[[sigma_(eta^(¨)_(x))^(2),sigma_(eta^(¨)_(y))^(2)]]\mathbf{C}_{e}=\operatorname{diag}\left[\begin{array}{cc}\sigma_{\ddot{\eta}_{x}}^{2} & \sigma_{\ddot{\eta}_{y}}^{2}\end{array}\right] 。
In essence, the CA model is a kinematic particle model [15], where the object motion is decoupled in different dimensions. Other examples, where the object’s motion in the different dimensions is instead coupled, are the coordinated turn models [3], [4]. More detailed vehicle motion models, which, for instance, take wheel slip and wheel angle into account, have been derived for applications such as vehicle stability and traction control. In [16], more information is provided on dynamic vehicle models and describes the single track model or bicycle model that has been used for vehicle tracking, at least in a simplified form; see, e.g., [17]. 本质上,CA 模型是一个运动学粒子模型[15],其中物体的运动在不同维度上是解耦的。其他例子,如物体在不同维度上的运动是耦合的,是协调转弯模型[3],[4]。更详细的车辆运动模型,例如考虑轮胎滑移和轮胎角度的模型,已被推导用于车辆稳定性和牵引控制等应用。在[16]中,提供了有关动态车辆模型的更多信息,并描述了用于车辆跟踪的单轨模型或自行车模型,至少在简化形式上;见,例如,[17]。
In this paper, we use a curved road coordinate system such that the positions of the host vehicle (eta_(x)^(h),eta_(y)^(h))\left(\eta_{x}^{h}, \eta_{y}^{h}\right) and the target vehicle (eta_(x)^(t),eta_(y)^(t))\left(\eta_{x}^{t}, \eta_{y}^{t}\right) are given relative to the road. This coordinate system, which was previously used, e.g., in [18], is defined 在本文中,我们使用一个曲线路径坐标系统,使得主车 (eta_(x)^(h),eta_(y)^(h))\left(\eta_{x}^{h}, \eta_{y}^{h}\right) 和目标车 (eta_(x)^(t),eta_(y)^(t))\left(\eta_{x}^{t}, \eta_{y}^{t}\right) 的位置相对于道路给出。这个之前使用过的坐标系统,例如在[18]中,定义为
Fig. 1. Global Cartesian coordinate system (xi_(x),xi_(y))\left(\xi_{x}, \xi_{y}\right) and curved road coordinate system (eta_(x),eta_(y))\left(\eta_{x}, \eta_{y}\right). 图 1. 全球笛卡尔坐标系统 (xi_(x),xi_(y))\left(\xi_{x}, \xi_{y}\right) 和曲线路径坐标系统 (eta_(x),eta_(y))\left(\eta_{x}, \eta_{y}\right) .
in Fig. 1, which also contains a Cartesian coordinate system (xi_(x),xi_(y))\left(\xi_{x}, \xi_{y}\right) that will be needed later in Section IV. To find a relation between these coordinate systems, a model of the road curvature is required. Here, we follow suggestions from, e.g., [19] and use a clothoid model. The road curvature is then described by a local linear approximation about the host vehicle, i.e., 在图 1 中,还包含一个笛卡尔坐标系 (xi_(x),xi_(y))\left(\xi_{x}, \xi_{y}\right) ,在第 IV 节中将需要它。为了找到这些坐标系之间的关系,需要一个道路曲率模型。在这里,我们遵循例如[19]的建议,使用一个克洛索伊德模型。然后,道路曲率通过关于主车的局部线性近似来描述,即,
The parameter c_(0)c_{0} is the local curvature at the center of the road, and c_(1)c_{1} is the curvature change rate as a function of distance Deltaeta_(x)\Delta \eta_{x} from the host vehicle. We include the clothoid parameters c_(0)(k)c_{0}(k) and c_(1)(k)c_{1}(k) and the lane width L_(w)(k)L_{w}(k) in the road state vector 参数 c_(0)c_{0} 是道路中心的局部曲率, c_(1)c_{1} 是作为距离 Deltaeta_(x)\Delta \eta_{x} 从主车辆的曲率变化率。我们在道路状态向量中包含了螺旋线参数 c_(0)(k)c_{0}(k) 和 c_(1)(k)c_{1}(k) 以及车道宽度 L_(w)(k)L_{w}(k) 。