Abstract

The predation of large school of fish by the cooperation of multiple predators of different species is one of the most marvelous scene in the sea. In this paper, we study how to drive the fish school to the surface of the sea by the cooperation of multiple predators. In particular, we have first proposed a modified Couzin model for the fish school, which, on top of the classic Couzin model, also takes into consideration the effect imposed passively by the predators. The basic idea for the driven algorithm is to drive behind the fish school to some delicate extent so that, on one hand, the fish school shall move towards the target region, and on the other hand, the fish school will not disperse and spread away. Moreover, if some fish strays away from the fish school, the predator will take actions to force it back which can greatly reduce the possibility for the fish school to split into multiple subgroups. Comprehensive simulation results are provided to validate the proposed algorithm.

1. Introduction

Collective motions of swarm systems have been widely seen in nature, such as birds migrating in formation in the sky [1, 2], fish marching in the sea [3, 4], locusts moving in swarms [5], bacteria forming colonies [6], and human gathering [7]. A common feature behind these phenomena is that the swarm of individuals exhibits a high degree of order when facing external influences, and many scientists believe that the individuals in these biological clusters might just follow simple rules based solely on neighboring information which surprisingly leads to the emergence of the global intriguing and complex swarm behaviors. These swarm behaviors show desired and inspiring properties from many aspects, such as the strong robustness in the distribution of organizational structure and the strong flexibility and adaptability to the changes of the environment with high efficiency. Over the past two decades, with the rapid development of information technology, researchers have acquired the ability to track and analyze biological clusters [8]. By collecting and analyzing the movement process of individuals in the swarm with high quality data and advanced statistical techniques, some mathematical models for the swarm movement have been established. By mimicking the behaviors of the swarm systems in nature, these mathematical models have been adopted by engineers to solve real world problems involved mostly with unmanned swarm systems [9, 10].

The pioneer works modeling swarm system behaviors can be found in Aoki [11], Huth and Wissel [12, 13], and Reynolds [14] which focus on computer simulations of the collective movement of fish schools and birds. Although the flocking motion models in these works have different implementation forms, the individuals in the swarm follow similar behavior rules, which is referred to as the “SAC” rules. Here, SAC is short for separation, alignment, and cohesion. The separation and cohesion rules require the individual spatially to avoid collision with neighboring individuals, yet stay closer to its neighbors, and the alignment rule requires the individual’s motion direction to be consistent with the directions of its neighbors. The SAC rule is of fundamental significance to the study of swarm motion, which has given rise to fruitful model variants explaining the fascinating swarming behaviors of living creatures. An important way to realize the alignment rule is called “velocity average,” which requires the individual of a swarm to adjust its own speed (direction) by referring to the average speed (direction) of its surrounding neighbors so that the clusters can achieve consistent convergence of all individual motion directions. There are three classic models based on the philosophy of velocity average, namely, the Vicsek model, the social force model, and the Couzin model. The Vicsek model [15] is also known as the self-propelled particle model. The basic concepts and methods are borrowed from physics, where the individuals are treated as particles. These particles are supposed to run at a constant speed rate in a square area with periodic boundaries. Various clustering phenomena have been revealed subject to different particle densities and noise levels. In the case of high density of particles and low noise, it was found that all the particle directions of motion will synchronize from random initial state. In the social force model [16], the interaction relationship between individuals is viewed as external force from the perspective of Newtonian mechanics. The total force imposed on an individual from its surrounding neighbors is called social force, which makes the individual accelerate, decelerate, or steer, thus forming the swarm behaviors of the entire group. The Couzin model [17] takes a discrete-time form for individual kinematics, and the individuals move at a constant speed rate subject to random perturbations. In this model, the individual’s perceptual area is divided into three nonoverlapping domains: the repulsive domain, the formation domain, and the attractive domain, which correspond straightforwardly to the separation rule, alignment rule, and cohesion rule, respectively. The Couzin model shows how differences between individuals affect the structure of groups, and how individuals can accurately change their spatial position within a group using simple local rules of thumb without knowing where they are. Later, in [18], Couzin defined the informed individuals, depicting those individuals that are able to perceive danger, find foraging place, or know migration routes in real-life swarms. It was shown that if there are a few number of informed individuals with clear directions of movement in the model, they can guide the movement of the entire cluster even if other individuals are unaware of their existence. Surprisingly, the larger the group is, the smaller the proportion of informed individuals is needed to lead the group. In addition, if there are two expected directions, the entire cluster will move in one or the average direction of the two while maintaining cohesive, i.e., the entire cluster can still make a unified decision even if the information transmitted by the informed individuals conflicts. In 2011, the Couzin team further reported in [19] that under a wide range of conditions, a strongly stubborn minority can determine group selection, but the presence of noninformed individuals spontaneously inhibits this process, thus giving back control to the majority, i.e., noninformed individuals can promote democratic decision-making. Besides the work done by the Couzin team, the Couzin model has been also adopted by many other researchers. For example, Dong et al. proposed a speed-adaptive Couzin cluster model based on fuzzy rules [20]. Jung et al. adopted mediation as a new shared control approach to control the influence of human groups and used mediators to shape a Couzin model-like ring domain [21].

The predation of large school of fish by the cooperation of multiple predators of different species is one of the most marvelous scene in the sea. In real life, the predators will drive the fish school to the surface of the sea before predation. As is often the case, the number of the predators is far more less than that of the fish school. Thus, it is interesting to study how to drive the fish school to the surface of the sea by the cooperation of the predators, which is the main concern of this paper. In particular, we have first proposed a modified Couzin model for the fish school, which, on top of the classic Couzin model, also takes into consideration the effect imposed passively by the predators. The basic idea for the driven algorithm is to drive behind the fish school to some delicate extent so that, on the one hand, the fish school shall move towards the target region, and on the other hand, the fish school will not disperse and spread away. Moreover, if some fish strays away from the fish school, the predator will take actions to force it back which can greatly reduce the possibility for the fish school to split into multiple subgroups. Compared with the cooperative driven problem for 2-dimensional sheep herd considered in [22], the technical difficulties are much more challenging for the cooperative driven problem considered in this paper since the fish school are moving in 3-dimensional space. In contrast to [22], the main technical contributions of this paper are as follows. First, to achieve cooperation between predators and avoid mutual interference, by projecting the fish school to the plane, the fish school is divided into several groups and each predator is responsible for one group of fish. Second, to drive fish school to move towards the destination, the tail of the fish school is defined as some projection point associated with both the centers of the destination and the fish school. Third, to force the stray fish back to the fish school, an arcuate trajectory is conceived for the predator by appropriately designing a novel 3-dimensional arcuate mapping.

2. Notations

Let and denote the sets of real numbers and positive integers, respectively. Given , . Given a set with finite number of elements, let denotes the cardinality of the set . Given a point and a region , the distance between and is defined by

In 3D space, given angle and rotation axis , the rotation matrix is defined as

For a nonzero vector , let denote the unit vector which has the same direction as . For two nonzero vectors , let

For nonzero vectors , the steering angle limit function is defined by

where denotes the maximum steering angle per unit time.

For , the projection function is defined by

For , the plane projection function is defined by

3. Modified Couzin Model

As shown in Figure 1, in this paper, we will study how to use two predators to drive a school of fish to a target area in 3D space. In what follows, we suppose the position and velocity vectors of all fish and predators are expressed in a common coordinate system.

Suppose the number of fish in the school is . For , the motion of fish is described by

where denotes the sampling period, and denote the position and velocity of the th fish at the th step, respectively.

Let the number of predators be . For , the motion of predator is described by

where denote the position and velocity of the th predator at the th step, respectively.

To describe the relative position between different fish, for , , define and between fish and predator, for , , define

For , the velocity of the th fish is given as follows

where denote the speed rate for fish. denote the effects from other fish and from predator at the th step, respectively, which will be detailed later. defined the way how the noise is imposed on the fish school. In real life, animal decision-making is affected by external disturbances, and we model this effect by rotating by an angle , which satisfies and varies with time along the rotation axis , which is given by

with denoting a random noise signal that is uniformly distributed between 0 and 1. By left multiplying by , it means that at the th step, takes as the rotation axis and rotates radium counterclockwise. When a fish needs to change its direction of motion, it is usually impossible to turn immediately. Therefore, we need to add a limit to the magnitude of the fish’s steering angle in the model, which is realized by the function in the law of (14).

For , if , then, the th fish is to the th fish. Otherwise, it is to the th fish. Here, determines the size of the blind area. Fish in the blind area of fish do not have any impact on fish . Figure 2(a) is an example used to show the definition of the blind area of fish . Fish (point ) is in the blind area of fish , while fish (point ) is outside the blind area of the fish .

As shown in Figure 2(b), fish has blind area and three zones: the repulsive zone , the directional alignment zone , and the attractive zone . We use three positive constants to fine the three zones for , , and , respectively. For , when fish is outside the blind area and located at the zone of fish at the th step, fish satisfies , where

When fish is outside the blind area and located at the zone of fish at the th step, fish satisfies , where

When fish is outside the blind area and located at the zone of fish at the th step, fish satisfies , where

Now, we are ready to present as follows

where are the influences of other neighbors located in on fish at the th step, respectively. Their corresponding mathematical expressions are as follows

The physical meanings of the cases in Equation (19) are explained as follows. Case means that a part of the fish in the fish school are too close to fish , which will make fish stay away from this part of the fish. Case means that fish is only affected by the fish located in the area, and in this case, it will adjust its speed direction to be consistent with the average speed direction of the fish in its area. Case means that fish is only attracted by the fish located in the area, moving towards them. Case means that fish will move towards the fish located in the area while aligning as much as possible with the average speed direction of the fish located in the area. Case means that there is no fish visible to fish . At this point, fish will keep the current state of motion. It is noteworthy that under the motion mechanism of Equation (20), fish tend not to collide with each other.

For , takes the following form

where denotes the strength of the effect from the predator, and denotes the repulsive force imposed by the th predator on the th fish at the th step. has the following form

where with denoting the distance below which predators repel fish greatly between fish and predator, and denoting the distance a predator starts to affect a fish. The profile of is shown by Figure 3 with , .

4. Algorithm

Given , the destination area for the fish school is defined by

where denotes the radius of the hemisphere of the destination. It should be chosen such that the following two requirements can be simultaneously satisfied:

and

Mathematically, the control task considered in this paper is to design for predators such that, under the initial condition

and

for all ,

Inspired by the predatory behavior of the real-world predators on fish school, we realize the spatial driving algorithm in the following way. (1)The predator moves towards the destination at the tail of the school of fish(2)When a fish is found out of the group, the predator drives it back to the school

Now, we will introduce the driving algorithm as follows.

First, we define two important points.

and

where satisfies

The points defined by (32) and (33) are called the center of fish group and the tail of fish group, respectively, which is illustrated by Figure 4(a).

Since , we will assign the task for the predators and let them cooperate to fulfill the task. Based on a common coordinate system, the fish school will be classified into several groups by the predators, and each predator will be in charge of one group in a cooperative way so that the whole fish school is under control by all the predators. Compared with the case of a single predator, the merits for the cooperation of multiple predators are fourfold. First, the workload for each predator will be reduced. Second, multiple predators can deal with larger fish school. Third, the control efficiency will be raised by multiple predators. Fourth, the success rate to fulfill the driving task is higher for the case of multiple predators.

We divide the fish school into groups, and each predator is responsible for one group. For , the fish for which predator is responsible satisfies , where

where denotes a vector which satisfies at the th step.

As shown in Figure 4(b), the direction vector of the -axis is . The predator decides whether to be responsible for fish through the angle between the projection of fish on the plane and the -axis.

For , the position vector of the fish that deviates most from the fish school for which predator is responsible satisfies

As shown in Figure 4(c), the distance between and its projection on line is the largest, and thus, is recorded as .

For , the position vector of the fish that is closest to predator satisfies

As shown in Figure 4(d), the distance between predator and fish is the smallest, so is recorded as .

In order for the predator to drive the stray fish back into the school, the predator needs to move towards the stray fish following an arcuate trajectory. To this end, we need to define the following velocity update function, for ,

where is a constant.

In what follows, we let denote the judgment condition for predator state switching, and let denote the judgment condition for predator velocity updating. Moreover, for , let denote the flag bit of the state of predator . The space driven algorithm consists of two phases as follows. (1)Initialization

Select design parameters .

Let .

Set up upper step limit . (2)Iteration: run Algorithm 1 until reaches or the task objective (31) is achieved

Input:, ,
.
Output:,
1:  for (, , )do
2:    ifthen
3:      
4:    else ifthen
5:      
6:    else ifthen
7:      
8:    if
9:      
10:     
11:   ifthen
12:     
13:     
14:   ifthen
15:     
16:     ifthen
17:       .
18:   else
19:       
20:  return result

The explanation of Algorithm 1 is as follows.

The predator has three states, where each state corresponds to a special speed update strategy. In this paper, we use as the status flag of the predator at the th step, and different values of correspond to different states of the predators. takes value in . At the starting moment, that is, when , we set by default that .

means that the predator is near the tail of the fish school and chooses to follow the fish school while keeping a certain distance away from the fish school. In this way, the predator imposes repulsive force on the fish school to drive it to the destination area. In this state, predator needs to first detect whether there is a fish deviating from the fish school that it is responsible for at the current moment. The detection is realized by comparing the distance of predator to the line with a threshold . If the distance of predator to the line is greater than , the predator should change to . Otherwise, it maintains its current state. For example, as shown in Figure 5(a), the distance of predator to the line is equal to .

If remains to be after detection, predator will update its motion as follows. Let denote the distance between the predator and the school of fish at the th step. If , in order to keep a certain distance away from the fish school, the predator should stop moving, that is, set . Otherwise, it should drive the fish group to the destination while moving towards the fish group, that is, set .

means that predator is driving the stray fish back into the school. Before we update the velocity of the predator , we need to determine whether the state of the predator needs to be switched at the current moment. We judge the positional relationship between the predator and the fish school by the angle or the angle . When the former is acute, it means that the predator has moved to the front of the fish school. At this time, the predator should set . When the latter is greater than the threshold , it means that the predator has moved to a position where it cannot drive the stray fish back to the school. In such circumstance, the predator also need to set . If none of the above occurs, it maintains its current state. For example, as shown in Figure 5(b), is an acute angle. It is obvious that the predator is in front of the fish group. is , which can be used to measure the relative position of predator with respect to the stray fish . Obviously, when is too small or is too large, the predator’s repulsive force on the stray fish will keep it away from the school.

If remains to be after the above judgment, predator updates its motion as follows. In order to drive the stray fish back into the school, we need to make the predator move along a suitable trajectory so that the stray fish can move towards the school. To this end, we update the velocity of the predator through the function , which is illustrated by Figure 3. As shown in Figure 5(c), predator moves towards the target fish . To be able to approach the fish in an arcuate trajectory, at each moment the predator needs to turn counterclockwise by , i.e., from to . Here, denotes the actual velocity of the predator calculated by , which can be calculated by the following equation

means that predator should return to the tail of the fish school. Like the other two states, we need to first decide whether needs to be changed. If the distance of predator to the line is less than or equal to , which means the predator has returned to the tail of the fish school, the predator should change to . Otherwise, it maintains its current state. If remains to after the above judgment, predator updates its motion as follows. In order not to collide with the fish and cause the fish to disperse when returning to the tail of the fish, the predator needs to move along a trajectory bypassing the fish. To do so, we update the velocity of the predator by the function . We use to denote the actual velocity of the predator , which can be calculated by the following equation

5. Simulation Results and Analysis

In this section, we conduct comprehensive simulation experiments to verify the algorithm and analyze the effect of different parameters value on the simulation results. The parameters , , , and are taken into consideration. A total of 100 tests are performed for one set of parameters. Suppose of 100 tests are successful, i.e., the predators push the fish to the target area within the time limit. (i)Success rate evaluation indicator is defined by(ii)Consider the successful tests. Suppose the number of task completion steps for the th test is . Then, the average step evaluating indicator for control efficiency is defined by

The algorithm parameters are given in Table 1, which can be classified into model parameters and control algorithm parameters. First, the model parameters are determined in the way that the fish school shall exhibit typical swarm behaviors as in nature, which in our case is the vortex movement. Once the model parameters are obtained, we will determine the control algorithm parameters by trial and error. The control algorithm parameters are finally settled down by a weighted evaluation of both the indicators of success rate and control efficiency. A whole driving process under the proposed driven algorithm is shown by Figure 6, where the fish school has been driven to the target area by the predators successfully.

In what follows, we will examine how the control parameters shall affect the performance of the algorithm. To this end, key parameters should be determined first which have significant impact on control performance. To do so, experiments are conducted in the way that for each time, and the tested control parameter varies in its allowable range with other control parameters being fixed. If the two indicators vary significantly with respect to the variation of the tested control parameter, then, the tested control parameter will be treated as a key control parameter. In this way, four key control parameters are determined by extensive experiment results in this paper, namely, , , , and .

Figure 7 shows the profiles of the two evaluation indicators , changing with respect to , , , and , respectively. The parameter we change in Figures 7(a) and 7(b) is the repulsive force coefficient . When it is increased from to , the success rate remains above 90%. While, when the value of the coefficient is around 0.1, there is a minimum value for the average step. On one hand, if the coefficient is too small, the fish is not sensitive to predators’ repulsion force, thus resulting in a longer time to complete the task. On the other hand, if the coefficient is too large, the predators’ repulsion will override the original expected velocity direction, causing some small fish to escape from the group.

As shown in Figures 7(c) and 7(d), we let the minimum return angle change from to . The geometric meaning of is shown in Figure 7(b). According to Figures 7(c) and 7(d), the success rate remains stable more than 98% regardless of the change of . But the change of will lead to the change of average step. The larger the minimum return angle, the quicker the predator can return to the tail of the fish group. Thus, there is less time for the predator’s repulsive force acting on the stray fish, making it difficult for the stray fish to return to the school, which in turn requires the predator to spend more time to drive the stray fish back to the fish school. The predator tends to force back the stray fish. However, when the angle exceeds , the predator is expected to return to the tail of the fish group, causing the predator to go back and forth. This movement will change the direction of the velocity of the fish group, which will also increase the average step. It will not end until the stray fish returns to the group. Because the area of attraction is wide enough, the stray fish may return to the group by the cohesion rule. That is why the algorithm can still have high success rates when gets larger.

As shown in Figures 7(e) and 7(f), we let predator num change from 1 to 5. Note that when the number of predators is changed from 1 to 2, the success rate can reach up to more than 90%, and yet the average step is greatly reduced. In comparison with the case of a single predator, multiple predators can effectively prevent individual fish from leaving the group. In the case of a hundred fish, a suitable value for the number of predators is two or three. Note that when the number of predators reaches four or five, the average time step increases and the success rate decreases. The reason is that as the number of predators increases, the repulsive force of the predators imposed on the fish increases. Thus, the fish are more likely to spread out, and the stable motion of the fish school is violated.

As shown in Figures 7(g) and 7(h), we let the minimum rotation angle change from to . The geometric meaning of is shown in Figure 5(b). This parameter can greatly affect the efficiency of the algorithm. The purpose of this parameter is to make the relative position between the predator and the stray fish being appropriate. When , it means that the predator’s repulsive force on the stray fish will drive the fish out of the group. Note that the success rate remains steady above 98% regardless of the change of . But as the value of rotation angle gets larger, the average step increases. The underlying reason is when becomes larger, there will be more undesirable points on the predator’s trajectory. When the predator is located at these undesirable points, the predator’s repulsive force will drive the stray fish out of the group, which results in predators spending more time driving stray fish back into the school.

The proposed control algorithm is involved with many design parameters, and naturally, it is interesting to seek the best parameter combination so that the proposed control algorithm can achieve certain optimal control index. Here, we introduce a brief sketch to conduct parameter optimization. The allowable ranges for the parameters should be determined first. For each parameter, we take a few values from its allowable range, and all values of all the parameters together constitute the set of parameter combination candidates. Next, we conduct experiments with the parameters taken from this candidate set and select a few promising parameter combinations that perform well. Finally, by choosing certain parameter optimization algorithm, such as genetic algorithm or simulated annealing algorithm, we take the selected parameter combinations as the input of the parameter optimization algorithm and then get the final parameter combination that makes the best control index.

6. Conclusion

In this paper, we have studied how to drive a fish school to the destination area by the cooperation of multiple predators. First, a modified Couzin model is proposed for modeling the fish school, which, on top of the classic Couzin model, also takes into consideration the force imposed by the predators. A cooperative driven algorithm is proposed, which accomplishes the driving task through the cooperation among multiple predators. Predators first classify the fish into groups, each of which is managed by a predator. Then, the predators determine their motion by detecting whether there are outliers in the school. When a stray fish is detected, the predator moves towards the fish following an arcuate trajectory. When the predator approaches some certain point, it is able to drive the stray fish back into the school. When there is no fish out of the group, the predator will move towards the destination at the tail of the fish school. Extensive simulations have been performed, which have verified the effectiveness of the algorithm. Moreover, a detailed analysis has been given discussing how the control parameters shall affect the performance of the algorithm. Since there are multiple predators, during the movement of the predators, they may impose overly large repulsion force on a small portion of the fish, which may accidentally make them deviate from the main body of the fish school to such an extent that it would be rather difficult, if possible, to drive them back to the fish school. The reason behind this phenomenon is of course complicated, involving swarm model validation, algorithm parameter selection, and algorithm mechanism design. We will further consider in our future work how to seek desired balancing between the effectiveness and efficiency of the driven algorithm.

Nomenclature

:The position of the th fish at step
:The velocity of the th fish at step
:The position of the th predator at step
:The velocity of the th predator at step
:The relative position of the th fish towards the th fish
:The relative position of the th predator towards the th fish
:The effect from other fish to the th fish at step
:The effect from predator to the th fish at step
:The angle for introducing noise to the velocity of the th fish
:The rotation axis in 3D space for introducing noise to the th fish
:The maximum steering rate of fish
:The positive constant used to fine zor
:The positive constant used to fine zoo
:The positive constant used to fine zoa
:The angle used to determine the size of the blind area of fish
:The set of labels of all the fish visible to the th fish and in zor of the th fish at step
:The set of labels of all the fish visible to the th fish and in zoo of the th fish at step
:The set of labels of all the fish visible to the th fish and in zoa of the th fish at step
:The influence of other neighbors located in zor on fish at the th step
:The influence of other neighbors located in zoo on fish at the th step
:The influence of other neighbors located in zoa on fish at the th step
:The coefficient used to represent the strength of the effect from the predator
:The repulsive force imposed by the th predator on the th fish at the th step
:The distance below which predators repel fish greatly between fish and predator
:The distance a predator starts to affect a fish
:The center of the fish group’s destination
:The radius of the fish group’s destination
:The destination of the fish group
:The center of the fish group at step
:The tail of the fish group at step
:The position of the fish furthest from the destination in the direction from the center of the fish school to the center of the destination at step
:The set of the labels of all the fish subject to predator at step
:The position of the fish that deviates most from the fish school for which predator is responsible at step
:The position of the fish that is closest to predator at step
:The judgment condition for predator state switching
:The judgment condition for predator velocity updating
:The status flag of the predator at the th step
:The positive constant used to compare with the angle to determine the state of the predator
:The positive constant used to compare with the angle to determine the state of the predator .

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This research was funded in part by the National Natural Science Foundation of China under grant number 62173149 and 62276104 and in part by the Guangdong Natural Science Foundation under grant number 2021A1515012584 and 2022A1515011262.