A multi-agent swarming obstacle avoidance method based on obstacle boundary point locations
By adopting a multi-agent swarming obstacle avoidance method based on the location of obstacle boundary points, the problem of strict constraints on obstacle information and shape in existing technologies is solved, and multi-agents can safely avoid obstacles and gather in complex environments, with good dynamic performance and environmental applicability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-15
- Publication Date
- 2026-03-13
AI Technical Summary
Existing multi-agent swarming obstacle avoidance algorithms have strict constraints on obstacle information, shape, and boundaries, making it difficult to effectively avoid obstacles in complex environments.
The multi-agent swarming obstacle avoidance method based on obstacle boundary point location establishes a velocity-constrained motion model, designs virtual potential field functions for the separation zone, warning zone, and attraction zone, designs a desired velocity representation method using obstacle boundary point information, and combines it with a guidance feedback term to achieve obstacle avoidance control of the agents.
It enables multiple agents to safely bypass obstacles and regroup without needing to fully know the obstacle information and shape, exhibiting good dynamic performance and environmental adaptability, and avoiding collisions.
Smart Images

Figure CN116185068B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of artificial intelligence technology, specifically to a multi-agent swarming obstacle avoidance method based on the location of obstacle boundary points. Background Technology
[0002] Swarming is an orderly movement phenomenon that emerges from the interaction of multiple agents through simple behavioral rules and local information, such as bird migration, fish foraging, and deer herds avoiding predators. In nature, multi-agent swarming often encounters obstacles, and obstacle avoidance is clearly a key technical problem that urgently needs to be solved in swarm control research.
[0003] In recent years, research on swarm obstacle avoidance has mainly focused on the collision cone method, velocity obstacle method, numerical solution method, and potential field method. The collision cone method uses collision cones for collision detection. If a collision risk is detected, it calculates the obstacle avoidance trajectory by converting the relative velocity vector in the collision cone into an obstacle avoidance vector. The velocity obstacle method translates the collision cone along the obstacle's velocity vector to obtain a velocity obstacle space, and then guides the agent to bypass the velocity obstacle space along the shortest path to achieve obstacle avoidance. Clearly, both the collision cone method and the velocity obstacle method address the obstacle avoidance problem by addressing the relative geometric relationship between the agent and the obstacle. However, as the size of the agent or obstacle increases, constructing the relative geometric relationship between the agent and the obstacle becomes more difficult, and the solution difficulty increases significantly. The numerical solution method constructs the collision process between the agent and the obstacle as a mathematical model under motion constraints and uses intelligent algorithms to obtain the optimal obstacle avoidance trajectory for the current state; however, its obstacle avoidance performance depends on the quality of the perceived information.
[0004] Potential field methods maintain the distance between agents and obstacles by using a virtual potential field based on position, and guide agents to bypass obstacles by using a virtual potential field based on velocity. The paper "Flocking for multi-agent dynamic systems: algorithms and theory" assumes that all agents can obtain the smooth shape, position, and motion information of spherical or wall-shaped obstacles, treating the entire obstacle as a virtual agent, and proposes a multi-agent swarm avoidance algorithm. This algorithm assumes that the velocity of the obstacle is the projected velocity of the agent on the obstacle, which allows the agent to avoid the obstacle along the tangent direction, but also restricts the obstacle to a hyperplane or convex obstacle with smooth boundaries. To bypass non-convex obstacles, the paper "Multi-agent cooperative obstacle avoidance control with partial perception" transforms the obstacle into a convex obstacle with a lattice structure, enabling multiple agents to bypass concave obstacles, but it still requires global information about the obstacle, a constraint that limits its practical application.
[0005] In summary, completely relaxing obstacle information, shape, and boundary constraints poses a significant challenge to the research of multi-agent swarming obstacle avoidance algorithms. Summary of the Invention
[0006] The purpose of this invention is to provide a multi-agent swarming obstacle avoidance method based on the location of obstacle boundary points, aiming to completely relax the constraints of existing multi-agent swarming obstacle avoidance methods on obstacle information, shape and boundary, and improve the environmental adaptability of multi-agent swarming motion.
[0007] To achieve the above objectives, the present invention provides a multi-agent swarm obstacle avoidance method based on the location of obstacle boundary points, comprising the following steps:
[0008] Step 1: Establish a velocity-constrained multi-agent motion model, determine the control input terms, and calculate the agent's position vector and velocity vector;
[0009] Step 2: Determine the minimum safe distance, design the non-negative piecewise function of the virtual potential field for the separation zone, warning zone, and attraction zone, and establish the position gradient term;
[0010] Step 3: Based on the obstacle boundary point position information perceived by the agent, design a method to represent the agent's expected velocity at the obstacle boundary points and establish a velocity consistency term;
[0011] Step 4: Based on the location and speed information of the virtual leader obtained by the agent, establish guidance feedback items;
[0012] Step 5: Based on the position gradient term, the velocity consistency term, and the guidance feedback term, design the control input term, jump back to step 1, and realize swarm obstacle avoidance.
[0013] Preferably, step 1 includes the following steps:
[0014] Step 11, establish a velocity-constrained multi-agent motion model.
[0015]
[0016] Where, q i p represents the position vector of agent i. i This represents the velocity vector of agent i. u represents the maximum speed of agent i. i Let δ represent the control input for agent i, N represent the total number of agents, and δ i represents the weighting factor, and ||·|| represents the Euclidean norm.
[0017] Step 12, determine the control input item u i Based on the velocity-constrained multi-agent motion model, calculate the velocity vector p of agent i. i Design weighting factor δ i for
[0018]
[0019] Step 13, determine the weighting factor δ i The position vector q of agent i is calculated based on the velocity-constrained multi-agent motion model. i Determine the set of all agents perceived by agent i. The set of all obstacle boundary points perceived by agent i
[0020] Preferably, step 2 includes the following steps:
[0021] Step 21, determine the minimum safe distance d min and the radius d of the separation zone e ;
[0022] Step 22: Design the non-negative piecewise function of the virtual potential field for the separation zone, warning zone, and attraction zone. for
[0023]
[0024] Where, d ij d represents the distance between agents i and j. ij =||q j -q i ||, and These represent the weighting factors for the separation zone, warning zone, and attraction zone, respectively.
[0025] Step 23, Design the position gradient terms between agents. for
[0026]
[0027] in, Indicates the weighting factor. ▽ represents the set of all agents within the perception radius r of agent i. qi ψ α (||q j -q i || σ ) represents the virtual potential field between agents i and j relative to the position q of agent i. i The gradient, ||·|| σ Denotes the σ-norm;
[0028] Step 24: Design the position gradient term between agent i and the obstacle boundary point. for
[0029]
[0030] in, q represents the weighting factor. k ▽ represents the position vector of point k on the obstacle boundary. qi ψ β (||q k -q|| iσ The virtual potential field representing the position q of agent i relative to the boundary point k of the obstacle represents the position of agent i. i The gradient.
[0031] Preferably, step 3 includes the following steps:
[0032] Step 31: Determine the total number M of obstacle boundary points perceived by agent i. i It is determined that in the previous moment, agent i did not perceive any obstacle preventing it from following the virtual leader or was located at the fusion point R. i However, at the current moment, agent i perceives an obstacle preventing it from following the virtual leader, and agent i's current position is the split point S. i Determine that the distance between agent i and the virtual leader at the current moment is less than or equal to the split point S. i The distance between the agent and the virtual leader, and the current position of agent i, is the fusion point R. i Design intelligent agent i and the perceived intelligent agent. The adjacency matrix between them a ij (q) = 1, representing the boundary point between agent i and the perceived obstacle. The adjacency matrix b between them i,k (q) = 1;
[0033] Step 32: Determine that agent i is located in the open interval between the split point and the fusion point at the current moment. Then, translate the coordinate system so that the origin of the coordinate system is located at the position of agent i, and then rotate the coordinate system so that the positive x-axis points to the split point. Calculate the phase difference θ between agent i and obstacle boundary point k. i,k The phase difference set θ is obtained by sorting the phase differences between agent i and all obstacle boundary points in ascending order. i (Right now sort{·} represents the ascending order sorting function, θ i,k (m) represents the phase difference between agent i and obstacle boundary point k, corresponding to the phase difference set θ i (Sequence number m), jump to step 34;
[0034] Step 33: If agent i is located in another interval at the current time, translate the coordinate system so that the origin of the coordinate system is located at the position of agent i, and then rotate the coordinate system so that the positive x-axis points to the virtual leader. Calculate the phase difference θ between agent i and obstacle boundary point k. i,kThe phase difference set θ is obtained by sorting the phase differences between agent i and all obstacle boundary points in ascending order. i ;
[0035] Step 34: Determine the phase difference discontinuity discrimination threshold Δθ, and determine one of three scenarios for agent i: located at the split point, in the open interval between the split point and the fusion point, or at the fusion point where it perceives an obstacle preventing it from following the virtual leader. Design the expected position vector of agent i for the boundary points of the perceived obstacle in a counterclockwise obstacle avoidance manner. for
[0036]
[0037] Design an agent i that performs clockwise obstacle avoidance, given the desired position vector of the boundary points of the perceived obstacles. for
[0038]
[0039] Step 35: Determine the three scenarios in which agent i is not located in step 34 above, and design the expected position vectors of agent i for the boundary points of the perceived obstacles in clockwise and counterclockwise obstacle avoidance. for
[0040]
[0041] Where, q γ Represents the position vector of the virtual leader;
[0042] Step 36, determine the time step Δt, based on the desired position vector. Design the desired velocity of agent i at obstacle boundary point k. for
[0043]
[0044] Step 37, Determine the weighting factors Design the velocity consistency term between the intelligent agent and the boundary points of the obstacle. for
[0045]
[0046] Step 38, determine the weighting factors Design a speed consistency term among intelligent agents for
[0047]
[0048] Preferably, step 4 includes the following steps:
[0049] Step 41, obtain the virtual leader's position vector q γand velocity vector p γ ;
[0050] Step 42, Design the guiding feedback items for the intelligent agent and the virtual leader. for
[0051]
[0052] in, and Both represent weighting factors.
[0053] Preferably, step 5 includes the following steps:
[0054] Step 51: Combining the position gradient term, velocity consistency term, and guidance feedback term constructed in steps 2 to 4 above, design the control input term u. i for
[0055]
[0056] Step 52, jump back to step 1 to achieve swarm obstacle avoidance.
[0057] This invention provides a multi-agent swarm avoidance method based on obstacle boundary point locations. It establishes a velocity-constrained multi-agent motion model; designs non-negative piecewise functions of the virtual potential fields for the separation, warning, and attraction zones, establishing position gradient terms; designs a method to represent the agents' expected velocities at obstacle boundary points based on the agents' perceived location information, establishing velocity consistency terms; establishes guidance feedback terms; and designs control input terms for the velocity-constrained multi-agent motion model based on the position gradient terms, velocity consistency terms, and guidance feedback terms constructed in the above steps, thus achieving swarm avoidance. Compared with existing technologies, this invention completely relaxes obstacle information, shape, and boundary constraints, ensuring that collisions do not occur during the multi-agent swarm avoidance process. It allows agents that perceive obstacles blocking their path to bypass obstacles along the obstacle boundaries and regroup, offering advantages such as simple computation, good dynamic performance, and strong environmental applicability. Attached Figure Description
[0058] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0059] Figure 1 This is a flowchart illustrating the logic of a multi-agent swarming obstacle avoidance method based on the location of obstacle boundary points according to the present invention.
[0060] Figure 2 This is a schematic diagram of the location virtual potential field partitioning of the present invention.
[0061] Figure 3 This is a schematic diagram illustrating two methods for generating split points according to the present invention.
[0062] Figure 4 This is a schematic diagram of the fusion point generation of the present invention.
[0063] Figure 5 This is a schematic diagram illustrating two methods for generating the desired position of the boundary points of the perceived obstacle by the intelligent agent of the present invention.
[0064] Figure 6 This is a trajectory diagram of the swarming obstacle avoidance evolution of 30 and 60 intelligent agents in a multi-obstacle scenario according to a specific embodiment of the present invention.
[0065] Figure 7 This is a diagram showing the minimum distance results in 100 simulations of 30 to 60 intelligent agents swarming and avoiding obstacles in a specific embodiment of the present invention. Detailed Implementation
[0066] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.
[0067] This invention provides a multi-agent swarm obstacle avoidance method based on obstacle boundary point locations, comprising the following steps:
[0068] Step S1: Establish a multi-agent motion model with velocity constraints, determine the control input terms, and calculate the agent's position vector and velocity vector;
[0069] Step S2: Determine the minimum safe distance, design the non-negative piecewise function of the virtual potential field for the separation zone, warning zone, and attraction zone, and establish the position gradient term;
[0070] Step S3: Based on the obstacle boundary point position information perceived by the agent, design a method to represent the agent's expected velocity at the obstacle boundary points and establish a velocity consistency term;
[0071] Step S4: Based on the location and speed information of the virtual leader obtained by the agent, establish a guidance feedback item;
[0072] Step S5: Based on the position gradient term, the velocity consistency term, and the guidance feedback term, design the control input term, jump back to step S1, and realize swarm obstacle avoidance.
[0073] The specific logic flowchart of the multi-agent swarm obstacle avoidance method based on obstacle boundary point location is as follows: Figure 1 As shown.
[0074] Specifically, in step S1, the velocity-constrained multi-agent motion model is as follows:
[0075]
[0076] Where, q i p represents the position vector of agent i. i This represents the velocity vector of agent i. u represents the maximum speed of agent i. i Let δ represent the control input for agent i, N represent the total number of agents, and δ i represents the weighting factor, and ||·|| represents the Euclidean norm.
[0077] Furthermore, the velocity vector p of the intelligent agent i i Design weighting factor δ i for
[0078]
[0079] In the process of calculating the agent's position vector, the weight factor δ is determined. i The position vector q of agent i is calculated based on the velocity-constrained multi-agent motion model. i Determine the set of all agents perceived by agent i. The set of all obstacle boundary points perceived by agent i
[0080] The implementation process of step S2 includes the following steps:
[0081] like Figure 2 As shown, determine the minimum safe distance d. min and the radius d of the separation zone e ;
[0082] Design the locations of the separation zone, warning zone, and attraction zone using virtual potential fields and nonnegative piecewise functions. for
[0083]
[0084] Where, d ij d represents the distance between agents i and j. ij =||q j -q i ||, and These represent the weighting factors for the separation zone, warning zone, and attraction zone, respectively.
[0085] Design the position gradient term between agents. for
[0086]
[0087] in, Indicates the weighting factor. ▽ represents the set of all agents within the perception radius r of agent i. qi ψ α (||q j -q i || σ ) represents the virtual potential field between agents i and j relative to the position q of agent i. i The gradient, ||·|| σ Denotes the σ-norm;
[0088] Design the position gradient term between agent i and the boundary point of the obstacle. for
[0089]
[0090] in, Indicates the weighting factor. Let q represent the set of all obstacle boundary points within the perception radius r of agent i. k This represents the position vector of point k on the obstacle boundary. The virtual potential field representing the position q of agent i relative to the boundary point k of the obstacle represents the position of agent i. i The gradient.
[0091] Furthermore, such as Figure 3 and Figure 4 The diagrams shown are schematics of split point generation and fusion point generation, respectively. Figure 3 In the middle (a), it means that the agent did not perceive any obstacle preventing it from following the virtual leader in the previous moment, but now perceives that the obstacle is preventing it from following the virtual leader. Figure 3 In (b), the agent was at the fusion point in the previous moment, but now perceives an obstacle preventing it from following the virtual leader.
[0092] Specifically, step 3 includes the following steps:
[0093] Step 31: Determine the total number M of obstacle boundary points perceived by agent i. i It is determined that in the previous moment, agent i did not perceive any obstacle preventing it from following the virtual leader or was located at the fusion point R. i However, at the current moment, agent i perceives an obstacle preventing it from following the virtual leader, and agent i's current position is the split point S. iDetermine that the distance between agent i and the virtual leader at the current moment is less than or equal to the split point S. i The distance between the agent and the virtual leader, and the current position of agent i, is the fusion point R. i Design intelligent agent i and the perceived intelligent agent. The adjacency matrix between them a ij (q) = 1, representing the boundary point between agent i and the perceived obstacle. The adjacency matrix b between them i,k (q) = 1;
[0094] like Figure 5 The diagram illustrates two methods for generating the desired positions of boundary points of perceived obstacles for an agent. Figure 5 In the middle (a), it represents the open interval between the split point and the fusion point where the agent is located; Figure 5 In (b), the agent is located at a split point or a fusion point where it senses an obstacle preventing it from following the virtual leader.
[0095] Step 32: Determine the open interval between the split point and the fusion point where agent i is located at the current time (see details). Figure 5 In (a), the coordinate system is translated so that the origin of the coordinate system is located at the position of agent i, and then the coordinate system is rotated so that the positive direction of the x-axis points to the split point. The phase difference θ between agent i and obstacle boundary point k is calculated. i,k The phase difference set θ is obtained by sorting the phase differences between agent i and all the boundary points of obstacles it perceives in ascending order. i ,Right now sort{·} represents the ascending order sorting function, θ i,k (m) represents the phase difference between agent i and obstacle boundary point k, corresponding to the phase difference set θ i For sequence number m, proceed to step 34;
[0096] Step 33: Determine if agent i is located in another interval at the current time (see details). Figure 5 In (b), the coordinate system is translated so that the origin of the coordinate system is located at the position of agent i, and then the coordinate system is rotated so that the positive direction of the x-axis points to the virtual leader. The phase difference θ between agent i and obstacle boundary point k is calculated. i,k The phase difference set θ is obtained by sorting the phase differences between agent i and all obstacle boundary points in ascending order. i ;
[0097] Step 34: Design Δθ = π / 4, and determine one of the following three scenarios: agent i is located at the split point, the open interval between the split point and the fusion point, or the fusion point where it perceives an obstacle preventing it from following the virtual leader. Then, the expected position vector of agent i in counterclockwise obstacle avoidance relative to the boundary point of the perceived obstacle is... for
[0098]
[0099] The desired position vector of the clockwise obstacle avoidance agent i for the boundary points of the perceived obstacles. for
[0100]
[0101] Step 35: Determine the three scenarios in which agent i is not located in step 34, and the expected position vector of agent i for the perceived obstacle boundary points in clockwise and counterclockwise obstacle avoidance.
[0102] Step 36: Calculate the expected velocity of agent i at obstacle boundary point k.
[0103] Step 37: Design according to Calculate the velocity consistency term between the agent and the boundary points of the obstacle.
[0104] Step 38: Design according to Calculate the speed consistency term among agents
[0105] Furthermore, step S4 includes the following steps:
[0106] Obtain the virtual leader's position vector q γ and velocity vector p γ ;
[0107] Establish guidance and feedback items for intelligent agents and virtual leaders for
[0108]
[0109] in, and Both represent weighting factors.
[0110] In step S5, combining steps S2 to S4, according to Calculate control input item u i ,in Finally, jump back to step S1 to achieve swarm obstacle avoidance.
[0111] The present invention also provides a specific embodiment for further illustration, such as... Figure 6 and Figure 7 As shown:
[0112] This embodiment considers N = 30 (or 60) agents and 1 virtual leader moving in a two-dimensional Euclidean space containing obstacles of various shapes, such as rhombuses, spheres, and C-shapes. The initial position vectors and velocity vectors of the 30 (or 60) agents are randomly generated from the vector sets [2,30]×[5,30] and [0,2]×[0,2], respectively. The initial control input vector of the 30 (or 60) agents is (0,0). T The initial position vector and velocity vector of the virtual leader are (75, 25). T and (0,0) T The highest speed of agent i The walking time Δt = 0.1s, and the following steps are performed according to the above:
[0113] In step S1, a velocity-constrained multi-agent motion model is established as follows:
[0114]
[0115] Obtain the control input vector, based on the velocity constraint in the multi-agent motion model. Calculate the agent's velocity vector p i .if Then the weighting factor δ i =1, otherwise δ i =0;
[0116] Based on the multi-agent motion model with velocity constraints Calculate the agent's position vector q i Obtain the set of all agents perceived by agent i. The set of all obstacle boundary points perceived by agent i
[0117] The following steps are performed in step S2:
[0118] Step S21: Design the warning zone radius d = 4m, the sensing radius r = 6m, and the minimum safe distance d min =1m, radius of separation zone
[0119] Step S22, Design Calculate the distance d between agent i and agent j within its perception radius r. ij If d < d ij If ≤r, then If d e ≤d ij If ≤d, then If 0 < d ij ≤d e ,
[0120] Step S23, Design a = 2, b = 20, according to Calculate the position gradient terms between agents in d α =d σ , ε = 0.5, h = 0.2,
[0121] Step S24, Design Calculate the distance d between agent i and the boundary point k of the obstacle within its perception radius r. ik If d < d ik If ≤r, then If d e ≤d ik If ≤d, then If 0 < d ik ≤d e , according to Calculate the position gradient term between agent i and the obstacle boundary point. Where ψ β (||q k -q i || σ ) and ψ α (||q j -q i || σ )similar.
[0122] The following steps are performed in step S3:
[0123] Step S31: Determine the total number M of obstacle boundary points perceived by agent i. i Computation agent i and the perceived agent The adjacency matrix between them a ij (q) = 1, calculate the boundary points between agent i and the perceived obstacle. The adjacency matrix b between them i,k (q) = 1;
[0124] Step S32: Determine that agent i is located in the open interval between the split point and the fusion point at the current moment. Then, translate the coordinate system so that the origin of the coordinate system is located at the position of agent i, and then rotate the coordinate system so that the positive x-axis points to the split point. Calculate the phase difference θ between agent i and obstacle boundary point k. i,k The phase difference set θ is obtained by sorting the phase differences between agent i and all the boundary points of obstacles it perceives in ascending order. i (Right now sort{·} represents the ascending order sorting function, θ i,k (m) represents the phase difference between agent i and obstacle boundary point k, corresponding to the phase difference set θ i (Sequence number m), jump to step S34;
[0125] Step S33: If agent i is located in another interval at the current time, translate the coordinate system so that the origin of the coordinate system is located at the position of agent i, and then rotate the coordinate system so that the positive x-axis points to the virtual leader. Calculate the phase difference θ between agent i and obstacle boundary point k. i,k The phase difference set θ is obtained by sorting the phase differences between agent i and all obstacle boundary points in ascending order. i ;
[0126] Step S34: Design Δθ = π / 4, determine one of three scenarios: agent i is located at the split point, the open interval between the split point and the fusion point, or the fusion point where it perceives an obstacle preventing it from following the virtual leader. Then, the expected position vector of agent i in counterclockwise obstacle avoidance relative to the boundary point of the perceived obstacle is calculated. for
[0127]
[0128] The desired position vector of the clockwise obstacle avoidance agent i for the boundary points of the perceived obstacles. for
[0129]
[0130] Step S35: Determine that agent i is not in one of the three scenarios mentioned in step S34 above, and determine the expected position vector of the perceived obstacle boundary point of agent i for clockwise and counterclockwise obstacle avoidance.
[0131] Step S36: Calculate the expected velocity of agent i at obstacle boundary point k.
[0132] Step S37, Design according to Calculate the velocity consistency term between the agent and the boundary points of the obstacle.
[0133] Step S38, Design according to Calculate the speed consistency term among agents
[0134] In step S4, the following steps are performed:
[0135] Step S41, obtain the virtual leader's position vector q γ =(75,25)T and velocity vector p γ =(0,0) T ;
[0136] Step S42, Design according to Guidance feedback items for computational agents and virtual leaders
[0137] After proceeding to step S5, combining steps S2 to S4 above, according to... Calculate control input item u i ,in
[0138] Then jump back to step S1 above to achieve swarm obstacle avoidance.
[0139] Specifically, in Figure 6 In the diagram, (a) represents the trajectory of 30 agents crowding to avoid obstacles; (b) represents the trajectory of 60 agents crowding to avoid obstacles; (c) represents the trajectory along the x-axis; and (d) represents the trajectory along the y-axis.
[0140] Figure 6 In (a) and (b), the thick black lines represent obstacles, the triangles represent virtual leaders, the circles represent agents, the solid lines between the circles represent the adjacency relationships between agents, and the dashed lines represent the swarm obstacle avoidance trajectories of multiple agents. Figure 6 The evolution trajectories of 30 and 60 agents swarming to avoid obstacles in multi-obstacle scenarios are shown. It can be seen that all agents of the present invention are able to bypass obstacles along the obstacle boundaries, and eventually all agents gather at the location of the virtual leader.
[0141] Figure 7 The invention demonstrates the minimum distances between agents and between agents and obstacles in 100 random simulations of 30-60 agents swarming to avoid obstacles in a multi-obstacle scenario. It shows that the minimum distance is not affected by the number of agents and is always greater than the minimum safe distance. This also reflects that the invention can ensure that no collisions occur during the multi-agent swarming obstacle avoidance process.
[0142] In summary, compared with the prior art, the advantages and technical effects of the present invention are as follows:
[0143] (1) This invention only requires obtaining the location information of the boundary points of the obstacle, and completely relaxes the obstacle information, shape and boundary constraints;
[0144] (2) The present invention can ensure that no collision occurs during the multi-agent swarming obstacle avoidance process, and can enable agents that perceive obstacles blocking their following to bypass the obstacles along the obstacle boundary and regroup.
[0145] (3) The expected velocity characterization method and control input of the present invention have good dynamic performance and simple calculation, which helps to improve the environmental adaptability of multi-agent swarming motion.
[0146] The above description discloses only one preferred embodiment of the present invention, and should not be construed as limiting the scope of the present invention. Those skilled in the art will understand that all or part of the processes of the above embodiments can be implemented, and equivalent changes made in accordance with the claims of the present invention are still within the scope of the invention.
Claims
1. A multi-agent swarming obstacle avoidance method based on obstacle boundary point position, characterized in that, The method comprises the following steps: Step 1: establishing a speed-constrained multi-agent motion model, determining a control input, calculating an agent position vector and a speed vector; The speed-constrained multi-agent motion model is where q i represents the position vector of agent i, p i represents the velocity vector of agent i, represents the maximum speed of agent i, u i represents the control input of agent i, N represents the total number of agents, δ i represents the weight factor, and ||·|| represents the Euclidean norm. The velocity vector p of the agent i i , the design weight factor δ i is In the process of calculating the position vector of the agent, the weight factor δ is determined i , the position vector q of the agent i is calculated according to the speed constraint multi-agent motion model i , the set of all agents perceived by the agent i is determined The set of all obstacle boundary points perceived by the agent i Step 2: determining a minimum safety distance, designing a non-negative segmented function of a position virtual potential field of a separation zone, a warning zone and an attraction zone, and establishing a position gradient term; The implementation process of step 2 comprises the following steps: determining the minimum safety distance d min and the separation zone radius d e ; Designing the position of the virtual potential field non-negative segmented function of the separation zone, early warning zone and attraction zone For where d ij represents the distance between agents i and j, d ij = ||q j -q i ||, and are the weight factors for the separation zone, the warning zone and the attraction zone, respectively, Designing position gradient terms between agents For wherein, represents a weight factor, represents the set of all agents within the perception radius r of agent i, represents the gradient of the position virtual potential field between agents i and j with respect to the position q of agent i, i represents the gradient of the position virtual potential field between agents i and j with respect to the position q of agent i, σ represents the sigma-norm; Designing a position gradient term between the agent i and the boundary points of the obstacles For in, Indicates the weighting factor. Let q represent the set of all obstacle boundary points within the perception radius r of agent i. k This represents the position vector of point k on the obstacle boundary. The virtual potential field representing the position q of agent i relative to the boundary point k of the obstacle represents the position of agent i. i The gradient; Step 3: according to the position information of the obstacle boundary points perceived by the agent, designing an expected speed representation method of the agent to the obstacle boundary points, and establishing a speed consistency term; Step 3 comprises the following steps: Step 31: Determine the total number M of obstacle boundary points perceived by agent i. i Computation agent i and the perceived agent The adjacency matrix a between them ij (q) = 1, calculate the boundary points between agent i and the perceived obstacle. The adjacency matrix b between them i,k (q) = 1; Step 32: determine that the intelligent agent i is located in the open interval between the splitting point and the merging point at the current time, then translate the coordinate system to make the origin of the coordinate system at the location of the intelligent agent i, and then rotate the coordinate system to make the positive direction of the x-axis point to the splitting point, and calculate the phase difference θ between the intelligent agent i and the boundary point k of the obstacle i,k , sort the phase differences between the intelligent agent i and all the boundary points of the obstacles perceived by the intelligent agent i in ascending order to obtain a phase difference set θ i , that is sort{·} represents an ascending order arrangement function, θ i,k (m) represents the phase difference between the intelligent agent i and the boundary point k of the obstacle, corresponding to the phase difference set θ i The sequence number m, jump to step 34; Step 33: if the agent i is in other interval, translate the coordinate system to make the origin at the position of agent i, then rotate the coordinate system to make the positive direction of x-axis point to the virtual leader, calculate the phase difference θ between agent i and the boundary point k of the obstacle i,k , and arrange the phase differences between agent i and all boundary points of the obstacles in ascending order to obtain the phase difference set θ i ; Step 34: Design Δθ = π / 4, determine that the agent i is in one of the three scenarios of being at the split point, being in the open interval between the split point and the fusion point, and perceiving that an obstacle blocks its way to the fusion point where the virtual leader is, then the expected position vector of the obstacle boundary point perceived by the agent i that avoids obstacles counterclockwise For A clockwise obstacle-avoiding agent i has a desired position vector for a perceived obstacle boundary point For Step 35: Determine the expected position vector of the perceived obstacle boundary point by the agent i in clockwise and counter-clockwise obstacle avoidance, if the agent i is not in the three scenarios in step 34 Step 36: Compute the expected velocity of agent i for obstacle boundary point k Step 37: Design According to Compute the velocity consistency term between the agent and the obstacle boundary point Step 38: Design According to Computing the speed consistency term between agents Step 4: according to the position and speed information of the virtual leader obtained by the agent, establishing a guidance feedback term; Step 5: based on the position gradient term, the speed consistency term and the guidance feedback term, designing a control input, and jumping back to step 1 to realize the swarming obstacle avoidance.
2. The multi-agent swarming obstacle avoidance method based on the position of the obstacle boundary points according to claim 1, wherein Step 4 comprises the following steps: obtaining a virtual leader position vector q γ and a velocity vector p γ ; Establishing a guidance feedback term for an agent and a virtual leader for wherein and both represent a weight factor.
3. The multi-agent swarming obstacle avoidance method based on the position of the obstacle boundary points according to claim 2, wherein The control input term u is calculated according to the position gradient term, the speed consistency term and the guidance feedback term i The calculation formula is