Article citation information:

Sabziev, E. A control algorithm for joint flight of a group of drones. Scientific Journal of Silesian University of Technology. Series Transport. 2021, 110, 157-167. ISSN: 0209-3324. DOI: https://doi.org/10.20858/sjsutst.2021.110.13.

 

 

Elkhan SABZIEV[1]

 

 

 

A CONTROL ALGORITHM FOR JOINT FLIGHT OF
A GROUP OF DRONES

 

Summary. Using drones in groups in the military field is not a novel idea. A massive attack by a large amount of equipment is known to be very difficult to prevent. Therefore, it is a good tactic to sacrifice some of the relatively cheap drones to destroy special enemy targets in a massive attack. This raises the issue of joint control of the behaviour of a group of drones. This paper proposes a System of Systems ideology-based decision-making system that allows to individually control each drone in a group flight. An algorithm is developed that allows controlling drones by controlling their speed.

Keywords: group flight, drone, algorithm, system of systems

 

 

1. INTRODUCTION

 

The idea of using drones in groups in the military field involves interlinked drones working together to increase the success probability of a military operation. Speaking of "interlinked" drones, it is assumed that when performing a task, each drone acts as a separate technical device making an independent decision based on information obtained as a result of data exchange with other members (drones) of its group. In addition, it is assumed that all drones can participate in the data exchange. In this regard, there is a need for group control of those drones.

Performing any task by drones requires, first, their group flight to the operation site, which creates the problem of organising a joint flight of a group of drones. The essence of this problem is that each drone in a group flight should not be controlled by an operator individually, but rather all drones in a group should work effectively, guided by the instructions received from the operator at the beginning of the flight. The paper by Baxter et al. [1] published in 2007 can be considered as one of the first published works in the field of joint flight control of a group of drones. The paper discusses the issue of organising joint control of 4 unmanned aerial vehicles by an operator from one computer. Essentially, in this instance, the operator creates a radio link with each drone and controls it directly. Naturally, a control system organised in this manner does not allow increasing the number of drones.

Scientific and technical literature uses such concepts as multi-agent systems [2, 3] and System of Systems [4] to describe and control group behaviour of objects of the same type. Both concepts refer to the form of organising joint operation of several systems to accomplish one task. The main difference between these concepts is that while the elements of multi-agent systems are programs, the elements of a System of Systems are objects of various nature. In a particular case when the elements of System of Systems are programs, it becomes a multi-agent system. Recently published studies that regard drones as elements of a multi-agent system include [5-6]. An extensive review of research on the organisation of joint flight of drones using multi-agent ideology is given in [7].

This study is guided by the System of Systems ideology. The principles of a single decision-making system for drones performing joint flight are developed, and an algorithm for controlling the speed of the drone based on the information received from its neighbours flying nearby is given.

 

 

2. THE ESSENCE OF THE PROBLEM OF CONTROL IN JOINT FLIGHT

 

The use of a centralised control system during the flight of drones to a remote military operation zone imposes strict conditions on the radio communication and data exchange system: it requires, on the one hand, transferring large amounts of data to cover all drones, and on the other hand, increased power of radio communications as well as a larger battery capacity to power the drones’ systems.

As a rule, the flight route of a group of drones is set by the operator as a broken line against the background of the map. The movement of each drone in the group involves its flight along a trajectory so that this trajectory is as close as possible to the route line, enabling the drones to reach the end of the route without colliding with each other.

With this in mind, we proposed creating joint control of drone flight based on the System of Systems ideology. This means that to achieve a common goal, each drone in a group flight needs to have an independent decision-making system based on information about other drones in its immediate vicinity. For simplicity, this paper does not consider the topography of the flight zone and stationary obstacles.

During a real flight, drones exchange data at discrete instants in time. After each data exchange, the data would be processed and a decision is made on how to change the control parameters of the drone. The decision-making algorithm should be universal and not cause internal conflict when applied to different drones in flight.

Furthermore, it should be noted that numerous works have been devoted to the study of the hardware and software aspects of data exchange, hence, we consider this issue to be resolved.

 

3. KEY HYPOTHESES AND PRINCIPLES

 

As mentioned earlier, the decision-making algorithm should be universal, the results should be unambiguous regardless of the amount of input data, and the results of processing performed on different drones should not contradict each other. To this end, the following assumptions and principles have been formulated.

·      All drones have the same flight characteristics – their maximum speed, cruise speed, permissible acceleration (acceleration capacity) are assumed to be identical.

·      The system clocks of all drones are synchronised and the time difference between different drones due to technical issues is negligible.

·      Data received (transmitted) by drones have a single structure: "drone number", "moment of data transmission (reception)", "flight speed", "current coordinates ". In the process of data exchange, each drone receives a full set of information about nearby drones in a single format.

·      Drone’s flight direction is a set of primary and randomly oriented "auxiliary" directions along a set trajectory. The auxiliary direction is formed by differences in the thrust forces of the engines, delays in the decision-making system, as well as in the transmission of commands to the drone’s actuating units, the impact of wind and other similar random factors. The drone’s movement is controlled by changing the value and direction of its current velocity.

 

 

4. NOTATION

 

For clarity, a formal number is assigned to each drone participating in a group flight. Suppose that there is  drones involved in a group flight, and they are numbered as . Their movement will be calculated starting from the given moment . We denote the coordinates of the -th drone at the starting moment  by .

Suppose that the nodal points of the planned route of the group are given by the operator in the form of the sequence . Here,  is the first nodal point on the route,   is the number of the last nodal point. The trajectory of the group’s movement is set by the broken line  passing through  nodal points , here  is the "central" point of the group of drones at the starting moment , its coordinates can be calculated as the arithmetic mean of the numbers .

Let us denote the -th drone's maximum speed by  and its cruise speed (cruise speed is the optimal speed of an aircraft or ship with low fuel consumption) by . Its coordinates at the instant of time  and the components of the velocity vector will be denoted by  and , respectively. Further, we will also use vector notation of velocity . Following the main hypotheses and assumptions about the technical capabilities of drones, there is such  that satisfies the constraint .

It is assumed that the drone regularly receives complete information about the surrounding drones once each discrete instant in time  during the group flight. These are the drones around the -th drone that are less than the set distance  apart.

 

5. SAFE JOINT FLIGHT CONDITIONS

 

Thus, it is assumed that the -th drone must fly along the line , starting from the point , trying to get as close to this line as possible. The following conditions will need to be fulfilled to ensure the drones do not collide.

·      Regular data exchange between drones occurs at discrete instants in time , .

·      Since the size of the drone is very small relative to its flight boundaries, it can be described as a material point. At each instant of movement , the location of the -th drone in space is determined with a certain accuracy by navigation devices as a material point.

·      Each drone has an individual safety zone around it. This zone is a 3D sphere at the location point of the centre drone. In Fig. 1, the individual zone of the -th drone located at the instant  at the point , is shown as a sphere with a radius of .

 

 

Fig. 1. Individual zone of the -th drone that it creates for other drones as the zone of risk

 

·      As the drone flies along the route, its individual zone expands and forms a three-dimensional figure. This figure is a risk zone for other drones. Depending on the current location and speed of the -th drone at the instant , the boundaries of the risk zone it creates for other drones can be estimated. This zone is the geometric locus of the spheres of the individual zone moving in the direction of the vector , starting from the point , and with a radius that increases proportionally to the distance travelled.

·      Fig. 1 shows the risk zone created for other drones by the movement of the -th drone in the period . The drone must fly in such a way as to progress "along" the broken line , without entering the risk zone.

·      The velocity vector of the -th drone consists of two components: , where  is the velocity vector parallel to the vector , and  is a vector perpendicular to . For  and  , the conditions ,  are satisfied, where  and  are predetermined numbers, .

·      Flying along the segment , the drone must, upon reaching its final point – the "transition plane", turn around and continue flying in the direction , and the risk zone created by the drones must be "turned" (Fig. 2). By "transition plane", we understand a plane passing through the point  and perpendicular to the vector . It is assumed that when the drone reaches this plane, it changes direction, turning towards the vector .

 

Fig. 2. Parallel turning of the risk zone to the segments  and

 

To implement these principles, different approaches can be proposed; described below is one of the possible options for a universal algorithm for determining the control parameters for a joint flight of a group of drones.

 

 

6. ALGORITHM OF THE DECISION-MAKING MECHANISM

 

Let us give the rules for determining the flight path and control parameters depending on the current position of the drone. Suppose that the flight parameters of the -th drone at the instant of time , its coordinates  relative to the earth, the components of the velocity vector  and the number of the current direction of movement  along the intended trajectory are known. This information can be obtained from the drone’s navigation system and RAM device.

Suppose that the coordinates  and the components of the velocity vector  of  drones located at the instant  in the immediate vicinity of the -th drone are also known. This information is obtained during the data exchange between drones. The decision-making system can calculate the -th drone by carrying out internal numbering .

It is assumed that the next data exchange will take place after a certain period of time , so the drone must determine its control parameters for the period  based on the above information.

For simplicity, we will assume that at the beginning of the calculation period , that is, at the instant , the radius of the individual zone for all drones is equal to .

Let us perform a transformation of coordinates to simplify the calculation formulas. We rotate the coordinate axes around the point  so that the direction of movement is superimposed on the  axis, and the point  on . The transformation formula is written as follows:

 

                       ,    ,                   (1)

where , , , , the quantities  are components of the vector . In formula (1) and in the formulas below, the prime symbol indicates the new coordinates of the points after transformation. The transition plane  in this transformation is represented as follows: .

While moving along the trajectory, the drone can only move along one segment  until the next data exchange, in other words, it can fly between the transition planes or change direction from  to , that is, it can cross the transition plane . Both cases are discussed separately in the following paragraphs.

After calculating the drone velocity, the results must be expressed in the original coordinate system by inverse transformation (1) and applying a parallel shift relative to the point . However, we will not dwell on this transformation.

 

6.1. Drone’s flight between transition planes

 

Let us first consider the case when the drone flies for a certain time  along the segment . Denote the set of drones flying around the -th drone by ; the condition  is satisfied for them. Let us write the equation of the cone representing the boundaries of the risk zone created by each  drone. The axial section of the cone is shown in Fig. 3.

 

 

Fig. 3. Intersection with the risk zone created by the -th drone along the  axis

 

For each , the conic surface is the geometric locus of the circle at the centre point . Having calculated the radius  of this circle, we get . Then the equation of the risk zone created by the -th drone is written as follows:

 

                                      .                            (2)


 

This formula allows calculating the points at which the -th drone flying parallel to the direction  will intersect with the boundaries of the risk zone of the -th drone and finding among them the one closest to the point . The coordinates  of this point are calculated as follows:

 

                           .                       (3)

 

It is clear that  is the risk zone created by some -th drone: . Two different options are possible depending on the values of the quantities  and . Let us consider each of these options separately. Suppose that,

 

                                                      .                                                  (4)

 

In this case, the velocity at the instant  for the -th drone can be calculated as

 

                                                            ,                                                        (5)

 

and the drone will move at this velocity for the entire period until the next data exchange session. If inequality (3) is violated, other factors must be considered to calculate the velocity. Suppose that . This means that if the -th drone is flying parallel to the direction , it will cross the boundaries of the risk zone of the -th drone at a point . The -th drone must change the direction of flight in order not to get into the risk zone. We will assume that the flight of the -th drone can be planned along the generatrix (straight line) of the cone representing the risk zone of the -th drone, passing through the point , to the risk zone created by some other drone.

 

 

Fig. 4. Trajectory calculation in case of crossing risk zones

 

In Fig. 4, this trajectory is indicated by a bold line. Within the framework of these possibilities, we will calculate the velocity vector suitable for continuing the flight of the -th drone.

First, we find the coordinates of the point . Obviously, the point  is located on the surface of the corresponding cone representing the risk zone of the -th drone and satisfies the equation of this cone:

 

                               .                               (6)

 

Let us find the coordinates of the point of the apex  of cone (6), such that . If we take this into account in equation (4), we get . Then the equation of the straight line passing through the points  and  will be:

 

                                                     .                                            (7)

 

Now let us find the coordinates of the point . The point  is on line (7), hence, and by expressing the unknowns  and  by  and substituting these expressions into equation (2), we get:

 

,        , ,

                                                           .                                                  (8)

Here ,

,

.

 

It is clear from the essence of the problem that for each , there is a unique solution within the framework of the condition  of equation (8). Then the coordinates of the point  can be calculated as follows:

 

           ,   ,     (9)

 

We can easily see that if the condition

 

                                                                                   (10)

 

is satisfied, the drone will continue flying between the transition planes. Under condition (10), the velocity of the drone in the period  until the next data exchange can be determined as follows:

 

          (11)

 

However, cases of violation of inequality (10) for the quantities , , and  are possible:  or .

Considering that the velocity  is several times less than the velocity , in this case the speed can be adjusted so that the drone continues to fly between the transition planes during . In this case, the velocity of the -th drone should be calculated as follows:

 

                                                                                                                   (12)

 

6.2. Change of direction during flight

 

Let us now consider the case when a drone flying along the segment  between two successive data exchanges reaches the transition plane and must change direction. This case involves the fulfilment of the inequality .

The specific characteristic of this case is that the drone must change speed during the period . Denote by  and  the velocities of the drone before and after the transition plane , respectively, and by  and  the vectors obtained after applying coordinate transformation (3) of velocities  and . In this case, the velocity  can be calculated as

 

                                                                ,                                                          (13)

 

this velocity must be applied during the period . It is expected that during this time the -th drone will reach the boundary point  of the transition plane . The coordinates of this point relative to the original coordinate system are as follows:

 

                                                                                    (14)

 

Let us determine the coordinates  of the point, at which each  drone passes through the transition plane , and the probable radius of the risk zone created by the moment of the transition.

Based on the coordinates  and the velocity  of the -th drone at the moment of data exchange, we calculate the coordinates  of the point it needs to reach in the time  and the probable radius  of the risk zone at this time:

             (15)

 

These points will be on the transition plane . Based on the flight plan, starting from this plane, the drones must change their direction of movement to the direction of the vector . We can calculate the coordinates  of  drones relative to the  system. This requires a transform by applying the matrix  to the vector .

The movement of the -th drone, starting from the transition plane , can be considered as movement between the planes  and . Thus, the velocity  of the drone for the time  can be calculated as in Section 6.1. Besides, it should be remembered that the appropriate inverse transformations are applied to calculate the velocities  and .

Finally, note that the values of the quantities  and  are determined based on the drones’ technical indicators and the wind speed in the flight and operation zone.

 

 

7. CONCLUSION

 

The proposed decision-making algorithm shows that each drone participating in a joint flight can control the safety of its flight based on information received during data exchange sessions. This is possible since the computational algorithm is universal and allows calculating the risk zone that other drones around each drone can create with their movement. This design of the decision-making mechanism eliminates the need for information about the flight performance of remote drones. This, in turn, saves energy resources used in the data exchange between drones.

 

 

References

 

1.             Baxter Jeremy W., Graham S. Horn, Daniel P. Leivers. 2007. Fly-by-Agent: Controlling a Pool of UAVs via a Multi-Agent System. QinetiQ Ltd Malvern Technology Centre St Andrews Road. Malvern. UK. P. 232-237.

2.             Rzevski G., P. Skobelev. 2014. Managing Complexity. Published by WIT Press. 217 p.

3.             Кузнецов А.В. 2018. Краткий обзор многоагентных моделей: Управление большими системами. Системный анализ. Выпуск 71. 44 С. [In Russian: Kuznetsov A.V. An Overview of Multi-Agent Models: Managing Large Systems. Sistemniy analiz].

4.             Alonso E., N. Karcanias, A.G. Hessami. 2013. “Multi-agent systems: A new paradigm for Systems of Systems”. Proceedings of the Eighth International Conference on Systems. Chengdu, China. P. 8-12.

5.             Argel A. Bandala, Elmer P. Dadios, Ryan Rhay P. Vicerra, and Laurence A. Gan Lim. 2014. “Swarming Algorithm for Unmanned Aerial Vehicle (UAV) Quadrotors. Swarm Behavior for Aggregation, Foraging, Formation, and Tracking”. Journal of Advanced Computational Intelligence and Intelligent Informatics 18(5): 745-750.

6.             Morozova T.Y., I.A. Ivanova, V.V. Nikonov, A.A. Grishin. 2015. “Improvıng of the drones group control system”. International Journal of Advanced Studies 5(1): 14-18.

7.             Mitch Campion, Prakash Ranganathan, Saleh Faruque. “UAV swarm communication and control architectures: a review”. Journal of Unmanned Vehicle Systems 7(2):
93-106.

 

 

Received 19.07.2020; accepted in revised form 20.10.2020

 

by

Scientific Journal of Silesian University of Technology. Series Transport is licensed under a Creative Commons Attribution 4.0 International License



[1] Institute of Control Systems of Azerbaijan National Academy of Sciences, 9, B.Vahabzade St., Baku-AZ1141, Azerbaijan. Email: elkhan.sabziev@gmail.com. ORCID: https://orcid.org/0000-0001-8150-9439