1 Introduction

There is currently a rise in Level 2+ automated driving systems. Level 2+ herein refers to the second SAE (Society of Automotive Engineers) Level in combination with automated lane changing functionality. The passenger of the automated vehicle simply sets the turn indicator in the direction of the desired lane and the automated vehicle analyzes the situation and finally conducts the lane change. A typical architecture of an automated driving system is shown in Fig. 1. Mandatory lane changes are derived by a route planning algorithm on the strategic level. The tactical level consists of situation assessment and tactical maneuver planning functionality. Finally, the operational level takes over lower-level control tasks. The paper at hand introduces a model for the generation of discretionary lane change proposals that aim at increasing comfort for the passenger. After a lane change decision was made, a lane change maneuver planning module, in combination with a trajectory tracking controller on the operational level, realizes the lane change comfortably.

Fig. 1
figure 1

Location of the proposed module for the generation of discretionary lane change proposals in a typical modular automated driving system architecture

A typical application example is driving behind a truck that is slower than the desired velocity of the ego-vehicle. The questions that the module presented in the paper at hand answers are the following. How much velocity deviation is accepted by the passenger of the automated vehicle? When will the passenger feel the need to prepare for a lane change? The discretionary lane change proposal module analyses the traffic situation, answers both questions and finally might recommend a lane change to the driver of the automated vehicle. In case that this proposal is accepted, the lane change maneuver planning finally tries to realize a safe and comfortable lane change. The author’s previous work [1] presents a sampling-based approach for lane change maneuver planning. Their work [2], in contrast focuses on a convex optimization based approach and highlights the importance of maneuver variant identification in highway traffic situations. Latter approach is inspired by [3] and [4].

The work at hand places a particular focus on modeling the utility of driving lanes using a probabilistic framework. This way, noise in the perception system is naturally accounted for. Furthermore, the passenger will often accept low deviations of the desired velocity for a certain period of time. This factor is modeled using a probability distribution around the desired velocity.

A high-level overview of the proposed module is given in Fig. 2. The desired velocity \(v_{\mathrm{E,des}}\in\mathbb{R}_{+}\) and the traffic situations features:

$$\begin{aligned}\chi=\begin{bmatrix}v_{\mathrm{E}}&v_{\mathrm{LF}}&v_{\mathrm{CF}}&v_{\mathrm{RF}}&v_{\mathrm{RB}}&v_{\mathrm{CB}}&v_{\mathrm{LB}}\end{bmatrix}^{\intercal}\in\mathbb{R}^{7}_{+},\end{aligned}$$
(1)

refer also to Fig. 3, are the two inputs of the module. Sect. 3.2 presents the calculation of utilities of the left and right adjacent lanes to the current driving lane. The left and right lane change utilities \(\mathcal{U}_{\mathrm{L}}\in\left[0,1\right]\) and \(\mathcal{U}_{\mathrm{R}}\in\) [0,1 + γ2 + γ3], with \(\gamma_{2}\) and \(\gamma_{3}\) being model parameters introduced in Sect. 3, are further analyzed to finally derive binary proposals \(\mathcal{T}_{\mathrm{L}}\in\{0,1\}\) and \(\mathcal{T}_{\mathrm{R}}\in\{0,1\}\). The details of this analysis are given in Sect. 3.3.

Fig. 2
figure 2

High-level overview of the proposed module. First, the lane change utility to the adjacent lanes are calculated and finally, in case that certain conditions are fulfilled, a lane change is proposed to the driver of the automated vehicle

The paper is structured as follows. Sect. 2 introduces the related work and highlights the contribution. Sect. 3 presents the architecture of the module and all relevant parameters. These parameters are optimized and the results are discussed in Sect. 4. After that, the optimized module is evaluated on data from a test vehicle of ZF in Sect. 5. Finally, Sect. 6 gives a conclusion and discusses future research directions and open questions.

2 Related work and contribution

Lane changes are distinguished by using the term mandatory and discretionary. Mandatory lane changes arise in cases where the vehicle should follow a predefined route and are derived on the strategic level, refer to Fig. 1. In contrast, discretionary lane changes are mainly done to increase the passenger’s comfort or gain speed in order to travel with a specified desired velocity.

The contribution at hand aims at discretionary lane changes and hence on the tactical level of automated driving. Much research in this field is done in the context of microscopic traffic simulations. [5] is the extension of the car-following model presented in [6]. It models the lane change decision using certain rules and also considers, for example, safety aspects and the urgency of a lane change. [7] presents the lane change model that is used in the MITSIM MIcroscopic Traffic SIMulator and extends [5]. [8] models the lane change decision process using fuzzy logic. [9] presents a calibration of the model described in [8] and showed a strong correlation between a collected dataset and their proposed lane change model. Furthermore, the work [10] validates the model in greater detail. [11] focuses on conflict resolution and describes a lane change model based on defined Regions Of Interests (ROI) around the ego-vehicle. [12] uses a rule-based lane change model and distinguishes forced and cooperative lane changes. [13] aims at integrating mandatory and discretionary lane change decisions and introduces lane specific utility functions that are based on the traffic situation around the ego-vehicle. The extension and calibration of the model are presented in [14]. [15] presents the lane change model MOBIL (Minimizing Overall Braking deceleration Induced by Lane Changes) which aims at minimizing the overall braking of traffic participants induced by the ego-vehicle lane change. The model also accounts for courtesy by introducing a politeness factor to weight the ego-vehicle utility of a lane change compared to the utility of all remaining surrounding vehicles in the traffic situation. It extends the Intelligent Driver Model (IDM) [16]. [17] proposes a model that includes the relaxation and synchronization phenomena during lane changes. Relaxation refers to a phase after a lane change where the traffic participants accept temporarily lower safety margins, whereas synchronization refers to the longitudinal adaption of a vehicle towards a target gap. A comprehensive survey of lane change models used in microscopic traffic simulations is presented in [18]. The authors also introduce a taxonomy for an easier distinction of the various models. Another more recent survey is [19].

Historically, most lane changing research was done in the field of microscopic traffic simulation. This focus shifted recently in accordance with the increased interest in the field of automated driving. The contribution at hand focuses on the application in a real automated vehicle. There are numerous challenges like perception system uncertainties, noise and occlusion. Microscopic traffic simulation always uses unnoisy ground-truth data, which makes the problem of lane change planning much easier.

The authors, therefore, think that the application of the aforementioned works is oftentimes not possible and it is sensible to also consider work that focuses on real vehicle applications. Subsequent approaches focus mostly on maneuver planning, refer to Fig. 1, and realize the whole tactical level in the automated driving software stack and sometimes even parts of the operational level. For example, [20] presents a real-time decision-making approach that includes lane change functionality and uses Petri-Nets, state machines and utility functions to select the most appropriate maneuver to conduct. It, therefore, realizes the whole tactical level in Fig. 1. The work [21] serves as the main inspiration for the paper at hand. The authors of [21] present a probabilistic approach for highly automated driving on highways with special focus on the lane change functionality. Their work explicitly considers sensor noise and derives a lane change decision using a utility function. [22] realizes the whole tactical level. They optimize lane change maneuvers using mixed-integer programming and directly account for the optimal lane within the optimization procedure. [23] introduces a dynamic bayesian network for the estimation if a lane change is beneficial for the ego-vehicle. They also provide an evaluation of their approach on real data from a test vehicle. The work [24] focuses on connected automated vehicles and introduces an algorithm for maximizing lane changes in highway situations to increase traffic throughput. [25] uses a hierarchical state machine for lane-change decisions in combination with a radial basis function neural network for the estimation of overtaking intentions. [26] introduces a utility function to judge if a lane change is beneficial. The utility function consists of three parts. The first and second assess the average travel time and time gap density, respectively. The last part evaluates the remaining travel time. Their work also introduces an approach for the subsequent step of maneuver planning. [27] and the extension [28] solve the lane changing problem for multiple automated vehicles by the solution of a generalized mixed-integer potential game and hence employ game-theoretic methods. [29] models human lane change decisions using deep belief networks trained on naturalistic driving data.

The approach described in the paper at hand is an relevant extension of the approach presented in [21]. As already depicted in Fig. 1, a modular subdivision of the tactical level is made. Only lane change proposals are the focus here. This subdivision is sensible since the main motivation for a discretionary lane change is almost always the deviation from the desired velocity after the vehicle once completely entered the highway. The contributions are the following. First, we introduce a politeness factor in the utility calculation motivated by [15]. Second, the desired velocity of the ego-vehicle is also modeled using a Gaussian probability distribution, taking into account the passenger’s acceptance of certain deviations from the desired velocity. Third, we developed an accumulation mechanism such that long-lasting slight dissatisfaction with the current driving lane of the ego-vehicle is accumulated, leading eventually to a lane change decision. Finally, compared to [21], the paper at hand provides an in-depth parameter optimization, analysis of the results using a driving simulator study and evaluation on real data from a ZF Group test vehicle.

3 Model architecture

The following section gives a detailed overview of the proposed model and all mathematical operations involved in it. The nomenclature for the traffic scene features \(\chi\) is shown in Fig. 3. The dark grey vehicle is the ego-vehicle and light grey ones represent surrounding traffic participants. Two subscripts are used for these vehicles, the first denoting the lane to distinguish Current ego-vehicle lane (C), Left lane (L) and Right lane (R). The second subscript distinguishes Front (F) and Back (B) with respect to the ego-vehicle.

Fig. 3
figure 3

Nomenclature for the traffic scene features \(\chi\). Both adjacent lanes are assessed for the calulcation of the corresponding lane change utilities. The traffic participant with velocity \(v_{\mathrm{RB}}\) is introduced for completeness sake but not used in the calculations

3.1 Model components

A high-level overview of the proposed module is given in Fig. 2. In contrast, Fig. 4 gives a detailed overview of all components for the left lane change module. The left part of the figure represents the calculation of the resulting utility \(\mathcal{U}_{\mathrm{L}}(k)\). Details of the calculation are given in the subsequent Sect. 3.2. The utility is calculated based on probabilities of velocity comparisons. A politeness factor \(\lambda\) is integrated to include courtesy in the proposal generation process. There are certainly other important feature for the lane change utility calculation. However, based on the authors own experiences as drivers, velocities play a dominant role. Indeed, an overtaking maneuver is usually triggered to avoid deceleration or reach ones desired velocity. Also note, that the module that is proposed in the work on hand has a different aim compared to lane change prediction modules. Latter try to predict lane changes of surrounding vehicles. Such approaches have to consider more features such as distances between vehicles and lateral velocities, refer for example to [30] and [31].

The right part of Fig. 4 refers to the part of the module that generates the binary trigger signal \(\mathcal{T}_{\mathrm{L}}\). This part is described in Sect. 3.3 in more detail. A similar figure can be drawn for the module that generates discretionary right lane change proposals. There are slight adaptions since more parameters are used and a bias to the right lane is included in that case. Sect. 3.2 will give more precise details regarding the similarities and differences between both cases.

Fig. 4
figure 4

Detailed overview of the module components for left lane changes. The left part of the figure corresponds to the lane change utility calculation whereas the right part depicts the memory and accumulator trigger modules for the proposal generation. Herein, \(\mathbb{1}(\cdot)\) represents the indicator function, refer to Eqs. (25) and (27)

3.2 Calculation of lane change utilities

The calculation of lane change utilities is based on probability distributions of certain velocities. All velocities in Fig. 3 are assumed to follow Gaussian probability distributions, see Eq. (5) for an example. Therein \(\mu\in\mathbb{R}\) refers to the mean value and \(\sigma^{2}\in\mathbb{R}_{+}\) represents the variance. Measuring these velocities using the vehicles sensor system and employing a tracking algorithm introduces uncertainties. In the remainder of the contribution, lowercase letters for velocities always correspond to deterministic quantities whereas uppercase letter are used for random variables. The utility for a left lane change is calculated as follows:

$$\begin{aligned}\mathcal{U}_{\mathrm{L}}=\mathrm{max}(2\left(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)-0.5\right)-2\left(P\left(V_{\mathrm{LF}}\leq V_{\mathrm{E,des}}\right)-0.5\right)-2\lambda\left(P\left(V_{\mathrm{LB}}\geq V_{\mathrm{E,des}}\right)-0.5\right),0).\end{aligned}$$
(2)

Herein, the first term \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)\) gives the probability of the current driving lane being slower than the desired velocity and hence high values favor a lane change. The second term \(P\left(V_{\mathrm{LF}}\leq V_{\mathrm{E,des}}\right)\) balances the first term and gives the probability of the left lane being slower than the desired velocity. From the ego-vehicles perspective, it only makes sense to change lane to the left if speed can be gained through the change. Finally, the last term \(P\left(V_{\mathrm{LB}}\geq V_{\mathrm{E,des}}\right)\) considers potentially faster vehicles from the back that could influence the lane change intention. The offset \(-0.5\) and scaling factor 2 ensures that the probabilities are always in the range \(\left[0,1\right]\).

The utility for a right lane change is calculated slightly diffrent to account for european passing rules and faster vehicles behind the ego-vehicle:

$$\begin{aligned}\mathcal{U}_{\mathrm{R}}=\mathrm{max}(1-2\gamma_{1}\left(P\left(V_{\mathrm{RF}}\leq V_{\mathrm{E,des}}\right)-0.5\right)+2\gamma_{2}\left(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)-0.5\right)+2\gamma_{3}\left(P\left(V_{\mathrm{CB}}\geq V_{\mathrm{E}}\right)-0.5\right),0).\end{aligned}$$
(3)

The constant 1 introduces the right lane bias. Hence, if no vehicles are around the ego-vehicle, the utility is \(\mathcal{U}_{\mathrm{R}}=1\). The second term \(P\left(V_{\mathrm{RF}}\leq V_{\mathrm{E,des}}\right)\) represents the probability that the vehicle in front on the right lane is slower than the desired velocity. Such situation decreases the utility of the lane change to the right since it is often better to pass the slower vehicle first. In constrast, the probability \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)\) favors a lane change, since a high value indicates that the current driving lane is unsatisfactory. However, special care is taken to ensure the traffic rule, that vehicles should not be overtaken on the right. An additional constraint therefore ensures that \(\mu_{V_{\mathrm{RF}}}\leq\mu_{V_{\mathrm{CF}}}\). Finally, the last term \(P\left(V_{\mathrm{CB}}\geq V_{\mathrm{E}}\right)\) represents the probability that a vehicle with higher velocity than the current ego-vehicle velocity drives behind it. Note, in constrast to the remaining terms, this one uses the current velocity and not the desired velocity. This tipically occurs on the leftmost lane and in such cases, the ego-vehicle should show courtesy and quickly give way to the faster vehicle.

Note that other factors could be included into the utility functions. Assume that there are \(N_{\mathcal{U}}\in\mathbb{N}_{+}\) distinct utilities. One could be the above stated utility based on probabilities of velocity comparisons. Others could be based on instantaneous or predicted accelerations and the traffic density on the respective driving lanes. The resulting utility can be calculated using a convex combination of all individual utilities:

$$\begin{aligned}\mathcal{U}=\sum_{i=1}^{N_{\mathcal{U}}}w_{i}\mathcal{U}_{i}\end{aligned}$$
(4)

with \(w_{i}\in\mathbb{R}_{+}\) and \(\sum_{i=1}^{N_{\mathcal{U}}}w_{i}=1\).

All uppercase velocity variables are modelled using Gaussian probability distributions, for example:

$$\begin{aligned}p(V_{\mathrm{E,des}})=\frac{1}{\sqrt{2\pi\sigma_{V_{\mathrm{E,des}}}^{2}}}\exp\left({-\frac{(V_{\mathrm{E,des}}-\mu_{V_{\mathrm{E,des}}})^{2}}{2\sigma^{2}_{V_{\mathrm{E,des}}}}}\right).\end{aligned}$$
(5)

In order to calculate the probabilites in both utility functions Eqs. (2) and (3), differences of random variables need to be formed. For example:

$$\begin{aligned}P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)=P\left(V_{\mathrm{CF}}-V_{\mathrm{E,des}}\leq 0\right).\end{aligned}$$
(6)

The probability distribution \(p(\tilde{V})=p(V_{\mathrm{CF}}-V_{\mathrm{E,des}})\) is found by convolution:

$$\begin{aligned}p(\tilde{V})=\frac{1}{\sqrt{2\pi\sigma_{\tilde{V}}^{2}}}\exp\left(-\frac{(\tilde{V}-\mu_{\tilde{V}})^{2}}{2\sigma^{2}_{\tilde{V}}}\right),\end{aligned}$$
(7)

with the mean and variance:

$$\begin{aligned}\mu_{\tilde{V}}=\mu_{V_{\mathrm{CF}}}-\mu_{V_{\mathrm{E,des}}},\end{aligned}$$
(8)
$$\begin{aligned}\sigma_{\tilde{V}}^{2}=\sigma_{V_{\mathrm{CF}}}^{2}+\sigma_{V_{\mathrm{E,des}}}^{2}.\end{aligned}$$
(9)

Prior to the calculation of the probabilities, several mathematical expressions are introduced. The integral of a Gaussian distribution from minus infinity to a certain value \(x\) is denoted as:

$$\begin{aligned}\Phi_{\mu,\sigma}(x)=\frac{1}{\sqrt{2\pi}\sigma}\int_{-\infty}^{x}\mathrm{exp}\left(-\frac{(t-\mu)^{2}}{2\sigma^{2}}\right)\mathrm{d}t.\end{aligned}$$
(10)

The error function \(\mathrm{erf}(x)\) and complementary error function \(\mathrm{erfc}(x)\) are defined as:

$$\begin{aligned}\mathrm{erf}(x)=\frac{2}{\sqrt{\pi}}\int_{0}^{x}\mathrm{exp}\left(-t^{2}\right)\mathrm{d}t=1-\mathrm{erfc}(x).\end{aligned}$$
(11)

Eq. (10) can be expressed using the error-function or complementary error function as follows:

$$\begin{aligned}\Phi_{\mu,\sigma}(x)=\frac{1}{2}\left(1+\mathrm{erf}\left(\frac{x-\mu}{\sqrt{2}\sigma}\right)\right)=1-\frac{1}{2}\mathrm{erfc}\left(\frac{x-\mu}{\sqrt{2}\sigma}\right).\end{aligned}$$
(12)

The occuring probabilities in the utility functions Eqs. (2) and (3) can therefore be expressed as follows:

$$\begin{aligned}P(X\geq a)=\int_{a}^{\infty}p(x)\mathrm{d}x\end{aligned}$$
(13)
$$\begin{aligned}\displaystyle\qquad\qquad=\int_{-\infty}^{a}p(x)\mathrm{d}x-\int_{-\infty}^{a}p(x)\mathrm{d}x+\int_{a}^{\infty}p(x)\mathrm{d}x\end{aligned}$$
$$\begin{aligned}\displaystyle\qquad\qquad=1-\int_{-\infty}^{a}p(x)\mathrm{d}x\end{aligned}$$
$$\begin{aligned}\displaystyle\qquad\qquad=1-\Phi_{\mu,\sigma}(a)\end{aligned}$$
$$\begin{aligned}\displaystyle\qquad\qquad=\frac{1}{2}\mathrm{erfc}\left(\frac{a-\mu}{\sqrt{2}\sigma}\right)\end{aligned}$$

and

$$\begin{aligned}P(X\leq a)=\Phi_{\mu,\sigma}(a)=1-\frac{1}{2}\mathrm{erfc}\left(\frac{a-\mu}{\sqrt{2}\sigma}\right).\end{aligned}$$
(14)

The calculation of all relevant probabilities is illustrated in Fig. 5. It also illustrates the rational behind the factors 2 and \(-0.5\) in both utility functions Eqs. (2) and (3). Take for example \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)\) as shown in Fig. 5. The quantity \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)-0.5\) corresponds to the hatched area under the gaussian density function. In the case that \(\mu_{V_{\mathrm{CF}}}=\mu_{V_{\mathrm{E,des}}}\), this area is zero and hence \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}\right)-0.5=0\). This therefore realizes the desired behavior of the proposed module that this part of the utility function Eq. (2) is zero in that case. A lane change is of no utility in the case that the vehicle in front of the ego vehicle is faster than its desired velocity (\(\mu_{V_{\mathrm{CF}}}\geq\mu_{V_{\mathrm{E,des}}}\)). The hatched area has a maximum value of \(0.5\) so that the factor 2 in Eqs. (2) and (3) ensure that the respective utility is within the range of \([0,1]\). Note that \(\mu_{V_{\mathrm{CF}}}\) is bounded by \(\mu_{V_{\mathrm{E,des}}}\) to ensure that \(P\left(V_{\mathrm{CF}}\leq V_{\mathrm{E,des}}-0.5\right)\) is always a positive quantity. All other velocities are handled similarly.

Unfortunately, the calcuation of probabilities is analytically intractable. In this contribution, a rational approximation of the error function \(\mathrm{erfc}(x)\) is used. Specifically, the rational approximation using economized Chebyshev polynomials from [32] is utilized:

$$\begin{aligned}\mathrm{erf}(x)=1+-\left[t(a_{1}+t\left(a_{2}+t\left(a_{3}+t\left(a_{4}+a_{5}t\right)\right)\right))\right]\cdot\exp\left(-x^{2}\right)+\epsilon(x),\end{aligned}$$
(15)

with

$$\begin{aligned}t=\frac{1}{1+px}.\end{aligned}$$
(16)

The coefficients are the following:

$$\begin{aligned}p=0.3275911,\end{aligned}$$
(17)
$$\begin{aligned}a_{1}=0.254829592,\end{aligned}$$
(18)
$$\begin{aligned}a_{2}=-0.284496736,\end{aligned}$$
(19)
$$\begin{aligned}a_{3}=1.421413741,\end{aligned}$$
(20)
$$\begin{aligned}a_{4}=-1.453152027,\end{aligned}$$
(21)
$$\begin{aligned}a_{5}=1.061405429,\end{aligned}$$
(22)

and it achieves a maximum absolute error of:

$$\begin{aligned}|\epsilon(x)|<1.5^{-7}.\end{aligned}$$
(23)
Fig. 5
figure 5

Utility calculation based on Gaussian probability distributions. Generally, two random variables are subtracted by convolving their corresponding probability distributions. The integral (grey area in the figure) is analytically intractable and hence an approximation of the \(\mathrm{erf}(x)\) is used to evaluate it efficiently

3.3 Generation of lane change proposals

The utilities for a left and right lane change are calculated using Eqs. (2) and (3) respectively. Next, triggering criteria are defined using these quantities at the example of the left lane change proposal module. Two different mechanisms are discussed subsequently. As shown in Fig. 4, these are a memory and an accumulator. The rationale behind this choice is as follows. Typically, lane change decisions occur very fast in case the driver spots a slow truck on his current driving lane. In such situations, the utility for a lane change is rather high and the memory mechanism triggers the lane change quickly after the slow vehicle or truck is detected. On the other hand, humans tend to accept slight deviations from their desired velocity for longer times but eventually change lane to minimize travel time. The proposed accumulator mechanism is introduced for this purpose and its parameters are optimized such that it generally triggers after the memory. All aspects of the optimization are described in Sect. 4.

Every discrete algorithm timestep \(k\in\mathbb{N}_{0}\), the corresponding utilities over the last \(N_{\mathrm{M,L}}\in\mathbb{N}_{+}\) are averaged and result in \(\hat{\mathcal{U}}_{\mathrm{L}}(k)\in[0,1]\):

$$\begin{aligned}\hat{\mathcal{U}}_{\mathrm{L}}(k)=\sum_{i=k-N_{\mathrm{M,L}}+1}^{k}\frac{\mathcal{U}_{\mathrm{L}}(i)}{N_{\mathrm{M,L}}}.\end{aligned}$$
(24)

This way, noise in the detections and hence fluctuations in the utility have less strong implications and still lead eventually to a lane change proposal. The trigger itself is defined using the indicator function:

$$\mathcal{T}_{\mathrm{M},\mathrm{L}}=\mathbb{1}(\hat{\mathcal{U}}_{\mathrm{L}}(k)\geq\mathcal{U}_{\mathrm{T},\mathrm{L}})\colon{}=\begin{cases}0,&\hat{\mathcal{U}}_{\mathrm{L}}(k)<\mathcal{U}_{\mathrm{T},\mathrm{L}}\\ 1,&\hat{\mathcal{U}}_{\mathrm{L}}(k)\geq\mathcal{U}_{\mathrm{T},\mathrm{L}}\end{cases},$$
(25)

which means that the averaged utility \(\hat{\mathcal{U}}_{\mathrm{L}}(k)\) needs to be over a defined treshold \(\mathcal{U}_{\mathrm{T,L}}\in[0,1]\).

The discrete accumulator is governed by the following difference equation:

$$\begin{aligned}\mathcal{U}_{\mathrm{A,L}}(k)=\mathcal{U}_{\mathrm{A,L}}(k-1)+\mathcal{U}_{\mathrm{L}}(k)-\beta_{L}\mathbb{1}({\mathcal{U}_{\mathrm{A,L}}}\geq 0).\end{aligned}$$
(26)

Herein, \(\mathcal{U}_{\mathrm{L}}(k)\) represents the utility for the current discrete algorithm timestep \(k\) and \(\mathcal{U}_{\mathrm{A,L}}(k)\in\mathbb{R}_{+}\) is the accumulated utility. The rightmost term \(\beta_{L}\mathbb{1}({\mathcal{U}_{\mathrm{A,L}}}\geq 0)\) models a leakage with factor \(\beta_{L}\in[0,1]\) that is active as long as the accumulator state is not empty. The rationale behind this modeling choice is the following. There are situations on the highway in which the ego-vehicle has to deviate from its desired velocity temporarily. A typical situation is a cut-in maneuver of a surrounding traffic participant in front of the ego-vehicle. In this case, slowing down is crucial to maintain a safe distance to the new leader vehicle. The utility for a lane change rises in that case, however in case the deviation is only temporary, the leakage factor correctly models “forgetting” this event after a certain time. It furthermore introduces another degree of freedom that is exploited in the parameter optimization described in detail in Sect. 4.

The trigger is again defined using the indicator function:

$$\mathcal{T}_{\mathrm{A},\mathrm{L}}=\mathbb{1}(\mathcal{U}_{\mathrm{A}}(k)\geq\mathcal{U}_{\mathrm{A},\mathrm{T},\mathrm{L}})\colon{}=\begin{cases}0,&\mathcal{U}_{\mathrm{A}}(k)<\mathcal{U}_{\mathrm{A},\mathrm{T},\mathrm{L}}\\ 1,&\mathcal{U}_{\mathrm{A}}(k)\geq\mathcal{U}_{\mathrm{A},\mathrm{T},\mathrm{L}}\end{cases},$$
(27)

and hence it is checked that the accumulator state \(\mathcal{U}_{\mathrm{A}}(k)\) is above a defined and optimized threshold \(\mathcal{U}_{\mathrm{A,}{\mathrm{T,L}}}\).

Finally, the resulting trigger for proposal generation is realized using a logic OR operation. In case of binary variables, this is simply the addition of both distinct trigger signals:

$$\begin{aligned}\mathcal{T}_{\mathrm{L}}=\mathrm{max}\left(\mathcal{T}_{\mathrm{M,L}}+\mathcal{T}_{\mathrm{A,L}},1\right)=\mathrm{max}(\tilde{\mathcal{T}_{\mathrm{L}}},1)\in\{0,1\}.\end{aligned}$$
(28)

The above exposition also applies analogously for right lane changes.

4 Optimization of model parameters

This section introduces the optimization of all relevant parameters for the left and right lane change proposal model described in the contribution at hand. It also gives details of the driving simulator study for creating the dataset to enable parameter optimization.

4.1 Driving simulator study and scenarios

The goal of the developed model is to propose the driver of an automated vehicle a lane change when the traffic situation suggests that an advantage results from it. Hence, in order to optimize the parameters of the model, a dataset is needed. The dataset should include all sensor measurements and the trigger signal. It was collected using a driving simulator at the Institute of Control Theory and Systems Engineering at TU Dortmund University. The driving simulator mock-up is shown in Fig. 6. A total of eleven male drivers participated in the study. Nine participants were final year undergraduate students and have limited driving experience. One participant was a final year graduate student and the last one was a second year PhD student. Prior to the study, the task was clearly explained to the participants. The trigger signal was recorded using a specific button of the driving simulator mock-up. All participants were placed in several scenarios, refer to Table 1 and 2, with varying traffic situations Si,L/R and SA,L. Their task was to indicate their desire to do a lane change, independently of the safety of a lane change. This is very important since the developed model triggers the maneuver planning module in the automated driving stack, see Fig. 1. It is the task of the maneuver planning module to finally prepare for a safe lane change and position the ego-vehicle correctly next to a target traffic gap. The focus here is, therefore, solely on lane change intention based on dissatisfaction with the current driving lane.

The following advice was communicated to the study participants with respect to their task:

You will be placed in a total of 11 scenarios. Your vehicle is doing lane keeping and Adaptive Cruise Control (ACC). Assume that your vehicle also is able to perform automated lane changes. Your initial speed is \(30\,\text{m\,s}^{-1}\) which is also your desired velocity. By pushing the respective button on the steering wheel of the driving simulator mock-up, you can issue a lane change request to your automated vehicle. Assume that your vehicle will subsequently attempt to perform a lane change as soon as it is safe to change lanes based on the traffic situation. Hence, you do not have to worry about lane change safety since the vehicle takes care of it. Therefore, please push the button on the steering wheel as soon as you feel that your current lane is less beneficial compared to the target lane (left or right, depending on the scenario).

The scenarios were designed in a way to ensure that the model parameters can be optimized. This in turn means, that all influences in the utility functions Eqs. (2) and (3) needed to undergo variations. Tables 1 and 2 give an overview of the scenarios, the initial ROI velocities and their corresponding transitions for the left and right lane change cases, respectively. A top view of the scenarios S2,L and S2,R is given in Figs. 7 and 8 respectively. The dark vehicle in the middle always correspondes to the ego vehicle. Note how the traffic situation changes according to the velocity transitions. There is a special scenario SA,L for the optimization of the accumulator trigger module for the left lane change. In this scenario, the desired ego velocity is undershot only slightly, leading the temporal accumulation of dissatisfaction with the current driving lane. No such scenario is designed for the right lane change, since the german obligation to drive on the right-hand side of the road ensures a lane change if the traffic situation permits it. The desired velocity of the ego-vehicle is in all scenarios set fixed to \(v_{\mathrm{E,des}}=30\,\text{m\,s}^{-1}\). All surrounding traffic participants use an Intelligent Driver Model, refer to [16], with the standard parameters and are configured to stick on their corresponding initial lanes. The velocity transitions, therefore, happen because of the safe car-following behavior. Fig. 9, Figs. 10 and 11 show the driving simulator study participant’s timing distributions represented as histograms. The histograms suggest rather large variances, depicting that the driving styles of the participants vary to some degree.

Fig. 6
figure 6

Driving simulator of the Institute of Control Theory and Systems Engineering at TU Dortmund University. It was used for conducting the driving simulator study

Table 1 Description of left lane change scenarios, the ROI vehicle velocities and their transitions
Table 2 Description of right lane change scenarios, the ROI vehicle velocities and their transitions
Fig. 7
figure 7

Scenario S2,L (refer to Table 1) at three different times \(T_{1}=0\,\mathrm{s}\), \(T_{2}=7.5\,\mathrm{s}\) and \(T_{3}=15\,\mathrm{s}\). The velocity transition of the ROI velocity \(v_{\mathrm{CF}}\) from initially \(30\,\text{m\,s}^{-1}\) to \(10\,\text{m\,s}^{-1}\) is notable. a Traffic situation at \(T_{1}=0\,\mathrm{s}\), b Traffic situation at \(T_{2}=7.5\,\mathrm{s}\), c Traffic situation at \(T_{3}=15\,\mathrm{s}\)

Fig. 8
figure 8

Scenario S2,R (refer to Table 2) at three different times \(T_{1}=0\,\mathrm{s}\), \(T_{2}=7.5\,\mathrm{s}\) and \(T_{3}=15\,\mathrm{s}\). The velocity transition of the ROI velocity \(v_{\mathrm{RF}}\) from initially \(10\,\text{m\,s}^{-1}\) to \(40\,\text{m\,s}^{-1}\) is notable. Furthermore, the fast oncoming vehicle from the back has to break due to the presence of the ego vehicle and creates another motivation for the ego vehicle to change to the right lane. a Traffic situation at \(T_{1}=0\,\mathrm{s}\), b Traffic situation at \(T_{2}=7.5\,\mathrm{s}\), c Traffic situation at \(T_{3}=15\,\mathrm{s}\)

Fig. 9
figure 9

Timing distribution plots with corresponding fitted probability distributions and proposal timings of the optimized module for left lane change scenarios S1–S6, refer to Table 1. Herein, \(T^{\ast}_{\mathrm{M}}\) represents the proposal timing of the memory trigger and \(T^{\ast}_{\mathrm{A}}\) of the accumulator trigger module. a Left lane change scenario S1, b Left lane change scenario S2, c Left lane change scenario S3, d Left lane change scenario S4, e Left lane change scenario S5, f Left lane change scenario S6

Fig. 10
figure 10

Timing distribution plots with corresponding fitted probability distributions and proposal timings of the optimized module for the left lane change accumulator scenario SA, refer to Table 1. Herein, \(T^{\ast}_{\mathrm{A}}\) represents the proposal timing of the accumulator trigger module

Fig. 11
figure 11

Timing distribution plots with corresponding fitted probability distributions and proposal timings of the optimized module for right lane change scenario S1–S4, refer to Table 2. Herein, \(T^{\ast}_{\mathrm{M}}\) represents the proposal timing of the memory trigger and \(T^{\ast}_{\mathrm{A}}\) of the accumulator trigger module. a Right lane change scenario S1, b Right lane change scenario S2, c Right lane change scenario S3, d Right lane change scenario S4

4.2 Optimization procedure and results

The proposed module has several design-parameters. Using the scenarios that are described in Sect. 4.1 and the corresponding data of the driving-simulator study, the free parameters are optimized in a brute-force fashion. In the first step, a coarse search grid is used. Afterward, a finer grid is used around the optimal parameter values that the first coarse optimization yielded. The histograms of the lane change intention timing distributions and corresponding fitted probability distributions using Gaussian and Kernel Density (KDens) methods (see [33] and [34] for a more comprehensive treatment) are shown in Fig. 9, Figs. 10 and 11 for the left and right lane change scenarios respectively.

Next, the parameter vectors to be optimized are introduced. The first step of the optimization aims at the the following parameter vector for the left lane change module:

$$\begin{aligned}\xi_{\mathrm{M,L}}=\begin{bmatrix}\sigma_{v_{\mathrm{E,des,L}}}&N_{\mathrm{M,L}}&\mathcal{U}_{\mathrm{MT,L}}&\lambda\end{bmatrix}^{\intercal}.\end{aligned}$$
(29)

Therein \(\sigma_{v_{\mathrm{E,des,L}}}\in\mathbb{R}_{+}\) represents the desired velocity standard deviation of the ego-vehicle, \(N_{\mathrm{M,L}}\in\mathbb{N}_{+}\) the discrete timesteps \(k\) for averaging according to Eq. (24), \(\mathcal{U}_{\mathrm{MT,L}}\in\mathbb{R}_{+}\) the treshold of the memory trigger mechanism and finally the politeness factor \(\lambda\in\mathbb{R}_{+}\) in Eq. (2). The second optimization aims only at the accumulator trigger module parts:

$$\begin{aligned}\xi_{\mathrm{T,L}}=\begin{bmatrix}\beta_{L}&\mathcal{U}_{\mathrm{AT,L}}\end{bmatrix}^{\intercal},\end{aligned}$$
(30)

with the leakage factor \(\beta_{L}\in\mathbb{R}_{+}\) and the trigger treshold \(\mathcal{U}_{\mathrm{AT,L}\in\mathbb{R}_{+}}\), refer also to Fig. 4. The complete parameter vector is hence:

$$\begin{aligned}\xi_{\mathrm{L}}=\begin{bmatrix}\xi_{\mathrm{M,L}}^{\intercal}&\xi_{\mathrm{T,L}}^{\intercal}\end{bmatrix}^{\intercal}.\end{aligned}$$
(31)

Similar definitions for the right lane change model hold:

$$\begin{aligned}\xi_{\mathrm{M,R}}=\begin{bmatrix}\sigma^{2}_{v_{\mathrm{E,des,R}}}&N_{\mathrm{M,R}}&\mathcal{U}_{\mathrm{MT,R}}&\gamma_{1}&\gamma_{2}&\gamma_{3}\end{bmatrix}^{\intercal},\end{aligned}$$
(32)
$$\begin{aligned}\xi_{\mathrm{T,R}}=\begin{bmatrix}\beta_{R}&\mathcal{U}_{\mathrm{AT,R}}\end{bmatrix}^{\intercal},\end{aligned}$$
(33)
$$\begin{aligned}\xi_{\mathrm{R}}=\begin{bmatrix}\xi_{\mathrm{M,R}}^{\intercal}&\xi_{\mathrm{T,R}}^{\intercal}\end{bmatrix}^{\intercal}.\end{aligned}$$
(34)

Comparing Eqs. (2) with (3), it is obvious that only the weighting factors change in the utility functions.

The optimization for the left and right lane change model is mathematically stated as maximizing the \(\mathrm{log}\)-Likelihood of all respective scenarios:

$$\begin{aligned}\mathcal{L}_{\mathrm{TM,L}}(\xi_{\mathrm{M,L}})=\sum_{\mathrm{i}=1}^{6}\mathrm{ln}(p_{\mathrm{Si,L}}(T_{\mathrm{Si,L}}(\xi_{\mathrm{M,L}}))),\end{aligned}$$
(35)
$$\begin{aligned}\xi^{\ast}_{\mathrm{M,L}}=\underset{\xi_{\mathrm{M,L}}}{{\text{arg\,max\,}}}\mathcal{L}_{\mathrm{TM,L}}(\xi_{\mathrm{M,L}}),\end{aligned}$$
(36)
$$\begin{aligned}\mathcal{L}_{\mathrm{TM,R}}(\xi_{\mathrm{M,R}})=\sum_{\mathrm{i}=1}^{4}\mathrm{ln}(p_{\mathrm{Si,R}}(T_{\mathrm{Si,R}}(\xi_{\mathrm{M,R}}))),\end{aligned}$$
(37)
$$\begin{aligned}\xi^{\ast}_{\mathrm{M,R}}=\underset{\xi_{\mathrm{M,R}}}{{\text{arg\,max\,}}}\mathcal{L}_{\mathrm{TM,R}}(\xi^{\ast}_{\mathrm{M,R}}).\end{aligned}$$
(38)

Above formulation aims at maximizing the joint probability of the timings in all scenarios. First, \(\xi_{\mathrm{M,L}}\) and \(\xi_{\mathrm{M,R}}\) are optimized using the respective scenarios and therefore datasets from the driving simulator study. Specifically, the optimization is carried out using the KDens fitted probability distributions. Quantities with a star \(()^{\ast}\) subsequently denote optimized values. After that, the remaning parts for the accumulator trigger are optimized, again using a \(\mathrm{log}\)-Likelihood formulation:

$$\begin{aligned}\mathcal{L}_{\mathrm{SA,L}}(\xi_{\mathrm{A,L}})=\mathrm{ln}(p_{\mathrm{SA,L}}(T_{\mathrm{SA,L}}(\xi_{\mathrm{A,L}}))),\end{aligned}$$
(39)
$$\begin{aligned}\mathcal{L}_{\mathrm{TA,L}}(\xi_{\mathrm{A,L}})=\mathcal{L}_{\mathrm{SA,L}}(\xi_{\mathrm{A,L}})+\sum_{\mathrm{i}=1}^{6}\mathrm{ln}(p_{\mathrm{Si,L}}(T_{\mathrm{Si,L}}(\xi_{\mathrm{A,L}}))),\end{aligned}$$
(40)
$$\begin{aligned}\xi^{\ast}_{\mathrm{A,L}}=\underset{\xi_{\mathrm{A,L}}}{{\text{arg\,max\,}}}\mathcal{L}_{\mathrm{TA,L}}(\xi_{\mathrm{A,L}})\end{aligned}$$
(41)
$$\begin{aligned}\displaystyle\qquad\text{subject to }T^{\ast}_{\mathrm{Si,L,A}}\geq T^{\ast}_{\mathrm{Si,L,M}}~ \mathrm{i}=1,2,\ldots,6.\end{aligned}$$

Note here, that a constraint is imposed such that the optimized proposal timings using the accumulator trigger \(T^{\ast}_{\mathrm{Si,L,A}}\) are greater or equal than the ones of the memory trigger mechanism \(T^{\ast}_{\mathrm{Si,L,M}}\). The specially designed accumulator scenario is used in case of the left lane change model. Similary for right lane changes:

$$\begin{aligned}\mathcal{L}_{\mathrm{TA,R}}(\xi_{\mathrm{A,R}})=\sum_{\mathrm{i}=1}^{4}\mathrm{ln}(p_{\mathrm{Si,R}}(T_{\mathrm{Si,R}}(\xi_{\mathrm{A,R}})))\end{aligned}$$
(42)
$$\begin{aligned}\xi^{\ast}_{\mathrm{A,R}}=\underset{\xi_{\mathrm{A,R}}}{{\text{arg\,max\,}}}\mathcal{L}_{\mathrm{TA,R}}(\xi_{\mathrm{A,R}})\end{aligned}$$
(43)
$$\begin{aligned}\displaystyle\qquad\text{subject to }T^{\ast}_{\mathrm{Si,R,A}}\geq T^{\ast}_{\mathrm{Si,R,M}},~ \mathrm{i}=1,2,3,4.\end{aligned}$$
Table 3 Parameter optimization results regarding the memory trigger module

Table 3 shows the resulting optimized parameters values. It was found that imposing a lower bound and upper bound of the velocity standard deviations of the other traffic participants results in better performance. The best results are obtained by using a distance-dependent velocity standard deviation within the specified limits. The authors hypothesis is that this reflects the fact that humans are able to better estimate velocities when surrounding vehicles are closer to them. Modeling standard deviations distance \(d\) dependent takes this thought into account. Specifically, the following standard deviation is then used:

$$\begin{aligned} & \sigma_{\mathrm{ROI}}(d,\sigma_{\mathrm{ROI,P}})=\begin{cases}\sigma_{\mathrm{ROI,Min}},&\sigma_{\mathrm{ROI,P}}\leq\sigma_{\mathrm{ROI,Min}}\\ \sigma_{\mathrm{ROI,Max}},&\sigma_{\mathrm{ROI,P}}\geq\sigma_{\mathrm{ROI,Max}}\mathrm{\leavevmode\nobreak\ or\leavevmode\nobreak\ }\\ &\quad d> 75\,\mathrm{m}\\ \sigma_{\mathrm{ROI,Min}}+m\cdot d,&\mathrm{else}\end{cases}\end{aligned}$$
(44)

with:

$$\begin{aligned}m=\frac{\sigma_{\mathrm{ROI,Max}}-\sigma_{\mathrm{ROI,Min}}}{75\,\mathrm{m}},\end{aligned}$$
(45)

\(d\in\mathbb{R}\) the distance of a ROI vehicle to the ego-vehicle and \(\sigma_{\mathrm{ROI,P}}\in\mathbb{R}\) the standard deviation provided by the vehicle’s perception system.

The politeness factor \(\lambda\) indicates that the lane change intention is mainly driven by dissatisfaction with the current driving lane compared to the potential of the left adjacent lane. This was expected and is reasonable since the participants of the driving simulator study were informed that a maneuver planning module ensures safety. This potentially led to the fact that oncoming vehicles behind the ego-vehicle on the target lane were not that important compared to the other factors in Eq. (2). However, since \(\lambda\) did not vanish, it still helps to model the lane change intention more accurately. Further, the Table indicates that left lane change intentions are typically harder to model than the ones to the right lane. This was already observed during the driving simulator study, since all participants eventually passed slow vehicles on the right before signaling their lane change intention. Thinking about overtaking maneuvers, this behavior is reasonable and also observed in real traffic. Using this strategy increases the probability of a successful overtake. Signaling the lane change intention to early might confuse and/or influence the driver of the vehicle to be overtaken and result in accelerations that prevent being overtaken. The results of the time difference with respect to the mean timings over all study participants and all respective scenarios:

$$\begin{aligned}\overline{|\Delta T^{\ast}_{L}|}=|T^{\ast}_{\mathrm{SA}}-\overline{T}_{\mathrm{SA}}|+\sum_{\mathrm{i}=1}^{6}|T^{\ast}_{\mathrm{Si,L}}-\overline{T}_{\mathrm{Si,L}}|=16.47\,\mathrm{s}\end{aligned}$$
(46)

and

$$\begin{aligned}\overline{|\Delta T^{\ast}_{R}|}=\sum_{\mathrm{i}=1}^{4}|T^{\ast}_{\mathrm{Si,R}}-\overline{T}_{\mathrm{Si,R}}|=1.18\,\mathrm{s}\end{aligned}$$
(47)

underscore the good performance of the proposed models and reflects the fact that lane change intention to the right are easier to model. The mean deviation per scenario for the left lane changes is \(\frac{\overline{|\Delta T^{\ast}_{L}|}}{6}=2.75\,\mathrm{s}\) and seems suitable for the application in a modular automated driving system.

Table 4 Parameter optimization results regarding the accumulator trigger module

Table 4 reports the results of the accumulator parameters. The optimization is done using the specially designed accumulator scenario SA, refer to Table 1. Note, that the memory module does not generate a trigger in this scenario because of comparably low utilities, which is also reflected in Fig. 10 through the absence of the circle denoting the memory trigger timing \(T^{\ast}_{\mathrm{M}}\). For the left accumulator, the best parameter set without distance dependent standard deviation for other traffic participants is also analyzed. It can be seen that distance dependent standard deviation lead to better results with respect to the accumulator.

Figs. 9 and 11 show the resulting timings when the proposed model is run on the scenarios that are used in the driving simulator study. The results are convincing and reflect the study participant’s timing distributions well. Fig. 10 shows the result of the special test-scenario for the optimization of the accumulator. The result is satisfactory since the trigger timing \(T^{\ast}_{\mathrm{A}}\) is only roughly \(0.2\,\mathrm{s}\) later than the mean timing over all study participants.

We want to note, that the driving simulator study is limited in both the number of participants and scenarios. Hence, it cannot be claimed that the optimized parameters work well for other drivers that potentially have other driving styles. A larger dataset is needed to obtain results that generalize well. The driving style mainly determines the frequency of lane changes, especially for overtaking slower vehicles. It could be beneficial to group drivers into at least the three classes defensive, neutral and aggressive and obtain optimized model parameters for each class. Even then, application of the module in the vehicle should allow for easy adjustment of the module to the needs of the driver. The thresholds of the memory trigger and accumulator could be used for this adaption since they directly influence the frequency of lane change proposals.

5 Experimental evaluation on real data

This section discusses the application of the optimized model on real data from a ZF Group test vehicle. The vehicle is equipped with four short range radar sensors at the corners, one long range radar sensors at the front and one front-facing camera system. The tracking and fusions system provides estimates of the state vectors of the surrounding traffic participants together with their corresponding uncertainties. This section serves as an additional application illustration of the proposed module but does not imply validity in all traffic situations and for all drivers with their various driving styles. All data were post-processed for outlier removal and smoothing to enhance illustration. The data stream consists of recorded data of an overtaking maneuver. First, the vehicle merges onto the highway and the driver switches on ACC with the current ego vehicle velocity as set speed. The set speed is increased over time. A slower truck (\(v_{\mathrm{CF}}\approx 24\,\text{m\,s}^{-1}\)) is in front of the ego vehicle and the driver eventually decides to overtake it. After the succesful overtake, the ego vehicle drives a certain time on the left lane and eventually changes back to the right lane.

The results for a lane change to the left are shown in the left column of Fig. 12, specifically Fig. 12a, c and e. The ego velocity \(v_{\mathrm{E}}\) and its desired velocity \(v_{\mathrm{E,des}}\) is shown in Fig. 12a. Finally, the utility of a lane change to the left \(\mathcal{U}_{\mathrm{L}}\) and accumulator state \(\mathcal{U}_{\mathrm{A,L}}\) are shown over the global algorithm time. In the beginning, the ACC is switched off. It is switched on at \(t=2062\,\mathrm{s}\) global algorithm-time and \(v_{\mathrm{E,des}}=26.48\,\text{m\,s}^{-1}\) is set. Note that it is assumed that the desired velocity corresponds exactly to the ACC set speed that the driver chooses using the controls on the steering wheel. Afterward, the desired velocity is increased in certain steps. Finally, at \(t=2077\,\mathrm{s}\), it is set to \(v_{\mathrm{E,des}}=33.20\,\text{m\,s}^{-1}\). The utility \(\mathcal{U}_{\mathrm{L}}\) is shown in Fig. 12c. Comparing it to Fig. 12a, the rise starting at \(t=2065\,\mathrm{s}\) clearly corresponds to the jumps in the desired velocity. Fig. 12e shows the accumulated utility \(\mathcal{U}_{\mathrm{A,L}}\). Inspection of Fig. 12c and e reveals that both the triggers based on the memory and accumulator are set roughly \(7\,\mathrm{s}\) earlier than the turn indicator. Still, the earlier proposal seems appropriate. That is because the truck in front of the ego vehicle drives with a velocity of roughly \(v_{\mathrm{CF}}=24\,\text{m\,s}^{-1}\). Comparing this to the ACC set speed, refer to Fig. 12a, that is set at \(t=2065\,\mathrm{s}\) to roughly \(v_{\mathrm{E,des}}=30\,\text{m\,s}^{-1}\) and at \(t=2072\,\mathrm{s}\) then to \(v_{\mathrm{E,des}}=32\,\text{m\,s}^{-1}\), there is obviously an utility to change to the left lane in order to drive with the desired velocity, also clearly reflected in Fig. 12c. It can also be argued that the intention to change lane was probably determined earlier and the turn indicator was set after inspection of the traffic situation. Finally, the lane change intention is a hidden variable that cannot be measured and there is always a certain mismatch between the observed variable, here the turn indicator state, compared to the actual intention. Especially, in a modular automated driving system (Fig. 1), the safety inspection is part of the subsequent maneuver planning module such that an earlier proposal can be appropriate. Even when the vehicle is manually driven, there is a mismatch because the turn indicator state will be switched on after the driver conducts the manual safety inspection.

The left lane change discussed in Fig. 12 is part of an overtaking maneuver. The corresponding right lane change and relevant signals are shown in the right column of Fig. 12, specifically Fig. 12b, d and f. The desired velocity is still set to \(v_{\mathrm{E,des}}=33.20\,\text{m\,s}^{-1}\) as can be seen in Fig. 12b. There are actually slower vehicles on the right lane in front of the ego-vehicle. In light of this fact, it is reasonable that the utility \(\mathcal{U}_{\mathrm{R}}\) does not reach a condition to trigger the memory module. Part of the reason is also that during the driving-simulator study, no lane changes to the right were observed when slower vehicles were driving on the right lane resulting in a rather high threshold for the memory trigger. It can be seen in Fig. 12d and f that the turn indicator is switched to the right at roughly \(t=2147\,\mathrm{s}\) global algorithm-time. At this point, there is still a substantially slower vehicle with respect to the desired ego-velocity on the right lane. In fact, this vehicle is overtaken first and the lane change starts later at \(t=2164\,\mathrm{s}\). The accumulator reaches the trigger condition at \(t=2160\,\mathrm{s}\) again, resulting in a satisfactory result for the lane change to the right. In this case, it is questionable if switching on the turn indicator state this early when the intention to overtake a vehicle first is a sensible decision of the driver. In contrast, the postponed proposal seems sensible in order to not confuse surrounding traffic participants.

It is emphasized that above illustration does not substitute a complete acceptance test of the proposed module. A much larger dataset is needed for the optimization and validation. Finally, comparing timings of the turn indicator to the proposals of the module is also not the ideal metric to assess the performance of the proposed module, as was argued in the work at hand. This is because the turn indicator is switched on after a safety evaluation by the driver. Comparing this to the task description that was given to the driving simulator participants, refer to Sect. 4.1, the mismatch become obvious. Instead, the acceptance of the module by the driver of the automated vehicle is of much higher importance. This needs to be analyzed in the future.

Finally, algorithm runtimes are of great importance for the application in automated vehicles. The proposed module achieves a runtime of \(T_{\mathrm{run}}=\mu_{\mathrm{run}}\pm\sigma_{\mathrm{run}}=3.48\,\mu\mathrm{s}\pm 1.77\,\mu\mathrm{s}\) measured on a standard desktop PC. This indicates that the low computational complexity and allows for easy integration into automated vehicle software systems.

Fig. 12
figure 12

Results of the optimized lane change module applied on real data from a ZF Group test vehicle. The left and right column represent a lane change to left and right respectively. a Current and desired ego velocity regarding the left lane change. b Current and desired ego velocity regarding the right lane change. c Utility for a lane change to the left lane. d Utility for a lane change to the right lane. e Accumulator state for a lane change to the left lane. f Accumulator state for a lane change to the right lane.

6 Conclusion and outlook

This contribution presents a probabilistic model for discretionary lane change proposals in highway driving situations. The parameters of the model were optimized using data from a driving simulator study. The results show that the model is able to accurately mirror the driver’s lane change intentions and, therefore, to propose suitable discretionary lane changes. Evaluation of data from a real test vehicle also confirms the effectiveness and suitability of the model. The authors are of the opinion that the proposed functionality will play a considerable role in modular SAE Level 2+, Level 4 and Level 5 systems. In both latter cases, however, discretionary lane changes wouldn’t be proposed but directly handed-over to a maneuver planner for attempting their safe execution.

Future work will focus on the closed-loop integration of the module in the test vehicle. The driver’s acceptance requires careful integration into an automated driving system to ensure that just the right amount of proposals at the right times are generated. Therefore, a detailed study on the acceptance is necessary. This could be done running the optimized module online in the ZF test vehicle so that it proposes lane changes to the driver. The driver is afterwards asked if the proposals and their frequency were acceptable. Currently, predictions of the other traffic participant’s future movements are not used within the module. Using them could result in more accurate results since future braking maneuvers can be anticipated. Furthermore, a bigger dataset for parameter optimization is needed to ensure validity of the resulting optimized parameters. Ideally, this dataset is collected with a test vehicle by various drivers in real traffic. Using techniques from the field of machine learning, it seems possible to cluster the drivers based on their driving characteristics and derive certain sets of parameters from accounting for the driving style. Such adaption seems crucial for acceptance since some drivers rather want to avoid lane changes while others change lane even in the face of only a small utility of it. Finally, it seems promising to use more sophisticated global optimization algorithms like, for example, evolutionary strategies.