# Multitarget Search Algorithm Using Swarm Robots in an Unknown 3D Mountain Environment
## 3 Robot Search Task Assignment Mechanism
### Robot Task Assignment Model  
In the process of task search, each robot participates in a task search process through self-organization and decides whether to choose task \(tar_{1}\) or task \(tar_{2}\) and whether to change the task between task selection and task completion. The process is as follows: First,  
Figure 1: Three robot states relationship. the sensor detects the target response value of a robot in the detection range. If the robot detects multiple target signals in the detection range, the response probability of the robot to each target is calculated according to a response probability evaluation model, and then a roulette algorithm is used to make a decision regarding which target to search for [26]. The response probability assessment is expressed as Equation (5):  
\[p(i,j)=\frac{I_{i,j}^{2}(t)}{\sum_{k=1}^{m}I_{i,k|t}^{2}},\forall j,k=\{1,2,3, \cdots,m\} \tag{5}\]  
where \(I_{i,j}^{2}(t)\) is the target \(tar_{j}\) signal detected by robot \(R_{i}\) at time \(t\). If the robot detects \(m\) target signals within its detection range, the probability of robot \(R_{i}\) responding to target \(tar_{j}\) excitation is \(P(i,j)\), as Equation (6):  
\[P(i,j)=\sum_{k=1}^{j}p_{ik},j=1,2,\cdots,m \tag{6}\]  
When \(P(i,j-1)<r_{a}<P(i,j)\), robot \(R_{i}\) selects target \(tar_{j}\) as the target of collaborative search, and \(r_{a}\in(0,1)\). Robots can obtain target information in two ways during driving. On the one hand, robots can directly detect target signals through their own sensors, which is called a class I robot. On the other hand, a robot fails to detect a target signal within its detection range but indirectly obtains the signal information of a target through communication with other robots. This kind of robot is called a class II robot [27]. If a target signal detected by two robots is the same target, they can participate in the target search process task together. When multiple robots participate in the same search task, these robots can form a suballiance to carry out a cooperative search for the target. In the process of searching a 3D task environment, multiple robots will search for the same target, or only a few robots will search for the same target; that is, in the process of forming a suballiance, there will be an uneven distribution of robot resources. To avoid this situation, closed-loop regulation is introduced; that is, the resource allocation of each suballiance is re-evaluated after the first subtask assignment. When the number of members of a suballiance reaches an upper limit \(N_{m}\), the suballiance preferentially selects \(N_{m}\) robots, and the remaining robots not selected will quit the suballiance and reselect other targets as their search tasks or switch to the roaming search state. When the number of members of a suballiance does not reach the upper limit \(N_{m}\), suballiance members can be recruited from the surrounding robots to participate in the target task search. The priority principle of suballiance member selection is as follows: the priority of class I targets is greater than that of class II targets; if the priority is the same, the robot is evaluated according to the intensity of the target excitation signal; namely, the higher the intensity of the target signal is, the higher the dominant position. If the number of class I targets is less than \(N_{m}\), a robot close to the class II communicating robot will be preferentially selected. If there is a robot with the same distance as the communicating robot, the robot with a strong signal will be preferentially selected. See Table 1 for details. Swarm robots should not only avoid all obstacles but also complete all target searches in the process of movement. To complete all target search tasks quickly and effectively, the robots can form suballiances to search for the same target together according to the detected target signals and communicate with the surrounding robots. As presented in Table 1, the members of suballiances \(U_{1}\) are sorted.