Developing a Distributed Consensus-Based Cooperative Adaptive Cruise Control System for Heterogeneous Vehicles with Predecessor Following Topology

,


Introduction
Recently, the rapid development of our transportation systems has led to a worldwide economic prosperity, where transportation for both passengers and goods is much more convenient both domestically and internationally.The number of motor vehicles worldwide is estimated to be more than 1 billion now and will double again within one or two decades [1].Such a huge quantity of motor vehicles and intensive transportation activities has brought about various socialeconomic issues.For example, more than 30,000 people still perish from roadway crashes on US highways every year [2].For the past few years, cities that have experienced more economic improvements are at a higher risk to face worsening traffic conditions, resulting in increased pollutant emissions and decreased travel efficiency.In terms of average time wasted on the road, Los Angeles, for example, tops the global ranking with 104 hours spent in congestion per commuter during the year of 2016 [3].It was also estimated by [4] that there were 3.1 billion gallons of energy wasted worldwide due to traffic congestion in 2014, which equated to approximately 19 gallons per commuter.
Significant efforts have been made around the world to address these transportation issues.Many propose simply expanding our existing transportation infrastructure to help solve these traffic-related problems.However, not only is this costly but also it has many negative social and environmental effects.As an alternative solution, the development of connected and automated vehicle (CAV) can help better manage traffic, thus improving traffic safety, mobility, and reliability without the cost of infrastructure build-out.One of the more promising CAV applications is Cooperative Adaptive Cruise Control (CACC), which extends Adaptive Cruise Control (ACC) with CAV technology (e.g., mainly via vehicle-tovehicle (V2V) communication) [5].By sharing information among vehicles, a CACC system allows vehicles to form platoons and be driven at harmonized speeds with constant time headways between vehicles.The main advantages of a CACC system are as follows: (a) connected and automated driving is safer than human driving by minimizing driver distractions; (b) roadway capacity is increased due to the reduction of intervehicle time gaps without compromising safety; and (c) fuel consumption and pollutant emissions are reduced due to the reductions of both unnecessary acceleration maneuvers and aerodynamic drag on the vehicles in the platoon [6].
The core of a CACC system is the vehicle-following control model, which depends on the vehicle information flow topology.The topology determines how all CAVs in a CACC system communicate with others, and it has been well studied by researchers.Zheng et al. [7] proposed some typical types of information flow topologies, including predecessor following, predecessor-leader following, and bidirectional types.In our research, each vehicle in the CACC system only receives information from the predecessor (if it exists), which is exactly the predecessor following type.The vehiclefollowing controller efficiently describes the vehicle dynamics and cooperative maneuvers residing in the system.The performance and robustness of a CACC consensus algorithm were discussed in [8], where packet loss, network failures, and beaconing frequencies were all taken into consideration when the simulation framework is built with the CACC controller developed by [9].Di Bernardo et al. [10] designed a distributed control protocol to solve the platooning problem, which depends on a local action of the vehicle itself and a cooperative action received from the leader and neighboring vehicles.Lu et al. [11] used a nonlinear model to describe the vehicle longitudinal dynamics, where the engine power, gravity, road and tire resistance, and aerodynamics drag are all considered.However, since the complexity of such nonlinear models is problematic for system analysis, a linearized model is typically used for field deployment, such as the one in [12].Wang et al. [13] proposed an Eco-CACC system with a novel platoon gap opening and closing protocol to reduce the platoon-wide fuel consumption and pollutant emissions.Based on this study, Hao et al. [14] developed a bilevel model to synthetically analyze the platoon-wide impact of the disturbances when vehicles join and leave the Eco-CACC system.Amoozadeh et al. [15] developed a platoon management protocol for CACC vehicles, including CACC longitudinal control logic and platoon merge and split maneuvers.In terms of intervehicle distance in motion (at relatively high speed), the existing vehicle-following models can be divided into two categories: one that regulates the spatial gap, where one vehicle follows its predecessor with a fixed intervehicle distance [16] and the other that is based on time gap or velocity-dependent distance, where the intervehicle distance may vary with vehicle velocity and vehicle length by keeping a constant time headway.Our approach falls into the second category.
Stability is a basic requirement to ensure the safety of a CACC system.The control system should be capable of dealing with various disturbances and uncertainties.Laumônier et al. [17] proposed a reinforcement learning approach to design the CACC system, where the system is modeled as a Markov Decision Process incorporated together with stochastic game theory.They showed that the system was capable of damping small disturbances throughout the platoon.The uncertainties in communication network and sensor information were modeled by a Gaussian distribution in [18], which was applied to calculate the minimal time headway for safety reasons.Qin et al. [19] studied the effects of stochastic delays on the dynamics of connected vehicles by analyzing the mean dynamics.Plant and string stability conditions were both derived, and the results showed that stability domains shrink along with the increases of the packet drop ratio or the sampling time.In [20], propagation of motion signals was attenuated by adjusting the controller parameters in the system, which guaranteed the so-called string stability of the platoon.Since the inherent communication time delay and vehicle actuator delay significantly limit the minimum intervehicle distance in view of string stability requirements, Xing et al. [21] carried out Padé approximations of the vehicle actuator delay to arrive at a finite-dimensional model.It was shown in [22] that the standard constant time-gap spacing policy can guarantee string stability of the platoon as long as a sufficient large time gap is maintained.In this study, we also adopted the time-gap spacing policy and selected time gap large enough to ensure the platoon's string stability.A simulation study of platoon restoration after disturbances is demonstrated to further prove the string stability of our system.
Communication plays a crucial role in the formation of a CACC system.The United States Department of Transportation (USDOT) developed a Connected Vehicle Reference Implementation Architecture (CVRIA) to provide the communication framework for different applications, including V2V and Vehicle-to-Infrastructure (V2I) communications [23].IEEE 802.11p-basedDedicated Short Range Communication (DSRC) has been developed by the automotive industry for use in V2V and V2I communication, considered as a promising wireless technology to improve both transportation safety and efficiency.Bai et al. [24] used a large set of empirical measurement data taken in various realistic driving environments to characterize communication properties of DSRC.Since the increase of CAVs in a certain coverage area may lead to a shortage of communication bandwidth, a distributed methodology is more advantageous for vehicular communication.In our study, the V2V communication is only conducted between predecessor and follower, making the proposed system more distributed.
Essentially, the proposed system is different from a conventional Adaptive Cruise Control (ACC) system for the following reasons.(1) In the proposed system, although some forward ranging sensing techniques such as camera, radar, and lidar (Light Detection and Ranging) might be needed as supplementary methods, the core technique for CAVs to form platoon is V2V communication.CAVs send their absolute position and instantaneous velocity information measured by equipped sensors (e.g., high-precision GPS, inertial measurement unit, and on-board diagnostic system) to their followers by V2V communication.However, for a conventional ACC system, V2V communication is not enabled, where vehicles need to use their forward ranging sensing equipment to obtain predecessors' information.(2) A conventional ACC system can only implement the function of vehicle following; however, the proposed CACC system allows individual vehicle to merge into the platoon by using V2V communication."Ghost" vehicles are created as predecessors for following vehicles to follow; however, since they are virtual and only for V2V communication, it is impossible for forward ranging sensing techniques to sense them.(3) The measurement delay of forward ranging sensing techniques in a conventional ACC system is apparently different from the V2V communication delay of DSRC in the proposed system, which leads to different system behaviors in different scenarios, especially the one we talk about in Section 3.2.
Despite the advantages of consensus-based platooning approach for the CACC system, several issues still need to be addressed to improve the reliability and practicality.
(a) The primary V2V communication method being used nowadays is DSRC, which normally has a 300meter transmission range [24].As the transmission distance increases, the safety message reception probability dramatically decreases, and the relative signal strength index (RSSI) from DSRC antenna also decreases [25,26].However, many existing CACC systems such as [27] adopted predecessorleader following information flow topology, which required the leader of a platoon to communicate with all the vehicles in the broadcast mode.Therefore, when a platoon expands to a bigger size, the V2V communication between the leader and the last vehicle may introduce lower RSSI or be impaired by obstructions along the platoon.In this study, we adopt predecessor following information flow topology (i.e., "distributed"), where each vehicle in the platoon only communicates with its following vehicle to reach consensus of the whole platoon.Therefore, the platoon size is not limited by the DSRC transmission range, and the V2V communication has a higher safety message reception probability and a higher RSSI than in the predecessor-leader following topology.
(b) Most existing CACC-related research has only considered vehicles in the system as homogenous point mass models.However, in reality, vehicles should be heterogeneous with different lengths and braking performances.Therefore, we take into account the vehicle length together with the position of GPS antenna on vehicle in this study.Moreover, according to different braking performances, we assign different braking factors to different types of vehicles in our system, allowing the intervehicle distances to be weighted based on these factors.
(c) While the information flow topology and algorithm have been well studied, not many protocols have been developed to apply the theory to real-world transportation systems, especially for different traffic scenarios.In this study, we design protocols for the normal platoon formation scenario and merging and splitting scenario.Sensitivity analysis is also conducted to study the practical issues of the proposed CACC system, including the convergence rate of a platoon, the driving comfort for human passengers, and the driving safety of the whole system.By optimizing the damping gain value of our algorithm, the proposed system is supposed to be efficient, comfortable, and safe.
The remainder of this paper is organized as follows.Section 2 describes the methodology used for our distributed consensus-based CACC system.Section 3 describes the detailed simulation study and analyzes the results.Section 4 is focused on a sensitivity analysis for different aspects of driving in our CACC system.The last section provides general conclusions and outlines some future steps.

Methodology
2.1.Mathematical Preliminaries and Nomenclature.We represent the information flow topology of a distributed network of vehicles by using a directed graph G = (V, E), where V = {1, 2, . . ., } is a finite nonempty node set and E ⊆ V×V is an edge set of ordered pairs of nodes, called edges.The edge (, ) ∈ E denotes that vehicle  can obtain information from vehicle .However, it is not necessarily true in reverse.The neighbors of vehicle  are denoted by N  = { ∈ V : (, ) ∈ E}.The topology of the graph is associated with an adjacency matrix A = [  ] ∈ R, which is defined such that   = 1 if edge (, ) ∈ E,   = 0 if edge (, ) ∉ E, and   = 0. L = [ℓ  ] ∈ R (i.e., ℓ  = −  ,  ̸ = , and ℓ  = ∑  =1, ̸ =   ) is the nonsymmetrical Laplacian matrix associated with G.A directed spanning tree is a directed tree formed by graph edges which connects all the nodes of the graph.
Before proceeding to designing our distributed consensus algorithm for the CACC system, we recall here some basic consensus algorithms which can be used to apply similar dynamics on the information states of vehicles.If the communication between vehicles in the distributed networks is continuous, then a differential equation can be used to model the information state update of each vehicle.
The single-integrator consensus algorithm [28] is given by where   ∈ R,   > 0, and   = 1 if information flows from vehicle  to  and 0 otherwise, ∀ ̸ = .The adjacency matrix  of the information flow topology is defined accordingly as   = 0 and   =     , ∀ ̸ = .This consensus algorithm guarantees convergence of multiple agents to a collective decision via local interactions.
Equation (1) can be extended to second-order dynamics to better model the movement of a physical entity, such as a CAV.For a second-order model, the double-integrator consensus algorithm [29] is given by where   ∈ R, V  ∈ R,   > 0,  > 0, and   = 1 if information flows from vehicle  to  and 0 otherwise, ∀ ̸ = .

System Specifications and Assumptions.
It shall be noted that since our study mainly focuses on communication topology and control algorithm of the system, we make some reasonable assumptions while modelling the general system to enable the theoretical analysis.
(a) All vehicles are CAVs with the ability to send and receive information among the same transmission range, and there is no vehicle actuator delay in the proposed system.
(b) Every vehicle in the proposed system is equipped with appropriate sensors (e.g., high-precision GPS, inertial measurement unit, and on-board diagnostic system) to measure its absolute position and instantaneous velocity, and the measurement is precise without noise.
(c) Vehicle types are assumed to be heterogeneous, with different vehicle length, location of GPS antenna on vehicle, and braking performance.

Distributed Consensus Algorithm for the CACC System.
The objective of the distributed consensus-based CACC system is to use algorithms and protocols that ensure consensus of a platoon of vehicles.Toward this end, the meaning of consensus is twofold: one is the absolute position consensus, where one vehicle maintains a certain distance with its predecessor, and the other is the velocity consensus, where one vehicle maintains the same velocity with its predecessor.Taking into account second-order vehicle dynamics, we propose the distributed consensus algorithm for the CACC system, for  = 2, . . ., ,  =  − 1: where vehicle 's predecessor is vehicle ;   () is the absolute position of the GPS antenna on vehicle  at time ; ẋ  () or V  () is the velocity of vehicle  at time ;   () is the unavoidable time-varying communication delay when information is transmitted from vehicle  to vehicle  at time ;   is the length between the GPS antenna and the front bumper of vehicle ;   is the length between the GPS antenna and the rear bumper of vehicle ;    is the desired intervehicle time gap between vehicle  and vehicle ;   is the braking factor of vehicle ;   is the (, )th entry of the adjacency matrix;  is a damping gain.The part is the absolute position consensus term, and the part [ ẋ  () − ẋ  ( −   ())] is the velocity consensus term.The positions of vehicles in the proposed CACC system are illustrated in Figure 1.
With (3), consensus is reached by a platoon of vehicles if, for all   (0) and ẋ  (0) and all  = 2, . . ., , which means the absolute position difference of the two vehicles converges to a velocity-determined distance plus two constant vehicle length terms, while the velocity difference of

Gps antenna Gps antenna
Direction l jr l jf x j (t) the two vehicles converges to zero.Details of the convergence analysis of (3) can be found in Appendix B.
As mentioned in Section 1, a common issue regarding CACC systems is the string stability.This refers to the capability of attenuating traffic shockwaves by vehicles in platoons.Generally, string stability is defined with respect to the propagation of vehicle spacing errors and/or vehicle accelerations [30].In particular, if we define   as the vehicle spacing error (i.e., intervehicle distance) between two consecutive vehicles in a platoon, then string stability with respect to vehicle spacing error indicates that where   () is the Laplace transform of the vehicle spacing error   .This criterion can be therefore applied to guarantee that the vehicle spacing errors are not amplified upstream in the platoon.Likewise, if we define   as the acceleration of vehicles in a platoon, then string stability with respect to vehicle acceleration implies that where   () is the Laplace transform of the vehicle acceleration   .This guarantees that the vehicle accelerations are not amplified upstream in the platoon.We adopt (6) to analyze the string stability of our system, and the details are discussed in Appendix C. Simulation results in Section 3.2 show that the tuning parameters in (3) are chosen to guarantee string stability of the system.The braking performance of a vehicle can be affected by many factors, including the mass of the vehicle and the aerodynamics performance of the vehicle.We assign a braking factor   , which is assumed to be an aggregate of the aforementioned factors, to each vehicle of the proposed CACC system.This braking factor itself does not affect but reflects the braking performance of vehicles.Specifically, it works as a weighting factor of the desired intervehicle distance   (safety braking distance), making it different for different vehicles in the proposed system.In this study, the braking factors are assumed to be known constants, while the exact methodology to calculate the braking factor is discussed as future research in Section 5.
We assume that the vehicle in the proposed system receives its absolute position (location) information by the GPS antenna that is installed on a certain position of the vehicle's roof.Both the length between antenna and the front bumper   and the length between antenna and the rear bumper   of each vehicle are assumed to be known constants.Thus the length of vehicle  is   =   +   .We use time gap    to adjust the intervehicle distances that are subject to the change of vehicles' velocities.By referring to Figure 1, the relationship between time headway and time gap can be denoted as  ℎ =      + (  +   )/ ẋ  ( −   ()).The damping gain  needs to meet a specific requirement to ensure the convergence property of the distributed consensus algorithm, which will be analyzed in Section 4 of the paper.
Equation ( 3) is designed for all but the leading vehicle in our CACC system.The dynamics of the leading vehicle can be characterized as where  1 (), V 1 (), and  1 () represent the absolute position, velocity, and acceleration of the leading vehicle, respectively.The leading vehicle of a platoon is set to cruise at a certain velocity, with  1 () = 0. Equation (3) will allow all the following vehicles in the platoon to track the dynamics of the leading vehicle on the above two scenarios.

Distributed Consensus Protocol for the CACC System.
Considering different scenarios in our system, two protocols are designed in the following.

Normal Platoon Formation
Protocol.This protocol is designed for vehicles to form a platoon.For vehicle  in our CACC system, it needs to check whether there is a predecessor in a certain distance  after the platoon formation mode is activated.(a) If yes, then vehicle  will communicate with its predecessor and (3) will be applied, which enables vehicle  to be a following vehicle.
(b) If no, then vehicle  may become a leading vehicle of a platoon (where  = 1) and cruise at a constant velocity.The driver can also take over the control to drive however he/she wants, but the vehicle may still potentially act as a leading vehicle of the platoon.
After the above procedure, vehicle  is in the distributed consensus-based CACC system whether it plays the role of a following vehicle or a leading vehicle.However, the "following" and "leading" roles for vehicle  may switch under the following conditions.
(a) For a following vehicle , if all of its predecessors move out of the distance  ahead of vehicle , then vehicle  changes from a following vehicle to a leading vehicle, where  = 1.
(b) For a leading vehicle  (i.e.,  = 1), if one or more vehicles move into the distance  ahead of vehicle , then vehicle  changes from a leading vehicle to a following vehicle, where  = 2, . . ., .
Figure 2 shows the flowchart of this protocol for the distributed consensus-based CACC system.For the case where vehicle  (as a free agent) tries to merge into a platoon on the adjacent lane, after the merging mode is activated, vehicle  will communicate with the platoon leader and decide which position it will be in the platoon, as shown in Figure 3(a).If it decides to be the th vehicle of the platoon after merging maneuvers, then a "ghost" vehicle with respect to vehicle −1 of the platoon will be created in front of vehicle , as shown in Figure 3(b).This "ghost" vehicle has all the same parameters but the lateral position as vehicle −1.Then, vehicle  will automatically adjust its absolute position and velocity with the "ghost" vehicle by (3).After that, vehicle  sends a merging signal to vehicle +1 in the platoon, as shown in Figure 3(c).Upon receiving the merging signal, a "ghost" vehicle with respect to vehicle  is created in front of vehicle  + 1, and vehicle  + 1 starts to adjust its absolute position and velocity to create a gap for vehicle  by (3), as shown in Figure 3(d).After the gap is fully created, vehicle  + 1 sends a confirmation signal to vehicle , and vehicle  merges into the platoon, as shown in Figure 3(e).

Merging and Splitting Maneuvers Protocol. Normal platoon formation protocol addresses the longitudinal
The case where vehicle  (in the platoon) tries to split from the platoon is easier.It is studied in [32] that there are two strategies for splitting maneuvers or so-called CACC string dissolution.The most efficient action is for the departing driver to do a simple lane change in the direction of the off-ramp.The other strategy is for the departing vehicle to deactivate the CACC function by tapping on the brakes before changing lanes, creating a split in the CACC string and becoming the manually driver leader of the platoon until it moves out of the lane.In our system, we adopt the first strategy.After the splitting mode is activated, the driver can take over the lateral control of the vehicle and perform the lane change without adjusting the velocity longitudinally.After vehicle  completes the lane change, vehicle  + 1 will be informed that its predecessor changes from vehicle  to vehicle  − 1 and therefore adjusts its velocity to close the gap.A new platoon is formed, where vehicle  + 1 becomes vehicle , and vehicle  + 2 becomes vehicle  + 1, and so on.

Simulation Study
We use MATLAB Simulink [33] to simulate three different scenarios of our distributed consensus-based CACC system.For the sake of brevity, in the simulation study, we assume that the communication delay between two CACC-equipped vehicles is   () = 60 ms [9].Results of vehicle velocity and weighted and unweighted intervehicle distance are shown in different scenarios.

Normal Platoon Formation.
In the first scenario, we assume that there are four CAVs of different types (i.e., 2 sedans, 1 SUV, and 1 truck) driving at randomly varied velocities on the same lane of a highway.At a certain time ( = 0), they all switch on the platoon mode.From then on, they adjust their absolute positions and velocities based on (3) and ( 7) as well as normal platoon formation protocol to reach consensus and form a platoon.The vehicle parameters of this distributed consensus-based CACC system are listed in Table 1.
As can be seen from Table 1, we assume that vehicles 1 and 2 are sedans with vehicle lengths of 5 m and braking factor of 1, vehicle 3 is a SUV with a vehicle length of 5 m and a braking factor of 1.1, and vehicle 4 is a truck with a vehicle length of 10 m and a braking factor of 1.6.We further assume that the GPS antenna is located at a point of vehicle satisfying 2  = 3  .The weighted intervehicle distances are used instead of time gaps to measure the consensus of vehicles' absolute positions in a more intuitive manner.They can be written as As a key parameter, the damping gain  in (3) will affect the convergence rate of absolute positions and velocities of all the vehicles in the platoon.In this study,  = 7 is set to all three simulation scenarios.More detailed analysis on how the value of  may affect the system performance (e.g., driving safety and driving comfort) is conducted in the next section.By implementing our distributed consensus-based strategy, the simulation results of our CACC system are shown in Figures 4(a)-4(c).
Figure 4(a) shows that, after the platoon mode is activated at  = 0, all of the three unweighted intervehicle distances converge to 13 m at around 35 seconds.This unweighted intervehicle distance can be considered as a "virtual" target value we set for the system to achieve, not the "real" intervehicle distance.Figure 4(b) shows the results for weighted intervehicle distance.By introducing the braking factor, the steady state of weighted intervehicle distance varies with different vehicle pairs.The weighted intervehicle distance indicates the "real" value for intervehicle distance in our CACC system.In this case, at the steady state of the system, vehicle 1 and vehicle 2 have a 13 m (0.43 s) gap, vehicle 2 and vehicle 3 have a 14.3 m (0.48 s) gap, and vehicle 3 and vehicle 4 have a 20.8 m (0.69 s) gap.It is shown in Figure 4(c) that velocities of the four vehicles converge within around 35 seconds after the platoon mode is activated.After running the distributed consensus algorithms, they all converge to 30 m/s, which is the constant velocity of the leading vehicle and also the desired velocity of this platoon.

Platoon Restoration from Disturbances.
In this scenario, a simulation test is conducted to demonstrate the string stability of our CACC system, where the distributed consensus algorithm has the capability of attenuating the impact of sudden disturbances.In the platoon mode of our distributed consensus-based CACC system, if one vehicle (e.g., leading vehicle) suddenly brakes and reduces its velocity due to emergency, then the following vehicles will decelerate accordingly to maintain certain weighted intervehicle distances.
For example, we assume that all the parameters remain the same as the first scenario.At time  = 45 s, suppose that the leading vehicle suddenly brakes due to a flat tire, and its velocity decreases from 30 m/s to 15 m/s.To simplify the scenario, we assume that the brake happens only suddenly (Δ ≈ 0), that is, a step change in leading vehicle's velocity.
The simulation results of sudden brake are shown in Figures 5(a)-5(c).Figure 5(a) shows that the unweighted intervehicle distance between vehicle 1 and vehicle 2 suffers an approximately 4 m decrease at time  = 45 s.However, the unweighted intervehicle distance between vehicle 2 and vehicle 3 only suffers an approximately 0.7 m decrease, and the one between vehicle 3 and vehicle 4 is further smaller.This result implies that the sudden disturbance on the intervehicle distance is attenuated along the rest of the platoon.
The velocity of vehicles in platoon is shown in Figure 5(c).The sudden brake originates from vehicle 1, and vehicle 2 tends to avoid the collision with vehicle 1 with a hard braking event.The braking event of vehicle 3 is not as hard as vehicle 2 (the slope is smaller), and the braking of vehicle 4 is further smoother than vehicle 3. The smoother their braking is, the smaller the absolute value of their acceleration will be.After the braking event, the velocities of the three following vehicles are slowly restored to the desired velocity.This result implies that the sudden disturbance on the vehicle acceleration is attenuated along the rest of the platoon.
Figure 5(b) presents the results for weighted intervehicle distance; that is, the unweighted intervehicle distance multiplies by the braking factor of different vehicles.Overall, the simulation results of this scenario indicate that our distributed consensus-based CACC system is capable of attenuating sudden disturbances and restoring to normal conditions; that is, this system is string-stable.

Merging and Splitting Maneuvers.
In this scenario, we show the effects when the proposed distributed consensus algorithm is performed together with the merging and splitting maneuvers protocol as presented in Section 3.
For merging maneuvers, assume that, at time  = 0, a three-vehicle platoon (same parameters as vehicles 1, 3, and 4 in the first scenario) is operating at the steady state (i.e., cruising at the velocity of 30 m/s).Another individual vehicle (same parameters as vehicle 2 in the first scenario) traveling at the velocity of 35 m/s on the adjacent lane plans to merge into the platoon, and the simulation result is shown in Figure 6(a).
It can be observed from Figure 6(a) that the individual vehicle switches on the merging mode at time  = 5s.From then on, a "ghost" vehicle with respect to the first vehicle in the platoon is created, and the individual vehicle adjusts its velocity from 35 m/s to 30 m/s by (3).After that, the individual vehicle sends a merging signal to the second vehicle of the platoon.Then a "ghost" vehicle with respect to the merging vehicle is created in front of the second vehicle of the platoon.Based on (3), both the second and third vehicles of the platoon decelerate to create a gap, and the second vehicle sends a signal to the individual vehicle upon the completion of gap opening.Finally, the individual vehicle merges into the platoon, and the velocities of the other two following vehicles are restored to consensus in around 8 s.
For splitting maneuvers, assume that, at time  = 0, a fourvehicle platoon (same parameters as vehicles 1, 2, 3, and 4 in the first scenario) is cruising at the velocity of 30 m/s.The second vehicle will split from the platoon, and the simulation result is shown in Figure 6(b).
The second vehicle of the platoon switches off the platoon mode and drives away (constantly accelerates from 30 m/s to 35 m/s) from platoon at time  = 10 s.After the second vehicle completes its lane change, the third vehicle confirms that its predecessor has changed to the first vehicle of the platoon.Then it adjusts its velocity based on (3) to close the gap.The fourth vehicle accordingly adjusts its velocity to follow the movement of its predecessor.Therefore, the simulation results of the third scenario show that our distributed consensus-based CACC system is capable of carrying out merging and splitting maneuvers.

Sensitivity Analysis
In this section, a sensitivity analysis is conducted to study how the uncertainty in the damping gain  can affect the uncertainties in the convergence rate of the system, the acceleration and jerk (time rate of change of acceleration) of vehicles in the system, and the minimum weighted intervehicle distance between two consecutive vehicles in the system.This sensitivity analysis is based on the normal platoon formation scenario, where the information flow topology G contains a directed spanning tree as shown in Figure 7.
The adjacency matrix then can be defined as and the nonsymmetrical Laplacian matrix is Recall that, in (3), there is a damping gain  before the velocity consensus term.Similar to the second-order consensus algorithm in [34], we can get the conclusion that (3) achieves consensus asymptotically if and only if directed graph G has a directed spanning tree and  > max where   ,  = 1, . . ., , denotes the th eigenvalue of −L.
The detailed proof of the above conclusion is included in Appendix B. Since the specific value of  has significant influences on our CACC system in different respects, a  sensitivity analysis is conducted in this section, including three different parts.

Convergence Rate Analysis.
The convergence rate of the proposed distributed consensus algorithm will affect the time required for our CACC system to reach the steady state.The faster the convergence rate is, the less time will be consumed and thus the higher efficiency of our CACC system is.
In this case, we study the convergence rate of our system without communication delay for the sake of brevity.Define The information states with second-order dynamics of our system, which are in this four-vehicle platoon case without communication delay, can be written in a matrix form as where The way to find the eigenvalues of Γ is to solve the characteristic polynomial of Γ, which is As aforementioned,   is the th eigenvalue of −L.Therefore, it can be given that By comparing ( 14) to (15), we can get which implies that the solution of ( 14) is the same as the solution of Therefore, the eigenvalues of Γ can be given by The convergence rate is an exponential decay term known as  −() , where Since Re{ 1 } ≥ Re{ 2 },  = 1 is set in (19).To find out the maximum convergence rate, we need to find out  * > 0 such that ( * ) = min ().It is proven in [35] that the minimum of () is achieved if Re{ 21 } =  1 ; that is, Therefore, the maximum convergence rate is achieved as Noting that the Laplacian matrix L is previously given and  2 and   can be derived, a value of  =  * = 2 is obtained reach the maximum convergence rate.When  < 2, the larger  is, the faster convergence rate will be.When  > 2, the larger  is, the slower convergence rate will be.Therefore, to reach higher efficiency of our CACC system, we design the value of damping gain  as close to 2 as possible.

Driving Comfort Analysis.
In this part, we analyze the effect of  on driving comfort.The change of vehicle velocity is related to vehicle acceleration and jerk, and it is studied in [36,37] that a limitation of ±2.5 m/s 2 and ±10 m/s 3 for acceleration and jerk separately will be comfortable for human passengers.We measure the values of arg max || and arg max |jerk| through normal platoon formation process and check under which value of  will −2.5 m/s 2 <  < 2.5 m/s 2 and −10 m/s 3 < jerk < 10 m/s 3 be satisfied.If  and jerk are both in the range, then driving is comfortable for human passengers.
Parameters of this analysis are set in Table 2, which are exactly the same as the first two vehicles in aforementioned simulation scenarios.The result of the sensitivity analysis on driving comfort is shown in Figure 8.As can be seen from it, when 7 ≤  ≤ 7.8, both the acceleration and the jerk are in the "comfort" ranges.Since a faster convergence rate is desired, a value of 7 can be chosen for .

Driving Safety Analysis.
In this part, we analyze the effect of  on driving safety.We measure the value of minimum weighted intervehicle distance through normal platoon formation process and check whether it goes to negative.If it does, then a collision between the leading vehicle and the following vehicle occurs.
We first analyze how the changes of  and the initial weighted intervehicle distance  0 will affect the minimum weighted intervehicle distance min(  ).All parameters but the initial weighted intervehicle distance ( 0 is a variable in this case) of this sensitivity analysis are set the same as in Table 2.The result is shown in Figure 9.
As shown in the result, the areas indicating min(  ) < 0 appear mostly when  0 > 25 m and meanwhile  < 1.This is because when the absolute position difference is large and the damping gain of velocity consensus term is small, the system tends to put more weight on the absolute position consensus term, resulting in a large overshoot of the absolute position consensus.When the initial weighted intervehicle distance is sufficiently large ( 0 > 0.18 m), we can avoid this by choosing the value of  no smaller than 2. Also, there is a linear area indicating min(  ) < 0, where  0 is small.A hypothesis is that, at time  = 0, the following vehicle has a higher velocity and the weighted intervehicle distance is rather small, so there exists no  to ensure the following vehicle to avoid the collision with the leading vehicle.If we fix the value of , it is found that the closer  0 approaches to   (13 m), the larger min(  ) is.
We also analyze how the changes of  and the initial velocity difference  ẋ 0 will affect the minimum weighted intervehicle distance min(  ).All parameters but the initial velocity (the difference of ẋ 0 and ẋ 0 is a variable in this case) of this sensitivity analysis are set the same as in Table 2.The result is shown in Figure 10.
As shown in the figures, collision only happens in the areas where  is small.If we fix the value of , it is found that the closer  ẋ 0 approaches to 0 m/s, the larger min(  ) is.A potential explanation is that although the weighted intervehicle distance will change regardless of the initial value, the change will be minimized when the initial velocities of the two vehicles are the same.When  ≥ 2, no matter how much the initial velocity difference is, the minimum weighted intervehicle distance will always be 13 m.By analyzing the results of driving safety analysis, we know that the preliminary value of  ( = 7) chosen for our CACC system is safe without any collision between two vehicles.When the parameter setting changes, the procedures of convergence rate analysis, driving comfort analysis, and driving safety analysis can be applied to choose the best value of , which ensures the platoon in our CACC system to be efficient, comfortable, and safe.

Conclusions and Future Research
In this study, we have proposed a novel CACC system based on a distributed consensus algorithm, which takes into account the unavoidable time-varying communication delay, as well as the length, GPS antenna's location, and braking ability of different vehicles.We have also developed distributed consensus protocol, allowing our CACC system to process the algorithm to implement the function of forming a platoon, merging, and splitting.The algorithm and protocol have been implemented in MATLAB Simulink and the system is shown to have the ability to be restored from a variety of disturbances and carry out merging and splitting maneuvers.In addition, a sensitivity analysis was performed on the algorithm, indicating that the distributed consensus algorithm reaches the maximum convergence rate when  = 2, and  = 7 is an optimal value for our system to be efficient, comfortable, and safe under the given parameter setting.
It should be pointed out that although the system level (cyberspace) of vehicles has been taken into account in this study, the actual vehicle dynamics model (physical space) has been neglected.Combination of the cyberspace and the physical space may be a future goal of this study.Also, as discussed in Section 2, the braking factor we proposed may be an aggregate of many different factors, including the mass of the vehicle (light or heavy), the aerodynamics performance of the vehicle (good or bad), the status of the brake (new or worn), the status of the tires (new or worn), the type of the tires (all-season tires or snow tires), the status of the road surface (dry or wet), and the gradient of the road surface (flat or steep).By applying fuzzy logic theory [38], a control model considering above factors as inputs and braking factor as output can be developed in the future to decide the value of braking factor for each vehicle in the system.Moreover, although the proposed distributed consensus algorithm has taken into account some system uncertainties like communication delay, many other issues that may occur in the field implementation still have not been addressed in this study, such as packet loss, signal fading, and signal interference.This unlocks more opportunities for future research.pair of vehicles, that is,   () =  1 () =  1 (), then, after some algebraic manipulations, we can rewrite (A.1) as If we define the dynamics of the system in a compact form as

C. String Stability Analysis of the Distributed Consensus Algorithm
Writing the distributed consensus algorithm (see ( 4)) in a second-order form as   for all frequencies of interest [20].

Figure 1 :
Figure 1: Positions of vehicles in the proposed system.

Figure 4 :
Figure 4: Simulation results of normal platoon formation.

Figure 5 :
Figure 5: Simulation results of platoon restoration from disturbances.

Figure 6 :
Figure 6: Simulation results of merging and splitting maneuvers.

Figure 7 :
Figure 7: Information flow topology of normal platoon formation scenario.

Figure 9 :Figure 10 :
Figure 9: Driving safety analysis related to initial weighted intervehicle distance.

Table 1 :
Values of vehicle parameters.

Table 2 :
Values of vehicle parameters.
(4)et matrix  and matrix  be defined in (B.2).  is Hurwitz-stable if and only if  is positive stable and where  is defined in (B.4),   is th eigenvalue of , and () is the set of all eigenvalues of , then there exists a constant  0 > 0 such that when 0 ≤   ≤  0 ( = 1, 2, ..., ), the agents of the same platoon in the CACC system can achieve consensus as defined in(4).Proof.Since matrix  is Hurwitz-stable based on Lemma 2, there exists a positive-definite matrix  ∈ R 2×2 such that  +    = − 2×2 .