Coordinated collision avoidance for multi‐vehicle systems based on collision time

Correspondence Hongjun Yu, College of Automation, Harbin Engineering University, Harbin 150001 China. Email: hongjun_yu@outlook.com Abstract Vehicles have irregular shapes and inter-vehicle coordination is not a trivial task. Based on the distributed-system framework, this paper studies multi-vehicle control and coordinated obstacle avoidance for multiple autonomous vehicles with irregular shapes. The goal is to reach target points without collisions. The proposed approaches are based on collision time, which is calculated using vehicles’ irregular shapes. The approaches have two parts. The first part enables a number of vehicles to reach the target points. The second part enables collision avoidance, which includes inter-vehicle collisions and vehicle-to-obstacle collisions. Speed regulation approach is proposed to change the speeds, and frequencymodulation approach is proposed to update control commands at varying steps, and a combined approach is also proposed. Simulation examples are set to verify the effectiveness of the proposed approaches.


INTRODUCTION
In recent years, swarming techniques has been widely investigated by researchers for various applications. The research interests arise from swarms' many favourable characteristics, such as autonomy, robustness, adaptability, decentralisation and coordination. This has led to a range of practical applications, such as robotic survey of underwater terrain, cluster operation of ground robots and unmanned vehicular control. Multi-vehicle control is a hot research topic in the field, and its investigation can often be divided into two topics. The first one is how to enable multiple agents to reach the target points from chaotic initial states. Once the vehicles have reached the target points, the second one is how they move along the desired directions or follow a path. In the meanwhile, the agents adapt to the environment change and maintain the integrity of the swarm.
Controller design with tolerance against actuator faults is studied in [1]. Although satisfactory results are demonstrated, it is not clear how these designs are applicable to vehicles; only simple topologies are analysed, lacking sufficient verification for complicated situations where there are many vehicles in  [2,3] to track system state. fixed topology is studied and robustness design is required for varying topologies. Similar work is seen in [4] with collision avoidance and lane-changing strategy. Splitting and merging are enabled deliberately in [5] to avoid obstacles. However, only simple scenarios are demonstrated in simulation examples, lacking evidence for complicated applications. Consistence-based algorithm is used in [6] for single-integrator agents to achieve obstacle avoidance among the agents, and further study on complex dynamics is still needed. We do not set any upper limit on the number of vehicles in the system and the proposed approaches work when the obstacles are static or mobile.
Auto-drive on multi-lane highway is investigated in [7]. Integer programming is used to achieve maximal safety for individual vehicles. However, coordination among vehicles is not considered. Realistic situations are investigated in [8] in terms of vehicle-to-vehicle communication while system topology is not the focus and coordination among vehicles is not demonstrated. Distributed, decentralised and localised mechanism is introduced in multi-agent system [9][10][11][12][13]. Dynamic role allocation is introduced in [14] for homogeneous linear agents to improve overall efficiency . Similar problems are studied in [15] for task assignment. Decentralised system is studied in [16] and [17] for large-scale environment. Decentralised approach based on the leader-follower mechanism is presented in [18]. In minimising the objective function, calculation burden could be heavy and requirements on sensor are high. Range-based leaderfollower approach are investigated in [19,20]. However, it is not clear how agents communicate and this weakens the applications. This paper assumes that the system is distributed and the individual vehicles are equal; no hierarchy is assumed over the vehicles and system topology varies in collision avoidance.
Lyapunov function is used in model prediction scheme in [21]. Instead of guaranteed collision avoidance, parametric relaxation is used to strike a balance between conflicting targets. Cooperative control is studied in [22,23] and the goal is to ensure obstacle avoidance. Potential function is used in [24,25] for similar purposes. However, in these studies, vehicle shapes are not taken into account and this weakens the potential in applications. Agent behaviours in [26] are divided into emergent, obstacle avoidance and task-oriented based on behavioural fuzzy controller. Although this method can provide obstacle avoidance, it is inefficient completing the task. We design simple approaches to provide guaranteed collision-avoidance performance. We use collision time which takes shapes of vehicles into consideration and this reduces conservativeness.
We propose simple distributed obstacle-avoidance approaches based on collision time. Only limited information exchange among the intelligent vehicles is incurred, during which translational and rotational speeds are acquired by close vehicles. The aim is to enable the multi-intelligent fleet with restricted motions at the random positions to reach the target points. Our contribution is summarised as follows: (A) the proposed approaches are based on collision time that takes vehicle shapes into account and reduces the conservativeness; (B) the approaches use speed regulation and frequency modulation by changing vehicle speeds and command update rates and they provide guaranteed collision avoidance; (C) the approaches proposed are simple, intuitive and require little computation resource.

PROBLEM STATEMENT AND PRELIMINARIES
This paper studies control of multiple vehicles. The initial points are random and the target points are given. The vehicles are wheeled and move along heading directions. They have different sizes and shapes. A basic scheme enables the vehicles to reach their target points. As they are moving, there are likely collisions and this triggers the collision-avoidance scheme. The goal is to enable the vehicles to avoid collisions and reach the target points. We assume that the vehicles has limited turning radius and they can obtain the heading direction and distance of a nearby vehicle/obstacle. There is no leading or following vehicles and the system is decentralised. The vehicles make decisions on their own and they update decisions at individual and upper bounded frequencies. There are N vehicles in the 2D space and they move along heading directions. For vehicle i, we use Equation (1) to describe its dynamics.
where i = 1, … , N , and N is the total number of vehicles in the system; x i (k) is position of vehicle i at instant k; v i (k) is speed of the vehicle i at instant k; i (k) is the control interval of vehicle i at instant k; ⃗ e i (k) is a unit vector representing the heading direction of vehicle i at instant k. Although the results of this paper are applied on wheeled vehicles, they are adaptable to different dynamics. Note that the time at instant k is t (k). We denote the shape of vehicle i by a cluster P i = {p i 1 , p i 2 , … } of points on its contour. Note that such a cluster is regarded as a rigid body. To avoid collisions, it is important to ensure that the shortest distance between any two points from the shape clusters of two vehicles is always non-zero. This also provides sufficient room for safe operation of a given task.
Take Figure 1 as an example. The shape cluster of two vehicles is labelled, and they have certain translational and rotational speeds at instant k. At the given speeds, they will have an expected collision and the expected point of collision is shown. The time that it takes for the collision to happen is collision time 12 (k) between vehicles 1 and 2. We can follow the process below. (3) Repeat step (1) until f i j is sufficiently small. This means that the distance between the two virtual vehicles is almost zero and we have that the collision time is t (1) + t (2) + … Remark 1. In this section, we introduce the distance and collision time between two vehicles. Note that the distance between two vehicles is found along a direction; collision time takes the rotational and translational speeds of the vehicles into account. Collision time is scalar and we use it to simplify algorithm design to take advantage of this unique attribute, which has not been seen in existing results. Moreover, the search for shortest distances in step (2) above is done iteratively and the calculation is fast. Usually, it would take 0.1 s on a MacBook pro Mid 2014 model on a non-optimised platform.

MAIN RESULTS
In this section, we present control design for multi-vehicle system. It enables a group of vehicles to reach the target points. We first propose the basic form of the approach. Then, to provide guaranteed collision avoidance, we use collision time to propose two modified versions based on frequency modulation and speed regulation.

Basic form of multi-vehicle control
In this section, we present the basic form of control design. The set of all target points is is the target point for vehicle i. The control commands for vehicle i at instant k are i (k), g i (k) and h i (k), and they are used to change the update frequency, translational and rotational speeds by Equation (2). ] . (2) Based on d i , 1 ≤ i ≤ N , we have the basic form of multi-vehicle control by Equation (3).
where h and g are constants and the larger their values are, the faster the vehicles move. The sign of h i (k) guarantees that the vehicle i' heading direction rotates to its target point; h is used to tune such turning rate to guarantee that this happens before the vehicle i reaches its target point. The basic form of control is to enable a group of vehicles to reach the target points. For vehicle i, the goal is to In the process, the heading direction of vehicle i rotates to target point d i , and eventually Remark 2. Note that although the vehicles change the update frequency of control commands for collision-avoidance purposes, the basic form does not impose such control design and update control command regularly. i (k) could be positive or negative but i (k) always is positive and lower bounded by i ; g i (k) and h i (k) could be positive or negative, and the same is with v i (k).

Speed regulation
In Section 3.1, basic form for multi-vehicle control is presented. Such scheme enables vehicles to reach their target points. In this section, to provide guaranteed collision avoidance, we use collision time to introduce speed regulation and modify the basic scheme. We assume that vehicle i is able to acquire the translational and rotational speeds of nearby vehicles by means of sensing or communication. Speed Regulation is proposed based on collision time. The set of collision time is T i (k) = { i1 (k), i2 (k), … } and i j (k) is the collision time between vehicle i and vehicle j at instant k as is defined in Section 2. Vehicle i is more likely to collide with nearby vehicles if min T i (k) gets shorter. However, collision avoidance actions slow down vehicles in their way to the target points. We introduce a constant T i and we propose that collision avoidance actions need to be taken whenever condition min T i (k) < T i is satisfied; vehicles are coordinated in guaranteeing that the collision time is above the safe lower bound T i .
Take Figure 2 as an example. The initial coordinates of vehicles 1 and 2 are (0,0) and (−15, 20); the heading angles are 100 •  Figure 2 that it takes 0.704 s for the vehicles to collide. By speed regulation, the vehicles change the likelihood of collision. The setup is similar in Figure 3 except that the speeds of vehicle 1 are 1∕s, 2∕s and 3∕s, which leads to three collision times 1.044, 0.704 and 0.559 s. It can be seen that by slowing down, vehicle 1 is able to prolong collision with vehicle 2.
Remark 3. Note that we use disc to denote a vehicle and it has only two wheels. Practical vehicles may have different shapes and more wheels, including steering and actuator wheels. Nonetheless, they often move at translational speeds and along heading directions. Compared with two-wheeled disc vehicles, other vehicles have non-zero turning radii. Similar descriptions and designs still apply in Figures 2-7 Figure 4. By speed regulation, there are no points of collisions in Figure 5 after we change the speeds to 0.5∕s, 4∕s, 0.5∕s and 0.7∕s. We observe that in order to eliminate collisions, vehicles 1, 3 and 4 have to slow down and vehicle 2 has to speed up.
We use Algorithm 1 to automate this process. In the upper left corner, we assume that the flow is activated every 0.1 s and t (k) = t (k − 1) + 0.1. During every 0.1 s, relative distances, heading directions, translational and rotational speeds of nearby vehicles are repetitively acquired by vehicle i by means of com-  munication and sensing. These information is used to calculate T i (k) and it is checked whether the condition below is satisfied.
If so, then vehicle i will take collision avoidance action and change its translational speed to lengthen the collision time; if not, then vehicle i will use Equation (3) to update the speeds.  In either case, a new translational speed v i (k + 1) is produced. Note that Δ v has a positive constant value and it is used to ensure that the translational speeds are not changed abruptly.
When no collision avoidance actions are taken, by Equation (3), we will have g i (k) → 0 and h i (k) → 0, and this means that the vehicles are chasing the target points. However, if paths of vehicles cross, vehicles will have to take speed-regulation actions to avoid collisions, during which they might temporarily move ALGORITHM 1 Speed-regulation approach Input: v 1 (k), v 2 (k), … ,⃗ e i (k),⃗ e 2 (k), … , h 1 (k), h 2 (k), … Output: v i (k) randomise v i (k) that satisfies inequalities get v i (k) by (3) 8: end if 9: go to 1 away from their target points. We are able reduce such possibility by requiring vehicle i to find v i (k + 1) that satisfies the requirements of collision avoidance and target point chasing simultaneously.
Remark 4. Note that the arrival at targets is not discussed for the algorithm. The main focus is to balance the requirement for reaching the target and avoiding collisions. It is reasonable to assume that as collision avoidance takes place among cooperative vehicles, they are still able to reach their target points as long as the target points are scattered with adequate spacing. The discussion on how to design reasonable target points is omitted.

Frequency modulation
In Section 3.2, speed-regulation approach is presented to provide guaranteed collision avoidance without changing heading directions. In this section, an approach based on frequency modulation is proposed to provide collision avoidance without changing translational speeds. By changing heading directions, the vehicles are coordinated by using different frequencies to update control commands.
Vehicles are able to avoid collisions by changing the heading directions. Take Figure 6 as an example. When heading angle of vehicle 1 is 100 • , collision time 12 = 0.704 s. When changing the heading angle to 95 • and 105 • , we have collision times of 0.755 and 0.673 s, and it can be seen that by turning left, the vehicle 1 delays the impending collision with vehicle 2. In another example, there are four vehicles in Figure 7. The initial coordinates, heading angles and speeds of the vehicles are the same with Figure 4 with four collision points. By turning right, right, left and right for vehicles 1, 2, 3 and 4, they are able to delay the collisions. After we change the heading angles to 80 • , −25 • , 60 • and 170 • , the collision points are eliminated.
Algorithm 2 is used to automate this process. In the upper left corner, the flow is activated whenever elapsed time is . Similar with the speed-regulation approach, vehicle i calculates the collision time T i (k) = { i1 (k), i2 (k), … } at instant k using the translational and rotational speeds of nearby vehicles. Instead of updating collision-avoidance actions at fixed steps, the frequency-modulation approach triggers the update at t (k) = t (k − 1) + min . This means that the vehicle i update its control command every t (k) − t (k − 1) = min T i (k−1) 2 , and this guarantees that new control command takes effect reasonably early before collision with nearby vehicles happens. To make sure that the time window is enough for safe operations, we find h i (k) that satisfies inequalities below.
Thus, the vehicles are coordinated by triggering control commands at different steps and providing guaranteed collision avoidance. Given suitable Δ h , vehicle i is able to find h i (k + 1) such that it can both avoid collisions and chase the target point. It is worth pointing out that in order to avoid the Zeno effect, we should have t (k) = t (k − 1) + 0.1 if min When the target points are scattered with adequate spacing, the vehicles are able to reach their target points without collisions. However, the frequency modulation approach is lower bounded and if no appropriate heading directions are available for the irregular vehicles, the approach could fail and target points may never be reached. We can have a necessary condition for arrival at the target points. That is, for any instant k, we have (a) there exists vehicle i with T i (k) ≤ T i and h ′ i (k), under which it moves towards its target point and the inequalities below hold.
It is easy to see that such necessary condition would guarantee that the distance sum from vehicles to target points converges to zero.

Combined approach
In Sections 3.2 and 3.3, we propose approaches based on speed regulation and frequency modulation independently to provide guaranteed collision avoidance. Complement to the basic form of multi-vehicle control, the two approaches are able to separately complete the task by changing translational speeds or heading directions. In this section, we propose the combined approach to achieve the same goal by tuning translational and rotational speeds at the same time. Algorithm 3 is used to automate this process. In the upper left corner, the flow is activated whenever elapsed time is . Similar with the speed-regulation and frequency-ALGORITHM 2 Frequency-modulation approach Input: v 1 (k), v 2 (k), … ,⃗ e i (k),⃗ e 2 (k), … , h 1 (k), h 2 (k), … Output: h i (k) randomise h i (k) that satisfies inequalities 4: (3) 8: end if 9: go to 1 such that control command is updated reasonably early before collision with nearby vehicles happens. We find v i (k + 1) and h i (k) that satisfies inequalities below.

ALGORITHM 3 Combined approach
Remark 5. Note that (4) is to maintain enough time window for safe operations. Thus, the translational speeds and directions of vehicles are changed by control commands triggered at different steps to provide guaranteed collision avoidance. Given that the target points are scattered with adequate spacing, vehicle i is able to find v i (k + 1) and h i (k + 1) under suitable Δ v and Δ h such that it can both avoid collision and chase target point.

SIMULATION EXAMPLES
In this section, we use simulation examples to demonstrate the performance of the speed-regulation approach and the combined approach. Three groups of three, eight and twenty vehicles are assigned to chase the target points. Two sets of simulations are set up where the vehicles have the same initial points and heading directions.

Speed regulation
In this section, we use three simulations to demonstrate the performance of the speed-regulation approach. In these simulations, there are three, eight and twenty vehicles, represented  Figures 8, 11 and 14. Due to crossovers among the paths and the need to avoid collisions, vehicles adjust their restricted motions to the irregular shapes, resulting in repetitive movements. In spite of these, vehicles' distance sum to their target points converges to zero over time.
It is observed in Figure 9 that it takes significantly longer time for the sum of the three-vehicle group to converge than those in Figures 12 and 15. Judging from the slow descending curve from 100 to 300 in time, the unusually long converging time is due to the triggering of collision-avoiding actions, which is evident in the jittering path of vehicle 1 in Figure 8 and the jittering  Figures 11 and 14 are not as long. Collision time of the three simulations are given in Figures 10, 13 and 16. In the simulations, whenever the collision time is shorter than 1 s, vehicles take collision-avoidance actions. As a result, for most time, the collision time is around or longer than 1 s.

Combined approach
In Section 4.1, simulations are set up to demonstrate the speedregulation approach. In this section, we use the same vehicles and target points to demonstrate the combined approach. The paths of the vehicles are shown in Figures 17, 20 and 23. There are also crossovers among paths of most vehicles but compared with the speed-regulation approach, paths jitter less. Particularly, it takes time only half as long for the three vehicles in Figure 8 to reach their target points. It is observed in Figures 18, 21 and 24 that shortly after the simulations is launched, some curves oscillate for a period of time. Still, the distance sum is steadily decreasing. The oscillation coincides with the collision-avoiding actions, which is observed on the jittering path in Figures 17, 20 and 23. But in comparison with the speed regulation approach, the duration is not as long. Collision time of the three simulations are given in Figures 19,22 and 25. In the simulations, similarly, whenever the collision time is shorter than 1 s, vehicles take collision-avoidance actions. As a result, for most time, the collision time is around or longer than 1 s.
We take a further look at the speeds of vehicles in the simulations by the speed-regulation and combined approaches in Figures 26-28. We observe that in Figure 26 that the speed oscillations prolong the convergence of the distance sum, and no such long-period oscillation is observed in Figures 27 and 28. Overall, vehicles have less speed oscillations by the combined approach than those by the speed-regulation approach. Similar performance holds for other vehicles but due to the page limit, the figures are omitted.

CONCLUSION
We propose simple approaches based on collision time for a group of vehicles. The vehicles have irregular shapes with restricted motions and they are enabled to reach the target points with no collisions. The speed regulation approach tunes the speed of vehicles and the frequency modulation approach varies update rates for the control commands. Then, a combined approach is proposed to tune the speeds at varying update rates. Simulation results verify the effectiveness of the approaches. Future work opens for coordination over an optimal selection of vehicles for collision avoidance. This modification aims for further improvement on overall efficiency and guaranteed arrival at the target points. For the considered vehicles with restricted motions, there is path jittering and improvements are needed to smooth the paths. In order to achieve collision avoidance, vehicles change their speeds accordingly and further modification can reduce the speed change.