These forces can be calibrated to consider network strength. Thus, areas that might weaken connections between swarm components are assigned higher values to discourage single agents from attempting exploratory tasks. Intelligent algorithms can however assign a group of agents to visit high force areas such that the entire network shifts in that particular direction thereby maintaining network strength.
2.2. Movement
This component covers the decision process that involves the movement of the swarm agents in operational space, including flocking, optimized area coverage, path planning, and obstacle avoidance. As such, these are the physical behaviors that a swarm might exhibit during its operation. Major modules of the movement component are recognized to be area coverage, path planning, obstacle avoidance, collision avoidance, navigation, formation control, and flocking.
2.2.1. Area Coverage
While
Section 2.1.2 discussed tradeoffs between network coverage and connectivity, this section discusses area coverage as a part of the movement component. These problems are often intermixed with each other. The coverage problem determines the success and probability of when the area will be completely scanned. It is often defined as increasing coverage while managing trajectories and disruptions. Article
[59][17] defines swarm coverage as a process to cover a selected region. Swarm area coverage is an important decision process for swarm systems. Area coverage is often utilized in application-specific scenarios to cover a region of interest (ROI) with a swarm of agents, particularly as a movement problem, with less regard for connectivity maintenance and more focus on completing a particular goal. A similar problem framework is discussed in
[60][18]. “Chaos-enhanced mobility models for multilevel swarms of UAVs” mentions how area coverage is an original problem by describing it as “focusing on the mobility management of a swarm of autonomous UAVs to maximize the coverage of a squared geographical area”. The resilient component differentiates this from a simple path-planning objective. The two main objectives are for the swarm to cover a given area as well as counter any unpredictable disruptions that occur during the process. Considering the target area properties is an important input for decision-making models for swarm operations. Network coverage and area coverage differ in terms of how ROI is used. While network coverage focuses on making sure that agents in the area are always optimally connected, area coverage addresses the coverage problem and describes the actions taken by a swarm of agents to cover the ROI. The target space may differ in terrain and ground cover, as well as the presence of water bodies, wind channels, and stationary or dynamic obstacles. Current issues with area coverage lie mostly in the dimensional space in which they are tested. Most existing simulations portray coverage in a two-dimensional space. In
[60][18], altitude information is not considered. Formation deployment controls may require agents flying through constricted spaces to fly in tighter formations thus requiring agents to vary in flight altitude rather than sweep area. This is especially prevalent when reaching consensus after obstacle navigation and post-deployment primary formations. The control methodology in which agents cover an area can be categorized into different types and
[61][19] offers a naming convention for them as follows. Static coverage is a standard agent deployment method in which an UAV examines a particular spot for its target. Several such agents examine individual spots. Barrier coverage forms a perimeter that can detect the entry of any object through the barrier. These are usually deployed on security-specific applications. Sweeping coverage is the name the authors have given to the dynamic deployments of agents which can change formation as they move through the area. This is the standard procedure followed across any SAR protocols. Several coverage models have been described such as imposing grid cells on the ROI to ensure that every cell is covered or dividing the area into small bits that are assigned to the agent’s area decomposition
[62,63][20][21] and sweep motions
[64,65][22][23]. Article
[59][17] mentions two primary methods for cooperating coverage, centralized, and distributed decision-making. They propose a self-organized decision-making approach for the problem modeled in velocity space. The approach is divided into perception, decision, and actions. Multiple UAVs coordinate with each other for sharing position, velocity, and obstacle information. Their decision uses a reciprocal coverage method that creates collision-free optimal spaces. The swarm coverage decision model considers the above parameters with collision avoidance with other agents, obstacle avoidance, and optimal velocity decision in each iteration. This is carried out using the Monte Carlo method for velocity-finding in confirmed space.
A different obstacle characteristic is considered by
[66][24] while solving the area coverage problem. Not all obstacles have the same threat levels, nor are all of them equal in terms of dimensions and nature. Additionally, energy constraints on UAVs during coverage problems have often not been addressed in complex scenarios. They propose a two-step auction framework for energy-constrained UAVs in a given area. The agents evaluate the threat levels of each area cell referred to in their paper as a module and bid in an auction for the UAV to come to it. If two bidding prices match, energy loss is also considered. The UAV determines the winning module. The second step is the obstacle avoidance strategy for any obstacles that the UAV might face while traveling to the winning module. In the case that an obstacle is unreachable by flying over it, the second-best module is selected. Additional constraints for sleep mode and two UAV bid clashes are also designed. Such strategies are also viable alternatives to reward-based ones where agents are rewarded for considering a particular area. Additional parameters such as energy considerations can thus be programmed.
2.2.2. Path Planning
Efficient path planning for multi-agent systems is a prevalent challenge in swarm development. Algorithms such as Particle Swarm Optimization (PSO) are developed to find near-optimal solutions. Multiple iterations on a solution may provide better results. Several biologically inspired heuristic algorithms have been proposed for path planning. Bio-inspired algorithms have found remarkable success in the movement development of multi-agent systems as they exist predominately in the animal world. The development of such algorithms drew its inspiration from group behaviors in fish shoals, bees, and ants
[67][25]. Article
[68][26] proposes a modified fruit fly optimization algorithm. The original fruit fly swarming is inspired by fruit flies making their way to ripening fruit. The modified algorithm divides the swarm into smaller subswarms. By allowing flexible search parameters there is a shift from a global search to a local search as the mission timeline progresses. This expands the search space considerably. The FOA (Fruit fly optimization algorithm) uses two search parameters, sight, and olfactory. While the visual search is a greedy search, the olfactory search is a directional search that examines the greatest concentration of the target in a cell and proceeds in areas with increased concentrations. Both processes are repeated until the termination stage is reached near the target destination. UAV inputs can be used to program essential paths for individual agents. Paths to the destination can be calculated by using terrain data, weather, and network signals as inputs. Based on pre-established network availability from base to destination, each agent can move on a path that has the best-preestablished parameters such as SINR. Secondary inputs such as terrain can be analyzed using the visual input.
Distributed path planning for multi-UAVs works similarly, ref.
[67][25] where SAI (Surveillance Area Importance) values for each cell are analyzed and a connection is established that shares each UAV’s location. The leader agent checks the area based on past SAI values, and uncovered areas are subdivided. Individual trajectories for each agent are generated. SAI is an intrinsic value generated and defined by
[67][25] based on the probability of outside agents entering a restricted airspace. Since this is an application-specific development, such values are required. For general purpose use, however, the above-suggested values such as network strengths can be used to establish the grid importance. An alternative approach used by
[69][27] uses external threat models to create channels through which agents can travel. The weather threat model measures wind and rain states and the transmission tower model calculates a safe path some distance away from transmission towers to prevent their electromagnetic waves from disrupting agent navigation systems. An upland threat model measures the terrain below the agents to maintain optimal distance between aircraft and the ground. An adaptive genetic algorithm controls the path generation schema.
Modeling individual threats as functions that act as inputs to learning algorithms is an efficient approach to creating low-cost shortest route solutions. By allowing models to scale as per a particular environment, threat functions that are not present can be eliminated thereby allowing quicker convergence on solutions. For example, the transmission tower threat function will not be used in an area that does not have them, thereby reducing overall model complexity.
2.3. Search-and-Rescue (SAR)
SAR missions are usually defined as an exploration problem. Exploration approaches can be used in a wide range of applications
[21][28]. Target search applications can include searching for an intended target such as an entity in danger or need of medical attention or surveying the aftermath of an accident. The search function can also be expanded to include other agents in the UAV swarm that might have malfunctioned and crashed. Two major applications of the search function are discussed.
Rescue activity has additional decision parameters. If a crashed agent were located by the swarm, the cost of additional time and fuel that would be required to recover the agent should be incorporated into the model as a function that opposes the primary mission function. Additional conditional statements must be programmed to gauge agent failure in the first place. If the agent has failed due to a locally present disruption, deploying additional agents may result in their loss too.
The search function is an application of UAV where the aerial vehicle hunts for a particular target using vision ability or location information. Searching for a target using an UAV has various challenges. Depending on the hardware used, UAVs may have limited sensing and communication hardware onboard. Capturing raw footage and sending it to the ground station to be processed is computationally costly and may introduce delay. Two types of search algorithms are often used to enable autonomous search: (1) visual search using learning-based detection algorithms
[106][29], and (2) location-based search using active or passive onboard sensor arrays. Search algorithms conventionally divide the area by using a probability index of where the target is most likely to be present
[107,108][30][31].
2.4. Security
Swarm security is divided into two main categories. Physical agent security and protecting the swarm from cyber threats. Both are discussed in the following sections.
2.4.1. Physical Security
The physical security of agents deals with the detection of threats that might physically impede swarm progress. Additionally, defense or escape countermeasures should be designed as part of securing any multi-agent system. The counteraction from swarm agents is a response of the agents once a threat is detected and can include the following.
In either case, a threat classifier is needed for UAV swarms to detect and recognize potential threats. One defense approach to incoming malicious agents is to engage a swarm of counter-attack drones to intercept intruders. The approach by
[115][32] follows a similar method by deploying a swarm of drones that approaches the intruder UAV. The deployed defense agents form a cluster around the intruder and restrict its movement while attempting to herd it to a non-threatening location. The assumption is that the enemy agent is aware of other agents surrounding it and will take steps to prevent collision with them. However, if an enemy agent is not equipped with such abilities, there is a high possibility that it may collide with one or more of the defender agents and result in damage or loss. UAV agents can also be used to jam network connections of enemy agents and stop their crucial operations. A GPS spoofing attack was proposed in
[116][33] where it attempts to take control of an enemy agent. This is considered accomplished when it can successfully artificially specify the enemy agent’s perceived position and velocity. By controlling the agent and providing false data it is possible to disable the enemy. For example, the spoofer used in this study earlier demonstrated similar actions whereby it falsely produced ascending actions on a captured UAV that was hovering. To compensate, the agent started a descent and would have been catastrophic unless precautionary manual control took over
[116,117][33][34]. However, such solutions which involve the deployment of additional drones for counterattack can be an expensive process considering the physical interactions that might take place among these agents. Replacement and repair of damaged defender aircraft can be costly. Such approaches should be deployed only, when necessary, when the main swarm is deemed incompetent to defend itself. Other solutions exist that can be accommodated onboard existing UAVs without the need for additional agents. Enemy agent ability jamming and evasive maneuvers are often advised in UAV swarm defense
[97][35]. For recognition of enemy agents, detection methods are necessary, especially to differentiate between swarm agents and foreign agents. While this can be done using software in-loop, network recognition, and unique hardware identifiers, vision-based frameworks are also being studied. For example, ref.
[118][36] uses a vision-based object detection method backed by deep learning to detect and track a potential enemy UAV. In addition to detection, a tracking system is implemented to keep the detected agent in a local bounding box and follow it.
2.4.2. Network Security
A large portion of control tasks for UAVs is dependent on a network structure. Any device, node, or link over a network is susceptible to cyber-attacks. With recent developments of malicious agents attempting to dissuade swarms from functioning, damaging the network capabilities of an UAV swarm is the primary method of executing attacks
[57][37]. Moreover, the remote nature of UAVs, combined with limited battery power, fast switching routing, formation topologies, and small onboard computing power has made securing drone networks a challenge. As with any network, FANETs are susceptible to attacks as well, more so because of their high mobility and reduced computational powers. Onboard agents have reduced computational power, and most of the processor load might be dedicated to functions such as flight, navigation, and mission tasks. Any security measures thus need to consume as little energy and computation resources as possible
[51][38].
Although attacks such as eavesdropping can be prevented using encryption for transmission, other attacks may still penetrate UAV networks. The encryption keys must be secure themselves to guarantee performance. Current security and management deployments assume that UAV swarms may accomplish tasks on a single charge. If refueling is needed, the subtraction of old agents and the addition of new swarm agents should be considered. Article
[45][39] creates a swarm broadcast protocol that accounts for rapid changes in swarm numbers, such as the addition of new drones. It also accounts for agents leaving the swarm for activities such as fuel recharge. The addition of new agents may require them to use the encryption keys used to secure network transmissions. However, challenges to this approach include offset delays that may be caused by validating new agents, the transmission of keys, and unstable networks interrupting the key transfer process. A loss of key transmission could cause new agents to be unable to decrypt transmissions
[45][39]. The requirements of the key management scheme proposed are also similar to the IDS requirements discussed in the next section. A lightweight management scheme that consumes low network and CPU resources is desirable. Secure broadcast protocols work whereby every time the swarm changes its agent composition a new secure key is created. This is done to prevent the old key from being used by any attackers. The new agents have separate identifiers that recognize them to be a part of the swarm, this identifier unlocks the broadcast packet that contains the new key. The master maintains a list of all agent identifiers actively connected, and every time an agent sends a leave or join request the identifier table gets updated, and a new broadcast key is sent out. To prevent offset delays during key sharing, agents also receive an updated copy of the identifier table. They can then verify that the nearest neighbor is a verified agent and send the key packet. In this way, the master does not have to send the key to every individual agent. Intrusion detection systems are a reliable and efficient way of securing computer networks. Recent studies demonstrate they can be deployed on UAV networks as well
[119][40].
As with a regular IDS, an UAV-IDS is created to detect any suspicious activity on the network and prevent its execution. Intrusion detection systems can be developed based on behaviors or anomalies. Bio-inspired particle detection IDS can also be used
[120][41]. An updated taxonomy of intrusion detection systems has been conducted by the authors in previous research
[121][42]. The IDS monitors network traffic such as data packets, transmission power, and routes, as well as new incoming requests from nodes.
While traditional attacks for computer networks may not directly apply here, IDS protocols can be easily modified to suit FANET requirements. An integration with Hyperledger Fabric, a distributed ledger platform, is possible to maintain unique identifiers for all acceptable nodes thereby blocking any unknown nodes from gaining access
[122][43]. An IDS functionality can also be influenced by its deployment location. Typically, an IDS located at ground control may have access to higher resources than on-board implementations. The placement can be determined depending on factors such as the level of protection required, the type of IDS being used, as well as resource requirements of the IDS itself. Multi-layered IDS are possible but require additional considerations of network and node capacity during system development. A policy-based IDS can be created that sets distinct patterns of behavior that are allowed whereas all others are flagged and sent to a higher-level operation for additional examination. Several research challenges as mentioned by
[106][29] discuss detection latency, IDS computational costs, and implementation overheads. A solution is required that is multi-positioned (agents and ground control both), multi-layered, and comprehensive in terms of attack detection and mitigation. Add to that the challenges faced by current IDS implementations, such as bottlenecks due to higher bandwidth and a lack of concrete defense policies
[123][44], and attack classifiers contribute further challenges to the problem. Articles
[124,125][45][46] have a rule-based mechanism for the IDS. Detection rules for some of the most notorious attack types are predefined. The location is at the ground station and categorizes each agent in the swarm by its alleged threat. An intrusion report message is generated by each agent and sent to the ground station, which assists in verifying agent status as well as any foreign agents that might seek to infiltrate the swarm. A verification check is conducted by using anomaly detection backed by learning algorithms trained to identify and label behaviors.
The addition of learning algorithms significantly expands the capability of intrusion detection systems, and blockchain-supported network security has also been recently explored as a way of securing UAV swarms. Blockchain is a peer-to-peer (P2P) distributed ledger that is secure, transparent, and flexible. It can store data in a chain of blocks that are tamper-proof. Smart contracts can be developed on the chain to execute specific predefined actions. Blockchain has widespread use in security, finance, and government applications
[126][47]. Blockchain technology is a viable solution to issues with UAV network security.
Current UAV softwarization techniques are summarized in
[122][43] such as the wide range of attacks on control, application, and data plane. Several proposed blockchain-based architectures are a comprehensive solution to these issues.
Figure 7 demonstrates a simplified blockchain based method for securing low level swarms. A blockchain instance runs on a cloud and ground-based station. Every agent in the swarm has a hardcoded unique identifier. A state table with the agents and their identifiers is maintained by the blockchain and synced across the station nodes. Agents validate their existence at every iteration and the blockchain is updated accordingly. A spoofed agent with an identifier that is not present on the blockchain is unable to join the swarm, is denied communication services and is recognized immediately.
Figure 7. A blockchain based methodology for securing UAV swarms.
Integration benefits include communication data security and transparency in node transactions. However current blockchain technology has scaling and latency issues
[127][48]. A proper framework choice is needed that fits the stochastic requirements of UAV swarms. The first step is the selection of an appropriate consensus algorithm for the blockchain itself. Fast consensus algorithms instead of proof of work are required. Article
[53][49] recommends PBFT (practical byzantine fault tolerance) consensus that has a frequency of 500 Hz. Such higher frequencies can satisfy the intensive demands of routing policies, resource allocation, and mobility management in addition to deploying secure swarms. Article
[122][43] in particular focuses on the security and privacy of communication links for UAVs via blockchain-supported softwarization architecture. By ensuring the authenticity of virtual machines in the virtual infrastructure, it is also capable of protecting against various security threats.
2.5. Resource and Task Handling
Resource allocation and task assignment are terms used by some researchers interchangeably. This is based on the premise that once a task is assigned to an agent or a group of agents, their resources will be locked during the duration of task completion or until a dynamic change is required in the decision-making capacity of the task assignment module. However, not all studies incorporate higher levels into task assignments. The assumption is that each agent in the swarm is a resource that is assigned to complete a particular task. The problem is an interaction between resources and the environment, whereas the allocation scheme is an incentivized function for the agents.
2.6. Agent Property
The agent property component focuses on individual agents in the swarm. It is possible to increase overall swarm performance by modifying individual agent capabilities
[140,141][50][51]. The easiest way to do this is to introduce swarm heterogeneity. Heterogeneity is defined as components of a system that are of dissimilar composition or properties. Heterogeneity may be imbibed in a multi-agent system by using a variety of features. The following studies focus on performance effects on a mission by the inclusion of heterogenous agents in a previously homogenous swarm
[140,141,142][50][51][52]. There is a marked increase in performance observed by the introduction of varied agents. This performance might be in terms of time taken to complete tasks or an increase in another measurement metric used to measure swarm resilience. Our previous research provides a classification system for swarms labeled as heterogeneous:
In addition to aerial spaces, other varied operational spaces for the unmanned vehicle in a swarm may include ground surfaces, water surfaces, underwater, or even underground. Article
[4] deploys a heterogenous team in an enclosed environment. The team comprises robots classified as heterogenous by their operational space—an UGV and an UAV. The authors mention how each vehicle brings different capabilities to the swarm. The UGV is autonomous whereas the UAV is fast and provides greater motion flexibility. The UAV can fly over obstacles that the UGV cannot cross. Challenges to the deployment of such hybrid swarms are also mentioned. Air ground coordination and navigation are the primary challenges. Deployment of such swarms is not limited to enclosed environments only. Indeed, a wider operational space is available by the inclusion of agents on the ground, water surfaces, or even at different altitudes in the air. Current deployments of heterogenous agents have shown a marked increase in resilient behavior
[140,141,142][50][51][52]. Such swarms can be single or multi-space or heterogonous by nature or have hardware capability. In pursuit–evader situations, the pursuit UAV often needs to be agile and lightweight to be capable of faster flight speeds than the target UAV. However, a swarm that features a mix of lightweight pursuit-capable agents along with heavier support agents that carry additional equipment needed to support swarm operations is ideal. A military purpose swarm such as the one in
[143][53] where a mix of differently capable agents is used can be used. Moreover, experiments by
[141][51] observed a marked increase in swarm responsiveness to external stimuli due to the inclusion of fast agents in swarms. Benefits are observed across the whole range of UAV swarm components. A hierarchical structure of mixed agents described by
[144][54] includes high-altitude fixed-wing aircraft providing communication and sensing support to a group of low-altitude quadcopters. They also note a difference in computational resources, energy consumption, and communication systems among the agents. The possibility of evolving capabilities among heterogeneous swarms has also been observed. Implementing a different characteristic trait by modifying operational parameters can change the way homogenous agents behave thereby allowing them to function better. A change in the allowable range that some swarm agents can move from a fixed ground target can allow them to become less cautious of external disruptions, thereby exhibiting different behavior. A coordination scheme by other non-modified agents to balance tasks and resources is observed in such scenarios. The addition of differently capable agents can also provide complementary capabilities
[145][55]. Homogenous agents in a swarm may have a particular weakness that may easily bring the whole swarm down. Such issues can be varied such as bugs in the control system or routing protocols, detection and tracking, or communication range. Such issues can be solved by introducing agents that might fix such gaps in the overall swarm properties. For example, a relay drone that possesses extra hardware to support multiple communication bands can aid in communication gaps and delays. A similar deployment is described in
[146][56], where some robots in the group have higher sensor payload, processing power, and memory capacity. These are labelled as leader robots, whereas child robots have more limited resources. These child robots rely on leader robots for tasks such as localization. Data from the child robots can be used for sensor fusion, global pose, and location estimation, which can then be used to modify the swarm movement. The proposed distributed leader-assisted localization algorithm can provide accurate localizations for child robots even when they are beyond the sensing range of leader agents.
Application-specific improvements such as those in
[145][55] show how a richer dataset is created when a micro aerial vehicle (MAV) collaborates with an UGV in the creation of detailed maps. The MAV recorded the top view dimensions whereas the UGV accounted for the side view spread. Added considerations for implementation need to be accounted for in this type of scenario though.
Figure 8 shows how an UAV-UGV coordination can produce higher detailed maps. The UGV maps the ground level dimensions while the UAV maps the top view.
Figure 8. A multi space unmanned vehicle swarm working a mapping mission in tandem.
2.7. Resiliency Evaluation
Cyber-physical systems need testbeds for simulations before real-world deployments. However, due to the extreme software-hardware interdependence, designing them is a challenging task. UAV swarms are among those systems that require thorough testing but are difficult to test in controlled environments. Simulations cannot mimic the varied and extreme variables they might face
[150][57]. Resiliency assessment is a process of observing and evaluating the resilient behavior of UAV swarms to disruptions. An evaluation metric system is needed to accurately recognize performance and its lack thereof. It is important to devise feedback systems and metrics to measure resilience performance in the above modules. Real-time feedback loops may allow decision-making models to follow an iterative process in creating better outputs. Metrics created to evaluate system components such as signal strength, target detection times based on varied inputs, and fuel saved based on optimized path planning can provide insights and recognize tradeoffs.
Evaluation metric design is a less explored branch. It is a strategic process for evaluating multi-pronged decision models by measuring individual decision branches and quantifying their outputs into a single value. Article
[151][58] cites a flaw in the creation of resilience evaluation metrics. Metrics often use the initial swarm performance as a baseline. This may not be accurate, as certain onboard systems may need more time to exhibit full performance capacity. The approach by
[151][58] introduces variables that provide free space for missions. By relaxing the condition that the swarm has to return to performance before it is attacked, the authors argue that a flexible baseline that determines whether a system is performing is needed. The swarm may have to take certain actions during the attack process such as sacrificing a certain agent or reducing the number of agents assigned to cover an area after an attack takes place. Article
[151][58] lays out preliminary dynamic evaluation parameters.
The second problem is that these metrics often use network connectivity as a basis of evaluation. As long as the swarm maintains a connected state in terms of its required signal strength or coverage, the swarm is deemed resilient. However, the presence or absence of network and communication capabilities alone cannot determine the robustness of swarms. Time values for the recovery process should also be measured. For example, in the case of an attack scenario on a swarm described by
[151][58], there are a few issues that the article does not take into account:
-
The swarm does not check for agent wellbeing after it determines that the attack has ended.
-
In the case that an agent is lost, there are no search and recovery procedures.
-
Mission progress may be lost when swarm control completes task re-assignment. In this case, depending upon the scenario tasks such as localization, area decomposition and data collection may need to be restarted after the loss of data is examined.
A basic evaluation metric is the one proposed by
[152][59] which measures performance loss after a disruption with the time it takes for the system to return to normal levels. This creates a baseline through which preliminary system performance can be maintained. Additional application-specific constraints can be established. On the occasion that an agent is lost, the time taken for the mayday signal of the agent to reach central command can be measured along with the time it takes for other agents to locate the lost agent and deploy rescue procedures. A secondary decision process is started where probability models determine if it is safe to try and locate the lost agent or proceed with the task. If the decision to proceed is made, the model then decides if additional agents should be deployed to make up for lost agents or if task reassignment should distribute the workload to other agents. The fundamental metric here is the time value which is measured for every decision to be executed. Multiple time values can be fed into a measurement model to produce one time-based value of system performance.