Inspection method based on multi-device cooperation

By constructing an executability matrix for task sets and device sets, and combining it with the Lagrange optimization method, the problem of uneven task allocation in multi-device collaborative inspection was solved, achieving efficient and accurate task scheduling and device collaboration, and improving the response efficiency and resource utilization of the inspection system.

CN121638830BActive Publication Date: 2026-04-21HUNAN BOXIN CHUANGYUAN INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUNAN BOXIN CHUANGYUAN INFORMATION TECH CO LTD
Filing Date
2026-02-04
Publication Date
2026-04-21

AI Technical Summary

Technical Problem

Existing intelligent inspection systems cannot effectively consider task priority, equipment load capacity, and task timeliness in multi-device collaborative task scheduling, resulting in suboptimal scheduling results, inability to flexibly respond to sudden tasks and complex environmental changes, and inability to update scheduling results in real time.

Method used

By establishing a task set, a device set, and an executability matrix, a response pressure and normalized priority are constructed. A Lagrange multiplier mechanism is introduced to transform the task allocation problem into a Lagrange optimization problem. Combining unique task allocation, maximum device load, and executability constraints, the multipliers are iteratively updated using step size to generate a task execution sequence.

Benefits of technology

It enables efficient allocation and scheduling of tasks in multi-device collaborative inspection, improves response speed and scheduling accuracy, avoids the problems of task starvation or over-priority, ensures that the equipment is not overloaded and the tasks are executed on time, and is suitable for large-scale task scheduling scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121638830B_ABST
    Figure CN121638830B_ABST
Patent Text Reader

Abstract

This invention relates to the field of intelligent inspection systems and multi-device collaborative scheduling technology, and discloses an inspection method based on multi-device collaboration. Within a scheduling cycle, inspection tasks and devices are uniformly modeled, and time, type, and maximum runtime parameters are registered to construct the executable relationship between tasks and devices. The remaining response time is calculated, and a normalized task priority is generated from the remaining response time and execution duration. Constraints on unique task allocation, maximum device load, and task executability are set. Lagrange optimization is introduced, and tasks are selected for each device according to task density. Iterative updates are performed until convergence, generating an execution sequence sorted by remaining response time and then distributed. Through these steps, task attributes are unified, device capabilities are quantified, and imbalances caused by single-time or duration-based sorting are avoided. Under multiple constraints, timeliness and load are balanced, ensuring task executability without device overload, thus improving resource utilization and task completion rate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent inspection systems and multi-device collaborative scheduling technology, specifically to an inspection method based on multi-device collaboration. Background Technology

[0002] With the rapid development of intelligent devices and automation technologies, inspection and maintenance are becoming increasingly widespread across various industries. Traditional inspection methods typically rely on manual operation, which is not only inefficient but also poses high safety risks and labor intensity. To address these issues, intelligent inspection systems have been widely adopted, particularly in hazardous environments, equipment monitoring, and factory production lines. Utilizing various sensors, robots, drones, and other equipment, intelligent inspection systems can autonomously perform tasks such as equipment inspection and fault detection, improving both work efficiency and safety.

[0003] However, existing intelligent inspection systems still face many challenges. First, effectively allocating tasks and scheduling equipment resources becomes a significant challenge when multiple devices collaborate on tasks. Existing multi-device task scheduling methods are typically based on pre-defined rules or simple heuristic algorithms. These methods fail to fully consider multiple constraints such as task priority, device load capacity, and task timeliness, leading to suboptimal scheduling results. Therefore, achieving efficient device collaboration within limited resources and timeframes is a pressing issue for intelligent inspection systems. Most existing scheduling methods rely on static planning and fixed device task allocation strategies. For example, some traditional methods allocate tasks manually or through a rotation mechanism, but these methods do not fully consider dynamic changes in task priority, device workload, and inter-device collaboration. Therefore, the task allocation and scheduling process is often influenced by constraints, making it difficult to flexibly respond to sudden tasks and complex environmental changes. Furthermore, many existing technologies also suffer from the inability to update scheduling results in real time. For emergency tasks and tasks triggered by urgent alarms, existing systems often cannot adjust task priorities and device scheduling schemes in a timely manner, thus affecting task response speed and execution effectiveness. In complex task environments, especially when multiple tasks and multiple devices are executed together, the coordination between devices and the dynamic adjustment of tasks become particularly important.

[0004] Therefore, this case aims to propose an inspection method based on multi-device collaboration. First, tasks and devices are mapped into a mathematical model to establish a task set, a device set, and an executability matrix between them. Then, response pressure and normalized priority are constructed based on the remaining response time and expected execution time of the tasks to effectively measure the urgency and importance of the tasks. Next, the Lagrange multiplier mechanism is introduced to transform the task allocation problem into maximizing an objective function under three constraints: unique task allocation constraint, maximum device load constraint, and task executability constraint. Subsequently, for each device, an executable subset is selected based on task density sorting to quickly generate allocation results. Finally, the multipliers are iteratively updated with a step size and convergence is detected. After meeting a preset error threshold, the final allocation results are converted into an execution sequence ordered by remaining response time and issued for implementation. Summary of the Invention

[0005] This invention provides an inspection method based on multi-device collaboration, which helps to solve the problems mentioned in the background art.

[0006] This invention provides the following technical solution: a multi-device collaborative inspection method, comprising:

[0007] Get the independent inspection tasks within the scheduling period, establish a task set, and register the task generation time parameter, expected execution duration parameter, maximum allowed response time parameter, and task type parameter;

[0008] Obtain the inspection equipment that can participate in the scheduling, establish the equipment set, register the start absolute time parameter, the maximum running time limit parameter of the inspection equipment and the equipment type parameter, and construct the task equipment executability matrix;

[0009] The system time is obtained on the timeline, the remaining response time is calculated based on the task parameters, the response pressure is constructed based on the remaining response time, and a normalized task priority is generated by combining the execution duration.

[0010] Set up a Boolean variable for task device allocation and establish unique task allocation constraints, maximum device load constraints, and task executability constraints.

[0011] A Lagrange objective function is constructed using task parameters, equipment parameters, task and equipment allocation Boolean variables, and Lagrange multipliers. The objective function is maximized under the constraints of unique task allocation, maximum equipment load, and task executability.

[0012] For each inspection device, the task is selected from largest to smallest based on the task device executability matrix and task density to generate the task device allocation result;

[0013] The Lagrange multipliers of each inspection device are updated using step size and load difference in iteration rounds, and the convergence of the task device allocation results is checked.

[0014] After the convergence condition determined by the convergence judgment error threshold is met, a task execution sequence sorted by the remaining response time is generated for each inspection device according to the converged task device allocation result, and then sent to the corresponding inspection device for execution.

[0015] Optionally, the step of obtaining independent inspection tasks within the scheduling period, establishing a task set, and registering task generation time parameters, expected execution duration parameters, maximum allowed response time parameters, and task type parameters specifically includes:

[0016] Within the current scheduling period, receive multiple independent inspection tasks, count the total number of independent inspection tasks, and assign a task number index to each independent inspection task.

[0017] Create a task set according to the task number index, and create a corresponding task object for each independent inspection task in the task set;

[0018] In each task object, set the task generation time parameter, the expected execution duration parameter, the maximum allowed response time parameter from the time the task is generated, and the task type parameter. Different values ​​of the task type parameter represent daily inspection tasks, emergency tasks, and linkage tasks, respectively.

[0019] Optionally, the step of acquiring the inspection equipment that can participate in scheduling, establishing a equipment set, registering the start absolute time parameter, the maximum running time limit parameter of the inspection equipment, and the equipment type parameter, and constructing a task equipment executability matrix specifically includes:

[0020] Within the current scheduling cycle, obtain the inspection equipment that can participate in the scheduling, count the total number of inspection equipment, and assign an equipment number to each inspection equipment.

[0021] Create an equipment set according to the equipment number, and create a corresponding equipment object for each inspection equipment in the equipment set;

[0022] In each device object, set the absolute start time parameter for when the task can be started, the maximum running time limit parameter for the inspection device, and the device type parameter. Different values ​​of the device type parameter represent ground robots, aerial drones, and fixed equipment, respectively.

[0023] A task-device executability matrix is ​​constructed based on the task set and the device set. Each element in the matrix is ​​set as a Boolean value, indicating whether the corresponding inspection device has the ability to execute the corresponding task. The executable state and the non-executable state correspond to the two values ​​of the matrix element, respectively.

[0024] Optionally, the step of obtaining the system time on the timeline, calculating the remaining response time based on task parameters, constructing response pressure based on the remaining response time, and generating a normalized task priority by combining the execution duration specifically includes:

[0025] Obtain the current system time on a unified timeline;

[0026] For each task in the task set, the remaining response time parameter is calculated by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter;

[0027] For each task in the task set, a response pressure parameter is constructed based on the remaining response time parameter. When the remaining response time parameter is not less than zero, the response pressure parameter is obtained by taking the reciprocal of the sum of the remaining response time parameter and the preset positive real constant. When the remaining response time parameter is less than zero, the response pressure parameter is obtained by taking the reciprocal of the preset positive real constant.

[0028] For each task in the task set, the original non-normalized priority parameter is obtained by multiplying the response pressure parameter by the expected execution duration parameter;

[0029] Find the maximum value among the unnormalized priority parameters of all tasks. When the maximum value is greater than zero, obtain the normalized task priority parameter of each task by dividing the unnormalized priority parameter of each task by the maximum value. When the maximum value is equal to zero, set the normalized task priority parameter of all tasks to the same preset value.

[0030] Optionally, the step of setting task device allocation Boolean variables and establishing task unique allocation constraints, device maximum load constraints, and task executability constraints specifically includes:

[0031] For each pair of tasks and inspection equipment in the task set and equipment set, a task-equipment allocation Boolean variable is set. When a task is allocated to an inspection equipment, the corresponding Boolean variable is set to a value representing the allocation status. When a task is not allocated, the corresponding Boolean variable is set to a value representing the unallocated status. Initially, all task-equipment allocation Boolean variables are uniformly set to a value representing the unallocated status.

[0032] For each task in the task set, a Boolean variable is assigned and summed for all task devices related to the corresponding task. By constraining the summation value to not exceed one, a unique task assignment constraint is formed.

[0033] For each inspection device in the equipment set, assign Boolean variables to all task devices related to the corresponding inspection device and sum them up according to the expected execution duration parameter of the corresponding task. By constraining the weighted sum value to not exceed the maximum running time limit parameter of the inspection device, the maximum load constraint of the device is formed.

[0034] Based on the task and equipment executability matrix, for each pair of tasks and inspection equipment, when the corresponding element in the task and equipment executability matrix is ​​in an unexecutable state, the corresponding task and equipment allocation Boolean variable is fixed to the value representing the unallocated state. Only when the corresponding element in the task and equipment executability matrix is ​​in an executable state is the corresponding task and equipment allocation Boolean variable allowed to take the value of the allocated state.

[0035] Optionally, the step of constructing a Lagrange objective function using task parameters, equipment parameters, task-equipment allocation Boolean variables, and Lagrange multipliers, and maximizing the objective function under the constraints of unique task allocation, maximum equipment load, and task executability, specifically includes:

[0036] For each inspection device in the equipment set, a Lagrange multiplier parameter corresponding to the maximum load constraint of the device is introduced, and a Lagrange multiplier parameter is set for each inspection device.

[0037] Based on the normalized task priority parameter, expected execution duration parameter, maximum running time limit parameter of inspection equipment, task equipment allocation Boolean variable, and Lagrange multiplier parameter of each inspection equipment in the task set, a Lagrange objective function is constructed. The benefit term is obtained by summing the products of the normalized task priority parameter of all task and inspection equipment combinations and the corresponding task equipment allocation Boolean variable. The penalty term is obtained by summing the products of the Lagrange multiplier parameter of all inspection equipment and the difference between the total execution time of the assigned tasks of the corresponding inspection equipment and the maximum running time limit parameter of the inspection equipment. At the same time, the product of the Lagrange multiplier parameter of each inspection equipment and the maximum running time limit parameter of the corresponding inspection equipment is added to form a constant term.

[0038] By using Boolean variables for task and equipment allocation as decision variables and a Lagrange objective function as the optimization objective, and taking the maximum value of the Lagrange objective function under the premise of satisfying the constraints of unique task allocation, maximum equipment load, and task executability, the problem of task and inspection equipment allocation optimization is obtained.

[0039] Optionally, for each inspection device, the task generation task device allocation result is selected according to the task device executability matrix and task density from large to small, specifically including:

[0040] For each inspection device in the device set, a local task scheduling candidate set for the corresponding inspection device is constructed based on the task index in the task device executability matrix where the corresponding element is executable.

[0041] For each task in the local task scheduling candidate set, the task density parameter of the corresponding task on the corresponding inspection equipment is calculated using the normalized task priority parameter, the expected execution duration parameter of the corresponding task, and the Lagrange multiplier parameter of the corresponding inspection equipment. When the expected execution duration parameter is greater than zero, the task density parameter is obtained by subtracting the product of the Lagrange multiplier parameter and the expected execution duration parameter from the normalized task priority parameter and then dividing by the expected execution duration parameter. When the expected execution duration parameter is equal to zero, the task density parameter is set to a preset positive real constant.

[0042] For each inspection device in the device set, based on the task density parameters of each task on the corresponding inspection device, the tasks in the local task scheduling candidate set are sorted from largest to smallest according to the task density parameters, and a task index sorting sequence associated with the corresponding inspection device is generated.

[0043] For each inspection device in the device set, initialize the total execution time of the selected tasks for the corresponding inspection device to zero, and initialize the set of selected tasks for the corresponding inspection device to an empty set;

[0044] For each inspection device in the device set, candidate tasks are selected sequentially according to the task index sorting sequence. The sum of the execution time of the currently selected tasks of the corresponding inspection device and the expected execution duration of the current candidate task is calculated. When the sum does not exceed the maximum running time limit of the inspection device, and the task device allocation Boolean variables corresponding to the current candidate task of all inspection devices are in an unallocated state, the current candidate task is added to the selected task set of the corresponding inspection device, the total execution time of the selected tasks of the corresponding inspection device is updated to the sum, and the task device allocation Boolean variable between the current candidate task and the corresponding inspection device is set to the value representing the allocation status. When any condition is not met, the current values ​​of the selected task set of the corresponding inspection device, the total execution time of the selected tasks, and the task device allocation Boolean variables of all inspection devices remain unchanged, and the next candidate task in the sorting sequence is processed.

[0045] After all candidate tasks have been processed, for each inspection device in the device set, based on the selected task set of the corresponding inspection device, the task device allocation Boolean variable between the tasks belonging to the selected task set and the corresponding inspection device is set to a value indicating the allocation status, and the task device allocation Boolean variable between the tasks not belonging to the selected task set and the corresponding inspection device is set to a value indicating the unallocated status.

[0046] Optionally, the step of updating the Lagrange multipliers of each inspection device using the step size and load difference in each iteration round, and checking the convergence of the task device allocation results, specifically includes:

[0047] Set the iteration round index for Lagrange multiplier update and task device allocation Boolean variable update. The initial iteration round index is zero. In the initial iteration round, the Lagrange multiplier parameter of each inspection device in the device set is set to zero, and the step size parameter of the current round is set according to the reciprocal of the iteration round index plus one.

[0048] In each iteration, for each inspection device in the device set, based on the task device allocation Boolean variable and the expected execution duration parameter of each task in the current round, the total execution time of the assigned tasks of the corresponding inspection device in the current round is calculated. Then, the difference between the total and the maximum running time limit parameter of the inspection device is calculated. The difference is divided by the square of the maximum running time limit parameter of the inspection device to obtain the normalized difference parameter. The normalized difference parameter is multiplied by the step size parameter of the current round and added to the Lagrange multiplier parameter value of the corresponding inspection device in the current round. The result is compared with zero. When the result is less than zero, the Lagrange multiplier parameter value of the corresponding inspection device in the next round is set to zero. When the result is not less than zero, the result is used as the Lagrange multiplier parameter value of the corresponding inspection device in the next round.

[0049] After updating the Lagrange multiplier parameters of all inspection devices, for each inspection device in the device set, the total execution time of the assigned tasks for the corresponding inspection device is recalculated based on the Boolean variable of task device allocation in the current round and the expected execution duration parameter of each task. The difference between the total and the upper limit parameter of the maximum running time of the inspection device is calculated. If the absolute value of the difference for all inspection devices does not exceed the preset convergence judgment error threshold, the iteration process is terminated and the Boolean variable of task device allocation and the Lagrange multiplier parameter value of the current round are retained. If the absolute value of the difference for at least one inspection device exceeds the preset convergence judgment error threshold, the iteration round index is incremented by one, the step size parameter of the next round is updated, and the next round of iteration continues.

[0050] Optionally, after satisfying the convergence condition determined by the convergence judgment error threshold, the step of generating a task execution sequence sorted by remaining response time for each inspection device based on the converged task device allocation result, and sending it to the corresponding inspection device for execution, specifically includes:

[0051] After completing the multiplier update and task device allocation optimization, for each inspection device in the device set, based on the value of the final task device allocation Boolean variable, collect all tasks whose task device allocation Boolean variables are in the allocation state with the corresponding inspection device, and construct the scheduling task set of the corresponding inspection device.

[0052] Obtain the current system time on a unified timeline. For each task in the scheduling task set of each inspection device, calculate the remaining response time parameter of each task by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter.

[0053] For each inspection device, based on the remaining response time parameters of each task in its scheduling task set, the tasks in the scheduling task set are sorted in ascending order of remaining response time parameters, generating a corresponding task index sorting sequence.

[0054] For each inspection device, the number of tasks in the sorted task index sequence is counted, and the number is used as the number of tasks that the corresponding inspection device needs to execute in the current scheduling cycle.

[0055] For each inspection device, based on the correspondence between the task position and the task number in the task index sorting sequence, a sorted task execution sequence for the corresponding inspection device is constructed, such that the remaining response time parameter of the task corresponding to any previous position in the sorted task execution sequence is not greater than the remaining response time parameter of the task corresponding to the next position.

[0056] The sorted task execution sequence of each inspection device is sent to the corresponding inspection device, and each inspection device is controlled to execute the tasks in the scheduled task set in the order of its sorted task execution sequence until all tasks in the current scheduling cycle are completed.

[0057] The present invention has the following beneficial effects:

[0058] 1. All inspection tasks within the scheduling cycle are abstracted into a set of objects containing four core parameters: generation time, estimated duration, maximum response time limit, and task type. The timing and attribute differences of each task are explicitly recorded. This standardizes the template for multi-source task information, avoiding scheduling errors caused by manual field splitting and inconsistent formats in traditional systems. Through pre-classification of task type parameters, the solution can distinguish between routine inspections, emergency repairs, and collaborative operation needs, laying the foundation for subsequent priority generation. This simplifies the cost of integrating heterogeneous information in the scheduling system and enables rapid updates to the object set when there is a sudden increase in task volume or dynamic changes in task attributes, improving the response speed and accuracy of the scheduling system.

[0059] 2. For all schedulable devices, core parameters such as start availability time, maximum continuous runtime, and device type are registered using a unified template. Then, based on device capabilities and task requirements, a binary "task-device executability matrix" is dynamically generated. This directly maps device capabilities and task requirements to Boolean executability, pre-eliminating mismatches through a matrix format, thus improving allocation efficiency. The capability differences of heterogeneous devices, such as ground robots, drones, and fixed sensors, are uniformly quantified, eliminating the need for repeated capability checks during scheduling, significantly reducing algorithm complexity. Compared to existing label-based or rule-based selection methods, the executability matrix is ​​constructed once and reused multiple times, improving both system throughput and scheduling accuracy.

[0060] 3. Calculate the remaining response time based on the difference between the task generation time and the maximum allowed response time limit. Then, combine this with a preset constant to construct the response pressure. Finally, multiply this by the expected execution time to generate a non-normalized priority, which is then normalized to the [0,1] interval. This approach integrates both timeliness and workload dimensions, ensuring that tasks with high urgency are prioritized while also considering the cost of task execution. It effectively avoids the starvation problem of long tasks caused by sorting solely by remaining time, and also avoids the over-priority problem of short tasks caused by sorting solely by duration, thus achieving a more balanced overall scheduling. Compared with traditional single-priority strategies, this solution considers both task urgency and workload, and the generated priority better reflects real business needs.

[0061] 4. A Lagrangian objective function is constructed at the global level, incorporating normalized priority, expected execution time, equipment load constraints, and multiplier penalties into the optimization objective. Lagrangian relaxation maximization is then performed under three types of constraints: unique task allocation, maximum equipment load, and executability. This transforms inspection scheduling into a constrained Lagrangian optimization problem, making it possible to consider multiple constraints. By introducing multipliers to penalize overload situations, it ensures that equipment is not overloaded while also considering task importance, and dynamically balances supply and demand through multiplier iteration. Unlike existing heuristic or linear programming solutions, this approach offers stronger interpretability and convergence guarantees, making it suitable for large-scale task scheduling scenarios.

[0062] 5. After obtaining the global direction through Lagrange relaxation, this scheme constructs a local candidate task set for each device and calculates the task density according to "normalized priority – multiplier penalty × execution time" to achieve local subproblem scheduling. Global multiplier information is fused with local priority to generate a density index that reflects the "contribution / cost" ratio, and this index is then filtered sequentially from high to low density values ​​within each device. This ensures that the local scheduling results not only conform to the global optimal tendency but also enable rapid decision-making within the device scope, shortening computation latency. Compared with conventional global-local decomposition methods, this scheme avoids local inefficiencies caused by coarse global allocation and embeds global multipliers as local weights, improving the consistency of scheduling results.

[0063] 6. The Lagrange multipliers of each device are updated using iteration rounds and step size parameters. Penalty terms are dynamically added or removed based on the difference between the current allocation and the load, and overall convergence is determined by a preset error threshold. An incremental update rule normalized according to the load difference is introduced, which enables the multiplier update to respond quickly to overload conditions while avoiding oscillations caused by excessively large step sizes. A controllable convergence speed and accuracy balance mechanism is provided to ensure that the multipliers are stably updated to near the global optimum during scheduling. Compared with fixed step size or simple proportional updates, the normalization and threshold determination mechanism of this scheme is more conducive to efficient convergence in large-scale scenarios.

[0064] 7. After meeting the convergence criteria based on a preset error threshold, the scheme constructs a scheduling task set for each device according to the converged global allocation results, and generates a sorted execution sequence in ascending order of remaining response time, which is then distributed to the corresponding device for execution. Combining global optimal allocation with local time-sensitive sorting ensures that important tasks are prioritized while also considering the urgency of execution timing. The final distributed sequence truly satisfies the time window constraints of each task while ensuring global goal optimization. Compared to traditional one-time allocation or simple FIFO execution, this scheme provides superior execution performance and a higher task completion rate. Attached Figure Description

[0065] Figure 1 This is a schematic diagram of the process of the present invention. Detailed Implementation

[0066] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0067] Example, refer to Figure 1 Inspection methods based on multi-device collaboration include:

[0068] Get the independent inspection tasks within the scheduling period, establish a task set, and register the task generation time parameter, expected execution duration parameter, maximum allowed response time parameter, and task type parameter;

[0069] Obtain the inspection equipment that can participate in the scheduling, establish the equipment set, register the start absolute time parameter, the maximum running time limit parameter of the inspection equipment and the equipment type parameter, and construct the task equipment executability matrix;

[0070] The system time is obtained on the timeline, the remaining response time is calculated based on the task parameters, the response pressure is constructed based on the remaining response time, and a normalized task priority is generated by combining the execution duration.

[0071] Set up a Boolean variable for task device allocation and establish unique task allocation constraints, maximum device load constraints, and task executability constraints.

[0072] A Lagrange objective function is constructed using task parameters, equipment parameters, task and equipment allocation Boolean variables, and Lagrange multipliers. The objective function is maximized under the constraints of unique task allocation, maximum equipment load, and task executability.

[0073] For each inspection device, the task is selected from largest to smallest based on the task device executability matrix and task density to generate the task device allocation result;

[0074] The Lagrange multipliers of each inspection device are updated using step size and load difference in iteration rounds, and the convergence of the task device allocation results is checked.

[0075] After the convergence condition determined by the convergence judgment error threshold is met, a task execution sequence sorted by the remaining response time is generated for each inspection device according to the converged task device allocation result, and then sent to the corresponding inspection device for execution.

[0076] By standardizing the registration of all inspection tasks and equipment parameters, the problems of inconsistent task attributes and difficulty in quantifying equipment capabilities in traditional systems are avoided. By combining response pressure and execution duration to generate normalized priorities, a balance between time urgency and workload cost is achieved, resolving the issues of task starvation or excessive priority given to short tasks due to sorting solely by remaining time or workload. By establishing three types of constraints—unique task allocation, maximum equipment load, and executability—it is ensured that each task is allocated to at most one device, equipment is not overloaded, and the task is guaranteed to be executed. By incorporating these constraints, priorities, and equipment parameters into the Lagrange objective function, multi-constraint inspection scheduling is transformed into a solvable optimization model for the first time, achieving multi-objective coordination. Through local density sorting subset selection, both global optimality is maintained and executable subsequences are quickly obtained on each device, solving the problem of difficulty in global optimization in large-scale scenarios. Multiplier iterative updates and convergence judgment ensure algorithm convergence performance and load balance, avoiding oscillations and prolonged non-convergence. Finally, an execution sequence ordered by remaining response time is generated, ensuring true time window constraints and further improving task completion rate. Compared with existing static assignment or single-dimensional heuristic methods, this scheme achieves closed-loop optimization of scheduling and execution, improving the response efficiency and resource utilization of the inspection system.

[0077] The process of acquiring independent inspection tasks within the scheduling period, establishing a task set, and registering task generation time parameters, estimated execution duration parameters, maximum allowed response time parameters, and task type parameters specifically includes:

[0078] Within the current scheduling period, receive multiple independent inspection tasks, count the total number of independent inspection tasks, and assign a task number index to each independent inspection task.

[0079] Create a task set according to the task number index, and create a corresponding task object for each independent inspection task in the task set;

[0080] In each task object, set the task generation time parameter, the expected execution duration parameter, the maximum allowed response time parameter from the time the task is generated, and the task type parameter. Different values ​​of the task type parameter represent daily inspection tasks, emergency tasks, and linkage tasks, respectively.

[0081] The total number of independent inspection tasks received within the current scheduling period is denoted as . Record the task number index as ;

[0082] Establish a task set ;in, For the number A single inspection task object;

[0083] Each task object contains the following parameter field: Task generation time The estimated time required to execute the task Maximum response time from the time of generation and task type number ;in, For the task The moment of generation; For the task The expected execution duration; For the task The maximum allowed response time from the moment of generation; For the task The type identifier, with a set of values. 1 indicates routine inspection, 2 indicates emergency tasks, and 3 indicates joint tasks.

[0084] The process of acquiring inspection equipment that can participate in scheduling, establishing an equipment set, registering the start absolute time parameter, the maximum running time limit parameter of the inspection equipment, and the equipment type parameter, and constructing a task equipment executability matrix specifically includes:

[0085] Within the current scheduling cycle, obtain the inspection equipment that can participate in the scheduling, count the total number of inspection equipment, and assign an equipment number to each inspection equipment.

[0086] Create an equipment set according to the equipment number, and create a corresponding equipment object for each inspection equipment in the equipment set;

[0087] In each device object, set the absolute start time parameter for when the task can be started, the maximum running time limit parameter for the inspection device, and the device type parameter. Different values ​​of the device type parameter represent ground robots, aerial drones, and fixed equipment, respectively.

[0088] A task-device executability matrix is ​​constructed based on the task set and the device set. Each element in the matrix is ​​set as a Boolean value, indicating whether the corresponding inspection device has the ability to execute the corresponding task. The executable state and the non-executable state correspond to the two values ​​of the matrix element, respectively.

[0089] The total number of inspection devices available for scheduling in this cycle is denoted as . Record the equipment number as ;

[0090] Establish a device collection as ;in, For the number A single inspection equipment object;

[0091] Each device Includes the following structure fields: Device The absolute start time of tasks that can begin execution within the current scheduling period. ,equipment Maximum allowed runtime during a single continuous run ,equipment Device type identifier Among them, equipment type identifier The set of values ​​is 1 represents a ground robot, 2 represents an aerial drone, and 3 represents a fixed device;

[0092] Build a task device executability matrix The matrix elements are as follows:

[0093] ;in, Task device executability matrix The Middle Line number The elements of the column, when Time indicates device Capable of performing tasks The ability, when This indicates that the person does not possess the ability.

[0094] The process of acquiring system time on the timeline, calculating remaining response time based on task parameters, constructing response pressure based on the remaining response time, and generating normalized task priority by combining the execution duration specifically includes:

[0095] Obtain the current system time on a unified timeline;

[0096] For each task in the task set, the remaining response time parameter is calculated by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter;

[0097] For each task in the task set, a response pressure parameter is constructed based on the remaining response time parameter. When the remaining response time parameter is not less than zero, the response pressure parameter is obtained by taking the reciprocal of the sum of the remaining response time parameter and the preset positive real constant. When the remaining response time parameter is less than zero, the response pressure parameter is obtained by taking the reciprocal of the preset positive real constant.

[0098] For each task in the task set, the original non-normalized priority parameter is obtained by multiplying the response pressure parameter by the expected execution duration parameter;

[0099] Find the maximum value among the unnormalized priority parameters of all tasks. When the maximum value is greater than zero, obtain the normalized task priority parameter of each task by dividing the unnormalized priority parameter of each task by the maximum value. When the maximum value is equal to zero, set the normalized task priority parameter of all tasks to the same preset value.

[0100] Get the system time on the current unified timeline, denoted as ;

[0101] Computational tasks The remaining response time is ;

[0102] The response stress function is constructed as follows: ;in, For the task The response pressure value; It is a positive real constant used to prevent the denominator from being zero and to control... The upper bound;

[0103] Computational tasks Unnormalized priority raw values ;

[0104] The task priorities are normalized as follows:

[0105] ;in, For the task Normalization priority; This is a task index variable.

[0106] The step of setting up task device allocation Boolean variables and establishing unique task allocation constraints, maximum device load constraints, and task executability constraints specifically includes:

[0107] For each pair of tasks and inspection equipment in the task set and equipment set, a task-equipment allocation Boolean variable is set. When a task is allocated to an inspection equipment, the corresponding Boolean variable is set to a value representing the allocation status. When a task is not allocated, the corresponding Boolean variable is set to a value representing the unallocated status. Initially, all task-equipment allocation Boolean variables are uniformly set to a value representing the unallocated status.

[0108] For each task in the task set, a Boolean variable is assigned and summed for all task devices related to the corresponding task. By constraining the summation value to not exceed one, a unique task assignment constraint is formed.

[0109] For each inspection device in the equipment set, assign Boolean variables to all task devices related to the corresponding inspection device and sum them up according to the expected execution duration parameter of the corresponding task. By constraining the weighted sum value to not exceed the maximum running time limit parameter of the inspection device, the maximum load constraint of the device is formed.

[0110] Based on the task and equipment executability matrix, for each pair of tasks and inspection equipment, when the corresponding element in the task and equipment executability matrix is ​​in an unexecutable state, the corresponding task and equipment allocation Boolean variable is fixed to the value representing the unallocated state. Only when the corresponding element in the task and equipment executability matrix is ​​in an executable state is the corresponding task and equipment allocation Boolean variable allowed to take the value of the allocated state.

[0111] The boolean variable to be assigned to the device for the construction task is:

[0112] ;in, For the task and The allocation decision variable between them takes a value of 2 to represent the task. Assigned to device A value of 0 indicates that the allocation is not complete;

[0113] And for all Set initial value: ;

[0114] The uniqueness constraint for the construction task is: , ;

[0115] The maximum load constraint for the constructed device is: , ;

[0116] The executability limitations of the build task are: , .

[0117] The process of constructing a Lagrange objective function using task parameters, equipment parameters, task-equipment allocation Boolean variables, and Lagrange multipliers, and maximizing the objective function under task unique allocation constraints, maximum equipment load constraints, and task executability constraints, specifically includes:

[0118] For each inspection device in the equipment set, a Lagrange multiplier parameter corresponding to the maximum load constraint of the device is introduced, and a Lagrange multiplier parameter is set for each inspection device.

[0119] Based on the normalized task priority parameter, expected execution duration parameter, maximum running time limit parameter of inspection equipment, task equipment allocation Boolean variable, and Lagrange multiplier parameter of each inspection equipment in the task set, a Lagrange objective function is constructed. The benefit term is obtained by summing the products of the normalized task priority parameter of all task and inspection equipment combinations and the corresponding task equipment allocation Boolean variable. The penalty term is obtained by summing the products of the Lagrange multiplier parameter of all inspection equipment and the difference between the total execution time of the assigned tasks of the corresponding inspection equipment and the maximum running time limit parameter of the inspection equipment. At the same time, the product of the Lagrange multiplier parameter of each inspection equipment and the maximum running time limit parameter of the corresponding inspection equipment is added to form a constant term.

[0120] By using Boolean variables for task and equipment allocation as decision variables and a Lagrange objective function as the optimization objective, and taking the maximum value of the Lagrange objective function under the premise of satisfying the constraints of unique task allocation, maximum equipment load, and task executability, the problem of task and inspection equipment allocation optimization is obtained.

[0121] For each device Introducing Lagrange multipliers ;in, To be compatible with equipment The Lagrange multipliers associated with the maximum running time constraint;

[0122] Construct the Lagrange function as follows:

[0123] ;in, The value of the Lagrange objective function;

[0124] The objective is: Under the conditions of satisfying the task uniqueness constraint, the maximum load constraint of the equipment, and the task executability constraint.

[0125] For each inspection device, the task generation and assignment results are determined by selecting tasks from largest to smallest based on the task device executability matrix and task density. Specifically, this includes:

[0126] For each inspection device in the device set, a local task scheduling candidate set for the corresponding inspection device is constructed based on the task index in the task device executability matrix where the corresponding element is executable.

[0127] For each task in the local task scheduling candidate set, the task density parameter of the corresponding task on the corresponding inspection equipment is calculated using the normalized task priority parameter, the expected execution duration parameter of the corresponding task, and the Lagrange multiplier parameter of the corresponding inspection equipment. When the expected execution duration parameter is greater than zero, the task density parameter is obtained by subtracting the product of the Lagrange multiplier parameter and the expected execution duration parameter from the normalized task priority parameter and then dividing by the expected execution duration parameter. When the expected execution duration parameter is equal to zero, the task density parameter is set to a preset positive real constant.

[0128] For each inspection device in the device set, based on the task density parameters of each task on the corresponding inspection device, the tasks in the local task scheduling candidate set are sorted from largest to smallest according to the task density parameters, and a task index sorting sequence associated with the corresponding inspection device is generated.

[0129] For each inspection device in the device set, initialize the total execution time of the selected tasks for the corresponding inspection device to zero, and initialize the set of selected tasks for the corresponding inspection device to an empty set;

[0130] For each inspection device in the device set, candidate tasks are selected sequentially according to the task index sorting sequence. The sum of the execution time of the currently selected tasks of the corresponding inspection device and the expected execution duration of the current candidate task is calculated. When the sum does not exceed the maximum running time limit of the inspection device, and the task device allocation Boolean variables corresponding to the current candidate task of all inspection devices are in an unallocated state, the current candidate task is added to the selected task set of the corresponding inspection device, the total execution time of the selected tasks of the corresponding inspection device is updated to the sum, and the task device allocation Boolean variable between the current candidate task and the corresponding inspection device is set to the value representing the allocation status. When any condition is not met, the current values ​​of the selected task set of the corresponding inspection device, the total execution time of the selected tasks, and the task device allocation Boolean variables of all inspection devices remain unchanged, and the next candidate task in the sorting sequence is processed.

[0131] After all candidate tasks have been processed, for each inspection device in the device set, based on the selected task set of the corresponding inspection device, the task device allocation Boolean variable between the tasks belonging to the selected task set and the corresponding inspection device is set to a value indicating the allocation status, and the task device allocation Boolean variable between the tasks not belonging to the selected task set and the corresponding inspection device is set to a value indicating the unallocated status.

[0132] For each device Construct a subset of local task scheduling as follows: ;in, For equipment A set of indexes of executable tasks;

[0133] For each The task density value is calculated as follows:

[0134] ;in, For the equipment Time Task The density value;

[0135] Will Sort in descending order, and denote the sorted index as:

[0136] , ;in, To be compatible with equipment The associated task index sequence; Based on density value The elements in the task index sequence obtained after sorting from largest to smallest; Let be the task index at the position; For location index; For set The base number, i.e., the equipment The number of executable tasks; For set The number of elements;

[0137] Initialize variables: Set the current value to the device. The total execution time of the selected tasks is ,equipment The selected task index set is ;

[0138] from Take tasks in order If the following conditions are met: And index all devices. All satisfy: Then the task will be added to the set:

[0139] , And order: ;

[0140] If the above joint conditions are not met, then maintain , And all The current value remains unchanged, and the same judgment and update process is continued for the next index until all indexes have been processed;

[0141] After all indexes have been processed, for any Set the value of the task device allocation variable to:

[0142] .

[0143] The process of updating the Lagrange multipliers of each inspection device using step size and load difference in iteration rounds, and checking the convergence of the task device allocation results, specifically includes:

[0144] Set the iteration round index for Lagrange multiplier update and task device allocation Boolean variable update. The initial iteration round index is zero. In the initial iteration round, the Lagrange multiplier parameter of each inspection device in the device set is set to zero, and the step size parameter of the current round is set according to the reciprocal of the iteration round index plus one.

[0145] In each iteration, for each inspection device in the device set, based on the task device allocation Boolean variable and the expected execution duration parameter of each task in the current round, the total execution time of the assigned tasks of the corresponding inspection device in the current round is calculated. Then, the difference between the total and the maximum running time limit parameter of the inspection device is calculated. The difference is divided by the square of the maximum running time limit parameter of the inspection device to obtain the normalized difference parameter. The normalized difference parameter is multiplied by the step size parameter of the current round and added to the Lagrange multiplier parameter value of the corresponding inspection device in the current round. The result is compared with zero. When the result is less than zero, the Lagrange multiplier parameter value of the corresponding inspection device in the next round is set to zero. When the result is not less than zero, the result is used as the Lagrange multiplier parameter value of the corresponding inspection device in the next round.

[0146] After updating the Lagrange multiplier parameters of all inspection devices, for each inspection device in the device set, the total execution time of the assigned tasks for the corresponding inspection device is recalculated based on the Boolean variable of task device allocation in the current round and the expected execution duration parameter of each task. The difference between the total and the upper limit parameter of the maximum running time of the inspection device is calculated. If the absolute value of the difference for all inspection devices does not exceed the preset convergence judgment error threshold, the iteration process is terminated and the Boolean variable of task device allocation and the Lagrange multiplier parameter value of the current round are retained. If the absolute value of the difference for at least one inspection device exceeds the preset convergence judgment error threshold, the iteration round index is incremented by one, the step size parameter of the next round is updated, and the next round of iteration continues.

[0147] Initialization parameters: Set the iteration round index for Lagrange multiplier updates and allocation variable updates. For all Take the initial multiplier values Step size is ;in, For equipment The initial values ​​of the Lagrange multipliers in the 0th iteration; In the first The step size parameter used in round multiplier updates;

[0148] In each iteration, update the multiplier variable, and then update the first multiplier variable. The task device allocation variable in the round iteration is denoted as And update the multipliers according to the following formula:

[0149] ;in, In the first Task device allocation variable values ​​during round iteration; For equipment In the The Lagrange multiplier values ​​during round iteration; For equipment In the The updated Lagrange multiplier values ​​during round iteration;

[0150] Stop iteration if the following conditions are met:

[0151] ;in, The allowable error threshold for convergence determination;

[0152] If the above conditions are not met, proceed to the next iteration.

[0153] After the convergence condition determined by the convergence judgment error threshold is met, a task execution sequence sorted by remaining response time is generated for each inspection device based on the converged task device allocation result, and then sent to the corresponding inspection device for execution. Specifically, this includes:

[0154] After completing the multiplier update and task device allocation optimization, for each inspection device in the device set, based on the value of the final task device allocation Boolean variable, collect all tasks whose task device allocation Boolean variables are in the allocation state with the corresponding inspection device, and construct the scheduling task set of the corresponding inspection device.

[0155] Obtain the current system time on a unified timeline. For each task in the scheduling task set of each inspection device, calculate the remaining response time parameter of each task by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter.

[0156] For each inspection device, based on the remaining response time parameters of each task in its scheduling task set, the tasks in the scheduling task set are sorted in ascending order of remaining response time parameters, generating a corresponding task index sorting sequence.

[0157] For each inspection device, the number of tasks in the sorted task index sequence is counted, and the number is used as the number of tasks that the corresponding inspection device needs to execute in the current scheduling cycle.

[0158] For each inspection device, based on the correspondence between the task position and the task number in the task index sorting sequence, a sorted task execution sequence for the corresponding inspection device is constructed, such that the remaining response time parameter of the task corresponding to any previous position in the sorted task execution sequence is not greater than the remaining response time parameter of the task corresponding to the next position.

[0159] The sorted task execution sequence of each inspection device is sent to the corresponding inspection device, and each inspection device is controlled to execute the tasks in the scheduled task set in the order of its sorted task execution sequence until all tasks in the current scheduling cycle are completed.

[0160] For each device The set of scheduled tasks is constructed as follows: ;in, For devices generated based on the final assignment variables The task set;

[0161] Execute steps S801 to S804 to process the set The tasks in the list are sorted in ascending order of remaining response time, as follows:

[0162] S801, The sorting function is constructed as follows: ;in, For the purpose of the task The remaining response time metric;

[0163] S802. Calculate the length of the sorted sequence as follows: ;in, For equipment The actual number of tasks that need to be executed;

[0164] S803, Constructing the permutation mapping If satisfied Then we have:

[0165] ;in, This is the position index in the sorted execution sequence; For the equipment Task index permutation mapping, with position index as input. The output is the task index corresponding to that position. ;

[0166] S804. The sorted task sequence is constructed as follows:

[0167] ;in, For equipment The task execution sequence sorted in ascending order of remaining response time;

[0168] The task sequence is issued to each device in sequence. The task execution process is completed sequentially, and the scheduling ends.

[0169] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus.

[0170] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the technical principles of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A multi-device collaborative inspection method, characterized in that, include: Get the independent inspection tasks within the scheduling period, establish a task set, and register the task generation time parameter, expected execution duration parameter, maximum allowed response time parameter, and task type parameter; The process of acquiring independent inspection tasks within the scheduling period, establishing a task set, and registering task generation time parameters, estimated execution duration parameters, maximum allowed response time parameters, and task type parameters specifically includes: Within the current scheduling period, receive multiple independent inspection tasks, count the total number of independent inspection tasks, and assign a task number index to each independent inspection task. Create a task set according to the task number index, and create a corresponding task object for each independent inspection task in the task set; In each task object, set the task generation time parameter, the expected execution duration parameter, the maximum allowed response time parameter from the time the task is generated, and the task type parameter. Different values ​​of the task type parameter represent daily inspection tasks, emergency tasks, and linkage tasks, respectively. Obtain the inspection equipment that can participate in the scheduling, establish the equipment set, register the start absolute time parameter, the maximum running time limit parameter of the inspection equipment and the equipment type parameter, and construct the task equipment executability matrix; The process of acquiring inspection equipment that can participate in scheduling, establishing an equipment set, registering the start absolute time parameter, the maximum running time limit parameter of the inspection equipment, and the equipment type parameter, and constructing a task equipment executability matrix specifically includes: Within the current scheduling cycle, obtain the inspection equipment that can participate in the scheduling, count the total number of inspection equipment, and assign an equipment number to each inspection equipment. Create an equipment set according to the equipment number, and create a corresponding equipment object for each inspection equipment in the equipment set; In each device object, set the absolute start time parameter for when the task can be started, the maximum running time limit parameter for the inspection device, and the device type parameter. Different values ​​of the device type parameter represent ground robots, aerial drones, and fixed equipment, respectively. A task-device executability matrix is ​​constructed based on the task set and the device set. Each element in the matrix is ​​set as a Boolean value, indicating whether the corresponding inspection device has the ability to execute the corresponding task. The executable state and the non-executable state correspond to the two values ​​of the matrix element, respectively. The system time is obtained on the timeline, the remaining response time is calculated based on the task parameters, the response pressure is constructed based on the remaining response time, and a normalized task priority is generated by combining the execution duration. The process of acquiring system time on the timeline, calculating remaining response time based on task parameters, constructing response pressure based on the remaining response time, and generating normalized task priority by combining the execution duration specifically includes: Obtain the current system time on a unified timeline; For each task in the task set, the remaining response time parameter is calculated by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter; For each task in the task set, a response pressure parameter is constructed based on the remaining response time parameter. When the remaining response time parameter is not less than zero, the response pressure parameter is obtained by taking the reciprocal of the sum of the remaining response time parameter and the preset positive real constant. When the remaining response time parameter is less than zero, the response pressure parameter is obtained by taking the reciprocal of the preset positive real constant. For each task in the task set, the original non-normalized priority parameter is obtained by multiplying the response pressure parameter by the expected execution duration parameter; The maximum value is obtained from the original non-normalized priority parameters of all tasks. When the maximum value is greater than zero, the normalized task priority parameter of each task is obtained by dividing the original non-normalized priority parameter of each task by the maximum value. When the maximum value is equal to zero, the normalized task priority parameter of all tasks is uniformly set to the same preset value. Set up a Boolean variable for task device allocation and establish unique task allocation constraints, maximum device load constraints, and task executability constraints. The step of setting up task device allocation Boolean variables and establishing unique task allocation constraints, maximum device load constraints, and task executability constraints specifically includes: For each pair of tasks and inspection equipment in the task set and equipment set, a task-equipment allocation Boolean variable is set. When a task is allocated to an inspection equipment, the corresponding Boolean variable is set to a value representing the allocation status. When a task is not allocated, the corresponding Boolean variable is set to a value representing the unallocated status. Initially, all task-equipment allocation Boolean variables are uniformly set to a value representing the unallocated status. For each task in the task set, a Boolean variable is assigned and summed for all task devices related to the corresponding task. By constraining the summation value to not exceed one, a unique task assignment constraint is formed. For each inspection device in the equipment set, assign Boolean variables to all task devices related to the corresponding inspection device and sum them up according to the expected execution duration parameter of the corresponding task. By constraining the weighted sum value to not exceed the maximum running time limit parameter of the inspection device, the maximum load constraint of the device is formed. Based on the task and equipment executability matrix, for each pair of tasks and inspection equipment, when the corresponding element in the task and equipment executability matrix is ​​in an unexecutable state, the corresponding task and equipment allocation Boolean variable is fixed to the value representing the unallocated state. Only when the corresponding element in the task and equipment executability matrix is ​​in an executable state is the corresponding task and equipment allocation Boolean variable allowed to take the value of the allocated state. A Lagrange objective function is constructed using task parameters, equipment parameters, task and equipment allocation Boolean variables, and Lagrange multipliers. The objective function is maximized under the constraints of unique task allocation, maximum equipment load, and task executability. The process of constructing a Lagrange objective function using task parameters, equipment parameters, task-equipment allocation Boolean variables, and Lagrange multipliers, and maximizing the objective function under task unique allocation constraints, maximum equipment load constraints, and task executability constraints, specifically includes: For each inspection device in the equipment set, a Lagrange multiplier parameter corresponding to the maximum load constraint of the device is introduced, and a Lagrange multiplier parameter is set for each inspection device. Based on the normalized task priority parameter, expected execution duration parameter, maximum running time limit parameter of inspection equipment, task equipment allocation Boolean variable, and Lagrange multiplier parameter of each inspection equipment in the task set, a Lagrange objective function is constructed. The benefit term is obtained by summing the products of the normalized task priority parameter of all task and inspection equipment combinations and the corresponding task equipment allocation Boolean variable. The penalty term is obtained by summing the products of the Lagrange multiplier parameter of all inspection equipment and the difference between the total execution time of the assigned tasks of the corresponding inspection equipment and the maximum running time limit parameter of the inspection equipment. At the same time, the product of the Lagrange multiplier parameter of each inspection equipment and the maximum running time limit parameter of the corresponding inspection equipment is added to form a constant term. Using Boolean variables for task and equipment allocation as decision variables and Lagrange objective function as optimization objective, under the premise of satisfying the unique task allocation constraint, maximum equipment load constraint and task executability constraint, the maximum value of Lagrange objective function is taken to obtain the expression form of task and inspection equipment allocation optimization problem; For each inspection device, the task is selected from largest to smallest based on the task device executability matrix and task density to generate the task device allocation result; For each inspection device, the task generation and assignment results are determined by selecting tasks from largest to smallest based on the task device executability matrix and task density. Specifically, this includes: For each inspection device in the device set, a local task scheduling candidate set for the corresponding inspection device is constructed based on the task index in the task device executability matrix where the corresponding element is executable. For each task in the local task scheduling candidate set, the task density parameter of the corresponding task on the corresponding inspection equipment is calculated using the normalized task priority parameter, the expected execution duration parameter of the corresponding task, and the Lagrange multiplier parameter of the corresponding inspection equipment. When the expected execution duration parameter is greater than zero, the task density parameter is obtained by subtracting the product of the Lagrange multiplier parameter and the expected execution duration parameter from the normalized task priority parameter and then dividing by the expected execution duration parameter. When the expected execution duration parameter is equal to zero, the task density parameter is set to a preset positive real constant. For each inspection device in the device set, based on the task density parameters of each task on the corresponding inspection device, the tasks in the local task scheduling candidate set are sorted from largest to smallest according to the task density parameters, and a task index sorting sequence associated with the corresponding inspection device is generated. For each inspection device in the device set, initialize the total execution time of the selected tasks for the corresponding inspection device to zero, and initialize the set of selected tasks for the corresponding inspection device to an empty set; For each inspection device in the device set, candidate tasks are selected sequentially according to the task index sorting sequence. The sum of the execution time of the currently selected tasks of the corresponding inspection device and the expected execution duration of the current candidate task is calculated. When the sum does not exceed the maximum running time limit of the inspection device, and the task device allocation Boolean variables corresponding to the current candidate task of all inspection devices are in an unallocated state, the current candidate task is added to the selected task set of the corresponding inspection device, the total execution time of the selected tasks of the corresponding inspection device is updated to the sum, and the task device allocation Boolean variable between the current candidate task and the corresponding inspection device is set to the value representing the allocation status. When any condition is not met, the current values ​​of the selected task set of the corresponding inspection device, the total execution time of the selected tasks, and the task device allocation Boolean variables of all inspection devices remain unchanged, and the next candidate task in the sorting sequence is processed. After all candidate tasks have been processed, for each inspection device in the device set, based on the selected task set of the corresponding inspection device, the task device allocation boolean variable between the task belonging to the selected task set and the corresponding inspection device is set to a value indicating the allocation status, and the task device allocation boolean variable between the task not belonging to the selected task set and the corresponding inspection device is set to a value indicating the unallocated status. The Lagrange multipliers of each inspection device are updated using step size and load difference in iteration rounds, and the convergence of the task device allocation results is checked. After the convergence condition determined by the convergence judgment error threshold is met, a task execution sequence sorted by the remaining response time is generated for each inspection device according to the converged task device allocation result, and then sent to the corresponding inspection device for execution.

2. The inspection method based on multi-device collaboration according to claim 1, characterized in that, The process of updating the Lagrange multipliers of each inspection device using step size and load difference in iteration rounds, and checking the convergence of the task device allocation results, specifically includes: Set the iteration round index for Lagrange multiplier update and task device allocation Boolean variable update. The initial iteration round index is zero. In the initial iteration round, the Lagrange multiplier parameter of each inspection device in the device set is set to zero, and the step size parameter of the current round is set according to the reciprocal of the iteration round index plus one. In each iteration, for each inspection device in the device set, based on the task device allocation Boolean variable and the expected execution duration parameter of each task in the current round, the total execution time of the assigned tasks of the corresponding inspection device in the current round is calculated. Then, the difference between the total and the maximum running time limit parameter of the inspection device is calculated. The difference is divided by the square of the maximum running time limit parameter of the inspection device to obtain the normalized difference parameter. The normalized difference parameter is multiplied by the step size parameter of the current round and added to the Lagrange multiplier parameter value of the corresponding inspection device in the current round. The result is compared with zero. When the result is less than zero, the Lagrange multiplier parameter value of the corresponding inspection device in the next round is set to zero. When the result is not less than zero, the result is used as the Lagrange multiplier parameter value of the corresponding inspection device in the next round. After updating the Lagrange multiplier parameters of all inspection devices, for each inspection device in the device set, the total execution time of the assigned tasks for the corresponding inspection device is recalculated based on the Boolean variable of task device allocation in the current round and the expected execution duration parameter of each task. The difference between the total and the upper limit parameter of the maximum running time of the inspection device is calculated. If the absolute value of the difference for all inspection devices does not exceed the preset convergence judgment error threshold, the iteration process is terminated and the Boolean variable of task device allocation and the Lagrange multiplier parameter value of the current round are retained. If the absolute value of the difference for at least one inspection device exceeds the preset convergence judgment error threshold, the iteration round index is incremented by one, the step size parameter of the next round is updated, and the next round of iteration continues.

3. The inspection method based on multi-device collaboration according to claim 2, characterized in that, After the convergence condition determined by the convergence judgment error threshold is met, a task execution sequence sorted by remaining response time is generated for each inspection device based on the converged task device allocation result, and then sent to the corresponding inspection device for execution. Specifically, this includes: After completing the multiplier update and task device allocation optimization, for each inspection device in the device set, based on the value of the final task device allocation Boolean variable, collect all tasks whose task device allocation Boolean variables are in the allocation state with the corresponding inspection device, and construct the scheduling task set of the corresponding inspection device. Obtain the current system time on a unified timeline. For each task in the scheduling task set of each inspection device, calculate the remaining response time parameter of each task by subtracting the sum of the current system time and the task generation time parameter from the maximum allowed response time parameter. For each inspection device, based on the remaining response time parameters of each task in its scheduling task set, the tasks in the scheduling task set are sorted in ascending order of remaining response time parameters, generating a corresponding task index sorting sequence. For each inspection device, the number of tasks in the sorted task index sequence is counted, and the number is used as the number of tasks that the corresponding inspection device needs to execute in the current scheduling cycle. For each inspection device, based on the correspondence between the task position and the task number in the task index sorting sequence, a sorted task execution sequence for the corresponding inspection device is constructed, such that the remaining response time parameter of the task corresponding to any previous position in the sorted task execution sequence is not greater than the remaining response time parameter of the task corresponding to the next position. The sorted task execution sequence of each inspection device is sent to the corresponding inspection device, and each inspection device is controlled to execute the tasks in the scheduled task set in the order of its sorted task execution sequence until all tasks in the current scheduling cycle are completed.

Citation Information

Patent Citations

  • Oil depot tank field inspection robot task allocation method and system based on Internet of Things

    CN119417192A

  • Measurement and control task scheduling method based on idle time period of equipment

    CN119918894A