Multi-source positioning method based on virtual target and virtual population particle swarm algorithm
By introducing virtual targets and virtual populations into the particle swarm optimization algorithm in swarm robot search, the shortcomings of grouping methods are solved, and efficient and low-cost multi-source target localization is achieved, which is suitable for large-area no-signal scenarios and dangerous environments.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TONGJI UNIV
- Filing Date
- 2023-06-30
- Publication Date
- 2026-08-04
AI Technical Summary
Existing particle swarm optimization algorithms suffer from the problem of difficulty in determining the number of groups in multi-target search by swarm robots. This leads to a decrease in performance as the number of source targets increases, and also requires a large number of robots, increasing physical costs.
The Particle Swarm Optimization (PSO) algorithm, based on virtual targets and virtual populations, is adopted. By equally dividing the search area into virtual targets and using a virtual population for PSO search, only one group or one robot needs to traverse all virtual targets to locate the real source, reducing the number of robots and improving performance.
It achieves high-performance multi-source target localization in large-area passive scenarios, reduces the number of robots, lowers physical costs, and maintains high search accuracy and anti-interference capability in hazardous environments.
Smart Images

Figure CN117007047B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of multi-target search in swarm robots, specifically a multi-source localization method based on particle swarm optimization (PSO) algorithm with virtual targets and virtual populations. Background Technology
[0002] In recent years, the source localization problem has attracted widespread attention and gradually become a research hotspot. This problem assumes the existence of a static source in an unknown environment that continuously emits signals. A group of robots needs to collaboratively locate the source based on the signal strength detected in various regions. Due to phenomena such as reflection and refraction of spatial signals, as well as errors in sensor measurements and varying degrees of noise within the detection area, the task becomes significantly more challenging. From another perspective, this problem can be transformed into an optimization problem. The signal strength at each location in the search space is modeled as a function value at that point; therefore, the source location is the point where the function value is maximized, i.e., the maximum value of the three-dimensional function is being searched. However, due to spatial noise, this function is a multimodal function, with numerous local optima.
[0003] Particle Swarm Optimization (PSO) is a swarm intelligence algorithm proposed by Kennedy and Eberhart in 1995, inspired by bird flocks foraging, to solve global optimization problems. Due to its parameter simplicity and fast convergence, PSO has become one of the mainstream global optimization techniques and is widely used in various practical problems. However, because particle search has a certain degree of randomness, this method is prone to getting trapped in local optima. Therefore, many researchers have proposed variant PSO algorithms to further improve its optimization performance by balancing the swarm's global search and local search capabilities.
[0004] Many works in the fields of swarm intelligence and swarm robot target search share similarities and compatibility. If physical robots with certain communication and perception capabilities replace the particles in particle swarm optimization algorithms, then swarm intelligence optimization algorithms can be extended to the real world, i.e., solving the source localization problem. However, most multi-source target localization methods are grouping methods, which struggle to determine the specific number of groups. Their performance degrades drastically as the number of source targets increases, and additional mechanisms are needed to handle multiple groups searching for the same target. Furthermore, they require a large number of robots to meet the grouping requirements. Therefore, inventing a swarm robot coverage search multi-target search method that does not require grouping is crucial. Summary of the Invention
[0005] This invention addresses the shortcomings of existing particle swarm optimization (PSO) algorithms in multi-target search for swarm robots by proposing a multi-source localization method based on virtual targets and a virtual population. The Virtual-Source and Virtual-Swarm-Based-PSO (VVPSO) algorithm divides the search area into multiple equal units, each with a virtual target at its center. Then, only one group of robots, or even just a single robot, traverses all virtual targets and checks whether the virtual targets and their corresponding units are within the signal field of the real source. The virtual population is then used for PSO to further search for virtual targets and their corresponding units within the signal field, thereby locating the real source and ultimately covering the entire search space. This invention overcomes the shortcomings of grouping-based multi-source localization algorithms, addressing the difficulty in determining the number of groups. The algorithm requires only one group or even just one robot to complete multi-source target localization, thus significantly reducing the number of robots needed and physical costs. Furthermore, this method can adapt to large-area passive scenarios while maintaining extremely high performance.
[0006] This invention is achieved through the following technical solution:
[0007] This invention relates to a multi-source localization method based on particle swarm optimization (PSO) and virtual population, the steps of which are as follows:
[0008] Step 1.1: In the application scenario, robots are distributed in a dispersed manner. Environmental modeling is performed, and the field source signal values detected by the robot sensors are used as the fitness index of the particle swarm algorithm.
[0009] Step 1.2: Randomly initialize within a certain area The location of the robot and speed ;
[0010] Step 1.3: Divide the search space equally into three parts. A spatial unit of equal area Each spatial unit has a virtual target at its center. The set of its virtual targets is ;
[0011] (1)
[0012] (2)
[0013] in, For the size of the search space Ω, For the number of virtual targets, This represents the size of a spatial unit. Each spatial unit has the same size.
[0014] Step 1.4: Each robot in the swarm selects the nearest virtual target to itself for searching, from the set of virtual targets. Delete virtual targets that are not in the signal field; perform PSO using a virtual population on virtual targets and their corresponding spatial units in the signal field to further search for and locate the source targets;
[0015] Step 1.5: When the virtual target set The timeout indicates that all virtual targets have been traversed, and the algorithm ends; otherwise, return to step 1.4 for the next iteration.
[0016] Furthermore, in step 1.4 above, the swarm of robots searches for virtual targets and uses the virtual population to perform PSO to achieve source target localization. The specific steps are as follows;
[0017] Step 1.4.1: The robot mutually exclusively selects the nearest virtual target (the virtual target has not been selected by other robots and is still in the set of virtual targets). (China) as an individual (Example A robot individual for If multiple nearest virtual targets exist simultaneously, one of them is randomly selected as the target. The expressions are as follows (3)-(4):
[0018] (3)
[0019] (4)
[0020] in Representing the A robot, It is the first A virtual target, yes and The distance between them It is the first The robot's nearest virtual target, and then through (4) As of ;
[0021] Step 1.4.2: Confirm After that, the A robot The velocity and position are updated according to formulas (5)-(7):
[0022] (5)
[0023] (6)
[0024] (7)
[0025] in, Represents a convergence factor, when A value greater than 4 will guarantee particle convergence; Dimensions representing the problem , It is a constant acceleration factor, and , ; yes 3D random number vector; express speed; express Location;
[0026] Step 1.4.3: When the robot Located in its Corresponding spatial unit Inside, it indicates that the robot has reached its selected virtual target. In the area where the robot is located, it will detect the field source signal at its own position. ;like = 0 This indicates that the robot has not detected the source signal field. If the robot... and The distance is less than the threshold This indicates that the robot has reached its selected virtual target. Location and for spatial units The search is complete, therefore from the virtual target set Delete virtual target Exit step 1.4; if the robot With The distance is greater than the threshold If so, return to step 1.4.2;
[0027] like >0 , indicating robot A signal value has been detected and a source signal field has been found. At this point, the initial size within that spatial unit is... n Virtual population; nThis represents the number of virtual particles within the virtual population. The initial positions of the virtual particles are randomly generated within the spatial unit, and the positions of the virtual particles will not overlap. If there is overlap, new positions will be randomly generated again. The initial... for The initial state of each virtual particle It equals its current coordinates;
[0028] Step 1.4.4: Robot The basic process involves traversing the virtual population using a greedy algorithm and detecting and recording the fitness value of each virtual particle's coordinates. The robot... The system will select the nearest virtual particle for visit, and after that, select the nearest virtual particle again for visit, until all virtual particles have been visited. After obtaining the fitness values of all virtual particles, the PSO formula can be applied to the virtual population. And virtual populations Update according to formulas (8)-(9):
[0029] (8)
[0030] (9)
[0031] Indicates the first The historical optimal position of a virtual particle This represents the historical best position of the virtual population. Indicates the first The next iteration;
[0032] The position and velocity of the virtual particles are then updated according to formulas (10)-(12):
[0033] (10)
[0034] (11)
[0035] (12)
[0036] in, , It is a constant acceleration factor, and , ; Dimensions representing the problem , yes 3D random number vector; Indicates the first The velocity of each virtual particle; Indicates the first The position of each virtual particle.
[0037] Step 1.4.5: When the virtual population reaches its historical best position With source target The distance is less than the threshold hour , indicating robot The source target has been located; now, from the set of virtual targets... Delete Exit step 1.4; if If the robot fails to locate the source target, return to step 1.4.4 for the next iteration.
[0038] This invention constructs an interaction mechanism between robots through the particle swarm optimization algorithm to achieve group collaboration; it uses the divide-and-conquer approach to achieve region division by setting virtual targets, requiring only one group of robots or even just one robot to traverse all virtual targets and their regions to achieve coverage search, and completes the entire multi-source target localization by completing multiple single-source target localizations.
[0039] The search accuracy and anti-interference capabilities of this invention will continue to improve with the development of particle swarm optimization. This invention is more suitable for source target localization scenarios in large areas with no signal, achieving full search space coverage even without signal values, and preventing the entire swarm from becoming inoperable due to damage to some robots. Therefore, it is particularly suitable for search tasks in hazardous environments, such as disaster relief and locating hazardous gas leak sources. This invention is rationally designed, using virtual targets and their corresponding units for area division. Only one group, or even just one robot, needs to traverse all virtual targets to complete the search of each area, avoiding the drawbacks of grouping methods and reducing the number of robots in the swarm, thus reducing physical costs. Attached Figure Description
[0040] Figure 1 A schematic diagram of the multi-source localization method of particle swarm optimization for virtual targets and virtual populations.
[0041] Figure 2 To set up virtual sources: The number of virtual sources determines the number of units. The virtual target setting method is based on 64 virtual targets (green stars are virtual targets, and green-bordered squares are their corresponding units).
[0042] Figure 3 This is a classic multi-source target localization experimental scenario (blue triangles represent robots, red hollow squares represent small areas initialized by the swarm of robots, blue stars represent source targets, and gradient circles represent the signal fields of source targets).
[0043] Figure 4A special multi-source target localization experimental scenario (blue triangles represent robots, red hollow squares represent small areas initialized by the group of robots, blue stars represent source targets, and gradient circles represent the signal fields of source targets).
[0044] Figure 5 A basic flowchart illustrating the method for locating multi-source targets (using a special multi-source target location experiment scenario as an example). Detailed Implementation
[0045] This invention proposes a multi-source localization method based on a particle swarm optimization algorithm using virtual targets and a virtual population. This method introduces virtual targets to divide the search space, requiring only a group of robots to traverse all virtual targets and their regions. The entire multi-source localization is completed by performing multiple single-source target localizations. Compared to current state-of-the-art technologies, this method not only does not affect the completion of the search task, but also significantly improves the target search accuracy of the swarm robots, even under adverse conditions such as random robot failures, malfunctions, and damage. This invention requires only a small number of robots to demonstrate high performance and is also applicable to multi-source target localization scenarios in large areas without signal coverage.
[0046] The technical solution of the present invention will be described in detail below with reference to the accompanying drawings and embodiments.
[0047] In this embodiment, "robot" refers to a physical robot with communication and sensing capabilities, and is used as an example rather than a limitation, such as drones, unmanned vehicles, and unmanned underwater vehicles.
[0048] The "swarm robot target search task" mentioned in the embodiments refers to the task of the technical solution of this invention. It is an example, not a limitation, such as locating a hazardous gas leak source. Assume that a hazardous gas leak exists in an area, but the source information, including its quantity and location, is unknown. Multiple robots with local sensing and communication capabilities can collaboratively locate the specific location of the leak source based on shared gas concentration values detected at different locations. Another example is disaster relief: to locate and rescue survivors under disaster rubble, robots equipped with radar life detectors and other sensors are used to detect the strength of vital signs at various locations on-site. The location with the strongest vital signs is then located through a collaborative search by a swarm of robots.
[0049] In this embodiment, the swarm robot system is constructed as an environment model.
[0050] Example
[0051] Part 1: Algorithm Introduction
[0052] like Figure 1 As shown, this embodiment is a method for multi-target search covering swarm robots, specifically including the following steps:
[0053] Step 1.1: In the application scenario, robots are deployed in a dispersed manner. Environmental modeling is performed, and the field source signal values detected by the robot sensors are used as the fitness index of the particle swarm optimization algorithm. The task dimension is... and generate in the environment Individual source target;
[0054] Step 1.2: Randomly initialize within a certain area The location of the robot and speed The robot's maximum speed is ;
[0055] Step 1.3: Divide the search space equally into three parts. A spatial unit of equal area Each spatial unit has a virtual target at its center. The set of its virtual targets is ,like Figure 2 Sixty-four virtual targets and their corresponding sixty-four spatial units were set up;
[0056] (1)
[0057] (2)
[0058] in, For the size of the search space Ω, For the number of virtual targets, This represents the size of a spatial unit. Each spatial unit has the same size.
[0059] Step 1.4: Each robot in the swarm selects the nearest virtual target to itself for searching, from the set of virtual targets. Delete virtual targets that are not in the signal field; perform PSO using a virtual population on virtual targets and their corresponding spatial units in the signal field to further search for and locate the source targets;
[0060] Step 1.5: When the virtual target set The timeout indicates that all virtual targets have been traversed, and the algorithm ends; otherwise, return to step 1.4 for the next iteration.
[0061] Furthermore, in step 1.4 above, each of the group of robots selects the nearest virtual target to itself for searching. Delete virtual targets that are not in the signal field. For virtual targets that are in the signal field and their corresponding spatial units, perform PSO using a virtual population to further search for and locate the source target. The specific steps are as follows:
[0062] Step 1.4.1: The robot mutually exclusively selects the nearest virtual target (the virtual target has not been selected by other robots and is still in the set of virtual targets). (China) as an individual (Example A robot individual for If multiple nearest virtual targets exist simultaneously, one of them is randomly selected as the target. The expressions are as follows (3)-(4):
[0063] (3)
[0064] (4)
[0065] in Representing the A robot, It is the first A virtual target, yes and The distance between them It is the first The robot's nearest virtual target, and then through (4) As of ;
[0066] Step 1.4.2: Confirm After that, the A robot The velocity and position are updated according to formulas (5)-(7):
[0067] (5)
[0068] (6)
[0069] (7)
[0070] in, Represents a convergence factor, when A value greater than 4 will guarantee particle convergence; Dimensions representing the problem , It is a constant acceleration factor, and , ; yes 3D random number vector, ; express speed; express Location;
[0071] Step 1.4.3: When the robot Located in its Corresponding spatial unit Inside, it indicates that the robot has reached its selected virtual target. In the area where the robot is located, it will detect the field source signal at its own position. ;like = 0 This indicates that the robot has not detected the source signal field. If the robot... and The distance is less than the threshold This indicates that the robot has reached its selected virtual target. Location and for spatial units The search is complete, therefore from the virtual target set Delete virtual target Exit step 1.4; if the robot With The distance is greater than the threshold If so, return to step 1.4.2;
[0072] like >0 , indicating robot A signal value has been detected and a source signal field has been found. At this point, the initial size within that spatial unit is... n A virtual population of 5; n This represents the number of virtual particles within the virtual population. The initial positions of the virtual particles are randomly generated within the spatial unit, and the positions of the virtual particles will not overlap. If there is overlap, new positions will be randomly generated again. The initial... for The initial state of each virtual particle It equals its current coordinates;
[0073] Step 1.4.4: Robot The basic process involves traversing the virtual population using a greedy algorithm and detecting and recording the fitness value of each virtual particle's coordinates. The robot... The system will select the nearest virtual particle for visit, and after that, select the nearest virtual particle again for visit, until all virtual particles have been visited. After obtaining the fitness values of all virtual particles, the PSO formula can be applied to the virtual population. And virtual populations Update according to formulas (8)-(9):
[0074] (8)
[0075] (9)
[0076] Indicates the first The historical optimal position of a virtual particle This represents the historical best position of the virtual population. Indicates the first The next iteration;
[0077] The position and velocity of the virtual particles are then updated according to formulas (10)-(12):
[0078] (10)
[0079] (11)
[0080] (12)
[0081] in, , It is a constant acceleration factor, and , ; Dimensions representing the problem , yes 3D random number vector; Indicates the first The velocity of each virtual particle; Indicates the first The position of each virtual particle.
[0082] Step 1.4.5: When the virtual population reaches its historical best position With source target The distance is less than the threshold hour , indicating robot The source target has been located; now, from the set of virtual targets... Delete Exit step 1.4; if If the robot fails to locate the source target, return to step 1.4.4 for the next iteration.
[0083] Part Two: Performance Verification
[0084] To more intuitively verify the performance of this invention in the multi-source target search problem, experiments were conducted in two scenarios: classic multi-source target scenarios and special multi-source target scenarios. In each scenario, the results were compared with five state-of-the-art multi-source target localization methods: SAP-CFPSO (Q. Tang, L. Ding, F. Yu, Y. Zhang, Y. Li, and H. Tu, “Swarm robots search for multiple targets based on an improved grouping strategy,” IEEE / ACM transactions on computational biology and bioinformatics, vol. 15, no. 6, pp. 1943–1950, 2017.) and NBNC-PSO (W. Luo, Y. Qiao, X. Lin, P. Xu, and M. Preuss, “Hybridizing niching, particle swarm optimization, and evolution strategy for multimodal optimization,” IEEE Transactions on Cybernetics, 2020, doi:10.1109 / TCYB.3032995. 2020. ), Multi-MPSO (Q. Tang, F. Yu, Z. Xu, and P. Eberhard, “Swarm robots search for multiple targets,” IEEEAccess, vol. 8, pp. 92 814–92 826, 2020. ), LIPSO (BY Qu, PN Suganthan, and S. Das, “A distance-based locally informed particle swarm model for multimodal optimization,” IEEE Transactions on Evolutionary Computation, vol.17, no. 3, pp. 387- 402, 2013.), HRTPSO (Z.-G. Chen, Z.-H. Zhan, D. Liu, S.Kwong, and J.Zhang, “Particle swarm optimization with hybrid ring topology for multimodal optimization problems,” in 2020 IEEE International Conference on Systems, Man, and Cybernetics (SMC), 2020.).
[0085] In classic multi-source target scenarios, five source targets are generated and randomly distributed in the search space. In real-world scenarios, swarm robots typically start from a specific region rather than being randomly initialized within the search space. Therefore, in this experiment, the robots will initialize within a small region, such as... Figure 3 The swarm of robots needs to locate a randomly generated source target in the search space. The experimental results are shown in Table 1. The proposed algorithm, VVPSO, achieves the highest performance, and its performance hardly decreases with the reduction in the number of robots.
[0086] In special multi-source target scenarios, a source target is generated at each of the four corners of the search space. In real-world scenarios, swarm robots typically start from a specific area rather than being randomly initialized within the search space. Therefore, in this experiment, the robots will initialize within a small area, such as... Figure 4 The swarm robots need to traverse a large area without signal to locate the source target located in the corner. The experimental results are shown in Table 2. The proposed algorithm VVPSO achieved the highest performance. VVPSO can locate the source target located in the four corners by traversing the area without signal by traversing the virtual source. Figure 5 . Figure 5 (a) represents a swarm of robots initializing within a small square area, then traversing a large, unsignaled region by iterating over a virtual target, such as... Figure 5 (b) Figure 5 (c)-(d) illustrate the process where the swarm of robots discovers the source's signal field, and then each robot uses a virtual population to perform PSO to locate the source. Finally, all virtual sources are deleted, signifying the end of VVPSO. Figure 5 (c) Shows the use of a virtual population to perform PSO to locate the source. Figure 5 (d) indicates that the search is complete (no virtual targets remain).
[0087] Table 1. Algorithm Comparison Experimental Data
[0088]
[0089] Table 2. Algorithm Comparison Experimental Data
[0090]
[0091] The above content is a further detailed description of the present invention, and it should not be considered that the specific embodiments of the present invention are limited to this. For those skilled in the art, several simple deductions or substitutions can be made without departing from the concept of the present invention, and all of these should be considered to fall within the scope of protection of the invention as defined by the claims of the present invention.
Claims
1. A multi-source localization method based on particle swarm optimization (PSO) with virtual targets and virtual populations, characterized in that, Including the following steps: Step 1.1: In the application scenario, robots are distributed in a dispersed manner. Environmental modeling is performed, and the field source signal values detected by the robot sensors are used as the fitness index of the particle swarm algorithm. Step 1.2: Randomly initialize within a certain area The location of the robot and speed ; Step 1.3: Divide the search space equally into three parts. A spatial unit of equal area Each spatial unit has a virtual target at its center. The set of its virtual targets is ; (1) (2) in, For the size of the search space Ω, For the number of virtual targets, This represents the size of a spatial unit, where each spatial unit has the same size. Step 1.4: Each robot in the swarm selects the nearest virtual target to itself for searching, from the set of virtual targets. Delete virtual targets that are not in the signal field; perform PSO using a virtual population on virtual targets and their corresponding spatial units in the signal field to further search for and locate the source targets; Step 1.5: When the virtual target set The timeout indicates that all virtual targets have been traversed, and the algorithm ends; otherwise, return to step 1.4 for the next iteration. Step 1.4 includes: Step 1.4.1: The robot mutually excludes and selects the nearest virtual target as the individual. The virtual target has not been selected by other robots and is still in the set of virtual targets. In the middle, the first A robot individual for If multiple nearest virtual targets exist simultaneously, one of them is randomly selected as its target. The expressions are as follows (3)-(4): (3) (4) in Representing the A robot, It is the first A virtual target, yes and The distance between them It is the first The robot's nearest virtual target; Step 1.4.2: Confirm After that, the A robot The velocity and position are updated according to formulas (5)-(7): (5) (6) (7) in, Represents a convergence factor, when A value greater than 4 will guarantee particle convergence; Dimensions representing the problem , It is a constant acceleration factor, and , ; yes 3D random number vector; express speed; express Location; Step 1.4.3: When the robot Located in its Corresponding spatial unit Inside, it indicates that the robot has reached its selected virtual target. In the area where the robot is located, it will detect the field source signal at its own position. ;like = 0 This indicates that the robot has not detected the source signal field. If the robot... and The distance is less than the threshold This indicates that the robot has reached its selected virtual target. Location and for spatial units The search is complete, therefore from the virtual target set Delete virtual target Exit step 1.4; if the robot With The distance is greater than the threshold If so, return to step 1.4.2; like >0 , indicating robot A signal value has been detected and a source signal field has been found. At this point, the initial size within that spatial unit is... n Virtual population; n This represents the number of virtual particles within the virtual population. The initial positions of the virtual particles are randomly generated within the spatial unit, and the positions of the virtual particles will not overlap. If there is overlap, new positions will be randomly generated again. The initial... for The initial state of each virtual particle It equals its current coordinates; Step 1.4.4: Robot The basic process involves traversing the virtual population using a greedy algorithm and detecting and recording the fitness value of each virtual particle's coordinates. The robot... It will select the nearest virtual particle to access; access refers to the robot. Move to the virtual particle's coordinates and check its fitness value. After visiting the virtual particle, select the nearest virtual particle again and visit it, until all virtual particles have been visited. After obtaining the fitness values of all virtual particles, apply the Particle Swarm Optimization (PSO) algorithm to the virtual population. And virtual populations Update according to formulas (8)-(9): (8) (9) Indicates the first The historical optimal position of a virtual particle This represents the historical best position of the virtual population. Indicates the first The next iteration; The position and velocity of the virtual particles are then updated according to formulas (10)-(12): (10) (11) (12) in, , It is a constant acceleration factor, and , ; Dimensions representing the problem , yes 3D random number vector; Indicates the first The velocity of each virtual particle; Indicates the first The position of each virtual particle; Step 1.4.5: When the virtual population reaches its historical best position With source target The distance is less than the threshold hour , indicating robot The source target has been located; now, from the set of virtual targets... Delete Exit step 1.4; if If the robot fails to locate the source target, return to step 1.4.4 for the next iteration.