# A Novel Method for Predicting Vehicle State in Internet of Vehicles

Authors: Yanting Liu; Ding Cheng; Yirui Wang; Jiujun Cheng; Shangce Gao
Journal: Mobile Information Systems
 (2018)

---

## Abstract

In the fields of advanced driver assistance systems (ADAS) and Internet of Vehicles (IoV), predicting the vehicle state is essential, including the ego vehicle’s position, velocity, and acceleration. In ADAS, an early position prediction helps to avoid traffic accidents. In IoV, the vehicle state prediction is essential for the required calculation of the expected reliable communication time between two vehicles. Many approaches have emerged to perform this vehicle state prediction. However, such approaches consider limited information of the ego vehicle and its surroundings, and they may not be very effective in practice because the real situation is highly complex and complicated. Moreover, some of the approaches often lead to a delayed prediction time due to collecting and calculating the substantial history information. By assuming that the driver is a robot driver, which eliminates distinct driving behaviors of different persons when facing the same situation, this paper creates a decision tree as a new quick and reliable method adapted to all road segments, and it proposes a new method to perform the vehicle state prediction based on this decision tree.


---

## Body

## 1. Introduction

Advanced driver assistance systems (ADAS) installed in vehicles use sensing and computing technologies to assist drivers in avoiding traffic accidents. Predicting the positions of surrounding vehicles is a crucial problem, and it facilitates the early detection of potential collisions. In Internet of Vehicles (IoV), one of the most important foundations for the network connectivity is the vehicle state, including its position, velocity, and acceleration. This importance is because the vehicle state is a deterministic characteristic for communicating among vehicles and infrastructures. Therefore, a common requirement is to calculate the expected reliable communication time quickly in various road segments when two vehicles are to communicate with each other. The vehicle state can influence the network topology of IoV where the location between two vehicles determines the communication range and their velocities and accelerations affect the stability of network topology [1–3]. The routing protocol based on location is particularly important due to its adaptability for frequently changing IoV [4]. Alsaqour et al. found that the inaccurate location obviously decreased the efficiency of the routing protocol [5]. Thus, a neighbor wireless link break prediction was proposed to predict the neighbor node’s location so as to detect the ineffective node by using their velocities and accelerations [6]. However, this method is just suitable for short-time and short-distance prediction because the accelerations of vehicles may significantly change according to changing environments. Consequently, the vehicle state prediction is necessary and essential for IoV.A decision tree is an effective method for evaluating the behaviors of vehicle drivers; some studies include a decision tree to predict or monitor vehicle drivers [7, 8]. Ahmed presented a method to predict the vehicle state, in which a decision tree was used to determine whether the vehicle changed its lane and to obtain the lane after the vehicle changed lanes [9]. Kedowide et al. used a decision tree to monitor the vehicle driver and log the driving activities, such as to evaluate whether the driver was performing the blind spot check, integrated with the behaviors of the driver [10].The aforementioned methods are primarily used in advanced driver assistance systems (ADAS) to avoid collisions on the planned trajectories of vehicles and considering limited information about the ego vehicle and its surroundings. Moreover, a delayed prediction time will arise when history data need to be collected. Although some studies have employed a decision tree to quickly make judgments, the decision tree does not use much road and environment information and does not perform predictions across all road segments.This paper proposes a new approach based on a decision tree that considers more information about the ego vehicle, its surroundings, and driver behaviors in varieties of road segments and without a delayed prediction time because no history data are collected as in some previous methods. This approach saves time and reduces the precious prediction time. According to information of the ego vehicle, roads, traffic lights, other surrounding vehicles, and so forth, our approach prejudges the driving behaviors of the ego vehicle, and then a decision tree is adapted to all road segments. Thus, the state of the ego vehicle, including its position, velocity, and acceleration, can be predicted based on a previously created decision tree. Such a decision tree with considerable useful information including more road surrounding cases helps to predict the vehicle state more accurately in some complex and complicated environments and without a delayed prediction time. The decision tree has advantages such as quick situation judgment and easy extension to more complicated problems with more determination conditions to be adapted to all road segments.The contributions of this paper can be summarized as follows: (1) This paper defines three varieties of road segments: section, intersection, and transition. Based on the definitions in System Representation, this work extracts different behaviors in distinct road segments. These defined behaviors are introduced in Driving Behavior Modeling. (2) To predict the vehicle state from the behavior, we use a decision tree in all road segments, which is illustrated in State Prediction. The decision tree includes the predefined road segment situations and has advantages such as fast situation judgment and easy extension to more complicated problems with more determination conditions to be adapted to more road segments. We discuss the state prediction by taking advantage of the decision tree, which allows our work to predict the vehicle state through the decision tree.The remainder of this paper is organized as follows. Section2 gives the past works in vehicle state. Section 3 presents an overview of the system. Section 4 delineates several models of driving behaviors. Our prediction approach is described in Section 5. The numerical results are presented in Section 6. Finally, the conclusions of this paper are drawn in Section 7.


## 2. Related Works

Researches about vehicle state can be classified as three parts, that is, environments, maneuvers, and trajectories [11]. Environments are components of conducting vehicle behaviors. Various approaches have been done to discuss vehicle behaviors in different driving environments. In [12], a detection-by-tracking method was used to detect vehicles in a spatiotemporal environment. In [13], intersection driving and nonintersection driving were distinguished by histograms of scene flow vectors. In [14], a dynamic driving environment was established for detecting the vehicle motion. Maneuvers such as overtaking [15], turning [16], and changing lanes [17] are investigated to analyze the vehicle motion on the path. Overtaking behavior is implemented generally by using some devices to detect vehicles in front of the ego vehicle [15, 18, 19]. When overtaking conditions are satisfied in search space, vehicles will realize an overtaking maneuver. Turning behavior is another usual maneuver for vehicles. Detecting the yaw rate can judge the vehicle turning behavior [20]. Adopting a clustering of 3D points to analyze vehicle’s shape can also handle a turning behavior [21]. In [17], changing lanes was achieved by establishing a dynamic Bayesian network based on practical data. Trajectories composed of a set of sequences of positions and velocities with a time window are used to extract vehicle behaviors in the past few years. In [22], a Gaussian mixture model was utilized to predict long-term trajectories of vehicles. On the highway, trajectories were constructed using a stereo vision and clustering method [23].Besides the study of practical vehicle state, many approaches have emerged to obtain a credible vehicle state prediction. Hermes et al. predicted the position of a vehicle after several seconds using the history information of the vehicles [24]. Hermes et al. extracted a large number of vehicle trajectories to perform data training based on trajectory classification technology, in which trajectories were classified into several behaviors, such as left-handed rotation and right-handed rotation, and then they classified the existing trajectories [25]. In addition to objectivities, some researches added drivers’ subjective purposes such as left turn, right turn, and changing lanes into the prediction models [26, 27]. A prediction technology for a motorcade formed by several vehicles was proposed by Pandita and Caveney, and in their approach, how a car follows was simulated using the smart driver model [28]. Additionally, a technology that combined the motion model and maneuver recognition was validated, in which probabilistic finite-state machines, fuzzy logics, and driving context recognitions were involved to predict a vehicle trajectory [29–31]. Petrich et al. used additional information from a digital map to enable a stochastic filter to select a representative set of reasonable trajectories [32]. Kumar et al. predicted the lane change intention online using a support vector machine and Bayesian filtering [33]. Yao et al. learned a simplified trajectory set using a collection of lane change trajectories from real driving data [34]. By introducing essential maneuver recognition, Houenou et al. predicted the vehicle trajectory using the constant yaw rate and acceleration motion model [31], which was widely and importantly used in [35–37]. These prediction technologies need more history information of vehicles; meanwhile, the impact of lane and traffic light on trajectories of vehicles is ignored. The trajectories of vehicles are restricted by lanes; however, a digital map based on the routing protocol can offer information of lanes to improve routing efficiency of IoV. Vehicle state prediction can also use the digital map and traffic light to enhance the accuracy of location prediction of vehicles [32, 38].


## 3. System Overview

### 3.1. Motivation

Vehicle state prediction is suitable for IoV in city scenario, integrating the digital map, traffic light, and surrounding vehicles. It models the driver’s behavior in different traffic environments. In this paper, according to the driver’s behavior, a decision tree is established to describe vehicle state in diverse conditions. Vehicle state prediction is an important part of the connectivity model in IoV, which is proper for predicting the positions of vehicles and dynamic changes of links. Taking advantage of information IoV provides, vehicle state can be predicted to further guide the driver to adopt several operations in order to implement a better trajectory of vehicle and save time. Nevertheless, the primary purpose of the vehicle state prediction is not to find an optimal route but to predict the vehicle state in next seconds. The vehicle state contains the position, velocity, and acceleration of vehicle. The change of vehicle state can influence the topology of IoV. For example, position can determine whether two vehicles are accessible to communicate with each other, whereas velocity and acceleration influence the stability of network topology. These factors could finally affect the survival time of links among vehicles. Hence, vehicle state prediction is mainly to calculate the survival time of links so as to guarantee to achieve a better communication among several vehicles and maintain a steady structure of IoV. Meanwhile, it also offers an effective method to construct a reasonable route.


### 3.2. System Architecture

The vehicle state prediction proposed in this paper is designed specifically to be used in Internet of Vehicles (IoV). It is assumed that the state prediction is hosted by the server that maintains the states of vehicles on the Internet. This assumption is often considered to be a reasonable assumption. Each vehicle manages its state prediction via a virtual object. Nowadays, the virtual object plays an important role in Internet of Things to implement its virtualness and service [39]. For IoV, virtual objects implement the communication among vehicles and provide a practical application for managing vehicles. Position-based and map-based routing protocols in the previous literature are widely accepted routing protocols in IoV based on position and path. Cheng et al. [40] classify notable routing protocols into routing categories for performing routing. Both position-based and map-based routing protocols require vehicles to send their state information to the server, which is generally distributed, when a source vehicle needs to communicate with other vehicles periodically. The server destination node first queries the state information of the destination from the server and then sends data toward the vehicle at the position. The position of the destination will often change during data forwarding; thus, if the position of the destination could be predicted, it would improve the routing performance. Moreover, by predicting vehicle states in a forward routing path, the server has the ability to calculate the expected reliable communication time between two vehicles and then calculate the connectivity of the path, which helps to select a stable path from multiple paths. When a source queries for the position of a destination, the server could send the predicted state and the optimal forward routing to the source, which will also improve the routing performance.


### 3.3. System Representation

The following describes the vehicle information that will be used in this work:(i)
The position of a certain vehicle at a certain time can be represented using a two-dimensional column vector:(1)pt=xt,ytT.(ii)
The velocity of a certain vehicle at a certain time can be represented as follows:(2)vt=vxt,vytT.(iii)
The acceleration of a certain vehicle at a certain time can be expressed as follows:(3)at=axt,aytT.(iv)
The length of a certain vehicle isl. Specifically, the length of the ego vehicle is lα.(v)
The number of vehicles in front of a certain vehicle at a certain time isnt.(vi)
α refers to the ego vehicle, and α−k refers to the kth vehicle that is in front of the ego vehicle. For example, the directly previous vehicle is α−1.(vii)
dα−k refers to the distance between the ego vehicle and the kth vehicle in front of the ego vehicle. For example, the distance between the ego vehicle and the directly previous vehicle α−1 is dα−1.Hence, the vehicle state in this work is defined as a triple:(4)statet=pt,vt,at,where pt, vt, and at are all mentioned above.Additionally, the road information and vehicle surroundings should also be extracted and represented. Before extracting and representing the road information and vehicle surroundings, this work introduces a new concept of a transition between a section and an intersection. The road is divided into three segments, as shown in Figure1. All predictions in the three segments are integrated into one decision tree. A transition is a special part of a section with information of the intersection that needs to be considered. In other words, when a vehicle is at a transition, the driver faces the intersection and is able to obtain information such as traffic lights.(i)
A certain intersection is defined as a two-dimensional point:(5)intersec=x0,y0,where x0,y0 is its position. On an intersection, we just consider three behaviors of each vehicle, that is, left turn, right turn, and pass through. Therefore, the intersection is expressed by a point.(ii)
A certain section between two consecutive intersectionsintersec1 and intersec2 that are the ends of the certain section is defined as follows:(6)sec=intersec1,intersec2,0,where the direction of the vehicle is from intersection intersec1 to intersection intersec2.(iii)
Consequently, a certain lane is(7)lane=sec,n,where sec is the section to which the certain lane belongs and n is the number of the lane. In this work, the width of every lane is the same, and it is a known constant. When a vehicle faces an intersection, the driver can see three directions. Additionally, this work defines three directions: laneN is the direction of the lane in which the driver faces straight forward, laneW is the direction of the lane that the driver turns right into, and laneE is the direction of the lane that the driver turns left into.(iv)
A certain transition between a certain section and a certain intersection that is an end of the certain section is(8)trans=intersec1,intersec2,1,where trans is very similar to sec because a transition is a special part of a section, and when the vehicle is in the transition, the driver is facing intersection intersec2 and sees the traffic lights in the intersection. The purpose of 0 and 1 in sec and trans is to distinguish their mathematical definition.Figure 1
Road components.Table1 presents a summary of the aforementioned variables, including the definitions of the position, velocity, acceleration, and vehicle state of a vehicle and of several elementary road environments, such as an intersection, a section, a lane, and a transition.Table 1
Variable summary.
Variable
Explanation
p
t
The position of a vehicle at timet
v
t
The velocity of a vehicle at timet
a
t
The acceleration of a vehicle at timet
s
t
a
t
e
t
The vehicle state of a vehicle, including its position, velocity, and acceleration
intersec
An intersection, which is defined by a point
sec
A section, which is defined by twointersecs
lane
A lane, which is defined byintersec and its lane number
trans
A transition, whose definition is similar tosecNote that in this work, the number of lanes is based on zero, and the lane number starts from the central line of the section to which the lane belongs.


## 3.1. Motivation

Vehicle state prediction is suitable for IoV in city scenario, integrating the digital map, traffic light, and surrounding vehicles. It models the driver’s behavior in different traffic environments. In this paper, according to the driver’s behavior, a decision tree is established to describe vehicle state in diverse conditions. Vehicle state prediction is an important part of the connectivity model in IoV, which is proper for predicting the positions of vehicles and dynamic changes of links. Taking advantage of information IoV provides, vehicle state can be predicted to further guide the driver to adopt several operations in order to implement a better trajectory of vehicle and save time. Nevertheless, the primary purpose of the vehicle state prediction is not to find an optimal route but to predict the vehicle state in next seconds. The vehicle state contains the position, velocity, and acceleration of vehicle. The change of vehicle state can influence the topology of IoV. For example, position can determine whether two vehicles are accessible to communicate with each other, whereas velocity and acceleration influence the stability of network topology. These factors could finally affect the survival time of links among vehicles. Hence, vehicle state prediction is mainly to calculate the survival time of links so as to guarantee to achieve a better communication among several vehicles and maintain a steady structure of IoV. Meanwhile, it also offers an effective method to construct a reasonable route.


## 3.2. System Architecture

The vehicle state prediction proposed in this paper is designed specifically to be used in Internet of Vehicles (IoV). It is assumed that the state prediction is hosted by the server that maintains the states of vehicles on the Internet. This assumption is often considered to be a reasonable assumption. Each vehicle manages its state prediction via a virtual object. Nowadays, the virtual object plays an important role in Internet of Things to implement its virtualness and service [39]. For IoV, virtual objects implement the communication among vehicles and provide a practical application for managing vehicles. Position-based and map-based routing protocols in the previous literature are widely accepted routing protocols in IoV based on position and path. Cheng et al. [40] classify notable routing protocols into routing categories for performing routing. Both position-based and map-based routing protocols require vehicles to send their state information to the server, which is generally distributed, when a source vehicle needs to communicate with other vehicles periodically. The server destination node first queries the state information of the destination from the server and then sends data toward the vehicle at the position. The position of the destination will often change during data forwarding; thus, if the position of the destination could be predicted, it would improve the routing performance. Moreover, by predicting vehicle states in a forward routing path, the server has the ability to calculate the expected reliable communication time between two vehicles and then calculate the connectivity of the path, which helps to select a stable path from multiple paths. When a source queries for the position of a destination, the server could send the predicted state and the optimal forward routing to the source, which will also improve the routing performance.


## 3.3. System Representation

The following describes the vehicle information that will be used in this work:(i)
The position of a certain vehicle at a certain time can be represented using a two-dimensional column vector:(1)pt=xt,ytT.(ii)
The velocity of a certain vehicle at a certain time can be represented as follows:(2)vt=vxt,vytT.(iii)
The acceleration of a certain vehicle at a certain time can be expressed as follows:(3)at=axt,aytT.(iv)
The length of a certain vehicle isl. Specifically, the length of the ego vehicle is lα.(v)
The number of vehicles in front of a certain vehicle at a certain time isnt.(vi)
α refers to the ego vehicle, and α−k refers to the kth vehicle that is in front of the ego vehicle. For example, the directly previous vehicle is α−1.(vii)
dα−k refers to the distance between the ego vehicle and the kth vehicle in front of the ego vehicle. For example, the distance between the ego vehicle and the directly previous vehicle α−1 is dα−1.Hence, the vehicle state in this work is defined as a triple:(4)statet=pt,vt,at,where pt, vt, and at are all mentioned above.Additionally, the road information and vehicle surroundings should also be extracted and represented. Before extracting and representing the road information and vehicle surroundings, this work introduces a new concept of a transition between a section and an intersection. The road is divided into three segments, as shown in Figure1. All predictions in the three segments are integrated into one decision tree. A transition is a special part of a section with information of the intersection that needs to be considered. In other words, when a vehicle is at a transition, the driver faces the intersection and is able to obtain information such as traffic lights.(i)
A certain intersection is defined as a two-dimensional point:(5)intersec=x0,y0,where x0,y0 is its position. On an intersection, we just consider three behaviors of each vehicle, that is, left turn, right turn, and pass through. Therefore, the intersection is expressed by a point.(ii)
A certain section between two consecutive intersectionsintersec1 and intersec2 that are the ends of the certain section is defined as follows:(6)sec=intersec1,intersec2,0,where the direction of the vehicle is from intersection intersec1 to intersection intersec2.(iii)
Consequently, a certain lane is(7)lane=sec,n,where sec is the section to which the certain lane belongs and n is the number of the lane. In this work, the width of every lane is the same, and it is a known constant. When a vehicle faces an intersection, the driver can see three directions. Additionally, this work defines three directions: laneN is the direction of the lane in which the driver faces straight forward, laneW is the direction of the lane that the driver turns right into, and laneE is the direction of the lane that the driver turns left into.(iv)
A certain transition between a certain section and a certain intersection that is an end of the certain section is(8)trans=intersec1,intersec2,1,where trans is very similar to sec because a transition is a special part of a section, and when the vehicle is in the transition, the driver is facing intersection intersec2 and sees the traffic lights in the intersection. The purpose of 0 and 1 in sec and trans is to distinguish their mathematical definition.Figure 1
Road components.Table1 presents a summary of the aforementioned variables, including the definitions of the position, velocity, acceleration, and vehicle state of a vehicle and of several elementary road environments, such as an intersection, a section, a lane, and a transition.Table 1
Variable summary.
Variable
Explanation
p
t
The position of a vehicle at timet
v
t
The velocity of a vehicle at timet
a
t
The acceleration of a vehicle at timet
s
t
a
t
e
t
The vehicle state of a vehicle, including its position, velocity, and acceleration
intersec
An intersection, which is defined by a point
sec
A section, which is defined by twointersecs
lane
A lane, which is defined byintersec and its lane number
trans
A transition, whose definition is similar tosecNote that in this work, the number of lanes is based on zero, and the lane number starts from the central line of the section to which the lane belongs.


## 4. Driving Behavior Modeling

In this work, the driving behaviors of a vehicle are considered as the mean motions of the vehicle, such as some sudden changes including accelerating, decelerating, changing lanes, and turning at an intersection. These driving behaviors lead to discontinuous acceleration, which causes the acceleration, velocity, and position of the vehicle to be difficult to predict using their history states. The early detection of sudden changes is necessary for predicting the vehicle state. Driving behaviors can be defined as elements in a set, and each behavior is an element of the set. To create the decision tree in all road segments in this work, it is necessary to model the driving behaviors of a vehicle. The driving behavior is divided into three cases: section prediction, intersection prediction, and transition prediction. At sections, vehicles accelerate or decelerate, which is caused by the influence of the front vehicles. Additionally, vehicles may change lanes to leave an upcoming jam or to avoid a slow vehicle that is directly in front. Only when adjacent lanes have spacing can lane changes occur. A transition, with some specific characteristics, is a certain area between a section and its intersection. Vehicles at a transition are forbidden from changing lanes, and their behaviors are mainly dependent on the traffic lights. At intersections, vehicles may turn left or right or pass through, depending on the out direction of the lane that the vehicle is in and on the traffic light.According to the aforementioned road in various situations, this paper classifies driving behaviors into three models: section behaviors, intersection behaviors, and transition behaviors. Section behaviors occur in the section, which are relatively simple without considerations of orientation changing. Considerations of intersection behaviors include changing direction. Transition behaviors are relatively complicated. The transition situation is between section and intersection, and it contains possibilities of section’s and intersection’s behaviors; thus, it is difficult to predict the coming driving behavior due to various possibilities.


### 4.1. Section Behaviors

Section behaviors are always when the vehicle is far away from the front intersection and the traffic light is out of the range of the driver.


#### 4.1.1. Jam Leaving Intent

When a driver realizes that a jam has occurred in the front of his current lane, he will attempt to enter adjacent lanes to avoid the jam. Lane-changing behavior is an important intent and has already been considered in the previous literature, such as by Ahmed [9]. In this work, α refers to the ego vehicle and α−m refers to the mth vehicle in front of the ego vehicle; for example, the vehicle directly in front of the ego vehicle is α−1. Here, rα is the range of the driver in the ego vehicle α. The driver could see τα vehicles α−1,α−2,…,α−τα in the driver’s range rα, but the vehicle α−τα−1 is out of the driver’s range. Thus, τ could be represented mathematically by(9)τα=maxidα−i<rα,where dα−i is the distance between the vehicle α and the ith front vehicle α−i. The jam density ρα, which defines an indicator to quantify the congestion level, is as follows:(10)ρα=ταrα.The driver will have a jam leaving intent if the driver cannot tolerate such a jam thatρα>ρα∗, where ρα∗ is a tolerance threshold for the driver. In this paper, the length of vehicle is 4.3–4.7 meters; we set one vehicle within 5 meters as a tolerance threshold. Thus, this paper uses ρα∗=0.2 and rα=400m in our later numerical experiments. Then, the driver will change lanes if the condition for changing lanes is satisfied. The driver always prefers to change to the right lane, and when the condition for changing to the right lane is not satisfied, the driver considers changing to the left lane.


#### 4.1.2. Overtaking Intent

For this intent, this work considers two aspects: the sizes of and the velocities between the front vehicle and the ego vehicle.When the front vehicle, such as a truck, is considerably larger than the ego vehicle, the driver always tends to avoid following it. This work simply assumes that the width of every vehicle is the same; thus, this case is simply to compare the lengths and is presented by(11)lα−1>λlengthlα,where λlength>1 is the tolerance threshold for the ratio of the length of the directly previous vehicle to the length of the ego vehicle.In the other case, if the speed of the vehicle ahead is too slow, the driver often attempts to change lanes and overtakes the slow vehicle. Mathematically,(12)vα−1<λvelocityvα,where λvelocity<1 is the tolerance threshold. This paper uses λlength=1.5 and λvelocity=0.8.


#### 4.1.3. Following Intent

In general, the driver of the ego vehicle will follow the front vehicle. However, when the driver follows the front vehicle, the driver will also adapt the ego vehicle such that it will be more comfortable and safe. For example, when the ego vehicle is too close to the front vehicle, the driver tends to brake to avoid driving into it. Mathematically,(13)tbrake=dα−1vα−vα−1.Here, we select a safety braking time tsafety as a threshold for the ratio of the velocity of the directly previous vehicle to the velocity of the ego vehicle. When tbrake≤tsafety is satisfied, the driver will decelerate with an acceleration value. In this paper, tsafety=1.5s and δ=2 is a correlation coefficient:(14)a=−δvα−vα−1dα−1.


#### 4.1.4. Free Driving Intent

Otherwise, the state of the driver will be maintained. This case is calledfree driving intent. For free driving, this work will consider that if the velocity of a vehicle is less than the speed limit, then the driver tends to accelerate with a constant acceleration to reach the speed limit.


### 4.2. Intersection Behaviors

Intersection behaviors are to predict the motions when the vehicle is close to or facing the front intersection. In such cases, the driver should consider the information of the front intersection, such as traffic lights. Behaviors at intersections are difficult to detect without information, including the out directions of the lane where the ego vehicle is located and the traffic lights. Existing studies always use history trajectories to recognize vehicle behavior using pattern classifications, fuzzy logics, probabilistic finite-state machines, or other technologies [29]. However, these technologies all require sufficiently long trajectories, which lead to delayed time, and these technologies have considerable computational requirements, which make them unsuitable for performing recognition of behaviors at a server with a massive number of vehicles. According to the out direction of the driving lane and traffic light, it is simple and accurate to achieve early detection of whether the vehicle is going to turn left, right, or pass through. However, there is a case in which the motion cannot be detected only using the out direction and traffic lights. This situation arises because the traffic light may occasionally allow the three directions simultaneously. In this case, the motion cannot be determined only by the directions of the lane and the traffic light. As shown in Figure 2, the laneS has three out directions: S/E, S/W, and S/N. Here, S is marked as the directing lane toward the south, E is marked as the left lanes of the intersection toward the east, W is marked as the right lanes of the intersection toward the west, and N is marked as the lanes across the north. Hence, S/E means that the driver turns left from the current lane to the east lanes, and S/W and S/N have similar meanings. The motion may be to turn left or right or pass through with the trajectories PSPE⌢, PSPW⌢, and PSPN⌢, as shown in Figure 3. Here, PE, PS, PW, and PN are four positions standing for positions to the east, south, west, and north, respectively, of the certain transition. For simplicity, this work considers the curve trajectory of the motion from the ego vehicle, which is similar to 1/4 part of an ellipse, as illustrated in Figure 3, due to two accelerations changing, in which one’s direction is the original direction and the other’s direction is the terminal one. The details of the calculation of the two accelerations and corresponding velocity and position will be discussed in Section 4. When a vehicle is arriving from the south, it will have three probabilities: to turn left (go transE in Figure 3), to turn right (go transW in Figure 3), and to go straight (go transN in Figure 3). We will discuss these three cases in the following. If(15)aT⋅vav>1−ϵ,Figure 2
Intersection.Figure 3
Behaviors at intersection.the motion is to pass through. If(16)aT⋅laneE>ϵoraT⋅laneW<−ϵ,the motion is to turn left. If(17)aT⋅laneW>ϵoraT⋅laneE<−ϵ,the motion is to turn right.laneE and laneW are column vectors. The aforementioned ϵ is a positive value close to zero, indicating that it is sufficiently small. In this paper, ϵ=0.01.


### 4.3. Transition Behavior

When a vehicle is in a transition, the driver can see the traffic light. Different traffic lights can lead to distinct behaviors of the vehicle. Here, we consider that when a driver faces a red or yellow traffic light, the driver will give the vehicle a constant accelerationaδ. We also provide a vector e to represent the traffic light information:(18)e=1,0,0T,if  the  traffic  light  is  red0,1,0T,if  the  traffic  light  is  yellow0,0,1T,if  the  traffic  light  is  green.Thus, the constant acceleration vector can be represented as(19)δa=aδ,aδ,0T,where each dimension indicates the acceleration of the vehicle in corresponding traffic light.Hence, when the driver faces the traffic light, the acceleration that the driver will provide is(20)aΔ=δaT⋅e.


## 4.1. Section Behaviors

Section behaviors are always when the vehicle is far away from the front intersection and the traffic light is out of the range of the driver.


### 4.1.1. Jam Leaving Intent

When a driver realizes that a jam has occurred in the front of his current lane, he will attempt to enter adjacent lanes to avoid the jam. Lane-changing behavior is an important intent and has already been considered in the previous literature, such as by Ahmed [9]. In this work, α refers to the ego vehicle and α−m refers to the mth vehicle in front of the ego vehicle; for example, the vehicle directly in front of the ego vehicle is α−1. Here, rα is the range of the driver in the ego vehicle α. The driver could see τα vehicles α−1,α−2,…,α−τα in the driver’s range rα, but the vehicle α−τα−1 is out of the driver’s range. Thus, τ could be represented mathematically by(9)τα=maxidα−i<rα,where dα−i is the distance between the vehicle α and the ith front vehicle α−i. The jam density ρα, which defines an indicator to quantify the congestion level, is as follows:(10)ρα=ταrα.The driver will have a jam leaving intent if the driver cannot tolerate such a jam thatρα>ρα∗, where ρα∗ is a tolerance threshold for the driver. In this paper, the length of vehicle is 4.3–4.7 meters; we set one vehicle within 5 meters as a tolerance threshold. Thus, this paper uses ρα∗=0.2 and rα=400m in our later numerical experiments. Then, the driver will change lanes if the condition for changing lanes is satisfied. The driver always prefers to change to the right lane, and when the condition for changing to the right lane is not satisfied, the driver considers changing to the left lane.


### 4.1.2. Overtaking Intent

For this intent, this work considers two aspects: the sizes of and the velocities between the front vehicle and the ego vehicle.When the front vehicle, such as a truck, is considerably larger than the ego vehicle, the driver always tends to avoid following it. This work simply assumes that the width of every vehicle is the same; thus, this case is simply to compare the lengths and is presented by(11)lα−1>λlengthlα,where λlength>1 is the tolerance threshold for the ratio of the length of the directly previous vehicle to the length of the ego vehicle.In the other case, if the speed of the vehicle ahead is too slow, the driver often attempts to change lanes and overtakes the slow vehicle. Mathematically,(12)vα−1<λvelocityvα,where λvelocity<1 is the tolerance threshold. This paper uses λlength=1.5 and λvelocity=0.8.


### 4.1.3. Following Intent

In general, the driver of the ego vehicle will follow the front vehicle. However, when the driver follows the front vehicle, the driver will also adapt the ego vehicle such that it will be more comfortable and safe. For example, when the ego vehicle is too close to the front vehicle, the driver tends to brake to avoid driving into it. Mathematically,(13)tbrake=dα−1vα−vα−1.Here, we select a safety braking time tsafety as a threshold for the ratio of the velocity of the directly previous vehicle to the velocity of the ego vehicle. When tbrake≤tsafety is satisfied, the driver will decelerate with an acceleration value. In this paper, tsafety=1.5s and δ=2 is a correlation coefficient:(14)a=−δvα−vα−1dα−1.


### 4.1.4. Free Driving Intent

Otherwise, the state of the driver will be maintained. This case is calledfree driving intent. For free driving, this work will consider that if the velocity of a vehicle is less than the speed limit, then the driver tends to accelerate with a constant acceleration to reach the speed limit.


## 4.1.1. Jam Leaving Intent

When a driver realizes that a jam has occurred in the front of his current lane, he will attempt to enter adjacent lanes to avoid the jam. Lane-changing behavior is an important intent and has already been considered in the previous literature, such as by Ahmed [9]. In this work, α refers to the ego vehicle and α−m refers to the mth vehicle in front of the ego vehicle; for example, the vehicle directly in front of the ego vehicle is α−1. Here, rα is the range of the driver in the ego vehicle α. The driver could see τα vehicles α−1,α−2,…,α−τα in the driver’s range rα, but the vehicle α−τα−1 is out of the driver’s range. Thus, τ could be represented mathematically by(9)τα=maxidα−i<rα,where dα−i is the distance between the vehicle α and the ith front vehicle α−i. The jam density ρα, which defines an indicator to quantify the congestion level, is as follows:(10)ρα=ταrα.The driver will have a jam leaving intent if the driver cannot tolerate such a jam thatρα>ρα∗, where ρα∗ is a tolerance threshold for the driver. In this paper, the length of vehicle is 4.3–4.7 meters; we set one vehicle within 5 meters as a tolerance threshold. Thus, this paper uses ρα∗=0.2 and rα=400m in our later numerical experiments. Then, the driver will change lanes if the condition for changing lanes is satisfied. The driver always prefers to change to the right lane, and when the condition for changing to the right lane is not satisfied, the driver considers changing to the left lane.


## 4.1.2. Overtaking Intent

For this intent, this work considers two aspects: the sizes of and the velocities between the front vehicle and the ego vehicle.When the front vehicle, such as a truck, is considerably larger than the ego vehicle, the driver always tends to avoid following it. This work simply assumes that the width of every vehicle is the same; thus, this case is simply to compare the lengths and is presented by(11)lα−1>λlengthlα,where λlength>1 is the tolerance threshold for the ratio of the length of the directly previous vehicle to the length of the ego vehicle.In the other case, if the speed of the vehicle ahead is too slow, the driver often attempts to change lanes and overtakes the slow vehicle. Mathematically,(12)vα−1<λvelocityvα,where λvelocity<1 is the tolerance threshold. This paper uses λlength=1.5 and λvelocity=0.8.


## 4.1.3. Following Intent

In general, the driver of the ego vehicle will follow the front vehicle. However, when the driver follows the front vehicle, the driver will also adapt the ego vehicle such that it will be more comfortable and safe. For example, when the ego vehicle is too close to the front vehicle, the driver tends to brake to avoid driving into it. Mathematically,(13)tbrake=dα−1vα−vα−1.Here, we select a safety braking time tsafety as a threshold for the ratio of the velocity of the directly previous vehicle to the velocity of the ego vehicle. When tbrake≤tsafety is satisfied, the driver will decelerate with an acceleration value. In this paper, tsafety=1.5s and δ=2 is a correlation coefficient:(14)a=−δvα−vα−1dα−1.


## 4.1.4. Free Driving Intent

Otherwise, the state of the driver will be maintained. This case is calledfree driving intent. For free driving, this work will consider that if the velocity of a vehicle is less than the speed limit, then the driver tends to accelerate with a constant acceleration to reach the speed limit.


## 4.2. Intersection Behaviors

Intersection behaviors are to predict the motions when the vehicle is close to or facing the front intersection. In such cases, the driver should consider the information of the front intersection, such as traffic lights. Behaviors at intersections are difficult to detect without information, including the out directions of the lane where the ego vehicle is located and the traffic lights. Existing studies always use history trajectories to recognize vehicle behavior using pattern classifications, fuzzy logics, probabilistic finite-state machines, or other technologies [29]. However, these technologies all require sufficiently long trajectories, which lead to delayed time, and these technologies have considerable computational requirements, which make them unsuitable for performing recognition of behaviors at a server with a massive number of vehicles. According to the out direction of the driving lane and traffic light, it is simple and accurate to achieve early detection of whether the vehicle is going to turn left, right, or pass through. However, there is a case in which the motion cannot be detected only using the out direction and traffic lights. This situation arises because the traffic light may occasionally allow the three directions simultaneously. In this case, the motion cannot be determined only by the directions of the lane and the traffic light. As shown in Figure 2, the laneS has three out directions: S/E, S/W, and S/N. Here, S is marked as the directing lane toward the south, E is marked as the left lanes of the intersection toward the east, W is marked as the right lanes of the intersection toward the west, and N is marked as the lanes across the north. Hence, S/E means that the driver turns left from the current lane to the east lanes, and S/W and S/N have similar meanings. The motion may be to turn left or right or pass through with the trajectories PSPE⌢, PSPW⌢, and PSPN⌢, as shown in Figure 3. Here, PE, PS, PW, and PN are four positions standing for positions to the east, south, west, and north, respectively, of the certain transition. For simplicity, this work considers the curve trajectory of the motion from the ego vehicle, which is similar to 1/4 part of an ellipse, as illustrated in Figure 3, due to two accelerations changing, in which one’s direction is the original direction and the other’s direction is the terminal one. The details of the calculation of the two accelerations and corresponding velocity and position will be discussed in Section 4. When a vehicle is arriving from the south, it will have three probabilities: to turn left (go transE in Figure 3), to turn right (go transW in Figure 3), and to go straight (go transN in Figure 3). We will discuss these three cases in the following. If(15)aT⋅vav>1−ϵ,Figure 2
Intersection.Figure 3
Behaviors at intersection.the motion is to pass through. If(16)aT⋅laneE>ϵoraT⋅laneW<−ϵ,the motion is to turn left. If(17)aT⋅laneW>ϵoraT⋅laneE<−ϵ,the motion is to turn right.laneE and laneW are column vectors. The aforementioned ϵ is a positive value close to zero, indicating that it is sufficiently small. In this paper, ϵ=0.01.


## 4.3. Transition Behavior

When a vehicle is in a transition, the driver can see the traffic light. Different traffic lights can lead to distinct behaviors of the vehicle. Here, we consider that when a driver faces a red or yellow traffic light, the driver will give the vehicle a constant accelerationaδ. We also provide a vector e to represent the traffic light information:(18)e=1,0,0T,if  the  traffic  light  is  red0,1,0T,if  the  traffic  light  is  yellow0,0,1T,if  the  traffic  light  is  green.Thus, the constant acceleration vector can be represented as(19)δa=aδ,aδ,0T,where each dimension indicates the acceleration of the vehicle in corresponding traffic light.Hence, when the driver faces the traffic light, the acceleration that the driver will provide is(20)aΔ=δaT⋅e.


## 5. State Prediction

Now, driving behaviors are modeled, and a decision tree can be created based on the surroundings and driving behaviors in varieties of road segments. Our decision tree is illustrated in Figure4. The decision tree in Figure 4 represents the aforementioned situations in various road segments and their judgment conditions, and it will help provide quick and easy determination and extension. First, it will be considered that the ego vehicle is in a section, an intersection, or a transition, and these cases will be discussed individually. Note that in this work, when the ego vehicle is in the intersection, it means that the ego vehicle has passed the beginning line and will no longer consider traffic lights.Figure 4
Decision tree based on driving behaviors.


### 5.1. Prediction in Section

When the ego vehicle is in a section, it is considered whether the vehicle is changing lanes. This is because if the vehicle is changing lanes, its velocity and acceleration are not in the same direction, which will lead to a different trajectory. If the ego vehicle is not changing lanes, it is considered whether the vehicle will change lanes based on the aforementionedjam leaving intent and overtaking intent. These two intents are very common in reality. If the ego vehicle does not choose to change lanes, then there are two intents for the driver of the ego vehicle: free driving intent and following intent. To summarize, the prediction in a section could have four cases, A, B, C, and D, as indicated in Figure 4.(1)
A: When a vehicle is in a sectionsec and it is changing lanes, it has a velocity v⊥t and an acceleration a⊥t whose directions are both perpendicular to sec. During the lane change, the vehicle is supposed to have an acceleration a⊥ to first accelerate and then −a⊥ to decelerate, where a⊥>0 could be calculated from the data set. Therefore,(21)a⊥t=a⊥,t<t0−a⊥,t>t0,where t0 is the time point between accelerating and decelerating and t is during the lane change. Moreover, vt=v⊥ could be calculated from the data set, and the distance of changing the lane equals the lane width, which is also a known constant mentioned in the previous discussion. Hence, the pt during the lane change and the current time point could both be calculated. Then, the position after tΔ can be determined as follows:(22)pΔ=pt+tΔ,if  still  changingpt+t′+∫t+t′t+tΔvtdt,if  changing  is  done,where pΔ is the position at time point t+tΔ and t+t′ is the time point when the vehicle completes the lane change.(2)
B: This case is very similar to Case A, but the time pointt is not during the lane change but rather when starting to change lanes. Moreover, in Case A, the acceleration could be calculated from the data set, whereas in this case, the acceleration a⊥t cannot be calculated from the data set. In this case, this work assumes that the time for changing lanes is a known constant; then, the a⊥t could be calculated according to the distance of changing the lane, which equals the lane width. Thus, the position after tΔ could be predicted by the method in Case A.(3)
C: When a vehicle faces this case, the driver will choosefree driving intent, which was previously mentioned.(4)
D: When a vehicle faces this case, the driver will choosefollowing intent, which was previously mentioned.


### 5.2. Prediction in Intersection

(1)
E: When a vehicle is in an intersectionintersec, the driver could have three options: to drive straight forward, to turn left, and to turn right. The velocity vt at the current time point can be calculated from the data set, and it will be compared with laneN, laneW, and laneE to determine which direction the vehicle will go. Mathematically, the direction that the vehicle will go is given by the following equation:
(23)
direction
=
lan
e
W
,
v
t
⋅
lan
e
W
>
ϵ
lan
e
E
,
v
t
⋅
lan
e
E
>
ϵ
lan
e
N
,
otherwise
,where ϵ>0 is a positive value that is sufficiently small, as previously mentioned. ϵ=0.01 in this paper. If direction=laneN, then the intersection intersec could be considered as a section. If direction=laneW or direction=laneE, then the vehicle has two accelerations that have the straight forward direction and the direction same as laneW or laneE, respectively. This work denotes the first mentioned acceleration as aot and the second mentioned acceleration as alt. This work assumes that in the intersection intersec, aot is linearly increasing from zero and alt is linearly decreasing to zero. That is, aot+alt is a constant during turning. At some certain time point t0, aot0 and alt0 could be calculated from the data set; thus, we let(24)aΣ=aot0+alt0.From the data set of the map, the distance between the current time point and the time point when the vehicle completes turning can be calculated. Hence, the timets remaining for turning can be obtained. Therefore,(25)aot0+t=aot0−aot0tsteo,t<ts,alt0+t=alt0+aΣ−alt0tstel,t<ts,where eo is the direction of the original direction and el is the direction of direction. The position after tΔ is(26)pt0+tΔ=pt0+∫0tΔv0+at0+tdt,t<tspt0+ts+tΔ−tsv′,t>ts,where v′ is the velocity when the vehicle completes turning.


### 5.3. Prediction in Transition

(1)
F: When the driver faces a green traffic light and the vehicle could pass in time, the case could be in a section (when the requested time point is not sufficient to pass) or in an intersection (when the requested time point is sufficient to pass).
(2)
G: When the driver faces a green traffic light and the vehicle cannot pass in time, the driver will stop the vehicle. The vehicle knows if some vehicle is in front of it. If some vehicle is in front of it, the driver will havefollowing intent. If no vehicle is in front of it, the vehicle will calculate the distance between the current position and the final stopped position, which is denoted as ds. This work assumes that the vehicle will be stopped by a constant acceleration. The constant acceleration can be calculated as
(27)
a
=
−
v
t
0
2
2
d
s
e
,where e is the direction of the vehicle. Thus, the velocity and position are(28)vt0+tΔ=vt0+a⋅tΔ,pt0+tΔ=pt0+∫0tΔvt0+tdt.(3)
H: This case could be separated into two time intervals: before and after the traffic light turns green. Before the traffic light turns green, the driver would choosefollowing intent, while after the traffic light turns red, the case would be Case F.(4)
I: Because the vehicle will stop as Case G, irrespective of whether some vehicle is in front of it, the vehicle has the same intent as Case G.


### 5.4. Prediction Summary

We call the above proposed method as driver behavior decision tree (DBDT), which obtains the relatively accurate trajectories of vehicles in a long term according to the sudden changes such as acceleration, deceleration, and turn. Moreover, to prevent the prediction from going too far, this work includes the constant yaw rate and acceleration (CYRA) [31] into our approach. CYRA is a physical kinematic-based prediction method. It assumes that within a very short term, the force on a vehicle remains unchanged and the vehicle would keep a constant accelerate vector, including its accelerate direction and value. Thus, the CYRA model regards the acceleration and direction of vehicle as a constant to predict the vehicle state. Its constant acceleration at is formulated as follows:(29)at=a0,where a0 is a constant value. Next, its velocity and position are calculated as follows:(30)vt=∫0tatdt,pt=∫0tvtdt.The linearity of its state equation achieves a transmission of state probability distribution. The next vehicle state could be predicted based on this kind of constant accelerate vector.For a short term, the acceleration of vehicle can be considered as a constant, CYRA can effectually adapt to this situation according to its constant acceleration characteristics. Hence, CYRA can effectively handle the vehicle state prediction in a short term so as to obtain more accurate results. However, it could result in a great error for predicting the vehicle state in a long term because the acceleration of vehicle continually changes. On the contrary, DBDT can detect the sudden change of acceleration of vehicle to instantly adapt to the current state so as to obtain better results and avoid a great error, suggesting that it is more suitable for predicting the vehicle state in a long term. On the basis of both characteristics, this work finally adopts the following formula to evaluate their performances.(31)TDBDTt=ftTDBDT′t+1−ftTCYRAt,where TDBDT′t is the result of our approach and TCYRAt is the result of another approach. ft is an increasing function, which means driving behavior recognition is more suitable for long-term prediction and CYRA is more accurate for short-term prediction. In this paper, ft=1/4t.


### 5.5. Time Complexity

A time complexity comparison between DBDT and CYRA is discussed in this subsection. For DBDT, we setC to be the number of vehicles in the same lane. The time complexity regarding prediction in section, intersection, and transition is calculated as follows:


#### 5.5.1. Prediction in Section

(i)
Motion prediction(1)
Jam Leaving Intent: scanning vehicles in front of itself in the same lane needs the time complexityCm1=Oc.(2)
Overtaking Intent: considering the vehicle in front of itself requiresCm2=O1.(3)
Following Intent: calculating the vehicle in front of itself needsCm3=O1.(4)
Free Driving Intent: this situation takesCm4=O1.
(ii)
Vehicle state prediction(A)
Computing the location data of the lane and state of itself costsCs1=O1.(B)
Computing the location data of the lane and vehicle states in front of itself needsCs2=Oc.(C)
Computing the vehicle state in front of itself requiresCs3=O1.(D)
Computing the state of itself takesCs4=O1.Thus, the time complexity of prediction in section is(32)Csec=Cm1+Cm2+Cm3+Cm4+maxCs1,Cs2,Cs3,Cs4=Oc.


#### 5.5.2. Prediction in Intersection

(i)
Motion predictionPredicting the vehicle motions by the traffic light data and the location data of intersection lanes costs the time complexityCm=O1.(ii)
Vehicle state prediction(E)
Computing the vehicle state of itself and intersection lanes data needsCs=O1.Therefore, the time complexity of prediction in intersection is(33)Cintersec=Cm+Cs=O1.


#### 5.5.3. Prediction in Transition

(i)
Motion predictionWhen a vehicle is in a transition, its motion is predicted by the traffic light. This operation needsCm=O1.(ii)
Vehicle state prediction(F)
When the driver faces the green traffic light and the vehicle could pass in time, computing the state of itself needsCs1=O1.(G)
When the driver faces the green traffic light and the vehicle could not pass in time, computing the vehicle state and traffic light time requiresCs2=O1.(H)
When the driver faces the red traffic light and the traffic light turns to green before it passes the transition, computing the vehicle state and traffic light time requiresCs3=O1.(I)
When the driver faces the red traffic light and the traffic light keeps red before it passes the transition, computing the vehicle state and traffic light time costsCs4=O1.Thus, the time complexity of prediction in transition is(34)Ctrans=Cm+maxCs1,Cs2,Cs3,Cs4=O1.The number of vehicles is set to ben for prediction. Consequently, the whole time complexity about DBDT is C=maxCsec,Cintersec,Ctrans=n∗Oc=On. For CYRA, each vehicle is predicted by the data of itself. Hence, its time complexity is On [31]. According to both time complexity, we can find that DBDT and CYRA have the same time complexity, suggesting they possess the same efficiency.


## 5.1. Prediction in Section

When the ego vehicle is in a section, it is considered whether the vehicle is changing lanes. This is because if the vehicle is changing lanes, its velocity and acceleration are not in the same direction, which will lead to a different trajectory. If the ego vehicle is not changing lanes, it is considered whether the vehicle will change lanes based on the aforementionedjam leaving intent and overtaking intent. These two intents are very common in reality. If the ego vehicle does not choose to change lanes, then there are two intents for the driver of the ego vehicle: free driving intent and following intent. To summarize, the prediction in a section could have four cases, A, B, C, and D, as indicated in Figure 4.(1)
A: When a vehicle is in a sectionsec and it is changing lanes, it has a velocity v⊥t and an acceleration a⊥t whose directions are both perpendicular to sec. During the lane change, the vehicle is supposed to have an acceleration a⊥ to first accelerate and then −a⊥ to decelerate, where a⊥>0 could be calculated from the data set. Therefore,(21)a⊥t=a⊥,t<t0−a⊥,t>t0,where t0 is the time point between accelerating and decelerating and t is during the lane change. Moreover, vt=v⊥ could be calculated from the data set, and the distance of changing the lane equals the lane width, which is also a known constant mentioned in the previous discussion. Hence, the pt during the lane change and the current time point could both be calculated. Then, the position after tΔ can be determined as follows:(22)pΔ=pt+tΔ,if  still  changingpt+t′+∫t+t′t+tΔvtdt,if  changing  is  done,where pΔ is the position at time point t+tΔ and t+t′ is the time point when the vehicle completes the lane change.(2)
B: This case is very similar to Case A, but the time pointt is not during the lane change but rather when starting to change lanes. Moreover, in Case A, the acceleration could be calculated from the data set, whereas in this case, the acceleration a⊥t cannot be calculated from the data set. In this case, this work assumes that the time for changing lanes is a known constant; then, the a⊥t could be calculated according to the distance of changing the lane, which equals the lane width. Thus, the position after tΔ could be predicted by the method in Case A.(3)
C: When a vehicle faces this case, the driver will choosefree driving intent, which was previously mentioned.(4)
D: When a vehicle faces this case, the driver will choosefollowing intent, which was previously mentioned.


## 5.2. Prediction in Intersection

(1)
E: When a vehicle is in an intersectionintersec, the driver could have three options: to drive straight forward, to turn left, and to turn right. The velocity vt at the current time point can be calculated from the data set, and it will be compared with laneN, laneW, and laneE to determine which direction the vehicle will go. Mathematically, the direction that the vehicle will go is given by the following equation:
(23)
direction
=
lan
e
W
,
v
t
⋅
lan
e
W
>
ϵ
lan
e
E
,
v
t
⋅
lan
e
E
>
ϵ
lan
e
N
,
otherwise
,where ϵ>0 is a positive value that is sufficiently small, as previously mentioned. ϵ=0.01 in this paper. If direction=laneN, then the intersection intersec could be considered as a section. If direction=laneW or direction=laneE, then the vehicle has two accelerations that have the straight forward direction and the direction same as laneW or laneE, respectively. This work denotes the first mentioned acceleration as aot and the second mentioned acceleration as alt. This work assumes that in the intersection intersec, aot is linearly increasing from zero and alt is linearly decreasing to zero. That is, aot+alt is a constant during turning. At some certain time point t0, aot0 and alt0 could be calculated from the data set; thus, we let(24)aΣ=aot0+alt0.From the data set of the map, the distance between the current time point and the time point when the vehicle completes turning can be calculated. Hence, the timets remaining for turning can be obtained. Therefore,(25)aot0+t=aot0−aot0tsteo,t<ts,alt0+t=alt0+aΣ−alt0tstel,t<ts,where eo is the direction of the original direction and el is the direction of direction. The position after tΔ is(26)pt0+tΔ=pt0+∫0tΔv0+at0+tdt,t<tspt0+ts+tΔ−tsv′,t>ts,where v′ is the velocity when the vehicle completes turning.


## 5.3. Prediction in Transition

(1)
F: When the driver faces a green traffic light and the vehicle could pass in time, the case could be in a section (when the requested time point is not sufficient to pass) or in an intersection (when the requested time point is sufficient to pass).
(2)
G: When the driver faces a green traffic light and the vehicle cannot pass in time, the driver will stop the vehicle. The vehicle knows if some vehicle is in front of it. If some vehicle is in front of it, the driver will havefollowing intent. If no vehicle is in front of it, the vehicle will calculate the distance between the current position and the final stopped position, which is denoted as ds. This work assumes that the vehicle will be stopped by a constant acceleration. The constant acceleration can be calculated as
(27)
a
=
−
v
t
0
2
2
d
s
e
,where e is the direction of the vehicle. Thus, the velocity and position are(28)vt0+tΔ=vt0+a⋅tΔ,pt0+tΔ=pt0+∫0tΔvt0+tdt.(3)
H: This case could be separated into two time intervals: before and after the traffic light turns green. Before the traffic light turns green, the driver would choosefollowing intent, while after the traffic light turns red, the case would be Case F.(4)
I: Because the vehicle will stop as Case G, irrespective of whether some vehicle is in front of it, the vehicle has the same intent as Case G.


## 5.4. Prediction Summary

We call the above proposed method as driver behavior decision tree (DBDT), which obtains the relatively accurate trajectories of vehicles in a long term according to the sudden changes such as acceleration, deceleration, and turn. Moreover, to prevent the prediction from going too far, this work includes the constant yaw rate and acceleration (CYRA) [31] into our approach. CYRA is a physical kinematic-based prediction method. It assumes that within a very short term, the force on a vehicle remains unchanged and the vehicle would keep a constant accelerate vector, including its accelerate direction and value. Thus, the CYRA model regards the acceleration and direction of vehicle as a constant to predict the vehicle state. Its constant acceleration at is formulated as follows:(29)at=a0,where a0 is a constant value. Next, its velocity and position are calculated as follows:(30)vt=∫0tatdt,pt=∫0tvtdt.The linearity of its state equation achieves a transmission of state probability distribution. The next vehicle state could be predicted based on this kind of constant accelerate vector.For a short term, the acceleration of vehicle can be considered as a constant, CYRA can effectually adapt to this situation according to its constant acceleration characteristics. Hence, CYRA can effectively handle the vehicle state prediction in a short term so as to obtain more accurate results. However, it could result in a great error for predicting the vehicle state in a long term because the acceleration of vehicle continually changes. On the contrary, DBDT can detect the sudden change of acceleration of vehicle to instantly adapt to the current state so as to obtain better results and avoid a great error, suggesting that it is more suitable for predicting the vehicle state in a long term. On the basis of both characteristics, this work finally adopts the following formula to evaluate their performances.(31)TDBDTt=ftTDBDT′t+1−ftTCYRAt,where TDBDT′t is the result of our approach and TCYRAt is the result of another approach. ft is an increasing function, which means driving behavior recognition is more suitable for long-term prediction and CYRA is more accurate for short-term prediction. In this paper, ft=1/4t.


## 5.5. Time Complexity

A time complexity comparison between DBDT and CYRA is discussed in this subsection. For DBDT, we setC to be the number of vehicles in the same lane. The time complexity regarding prediction in section, intersection, and transition is calculated as follows:


### 5.5.1. Prediction in Section

(i)
Motion prediction(1)
Jam Leaving Intent: scanning vehicles in front of itself in the same lane needs the time complexityCm1=Oc.(2)
Overtaking Intent: considering the vehicle in front of itself requiresCm2=O1.(3)
Following Intent: calculating the vehicle in front of itself needsCm3=O1.(4)
Free Driving Intent: this situation takesCm4=O1.
(ii)
Vehicle state prediction(A)
Computing the location data of the lane and state of itself costsCs1=O1.(B)
Computing the location data of the lane and vehicle states in front of itself needsCs2=Oc.(C)
Computing the vehicle state in front of itself requiresCs3=O1.(D)
Computing the state of itself takesCs4=O1.Thus, the time complexity of prediction in section is(32)Csec=Cm1+Cm2+Cm3+Cm4+maxCs1,Cs2,Cs3,Cs4=Oc.


### 5.5.2. Prediction in Intersection

(i)
Motion predictionPredicting the vehicle motions by the traffic light data and the location data of intersection lanes costs the time complexityCm=O1.(ii)
Vehicle state prediction(E)
Computing the vehicle state of itself and intersection lanes data needsCs=O1.Therefore, the time complexity of prediction in intersection is(33)Cintersec=Cm+Cs=O1.


### 5.5.3. Prediction in Transition

(i)
Motion predictionWhen a vehicle is in a transition, its motion is predicted by the traffic light. This operation needsCm=O1.(ii)
Vehicle state prediction(F)
When the driver faces the green traffic light and the vehicle could pass in time, computing the state of itself needsCs1=O1.(G)
When the driver faces the green traffic light and the vehicle could not pass in time, computing the vehicle state and traffic light time requiresCs2=O1.(H)
When the driver faces the red traffic light and the traffic light turns to green before it passes the transition, computing the vehicle state and traffic light time requiresCs3=O1.(I)
When the driver faces the red traffic light and the traffic light keeps red before it passes the transition, computing the vehicle state and traffic light time costsCs4=O1.Thus, the time complexity of prediction in transition is(34)Ctrans=Cm+maxCs1,Cs2,Cs3,Cs4=O1.The number of vehicles is set to ben for prediction. Consequently, the whole time complexity about DBDT is C=maxCsec,Cintersec,Ctrans=n∗Oc=On. For CYRA, each vehicle is predicted by the data of itself. Hence, its time complexity is On [31]. According to both time complexity, we can find that DBDT and CYRA have the same time complexity, suggesting they possess the same efficiency.


## 5.5.1. Prediction in Section

(i)
Motion prediction(1)
Jam Leaving Intent: scanning vehicles in front of itself in the same lane needs the time complexityCm1=Oc.(2)
Overtaking Intent: considering the vehicle in front of itself requiresCm2=O1.(3)
Following Intent: calculating the vehicle in front of itself needsCm3=O1.(4)
Free Driving Intent: this situation takesCm4=O1.
(ii)
Vehicle state prediction(A)
Computing the location data of the lane and state of itself costsCs1=O1.(B)
Computing the location data of the lane and vehicle states in front of itself needsCs2=Oc.(C)
Computing the vehicle state in front of itself requiresCs3=O1.(D)
Computing the state of itself takesCs4=O1.Thus, the time complexity of prediction in section is(32)Csec=Cm1+Cm2+Cm3+Cm4+maxCs1,Cs2,Cs3,Cs4=Oc.


## 5.5.2. Prediction in Intersection

(i)
Motion predictionPredicting the vehicle motions by the traffic light data and the location data of intersection lanes costs the time complexityCm=O1.(ii)
Vehicle state prediction(E)
Computing the vehicle state of itself and intersection lanes data needsCs=O1.Therefore, the time complexity of prediction in intersection is(33)Cintersec=Cm+Cs=O1.


## 5.5.3. Prediction in Transition

(i)
Motion predictionWhen a vehicle is in a transition, its motion is predicted by the traffic light. This operation needsCm=O1.(ii)
Vehicle state prediction(F)
When the driver faces the green traffic light and the vehicle could pass in time, computing the state of itself needsCs1=O1.(G)
When the driver faces the green traffic light and the vehicle could not pass in time, computing the vehicle state and traffic light time requiresCs2=O1.(H)
When the driver faces the red traffic light and the traffic light turns to green before it passes the transition, computing the vehicle state and traffic light time requiresCs3=O1.(I)
When the driver faces the red traffic light and the traffic light keeps red before it passes the transition, computing the vehicle state and traffic light time costsCs4=O1.Thus, the time complexity of prediction in transition is(34)Ctrans=Cm+maxCs1,Cs2,Cs3,Cs4=O1.The number of vehicles is set to ben for prediction. Consequently, the whole time complexity about DBDT is C=maxCsec,Cintersec,Ctrans=n∗Oc=On. For CYRA, each vehicle is predicted by the data of itself. Hence, its time complexity is On [31]. According to both time complexity, we can find that DBDT and CYRA have the same time complexity, suggesting they possess the same efficiency.


## 6. Results and Analysis

To test whether our work is valid, experiments are conducted in a real environment, which is based on the Lankershim Boulevard Dataset of the Next Generation Simulation (NGSIM) program [41]. The Lankershim Boulevard Dataset collects detailed vehicle trajectory data from Lankershim Boulevard in the Universal City neighborhood of Los Angeles. It provides the map of an area of Lankershim Boulevard, including three to four lane segments and covering three signalized intersections. Moreover, the traffic light data and the precise vehicle position, velocity, and acceleration in the periods of 8:30 am and 8:45 am on June 16, 2005, are available. The Lankershim Boulevard Dataset covers the driver behavior of lane changing on congested segments, overtaking, and behavior at traffic lights, which fits the experimental requirements of this work. The details of the Lankershim Boulevard Dataset are listed in Table 2. This work creates a model for the provided map in the Lankershim Boulevard Dataset to extract location data of sections, intersections, and transitions. Then, this work extracts traffic light information, and thus, it obtains all road information. By inputting trajectory information of vehicles, this work will compare our approach (DBDT for short) to CYRA [31], DT which is a variant of DBDT by setting ft=1 in (31), and SDT [7, 8] which is a self-selection threshold decision algorithm based on decision tree in four cases: tΔ=1s, tΔ=2s, tΔ=3s, and tΔ=4s, respectively.Table 2
Data set parameters.
Lankershim Boulevard Dataset
Parameters
Address
Lankershim Boulevard in Los Angeles
Time
8:28–8:45 am and 8:45–9:00 am on June 16, 2005
Road length
490 m
Intersection number
4
Sampling time
1/10 s
Lane number (same direction)
1–6
Provides traffic light data
Yes
8:28–8:45 am data amount
705294 records
8:28–8:45 am vehicle number
1375
8:45–9:00 am data amount
902025 records
8:45–9:00 am vehicle number
1601The results for the accuracy of position prediction are shown in Figure5, those for the accuracy of velocity prediction are shown in Figure 6, and those for the accuracy of acceleration prediction are shown in Figure 7. The results show that although the state predicted by our approach is not very accurate at the beginning, the state is more accurate than that of CYRA as time passes. This is because our approach provides early detection of the driving behavior, which leads to changing the state at the very beginning of the prediction time point. Moreover, the vehicle state includes the ego vehicle’s position, velocity, and acceleration, for which the importances are decreasing in many fields. For example, to avoid traffic accidents, the vehicle position prediction is the most essential. Considering the discontinuous acceleration, the three vehicle state components, which are the position, the velocity, and the acceleration, are becoming more difficult. Thus, it is expected that from the numerical results, the position prediction is the best, the velocity prediction is not good when Δt=1s, and the acceleration prediction is not good when Δt=1s or Δt=2s. As time passes, the numerical results become better. From the results, the difference value between the previous one second and the next one second becomes increasingly smaller. Thus, as time lasts past a certain range, the state prediction will be more accurate than that of CYRA.Figure 5
Accuracy of position prediction.Figure 6
Accuracy of velocity prediction.Figure 7
Accuracy of acceleration prediction.Additionally, the results of DBDT are better than those of DT, suggesting that the key to the good performance of our proposal is the incorporation and extension of the decision tree and CYRA. In comparison with SDT which generally utilizes thresholds to determine the state selection in a decision tree, our proposal performs better with the aid of accurate modeling of the driving behaviors. Moreover, in light of the results, we believe that more research on how to use driving behaviors of vehicle in the varieties of the all road segments to predict or monitor vehicle drivers by decision trees is warranted.


## 7. Conclusion

This paper highlights that the previous approaches for predicting the vehicle states using the substantial history information have a delayed prediction time. Some trajectory prediction methods based on lane changing recognition are proposed. Although a validation method for complicated environments such as multilanes and intersections is not currently available, this paper proposes a new method for the prediction by using a decision tree in varieties of road segments generated by the driving behaviors. This decision tree helps to detect driving behaviors and predict the vehicle state in all road segments, including sections with multilanes, transition segments, and intersections. The driving behavior recognition improves the accuracy of vehicle state prediction in long-term cases. Our approach shows advantages in the provided real environments.Social Internet of Vehicles is an important and intelligent transport network [42]. It has more characteristics and more complicated circumstances. Thus, to predict this kind of IoV is more meaningful and challenging in the future work. Furthermore, the proposed technique might lead to the development of vehicle networking and intelligentialization [43], as well as to provide effective methods to solve vehicle routing problems in dynamic environments [44].



---

*Source: 9728328-2018-05-21.xml*