Assisting Drivers During Overtaking Using Car-2-Car Communication and Multi-Agent Systems

07/27/2016 ∙ by Adrian Groza, et al. ∙ UTMoldova UTCluj 0

A warning system for assisting drivers during overtaking maneuvers is proposed. The system relies on Car-2-Car communication technologies and multi-agent systems. A protocol for safety overtaking is proposed based on ACL communicative acts. The mathematical model for safety overtaking used Kalman filter to minimize localization error.



There are no comments yet.


page 5

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Smart vehicles currently share with Internet of Things the first rank regarding expectations, as demonstrated by the Gartner’s Hype ( Smart vehicles represent the major change in the 2015 Hype Cycle for Emerging Technologies, as this technology has shifted from pre-peak to peak of the Hype Cycle. The main rationale is that all major automotive companies are putting smart vehicles on their near-term road-maps. At the EU level, European Commission (EC) is getting involved and promoting several Field Operational Test, while European Telecommunications Standards Institute (ETSI) has finally standardized higher layer networking protocols.

The main bottleneck is that C2X technology has just solved low level aspects with respect to ad-hoc networks or regulatory norms and standards, with much work remained at the application layer. In this paper, advances in multi-agent systems (communication protocols, speech acts) are exploited to deploy cooperative, communication based active safety application.

The remaining of this paper is structured as follows: Section II formalises the mathematical model for vehicle overtaking. Section III details the communication protocol and the experiments run based on multi-agent systems. Discussion appears section inIV, while section V concludes the paper.

Ii Cooperative safety overtaking

This section formalises the mathematical model for overtaking and the approach for minimizing localisation error of the vehicles envolved in overtaking.

Ii-a Overtaking Model

In the overtaking, multiple vehicles which have to be overtaken in a single maneuver. The overtaking car will have to travel a longer distance on the opposite road before returning to the original lane. A novel model for the overtaking maneuver is introduced in this section. The model is an extension of the mathematical model described in [2].

The situation in which one or more vehicles are in front on the overtaking vehicle, on the same lane, and an arbitrary number of vehicles can be present on the opposite lane is considered here. The model assumes that the overtaking vehicle may start the maneuver at an arbitrary distance from the car in front. In Fig. 1, the car is the overtaking vehicle, as it is signaling its intension by signaling left. The three dots between and signify that an arbitrary number of vehicles may exist there. The left signal message is beaconed to the other agents in the vanet.

We consider the physical lengths of the cars to be important as vehicle lengths can vary significantly, depending on their type. Average personal automobiles usually have a length from 2 to 4 meters but the maximum length of a truck can exceed 25 meters. We denote them with for vehicle . This information is obtained through Car-2-Car communication.

To calculate the safety level of an overtake, velocity and position of four vehicles are required: the overtaking vehicle , the closest vehicle and farthest vehicle from the same lane as the overtaker and the closest vehicle from the opposite lane.

Let be the velocity of the vehicle , while and be the velocity components on and -axis, respectively. We denote with the distance between vehicles and at time . Here, represents the time interval since the overtaking maneuver started. We assume the distance between and

is estimated at time

when the overtaking maneuver starts based on vanets communication. This distance can be calculated using equation (1).


There are two steps for assessing the safety of the maneuver. Firstly, we need to calculate the required time to overtake . Secondly, the time to collision should be estimated. consists of the time required for lane-change and the time spent on the opposite lane. When starting to change the lane, vehicle will make an angle

with the road lane. Vector decomposition 

[2] is used to calculate the velocity components on and -axis of vehicle , using equations (2) and (3).

Fig. 1: overtaking situation.

The vehicle needs to travel a distance until the center of the opposite lane, where is equal to the width of a road lane. The time necessary to travel this distance is, given by equation (4).


The distance traveled in this time on axis is given by equation (5).


The difference at time and at time is of distance between cars and given by equation (6). If this difference is positive, the distance between the two vehicles has increased after the lane change (see Fig. 2).

Fig. 2: Difference of distances between the vehicles and induced by the lane change.

The distance to the farthest vehicle from the same lane, (that is vehicle ) is . Hence, the total distance traveled on the opposite lane (see Fig. 3) is given by:


Adding to the equation has the following effect: when changed lanes, the car’s distance from changed, either increasing or decreasing. When returning to its lane, its distance to will change again, and will end up at exactly meters in front of . We assume that velocities of and are equal.

Fig. 3: Total distance traveled by on opposite lane.

The time required to cover this distance, relative to the vehicle is given by equation (8).


For the total time for the overtaking maneuver can be calculated with 9. We add two times, because the lane change times are equal.


The time to collision is:


Based on TTO and TTC, safeness of the overtaking maneuver can be determined: if the overtaking is safe.

Ii-B Reducing the localization error

For determining position of vehicle we can use a information from on-board sensors such as speed, steering angle. Most of modern car have on-board accelerometer, gyroscope and magnetometer (compass) that permit tracking the vehicle with high precision using dead reckoning techniques. Advantages of INS include high sample that is necessary for tracking high speed vehicle or during overtaking maneuvers, autonomy - it work well in tunnel (when GPS data isn’t accessible). Disadvantages of INS is increasing the position error with time.

Instead of INS the GPS is relatively slow . GPS data have an error of

with Gaussian distribution but is stable in long time perspective. Using Inertial navigation in couple with GPS can improve significant the positioning data.

Also for reducing error in positioning a Kalman filter can be applied on measured coordinate. Kalman filter is an effective procedure for combining data from noisy sensors to determine state of a system with uncertain dynamics [15]. The filtration algorithm can be computed from next parts:

1) predict the next system state


where - state of vehicle at time k, - is the model (equation of motion) that predict new state, is the state of vehicle at previous time k-1, is the model that predict what changes based on commands to the vehicle (increase in throttle or steering); is the command input at time k.

2) Project the error covariance ahead:


where previous error value, -covariance of error noise - describe the distribution of noise.

3) Computing the Kalman Gain:


where Kalman gain, - the model of how sensor reading reflect the vehicle state (function to go from sensor reading to state vector) - describe the noise in sensor reading.

4) Update the estimate with measurements from sensor:


where is the state at time and output of filter, is the estimate of state we did previously,

If our case a current state is represented by vector :

, - coordinates and , is the velocity of vehicle.

, - time interval in update vehicle state.

, - projection??? of vehicle acceleration on and axis.

Based on current state we can predict the next state:

The initial state covariance matrix can be written as:

The next state covariance matrix is calculated using relation (12)

Using the estimated covariance matrix and the measured coordinates from GPS receiver We can calculate Kalman gain by (13) and in final approximate the new state using relation (14).

Each vehicle performs inter-vehicle distance measurements , and takes a reading of its own velocity . This information is then shared with all vehicles in .

Iii Employing safety overtaking by multi-agent systems

This section details the communication protocol and the experiments run based on multi-agent systems.

Iii-a Overtaking communication protocol

This section presents the communication protocol that precedes the overtaking maneuver. The protocol aims twofold: Firstly, to obtain a confirmation from the lead vehicle that there is not another overtaking car from the opposite lane. Secondly, to notify other traffic participants of the overtaking that is about to take place. The first goal is a workaround for the limited communication range problem in vehicular networks. The intended effect of the second goal is that vehicles will keep a constant speed during the maneuver and they will not try to overtake at the same time.

If the safety module predicts a safe overtaking possibility, an overtaking intention protocol is initiated (see Fig. 4). An acknowledgment/negative acknowledgment (ACK-NACK) protocol is enacted in which the destination is required to respond back, once a message is received from the sender. Normally, an acknowledgment-based (ACK) protocol is desired, because it minimizes the bandwidth usage of the network and lowers the communication overhead. However, since package loss may be a problem in vanet-based safety applications, we need to distinguish if a packet is lost (no response from a node) or a negative response is returned, indicating a dangerous situation.

Fig. 4: Proposed protocol for the overtaking maneuver.

The protocol in Fig. 4 is initiated by the overtaking car that sends an event-based message, to notify other traffic participants of its intention. Vehicles receiving this message should reply with an acknowledge (ACK) or negative-acknowledge (NACK). A NACK packet is returned by a traffic participant if that node has knowledge of some dangerous situation. An example is presented in Fig. 5 where an overtaking maneuver is already in progress. This is useful when the overtaking vehicle is not in the communication range with the opposite overtaking vehicle . Otherwise, an ACK message is sent in response to the ’ intention. By sending an ACK, vehicles notify the overtaking car that they will maintain a constant speed throughout the maneuver.

Fig. 5: A NACK response signals that an overtaking maneuver is already in progress. The protocol warns vehicle to not engage in its intended overtaking maneuver.

After sending the intention message, the overtaking agent has to monitor the time it takes for all neighbors to respond. This needs to be done since after a period of time the initial overtaking calculations will no longer be valid. If a timeout period has been reached, the agent needs to perform the calculations again. A general diagram of the protocol phases is presented in Fig. 6.

Fig. 6: Logic flow of the overtaking protocol.

Introducing the concept of a timeout/resend technique poses the following problem: Suppose the overtaker agent has issued an overtaking request message (see Fig. 7). It receives acknowledgments from all neighbors, except one, which is delayed. The agent then resends the message and as the new ACKs are received, the acknowledgment from the previous request is also processed. The overtaking agent may mistake this for a more recent response to the request. This result is undesirable because it may induce an error in the system. The agent may decide that a situation is safe, when in fact it is not, or the other way around.

A solution to this problem is to introduce request numbering. First, a message with a request identifier 0 is sent. If the request time out, a new message with identifier 1 is sent, and so on. When responding to such requests, agents will also place the request number in the message, so that the overtaking agent can determine to which request the response is sent.

Fig. 7: Possible inconsistencies introduced due to delays or lost messages.

Iii-B Multi-agent vehicular simulation

Fig. 8: The Sniffer agent monitoring message exchanges in JADE.

To model automobiles in our VANET as intelligent agents, Jade is used. We had to map the DSRC messages in VANETs to the FIPA-ACL messages in JADE. FIPA-ACL communicative acts were used to simulate actual communication exchange in VANETs as illustrated by the Sniffer agent in Fig. 8.

Fig. 9: Graphic interface for visualization of the overtaking scenario.

We define a mis-prediction of the system as an inaccurate output (decision) taken after the algorithm finishes its execution (i.e. a safe prediction was made, when the maneuver was not in fact safe, or the other way around). The experiments were centered around the concept of communication distance and how it impacts the mis-predicted number of maneuvers. Tests were performed on a scenario with four vehicles (recall Fig. 1). Velocities and inter-vehicle distances were modified randomly. Communication range was varied from 100 to 1000 meters with 50 meter increments. For each increment, 500 maneuvers were simulated with random value intervals each time. Thus, the mis-prediction count represented in the following graphs on the -axis is from a total of 500 cases.

Velocity variation

Fig. 10: Low velocities: , .

The focus here is on how the vehicle velocities impact the number of mis-predictions. The results in Fig. 10 shows mis-prediction levels for relatively low vehicle velocities.

For low velocities (Fig. 10), we used random values in interval 50 to 60 km/h for the cars and and 40 to 50 km/h for the vehicles and .

Fig. 11: Medium velocities: , .

For medium velocities (Fig. 11), we used random values in interval 70 to 80 km/h for cars and and 60 to 70 km/h for cars and .

Fig. 12: High velocities: , .

For high velocities (Fig. 12) we used random values in interval 100 to 120 km/h for cars and and 80 to 90 km/h for cars and .

Distance variation

Focus here is on how distance between cars affect the mis-prediction ratio. The vehicle ’s position was always chosen in the interval , where is the communication distance.

Fig. 13: Short distances: , .

For short distances (Fig. 13), values were generated randomly in the following intervals: and .

Fig. 14: Medium distances: and .

For medium distances (Fig. 14), values were generated in the intervals: and ..

Fig. 15: Long distances: , .

For long distances (Fig. 15), values were generated in the intervals: , .

The results in all experiments show a general trend of mis-predictions to drop significantly between 400 and 600 meters of communication range.

Iv Discussion and Related Work

Vehicular agents are empowered with domain knowledge and they can perform geospatial and temporal reasoning in  [6]. An ontology for the vehicular network domain has been developed for supporting agents reasoning in vanet-based cooperative applications [6]. A different line of research [9] is based on mobile agents and norm-aware agents. In this paper, we assume communication through vanet technologies, aiming to be consistent with the IEEE802.11p standard. A trust model in [14] employs a penalty in case of misleading reports. Experiments with altruist/selfish agents in vanets [13] shown that average speed increased when the vehicular agents cooperate. A vanet-based emergency vehicle warning system has been developed in [8]. In line with [10] which argue on semantic exchange of mobility data and knowledge among moving objects, we will take a step towards formalizing vehicular-related knowledge and semantic interchange of events.

Minimizing localization error through Car-2-Car communication [18] or based on the Extended Kalman Filter [5] is an important aspect in the context of safety overtaking. The problem of cooperative localization has been approached from various perspectives such as Extended Kalman Filter [5, 3] or ad-hoc trilateration [16]. The system uses signal strength based inter-vehicle distance measurements, road maps, vehicle kinematics, and Extended Kalman Filtering to estimate relative positions of vehicles in a cluster. The road map is used to ensure that position estimates are within the road boundaries. Distance-bounding protocols are used to determine the upper bound on the physical distance to another vehicle, with the disadvantage that these protocols rely on roadside infrastructure. In our case the cluster is represented by the vehicles implied in the overtaking event.

The standard deviation of GPS-based positioning error is

and standard deviation of ranging measurements error between two vehicles in [19] . The ranging measurements are periodically exchange location, speed, and other kinematic information. Extensive on-the road experiment was performed [1] to test GPS errors for an accident warning system in VANETS, using a Sirf Star III GPS receiver, with a accuracy of 5 to 10 m, representing the accuracy of commercial GPS receiver. In the measurements performed in the real life scenario the absolute values of the average ( representing the actual error on the position of a vehicle) were in the order of magnitude of a medium vehicle (about 4m). The accuracy of on-board speed and orientation sensors (gyroscope) are considered in [11, 12], having an error range of around , respectively 10?/sec of orientation error at maximum. That is and . The effect of speed error on positioning accuracy (PA) using Kalman filter based CP techniques is described in [4] results in a . Other studies [17] ignore the speed error component, considering the wheel speed information to be adequate accurate. For overtaking situations, Shladover et al. in [17] consider three criteria for a successful collision warning system: (1) a minimum threshold lateral distance of 4.8m between vehicles centers, (2) longitudinal positions should be in the range of 1.5m to 6m, and (3) accurately identify vehicles speeds. Using network improvements methods to reduce communication overhead in VANETS - due to periodically exchange of messages (for example ranging measurements), can reduce packet loss and improve positioning accuracy. In [19] several methods have been studied: piggyback, compression, reducing broadcasting interval and network coding. The combination of network improvements methods with the CP technique brought a 40% improvement in positioning accuracy.

V Conclusion

We developed a warning system for assisting drivers during overtaking maneuvers. We exploited multi-agent systems and Car-2-Car communication in vehicular networks.

The proposed framework can be used to further develop various communication protocols for vehicular-based ACL messages towards plausible reasoning [7] on vehicular data streams


  • [1] A. Amoroso, G. Marfia, and M. Roccetti, “Gps position errors in vanets: Their impact on a real-world accident warning system,” in Satellite Telecommunications (ESTEL), 2012 IEEE First AESS European Conference on.   IEEE, 2012, pp. 1–5.
  • [2] A. S. de Sousa Vieira, J. C. Jr., A. Patel, and M. Taghavi, “Driver assistance system towards overtaking in vehicular ad hoc networks,” AICT 2013, The Ninth Advanced International Conference on Telecommunications, pp. 100–107, 2013.
  • [3] A. S. de Sousa Vieira, J. Celestino Júnior, A. Patel, and M. Taghavi, “Driver assistance system towards overtaking in vehicular ad hoc networks,” in AICT 2013, The Ninth Advanced International Conference on Telecommunications, 2013, pp. 100–107.
  • [4] M. Efatmaneshnik, A. Kealy, N. Alam, and A. G. Dempster, “A cooperative positioning algorithm for dsrc enabled vehicular networks,” Archives of Photogrammetry, Cartography and Remote Sensing, vol. 22, pp. 117–129, 2011.
  • [5] M. Efatmaneshnik, A. Kealy, B. Tabatabaei, and A. Dempster, “Cooperative positioning of vehicular networks with a map-matching enabled extended kalman filter,” in Proc of IEEE Vehicular Technology Conference (VTC). Piscataway, NJ: IEEE, 2010, pp. 1–6.
  • [6] A. Groza, B. Iancu, and A. Marginean, “A multi-agent approach towards cooperative overtaking in vehicular networks,” in Proceedings of the 4th International Conference on Web Intelligence, Mining and Semantics (WIMS14).   ACM, 2014, p. 48.
  • [7]

    A. Groza and I. A. Letia, “Plausible description logic programs for stream reasoning,”

    Future Internet, vol. 4, no. 4, pp. 865–881, 2012.
  • [8] A. Groza, A. Marginean, and B. Iancu, “Towards improving situation awareness during emergency transportation through ambulance-2-x communication and semantic stream reasoning,” in International Conference on Advancements of Medicine and Health Care through Technology; 5th–7th June 2014, Cluj-Napoca, Romania.   Springer, 2014, pp. 97–100.
  • [9] C.-H. Hsu, F. Xia, X. Liu, and S. Wang, “Internet of vehicles–safe and intelligent mobility, second international conference, iov 2015, chengdu, china, december 19-21, 2015, proceedings,” 2015.
  • [10] S. Ilarri, D. Stojanovic, and C. Ray, “Semantic management of moving objects: A vision towards smart mobility,” Expert Systems with Applications, vol. 42, no. 3, pp. 1418–1435, 2015.
  • [11] E.-K. Lee, S. Y. Oh, and M. Gerla, “Rfid assisted vehicle positioning in vanets,” Pervasive and Mobile Computing, vol. 8, no. 2, pp. 167–179, 2012.
  • [12] E.-K. Lee, S. Yang, S.-Y. Oh, and M. Gerla, “Rf-gps: Rfid assisted localization in vanets,” in Mobile Adhoc and Sensor Systems, 2009. MASS’09. IEEE 6th International Conference on.   IEEE, 2009, pp. 621–626.
  • [13] S. K. Lo, “A collaborative multi-agent message transmission mechanism in intelligent transportation system–a smart freeway example,” Information Sciences, vol. 184, no. 1, pp. 246–265, 2012.
  • [14] U. F. Minhas, J. Zhang, T. Tran, and R. Cohen, “Intelligent agents in mobile vehicular ad-hoc networks: Leveraging trust modeling based on direct experience with incentives for honesty,” in Web Intelligence and Intelligent Agent Technology (WI-IAT), 2010 IEEE/WIC/ACM International Conference on, vol. 2.   IEEE, 2010, pp. 243–247.
  • [15] A. Mohinder S. Grewal, Lawrence R. Well, Global Positioning Systems, Inertial Navigation, and Integration.   NewYork: A John Wiley & Sons, Inc. Publication, 2001.
  • [16] R. Parker and S. Valaee, “Cooperative vehicle position estimation,” in Communications, 2007. ICC’07. IEEE International Conference on.   IEEE, 2007, pp. 5837–5842.
  • [17] S. E. Shladover and S.-K. Tan, “Analysis of vehicle positioning accuracy requirements for communication-based cooperative collision warning,” Journal of Intelligent Transportation Systems, vol. 10, no. 3, pp. 131–140, 2006.
  • [18] R. Toledo-Moreo, J. Santa, and M. Á. Zamora-Izquierdo, “A cooperative overtaking assistance system,” Planning, Perception and Navigation for Intelligent Vehicles (PPNIV), p. 50, 2009.
  • [19] J. Yao, A. T. Balaei, M. Hassan, N. Alam, and A. G. Dempster, “Improving cooperative positioning for vehicular networks,” Vehicular Technology, IEEE Transactions on, vol. 60, no. 6, pp. 2810–2823, 2011.