MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

Multi-Agent Game

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

Conducting research involves a profound system of thought, requiring researchers to be logical, meticulous, and earnest. However, effort alone is not sufficient; often leveraging resources is more important than sheer hard work. Additionally, one must have innovative and inspirational points of view. It is recommended that readers browse through the content in order to avoid suddenly falling into a dark maze without finding their way back. This article may not reveal all the answers to your questions, but if it can clarify some of the doubts that arise in your mind, it may create a beautiful sunset of colors. If it brings you a storm in your spiritual world, then take the opportunity to brush off the dust that has settled on your ‘lying flat’ state.

Perhaps, after the rain, the sky will be clearer…

1

Overview

Overview

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

Abstract: We propose a distributed algorithm for collaborative pursuit of multiple escapers by multiple pursuers in a bounded convex environment. This algorithm is applicable for intercepting uncontrolled drones in protected airspace and similar applications. The pursuers are unaware of the escapers’ strategies, but by adopting a global ‘region minimization’ strategy based on environment Voronoi tessellation, we ensure that all escapers can be captured within a finite time. We also present a decentralized version of this strategy, suitable for both two-dimensional (2-D) and three-dimensional (3-D) environments, and demonstrate through multiple simulations that it outperforms other decentralized multi-pursuer heuristic methods. We conducted experiments with autonomous and human-controlled robots to validate the practicality of this method. Notably, human-controlled escapers could not avoid being captured by this algorithm.

Abstract: This paper investigates how to coordinate a group of pursuing robots to capture a group of escaping robots in a convex, bounded environment. The pursuers are unaware of the escapers’ strategies but minimize the escapers’ safe reachable area through their movements, ensuring capture. Our pursuit strategy is inspired by the single escaper pursuit strategies in two-dimensional environments found in literature [1]–[3], which are based on region minimization strategies. This paper presents three main results. First, we extend the results from literature [1]–[3] to environments of arbitrary dimensions, making them applicable to aerial robots in three-dimensional environments. Second, we propose a pursuer algorithm for multiple escapers and prove that this algorithm guarantees the capture of all escapers within a finite time, although it requires global information. Finally, we present a local decentralized multi-escaper pursuit algorithm that performs comparably to the global strategy in simulations and can be implemented on robots with local perception and communication capabilities. Our method is decentralized among the pursuers, with each pursuer only needing information about itself and its Voronoi neighbors to compute its control algorithm. Simulation results demonstrate the performance of our algorithm in both two-dimensional and three-dimensional environments. We conducted hardware experiments using Ouijabots and GoPiGo robots in a motion capture environment. In these experiments, each robot ran its control strategy on its onboard Raspberry Pi 2. We also conducted experiments with human-controlled escapers, which showed that the escapers could not avoid being captured.

Our algorithm has significant applications in various emerging fields, such as security monitoring, search and rescue, and wildlife monitoring. This problem is inspired by the classic game of ‘Cops and Robbers’ [4], [5], where ‘cops’ attempt to capture ‘robbers’ while the robbers try to avoid capture. As the use of drones increases in entertainment and industrial sectors, the threat posed by drones straying into sensitive areas such as airports, public buildings, and protected zones has also significantly increased. Our algorithm provides a practical method for a group of autonomous pursuing drones to neutralize such threats. The algorithm is also applicable for intercepting uncontrolled vessels in ports, as well as intercepting vehicles or suspicious individuals on land. It can also be used in search and rescue applications, where survivors may be unaware that someone is searching for them, thus the search strategy must assume no knowledge of the survivors’ behavioral strategies. The algorithm is also applicable for wildlife monitoring, where the pursuers are autonomous vehicles responsible for tracking or tagging wildlife, which may perceive the pursuers as a threat.

In this paper, we present our algorithm for controlling multiple pursuers to capture multiple escapers in a bounded, convex N-dimensional spatial environment. We also propose a distributed version of the algorithm that performs similarly to the global strategy in simulations. We conducted experiments driving Ouijabots to pursue GoPiGo escapers. In these experiments, we included human-controlled escapers, which could not escape capture. Future work will explore pursuing escapers in environments with obstacles, unbounded environments, and aerial robots in three-dimensional spaces.

2

The result of execution

Execution Results

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

Partial code:

%% initialize the parameters
ts = 1; % time step
t_end = 2000; % ending time
u_a_bound = 9; % attacker's control acceleration bound
u_d_bound = 18.4; % defender's control acceleration bound
drag_coef = 1.5; % const drag coeffecient
rho_p = 45; % radius of the protected area
rho_d_int = 5; % intercepting radius, if the distance between attacker and defender <= this value, then they are seen as damaged
rho_d = 2500; % defenders' percepting region
rho_d_game = 2000; % defenders' playing region
rho_a_game = 2300; % attacker's initial position region
radius_a = 0.5; % attacker's geometric radius
radius_d = 0.5; % defender's geometric radius
radius_c = 1.5; % clustered group's radius
R_sb = 10; % string barrier's maximum length
N_a = 10; % attackers' number
N_d = 20; % defenders' number
num_c = 3; % number of clusters
num_uc = 3; % number of unclustered attackers
v_a_avr = u_a_bound / drag_coef;
v_d_avr = u_d_bound / drag_coef;

%% initialize the agents
attackers = cell(1, N_a);

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

3

References

References

Some content in this article is sourced from the internet, and references will be noted or cited as references. There may be omissions, and if there are any inaccuracies, please feel free to contact us for removal. (The content of the article is for reference only, and the actual results are subject to execution results)

MATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple EscapersMATLAB | Multi-Agent Game | Intercepting Uncontrolled Robots: An Algorithm for Multiple Pursuers Capturing Multiple Escapers

4

Code\Article\Data

Matlab Code | Article Download

Leave a Comment