Advanced Driver Assistance Strategies for a Single-Vehicle Overtaking a Platoon on the Two-Lane Two-Way Road

Recently, the ever-increasing vehicle population has become a severe challenge to traffic safety, especially the problem of a single-vehicle overtaking a platoon on the Two-Lane Two-Way (TLTW) road. Platooning has the potential to improve traffic efficiency and safety. However, there exists a perilous situation of “Neither overtake nor give up” when the single-vehicle overtakes a platoon on the TLTW road. This paper presents a flexible framework to automatically filter a large quantity of Advanced Driver Assistance Strategies (ADAS) and select the most suitable driver assistance information for the single-vehicle overtakes a platoon on the TLTW road. A step-by-step Single Vehicle Overtakes Platoon (SVOP) algorithm is designed to generate the coarse ADAS, which had given plenty of consideration to the vehicle safety, traffic efficiency, and driving comfort. Then, this paper obtains the raw data about the single-vehicle overtakes a platoon on the TLTW by using CARLA, which can help us to get 20 drivers’ upper and down boundaries of both velocity and acceleration. In addition, the extracted ranges of velocity and acceleration are used to quantitatively analyse the drivers’ driving features and filter the ADAS information. Finally, a Bayesian nonparametric approach is developed to segment driver’s driving raw data temporal sequences into small analytically interpretable components without using prior knowledge. So that the accurately overtaking characteristics can be obtained, and the ADAS can be further filtered. Experimental results demonstrate that the obtained coarse ADAS are only valid in theory but not acceptable by most of the drivers. Nonetheless, by leveraging the nonparametric Bayes algorithm, the driver’s overtaking behavior can be divided into different primitives, from which some could obtain the driver’s acceptance range for the velocity and acceleration. 92.3% ~ 94.78% invalid SVOP ADAS could be filtered out by leveraging the primitive-based SVOP approach. Thus, after filtering, the overtaking scheme is the most acceptable strategy for drivers.


I. INTRODUCTION
Single vehicle overtakes platoon scenario in this paper refers to the scenario where a single vehicle (human-driven vehicle), following a platoon(human-driven vehicle or autonomous vehicle), tries to overtake the platoon step-by-step on the TLTW road [1]. It is one of the most complex and challenging driving scenarios for human-driven cars [2]- [4]. The latest statistical data indicates that TLTW roads serving as The associate editor coordinating the review of this manuscript and approving it for publication was Maurice Khabbaz . connectors and local roads occupy more than 60 percent on mileage extent in the urban traffic system [5]. Moreover, as the shared trunk highway, the TLTW road accounts for more than 95 percent of the total road mileage in the western region of China and plays an indispensable role in highway networks [6]. When operating on the TLTW road, the motorized vehicles must use the opposing lane to overtake the vehicles in front, which is ubiquitous in many developing countries in Asia, such as China and Vietnam. As the number of vehicles in the platoon increases, the single-vehicle may be trapped in the perilous situation of ''Neither overtake nor give up.'' VOLUME 8, 2020 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ It is common for platoons to appear on the TLTW road, and those overtaking behaviors lead to potential accident risks and traffic congestion [7], [8]. For the single vehicle, the typical process of overtaking a platoon usually consists of a closed-loop of ADAS generating, decision making (whether to accept ADAS or not), and control. Duo to uncertainties on both the gaps within the platoon and the acceptable gap range for the single-vehicle driver, ADAS generating and decision making are becoming the most crucial and challenging components. Thus, in order to make a single vehicle able to overtake the platoon smoothly and safely, both the ADAS generating and driver's acceptable range of kinematics parameters should be thoroughly investigated.
Many solutions have been developed to analyze and model the overtaking behavior on the TLTW roads, for example, Wang and Cartmell developed a mathematical model that enables the determination of safe passing sight distance and calculates the desired trajectory for overtaking in two-lane highways [9]. However, the approach only considers one single vehicle overtakes another single vehicle. Actually, the SVOP scenario requires the prior knowledge of, for example, platoon conditions (e.g., vehicle number or platoon length, gaps within platoon) [10], [11] and opposite vehicle conditions (e.g., the velocity of the opposite vehicle) [12]- [14], which makes it more challenging to get the driver assistant strategies. Also, since the gaps within the platoon are non-unique, the vehicle has different overtaking schemes by leveraging the different gaps, and every scheme will impact one or more aspects of traffic such as vehicle safety, traffic efficiency, and driving comfort, etc.
In order to know whether the generated ADAS will be accepted or not, recently, some cognitive methods of driver behavior feature have been implemented to obtain the characteristic parameters of driver behavior accurately. For example, Haneen Farah collected the data on the overtaking behavior of 100 drivers by analyzing the data features. The results show interesting and significant differences in the overtaking behavior of drivers depending on their age and gender [15]. Although this method has been successfully implemented in specific cases, it is still limited to be used to understand the context behind the behaviors and may need huge data storage resources. Thus, segmenting driver behavior into recognizable patterns can help us understand the driver's intention, and thereby facilitate storage-cost algorithms to practice, for example, non-parameter Bayesian (NPB) [16]- [19]. The NPB method is a common and exible way to model classification problems of driver behavior characteristics under uncertainties of the driver's driving patterns by providing a mathematically rigorous framework. For instance, wenshuo Wang, et al. analyzed the vehicle following data and got the driver's following behavior characteristics, because the following behavior exists all the time for two vehicles running in one lane [20]. Thus, segmenting complex driving behaviors into discrete patterns can facilitate the driver behavior characteristics obtaining process and reduce the computational cost and storage cost, especially for the issues in high dimensional space.
According to the discussion above, it is necessary to develop an approach that can semantically decompose the complex overtaking behavior into discrete states with less prior knowledge. However, the complexity and uncertainty of the SVOP scenario make it hard to find a mathematically rigorous united approach to generate the ADAS for SVOP scenario and filter the ADAS by capturing the driving behavior features. This paper will introduce a step-by-step SVOP algorithm, which can generate the ADAS for considering vehicle safety, traffic efficiency, and driving comfort. Also, a primitivebased framework, which can automatically decompose the drivers' driving behavior into several interpretable patterns with less prior knowledge by integrating Bayesian nonparametric learning algorithms, is introduced to filter the generated ADAS.
This paper can be seen as an extension of the author's previous work [6]. The main contributions of this paper are threefold.
• Developing a primitive-based SVOP approach to generate the ADAS information and filter out the invalid ADAS by learning the drivers' overtaking features on the TLTW road.
• Verifying the effectiveness of our proposed framework for both generating the ADAS and analyzing drivers' overtaking behavior features, through emulation driving data.
• Comparing the effectiveness of two methods for filtering the coarse ADAS and prove that the primitive based framework is better than using the raw driving data to get the boundaries of velocity and acceleration.
The remainder of this paper is organized as follows. Section 2 introduces the step-by-step SVOP algorithm and generates the coarse ADAS. Section 3 introduces the developed primitive-based framework. Section 4 displays the experiments and data collection. Section 5 discusses and analyzes the experimental results. Section 6 concludes this work and discusses future work.

II. STEP-BY-STEP SVOP ALGORITHM
In order to characterize the features of risk area when a single-vehicle overtakes a platoon, this paper first defines the critical position and critical time: before reaching the critical position, the single-vehicle could give up overtaking and return to the original lane, once the single-vehicle runs beyond the critical position on the opposing lane, it enters the risk area. The critical time is the time interval that the single-vehicle travels from the original lane to the critical position.

A. RISK AREA OF SVOP ON THE TLTW ROAD
(1) The conditions of safely overtaking are that: the singlevehicle should avoid collision with the opposite vehicle and maintain a necessary safe distance with the leader vehicle of the slower platoon. Above all, the sight distance and the three safe space headway of safely overtaking are as follows, where R denotes the sight distance for safely overtaking. The lower limit of sight distance R 1 for safely overtaking can be obtained by (1)∼(4).
(2) The conditions of safely returning to the original lane after giving up the overtaking are: maintaining the safe distance between the single-vehicle and the opposite vehicle, keeping the safe distance between the single-vehicle and the downstream vehicle in the slower platoon. At the same time, in order to avoid obstructing the rear vehicle, the speed of the single-vehicle should not be too low when it returned to the original lane. Above all, the sight distance and the two safe space headway of safely overtaking are as follows, The lower limit of sight distance R 2 for safely returning can be obtained by (6)∼ (8).
Selecting the smaller sight distance as the safely overtaking condition: Once the sight distance can meet, neither safely overtaking nor returning conditions, the vehicle is caught in the risk area. For analyzing the factors that affect the scope of risk area, this paper sets the parameters as follows, 1 = 2 = 5m, h 1 = 3s, h 2 = h 3 = h 4 = 2s(the saturation headway ranges from a low of 1.8s to a high of 2.4s [21]), v s = 80km · h −1 , v p = 60km · h −1 , and the length of the risk area is shown as Fig. 1. From Fig. 1 we can see that the overtaking risk area is related to the vehicle number in the platoon and the velocity of the opposite vehicle, that means the more vehicles in the platoon and the higher velocity of the opposite vehicle, a longer length of the risk area can become.
Since the single-vehicle has to use the opposing lane to overtake the platoon, the velocity of the opposite vehicle should not be affected. From Fig. 1 we can know that the unique way to decrease the length of the risk area is to reduce the vehicle number in the platoon, based on which this paper proposed the step-by-step single-vehicle overtakes platoon algorithm, as shown in Fig. 2 in the Gray box.

B. SINGLE-VEHICLE OVERTAKES PLATOON ALGORITHM PROCESS
This paper assumes that there exists a Cloud Computing Center (CCC) which could be seen as a realistic road infrastructure or a virtual information processing center, used for dealing with the vehicle motion information and outputting the velocity guidance strategies. The optimal ADAS selection process is shown in Fig. 2. Firstly the CCC makes sure that there exists the risk area for the single-vehicle overtakes the platoon. Secondly, the overtaking strategies are generated by the SVOP algorithm. At last, this paper selects the optimal strategy by considering the drivers' driving features. The SVOP process is as follows: Step 1: After the single-vehicle submits the overtaking application, the CCC obtained the essential motion information from all the vehicles, such as position, velocity, and acceleration. Additionally, the maximum acceleration, the maximum deceleration, and vehicle length should be obtained.
Step 2: The CCC predicts whether the single-vehicle will travel into the risk area or not. If the risk area is inexistent, the CCC will provide the safely overtaking signal to the single-vehicle.
Step 3: If the risk area exists as predicted, the CCC will selects two vehicles from the platoon to form the secure slot. Consequently, the single-vehicle could return to the original lane by leveraging the secure slot after accomplishing the first overtaking behavior.
Step 4: After outputting the velocity guidance information for the single-vehicle, the vehicle in front of the secure slot, and the vehicle behind the secure slot, the CCC selects the better strategies by matching the maximum acceleration and the minimum deceleration of the three vehicles.
Step 5: The single-vehicle, the vehicle in front of the secure slot, and the vehicle behind the secure slot have to travel as the speed guidance information provided by CCC. The single-vehicle sends the single-step overtaking completion signal to the CCC after accomplishing the overtaking behavior.
Step 6: The CCC updates the essential motion information of all the vehicles, repeats steps 2-4, and outputs the speed guidance strategy for the next overtaking process after receiving the single-step overtaking completion signal.
Two vital technical issues exist in the step-by-step SVOP algorithm: how to make the single-vehicle safely merge into the platoon in each step, and how to select the two vehicles to form the secure slot and get the coarse strategies for both the single-vehicle and the platoon. This paper will solve these two issues in the following two parts.

C. STRATEGY FOR SAFELY MERGING INTO THE PLATOON
Since a positive correlation exists between the length of the secure slot and the velocity of the single vehicle, when matching the two, it is indispensable to meet both the efficiency and the safety requirements; i.e., the velocity of the single-vehicle can neither be too low to restrict the velocity of the platoon nor be too high to increase the burden on the platoon to form the secure slot.
When the single-vehicle returns to the original lane, there exists two following relationships. One is the vehicle, which behind the secure slot, follows the single-vehicle. The other is the single-vehicle following the vehicle in front of the secure slot. This paper first researches the safe following distance between two vehicles and then gets the minimum secure slot for the single-vehicle merging into the platoon.

1) SAFE FOLLOWING DISTANCE BETWEEN TWO VEHICLES
This paper assumes that v r and v p denote the velocity of the rear vehicle and the preceding vehicle, respectively. The distance between the two vehicles is H , d a 0 and d a 1 denote the maximum deceleration of the rear vehicle and the preceding vehicle, respectively. t 3 denotes the reaction time of the driver, and t 4 denotes the time of deceleration increase. Once the vehicles stop, the safe distance between the two vehicles should be larger than .
Two velocity relationships occur between the preceding vehicle and the rear vehicle (1) The velocity of the rear vehicle is equal or greater than that of the preceding vehicle.
(2) The velocity of the rear vehicle is less than that of the preceding vehicle.

2) MINIMUM SECURE SLOT FOR MERGING
Since there are two velocity relationships between every two vehicles when following, as to the single-vehicle, the vehicle in front of the secure slot, and the vehicle behind the secure slot, there are four relationships among the three vehicles when the single-vehicle merges into the platoon. They are where v s , v p , v r denote the velocity of the single-vehicle, the preceding vehicle, and the rear vehicle, respectively. The minimum secure slot for the single-vehicle merges into the platoon under different velocity relationships are as shown in Fig. 3. From Fig. 3 we can know that, in every scheme, the left figure is the secure slot distributions under different velocity relationships, and the right figure is the length of the secure slot when setting the single-vehicle a specific velocity (36km/h, 72km/h, and 90 km/h). Also, we learn that, the length of the secure slot will extend 80 meters when the velocity of the single-vehicle is in some particular domain of velocity in scheme 1, 3, and 4. However, for scheme 2, the maximum length of the secure slot is less than 80 meters, which means this scheme needs the minimum slot to make the single-vehicle merge into the platoon in the same situation. In conclusion, for getting the minimum secure slot, the velocity of the single-vehicle should be less than that of the preceding vehicle, but higher than that of the rear vehicle.

D. SELECTING THE TWO VEHICLES TO FORM THE SECURE SLOT
The process of forming the secure slot is a multi-objective optimization process. This paper sets parameters as follows: v L denotes the speed limit of the two-lane two way, t 6 , t 9 , and t 10 denote the acceleration time, deceleration time, and the whole overtaking time of the single-vehicle, respectively, a 2 and d a 5 denote the maximum acceleration and the merging deceleration of the single-vehicle, respectively. During the whole process of SVOP, t 7 and t 8 denote the acceleration time of the preceding vehicle and the deceleration time of the rear vehicle, respectively. v k denotes the velocity of the rear vehicles in the platoon, where k = 1, 2, . . . , n − 1(n denotes the number of vehicles in the platoon), a 3 and d a 4 denote the acceleration of the preceding vehicle and deceleration of the rear vehicle, respectively. t 5 denotes the time headway of two adjacent vehicles in the platoon. The distance between the single-vehicle and the opposite vehicle is D, while k denotes the number of vehicles that be overtaken by the single vehicle in the first overtaking step. Also, the velocity of the opposite vehicle is considered constant.
The upper and lower limits of the whole overtaking time is as follows, Assuming that S 1 , S 2 and S 3 denote the traveling distance of the single-vehicle, the preceding vehicle, and the rear vehicle during the whole overtaking process, respectively.
The reason why the single-vehicle does the overtaking behavior is to increase operating efficiency, based on which this paper set the maximum traveling distance as the first optimal object (Z 1 ). For increasing safety, the frequency of overtaking behavior should decrease, which means the single-vehicle should overtake as many vehicles as possible in every single step. Since the distance between the singlevehicle and the rear vehicle should larger than 0 and be as less as possible, the second optimal object is Z 2 . Also, in order to keep comfort, the absolute value of both the acceleration and deceleration should be as small as possible. So that the third optimal object is Z 3 . The multi-objective optimization functions in the single step of the SVOP algorithm are as follows.
For the constraints, the first three items are the range of both acceleration and deceleration. The following five items are the velocity limitation and time limitation, for the singlevehicle and the preceding vehicle, the maximum velocity should less than the velocity limit on the road, both the acceleration time and the deceleration time of the singlevehicle, the acceleration time of the preceding vehicle, the deceleration time of the rear vehicle should all be less than the whole overtaking time. The last two items are the safety conditions for both the single-vehicle follows the preceding vehicle, and the rear vehicle follows the single-vehicle. The constraint condition is as follows.
In general, the coarse ADAS information could be generated once the multi-objective optimization problem has been solved. The author has detailed the optimization process in the previous work [6].

III. DRIVING FEATURE OBTAIN ALGORITHM
This paper divides the driving process into different primitives, each representing a kind of driving behavior. The different display order of primitives shows the driving features of different drivers. The conversion process of different primitives could be viewed as the probabilistic inference process. In this work, we view the dynamic process of primitive driving patterns in lane-changing behaviors as a Markov process. Thus, driver behaviors can be modeled based on the structure of Hidden Markov models.
The core of HMM consists of two layers: a layer of hidden state and a layer of observation or emission, as shown in Fig. 4, where the shaded nodes are observations, and the unshaded nodes are latent states. Given a time-series data sequence B = {b t } T t=1 and a set of hidden state A, each hidden state A t at time t will be subject to one entry of A. The transition probability from hidden   The observation b t at time t given hidden state A t is generated by B t = f B t |A t , x A t , called the emission function. Therefore, the HMM can be described as  where f (·) is the emission function and x A t is the emission parameter. Drivers behaviors, however, are changing and open, such that the parameter space regarding hidden states in the model becomes potentially infinite. Specifically, the dimension of the set space of hidden states |A|, is unknown. In such situations, we must define a prior probability distribution on an infinite-dimensional space. A distribution on an infinite dimensional space is a stochastic process with a specific path. Usually, the Dirichlet processes (DP) rapidly yield intractable computations. In what follows, we will introduce a hierarchical DP (HDP). We assume that the number of latent states is previously unknown and these modes of HMM are subject to a specific distribution defined over a measure space. The Dirichlet process (DP) is a measure on measures, denoted by DP (α, H ), and provides a distribution over discrete probability measures with an infinite collection of items on a parameter space that is endowed with a base measure H . The Graph model structure of DP is shown in Fig. 5. Here, the weights β i sampled by a stick-breaking construction and we denote β ∼ GEM (γ ), with β = [β 1 , β 2 , β 3 , . . . ] and i=1 β i = 1.
According to the above discussion, an HDP can be used to define a prior state on the set of HMM transition probability measures G j,i .
where δ θ i is amass concentrated at θ. Assuming that each discrete measure G j is a variation on a global discrete VOLUME 8, 2020 measure G 0 , thus the Bayesian hierarchical specification takes G j ∼ DP (α, G 0 ), where G 0 is draw from DP(γ , H ): Since Wen-Shuo and Zhao [23] has compared HDP-HMM, HDP-HSMM, and sticky HDP-HMM methods, sticky HDP-HMM has the same sample structure as the HDP-HMM(HDP-HSMM has a more complex structure), and it could obtain a similar amount of the primitive driving patterns with the HDP-HSMM approach(HDP-HMM method get the fewest primitive driving patterns) so that this paper select the sticky HDP-HMM method to generate the driving primitives.
For the sticky HDP-HMM(γ , α, H ), by adding an extra parameter κ > 0, that biases the process toward selftransition in (26), increasing the expected probability of self-transition by an amount proportional to κ. The graphic illustration is shown in Fig. 6, Therefore, we can obtain All the hyper-parameters are set as a Gamma distribution for the convenience of estimating the posterior probability of hidden states. This method has been used and proved in [19]. We use the leave-one-out cross-validation method for splitting data into nine training data sets and one testing data set. We evaluate the utility of the developed approach to segment different lane-changing driving data sequences into primitive driving patterns based on the ability of the learned models to predict the duration of each primitive driving pattern for the test data. Similar to [19], predictive log-likelihood is employed to evaluate the fidelity of the learned models. For each driver and corresponding test datasets, we apply the training data to learn parameters of the sticky HDP-HMM model, and then the learned model is used to predict the probability distribution of durations for each primitive driving pattern at each frame of the test data.

IV. SIMULATION EXPERIMENT AND RESULT ANALYSIS
This paper divides the simulation section into two parts. One is the mathematical simulation part, which used for generating the coarse ADAS information, while the other is the CARLA experiment, which is used for obtaining the raw data of overtaking behavior.

A. MATHEMATICAL SIMULATION DISCUSSION
To generate the coarse ADAS information for the singlevehicle, this paper sets the essential vehicle motion parameters as Table 1.
Based on the SVOP algorithm mentioned in the section II, the coarse ADAS information for the single-vehicle was manifested in Table 2.

B. OVERTAKING STYLE EXPERIMENT
Since the drivers could not accept all the guidance information for overtaking a platoon, the optimized results should be filtered according to drivers' driving style.
In order to observe how a human reacts to situations in the presence of a platoon and extract the boundaries of velocity and acceleration with specific characteristics, an experiment is done with some reasonable assumptions. We observe 20 human drivers' overtaking behavior in the presence of a platoon. This paper repeated the experiment for 20 times for each driver on the same settings. For this experiment, we make a CARLA [24] simulation of a platoon moving with a certain velocity and time headway between vehicles. The platoon moves in the right lane, whereas the Human-driven vehicle starts from the left lane, as shown in Fig. 7, bottom of the black block part.
At the same left lane and a particular distance of 300 meters, an obstacle vehicle is placed to act as a hindrance. The human-driven vehicle is expected to overtake the platoon and avoid a collision with the obstacle vehicle, and at the same time, we observe what slot the driver selects in the presence of the platoon. Inside the Human-driven vehicle, i.e., the ego-car, the driver is able to see towards the front, left, right, and back according to their condition by changing the camera as shown in Fig. 7, the part circled red. The data of change in camera gaze is also recorded for further analysis. After generating the overtaking raw data, the overtaking trajectory for each human-driven vehicle is obtained, as shown in Fig. 8, from which we can know that different drivers have different inflection point for overtaking (The curves in different colors represent the overtaking trajectories of different drivers). Also, the inflection point changes in every experiment for the same driver, which means that these drivers have different acceptance of time to collision(TTC: the distance between the single-vehicle and the preceding vehicle divided by the sum of velocity of the single-vehicle     and the preceding vehicle), and for the same driver, the overtaking style changes under different traffic conditions. We can decipher the distribution of acceleration and velocity for each driver, as shown in Fig. 9 and Fig. 10 (The boxes in different colors represent the maximum, minimum, and average value of velocity and acceleration for different drivers in every experiment), from which we learn the   range of velocity and acceleration that could be accepted by the driver. However, we cannot get the accurate driver behavior characteristics with some rare event existing in the statistics.

V. DATA PREPROCESSING AND PARAMETERS SETTING
Early on, Gipps [25] proposed a deterministic lane-changing model concept based on gap-acceptance, in which a driver's behavior is governed by two primary considerations: maintaining the desired speed or being in the correct lane for an intended turning maneuver.
For our experiment, the human drivers have two performances in the overtaking process, adjusting velocity in the left lane and merging into the platoon. Since the humandriven vehicle can drive straight with high speed in the left lane, it does not need to change the lane, based on which we consider that these two things are in order. This paper set the last two primitives as the velocity adjusting primitive and the lane-changing primitive, respectively. We can determine the time to collision characteristics of the singlevehicle from the penultimate primitive and the characteristics of relative velocity with the platoon and acceleration from the last one primitive.
Since the raw data, generated by the simulation experiment, is not enough to fit the real parameter distribution of overtaking behavior, this paper assumes that all the parameters follow the Gaussian process, based on which we divide the TTC into 3 clusters. At the same time, we divide the relative velocity and acceleration into 4 clusters. The classification standard of driving style parameter is shown in Fig. 11 (a) and (b). The statistical results are shown in Table 3.
We can get the corresponding TTC and v from the coarse SVOP ADAS information by using (28) and (29). Also, a could be obtained from the coarse SVOP ADAS information directly.
Here, for clarity and concision, we only show three experiment results from representative trails of each driver ( 1 ∼ 4). An example of segmentation results using the sticky-HDP-HMM approaches is shown in Fig. 12∼Fig. 15. Fig. 12∼Fig. 15 presents examples of primitive extraction results for the driving process from the operation beginning to the end of lane-changing. We note that the sticky HDP-HMM can automatically learn primitives and assign the primitives with similar attributes to the same cluster, labeled with the same color, from which we can see that the driving process is composed of different driving primitives. Not only do different drivers have a variety of performance, but the same driver has different performance in a different experiment. For instance, the TTC, v, and a curves in the second and third experiment for both driver 1 and driver 2 are similar. We cannot tell the difference in detail. However, driving primitives could show us the truth. Since we divide the lanechanging process into two parts, the TTC value, v and a value could be obtained from the penultimate primitive and the last one primitive, respectively. The duration time of both the two primitives is the preparing time for the driver to adjust velocity and change the lane. In this paper, we get the TTC, v, and a value, which in the left boundary of the primitive, as the statistic result.
For each driver with single-vehicle overtaking platoon events, the normalized probability of each pattern is computed by where m is the number of drivers for the experiment, g(m) is the driver's driving style. i, j, k represent the relative velocity, acceleration, and time to collision, respectively. f m ij,k is the quantity of one driving style. Thus, we obtain the normalized frequency distribution for each driver with three time to collision patterns (i.e., long time range, middle time range, and short time range). Each primitive driving pattern is clustered and labeled according to Table 3. Fig. 16 shows examples of the normalized frequency distribution of primitive driving patterns for four drivers. Green represents that the driver has a higher probability of acting in this pattern, and blue represents that the driver has a lower probability (nearly equal to zero) of driving in this pattern. For instance, in the long TTC range, driver 1 prefers to change to the lane with the low relative velocity and acceleration. Driver 2 tends to change to the lane with a high relative velocity and acceleration. Driver 3 likes to change to the lane with the high relative velocity and the tiny acceleration, while driver 4 often changes to the lane with the low relative velocity and the vast acceleration. The different overtaking styles represent the different status adjustments before changing the lane. For instance, driver 1 and driver 3 tend to adjust the velocity in the original lane, so that they will not make the big velocity adjustment after changing the lane. Driver 2 and driver 4 tend to change the lane first and then make the velocity adjustment according to the platoon headway. When a single vehicle overtakes the platoon in a middle or short TTC range, our proposed approaches can also provide an intuitive explanation for researchers.
We can get the acceptable SVOP ADAS strategies by analyzing the raw data of velocity and acceleration for each driver from Fig. 9 and Fig. 10. Also, once we determine the overtaking pattern by analyzing the primitive statistic results, we can get the accurate SVOP ADAS information from the coarse strategy set. We transfer all the coarse SVOP ADAS strategies into the form of time to collision, relative velocity, and acceleration by leveraging (28) and (29), as shown in Fig. 17, in which every point represents one kind of SVOP strategy, more especially, the points with light blue color, are the acceptable strategies for the driver by considering the velocity and acceleration boundaries. As the same, the points with red color, are the accurate SVOP ADAS strategies for the driver by considering the overtaking pattern. We can see that, for each driver, the position and proportion of both the acceptable and the accurate SVOP ADAS strategies are different; for instance, driver 4 has the maximum range of acceptable SVOP strategy, but for the accurate SVOP strategies, driver 3 has the largest strategy set. The number of different ADAS sets is shown in Table 4. we can learn that 57.97% ∼ 84.6% invalid SVOP ADAS could be filtered out by considering the drivers' upper and down boundaries of both velocity and acceleration. Also, 92.3% ∼ 94.78% invalid SVOP ADAS could be filtered out by leveraging the primitive-based SVOP approach.

VI. CONCLUSION
This paper provided a primitive-based SVOP approach with unsupervised learning to filter the generated ADAS by learning the drivers' overtaking patterns. The step-by-step SVOP algorithm was employed to get the coarse ADAS by considering vehicle safety, traffic efficiency, and driving comfort. The Bayesian nonparametric learning was employed to segment the driver's overtaking raw data into driving primitives, which be used to filter the generated ADAS. Experiment results from simulation driving data indicate that the generated ADAS are only valid in theory but not acceptable by most of the drivers, the human overtaking patterns on the TLTW road could be decomposed into finite kinds of semantically interpretable groups. The distributions of driving primitives of several drivers were investigated, which demonstrated that the distribution of human overtaking patterns could be used to filter the coarse ADAS. The primitive-based SVOP approach presented in this paper is suitable to generate and filter the ADAS for the human-driven vehicle overtakes platoon on the TLTW. Although all the vehicles in our paper are with the same type (vehicle length) because of the limitation of data, our proposed framework could be easily extended to the platoon with different vehicle types, which will be one of our future work.
The Bayesian nonparametric method developed in this paper is based on a mathematically rigorous framework, which can be used to filter the ADAS by analyzing the overtaking raw data. Also, it can analyze other raw driving data, such as vehicle following behavior and drivers' stress response behavior data. The collected data in this paper only consists of all the vehicles are with the same type, and the communication between vehicles is reliable. Hence, our future work will be articulated around two axes. The first one is to extend the developed method to multi-type of vehicle, which means the vehicles in the platoon will have the different kinematics parameters, for example, vehicle length, maximum and minimum acceleration, and maximum velocity. In this way, more features of platoon presenting on the TLTW road can be extracted, thus allowing us to take further analysis of complex interactions among road users. The second objective is to consider other factors that could impact the V2V communication, such as delay and packet loss. Semantically understanding the drivers' overtaking patterns on the TLTW road could provide a set of recognizable discrete states about complex dynamic systems, thereby benefiting for ADAS filtering to guarantee the step-by-step SVOP strategies to be accepted by drivers.