Multi-device cluster cooperation control method, control device and cluster cooperation system

By combining virtualization technology and Reed-Solomon coding with task offloading methods, the problems of load imbalance and insufficient robustness in unmanned equipment clusters are solved, improving the real-time performance and robustness of the system and ensuring the rapid completion of computing tasks.

CN117250865BActive Publication Date: 2026-11-06HUAZHONG UNIV OF SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311440617.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-31
Publication Date
2026-11-06
Estimated Expiration
2043-10-31

AI Technical Summary

Technical Problem

Unmanned equipment clusters suffer from load imbalance and insufficient robustness when performing computing tasks, resulting in poor real-time performance.

Method used

Virtualization technology is used to abstract devices into hosts and slaves. Combined with Reed-Solomon coding and task offloading methods, task allocation and data exchange are optimized through parameter optimization models to achieve load balancing and enhanced system robustness.

Benefits of technology

It improves the real-time performance and robustness of multi-device cluster collaboration systems, ensuring that computing tasks can still be completed quickly even in the event of device failure or uneven load.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117250865B_ABST
    Figure CN117250865B_ABST
Patent Text Reader

Abstract

This invention discloses a multi-device cluster collaborative control method, control device, and cluster collaborative system, belonging to the field of cluster collaborative computing technology. The control method includes: solving a parameter optimization model to obtain the number of redundant data blocks Δ, the minimum number of slaves s required for result integration, and a collaborative offloading matrix π; constructing a Reed-Solomon coding matrix based on the parameter Δ; guiding each device to exchange data blocks to reassemble the task based on the coding matrix; and guiding the devices to perform task offloading based on the collaborative offloading matrix π; obtaining the calculation results of the first s received slaves and decoding them to obtain the calculation results of m data blocks. This invention introduces Reed-Solomon coding technology and combines it with the task offloading process, simultaneously solving the problems of load imbalance and lack of robustness, thereby improving the real-time performance of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of cluster collaborative computing technology, and more specifically, relates to a multi-device cluster collaborative control method and control device, and a cluster collaborative system. Background Technology

[0002] Unmanned aerial vehicles (UAVs) can play a crucial role in certain scenarios. For example, in areas where infrastructure has been damaged after a disaster, UAVs can promptly arrive on-site to collect necessary data for subsequent risk assessments during detection and rescue missions. UAVs can be equipped with dedicated modules that combine communication and computing capabilities, making them the edge of mobile networks. This allows them to perform data collection, analysis, and result integration in resource-constrained environments. However, due to hardware limitations, limited energy consumption and computing power prevent single UAVs from performing computationally intensive tasks. Therefore, multiple UAVs are typically used in swarm collaboration to break down the workload and ultimately integrate the results from all devices to complete the computational task.

[0003] While cluster collaboration can alleviate computational pressure, it still suffers from poor real-time performance, primarily due to two reasons: load imbalance and lack of robustness. Load imbalance manifests as a mismatch between the computing power and workload of each unmanned device (UAV). UAVs with lower computing power may handle more computational tasks, while those with higher power may handle fewer. The UAV with the heaviest workload experiences a "weakest link" effect, leading to excessively long computational latency for the entire system, making it difficult to meet real-time requirements. Lack of robustness arises when the system encounters unexpected situations, such as external environmental factors (severe weather, physical attacks, etc.) and internal faults (power outages, CPU crashes, task timeouts caused by operating system scheduling mechanisms). Some UAVs may fail to provide timely computation results, leading to increased latency in integrating the computational results from all UAVs—a hysteresis effect—which also results in poor real-time performance. Summary of the Invention

[0004] In view of the above-mentioned defects or improvement needs of the existing technology, the present invention provides a multi-device cluster collaborative control method and control device, and a cluster collaborative system. Its purpose is to solve the load imbalance and enhance the robustness of the system, thereby improving the real-time performance of the multi-device cluster collaborative system in processing tasks.

[0005] To achieve the above objectives, according to one aspect of the present invention, a multi-device cluster collaborative control method is provided, wherein each device is abstracted as a virtual machine, and all virtual machines include a host and w slaves with the same computing power;

[0006] The control method is applied within the host computer and includes:

[0007] Step S1: Divide the dataset of the current time slot collected by the cluster into m data blocks and number them;

[0008] Step S2: Solve the parameter optimization model to obtain the number of redundant data blocks Δ, the minimum number of slaves s required for result integration, and the collaborative offloading matrix π. Each element π in the collaborative offloading matrix π... ij This represents the amount of task that device i unloads to other device j;

[0009] Step S3: Construct an ω*m virid Solomon coding matrix B based on parameters w, m, and Δ, with elements B ij Non-zero values ​​indicate that data block j is assigned to task i and each row of the matrix has k+Δ non-zero elements.

[0010] Step S4: Based on the encoding matrix B, guide each device to exchange data blocks to reassemble w tasks, with the same task located on the same device;

[0011] Step S5: Guide the device to perform task unloading based on the collaborative unloading matrix π;

[0012] Step S6: After obtaining the calculation results of the first s received slave devices, based on the decoding matrix corresponding to the Reed-Solomon coding matrix B... Decode the data to obtain the calculation results for m data blocks;

[0013] The objective function of the parameter optimization model is to reduce the latency D required to complete the transmission and computation of all data blocks. T Minimum; constraints include:

[0014] Computing power constraints for each device: In the formula, C i Let U be the number of slave devices of device i; U is the total number of devices.

[0015] Total number of slave devices constraint:

[0016] Reed-Solomon relational constraints;

[0017] Failure rate constraints: Ω represents the current slave failure rate.

[0018] In one embodiment, step S2 includes:

[0019] Step S21: Set the initial delay res0, arbitrarily set the number of redundant data blocks Δ that satisfies the Reed-Solomon relationship constraint and the failure rate constraint, and calculate the corresponding minimum number of slaves s;

[0020] Step S22: Fix the current parameter Δ and the minimum number of slaves s, solve the parameter optimization model, and obtain the current cooperative unloading matrix π;

[0021] Step S23: Determine Whether it is true or false, the determination parameter ξ is a set parameter with a value range of [0, 3]: if yes, then execute step S24; if no, then execute step S25.

[0022] Step S24: Update parameter Δ = Ω·m and update parameter s accordingly, then proceed to step S26;

[0023] Step S25: Fix the parameter π, in Search within the interval to achieve delay D T Find the smallest parameter Δ and update the corresponding parameter s;

[0024] Step S26: Calculate the time delay fluctuation Δres = |res1 - res0|, where res1 is the time delay D obtained based on the current parameters Δ, π, and s. T Determine whether Δres≤∈ is true, where∈ is a preset value: if not, proceed to step S27; otherwise, proceed to step S28.

[0025] Step S27: Set res0 = res1, then jump to step S22;

[0026] Step S28: Output the current parameters Δ, π, and s.

[0027] In one embodiment, the slave failure rate Ω is predicted based on Kalman filtering.

[0028] In one embodiment, step S4 includes:

[0029] Task alignment: guides devices to exchange data blocks to form w tasks, each task having k different data blocks. The same task is located on the same device, and different tasks have no identical data blocks.

[0030] Task assembly: Based on the correspondence between tasks and data blocks, determine a w×m dimensional alignment matrix Y, where each element Y... ij A non-zero value indicates that data block j is assigned to task i, and an instruction matrix is ​​constructed. Based on the instruction matrix P, the switching tasks of each device are guided. Each element P in matrix P is... ij A non-zero value indicates that task i is added to task j, thus assembling the task. Each assembled task has k+Δ data blocks.

[0031] In one embodiment, the task alignment process includes:

[0032] Instruct each device i to retain the data block after receiving it from device i-1. One data block, and transmit the remaining data block to device i+1, Block i The current number of data blocks for device i. This indicates rounding down x.

[0033] In one embodiment, the multi-device cluster includes a drone cluster.

[0034] In one embodiment, the multi-device cluster also includes a remote cloud.

[0035] According to another aspect of the present invention, a multi-device cluster collaborative control device is provided, the control device having a virtual machine abstracted as a host, the host being used to execute the steps of the method described above.

[0036] According to another aspect of the present invention, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described above.

[0037] According to another aspect of the present invention, a multi-device cluster collaboration system is provided, which has multiple collaborating devices and each device is abstracted as a virtual machine. All virtual machines include a host and w slaves. The device with the host is a control device, which is the multi-device cluster collaboration control device described above. The devices with slaves are used to perform data block exchange and data block calculation according to the instructions of the host and to feed back the calculation results to the host.

[0038] In summary, compared with the prior art, the above-described technical solutions conceived by this invention can achieve the following beneficial effects:

[0039] This invention introduces Reed-Solomon coding technology and combines it with a task offloading process, simultaneously solving the problems of load imbalance and lack of robustness, thereby improving the real-time performance of the system. On one hand, Reed-Solomon coding technology increases the amount of redundant data in the computational tasks, so that only a portion of the slave machine's computational results need to be returned during final result integration to arrive at a complete result. Because it is not necessary to return the computational results of all slave machines, if special circumstances prevent some slave machines from returning results on time, the fastest returned 's' results can be directly integrated. This allows for the failure of some slave machines, and even if slave machines fail, it will not affect the result integration, resulting in strong system robustness and improved real-time performance. On the other hand, this invention also includes a task offloading step. Through task offloading, the workload allocated to each device is balanced with its computing power, allowing each device to quickly complete computation and return results, thus improving system real-time performance. Moreover, this invention integrates the Reed-Solomon coding and task offloading processes, determining the optimal parameter combination for latency by solving a parameter optimization model. While ensuring the implementation of Reed-Solomon coding technology and task offloading, it further improves the system's real-time performance.

[0040] Furthermore, since the parameter optimization model has multiple variables to be decided, different solution methods will find different combined solutions. This embodiment of the invention provides a specific solution method that can quickly find a better solution result through an update-iteration approach, thereby further improving the real-time performance of the system.

[0041] Furthermore, this embodiment of the invention provides a specific task reorganization method, which can quickly reorganize tasks that match the encoding matrix B by aligning tasks and calculating the instruction matrix, thereby further improving the real-time performance of the system.

[0042] Furthermore, this embodiment of the invention provides a specific task alignment method, which can quickly achieve data alignment by sequentially passing the excess data blocks of the current device to the next device, thereby further improving the real-time performance of the system. Attached Figure Description

[0043] Figure 1 A flowchart illustrating the steps of a multi-device cluster collaborative control method according to one embodiment;

[0044] Figure 2 This is a schematic diagram illustrating the task assembly process in one embodiment;

[0045] Figure 3 This is a flowchart of the model solving steps for one embodiment;

[0046] Figure 4 This is a flowchart of the task refactoring steps in one embodiment;

[0047] Figure 5 This is a schematic diagram illustrating the working interaction process between a host and a slave device according to one embodiment.

[0048] Figure 6 This is a schematic diagram comparing the effects of one embodiment of the present invention with a comparative example. Detailed Implementation

[0049] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.

[0050] To understand this invention, a multi-device cluster collaboration system is first introduced. A multi-device cluster collaboration system comprises multiple devices with computing capabilities. The computing power of different devices is not entirely the same. When analyzing a specific environment, different devices can collect different data. These devices communicate with each other and exchange data. Each device needs to perform calculations on the data it is responsible for. After all devices aggregate their respective computational results, the final environmental analysis result is obtained. During this process, if there is uneven device load, with devices having lower computing power undertaking more data computation tasks, they will spend more time completing their assigned data computations, resulting in a longer latency in the final result integration. Alternatively, if a hysteresis effect occurs, i.e., some devices fail to operate normally due to unforeseen circumstances, and the system lacks robustness, this will also lead to a longer latency in the final result integration.

[0051] Based on this, this invention employs virtualization technology to abstract the CPU, memory, hard disk, and network resources of various devices, enabling a single physical machine to run multiple virtual machines with different operating systems. On one hand, virtualization technology achieves application isolation, allowing different tasks performed using the same hardware to be developed and maintained by different teams. On the other hand, virtualization technology achieves high reliability, fault tolerance, and strong scalability, greatly improving security and unlocking the potential of intelligent hardware. Simultaneously, this invention also adopts a distributed system master-slave structure, dividing the virtual machines into one master and w slaves, each slave having the same computing power. Therefore, devices with high computing power abstract more virtual machines, while devices with low computing power abstract fewer virtual machines. The master can perceive global information, knowing the number of virtual machines on each device, data acquisition status, energy consumption status, etc., and is responsible for guiding the slaves to work. By injecting redundant coding and performing collaborative offloading, load imbalance is resolved and system robustness is enhanced, thereby improving the system's real-time performance. A detailed description follows.

[0052] It should be noted that the equipment in this invention refers to unmanned equipment with task processing capabilities, but the type of equipment is not limited. It can be drones, unmanned surface vessels, etc. The following embodiments use drones as an example. At the same time, the cluster of devices participating in the calculation can include devices that only participate in calculation and not in data collection. For example, it can include remote clouds. By adding remote clouds, a cloud-edge computing system is formed. Edge computing and cloud computing can complement each other and help each other.

[0053] First, the key parameters involved in this invention are explained, as shown in Table 1 below:

[0054] Table 1 defines some of the symbols and their descriptions.

[0055]

[0056] Example 1

[0057] like Figure 1 The diagram shows a flowchart of a multi-device cluster collaborative control method in one embodiment, which is applied within a host. The following provides a detailed description of each step.

[0058] Step S1: Divide the dataset of the current time slot collected by the cluster into m data blocks and number them.

[0059] At the start of each time slot, each unmanned device will collect data. The host with global information perception capabilities will obtain information about the collected data. If the complete data collected by the unmanned device cluster is statistically summarized into a dataset... It contains N data points, that is The entire device cluster's computational task is to analyze these N points and additively integrate all the analysis results. Specifically, an image can be created for the dataset within the host machine. To enable distributed processing, the host machine will divide the dataset into m blocks based on the image: Each block contains the same number of data points, N / m, and there are no overlapping points between any two blocks. These data blocks are numbered by the host (from 1 to m). Therefore, the host can construct a completely new data image in blocks based on the data carried by the drone.

[0060] Step S2: Solve the parameter optimization model to obtain the number of redundant data blocks Δ, the minimum number of slaves required for result integration s, and the collaborative offloading matrix π.

[0061] Wherein, each element π in the cooperative unloading matrix π ij This represents the amount of tasks that device i unloads to other device j.

[0062] The parameter optimization model includes the objective function and constraints.

[0063] The objective function is to reduce the time D required to complete the transfer and computation of all data blocks. T Minimum, meaning the shortest latency of the output integration result, which involves the transmission latency D that occurs during task unloading. Trans And the computational latency D during task calculation Comp The objective function P can be expressed in the following specific form:

[0064] min π,Δ,s (D Trans +D Comp )

[0065] The constraints include: computing power constraints for each device, total number of slave devices, Reed-Solomon relationship constraints, and failure rate constraints.

[0066] The computing power constraint C1 for each device i can be expressed as: μ i ≤C i , In the formula, C i Let μ be the number of slave devices of device i, which is a known quantity; U is the total number of devices. This constraint limits the number of tasks μ that each device will ultimately process after task offloading. i The number of slaves must not exceed the number of slaves it has; that is, a slave can be assigned a maximum of one task.

[0067] The total number of slave devices constraint C2 can be expressed as: This constraint requires that the total number of tasks assigned to all devices equal the total number of slave devices.

[0068] The Reed-Solomon relation constraint C3 can be represented as: This formula is derived from the analysis of balanced Reed-Solomon coding and defines the relationship between the number of redundant data blocks Δ and the minimum number of slaves s. That is, the balanced Reed-Solomon coding scheme introduced in this invention is based on this relationship.

[0069] Failure rate constraint C4 can be expressed as: Ω represents the slave failure rate. This formula defines the relationship between the minimum number of slaves *s* and the slave failure rate *Ω*. A higher failure rate requires fewer slaves for final integration. For example, if the historical failure rate is 30%, then to meet the following requirements... If w = 10, then s can only be a maximum of 7. If it's 8, based on the estimate of a 30% chance of three machines failing, the outcome for the 8th slave will be uncertain, rendering redundancy ineffective. Defining the failure rate as Ω, then we need to... The failure rate Ω can be estimated based on the equipment's historical operating data and the current operating environment. The failure rate Ω is defined as the percentage of nodes that cannot be delivered on time at any given moment relative to the total number of nodes. Therefore, when determining s, it is necessary to ensure... This ensures that even with w×Ω unavailable slaves, the results of all data blocks can still be correctly integrated. The determination of 's' affects the number of redundant blocks 'Δ', which in turn affects the system computation latency. Therefore, determining 'Δ' and 's' requires a trade-off between robustness requirements and system latency.

[0070] In addition, the model can also include some common constraints, such as:

[0071] It also includes energy consumption constraint C5, which is the sum of the energy consumed by each device i for task offloading and the energy consumed for task computation, E. i No more than the energy it carries Specifically, it can be expressed as:

[0072] This also includes the element π, which is understandable. ij Formal constraint C6, that is, each π ij All must be integers and not less than 0, which can be specifically represented as: π ij ≥0.

[0073] In summary, the model can be expressed as:

[0074] P:min π,Δ,s (D Trans +D Comp )

[0075] C1:

[0076] C2:

[0077] C3:

[0078] C4:

[0079] C5:

[0080] C6:

[0081] In the above model, Δ, π, and s are the variables to be decided. Based on the model, a better combination of parameters Δ, π, and s can be obtained. This model comprehensively considers the key parameters Δ and s for constructing subsequent balanced Reed-Solomon coding and the key parameter π for subsequent task offloading strategies. The obtained parameter combination Δ, π, and s can ensure the feasibility of task reorganization based on balanced Reed-Solomon coding to improve the robustness of the system, and also ensure that each device achieves load balancing after task offloading. Furthermore, by optimizing the objective function, the time consumption of both processes is minimized, thereby ensuring the real-time performance of the system in processing tasks.

[0082] Step S3: Construct the ω*m virid Solomon coding matrix B based on parameters w, m, and Δ.

[0083] Reed-Solomon codes are a classic method in the field of coding computation, typically deployed in distributed systems with a master-slave structure. They involve two intermediate stages: an encoding matrix and a decoding matrix. Once the computational redundancy (i.e., the number of tasks requiring repeated computation within the system) is determined, the encoding matrix can be established, specifying the redundant tasks dispatched by the master node to the worker nodes. After a certain number of worker nodes return their computation results, the master node calculates the decoding matrix based on the correspondence between these nodes and the row vectors of the encoding matrix, thus integrating the computation results of all the original tasks.

[0084] In this invention, after determining the number of redundant data blocks Δ, an ω*m-dimensional Reed-Solomon coding matrix B is constructed based on the conventional method for constructing a Reed-Solomon coding matrix. In the coding matrix B, element B... ij Non-zero values ​​indicate that data block j is assigned to task i and each row of the matrix has k+Δ non-zero elements. In other words, the encoding matrix B determines ω tasks and the specific k+Δ data blocks contained in each task. The linear space spanned by any s row vectors of B can contain a vector of length m consisting entirely of 1s. 1×m .

[0085] In this invention, a slave device needs to compute an additional Δ data blocks on top of the k = m / w blocks. Defining the computation task as the workload of one slave device, the redundancy introduced results in one computation task corresponding to k + Δ data blocks. Similarly, the master device no longer needs to receive feedback from all slave devices, but only needs to obtain the computation results from the fastest s slave devices.

[0086] Specifically, constructing the Reed-Solomon coding matrix B includes constructing the balanced matrix and the Vandermonde generating matrix (G matrix for short).

[0087] Construct a balance matrix M∈{0,1} w×m The weight of each row is k+Δ, and the weight of each column is k+Δ. This matrix M can be used as a mask matrix to provide a mask for B:

[0088]

[0089] Where j×d is modulo 2 multiplication.

[0090] Define matrix G (of size w×s):

[0091]

[0092] Where α is the Galois domain The generator of B. Then the i-th column of B is a vector t of size s. i The result of multiplying by G (m×1) is a total of w such vectors t. i .

[0093] And vector t j Each element is a polynomial T determined by each column of M. j The coefficient of (x): This formula ensures the unique solution property of the linear equation system, provided that s < m.

[0094] Determine the row weights k+Δ and column weights of the balancing matrix At the same time, the size w×s of the Vandermonde matrix G can be determined. This allows us to determine the encoding matrix B.

[0095] Step S4: Based on the encoding matrix B, guide each device to exchange data blocks to reassemble w tasks, with the same task located on the same device.

[0096] Since the encoding matrix B determines ω tasks and the specific k+Δ data blocks contained in each task, after determining the encoding matrix B, the host can guide the devices to exchange data so that each device contains several tasks, and the correspondence between each task and data block conforms to the correspondence in the encoding matrix B. In other words, this step guides the devices to exchange data blocks and reassemble the tasks corresponding to the encoding matrix B; this is the task assembly stage. In this step, there are no restrictions on how the devices exchange data to reassemble the tasks corresponding to the encoding matrix B; in principle, the faster the reassembled tasks are obtained, the better.

[0097] Step S5: Guide the device to perform task unloading based on the collaborative unloading matrix π.

[0098] Since the purpose of step S4 is to achieve task assembly, a load imbalance may occur after assembly, meaning the number of tasks assigned to a device may not equal the number of slave devices that can perform calculations. For example... Figure 2The diagram illustrates the task assembly process in one embodiment. Assume there are three drones: the first drone abstracts one slave, the second drone abstracts two slaves, and the third drone abstracts one master. The first drone collects five data blocks, and the second drone collects two data blocks. If the parameters obtained from the preceding steps determine that the redundant data blocks for each task are k + Δ = 4, and a specific encoding matrix B is determined, with the row vectors of matrix B indicating which four data blocks are involved in each computation task, the master node sends transmission commands to the two drones to guide data exchange between the slaves, completing the task assembly. After task assembly, a drone with weak computing power might store two computation tasks (corresponding to the first two rows of the encoding matrix), while a drone with strong computing power might store only one computation task (corresponding to the third row). This indicates a load imbalance, and the entire system is in a state of load imbalance, requiring coordinated offloading.

[0099] At this point, the collaborative unloading matrix π obtained earlier needs to be used for task unloading. Each element π in the collaborative unloading matrix π... ij This represents the amount of tasks that device i offloads to other devices j. Through collaborative offloading, the number of tasks allocated to each device is equal to the number of its slaves, thereby achieving load balancing and optimizing latency.

[0100] It is important to reiterate that task assembly in step S4 and task unloading in step S5 are two distinct steps in the data dispatch phase. Task assembly involves rearranging the data blocks held within the cluster into a series of tasks that match the encoding matrix. This ensures that the encoding calculation results of any s slaves (i.e., the encoding calculation results of any s tasks) are sufficient to recover the additive integration of all data blocks. Cooperative unloading, on the other hand, is a strategy implemented after task assembly to address load imbalance when the number of slaves and tasks on each device is mismatched. In other words, task assembly is the exchange of data blocks within a multi-device cluster, with a granularity of a single data block, while cooperative unloading is the exchange of tasks between devices, with a granularity of tasks, meaning each task has k+Δ data blocks that cannot be scrambled.

[0101] Step S6: After obtaining the calculation results of the first s received slave devices, based on the decoding matrix corresponding to the Reed-Solomon coding matrix B... Decode the data to obtain the calculation results for m data blocks.

[0102] After the task unloading in step S5 is completed, each slave device processes one task and feeds back the processing results to the master device, which then uses the decoding matrix to perform the calculations. The results are integrated to obtain the final processing result of m data blocks. Among them, the decoding matrix... The decoding matrix is ​​determined based on the s task numbers received and the encoding matrix B. Specifically, the conventional method of Reed-Solomon coding can be used to construct the decoding matrix.

[0103] For example, the encoding calculation results of s slave devices are denoted as... Based on the task index of the returned results Take the rows corresponding to these indices in B to construct a submatrix of B. Through submatrix Constructing the decoding matrix satisfy Decoding is completed based on the decoding matrix. Obtain the additive integration of all data block results.

[0104] The specific algorithm process can be set as follows:

[0105]

[0106] By following steps S1 to S6, the calculation of m data blocks can be performed, yielding the result for the current time slot. In the next time slot, the same steps can be repeated to obtain the processing result for the corresponding time slot.

[0107] In the above steps, this invention introduces Reed-Solomon coding technology and combines it with a task offloading process, simultaneously solving the problems of load imbalance and lack of robustness, thereby improving the real-time performance of the system. On one hand, Reed-Solomon coding technology can increase the amount of redundant data in the computational tasks, so that when integrating the final results, only the computational results from a portion of the slave machines need to be returned to correctly integrate the complete result. Because it is not necessary to return the computational results from all slave machines, when special circumstances prevent some slave machines from returning results on time, the fastest returned s results can be directly integrated. This allows for the failure of some slave machines, and even if slave machines fail, it will not affect the integration of results, resulting in strong system robustness and thus improving the real-time performance of the system. On the other hand, this invention also includes a task offloading step. Through task offloading, the workload allocated to each device and its computing power are balanced, allowing each device to quickly complete the computation and return the results, thereby improving the real-time performance of the system. Moreover, this invention integrates the processes of Reed-Solomon coding and task offloading, and determines the optimal parameter combination for latency by solving a parameter optimization model. While ensuring the implementation of Reed-Solomon coding technology and task offloading, it further improves the real-time performance of the system.

[0108] Example 2

[0109] Example 2 follows the same calculation steps as Example 1. Building upon Example 1, Example 2 proposes a specific model solution method for step S2. Since the parameter optimization model has multiple variables to be decided, different solution methods will yield different combined solutions. This example provides a specific solution method that can quickly find a better solution result, thereby further improving the system's real-time performance.

[0110] In this embodiment, as Figure 3 As shown, step S2 includes the following sub-steps.

[0111] Step S21: Set the initial delay res0, arbitrarily set the number of redundant data blocks Δ that satisfies the Reed-Solomon relationship constraint and the failure rate constraint, and calculate the corresponding minimum number of slaves s.

[0112] The initial delay res0 can specifically be 0.

[0113] The Reed-Solomon relationship constraints and failure rate constraints are described in Implementation Example 1, specifically as follows:

[0114] The Reed-Solomon relation constraint C3 can be represented as:

[0115] Failure rate constraint C4 can be expressed as:

[0116] In this step, we first initialize Δ in the decision variables.

[0117] Step S22: Fix the current parameter Δ and the minimum number of slaves s, solve the parameter optimization model, and obtain the current cooperative unloading matrix π.

[0118] Based on the Reed-Solomon relation, once the parameter Δ is determined, the parameter s is also determined. The entire model then has only one decision variable left, which is the cooperative unloading matrix π. This reduces the difficulty of solving the parameter optimization model. By fixing the parameters Δ and s, solving the parameter optimization model yields the corresponding parameter π.

[0119] Step S23: Determine Is it true? If yes, proceed to step S24; if no, proceed to step S25.

[0120] Specifically, the determination parameters ξ is a set parameter with a value range of [1.0, 1.3], specifically 1.1.

[0121] Step S24: Update parameter Δ = Ω·m, then proceed to step S26.

[0122] Step S25: Fix the parameter π, in Search within the interval to achieve delay DT The smallest parameter Δ.

[0123] Steps S23 to S25 are the update process for parameter Δ.

[0124] Step S26: Calculate the time delay fluctuation Δres = |res1 - res0|, where res1 is the time delay D obtained based on the current parameters Δ, π, and s. T Determine whether Δres≤∈ is true, where ∈ is a preset value: if not, proceed to step S27; otherwise, proceed to step S28.

[0125] Step S27: Set res0 = res1, then jump to step S22.

[0126] Step S28: Output the current parameters Δ, π, and s.

[0127] Steps S26 to S28 are for judging the degree of convergence of the time delay result. If the difference between the two time delay results is small, it means that the current parameter has been updated to a better degree, so the update result can be output. Otherwise, continue to update until convergence to the preset degree.

[0128] The specific algorithm can be set as follows:

[0129]

[0130] Example 3

[0131] Example 3 follows the same calculation steps as Example 1. Building upon Example 1, Example 3 proposes a specific task reconstruction method for step S4, quickly reconstructing a task that matches the encoding matrix B. For example... Figure 4 As shown, it mainly includes two stages: task alignment and task assembly.

[0132] First, task alignment is performed, which involves guiding the devices to exchange data blocks to form w tasks. Each task has k distinct data blocks, with the same task residing on the same device and no duplicate data blocks between different tasks. The purpose of task alignment is to ensure, through data interaction, that the number of data blocks on each device is an integer multiple of k, meaning each device has an integer number of tasks without added redundancy.

[0133] In one embodiment, to improve the speed of task reconfiguration, task alignment is performed as follows: Each device i is instructed to retain, after receiving the data block transmitted by device i-1, the data block... One data block, and transmit the remaining data block to device i+1, Block i The current number of data blocks for device i. This indicates rounding down x.

[0134] After task alignment, task assembly is performed, that is, based on the correspondence between tasks and data blocks, a w×m dimensional alignment matrix Y is determined, and each element Y... ij A non-zero value indicates that data block j is assigned to task i, and an instruction matrix is ​​constructed. Based on the instruction matrix P, the switching tasks of each device are guided. Each element P in matrix P is... ij A non-zero value indicates that task i is added to task j, thus assembling the task. Each assembled task has k+Δ data blocks.

[0135] Specifically, after task alignment, the host assigns numbers to the tasks, constructing a matrix Y of size w × m. The column index of the non-zero element in the i-th row of this matrix indicates which data blocks to be analyzed are in the i-th task, and the row weight is k. For example, given w = 4, m = 8, k = 2, then...

[0136]

[0137] After determining Δ = 4, assume the calculated encoding matrix is ​​as follows:

[0138]

[0139] Calculate the instruction matrix

[0140]

[0141] The element P of the matrix ij This means that the drone carrying task i transmits all data blocks corresponding to the non-zero elements of the i-th row vector in Y to the drone carrying task j, that is, merging task i and task j to form a new task j. By executing the operation of the instruction matrix, the correspondence between each task and the data block can be formed with the encoding matrix B.

[0142] The specific algorithm can be set as follows:

[0143]

[0144]

[0145] Example 4

[0146] This embodiment mentions a multi-device cluster collaborative control device. This control device has a virtual machine abstracted as a host, which is used to execute any of the multi-device cluster collaborative control methods described in the above embodiments. It is understood that this control device is a member of a multi-device cluster; for example, any unmanned device can be selected as the control device. This control device has a virtual machine abstracted as a host, and can also have virtual machines abstracted as slaves. In some embodiments, a remote cloud or similar device can also be selected as the control device. This invention does not limit the specific form of the control device with a host, as long as it has a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps of the multi-device cluster collaborative control method described above.

[0147] Example 5

[0148] The present invention also relates to a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described above.

[0149] Specifically, the memory may include high-speed random access memory, as well as non-volatile memory, such as hard disks, RAM, plug-in hard disks, smart media cards (SMC), secure digital cards (SD), flash cards, at least one disk storage device, flash memory device, or other volatile solid-state storage devices.

[0150] Example 6

[0151] The present invention also relates to a multi-device cluster collaboration system, which includes multiple collaborating devices, each of which is abstracted as a virtual machine. All virtual machines include a host and w slaves. The device with the host is a control device, which is the multi-device cluster collaboration control device in embodiment 4. The devices with slaves are used to perform data block exchange and data block calculation according to the instructions of the host and to feed back the calculation results to the host.

[0152] like Figure 5 The diagram illustrates the interaction process between the host and slave in one embodiment. The entire interaction process includes five stages: data acquisition, encoding parameter calculation, task assembly, collaborative unloading, and result integration.

[0153] The data acquisition phase includes raw data acquisition and information mapping construction. Raw data acquisition is completed by the slave device, while information mapping construction (including step S1 in the multi-device cluster collaborative control method) is completed by the host device. That is, the host device obtains the data information collected by the slave device to facilitate the subsequent guidance of the slave device to manipulate the data.

[0154] The calculation of encoding parameters, including the determination of the number of redundant blocks and the determination of the encoding matrix, is completed by the host, corresponding to steps S2 and S3 in the multi-device cluster collaborative control method.

[0155] The task assembly phase includes unordered data alignment and redundant data allocation, which is completed by the master machine guiding the slave machines, corresponding to step S4 in the multi-device cluster collaborative control method.

[0156] The collaborative unloading phase includes task collaborative unloading and encoding vector allocation, corresponding to step S5 in the multi-device cluster collaborative control method. Encoding vector allocation refers to the process after task unloading, where the host makes the slave number correspond one-to-one with the task number, which is used as the encoding vector of the slave. Then, the encoded result is obtained by multiplying the encoding vector and determining the task number corresponding to each slave. Task collaborative unloading is completed by the host guiding the slave, while encoding vector allocation is completed by the host.

[0157] The integration phase includes the return of encoding results and the integration of computation results encoding. The return of encoding results is completed by the slave device, and the integration of computation results encoding is completed by the master device, which corresponds to step S6 in the multi-device cluster collaborative control method.

[0158] Example 7

[0159] This embodiment verifies the effectiveness of the solution using a specific Wireless Sensor Network (WSN) scenario. A WSN contains a large number of sensors, requiring the reception of data from each sensor to calculate and evaluate their status. Due to the difficulty in accessing sensor systems or harsh environments, drones are deployed to collect sensor data and analyze and provide feedback. Each drone covers a different area, collecting sensor data within that area. Due to uneven sensor distribution, drones with weaker computing power may travel to densely populated sensor areas, resulting in them receiving data blocks exceeding their computing capacity. In this case, the multi-device cluster collaborative system described in Embodiment 6 is constructed to collaboratively offload and adjust the load. However, due to harsh environments, some slave devices may crash. Therefore, while performing collaborative offloading, the number of redundant blocks needs to be determined, and balanced Reed-Solomon coding is used to ensure robustness. The master-slave interaction scheme proposed in this invention is referred to as the JoCO algorithm.

[0160] Experimental results verify as follows Figure 6 As shown, the comparative scheme is a computation scheme without data reallocation, i.e., a no-coding scheme. There are 10 time slots, each randomly generating a certain number of tasks. It can be observed that the system exhibits a latency of 8.5–9 seconds in each time slot, while the comparative scheme has a latency of 31–32 seconds. The former reduces the system latency by 72.1% compared to the latter. This demonstrates that the present invention can significantly improve the real-time performance of the system.

[0161] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A multi-device cluster collaborative control method, characterized in that, Each device is abstracted as a virtual machine, and all virtual machines include one host and w slaves with the same computing power; The control method is applied within the host computer and includes: Step S1: Divide the dataset of the current time slot collected by the cluster into m data blocks and number them; Step S2: Solve the parameter optimization model to obtain the number of redundant data blocks Δ, the minimum number of slaves s required for result integration, and the collaborative offloading matrix π. Each element π in the collaborative offloading matrix π... ij This represents the amount of task that device i unloads to other device j; Step S3: Construct an ω*m virid Solomon coding matrix B based on parameters w, m, and Δ, with elements B ij Non-zero values ​​indicate that data block j is assigned to task i and each row of the matrix has k+Δ non-zero elements. Step S4: Based on the encoding matrix B, guide each device to exchange data blocks to reassemble w tasks, with the same task located on the same device; Step S5: Guide the device to perform task unloading based on the collaborative unloading matrix π; Step S6: After obtaining the calculation results of the first s received slave devices, based on the decoding matrix corresponding to the Reed-Solomon coding matrix B... Decode the data to obtain the calculation results for m data blocks; The objective function of the parameter optimization model is to reduce the latency D required to complete the transmission and computation of all data blocks. T Minimum; constraints include: Computing power constraints for each device: In the formula, C i Let U be the number of slave devices of device i; U is the total number of devices. Total number of slave devices constraint: Reed-Solomon relational constraints; Failure rate constraints: Ω represents the current slave failure rate.

2. The multi-device cluster collaborative control method as described in claim 1, characterized in that, Step S2 includes: Step S21: Set the initial delay res0, arbitrarily set the number of redundant data blocks Δ that satisfies the Reed-Solomon relationship constraint and the failure rate constraint, and calculate the corresponding minimum number of slaves s; Step S22: Fix the current parameter Δ and the minimum number of slaves s, solve the parameter optimization model, and obtain the current cooperative unloading matrix π; Step S23: Determine Whether it is true or false, the determination parameter ξ is a set parameter with a value range of [1.0, 1.3]: If yes, proceed to step S24; otherwise, proceed to step S25. Step S24: Update parameter Δ = Ω·m and update parameter s accordingly, then proceed to step S26; Step S25: Fix the parameter π, in Search within the interval to achieve delay D T Find the smallest parameter Δ and update the corresponding parameter s; Step S26: Calculate the time delay fluctuation Δres = |res1 - res0|, where res1 is the time delay D obtained based on the current parameters Δ, π, and s. T Determine whether Δres≤∈ is true, where∈ is a preset value: if not, proceed to step S27; otherwise, proceed to step S28. Step S27: Set res0 = res1, then jump to step S22; Step S28: Output the current parameters α, π, and s.

3. The multi-device cluster collaborative control method as described in claim 1, characterized in that, The slave failure rate Ω is predicted based on Kalman filtering.

4. The multi-device cluster collaborative control method as described in claim 1, characterized in that, Step S4 includes: Task alignment: guides devices to exchange data blocks to form w tasks, each task having k different data blocks. The same task is located on the same device, and different tasks have no identical data blocks. Task assembly: Based on the correspondence between tasks and data blocks, determine a w×m dimensional alignment matrix Y, where each element Y... ij A non-zero value indicates that data block j is assigned to task i, and an instruction matrix is ​​constructed. Based on the instruction matrix P, the switching tasks of each device are guided. Each element P in matrix P is... ij A non-zero value indicates that task i is added to task j, thus assembling the task. Each assembled task has k+Δ data blocks.

5. The multi-device cluster collaborative control method as described in claim 4, characterized in that, The task alignment process includes: Instruct each device i to retain the data block after receiving it from device i-1. One data block, and transmit the remaining data block to device i+1, Block i The current number of data blocks for device i. This indicates rounding down x.

6. The multi-device cluster collaborative control method as described in any one of claims 1 to 5, characterized in that, The multi-device cluster includes a drone cluster.

7. The multi-device cluster collaborative control method as described in claim 6, characterized in that, The multi-device cluster also includes a remote cloud.

8. A multi-device cluster collaborative control device, characterized in that, The control device has a virtual machine that is abstracted as a host, the host being used to perform the steps of the method according to any one of claims 1 to 7.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.

10. A multi-device cluster collaboration system, characterized in that, The system comprises multiple cooperating devices, each of which is abstracted as a virtual machine. All virtual machines include one host and w slaves. The device with the host is the control device, which is the multi-device cluster collaborative control device as described in claim 8. The devices with slaves are used to exchange data blocks, perform data block calculations, and feed back the calculation results to the host according to the instructions of the host.

Citation Information

Patent Citations

  • Cache task scheduling method and device based on multi-edge computing

    CN113296941A

  • Multi-machine cooperative task planning method considering subsystem execution capability

    CN114594794A