Multi-agent swarm trajectory tracking control method and device
By calculating the cohesion, damping and navigation forces between intelligent agents, combining the navigation force of the virtual center, and coordinating the movement behaviors of the intelligent agents, the problem of insufficient accuracy in multi-agent cluster trajectory tracking is solved, and higher trajectory tracking accuracy and cluster coordination are achieved.
Patent Information
- Application Number
- CN202411279092.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-12
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2044-09-12
AI Technical Summary
Multi-agent swarms suffer from insufficient trajectory tracking accuracy and behavioral deviations during trajectory tracking, especially when individual behaviors are inconsistent, leading to nonlinear deviations and fluctuations.
By calculating the cohesion, damping, and navigation forces between agents and combining them with the navigation force of the virtual center, the motion behaviors of the agents are coordinated. Cohesion is used to avoid collisions, damping is used to control velocity consistency, and navigation is used to guide the cluster along a pre-set trajectory.
The trajectory tracking control accuracy of the multi-agent cluster is improved, ensuring that the cluster achieves a balance between local stability and global accuracy, and enhancing the cluster's coordination and task execution efficiency.
Smart Images

Figure CN119165767B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of cluster control, and specifically to a multi-agent cluster trajectory tracking control method and device. Background Art
[0002] A multi-agent swarm is a distributed system composed of multiple autonomous agents, encompassing a wide range of unmanned equipment, including drones, unmanned surface vessels, unmanned underwater vehicles, unmanned vehicles, and mobile robots. These agents collaborate and interact locally to accomplish global tasks or achieve specific goals. Each agent typically possesses perception, decision-making, and execution capabilities, while the swarm as a whole relies on local communication and feedback between agents to implement functions such as formation maintenance, target tracking, and obstacle avoidance.
[0003] Motion control is a key topic in the study of multi-agent swarms. As early as 1986, Reynolds proposed three basic principles for swarm motion: aggregation, where each agent strives to move closer to its neighbors; collision avoidance, where agents avoid collisions; and speed matching, where agents strive to match the speed of their neighbors. All swarm motion control methods should adhere to these three principles. Trajectory tracking is a crucial aspect of swarm motion control. During trajectory tracking, the swarm must maintain overall trajectory accuracy while also complying with the constraints of these three principles.
[0004] Multi-agent swarm systems rely on distributed control and local interaction. In these systems, multiple agents self-regulate and make decisions by sensing their surroundings and the states of neighboring agents. Unlike traditional centralized control systems, multi-agent swarms typically do not rely on a central controller, but instead achieve overall collaboration through local rules and communication between agents. This decentralized architecture provides the system with high robustness, flexibility, and scalability, making it suitable for operation in unknown or dynamic environments. However, because the behavior of each agent is the result of distributed control, the overall behavior of the swarm is the sum of individual behaviors. This summation can lead to nonlinear behavior, resulting in unpredictable deviations or fluctuations in the swarm's trajectory tracking, especially when individual behaviors are inconsistent. Therefore, a method is needed to improve the accuracy of trajectory tracking control for multi-agent swarms. Summary of the Invention
[0005] The present application provides a multi-agent cluster trajectory tracking control method and device, which can improve the accuracy of multi-agent cluster trajectory tracking control.
[0006] In a first aspect of the present application, a multi-agent cluster trajectory tracking control method is provided, the method comprising:
[0007] Obtaining positions and velocities of a plurality of agents in a multi-agent swarm;
[0008] Determining cohesion forces and damping forces of the agents based on distances between the agents, wherein the cohesion forces are used to avoid collisions between the agents, and the damping forces are used to control motion consistency of the plurality of agents;
[0009] Determining a virtual center of the multi-agent swarm based on the positions and the velocities of the agents;
[0010] Determining a navigation force of the multi-agent swarm based on a center velocity and a center position of the virtual center, wherein the navigation force is used to control a motion trajectory of the multi-agent swarm;
[0011] Determining trajectory tracking control inputs of the agents based on the cohesion forces, the damping forces and the navigation force.
[0012] Optionally, the determining the cohesion forces and the damping forces of the agents based on the distances between the agents comprises:
[0013] Determining proximate agents of an arbitrary agent based on the positions of the agents, wherein the proximate agents are agents within a preset range of the arbitrary agent;
[0014] Determining the damping force of the arbitrary agent based on velocities of the proximate agents, wherein the damping force of the arbitrary agent is determined as follows:
[0015]
[0016] wherein, is the damping force of the arbitrary agent, N i is a set composed of the proximate agents, a ij is an interaction intensity coefficient, p j is the velocity of the proximate agent, p i is the velocity of the arbitrary agent;
[0017] Determining the interaction intensity coefficient based on positions of the proximate agents and the position of the arbitrary agent, and the interaction intensity coefficient is calculated by the following formula:
[0018]
[0019] wherein, a ij is the interaction intensity coefficient, ‖q j -q i ‖ σ represents (q j -q i)’s σ norm, q i is the position of any agent, q j is the position of the jth neighboring agent, ρ h (z) is the window function, and the σ norm is defined as follows:
[0020]
[0021] Among them, the constant ε>0, ‖x‖ σ represents the σ norm of vector x, ‖x‖ represents the length of the vector, and x is a vector of any dimension.
[0022] Optionally, determining the cohesion and damping force of the intelligent agents based on the distance between the intelligent agents further includes:
[0023] The cohesion of any agent is determined based on the position of the agent and the positions of neighboring agents, wherein the neighboring agents are agents within a preset range of the agent. The cohesion of any agent is specifically expressed as follows:
[0024]
[0025] Among them, f i g is the cohesion of any agent, N i is a set of multiple neighboring agents, q i is the position of any agent, q j is the position of the jth neighboring agent, Φα is the distance function with distance z as the independent variable, n ij is the position vector pointing from the position of any agent to the position of the jth neighboring agent, which is calculated by the following formula:
[0026]
[0027] Among them, q i is the position of any agent, q j is the position of the jth neighboring agent.
[0028] Optionally, the distance function is determined based on the distance between any one agent and the neighboring agent, and is specifically expressed by the following formula:
[0029]
[0030] Among them, Φ α (z) is the distance function with distance z as the independent variable, q i is the position of any agent, q jis the position of the jth neighboring agent, r a is the normalized scale, d a is a constant offset.
[0031] Optionally, determining the navigation capability of the multi-agent cluster based on the center speed and center position of the virtual center specifically includes:
[0032] Obtaining a target speed and a target position of a preset target point, wherein the target point is any point on the preset motion trajectory of the multi-agent cluster;
[0033] The navigation force is determined based on the target speed, the target position, the center speed, and the center position, and is specifically expressed by the following formula:
[0034]
[0035] in, is the navigation capability of the multi-agent cluster, q i is the position of any agent, p i is the speed of any one of the agents, the neighboring agents are agents within the preset range of any one of the agents, e1, e2, e3 and e4 are control parameters, q N+1 is the center position, p N+1 is the central velocity, q A is the target position, p A is the target speed.
[0036] Optionally, the trajectory tracking control input of the multi-agent cluster is determined based on the cohesion, the damping force, and the navigation force. The trajectory tracking control input of any agent is specifically expressed by the following formula:
[0037]
[0038] Wherein, ui is the trajectory tracking control input of any of the agents, c1, c2 and c3 are proportional coefficients, is the cohesion of any of the agents, is the damping force of any of the agents, is the navigation capability of the multi-agent cluster.
[0039] Optionally, determining the virtual center of the multi-agent cluster based on the position and speed of the agent specifically includes:
[0040] The center position is determined according to the positions of the respective agents, specifically by the following formula:
[0041]
[0042] wherein q N+1 is the center position, N is the number of the plurality of agents, q i is the position of the i-th agent;
[0043] determining the center velocity according to the velocities of the respective agents, specifically by the following formula:
[0044]
[0045] wherein p N+1 is the center velocity, N is the number of the plurality of agents, p i is the velocity of the i-th agent;
[0046] setting the point corresponding to the center position as the virtual center, and setting the center velocity as the velocity of the virtual center.
[0047] In a second aspect of the present application, a multi-agent swarm trajectory tracking control device is provided, the device comprising an acquisition module, a processing module and a judgment module, wherein:
[0048] The acquisition module is configured to acquire the positions and velocities of a plurality of agents in a multi-agent swarm;
[0049] The processing module is configured to determine cohesion and damping force of the agents based on the distances between the agents, wherein the cohesion is used to avoid collision between the agents, and the damping force is used to control the motion consistency of the plurality of agents;
[0050] The processing module is configured to determine a virtual center of the multi-agent swarm based on the positions and velocities of the agents;
[0051] The processing module is configured to determine a navigation force of the multi-agent swarm based on the center velocity and center position of the virtual center, wherein the navigation force is used to control the motion trajectory of the multi-agent swarm;
[0052] The judgment module is configured to determine the trajectory tracking control input of the agents according to the cohesion, the damping force and the navigation force.
[0053] In a third aspect of the present application, an electronic device is provided, comprising a processor, a memory, a user interface and a network interface, the memory is configured to store instructions, the user interface and the network interface are both configured to communicate with other devices, and the processor is configured to execute the instructions stored in the memory to enable the electronic device to perform the method according to any one of the above aspects.
[0054] In a fourth aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores instructions. When the instructions are executed, any one of the methods described above is executed.
[0055] In summary, one or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages:
[0056] 1. This application coordinates the motion behavior of intelligent agents at multiple levels by comprehensively considering the local interaction forces (cohesion and damping force) between intelligent agents and the global navigation force of the cluster as a whole. Cohesion ensures that intelligent agents avoid collisions and maintain a certain formation, and damping force makes the speeds of intelligent agents gradually tend to be consistent, thereby enhancing the overall coordination of the cluster. The introduction of the navigation force based on the virtual center enables the cluster to better follow the target trajectory and avoid the deviation of individual behavior from the global goal. In this way, a balance is achieved between local stability and global accuracy, thereby improving the accuracy of trajectory tracking control of multi-agent clusters.
[0057] 2. By introducing an interaction strength coefficient and norm, the damping force between agents is dynamically adjusted to achieve velocity consistency. The interaction strength coefficient is calculated based on the distance between agents, ensuring that the closer the agents are, the stronger the interaction. The introduction of the norm further adjusts the effect of distance nonlinearly, ensuring that even at greater distances, the interaction between agents persists. The use of a window function allows for smooth adjustment of interaction strength within a certain range. Agents can dynamically adjust their velocities based on proximity, avoiding excessive speed discrepancies. This improves the overall coordination and consistency of the cluster and enables more accurate trajectory tracking.
[0058] 3. By calculating cohesion, agents can maintain a reasonable distance between each other and avoid collisions. Cohesion is calculated based on the positional relationships of adjacent agents. It relies on a distance function and position vectors, dynamically adjusting the attractive or repulsive forces between agents. When two agents are close, cohesion increases, forcing them to move away and avoid collisions. When they are farther apart, cohesion decreases, and attraction dominates, forcing them closer together, thus maintaining the overall cohesion of the formation. Through this design, agents in the cluster can achieve motion consistency while avoiding collisions, improving cluster stability and the effectiveness of task execution.
[0059] 4. By introducing navigation force, guide the whole multi-agent cluster to move along the preset trajectory. The calculation of the navigation force not only considers the individual position and speed of the agent, but also considers the global position and speed of the virtual center, as well as the target position and target speed of the preset target point. By controlling the weight balance of these factors, the guidance and adjustment of the whole cluster are realized. The effect of this scheme is that it can make the whole cluster more accurately track the preset trajectory, reduce the deviation, and improve the task execution efficiency and trajectory tracking accuracy of the cluster on the basis of ensuring the individual motion of the agent. BRIEF DESCRIPTION OF DRAWINGS
[0060] Figure 1 is a flowchart of a multi-agent cluster trajectory tracking control method disclosed by an embodiment of the present application;
[0061] Figure 2 is a schematic diagram of multi-agent cluster motion at a simulation time disclosed by an embodiment of the present application;
[0062] Figure 3 is a schematic diagram of multi-agent cluster motion at a simulation time of 0.5s disclosed by an embodiment of the present application;
[0063] Figure 4 is a schematic diagram of multi-agent cluster motion at a simulation time of 1s disclosed by an embodiment of the present application;
[0064] Figure 5 is a schematic diagram of multi-agent cluster motion at a simulation time of 3s disclosed by an embodiment of the present application;
[0065] Figure 6 is a schematic diagram of multi-agent cluster motion at a simulation time of 7s disclosed by an embodiment of the present application;
[0066] Figure 7 is a schematic diagram of multi-agent motion trajectory disclosed by an embodiment of the present application;
[0067] Figure 8 is a module schematic diagram of a multi-agent cluster trajectory tracking control device disclosed by an embodiment of the present application;
[0068] Figure 9 is a structural schematic diagram of an electronic device disclosed by an embodiment of the present application.
[0069] Legend of reference signs: 801, acquisition module; 802, processing module; 803, judgment module; 901, processor; 902, communication bus; 903, user interface; 904, network interface; 905, memory. DETAILED DESCRIPTION
[0070] In order to enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below in conjunction with the drawings in the embodiments of this specification. Obviously, the described embodiments are only part of the embodiments of this application, not all of the embodiments.
[0071] In the description of the embodiments of this application, words such as "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "for example" or "for instance" in the embodiments of this application should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "for example" or "for instance" is intended to present the relevant concepts in a concrete manner.
[0072] In the description of the embodiments of the present application, the term "multiple" means two or more. For example, multiple systems refer to two or more systems, and multiple screen terminals refer to two or more screen terminals. In addition, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the indicated technical features. Thus, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized.
[0073] Multi-agent swarm systems consist of multiple autonomous agents, including drones, unmanned surface vessels, and mobile robots, achieving global tasks through distributed control and local interactions. Motion control is a core research area, adhering to the three principles proposed by Reynolds: aggregation, collision avoidance, and velocity matching. Especially during trajectory tracking, the swarm must not only ensure trajectory accuracy but also adhere to these principles. While a decentralized architecture improves system robustness and scalability, the accumulation of individual behaviors can lead to nonlinear deviations, which in turn affect trajectory tracking accuracy. Therefore, effective methods are needed to improve control accuracy.
[0074] This embodiment discloses a multi-agent cluster trajectory tracking control method, referring to Figure 1 , including the following steps S110-S150:
[0075] S110, obtaining the positions and velocities of multiple agents included in the multi-agent cluster.
[0076] The dynamics modeling of a multi-agent swarm is fundamental to the entire system. It describes the motion state of each agent and how it changes. Consider a swarm composed of N agents, each with its own motion state (position, velocity). Agents can interact through perception or communication, and each agent has a certain degree of awareness of its surroundings (including other agents and obstacles).
[0077] For any agent, the following two dynamic equations are used to describe its motion state:
[0078]
[0079] Among them, q i Indicates position, p i Indicates speed, u i Represents the control input of any agent.
[0080] The agent's position q i is its speed p i In discrete time, this equation can be expressed as:
[0081] q i (t+1)=q i (t)+p i (t)·Δt
[0082] Where Δt is the time step. Similarly, the speed of the agent p i Its control input u i Similarly, in discrete time, it can be expressed as:
[0083] p i (t+1)=p i (t)+u i (t)·Δt
[0084] The state of each agent is composed of its position qi and velocity pi, so the state of the i-th agent can be expressed as x i =[q i , p i ] T The state space of the entire multi-agent system is a high-dimensional space composed of the states of all agents. The state vector of the system can be expressed as X = [x1, x2, ..., x N ] T .
[0085] The control input of each agent is determined by a variety of factors, including the status of other agents, target location, obstacle avoidance requirements, etc. Control input design can use traditional control methods (such as PID control) or combine artificial intelligence methods (such as reinforcement learning) to design more intelligent control laws.
[0086] S120, determining the cohesion and damping force of the intelligent agents based on the distance between the intelligent agents.
[0087] In multi-agent swarm control, the interaction forces between agents are key factors in achieving swarm collaboration and motion control. Common interaction forces include cohesion, damping, and navigation. These forces are responsible for collision avoidance, maintaining velocity consistency, and guiding the swarm along a predetermined trajectory, respectively. Cohesion is calculated based on the positional relationships of neighboring agents, with the goal of keeping them close together without collision. Damping is an interaction force based on velocity differences, aimed at maintaining velocity consistency among multiple agents. By applying damping forces, velocity differences between agents can be reduced, thereby preventing velocity inconsistencies in the swarm.
[0088] The damping force is usually calculated by the speed difference of neighboring agents. For any agent in a multi-agent cluster, a preset range (also called perception radius r) is set based on the position of each agent in the cluster to define the neighboring area that an agent can perceive. Usually, this range is set according to the task requirements and environmental characteristics of the cluster. For any agent, by calculating the distance between it and other agents, it is determined which agents are within its preset range (i.e., distance || q j -q i ||≤r), the set of agents within the preset range is called the neighboring agent set of the agent.
[0089] Based on the velocities of neighboring agents, the damping force of the agent is calculated. The damping force is a function of the velocity difference between the agent and its neighbors and is used to control the consistency of the movement. The formula for the damping force is:
[0090]
[0091] in, is the damping force of any agent, N i is a set of multiple neighboring agents, a ij is the interaction strength coefficient, p j is the velocity of the neighboring agent, p i is the speed of any agent.
[0092] Based on the position of any agent and the positions of neighboring agents, the interaction strength coefficient is determined, which is calculated by the following formula:
[0093]
[0094] Among them, a ij is the interaction strength coefficient, which is used to represent the interaction strength between any agent i and the jth neighboring agent. The value varies in the interval [0,1]. h (z) is the window function. ‖q j -q i ‖ σ Indicates (q j -q i )'s σ norm q i is the position of any agent, q j is the position of the jth neighboring agent, and the σ norm is defined as follows:
[0095]
[0096] Among them, the constant ε>0, ‖x‖ σ represents the σ norm of vector x, ‖x‖ represents the length of the vector, and x is a vector of any dimension. ||x|| σ It is a nonlinear transformation norm that is suitable for scenarios where the small-scale effect of large-distance transformation needs to be considered. This norm definition nonlinearly scales the standard Euclidean distance ||x|| by introducing a small parameter ∈. When ∈ is very small, ||x|| σ Approximately equal to ||x||; when ∈ is large, the norm becomes more sensitive to large distances. When dealing with a wide range of distances, this nonlinear scaling can more accurately describe the effects of long distances without increasing computational complexity due to excessive distances.
[0097] Window function ρ h (z) is defined as:
[0098]
[0099] This is a window function with a smooth transition, used to adjust the range and strength of interactions between agents. When the distance z is small, that is, when z is in the interval [0, h], the interaction strength remains at its maximum (i.e., 1). When z is in the transition interval [h, 1], the interaction strength gradually decreases and smoothly transitions to zero. When z > 1, the interaction strength drops directly to zero, indicating that the distance between the agents is too large and no longer interacts. This function simulates the smooth decay of interaction forces with distance in reality, ensuring that when the agents are far apart, the interaction gradually disappears, avoiding abrupt changes.
[0100] Cohesion is usually calculated by the position difference between neighboring agents. Based on the position of any agent and the positions of its neighbors, the cohesion of any agent is determined. The cohesion of any agent is specifically expressed as follows:
[0101]
[0102] in, is the cohesion of any agent, N i is a set of multiple neighboring agents, q i is the position of any agent, q j is the position of the jth neighboring agent, Φα is the distance function with distance z as the independent variable, n ij is the position vector pointing from the position of any agent to the position of the jth neighboring agent, which is calculated by the following formula:
[0103]
[0104] Among them, q i is the position of any agent, q j is the position of the jth neighboring agent.
[0105] This formula is used to avoid collisions between multiple agents, mainly considering the relative position difference. j -q i Calculate the position vector n ij , and then through the distance function Φ α This part measures the influence of neighboring agents on the current agent. This part actually simulates a "repulsive force". When the distance between agents is too close, the repulsive force increases, forcing them to move away from each other and avoid collision.
[0106] In the formula, Φ α (||q j -q i || σ ) is a distance function used to measure the distance effect between agents, usually represented by a Gaussian function or other forms. α (z) is the distance function with distance z as the independent variable:
[0107]
[0108] The distance function is used to measure the interaction force between two agents. It is obtained by a window function ρ h and another potential function Φ(zd α). When the distance is close, it remains at 1, that is, the full force is applied; when the distance is moderate, it gradually weakens as the distance increases; when the distance is too far, the force is 0. This design ensures that the agent only has a significant impact on its close neighbors. α ) represents the strength of the force, z represents the distance between the two agents, and the constant offset d α Is a threshold that controls the zero point of the force. By adjusting d α , the minimum allowed distance between agents can be defined.
[0109] Among them, the normalized scale r a and a constant offset d a The calculations are as follows:
[0110]
[0111]
[0112] The potential function Φ(z) is expressed as follows:
[0113]
[0114] in:
[0115]
[0116] Constants a and b satisfy 0 <a≤b,且c满足如下条件:
[0117]
[0118] S130, determining the virtual center of the multi-agent cluster based on the position and speed of the agent.
[0119] First, the position of each agent (e.g., 2D or 3D spatial coordinates) is obtained. This position information is used to calculate the center position of the cluster. The velocity of each agent (i.e., velocity vector) is also obtained. This velocity information is used to calculate the center velocity of the cluster. Based on the position and velocity of the agent, the center position and center velocity of the virtual center are calculated. Based on the positions of all agents, the center position of the cluster is calculated using the formula:
[0120]
[0121] Among them, q N+1 is the center position, N is the number of agents, q i is the position of the i-th agent.
[0122] According to the speed of all agents, the central speed of the cluster is calculated as follows:
[0123]
[0124] Among them, p N+1 is the center velocity, N is the number of agents, p i is the speed of the ith agent.
[0125] The calculated center position is used as the position of the virtual center, and the center speed is used as the speed of the virtual center. It should be noted that the virtual center does not represent a real physical intelligent entity, but is a mathematical reference point that guides the movement of the entire cluster.
[0126] S140, determining the navigation force of the multi-agent cluster based on the center speed and center position of the virtual center.
[0127] The navigation force of a multi-agent swarm is used to control the swarm's trajectory, ensuring that the entire swarm follows the predetermined path. The key concept for achieving this goal is to determine the navigation force based on the motion state of the virtual center and the motion state of the target point. By properly designing the navigation force, the swarm can effectively follow the target trajectory. First, the target position and target velocity of the preset target point must be determined. The target point is any point on the trajectory that the swarm is to follow; its position and velocity determine the direction and speed of the swarm's motion at different moments.
[0128] The purpose of the navigation force is to guide the entire cluster toward the target trajectory, ensuring that the cluster can smoothly follow the target trajectory while maintaining consistency. The formula for the navigation force is as follows:
[0129]
[0130] in, is the navigation capability of the multi-agent cluster, q i is the position of any agent, p i is the speed of any agent, the neighboring agents are agents within the preset range of any agent, e1, e2, e3 and e4 are control parameters, q N+1 is the center position, p N+1 is the central velocity, q A is the target position, p A is the target speed.
[0131] In the above formula, the first term -e1(q i -q A ) represents the correction force when the position of the agent deviates from the target position. By adjusting e1, the degree to which the position of each agent in the cluster follows the target position can be adjusted. The second term -e2(p i -p A) represents the correction force when the speed of the agent deviates from the target speed. It is used to adjust the speed of the agent so that its speed is consistent with the target speed. The third term - e3(q N+1 -q A ) represents the correction force when the virtual center position deviates from the target position, which is used to adjust the position of the entire cluster so that the cluster as a whole tends to the target position. N+1 -p A) The correction force, representing the virtual center's velocity when it deviates from the target velocity, is used to adjust the overall swarm velocity to align with the target. The combination of these four forces ensures that each agent in the swarm adjusts to the target position and velocity, allowing the swarm to smoothly and consistently follow the preset trajectory.
[0132] The parameters in the formula determine the relative weights of the various forces in the navigation force. These parameters can be adjusted based on actual needs. For example, if stronger cluster coherence is desired, the weights of e3 and e4 can be increased; if the accuracy of individual agents is more important, the weights of e1 and e2 can be increased. Guided by these navigation forces, the cluster can smoothly follow the pre-set trajectory. Whether in static or dynamic environments, this navigation force helps the cluster maintain consistent movement and complete its intended task.
[0133] S150, determining the trajectory tracking control input of the intelligent body according to the cohesion force, the damping force and the navigation force.
[0134] The trajectory tracking control input for any agent is decomposed into three components, each fulfilling a distinct function. Cohesion refers to the attraction an agent exerts on neighboring agents to avoid collision. It monitors the positional relationships of neighboring agents to ensure they do not get too close or collide. Damping force controls the velocity consistency of agents. It minimizes velocity differences between neighboring agents, ultimately achieving velocity synchronization across the entire cluster. Navigation force guides the entire cluster along a predetermined trajectory. It accounts for position and velocity differences between the virtual center of the cluster and the target point.
[0135] In order to achieve the trajectory tracking control input of each agent, the above three force items (cohesion, damping force and navigation force) are weighted and summed. The specific formula is as follows:
[0136]
[0137] Among them, u i is the trajectory tracking control input of any agent, c1, c2 and c3 are proportional coefficients, is the cohesion of any agent, is the damping force of any agent, fi n Navigation capability of multi-agent swarms.
[0138] These coefficients are used to adjust the degree of influence of cohesion, damping, and navigation forces on the final control input. In practical applications, these coefficients need to be adjusted according to the specific task and environment to balance the stability of the cluster and the accuracy of motion tracking.
[0139] The final calculation results in a control input acting on the agent, which will be passed to the agent's motion controller to adjust the agent's speed and direction, thereby achieving coordinated movement of the entire cluster.
[0140] The entire control process can be divided into the following steps: Each agent uses sensors to sense its own state (position and velocity) and the states of neighboring agents. Based on the positions and velocities of neighboring agents, it calculates cohesive and damping forces. Simultaneously, based on information about the virtual center and target point, it calculates navigation forces. These forces are weighted to form a control input. Based on the calculated control input, the agents adjust their motion state (speed and direction) to ensure that the entire cluster follows the intended trajectory.
[0141] In one possible embodiment, a multi-agent cluster trajectory tracking control method disclosed in the present application is used to perform a multi-agent cluster trajectory tracking simulation verification. In the XY plane Cartesian coordinate system, a cluster with N=30 agents tracking a preset trajectory is studied. The positions of the agents are randomly and evenly distributed in the rectangular area of x∈[0,50], y∈[0,50], and the speeds are all 0. The parametric equations of the preset tracking trajectory are x(t)=50+50t; y(t)=200-50sin(t). The simulation duration is set to 7s, and the simulation step is set to 0.01s. Simulation parameters related to aggregation force: ε=0.1, a=b=4.5, c=0, h=0.2, d=16, r=20. Simulation parameters related to navigation force: e1=1000, e2=100, e3=1000, e4=100. Proportional coefficient c1=c2=c3=1. Reference Figure 2 , the figure shows the cluster position of the simulated intelligent agents at each moment. Simulated intelligent agents, 30 intelligent agents randomly appear in the rectangular area x∈[0,50], y∈[0,50]. Figure 3 The figure shows the cluster position, cluster trajectory and target trajectory at 0.5s in the simulation. The cluster is approaching the target trajectory. Figure 4 The figure shows the cluster position, cluster trajectory and target trajectory in the first second of simulation. The cluster has basically reached the target position. Figure 5 The figure shows the cluster position, cluster trajectory and target trajectory in the 3rd second of the simulation. The cluster continues to track the target trajectory and the tracking accuracy reaches a high level. Figure 6The figure shows the cluster position, cluster trajectory and target trajectory at the 7th second of the simulation. It can be seen that the convergence process of the entire tracking process is that the cluster is far away from the target trajectory at the beginning, then approaches the target and continues to track the target accurately. Figure 7 , the figure shows the motion trajectories of all intelligent agents during the simulation process.
[0142] By adopting the technical solution of the present application, the local interaction forces (cohesion and damping force) between intelligent agents and the global navigation force of the cluster as a whole are comprehensively considered, and the movement behavior of the intelligent agents is coordinated from multiple levels. Cohesion ensures that the intelligent agents avoid collisions and maintain a certain formation, and the damping force makes the speeds of the intelligent agents gradually tend to be consistent, thereby enhancing the overall coordination of the cluster. The introduction of the navigation force based on the virtual center enables the cluster to better follow the target trajectory and avoid the deviation of individual behavior from the global goal. In this way, a balance is achieved between local stability and global accuracy, thereby improving the accuracy of trajectory tracking control of the multi-agent cluster.
[0143] This embodiment also discloses a multi-agent cluster trajectory tracking control device, referring to Figure 8 The device includes an acquisition module 801, a processing module 802 and a judgment module 803, wherein:
[0144] The acquisition module 801 is used to obtain the positions and velocities of multiple agents in a multi-agent cluster.
[0145] The processing module 802 is used to determine the cohesion and damping force of the intelligent agents based on the distance between the intelligent agents, wherein the cohesion is used to avoid collisions between the intelligent agents, and the damping force is used to control the movement consistency of multiple intelligent agents.
[0146] The processing module 802 is used to determine the virtual center of the multi-agent cluster based on the position and speed of the agent.
[0147] The processing module 802 is used to determine the navigation force of the multi-agent cluster based on the center speed and center position of the virtual center, and the navigation force is used to control the motion trajectory of the multi-agent cluster.
[0148] The judgment module 803 is used to determine the trajectory tracking control input of the intelligent body according to the cohesion force, damping force and navigation force.
[0149] In a possible implementation, the judgment module 803 is configured to determine neighboring agents of any agent based on the positions of the agents, wherein the neighboring agents are agents within a preset range of any agent.
[0150] Processing module 802 is used to determine the damping force of any agent based on the speed of neighboring agents. The damping force of any agent is specifically expressed as follows:
[0151]
[0152] in, is the damping force of any agent, N i is a set of multiple neighboring agents, a ij is the interaction strength coefficient, p j is the velocity of the neighboring agent, p i is the speed of any agent.
[0153] The processing module 802 is used to determine the interaction strength coefficient based on the positions of the neighboring agents and the position of any agent, which is specifically calculated using the following formula:
[0154]
[0155] Among them, a ij is the interaction strength coefficient, ‖q j -q i ‖ σ Indicates (q j -q i )’s σ norm, q i is the position of any agent, q j is the position of the jth neighboring agent, ρ h (z) is the window function, and the σ norm is defined as follows:
[0156]
[0157] Among them, the constant ε>0, ‖x‖ σ represents the σ norm of vector x, ‖x‖ represents the length of the vector, and x is a vector of any dimension.
[0158] In one possible implementation, processing module 802 is configured to determine the cohesion of any agent based on the location of the agent and the locations of neighboring agents, where neighboring agents are agents within a preset range of the agent. The cohesion of any agent is specifically expressed as follows:
[0159]
[0160] in, is the cohesion of any agent, N i is a set of multiple neighboring agents, q i is the position of any agent, q j is the position of the jth neighboring agent, Φα is the distance function with distance z as the independent variable, n ijis the position vector pointing from the position of any agent to the position of the jth neighboring agent, which is calculated by the following formula:
[0161]
[0162] Among them, q i is the position of any agent, q j is the position of the jth neighboring agent.
[0163] In one possible implementation, the processing module 802 is configured to determine a distance function based on the distance between any agent and its neighboring agents, which is specifically represented by the following formula:
[0164]
[0165] Among them, Φ α (z) is the distance function with distance z as the independent variable, q i is the position of any agent, q j is the position of the jth neighboring agent, r a is the normalized scale, d a is a constant offset.
[0166] In a possible implementation, the acquisition module 801 is used to acquire a target speed and a target position of a preset target point, where the target point is any point on a preset motion trajectory of the multi-agent cluster.
[0167] The processing module 802 is configured to determine the navigation force based on the target speed, target position, center speed, and center position, which is specifically expressed by the following formula:
[0168]
[0169] in, is the navigation capability of the multi-agent cluster, q i is the position of any agent, p i is the speed of any agent, the neighboring agents are agents within the preset range of any agent, e1, e2, e3 and e4 are control parameters, q N+1 is the center position, p N+1 is the central velocity, q A is the target position, p A is the target speed.
[0170] In one possible implementation, processing module 802 is configured to determine a trajectory tracking control input for the multi-agent cluster based on the cohesion, damping, and navigation forces. The trajectory tracking control input for any agent is specifically expressed by the following formula:
[0171]
[0172] Among them, ui is the trajectory tracking control input of any agent, c1, c2 and c3 are proportional coefficients, f i g is the cohesion of any agent, is the damping force of any agent, f i n Navigation capability of multi-agent swarms.
[0173] In one possible implementation, the processing module 802 is configured to determine the center position based on the positions of the various agents, specifically by calculating the following formula:
[0174]
[0175] Among them, q N+1 is the center position, N is the number of agents, q i is the position of the i-th agent.
[0176] The processing module 802 is used to determine the center speed based on the speed of each agent, specifically by calculating the following formula:
[0177]
[0178] Among them, p N+1 is the center velocity, N is the number of agents, p i is the speed of the ith agent.
[0179] The judgment module 803 is used to set the point corresponding to the center position as the virtual center, and set the center speed as the speed of the virtual center.
[0180] It should be noted that the above embodiments provide devices that implement their functions using only the division of the above functional modules as examples. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments are based on the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
[0181] This embodiment also discloses an electronic device, referring to Figure 9 The electronic device may include: at least one processor 901 , at least one communication bus 902 , a user interface 903 , a network interface 904 , and at least one memory 905 .
[0182] The communication bus 902 is used to implement connection and communication between these components.
[0183] The user interface 903 may include a display screen (Display) and a camera (Camera). Optionally, the user interface 903 may also include a standard wired interface and a wireless interface.
[0184] The network interface 904 may optionally include a standard wired interface or a wireless interface (such as a WI-FI interface).
[0185] The processor 901 may include one or more processing cores. The processor 901 utilizes various interfaces and lines to connect various parts of the entire server, and executes various server functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in the memory 905, and calling data stored in the memory 905. Optionally, the processor 901 may be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), or programmable logic array (PLA). The processor 901 may integrate one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), and a modem. The CPU primarily processes the operating system, user interface, and application programs; the GPU is responsible for rendering and drawing the content to be displayed on the display; and the modem is used to handle wireless communications. It is understandable that the above-mentioned modem may not be integrated into the processor 901 and may be implemented separately through a single chip.
[0186] Among them, the memory 905 may include a random access memory (RAM) or a read-only memory (ROM). Optionally, the memory includes a non-transitory computer-readable storage medium. The memory 905 can be used to store instructions, programs, codes, code sets or instruction sets. The memory 905 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playback function, an image playback function, etc.), instructions for implementing the above-mentioned various method embodiments, etc.; the data storage area may store data involved in the above-mentioned various method embodiments, etc. The memory 905 may also be at least one storage device located away from the aforementioned processor 901. As a computer storage medium, the memory 905 may include an operating system, a network communication module, a user interface 903 module and an application program for a multi-agent cluster trajectory tracking control method.
[0187] exist Figure 9 In the electronic device shown, the user interface 903 is mainly used to provide an input interface for the user and obtain data input by the user; and the processor 901 can be used to call an application program of a multi-agent cluster trajectory tracking control method stored in the memory 905. When executed by one or more processors 901, the electronic device executes one or more methods in the above embodiments.
[0188] It should be noted that for the aforementioned method embodiments, for simplicity of description, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required for this application.
[0189] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0190] In the several embodiments provided in this application, it should be understood that the disclosed devices can be implemented in other ways. For example, the device embodiments described above are merely schematic, such as the division of units, which is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some service interface, and the indirect coupling or communication connection of devices or units can be electrical or other forms.
[0191] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0192] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0193] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a memory 905 and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned memory 905 includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a magnetic disk, or an optical disk.
[0194] The present application also discloses a computer-readable storage medium storing instructions, which, when executed by one or more processors 901, enable an electronic device to execute one or more of the methods described in the above embodiments.
[0195] The above is only an exemplary embodiment of the present disclosure and cannot be used to limit the scope of the present disclosure. That is, any equivalent changes and modifications made according to the teachings of the present disclosure are still within the scope of the present disclosure. After considering the disclosure of the specification and the truth of practice, those skilled in the art will easily think of other embodiments of the present disclosure. This application is intended to cover any variation, use or adaptive change of the present disclosure, which follows the general principles of the present disclosure and includes common knowledge or customary technical means in the art that are not recorded in the present disclosure. The description and examples are to be regarded as exemplary only, and the scope and spirit of the present disclosure are defined by the claims.
Claims
1. A multi-agent cluster trajectory tracking control method, characterized in that: The method comprises: Get the positions and velocities of multiple agents in a multi-agent cluster; Determining the cohesion and damping force of the agents based on the distance between the agents, wherein the cohesion is used to avoid collisions between the agents, and the damping force is used to control the motion consistency of the multiple agents; Determining a virtual center of the multi-agent cluster based on the position and velocity of the agent; Determining a navigation force of the multi-agent cluster based on a center velocity and a center position of the virtual center, wherein the navigation force is used to control a motion trajectory of the multi-agent cluster; determining a trajectory tracking control input of the intelligent agent according to the cohesive force, the damping force, and the navigation force; Determining the navigation capability of the multi-agent cluster based on the center speed and center position of the virtual center specifically includes: Obtaining a target speed and a target position of a preset target point, wherein the target point is any point on the preset motion trajectory of the multi-agent cluster; The navigation force is determined based on the target speed, the target position, the center speed, and the center position, and is specifically expressed by the following formula: Among them, f i n is the navigation capability of the multi-agent cluster, q i is the position of any agent, p i is the speed of any of the agents, e1, e2, e3 and e4 are control parameters, q N+1 is the center position, p N+1 is the central velocity, q A is the target position, p A is the target speed.
2. A multi-agent cluster trajectory tracking control method according to claim 1, characterized in that: The determining of the cohesion and damping force of the intelligent bodies based on the distance between the intelligent bodies specifically includes: Determine the neighboring agents of any agent according to the positions of the agents, wherein the neighboring agents are agents within a preset range of the agent; Based on the speed of the neighboring agents, the damping force of any one of the agents is determined. The damping force of any one of the agents is specifically expressed as follows: Among them, f i d is the damping force of any agent, N i is a set of multiple neighboring agents, a ij is the interaction strength coefficient, p j is the velocity of the neighboring agent, p i is the speed of any of the agents; Based on the position of the neighboring agent and the position of any one of the agents, the interaction strength coefficient is determined, specifically calculated by the following formula: Among them, a ij is the interaction strength coefficient, ‖q j -q i ‖ σ Indicates (q j -q i )’s σ norm, q i is the position of any agent, q j is the position of the jth neighboring agent, ρ h (z) is the window function, r α To normalize the scale, the σ norm is defined as follows: Among them, the constant ε>0, ‖x‖ σ represents the σ norm of vector x, ‖x‖ represents the length of the vector, and x is a vector of any dimension.
3. A multi-agent cluster trajectory tracking control method according to claim 1, characterized in that: The determining of the cohesion and damping force of the intelligent bodies based on the distance between the intelligent bodies specifically further includes: The cohesion of any agent is determined based on the position of the agent and the positions of neighboring agents, wherein the neighboring agents are agents within a preset range of the agent. The cohesion of any agent is specifically expressed as follows: Among them, f i g is the cohesion of any agent, N i is a set of multiple neighboring agents, q i is the position of any agent, q j is the position of the jth neighboring agent, Φα is the distance function with distance z as the independent variable, n ij is the position vector pointing from the position of any agent to the position of the jth neighboring agent, which is calculated by the following formula: Among them, q i is the position of any agent, q j is the position of the jth neighboring agent.
4. A multi-agent cluster trajectory tracking control method according to claim 3, characterized in that: The distance function is determined based on the distance between any one agent and the neighboring agent, and is specifically expressed by the following formula: Among them, Φ α (z) is the distance function with distance z as the independent variable, q i is the position of any agent, q j is the position of the jth neighboring agent, r a is the normalized scale, d a is a constant offset.
5. A multi-agent cluster trajectory tracking control method according to claim 1, characterized in that: The trajectory tracking control input of the multi-agent cluster is determined based on the cohesion, the damping force, and the navigation force. The trajectory tracking control input of any agent is specifically expressed by the following formula: Where ui is the trajectory tracking control input of any agent, c1, c2 and c3 are proportional coefficients, f i g is the cohesion of any agent, f i d is the damping force of any agent, f i n is the navigation capability of the multi-agent cluster.
6. A multi-agent cluster trajectory tracking control method according to claim 1, characterized in that: Determining the virtual center of the multi-agent cluster based on the position and velocity of the agent includes: The center position is determined according to the positions of the respective agents, specifically by the following formula: Among them, q N+1 is the central position, N is the number of the agents, q i is the position of the i-th agent; The center speed is determined according to the speed of each agent, specifically calculated by the following formula: Among them, p N+1 is the center velocity, N is the number of the agents, p i is the speed of the i-th agent; The point corresponding to the center position is set as the virtual center, and the center speed is set as the speed of the virtual center.
7. A multi-agent cluster trajectory tracking control device, characterized in that: The device is applied to the method according to any one of claims 1 to 6, and comprises an acquisition module (801), a processing module (802), and a judgment module (803), wherein: The acquisition module (801) is used to obtain the positions and velocities of multiple agents in a multi-agent cluster; The processing module (802) is used to determine the cohesion and damping force of the intelligent agents based on the distance between the intelligent agents, wherein the cohesion is used to avoid collision between the intelligent agents, and the damping force is used to control the motion consistency of the plurality of intelligent agents; The processing module (802) is configured to determine a virtual center of the multi-agent cluster based on the position and velocity of the agent; The processing module (802) is used to determine the navigation force of the multi-agent cluster based on the center speed and center position of the virtual center, and the navigation force is used to control the motion trajectory of the multi-agent cluster; The judgment module (803) is used to determine the trajectory tracking control input of the intelligent body according to the cohesion force, the damping force and the navigation force.
8. An electronic device, characterized in that: The electronic device comprises a processor (901), a communication bus (902), a user interface (903), a network interface (904) and a memory (905), wherein the memory (905) is used to store instructions, the user interface (903) and the network interface (904) are both used to communicate with other devices, and the processor (901) is used to execute the instructions stored in the memory (905) so that the electronic device executes the method according to any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores instructions, and when the instructions are executed, the method according to any one of claims 1 to 6 is executed.
Citation Information
Patent Citations
Intelligent agent cluster motion control method and related product
CN117850437A