Keywords

1 Introduction

The safety and importance of lane changes on highways are critical in autonomous driving. Ensuring these maneuvers are safe is essential for efficient navigation and obstacle avoidance. Recent advancements have emphasized the need for reliable automated lane-change systems, drawing significant attention from researchers and industry professionals [8].

Trajectory prediction of surrounding vehicles is essential for safe lane changes. Despite progress in predicting vehicle trajectory using various learning-based models, real-world application remains limited [4]. Few studies have implemented these systems in actual vehicles, highlighting a gap between theory and practice.

Although various studies have been conducted on risk assessment, it is common to predict the trajectories of surrounding vehicles using simple models such as constant velocity and acceleration models [5].

Therefore, this paper aims to bridge these gaps by presenting an automated lane-change system using a probabilistic trajectory prediction network. Through risk assessment between the predicted trajectory and the generated lane change candidates, the optimal lane change trajectory is generated. The real-time effectiveness of the proposed framework is validated through real vehicle experiments.

2 Probabilistic Trajectory Prediction Network

In this study, an efficient LSTM encoder-decoder network structure [3], ensuring real-time performance, is employed to predict the trajectories of surrounding vehicles in the form of a probability distribution.

2.1 Input and Output Representation

The input of the network at timestep \(t=T\) is the past trajectory of the target vehicle, \(X_{hist}\), in the following form.

$$\begin{aligned} X_{hist}(T)=[(x^{T-T_h},y^{T-T_h}),...,(x^{T-1},y^{T-1}),(x^{T},y^{T})] \end{aligned}$$
(1)

where x, y indicate the position of the target vehicle and \(T_h\) is the length of the history. The output of the network is a bivariate normal distribution of the future trajectory, represented by mean and variance.

$$\begin{aligned} Y_{pred}(T)=[f_{xy}^{T+1},...,f_{xy}^{T+T_f-1},f_{xy}^{T+T_f}] \end{aligned}$$
(2)

where \(T_f\) is the length of the predicted future trajectory and

$$\begin{aligned} f_{xy}=[(\mu _{x},\mu _{y},\sigma _{x},\sigma _{y},\rho )] \end{aligned}$$
(3)

is the parameters of the bivariate normal distribution. The interaction between the ego and target vehicle is considered by extracting the spatial vehicle interaction feature using convolutional social pooling [1].

2.2 Input Data Preprocessing

Since surrounding vehicles are detected through perception sensors, the initially obtained position of the target vehicle are based on the local coordinate of the ego vehicle. To enable the network to effectively learn the dynamic characteristics of the target vehicle and its relationship with the lane, the trajectory of the target vehicle are transformed into lane coordinate-based position.

Therefore, a two-step coordinate transformation is applied. First, the position of the target measured in the local coordinate system \((x,y)_{lo}\) is transformed into the position in the global coordinate system \((x,y)_{g}\) using the vehicle’s localization data:

$$\begin{aligned} (x,y)_{g} = T_{1}((x,y)_{lo};(X,Y,\theta )_{ego}) \end{aligned}$$
(4)

where \(T_1\) is the rigid transformation matrix and \((X,Y,\theta )_{ego}\) represents the global position and heading angle of the ego vehicle. Next, with the stacked trajectory history in the global coordinate \(X_{hist,g}\), using the map data of the current driving lane, the lane heading is calculated and the global position is transformed into the lane coordinate system:

$$\begin{aligned} X_{hist,la} = T_{2}(X_{hist,g};\theta _{la}) \end{aligned}$$
(5)

where \(T_2\) is the rigid transformation matrix and \(\theta _{la}\) is the lane heading angle in the global coordinate. Note that \(X_{hist,la}\) is transformed so that the current position \(X_{hist,la}(T_h+1)=(0,0)\). Once the prediction is performed, the output (lane coordinate) is transformed back to the local coordinate.

2.3 Dataset and Training

The proposed method is trained using a dataset that combines the HighD dataset with data acquired from real-world vehicle experiments. Since the network’s output follows a normal distribution, we employ the negative log-likelihood as the training loss.

3 Collision Risk Assessment

3.1 Lane Changing Trajectory Candidate Generation

Using the lane information, lane change (LC) trajectories are generated in the Frenet frame [2], allowing for easy and intuitive application of planning. Polynomial trajectories are generated based on conditions such as initial position, final position, and acceleration constraints. This process results in several candidate trajectories \(X_{plan}^{(n)}\), where \(1\le n\le N\) and N is the number of the candidates.

3.2 Risk Probability Calculation

When approximating the shapes of the ego vehicle and target vehicle as rectangles, the trace of the center point of the target vehicle in situations where the two rectangles overlap can be defined as the collision area \(S_{col}\). The bivariate normal distribution predicted for the center point of the target vehicle is integrated within this area to calculate the collision probability. Since the probability of collision can be considered as the maximum collision probability during the prediction horizon, the collision probability between the candidate n and the predicted trajectory of the target vehicle during the prediction horizon can be defined as follows.

$$\begin{aligned} P^{(n)}_{col}(T)=\max _{T \le t \le T+T_f}p^{(n)}(t) \end{aligned}$$
(6)

where

$$\begin{aligned} p^{(n)}(t) = \int _{(x,y)\in S^{(n)}_{col}(t)}g(x,y;t) dxdy \end{aligned}$$
(7)

and g(xy) is the probability density function of the bivariate normal distribution which is formed by the network output \(f_{xy}\).

Meanwhile, if the ego vehicle is steering to change lanes, the shape of \(S_{col}\) becomes an octagon, making integration difficult. Since the shape is still convex, it can be replaced with a rectangular shape \(S'_{col}\) satisfying \(S_{col}<S'_{col}\), where the area is approximately similar [6]. This does not underestimate the collision probability since \(P_{col}<P'_{col}\) is always satisfied because \(g(x,y)>0\). Assuming the size of the ego and target vehicle is similar, \(S'_{col}\) can be defined as:

$$\begin{aligned} S'^{(n)}_{col}(t) = \{(x,y)|x_{min}\le x\le x_{max}, y_{min}\le y\le y_{max}\} \end{aligned}$$
(8)

where

$$\begin{aligned} \begin{aligned} x_{min} &= x^{(n)}_{plan}(t)-\frac{\sqrt{w^2+l^2}}{2}\cos {(\tan ^{-1}{(\frac{w}{l}-\varTheta )})}-l\\ x_{max} &= x_{min}+2l+l\cos {\varTheta }+w\sin {\varTheta }\\ y_{min} &= y^{(n)}_{plan}(t)-\frac{\sqrt{w^2+l^2}}{2}\sin {(\tan ^{-1}{(\frac{w}{l}+\varTheta )})}-w\\ y_{max} &= y_{min}+2w+w\cos {\varTheta }+l\sin {\varTheta } \end{aligned} \end{aligned}$$
(9)

Here, w and l are the width and length of the vehicle, and \(\varTheta \) is the heading angle difference between the vehicles. \(x^{(n)}_{plan}(t)\) and \(y^{(n)}_{plan}(t)\) indicate the planned position of candidate n at time t.

The bivariate normal distribution does not have an explicit integration form (i.e., cumulative distribution). Therefore, the risk probability \(P_{col}\) is calculated using the numerical method known as the Darboux integral. To avoid underestimating the probability due to errors caused by the method, the upper Darboux sum is considered. Defining finite sequences with equal intervals \(x_{min}=x_0<x_1<\cdot \cdot \cdot <x_m=x_{max}\) and \(y_{min}=y_0<y_1<\cdot \cdot \cdot <y_k=y_{max}\), Eq. (7) can be approximated as follows:

$$\begin{aligned} p = \sum _{i=0}^{m-1} \sum _{j=0}^{k-1} \sup _{\begin{array}{c} x\in [x_{i},x_{i+1}]\\ y\in [y_{i},y_{i+1}] \end{array}} g(x,y)\varDelta x \varDelta y \end{aligned}$$
(10)

where \(\varDelta x\) and \(\varDelta y\) are intervals along the local coordinate.

If there exists a lane change candidate within the collision probability threshold, and among them, candidate \(n^{*}\) with the smallest lateral acceleration is selected as the final reference \(X_{ref}=X_{plan}(n^{*})\).

4 Lane Change Controller

Given the reference lane change trajectory \(X_{ref}\), a linear MPC is constructed based on the lateral bicycle model of the vehicle [7]. The optimal steering angle is achieved by minimizing the cost function of the MPC, which mainly consists of lateral error and steering angle rate.

Fig. 1.
figure 1

Experimental result

5 Experimental Results

To validate the proposed framework, actual experiments were conducted. The experiments took place at a proving ground, designed in the form of a highway. The prediction network was implemented on a mid-performance laptop in a Robot Operating System environment, while the controller was developed in the MATLAB/Simulink environment. Real-time control was executed through the MicroAutobox II. The sampling time for the prediction network and risk assessment is 70 ms and 50 ms for the controller.

Figure 1 shows the result when the ego vehicle attempts a lane change to the left while there is a vehicle traveling at a similar speed in the left lane. The results show that the proposed framework has been validated to ensure a collision-free and safe lane change in real-time scenarios.

6 Conclusion

In this paper, a novel framework for automated lane change system is proposed. The framework is consist of trajectory prediction network, collision risk assessment module, and the controller. The proposed framework was validated in a highway-like proving ground. Applications of more complicated scenarios is planned for future work.