Multi-robot collaborative operation, task intelligent distribution and path planning system
Through the dynamic task allocation and path planning module, combined with the artificial potential field method to generate obstacle avoidance paths, the problems of unreasonable task allocation and inflexible path planning in multi-robot collaborative operations are solved, the robot workload balancing and path optimization are achieved, and the efficiency and safety of the system are improved.
Patent Information
- Application Number
- CN202510791639.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-13
- Publication Date
- 2025-09-23
AI Technical Summary
In existing multi-robot collaborative operation systems, task allocation is unreasonable, path planning is inflexible, and obstacle avoidance is poor, resulting in unbalanced workload, inaccurate path calculation, and poor communication stability, making it difficult to work efficiently in complex environments.
The task receiving module, task decomposition module, execution module, task allocation module, path planning module and path calculation module are used to perform dynamic task allocation and path planning in combination with the real-time position and status of the robot. The artificial potential field method is used to generate obstacle avoidance paths, and a multi-dimensional task difficulty assessment model is constructed to achieve robot workload balancing and path optimization.
It improves the efficiency and safety of multi-robot collaborative operations, enhances environmental adaptability, ensures the accuracy of path planning and obstacle avoidance capabilities, optimizes resource utilization, and reduces operating costs.
Smart Images

Figure CN120688799A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robotics technology, and specifically to a system for multi-robot collaborative operation, intelligent task allocation, and path planning. The system is suitable for scenarios such as industrial production, logistics warehousing, and intelligent security that require multiple robots to collaborate to complete tasks. Background Art
[0002] Multi-robot collaborative operation technology, a product of the intersection of robotics, computer science, automated control, and communications technology, has broad applications in modern industrial production, logistics and warehousing, intelligent security, and other fields. For example, in logistics and warehousing, multiple robots can collaborate to handle the handling, sorting, and storage of goods, building an intelligent warehousing and logistics system. On industrial production lines, multi-robot collaboration enables the efficient assembly and manufacturing of complex products.
[0003] However, existing multi-robot collaborative operation systems have obvious shortcomings: in terms of task allocation, traditional systems mostly adopt simple sequential allocation or random allocation rules based on idle states, lack a scientific task evaluation mechanism, resulting in uneven robot workload; in terms of path planning, they mostly use pre-set fixed paths, which makes it difficult to combine the robot's real-time position, end point information and motion status for dynamic planning, and have poor flexibility when facing complex environments; in terms of obstacle avoidance capability, they rely on simple sensor detection with limited detection range and accuracy. When multiple robots are working intensively or there are multiple obstacles, the obstacle avoidance effect is not good; in terms of communication, basic communication protocols are used, and the stability and real-time performance of data transmission are difficult to guarantee. Communication delays or data loss are prone to occur during large-scale collaborative operations; in terms of path calculation, there is a lack of effective algorithms, and it is impossible to generate comprehensive and detailed path information. In particular, the obstacle avoidance path generation link is relatively weak, making it difficult to ensure the safety and smoothness of operations. Summary of the Invention
[0004] In view of this, the purpose of the present invention is to provide a system for multi-robot collaborative operation, intelligent task allocation and path planning, so as to solve the problems of unreasonable task allocation, inflexible path planning, poor obstacle avoidance effect and so on in the prior art, and to improve the efficiency, safety and environmental adaptability of multi-robot collaborative operation.
[0005] According to a first aspect of an embodiment of the present invention, a system for multi-robot collaborative operation, intelligent task allocation, and path planning is provided, comprising:
[0006] Task receiving module, task decomposition module, execution module, task allocation module, task evaluation module, path planning module and path calculation module;
[0007] The task receiving module is used to receive task information and pass it to the task decomposition module;
[0008] The task decomposition module is used to generate subtask information based on the received task information and distribute it to the corresponding robot through the task allocation module of the execution module;
[0009] The execution module includes a task allocation module and a path planning module. The task allocation module is configured with a task evaluation module for allocating tasks based on the difficulty, duration and current load of the subtasks;
[0010] The path planning module is configured with a path calculation module for sending planned path information and controlling collision-free operation based on the robot's position state.
[0011] Furthermore, the path calculation module is used to use the preset first end point generation module to set the robot's current position as the starting point, store the surrounding robot position information in the process of finding the first end point to form an obstacle avoidance path, and combine it with the preset planned path to form a complete path, and use the complete path to set the second end point as the starting point for the next subtask execution through the preset second end point generation module, set the third end point as the parking position through the preset third end point generation module, and the movement direction of the robot executing the subtask is in the opposite direction.
[0012] Furthermore, the third endpoint generation module in the path calculation module is configured to execute the following method steps to obtain the parking position of the robot:
[0013] According to the robot's movement speed, movement direction, movement duration, and the first and second end points corresponding to the subtask information, the horizontal coordinate of the robot's parking position is obtained by the following formula:
[0014] X=X1+(X2-X1)×(V1×T) / (V1×T+V1×T2) (1);
[0015] Where X1 is the horizontal coordinate of the first end point, X2 is the horizontal coordinate of the second end point, V1 is the average speed of the robot to the first end point, T is the duration of the subtask, and T2 is the dwell time related to the difficulty level of the subtask.
[0016] Furthermore, the path calculation module is configured with a position correction module, which is used to adjust the second end point predetermined position forward or backward by comparing the first predetermined time for reaching the second end point with the second predetermined time for reaching the sixth end point after generating the planned path if the robot does not reach the second end point predetermined position before the adjacent robot.
[0017] Furthermore, the path planning module further includes:
[0018] The obstacle avoidance path generation unit is configured to perform the following method steps based on the obstacle avoidance path generation algorithm of the artificial potential field method to obtain the obstacle avoidance path:
[0019] S1. The robot uses sensors to obtain real-time location information of surrounding obstacles and target points;
[0020] S2. Calculate the attraction of the target point and the repulsion of the obstacle based on the current position;
[0021] S3. Vector synthesis of the attractive and repulsive forces to determine the instantaneous motion direction of the robot;
[0022] S4. Based on the instantaneous motion direction of the robot, a real-time path for avoiding obstacles is generated, and the optimization is continuously iterated until the target point is reached to obtain the obstacle avoidance path.
[0023] Furthermore, a communication module is provided inside the robot, which is in communication with the task evaluation module and is used to send the robot's position information and status information.
[0024] Furthermore, the task assignment module is configured with a task identification module for identifying the robot's working speed, state, type and subtask content and sending them to the task evaluation module.
[0025] Furthermore, the task evaluation module includes:
[0026] A work recording module is used to record the robot's work speed in completing subtask information, the robot's work status corresponding to the subtask information, the work type, and the content of the subtask information;
[0027] The task evaluation module is configured as a multi-dimensional task difficulty evaluation model and performs the following method steps: generating second subtask information corresponding to the next subtask information based on the task content of the task identification module, regenerating the second subtask information corresponding to the next subtask information based on the identification result and the preset work record, and then sending the second subtask information to the task assignment module;
[0028] S1. Obtain the cargo weight (W), handling distance (L), and operation complexity (C) parameters of the current subtask through the task identification module; retrieve the preset weight coefficients (w1, w2, w3), where w1 corresponds to the weight dimension, w2 corresponds to the distance dimension, and w3 corresponds to the complexity dimension, and w1 + w2 + w3 = 1;
[0029] S2. Calculate the comprehensive assessment value D of the task difficulty based on the preset formula 2;
[0030] D=w1×(W / Wmax)+w2×(L / Lmax)+w3×C(2);
[0031] Where Wmax is the maximum handling weight of the robot, Lmax is the maximum handling distance set by the system, and C∈[0,1] is the quantified value of the operation complexity;
[0032] S3. Retrieve the current load data of each robot from the work record module, including the difficulty value and estimated execution time of the assigned task, and construct a load balancing matrix to calculate the matching degree between the remaining load capacity of each robot and the difficulty of the current task;
[0033] S4. Based on the matching result, generate the second subtask information corresponding to the next subtask information. The specific rules are as follows:
[0034] When the load of a robot exceeds the threshold, high-difficulty tasks are assigned to robots with low loads first;
[0035] When multiple robots are load-balanced, tasks are assigned based on the principle of closest distance to reduce path overlap;
[0036] S5. Receive the robot's actual working speed and state change data fed back by the task identification module;
[0037] Dynamically adjust the difficulty model parameters. If the robot's actual speed is lower than the preset value, increase the complexity coefficient C of the corresponding task.
[0038] If the actual distance increases due to path congestion, the L value is dynamically corrected;
[0039] S6. Encapsulate the generated second subtask information into a standard data structure and send it to the task assignment module through the communication interface;
[0040] The priority of the synchronous transmission task is positively correlated with the difficulty value D.
[0041] Furthermore, the path planning module of the execution module is used to set the current position of the robot as the second end point, the first end point as the third end point, and the first obstacle avoidance generation module of the path calculation module to generate a first obstacle avoidance path from the fourth end point to the second end point when generating a new planned path, and the second obstacle avoidance generation module generates a second obstacle avoidance path from the sixth end point to the second end point.
[0042] The technical solutions provided by the embodiments of the present invention may have the following beneficial effects:
[0043] 1. Path planning and collaborative advantages: The path planning module and the path calculation module work together, combining the robot's real-time position, status and endpoint information to achieve dynamic path planning, providing the robot with an accurate and safe path of action, avoiding collisions and improving work efficiency.
[0044] 2. Improved obstacle avoidance capabilities: The obstacle avoidance path generation algorithm based on the artificial potential field method, as well as the multi-endpoint setting and dynamic path update mechanism, enable the robot to have strong obstacle avoidance capabilities in complex and changing environments. It can sense and avoid obstacles in a timely manner and adapt to scenarios such as narrow aisles and densely packed shelves.
[0045] 3. Task allocation optimization: A task difficulty assessment model and a task allocation, evaluation, and identification system that comprehensively consider multiple factors can achieve balanced distribution of robot workloads, avoid blind task allocation, improve overall operational efficiency, optimize resource utilization, and reduce operating costs.
[0046] 4. Environmental adaptability: The position correction module and dynamic path update mechanism enable the robot to flexibly adjust its path according to task progress and environmental changes, ensuring continuous operation and improving the system's adaptability to complex environments.
[0047] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0049] Figure 1 is a schematic diagram showing the composition of a system for multi-robot collaborative operation, intelligent task allocation, and path planning according to an exemplary embodiment;
[0050] Figure 2 is a diagram showing the relationship between modules of a multi-robot collaborative operation system according to an exemplary embodiment;
[0051] Figure 3 is a flowchart of path generation according to an exemplary embodiment;
[0052] Figure 4 A flowchart of position correction and task execution according to an exemplary embodiment;
[0053] Figure 5 A critical path conversion rule diagram is shown according to an exemplary embodiment. DETAILED DESCRIPTION
[0054] Exemplary embodiments will be described in detail herein, examples of which are illustrated in the accompanying drawings. In the following description, when referring to the drawings, like numbers in different figures represent like or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all possible embodiments consistent with the present invention. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present invention, as detailed in the appended claims.
[0055] Example 1
[0056] See also Figure 1 , Figure 11 is a schematic diagram illustrating a system for multi-robot collaborative operation, intelligent task allocation, and path planning according to an exemplary embodiment. The system includes:
[0057] Task receiving module 01, task decomposition module 02, execution module 03, task allocation module 32, task evaluation module 32-1, path planning module 32 and path calculation module 32-1;
[0058] The task receiving module 01 is used to receive task information and pass it to the task decomposition module 02;
[0059] The task decomposition module 02 is used to generate subtask information based on the received task information and distribute it to the corresponding robot through the task allocation module 31 of the execution module 03;
[0060] The execution module 03 includes a task assignment module 31 and a path planning module 32. The task assignment module 31 is configured with a task evaluation module 31-1 for assigning tasks based on the difficulty, duration and current load of the subtask;
[0061] The path planning module 32 is configured with a path calculation module 32-1 for sending planned path information and controlling collision-free operation based on the robot's position state.
[0062] For specific implementation, please refer to Figure 2 The embodiment of the present application is mainly composed of a task receiving module 01, a task decomposition module 02, an execution module 03, a path planning module 32 and a path calculation module 32-1. The relationship between the modules is as follows:
[0063] The task receiving module 01 is responsible for receiving the task information input by the user, which includes the task content and task location, and passing this information to the task decomposition module 02.
[0064] The task decomposition module 02 generates a plurality of subtask information according to the received task information, and then distributes each subtask information to the corresponding robot with the help of the task allocation module 31 in the execution module 03.
[0065] The execution module 03 is a comprehensive module, which includes a task allocation module 31 and a path planning module 32.
[0066] Task Assignment Module 31: This module not only sends subtask information to the corresponding robot, but also includes a Task Evaluation Module 31-1. This module allocates subtasks based on the difficulty and duration of the subtasks received by the robot, as well as the difficulty and duration of the task currently being undertaken by the robot.
[0067] Path Planning Module 32: This module houses Path Calculation Module 32-1. This module is responsible for sending the planned path information, including the starting point and first destination, to each robot that completes a subtask. Path Calculation Module 32-1 determines the starting and ending points of the path based on the robot's real-time location and task requirements, generates an obstacle-avoiding path, and provides detailed path parameters to Path Planning Module 32, enabling collision-free multi-robot collaborative operation.
[0068] The path planning module 32 receives the position and status information of all robots from the execution module 03 (the status information includes movement speed and movement direction), and based on this information, controls all robots to complete the subtask information without colliding with each other.
[0069] The path calculation module 32-1 is used to set the current position of the robot as the starting point; then control the robot to find the first end point according to the planned path information, and in the process of finding the first end point, store the position information of other robots around the robot into the planned path information to form an obstacle avoidance path that avoids other robots, and add the obstacle avoidance path and the planned path information to form a complete path to reach the first end point, and control the robot to move according to the complete path.
[0070] The path calculation module 32-1 is further provided with a second end point and a third end point. The second end point is the execution starting point of the next subtask information, and the third end point is the parking position of the robot corresponding to the second end point. The movement direction of the robot corresponding to the execution subtask information is in the opposite direction.
[0071] When generating new planned path information, the path calculation module 32 - 1 sets the current position of the robot as the second end point of the path calculation module 32 - 1 and the first end point of the planned path information as the corresponding third end point.
[0072] Furthermore, the path calculation module 32-1 is provided with a third endpoint generation module, which is used to generate a third endpoint based on the movement speed, movement direction, movement duration, first endpoint, and second endpoint of the robot executing the subtask information. The third endpoint is generated as follows: the movement of the robot from the current position to the first endpoint corresponding to the subtask information is the first stage, and the movement of the robot from the first endpoint corresponding to the subtask information to the second endpoint of the next subtask information is the second stage. The horizontal coordinate (X) of the third endpoint is between the horizontal coordinate (X1) of the first endpoint and the horizontal coordinate (X2) of the second endpoint; and the horizontal distance l of the robot from the movement to the third endpoint satisfies the following formula:
[0073]
[0074] Among them, X Nis the horizontal distance from the robot moving from the current position to the first endpoint corresponding to the subtask information; Y is the vertical coordinate of the third endpoint; is the average speed of the robot moving from the current position to the first endpoint corresponding to the subtask information; T1 is the task duration corresponding to the subtask information; T2 is the stay duration corresponding to the subtask information; the stay duration T2 is related to the difficulty level of the subtask information. The higher the difficulty level of the subtask information, the longer the stay duration T2.
[0075] The path calculation module 32-1 plays a key role in path planning for multi-robot collaborative operations, involving the setting of multiple endpoints and path generation logic;
[0076] First, clarify the meaning of each endpoint: the first endpoint is the execution target of the current subtask; the second endpoint is the execution starting point of the next subtask; the third endpoint is generated based on the robot's movement speed, movement direction, movement duration, and the subtask information corresponding to the first and second endpoints. It is used for the robot's parking position, and its horizontal coordinate X satisfies the following formula:
[0077]
[0078] Among them, X1 is the horizontal coordinate of the first end point, X2 is the horizontal coordinate of the second end point, v1 is the average speed of the robot moving from the current position to the first end point corresponding to the execution subtask information, T1 is the task duration corresponding to the subtask information, T2 is the stay duration corresponding to the subtask information, and the stay duration T2 is related to the difficulty level of the subtask information. The higher the difficulty level, the longer the stay duration T2. The vertical coordinate is calculated in a similar way; the fourth end point is the end point corresponding to the execution of the subtask information by the robot, and it is also the parking position of the robot; the fifth end point is the first end point of the first obstacle avoidance path; the sixth end point is the execution starting point of the next subtask information.
[0079] For specific implementation, please refer to Figure 3 、 Figure 4 ,The path generation process includes the following steps:
[0080] S1: When generating new planned path information, first set the robot's current position as the second end point, and set the first end point of the planned path information as the corresponding third end point; at this time, the end point corresponding to the robot's execution subtask information is set as the fourth end point.
[0081] S2: The first obstacle avoidance generation module in the path calculation module 32-1 generates a first obstacle avoidance path from the fourth end point to the second end point, where the first end point of the path is the fifth end point.
[0082] S3: When generating new planned path information, the path planning module 32 again sets the current position of the robot as the second end point, and sets the first end point of the planned path information as the corresponding fifth end point.
[0083] S4: The second obstacle avoidance generation module set in the path calculation module 32-1 generates a second obstacle avoidance path from the sixth end point to the second end point; the sixth end point is the execution starting point of the next subtask information.
[0084] S5: The path calculation module 32-1 also sets the current position of the robot as the sixth end point, and sets the first end point of the planned path information as the corresponding new third end point, and continuously updates the planned path information.
[0085] See also Figure 4 The path calculation module 32-1 is further configured with a position correction module. The position correction module is used to correct the predetermined position of the second end point if the current robot does not reach the predetermined position of the second end point before the adjacent robot after the path calculation module 32-1 generates a number of planned path information. The predetermined position is the first half of the sixth end point, and the sixth end point is the execution starting point of the next subtask information. The position correction module corrects the predetermined position of the second end point in the following manner:
[0086] Determine a first predetermined time for the current robot to reach the second end point and a second predetermined time for the current robot to reach the sixth end point; if the first predetermined time is greater than the second predetermined time, adjust the predetermined position of the second end point forward; otherwise, adjust the predetermined position of the second end point backward.
[0087] The path planning module 32 is configured with a task execution module 03 ; the task execution module 03 is used to control the robot that receives the subtask information to complete the subtask information according to the planned path information generated by the path planning module 32 .
[0088] The path calculation module 32-1 starts from the existing information (such as the current position of the robot, the first end point of the subtask, the second end point, the robot's movement speed, movement direction, movement duration, etc.) and generates specific path information through specific calculation methods (such as the formula calculation for determining the third end point, the generation calculation of the obstacle avoidance path, etc.). For example, it calculates the path from the current position to each end point, generates an obstacle avoidance path, etc., focusing on the numerical calculation and path generation of specific paths, such as setting the current position of the robot as the corresponding end point, and determining the new end point position based on the calculation results.
[0089] The path planning module 32 mainly controls all robots from a macro perspective to complete subtask information without colliding with each other based on the position and status information of all robots obtained. It focuses more on the overall path planning strategy and control of the robots. For example, it controls the robot that receives the subtask information to complete the subtask information according to the generated planned path information. It will coordinate the path planning of each robot and consider the overall situation, rather than just the specific path calculation.
[0090] In multi-robot collaborative operation scenarios, the generation of obstacle avoidance paths is crucial. In order to enable robots to effectively avoid obstacles in complex environments, an obstacle avoidance path generation algorithm based on the artificial potential field method is adopted. When the robot senses the presence of other robots or obstacles around it, the robot's current position is used as the starting point, the target point (such as the first end point, the second end point, etc.) is used as the attraction point, and the surrounding obstacles are used as the repulsion points.
[0091] The total force on the robot For attraction and repulsive force The vector sum of
[0092] Attraction Prompts the robot to move toward the target point, and its size is equal to the distance d from the robot to the target point goal The calculation formula is:
[0093]
[0094] where k att is the attraction coefficient, The unit vector pointing from the robot to the target point. It is used to make the robot avoid obstacles, and its size is equal to the distance d from the robot to the obstacle. obs The expression is:
[0095]
[0096] Among them, k rep is the repulsion coefficient, d0 is the threshold of the repulsion force range, It is the unit vector pointing from the robot to the obstacle. By continuously calculating the direction of the resultant force, the robot can plan a path to avoid the obstacle and form an obstacle avoidance path.
[0097] A communication module is provided inside the robot, and the communication module is in communication connection with the task evaluation module 31 - 1 . The communication module is used to send the position information and status information of the robot to the task evaluation module 31 - 1 .
[0098] The task evaluation module 31-1 is configured with a work record module, which is used to record the working speed of the robot in completing the subtask information, the working status of the robot corresponding to the execution of the subtask information, the work type and the content of the subtask information; the task evaluation module 31-1 generates the second subtask information corresponding to the next subtask information based on the work record; the task allocation module 31 is also configured with a task identification module, which is used to identify the working speed of each robot in completing the subtask information, the working status of the robot corresponding to the execution of the subtask information, the work type and the content of the subtask information, and send the identification result to the task evaluation module 31-1; the task evaluation module 31-1 is also used to regenerate the second subtask information corresponding to the next subtask information based on the identification result and the work record, and then send the second subtask information to the task allocation module 31; the task allocation module 31 assigns the second subtask information to the corresponding robot.
[0099] In actual application scenarios, such as multiple robots working together to carry goods in a logistics warehouse, each robot is equipped with a communication module.
[0100] For example, a robot moving between shelves to transport goods has a communication module that continuously monitors its location in real time. This location information, acquired through sensors, is accurate to the robot's coordinate position on the warehouse map, such as the specific values in the (x, y) coordinate system. The communication module also collects information about the robot's status, such as its speed, calculated from parameters like motor speed, and its direction of movement, expressed as the angle between the robot's heading and the warehouse's preset orientation.
[0101] The communication module transmits this collected location and status information in the form of wireless signals according to a specific communication protocol. The task evaluation module 31-1 is located in the server of the warehouse management center and is equipped with a dedicated signal receiving device that can receive information sent by each robot's communication module. When a robot encounters road congestion while transporting goods, its movement speed decreases and its position changes. The communication module quickly captures these changes and promptly sends the updated location and status information to the task evaluation module 31-1. After receiving this information, the task evaluation module 31-1 combines the task difficulty of each robot's subtask (for example, carrying heavy objects is more difficult than light objects), the task duration (long-distance tasks take longer), and the difficulty and duration of the robot's current task to reassign subtasks to the robots in a reasonable manner. This ensures that the entire warehouse handling work is carried out efficiently and orderly, avoids the situation where some robots have tasks that are too heavy or too light, and improves the overall efficiency of multi-robot collaborative operations.
[0102] In scenarios where multiple robots collaborate to move cargo, building a reasonable task difficulty assessment model is crucial for task allocation and resource scheduling. This model comprehensively considers factors such as cargo weight, moving distance, and the complexity of the moving operation. The specific calculation formula is as follows:
[0103]
[0104] Where: D represents the comprehensive assessment value of task difficulty. The larger the value, the higher the task difficulty.
[0105] W is the actual weight of the goods, W max is the maximum weight the robot can carry, Used to measure the impact of cargo weight on task difficulty. For example, if the maximum handling weight of a robot is 100 kg and the current cargo weighs 50 kg, then this part of the value is
[0106] L is the transport distance, L max It is the maximum transport distance set by the system (determined by warehouse layout or robot endurance, etc.). Reflects the contribution of the transport distance to the task difficulty. For example, if the maximum transport distance is set to 100 meters and the actual transport distance is 30 meters, the value of this part is
[0107] C represents the complexity of the handling operation, with a value range of 0-1.
[0108] w1, w2, and w3 are the weight coefficients corresponding to the cargo weight, handling distance, and complexity of the handling operation, respectively, and w1+w2+w3=1. The setting of the weight coefficient needs to be determined according to the importance of each factor in the actual application scenario.
[0109] The task assessment module 31-1 calculates the difficulty of each subtask based on this model and, taking into account the difficulty and duration of the task currently being undertaken by the robot, allocates tasks to different robots in a reasonable manner. This avoids concentrating overly difficult tasks on a small number of robots, ensuring a balanced workload across the robots and improving overall operational efficiency.
[0110] By accurately assessing task difficulty, the system can better plan robot resources. For more difficult tasks, robots with higher performance and greater payload capacity can be deployed; for simpler tasks, standard robots can be used. This optimizes resource utilization and reduces operating costs. Reasonable task allocation and resource scheduling reduce robot waiting time, avoid task conflicts, and make multi-robot collaborative operations smoother, thereby improving the efficiency and quality of the entire handling operation.
[0111] In its implementation, this technical solution primarily consists of modules for task reception, task decomposition, execution, path planning, and path calculation. Task reception module 01 collects task information input by the user, including task content and location, and passes it to task decomposition module 02. Task decomposition module 02 breaks down the task into subtasks and distributes them to the corresponding robots via task allocation module 31 within execution module 03. Execution module 03 not only controls the robot to complete the subtasks but also collects its position and status information, providing it to path planning module 32. Based on this information, path planning module 32 collaborates with path calculation module 32-1 to plan a precise and safe path for the robot. Path calculation module 32-1 generates a path based on the robot's real-time status, endpoint information, and motion state using a specific algorithm, including an artificial potential field method to generate an obstacle avoidance path. The system also constructs a task difficulty assessment model that considers factors such as cargo weight, handling distance, and the complexity of the handling operation. Task assessment module 31-1 then rationally allocates tasks to ensure balanced robot workload. In practical applications, such as logistics warehouses, the communication modules within each robot transmit location and status information to the task evaluation module 31-1, which optimizes task allocation based on work records and recognition results. This solution, through close collaboration between modules, improves the efficiency and safety of multi-robot collaborative operations, optimizes resource utilization, and provides a comprehensive and effective technical approach to solving the challenges of multi-robot collaborative operations.
[0112] It can be understood that the same or similar parts of the above embodiments can be referenced to each other, and the contents not described in detail in some embodiments can refer to the same or similar contents in other embodiments.
[0113] It should be noted that, in the description of the present invention, the terms "first", "second", etc. are used for descriptive purposes only and should not be understood as indicating or implying relative importance. In addition, in the description of the present invention, unless otherwise specified, the meaning of "plurality" is at least two.
[0114] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code comprising one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may be performed out of the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention pertain.
[0115] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above-described embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application-specific integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0116] Those skilled in the art will understand that all or part of the steps in the method of the above embodiment can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.
[0117] In addition, the functional units in the various embodiments of the present invention may be integrated into a single processing module, or each unit may exist physically separately, or two or more units may be integrated into a single module. The aforementioned integrated modules may be implemented in the form of hardware or in the form of software functional modules. If the integrated modules are implemented in the form of software functional modules and sold or used as independent products, they may also be stored in a computer-readable storage medium.
[0118] The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc.
[0119] Throughout this specification, reference to terms such as "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that a specific feature, structure, material, or characteristic described in conjunction with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
[0120] Although the embodiments of the present invention have been shown and described above, it will be understood that the above embodiments are illustrative and are not to be construed as limitations on the present invention. A person skilled in the art may change, modify, replace and modify the above embodiments within the scope of the present invention.
Claims
1. A system for multi-robot collaborative operation, intelligent task allocation, and path planning, characterized by: include: Task receiving module, task decomposition module, execution module, task allocation module, task evaluation module, path planning module and path calculation module; The task receiving module is used to receive task information and pass it to the task decomposition module; The task decomposition module is used to generate subtask information based on the received task information and distribute it to the corresponding robot through the task allocation module of the execution module; The execution module includes a task allocation module and a path planning module. The task allocation module is configured with a task evaluation module for allocating tasks based on the difficulty, duration and current load of the subtasks; The path planning module is configured with a path calculation module for sending planned path information and controlling collision-free operation based on the robot's position state.
2. The system according to claim 1, wherein: The path calculation module is used to use the preset first end point generation module to set the robot's current position as the starting point, store the surrounding robot position information in the process of finding the first end point to form an obstacle avoidance path, combine it with the preset planned path to form a complete path, and use the complete path to set the second end point as the starting point for the next subtask execution through the preset second end point generation module, set the third end point as the parking position through the preset third end point generation module, and the movement direction of the robot executing the subtask is in the opposite direction.
3. The system according to claim 2, characterized in that The third endpoint generation module in the path calculation module is configured to perform the following method steps to obtain the parking position of the robot: According to the robot's movement speed, movement direction, movement duration, and the first and second end points corresponding to the subtask information, the horizontal coordinate of the robot's parking position is obtained by the following formula: X=X1+(X2-X1)×(V1×T) / (V1×T+V1×T2) (1); Where X1 is the horizontal coordinate of the first end point, X2 is the horizontal coordinate of the second end point, V1 is the average speed of the robot to the first end point, T is the duration of the subtask, and T2 is the dwell time related to the difficulty level of the subtask.
4. The system according to claim 1, wherein: The path calculation module is configured with a position correction module, which is used to adjust the second end point predetermined position forward or backward by comparing the first predetermined time for reaching the second end point with the second predetermined time for reaching the sixth end point after generating the planned path if the robot does not reach the second end point predetermined position before the adjacent robot.
5. The system according to claim 1, wherein: The path planning module also includes: The obstacle avoidance path generation unit is configured to perform the following method steps based on the obstacle avoidance path generation algorithm of the artificial potential field method to obtain the obstacle avoidance path: S1. The robot uses sensors to obtain real-time location information of surrounding obstacles and target points; S2. Calculate the attraction of the target point and the repulsion of the obstacle based on the current position; S3. Vector synthesis of the attractive and repulsive forces to determine the instantaneous motion direction of the robot; S4. Based on the instantaneous motion direction of the robot, a real-time path for avoiding obstacles is generated, and the optimization is continuously iterated until the target point is reached to obtain the obstacle avoidance path.
6. The system according to claim 1, wherein: A communication module is provided inside the robot and is in communication connection with the task evaluation module for sending the robot's position information and status information.
7. The system according to claim 1, wherein: The task assignment module is configured with a task identification module for identifying the robot's working speed, state, type and subtask content and sending them to the task evaluation module.
8. The method according to claim 1, characterized in that The task evaluation module includes: A work recording module is used to record the robot's work speed in completing subtask information, the robot's work status corresponding to the subtask information, the work type, and the content of the subtask information; The task evaluation module is configured as a multi-dimensional task difficulty evaluation model and performs the following method steps: generating second subtask information corresponding to the next subtask information based on the task content of the task identification module, regenerating the second subtask information corresponding to the next subtask information based on the identification result and the preset work record, and then sending the second subtask information to the task assignment module; S1. Obtain the cargo weight (W), handling distance (L), and operation complexity (C) parameters of the current subtask through the task identification module; retrieve the preset weight coefficients (w1, w2, w3), where w1 corresponds to the weight dimension, w2 corresponds to the distance dimension, and w3 corresponds to the complexity dimension, and w1 + w2 + w3 = 1; S2. Calculate the comprehensive assessment value D of the task difficulty based on the preset formula 2; D=w1×(W / Wmax)+w2×(L / Lmax)+w3×C(2); Where Wmax is the maximum handling weight of the robot, Lmax is the maximum handling distance set by the system, and C∈[0,1] is the quantified value of the operation complexity; S3. Retrieve the current load data of each robot from the work record module, including the difficulty value and estimated execution time of the assigned task, and construct a load balancing matrix to calculate the matching degree between the remaining load capacity of each robot and the difficulty of the current task; S4. Based on the matching result, generate the second subtask information corresponding to the next subtask information. The specific rules are as follows: When the load of a robot exceeds the threshold, high-difficulty tasks are assigned to robots with low loads first; When multiple robots are load-balanced, tasks are assigned based on the principle of closest distance to reduce path overlap; S5. Receive the robot's actual working speed and state change data fed back by the task identification module; Dynamically adjust the difficulty model parameters. If the robot's actual speed is lower than the preset value, increase the complexity coefficient C of the corresponding task. If the actual distance increases due to path congestion, the L value is dynamically corrected; S6. Encapsulate the generated second subtask information into a standard data structure and send it to the task assignment module through the communication interface; The priority of the synchronous transmission task is positively correlated with the difficulty value D.
9. The system according to claim 1, wherein: The path planning module of the execution module is used to set the current position of the robot as the second end point, the first end point as the third end point, and the first obstacle avoidance generation module of the path calculation module to generate a first obstacle avoidance path from the fourth end point to the second end point, and the second obstacle avoidance generation module to generate a second obstacle avoidance path from the sixth end point to the second end point when generating a new planned path.
Citation Information
Cited By
Industrial production method and production system based on humanoid robot and humanoid robot
CN121411344A