Unmanned cluster dynamic calculation unloading method based on crow search algorithm
By employing the Raven Search algorithm to identify task initiation nodes and dynamically adjust unloading paths in unmanned cluster systems, the problems of computational unloading lag and insufficient flexibility in dynamic scenarios are solved, achieving efficient computational task allocation and real-time response.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING BIG DATA ADVANCED TECH RES INST
- Filing Date
- 2026-01-21
- Publication Date
- 2026-05-01
AI Technical Summary
In dynamically changing scenarios, the computational offloading strategy of unmanned swarm systems is lagging and lacks flexibility, making it difficult for existing algorithms to achieve real-time optimization.
The Raven Search algorithm is used to identify the task initiating node in the unmanned swarm network, the target node is determined by randomization, and the unloading path is dynamically adjusted by combining the feasibility of task unloading and the execution adaptability conditions.
It improves the efficiency of unmanned clusters in allocating computing tasks in complex environments, enhances the system's ability to respond to emergencies, and reduces the risk of resource waste and task delays.
Smart Images

Figure CN121968205A_ABST
Abstract
Description
A Dynamic Computational Unloading Method for Unmanned Clusters Based on Raven Search Algorithm Technical Field
[0001] This application belongs to the field of unmanned swarm control, specifically relating to a method, apparatus, device, and storage medium for dynamic computational unloading of unmanned swarms based on the crow search algorithm. Background Technology
[0002] With the widespread application of unmanned platforms in military reconnaissance, disaster relief, and agricultural inspection, clustered unmanned systems are gradually becoming the mainstream development direction. Unmanned swarm systems execute tasks collaboratively through multiple platforms, possessing efficient information acquisition capabilities and flexible task scheduling capabilities. In practical applications, each unmanned platform in the swarm needs to collect environmental data in real time and perform computationally intensive tasks, such as target recognition, path planning, and status assessment. Due to the limited computing resources of a single platform, how to rationally allocate computing tasks within the swarm, especially achieving efficient computational offloading in dynamically changing scenarios, has become a key challenge for improving system performance.
[0003] In existing technologies, the computational offloading problem for unmanned swarms is usually modeled as a multi-slot static optimization problem and solved using evolutionary algorithms, heuristic methods, game theory methods, or reinforcement learning methods.
[0004] However, on the one hand, static modeling cannot respond to changes in platform status in a timely manner, resulting in a lag in the unloading strategy; on the other hand, traditional algorithms lack flexibility when dealing with complex dynamic events, making it difficult to achieve real-time optimization. Summary of the Invention
[0005] This application aims to provide a method, apparatus, device, and storage medium for dynamic computation offloading of unmanned clusters based on the crow search algorithm, which at least solves the problems of lagging and insufficient flexibility in computation offloading strategies for unmanned clusters.
[0006] In a first aspect, embodiments of this application disclose a dynamic computational unloading method for unmanned swarms based on a crow search algorithm, applied to unloading decision nodes in an unmanned swarm network. The method includes: identifying all task initiating nodes that have initiated tasks to be executed in the current task cycle within the unmanned swarm network; each task initiating node having a corresponding task execution node in the unmanned swarm network; determining a target node for each task initiating node in the unmanned swarm network using a randomization method, based on the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed; sending the node information of the target node to the corresponding task initiating node, so that the task initiating node updates the corresponding task execution node to the corresponding target node, and unloads the corresponding task to be executed according to the updated task execution node.
[0007] Secondly, this application also discloses a dynamic computational unloading device for unmanned swarms based on the crow search algorithm, applied to an unloading decision node in an unmanned swarm network, comprising: a task confirmation module, used to determine all task initiating nodes that have initiated tasks to be executed under the current task cycle in the unmanned swarm network; each task initiating node has a corresponding task execution node in the unmanned swarm network; a node selection module, used to determine a target node for each task initiating node in the unmanned swarm network according to the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed, through a randomization method; and an unloading sending module, used to send the node information of the target node to the corresponding task initiating node, so that the task initiating node updates the corresponding task execution node to the corresponding target node, and unloads the corresponding task to be executed according to the updated task execution node.
[0008] Thirdly, embodiments of this application also disclose an electronic device, including a processor and a memory, wherein the memory stores a program or instructions that can run on the processor, and the program or instructions, when executed by the processor, implement the steps of the method described in the first aspect.
[0009] Fourthly, embodiments of this application also disclose a readable storage medium storing a program or instructions that, when executed by a processor, implement the steps of the method described in the first aspect.
[0010] In summary, in this embodiment, by identifying all task initiating nodes within the task cycle, a comprehensive perception of the cluster task distribution status can be achieved, thereby providing accurate task source information for subsequent unloading decisions. This ensures the timeliness and completeness of the input data for the unloading strategy, helping to improve the response speed of the unloading decision. Furthermore, by combining the feasibility conditions for task unloading with the adaptability conditions for task execution, and using a randomized search strategy to determine the target node, global search capabilities and local perturbation mechanisms are introduced, making the unloading path more adaptable and robust in dynamic environments. This allows for dynamic adjustment of the candidate node selection strategy, effectively avoiding the problem of traditional algorithms easily getting trapped in local optima, and improving the overall optimization level of the unloading path. Finally, in the process of feeding back the target node information to the task initiating node and updating the task execution node, dynamic reconstruction of the unloading path is achieved, enabling the task initiating node to adjust the task allocation scheme in a timely manner according to the latest network status. This not only improves the real-time performance of the unloading strategy but also enhances the system's ability to respond to sudden events or resource fluctuations. Therefore, the method based on the embodiments of this application improves the efficiency of computing task allocation for unmanned clusters in complex environments by constructing dynamic unloading paths, alleviates the problems of lagging and insufficient flexibility of unloading strategies, and thus improves the success rate of task execution while reducing the risk of resource waste and task delay. Attached Figure Description
[0011] In the accompanying drawings: Figure 1 is a flowchart of a method for unmanned swarm dynamic computation unloading based on a crow search algorithm according to an embodiment of this application; Figure 2 is a schematic diagram of the method provided by an embodiment of this application in a specific scenario; Figure 3 is a flowchart of another method for unmanned swarm dynamic computation unloading based on a crow search algorithm according to an embodiment of this application; Figure 4 is a multi-swarm embodiment provided by an embodiment of this application; Figure 5 is a block diagram of an unmanned swarm dynamic computation unloading device based on a crow search algorithm according to an embodiment of this application; Figure 6 is a block diagram of an electronic device according to an embodiment of this application. Detailed Implementation
[0012] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0013] The terms "first," "second," etc., used in this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class, without limiting the number of objects; for example, a first object can be one or more. Furthermore, in this application, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects have an "or" relationship.
[0014] Figure 1 shows a dynamic calculation and unloading method for unmanned clusters based on the crow search algorithm provided in this application embodiment, which is applied to the unloading decision node in an unmanned cluster network.
[0015] The method may include the following steps: Step 101, in the unmanned cluster network, determine all task initiation nodes that have initiated tasks to be executed under the current task cycle.
[0016] Each task initiating node has a corresponding task execution node in the unmanned cluster network.
[0017] In some embodiments of this application, to accurately identify task sources and establish a basis for task allocation within a task cycle, all task initiating nodes that have initiated tasks to be executed in the current task cycle are identified in the unmanned swarm network. This process involves periodically scanning and judging the task status of each node in the network to identify the set of nodes with task initiation behavior in the current cycle. Task initiating nodes refer to nodes that generate computational tasks and require task unloading in the current cycle; their identification results directly affect the input range and scheduling accuracy of subsequent unloading strategies. Since each task initiating node has a corresponding task execution node in the network, this identification process not only clarifies the task source but also provides a structured reference for subsequent target node searching and task path construction. Thus, the system can achieve a comprehensive perception of the task distribution status within the task cycle, thereby improving the response speed of the unloading strategy and the accuracy of task scheduling.
[0018] In a specific example, as shown in Figure 2, in a scenario where a drone swarm network (comprising drones A1, A2, A3, A4 and unmanned vehicles B1, B2, B3) is used as node devices to search for and rescue stranded people (S1 and S2) in the mountains, the number of squares next to each node device represents its computing power, and the dashed lines between the nodes represent the network links between them. Within a certain task cycle, the system monitoring module identifies A1, A2, and B2A3 as the task initiating nodes for that cycle, as they have received image recognition or path planning task requests from S1 or S2, respectively. The system completes this identification process based on the node's task status identifier and task triggering conditions, and records the task execution node corresponding to each task initiating node. After identification, the system can use this node set as a basis to perform subsequent target node searches and task unloading path construction, thereby improving the targeting of task scheduling and the timeliness of system response.
[0019] Step 102: Based on the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed, the target node for each task initiating node is determined in the unmanned cluster network using a randomization method.
[0020] In some embodiments of this application, to select a more suitable task offloading target for each task initiating node in a dynamic environment, target nodes for each task initiating node are determined in the unmanned swarm network using a randomization method, based on the task offloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed. This process constructs a dual-constraint model for task offloading, comprehensively considering the offloading capability of the task source node and the task processing adaptability of the candidate target node, and uses a randomized search strategy to screen target nodes. Task offloading feasibility conditions include the node's remaining computing resources, current load status, communication bandwidth, and link correlation. Link correlation refers to the network connection strength and stability between the task initiating node and the candidate target node, typically determined by link quality indicators (such as channel capacity, packet loss rate, and latency) and the topological relationship between nodes. Task execution adaptability conditions involve the target node's processing capability for a specific task type, response latency, and task completion rate. The randomization method introduces a perturbation mechanism and a probabilistic jump strategy during the search process, improving the coverage and path diversity of the search space. In this way, the system can build more adaptive unloading paths under dynamic network structures, effectively avoiding the problem of traditional algorithms getting trapped in local optima, thereby improving the overall optimization level of task allocation and the robustness of the system.
[0021] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A1 and A3 as task initiation nodes, which respectively need to handle image recognition and path planning tasks. Based on the task offloading feasibility conditions of A1 (e.g., its computing power is only 1 unit, its current load is high, and the link with B1 is relatively stable) and the task execution adaptability conditions of B1 (e.g., its computing power is 4 units, and it has an image processing module), the system determines B1 as the target node for A1 using a randomized search strategy. Simultaneously, the system determines B3 as the target node for A3 because the link quality between B3 and A3 is better than other candidate nodes. This selection process, by introducing a perturbation factor and jump probability, avoids path fixation problems caused by uneven link distribution or uneven computing power distribution between nodes. Ultimately, the system assigns an optimal task execution target to each task initiation node, providing a high-quality node foundation for the construction of subsequent task offloading paths.
[0022] Step 103: Send the node information of the target node to the corresponding task initiation node.
[0023] When the task initiating node receives the node information of the target node, it will update the corresponding task execution node to the target node and unload the corresponding task to be executed according to the updated task execution node.
[0024] In some embodiments of this application, to construct the task unloading path and realize the actual task distribution, the system achieves global information communication and sharing in the cluster network through a centralized control architecture. This process involves the unloading decision node uniformly managing the task status, resource distribution, and link structure of all nodes in the cluster, and sending the identified target node identifier, communication parameters, and task receiving capabilities to the corresponding task initiating node. Upon receiving the target node's node information, the task initiating node updates the corresponding task execution node to the target node and unloads the corresponding task to be executed according to the updated task execution node. Because the system has real-time awareness of the entire cluster network status, the update of the task execution node not only reflects the current network structure but also allows for adjustments to the original unloading decision based on the latest information when the network dynamically changes, thereby achieving continuous optimization of the unloading path.
[0025] As shown in Figure 2, in a specific example, within a certain task cycle, the system has already determined B1 as the target node of A1 and B3 as the target node of A3 through previous steps. Subsequently, the offloading decision node sends the node information of B1 and B3 (including node ID, communication address, and current computing power status) to A1 and A3 respectively. After receiving the node information of B1, A1 updates its original task execution node to B3; similarly, A3 offloads the path planning task to B1. This update process ensures that the task distribution behavior of the task initiating node matches the processing capacity of the target node, thereby improving the success rate of task execution and reducing the risk of task delays caused by resource mismatch or unstable links.
[0026] In summary, in this embodiment, by identifying all task initiating nodes within the task cycle, a comprehensive perception of the cluster task distribution status can be achieved, thereby providing accurate task source information for subsequent unloading decisions. This ensures the timeliness and completeness of the input data for the unloading strategy, helping to improve the response speed of the unloading decision. Furthermore, by combining the feasibility conditions for task unloading with the adaptability conditions for task execution, and using a randomized search strategy to determine the target node, global search capabilities and local perturbation mechanisms are introduced, making the unloading path more adaptable and robust in dynamic environments. This allows for dynamic adjustment of the candidate node selection strategy, effectively avoiding the problem of traditional algorithms easily getting trapped in local optima, and improving the overall optimization level of the unloading path. Finally, in the process of feeding back the target node information to the task initiating node and updating the task execution node, dynamic reconstruction of the unloading path is achieved, enabling the task initiating node to adjust the task allocation scheme in a timely manner according to the latest network status. This not only improves the real-time performance of the unloading strategy but also enhances the system's ability to respond to sudden events or resource fluctuations. Therefore, the method based on the embodiments of this application improves the efficiency of computing task allocation for unmanned clusters in complex environments by constructing dynamic unloading paths, alleviates the problems of lagging and insufficient flexibility of unloading strategies, and thus improves the success rate of task execution while reducing the risk of resource waste and task delay.
[0027] Figure 3 illustrates another unmanned swarm dynamic calculation unloading method based on the crow search algorithm provided in this application embodiment, applied to the unloading decision node in an unmanned swarm network.
[0028] The method may include the following steps: Step 201, initialize a corresponding task execution node for each node in the unmanned cluster network.
[0029] In some embodiments of this application, to establish initial task execution relationships for each node in the unmanned swarm network before the start of a task cycle, a corresponding task execution node is initialized for each node in the network. This process establishes a basic mapping relationship between task initiating nodes and task execution nodes by assigning an initial task receiving target to each node in the network topology. A task execution node is the node that undertakes the actual computational tasks in the offloading strategy, and its initialization provides a structured starting point for subsequent task offloading path searching. Through this initialization operation, the system can form a complete task allocation framework before the start of the task cycle, thereby improving the efficiency of subsequent offloading path searching and the coherence of task scheduling, and providing stable initial conditions for the construction of dynamic offloading strategies.
[0030] As shown in Figure 2, in a specific example, before the start of the task cycle, the system initializes a task execution node for each node device in the graph. For example, autonomous vehicle nodes with higher computing power are preferentially assigned as the initial task execution nodes. This initialization process is completed through the system configuration module, ensuring that each drone node has a default task receiving target in the network. This initialization result provides a structured starting point for subsequent task unloading path search, enabling the system to quickly establish the mapping relationship between task initiation and execution within the task cycle, thereby improving the response speed of task scheduling and the stability of path reconstruction.
[0031] Optionally, in some embodiments of this application, in order to establish a structured expression for task unloading during the initialization phase, the system can adopt discrete computational unloading encoding as the data storage format for task allocation. This encoding method is based on a centralized control architecture, uniformly generated by the decision-making device and distributed to each task initiating node, indicating which node device should unload the computational task of each node device to. The encoding length is equal to the number of node devices capable of unloading tasks, the encoding dimension corresponds to the sequence number of these node devices, and the encoding value ranges from 0 to the number of node devices capable of receiving unloaded tasks. A value of 0 indicates that the task is performed locally on the original node device, and the remaining values represent the sequence number of the corresponding unloading target node device. This encoding method has a clear task mapping relationship in its structure, can express complex unloading strategies with low storage cost, and is suitable for the task initialization process under a centralized scheduling framework.
[0032] In a specific example, suppose an unmanned swarm network contains 6 drones and 3 unmanned vehicles. The discrete computation offloading code generated by the system is: [1,1,2,0,3,3]. This code indicates that the perception computation tasks of drones 1 and 2 are offloaded to unmanned vehicle 1, drone 3 is offloaded to unmanned vehicle 2, drones 5 and 6 are offloaded to unmanned vehicle 3, while drone 4 completes its computation task locally. Subsequently, during individual initialization and iteration, the system performs a rounding operation on each bit of the code, thus achieving an effective mapping from the continuous search space to the discrete task allocation space.
[0033] Step 202: In the unmanned cluster network, identify all task initiation nodes that have initiated tasks to be executed under the current task cycle.
[0034] Each task initiating node has a corresponding task execution node in the unmanned cluster network.
[0035] The method shown in this step has been explained in step 101 and will not be repeated here.
[0036] Step 203: Based on the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed, the target node for each task initiating node is determined in the unmanned cluster network using a randomization method.
[0037] The method shown in this step has been explained in step 102 and will not be repeated here.
[0038] Optionally, step 203 includes the following sub-steps: Sub-step 2031, randomly select a candidate node in the unmanned cluster network for each task initiating node, and determine the feasibility of the candidate node to unload the task from the task initiating node.
[0039] In some embodiments of this application, to establish preliminary offloading candidate paths for each task initiating node in an unmanned swarm network, a candidate node can be randomly selected for each task initiating node in the unmanned swarm network, and the feasibility of offloading the task from the task initiating node by the candidate node can be determined. This process introduces a random perturbation mechanism into the network topology, randomly selecting one from all communicable nodes as a candidate offloading target for the current task initiating node, and evaluating the offloading feasibility based on its resource status and link conditions. In this way, the system can quickly generate candidate paths without relying on global search, providing initial input for subsequent adaptive matching and target node selection, thereby improving the response speed and path generation efficiency of the offloading strategy.
[0040] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A1 as the task initiating node, which needs to handle image recognition tasks. The system selects B1 as a candidate node from A1's communicable nodes using a randomization strategy and evaluates its task offloading feasibility. The evaluation results show that B1 has 4 units of computing power, a low current load, and a stable link with low latency to A1, meeting the basic conditions for task offloading. Therefore, the system uses B1 as a candidate node for A1, providing a basis for subsequent task execution adaptive matching and target node confirmation.
[0041] Optionally, in order to randomly determine a candidate node in the unmanned cluster network for each task initiating node, sub-step 2031 includes the following sub-step: Sub-step 20311, randomly determine a reference node in the unmanned cluster network for the task initiating node, and generate a random number.
[0042] In some embodiments of this application, to introduce initial perturbation and establish a random basis for the task unloading path, a reference node is randomly selected for the task initiating node in the unmanned swarm network, and a random number is generated. This process, by selecting a non-fixed node in the network topology as a reference point and combining it with a random number generation mechanism, provides input parameters for the subsequent calculation of the coding propagation offset change and the selection of candidate nodes. The reference node refers to any node that can be perceived by the task initiating node and used for coding difference calculation under the current network state; its selection is independent of the task type or node computing power. The random number is used to simulate the position perturbation and jump probability in the crow search algorithm, reflecting the non-deterministic characteristics of the search process. In this way, the system can introduce a perturbation factor in the early stage of task unloading path construction, providing a basis for the subsequent calculation of the coding propagation offset change and the judgment of the perception threshold, thereby improving the diversity of target node selection and the coverage of the search space.
[0043] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A1 as the task initiation node. The system randomly selects B2 from the network as the reference node for A1 and generates a random number r for subsequent calculation of the encoding propagation offset change. This random number, combined with the encoding difference determined by the predefined encoding values of A1 and B2 and the network topology, provides input for subsequent judgment on whether the perception threshold is met. Ultimately, the system completes the selection of the reference node and the generation of random perturbation parameters, laying the foundation for the determination of subsequent candidate nodes and the construction of the task unloading path.
[0044] Optionally, substep 20311 can be implemented by the following substep: Substep 203111, randomly generate a mutation value for each task initiating node.
[0045] In some embodiments of this application, to introduce individual perturbation factors to enhance the diversity and dynamism of task unloading paths, a mutation value is randomly generated for each task initiating node. This process involves performing a random number generation operation on each task initiating node within the task cycle to obtain a mutation parameter used to control the intensity of path perturbation. The mutation value refers to a perturbation factor used to simulate the jump probability or positional shift in search behavior; its value is typically randomly distributed within a preset range and is used to determine the selection method of subsequent reference nodes. This parameter is used in the Crow Search Algorithm (CSA) to simulate the sudden behavior of individuals in the search space, thereby avoiding the search process from getting trapped in local optima. In this way, the system can establish an independent perturbation basis for each task initiating node, making the selection method of subsequent reference nodes different, thereby improving the global search capability and adaptability of task unloading paths.
[0046] In a specific example, within a certain task cycle, the system identifies node A1 as the task initiating node and randomly generates a mutation value μ=0.63 for it. This mutation value will be used in the subsequent reference node selection process to determine whether to use fixed coding difference parameters or dynamic network environment parameters. The experimenters completed this mutation value generation operation through the system scheduling module, enabling A2 to have independent perturbation behavior in subsequent path construction, thereby improving the diversity of task unloading paths and the system's adaptability to complex environments.
[0047] Sub-step 203112: If the mutation value does not exceed the preset mutation threshold, determine the corresponding reference node from the unmanned cluster network according to the first random method.
[0048] The reference node determined by the first random method is determined according to the preset coding difference parameter.
[0049] In some embodiments of this application, to select reference nodes stably under conditions of weak mutation disturbances, corresponding reference nodes are determined from the unmanned swarm network using a first random method, provided that the mutation value does not exceed a preset mutation threshold. This process determines whether the mutation value is within a low-disturbance range; if the condition is met, the first random method based on a preset coding difference parameter is used to screen reference nodes. The first random method refers to randomly selecting nodes within a fixed spatial constraint range, the selection range of which is limited by the coding difference parameter. The coding difference parameter refers to the maximum spatial range that the task-initiating node is allowed to perceive within the task cycle, and is typically set based on node type, communication capabilities, or task scenario. In this way, the system can select reference nodes stably under conditions of low disturbance, thereby maintaining the coherence of path construction and the controllability of search behavior.
[0050] In a specific example, within a certain task cycle, the system identifies node A2 as the task initiating node and generates a mutation value μ=0.28 for it, which is lower than the preset mutation threshold of 0.4. Based on this, the system uses a first random method to randomly select reference nodes from the range of preset coding difference parameters 1-2 around A2. Ultimately, the system selects B2 as the reference node for A2 within this range. This selection process ensures the spatial reachability and path stability of the reference nodes, providing a reliable foundation for subsequent calculation of coding propagation offset changes and selection of candidate nodes.
[0051] Sub-step 203113: If the mutation value exceeds the mutation threshold, determine the corresponding reference node from the unmanned cluster network according to the second random method.
[0052] The reference node determined by the second random method is determined by the coding difference parameter, which varies with the network environment of the unmanned cluster network.
[0053] In some embodiments of this application, to enhance the environmental adaptability of reference node selection under conditions of strong mutation disturbances, a corresponding reference node is determined from the unmanned swarm network using a second random method when the mutation value exceeds a mutation threshold. This process determines whether the mutation value is within a high-disturbance range; if the condition is met, a second random method based on a dynamic coding difference parameter is used for reference node selection. The second random method adjusts the node selection range based on dynamic changes in the network environment, with the selection boundary determined by the coding difference parameter. In this case, the coding difference parameter is no longer fixed but changes with the network environment of the unmanned swarm network, for example, dynamically adjusted based on factors such as node density, link stability, and task load distribution. In this way, the system can expand the search space and adapt to fluctuations in network status under high-disturbance conditions, thereby improving the flexibility and robustness of the task offloading path.
[0054] In a specific example, within a certain task cycle, the system identifies node A4 as the task initiating node and generates a mutation value μ=0.78 for it, which is higher than the preset mutation threshold of 0.5. Based on this, the system uses a second random method to select reference nodes from the dynamically adjusted range of coding differences around A4. This coding difference parameter is determined by the current network environment. For example, due to the instability of the link between B1 and B3, the system expands the coding difference to cover more nodes. Ultimately, the system selects B2 as the reference node for A4. This selection process allows the spatial range of reference nodes to adapt to changes in network conditions, thereby improving the environmental adaptability of the task unloading path and the robustness of the search strategy.
[0055] Optionally, as an alternative to sub-steps 203111 to 203113, sub-step 20311 can also be implemented through the following sub-step: Sub-step 203114, dividing all task initiation nodes into first task initiation nodes and second task initiation nodes according to a preset mutation ratio.
[0056] In some embodiments of this application, to introduce a structured perturbation control mechanism at the task initiating node level, all task initiating nodes are divided into first task initiating nodes and second task initiating nodes according to a preset mutation ratio. This process groups all task initiating nodes within the current period by setting a mutation ratio parameter, so that some nodes adopt a low-perturbation strategy and some nodes adopt a high-perturbation strategy. The mutation ratio refers to the allocation ratio used to control the perturbation method adopted by task initiating nodes during path construction, and can be set in percentage form, for example, 30% of nodes adopt a high-perturbation strategy and the remaining nodes adopt a low-perturbation strategy. The first task initiating node represents the node adopting the low-perturbation strategy, and the second task initiating node represents the node adopting the high-perturbation strategy. In this way, the system can realize distributed control of perturbation strategies at the node level, thereby improving the diversity of task unloading paths and the overall robustness of network scheduling.
[0057] In a specific example, within a certain task cycle, the system identifies A1, A2, A3, and A4 as task initiation nodes and sets a mutation ratio of 0.25. Based on this, the system divides these four task initiation nodes into two groups: A1, A2, and A3 serve as the first task initiation nodes, employing a low-perturbation strategy; A4 serves as the second task initiation node, employing a high-perturbation strategy. This grouping process provides the basis for differentiated processing of subsequent reference node selection methods, enabling the system to balance stability and exploratory aspects in task path construction, thereby improving the global optimization capability of the task unloading strategy.
[0058] Sub-step 203115: Determine the reference node corresponding to the first task initiation node from the unmanned cluster network according to the third random method.
[0059] The reference node determined by the third random method is determined according to the preset coding difference parameter.
[0060] In some embodiments of this application, in order to select a reference node for the first task initiating node in a stable manner under a low-mutation strategy, a reference node corresponding to the first task initiating node is determined from the unmanned swarm network according to a third random method. The reference node determined by the third random method is determined by a preset coding difference parameter. This process, based on the previously completed grouping of task initiating nodes, employs a spatially constrained random selection strategy for the first task initiating node, i.e., node screening is performed within a fixed coding difference range. The third random method refers to the uniformly distributed random node selection within a preset spatial radius, the selection range of which is limited by the coding difference parameter. The coding difference parameter refers to the maximum spatial range that the task initiating node can perceive in the current period, and is typically set based on node type, task scenario, or communication capability. In this way, the system can select a reference node with strong spatial reachability and high path stability for the first task initiating node under conditions of low disturbance, thereby improving the coherence of the task unloading path and the controllability of the scheduling strategy.
[0061] In a specific example, within a certain task cycle, the system identifies A1 and A2 as the first task initiation nodes and sets the encoding difference parameter to 1 to 2. Based on this, the system uses a third random method to select reference nodes within a range of 1 to 2 around A1 and A2, respectively. Ultimately, the system selects B1 for A1 and B2 for A2 as reference nodes. This selection process ensures the spatial reachability and path stability of the reference nodes, providing stable input for subsequent calculation of encoding propagation offset changes and selection of candidate nodes, thereby improving the execution efficiency of the task unloading path and the reliability of system scheduling.
[0062] Sub-step 203116: Determine the reference node corresponding to the second task initiation node from the unmanned cluster network according to the fourth random method.
[0063] The reference node determined by the fourth random method is determined by the coding difference parameter, which varies with the network environment of the unmanned cluster network.
[0064] In some embodiments of this application, to enhance the adaptability of the second task initiating node to complex network environments under a high-mutation strategy, a reference node corresponding to the second task initiating node is determined from the unmanned swarm network using a fourth random method. The reference node determined by this fourth random method is determined by a coding difference parameter that varies with the network environment of the unmanned swarm network. This process, based on the previously completed grouping of task initiating nodes, employs an environment-driven random selection strategy for the second task initiating node, dynamically adjusting the selection range of reference nodes according to the current network state. The fourth random method refers to non-uniform node selection under the influence of network environment changes, with the selection boundary determined by the coding difference parameter. In this case, the coding difference parameter is no longer fixed but dynamically set based on network environment factors such as node density, link stability, and task load distribution. Thus, the system can select more exploratory and environmentally adaptable reference nodes for the second task initiating node under high-disturbance conditions, thereby improving the global search capability of the task offloading path and the robustness of the scheduling strategy.
[0065] In a specific example, within a certain task cycle, the system identifies A3 and A4 as the second task initiation nodes and detects that the link between B1 and B2 in the current network environment is unstable, the node density is low, and the task load is concentrated between A1 and B3. Based on this, the system adjusts the coding difference parameter to 120 meters and uses a fourth random method to select reference nodes for A3 and A4 within this range. Ultimately, the system selects B3 for A3 and A2 for A4 as reference nodes. This selection process allows the spatial range of reference nodes to dynamically adapt to changes in network conditions, thereby improving the environmental adaptability of the task offloading path and the flexibility of the search strategy.
[0066] Sub-step 20312: If the generated random number does not exceed the preset perception threshold, determine any node in the unmanned cluster network as a candidate node.
[0067] In some embodiments of this application, to quickly generate candidate nodes for task unloading under conditions of low random disturbance, specifically, any node in the unmanned swarm network is selected as a candidate node if the generated random number does not exceed a preset perception threshold. This process involves thresholding the previously generated random number; if the random number is in a low-disturbance range, there is no need to calculate the change in encoding propagation offset, and any node is directly selected from the network as a candidate unloading target for the current task initiation node. The perception threshold controls the disturbance intensity during the search process, and its value reflects the system's sensitivity to changes in network state. In this way, the system can quickly generate candidate nodes under conditions of low disturbance, improving the efficiency of unloading path construction while maintaining the lightweight nature of the search process.
[0068] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A2 as the task initiating node and generates a random number r=0.18 in the preceding steps, which is lower than the preset perception threshold of 0.25. Based on this, the system determines that the current disturbance intensity is low and directly selects B2 from the network as a candidate node for A2, without needing to calculate the change in encoding propagation offset. This selection process simplifies the path construction process and provides candidate node inputs for subsequent unloading feasibility and task adaptability assessments, thereby improving the response speed of task scheduling and the computational efficiency of system operation.
[0069] Sub-step 20313: If the generated random number exceeds the perception threshold, determine the amount of encoding propagation offset change for unloading the task to be executed from the task initiation node based on the random number and the amount of encoding difference between the reference node and the task initiation node, and determine the candidate node based on the amount of encoding propagation offset change.
[0070] In some embodiments of this application, to construct a more spatially scalable task unloading path under high perturbation conditions, when the generated random number exceeds a perception threshold, the change in encoding propagation offset for unloading the task to be executed from the task initiating node is determined based on the random number and the encoding difference between the reference node and the task initiating node. Candidate nodes are then determined based on this change in encoding propagation offset. This process dynamically adjusts the task propagation range by introducing a joint calculation mechanism of random number and spatial encoding difference, thereby expanding the search space for target nodes. The change in encoding propagation offset refers to the maximum range of network encoding differences that the task initiating node can unload the task to within the current period. Its calculation is based on the jumping behavior model in the crow search algorithm. This algorithm introduces a perturbation factor to enhance the globality of the search by simulating the random jumping behavior of crows searching for food. Thus, the system can break free from local neighborhood limitations under high perturbation conditions and explore candidate nodes with greater encoding differences, thereby improving the diversity of target node selection and the globality of path optimization.
[0071] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A3 as the task initiation node and generates a random number r=0.72 in the preceding steps, which is higher than the preset perception threshold of 0.5. The system selects B2 as the reference node, and calculates the change in encoding propagation offset based on the encoding difference between B2 and A3, making B3 a candidate node that meets the condition of the change in encoding propagation offset. This screening process effectively expands the search radius, enabling the system to explore more distant node resources under high perturbation conditions, thereby improving the global optimization capability of the task unloading path.
[0072] Optionally, as a further embodiment, the following mathematical model is introduced to express the above process: ,in, Indicates individual i in round The corresponding unloading code, Indicates individual i in round The corresponding unloading code, Indicates the preceding In each round, the unloading code retained (also called "memory") for individual j also represents the locally optimal unloading code generated for individual j in previous rounds. This refers to the difference in unloading codes between individual i and individual j (analogous to the "distance" (difference in unloading codes) between the "crows" (individuals' unloading codes) in the mathematical model), and Indicates and Represents the random number factor. Indicates the coding difference factor. This represents the perception threshold used to activate perception.
[0073] The perception threshold (AP) and the encoding difference factor (fl) are key parameters of the aforementioned algorithm (Crow Search Algorithm (CSA)), controlling the algorithm's tendency between exploration and exploitation. By increasing the AP value, the crow is placed in a more "good" memory position (…). The reduced probability of searching the surrounding area prompts CSA to explore on a more global scale. Conversely, by lowering the AP value, CSA is more likely to develop the current high-quality solution (…). The vicinity of ); at the same time, if the fl value is set to less than 1, the reachable location of individual i will be restricted to arrive The range between [the specified values]. If the fl value is set to greater than 1, the search range for individual i expands, and the next position it finds may exceed [the specified range]. arrive The range between them.
[0074] Optionally, in order to determine the feasibility of the candidate node unloading the task from the task initiating node, sub-step 2031 includes the following sub-step: Sub-step 20314, in the case that there is a data propagation link between the candidate node and the task initiating node, the feasibility of the candidate node unloading the task from the task initiating node is determined to be feasible.
[0075] In some embodiments of this application, to determine whether the task initiating node can effectively offload the task to be executed to the alternative node, the feasibility of the alternative node offloading the task to the task initiating node is determined as feasible if a data propagation link exists between the alternative node and the task initiating node. This process determines whether there is a direct communication path that does not require relays by detecting the link connection status between nodes in the network topology. The data propagation link refers to the communication channel on which task data is transmitted between nodes, and its direct connection status is usually determined by the link establishment protocol, channel quality, coding differences, and network configuration. If a direct link exists, it means that the task initiating node can offload the task to the alternative node in a low-latency and high-reliability manner within the current cycle. In this way, the system can quickly confirm the reachability of the offloading path, thereby improving the execution efficiency of the offloading strategy and the stability of task scheduling.
[0076] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies A2 as the task initiating node and B2 as its alternative node. The system detects that a data propagation link exists between A2 and B2, i.e., there is a dashed line connecting A2 and B2 in the figure, and the link quality meets the communication requirements. Therefore, the system determines that the feasibility of B2 offloading the task to A2 is feasible, allowing A2 to directly offload the task to B2 in subsequent steps. This judgment process ensures the connectivity of the task distribution path, avoids task transmission errors caused by link interruption or relay failure, thereby improving the success rate of task execution and the reliability of system operation.
[0077] Sub-step 20315: If there is no data propagation link between the candidate node and the task initiating node, the feasibility of the candidate node unloading the task from the task initiating node is determined to be infeasible.
[0078] In some embodiments of this application, to avoid task unloading failure due to network link breakage, the feasibility of task unloading from the candidate node to the task initiating node is determined to be infeasible if there is no data propagation link between the candidate node and the task initiating node. This process determines whether there is a direct communication path available for task data transmission by detecting the link status between nodes in the network topology. If the detection result indicates that there is no direct link between the task initiating node and the candidate node, it means that the task data cannot be stably transmitted to the candidate node in the current cycle, and the unloading path lacks reachability. In this way, the system can promptly eliminate unreachable nodes, preventing subsequent unloading strategies from failing due to link interruption, thereby improving the stability of task scheduling and the reliability of system operation.
[0079] As shown in Figure 2, in a specific example, during a certain task cycle, the system identifies A4 as the task initiating node and B1 as its alternative node. The system detects that there is no data propagation link between A4 and B1; that is, there is no dashed line connecting them in the diagram, and no relay node is available. Therefore, the system determines that offloading the task from B1 to A4 is infeasible, preventing task data loss or delay due to link breakage during transmission. This judgment process ensures the connectivity requirements of the task distribution path, helping to improve the success rate of task execution and the robustness of system scheduling.
[0080] It should be further noted that although this application uses the existence of a data propagation link as the basis for judging the feasibility of task offloading in some embodiments, this link is not limited to a direct connection path. In practical applications, if there is no direct communication link between the task initiating node and the candidate node, but an indirect connection can be achieved through a relay node, it can still be considered as having the feasibility of task offloading. Such indirect connection paths in the system topology usually involve multi-hop transmission or relay forwarding mechanisms. Although they can achieve the transmission of task data, the communication latency and energy consumption introduced by the relay node need to be considered in the calculation offloading model. Therefore, when judging the feasibility of task offloading, the system not only detects the link connectivity, but also needs to make a comprehensive evaluation in combination with the resource consumption of the relay path to ensure that the offloading path has reachability and resource rationality under the current network conditions. That is, the task offloading feasibility judgment mechanism described in this application has a certain degree of flexibility, and can be applied to direct link scenarios as well as extended to indirect connection scenarios with relay capabilities.
[0081] Sub-step 2032: If the feasibility of unloading the task from the candidate node to the task initiating node matches the preset unloading feasibility conditions, determine the adaptability of the task to be executed by the task initiating node to the task execution of the candidate node.
[0082] In some embodiments of this application, to further screen target nodes with actual task processing capabilities, the adaptability of the task to be executed by the task initiating node to the task execution adaptability of the candidate node is determined if the task unloading feasibility of the candidate node to the task initiating node matches the preset unloading feasibility conditions. After completing the initial screening of unloading feasibility, this process continues to evaluate the processing capabilities of the candidate nodes for specific task types, including indicators such as their computing power structure, algorithm module support, task response latency, and historical task completion rate. Task execution adaptability refers to whether the candidate node has the ability to efficiently process a specific task while meeting the unloading conditions. In this way, the system can further eliminate nodes with insufficient processing capabilities or mismatched task types from the candidate node set, thereby improving the accuracy of target node screening and the success rate of task allocation.
[0083] As shown in Figure 2, in a specific example, within a certain task cycle, the system has designated B1 as a candidate node for A1 and confirmed that its task unloading feasibility meets preset conditions. Subsequently, the system further evaluates the adaptability of A1's image recognition task to B1's task execution, finding that B1 possesses an image processing module, its response latency is below a set threshold, and it has completed similar tasks in historical cycles. Therefore, the system confirms that B1 has task execution adaptability and can proceed to the next stage as a candidate target node for A1. This evaluation process effectively avoids unloading failures caused by task type mismatch, improving the stability and execution efficiency of task allocation.
[0084] Optionally, in order to determine the adaptability of the task to be executed by the task initiating node to the task execution of the candidate node, sub-step 2032 includes the following sub-step: Sub-step 20321, dividing the candidate nodes into multiple task execution adaptability evaluation groups according to a variety of preset optimization objective functions.
[0085] In some embodiments of this application, to improve the targeting and multi-dimensional coverage of task execution adaptability assessment, candidate nodes are divided into multiple task execution adaptability evaluation groups according to preset optimization objective functions. This process introduces a multi-objective optimization mechanism to classify candidate nodes based on different task processing characteristics, so that their adaptability evaluation values can be calculated in a targeted manner later. The optimization objective function is a mathematical expression used to measure the task processing capability of a node, which typically includes indicators such as task completion time, energy efficiency, response latency, and resource utilization. Each evaluation group corresponds to a specific optimization objective function, which reflects the task processing advantage of a node in a certain dimension. In this way, the system can structurally group candidate nodes in a multi-dimensional performance space, thereby providing a clear classification basis for subsequent adaptability evaluation, improving the accuracy of task allocation and the interpretability of the strategy.
[0086] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies candidate nodes B1, B2, and A1 and A4 respectively. Based on a preset optimization objective function, the system assigns these two candidate nodes to two task execution adaptability evaluation groups: B1 is assigned to the group with the objective of "shortest task completion time," and B2 is assigned to the group with the objective of "minimum energy consumption." This grouping process provides a clear objective function basis for subsequent adaptability evaluation value calculation, enabling the system to differentiate node evaluations under multi-dimensional performance indicators, thereby improving the matching accuracy of task unloading paths and the flexibility of scheduling strategies.
[0087] Sub-step 20322: Determine the task execution adaptability evaluation value of each candidate node according to the optimization objective function corresponding to each task execution adaptability evaluation group.
[0088] In some embodiments of this application, to quantify the adaptability of each candidate node under different task processing objectives, a task execution adaptability evaluation value for each candidate node is determined according to the optimization objective function corresponding to each task execution adaptability evaluation group. This process, based on previous grouping, calculates and normalizes the indicators of nodes within each group according to the optimization objective function set for each evaluation group, generating adaptability evaluation values that can be used for sorting and filtering. The task execution adaptability evaluation value refers to the quantitative result of a node's performance under a specific optimization objective, typically expressed numerically as its task processing efficiency or resource utilization level. The optimization objective function may include a task completion time function, energy consumption function, response latency function, task success rate function, etc., and its form may be a linear, nonlinear, or weighted combination model, or other scoring models evaluated based on data fusion. In this way, the system can perform differentiated evaluation of candidate nodes under multi-dimensional performance indicators, providing a quantitative basis for the final confirmation of subsequent target nodes, thereby improving the matching accuracy of task unloading paths and the controllability of scheduling strategies.
[0089] As shown in Figure 2, within a certain task cycle, the system has assigned B1, B2, and B3 to task execution adaptability evaluation groups with the objectives of "shortest task completion time," "lowest energy consumption," and "lowest response latency," respectively. The system calculates the adaptability evaluation value for each node based on the corresponding optimization objective function for each group: for example, B1's task completion time is 12 seconds, B2's unit task energy consumption is 3.2 watts, and B3's average response latency is 0.8 seconds. The system normalizes these indicators to generate adaptability evaluation values, which are then used for subsequent target node selection. This calculation process enables the system to quantitatively compare node performance within a multi-objective optimization framework, thereby improving the rationality of task allocation and the accuracy of scheduling strategies.
[0090] Sub-step 2033: If the task execution adaptability of the candidate node matches the preset task execution adaptability conditions, the candidate node is determined as the target node for the task initiation node.
[0091] In some embodiments of this application, to ultimately confirm the target node for the task unloading path, a candidate node is designated as the target node for the task initiating node if its task execution adaptability matches the preset task execution adaptability conditions. After completing a dual evaluation of unloading feasibility and task adaptability, this process formally marks the candidate nodes that meet the conditions as target nodes based on preset adaptability thresholds or matching rules. The target node refers to the node responsible for task execution within the current task cycle, and its confirmation directly determines the unloading path and task distribution direction of the task initiating node. Task execution adaptability conditions typically include indicators such as the node's computing power structure, task type support, response latency, and historical completion rate. In this way, the system can lock in the optimal unloading target after multiple rounds of screening, thereby improving the accuracy and efficiency of task allocation and reducing the risk of task failure due to node mismatch.
[0092] As shown in Figure 2, in a specific example, within a certain task cycle, the system has already designated B1 as a candidate node for A1 and confirmed that its task offloading feasibility and task execution adaptability meet preset conditions. The system then formally designates B1 as the target node for A1, and in subsequent steps, offloads the image recognition task to B1 for processing. This confirmation process ensures the stability of the task distribution path and the adaptability of the task execution node, thereby improving the success rate of task completion and reducing the possibility of resource waste and scheduling delays.
[0093] Optionally, if each candidate node has a corresponding task execution adaptability evaluation value, sub-step 2033 includes the following sub-step: Sub-step 20331, sort all candidate nodes according to their corresponding task execution adaptability evaluation values.
[0094] In some embodiments of this application, to prioritize the selection of task unloading nodes based on multi-objective evaluation results, all candidate nodes are sorted according to their corresponding task execution adaptability evaluation values. This process constructs a node priority sequence by comparing and sorting the calculated adaptability evaluation values, providing a structured basis for subsequent control and selection of the number of target nodes. The task execution adaptability evaluation value refers to the quantified result of the task processing capability of the candidate node under a specific optimization objective function, usually represented by a normalized performance index. The sorting operation can be performed in ascending or descending order, adjusted according to the directionality of the optimization objective function. In this way, the system can establish a node priority list based on multi-dimensional performance evaluation results, thereby improving the efficiency of target node selection and the accuracy of task scheduling.
[0095] As shown in Figure 2, in a specific example, within a certain task cycle, the system identifies B1, B2, and B3 as candidate nodes and calculates their task execution adaptability evaluation values: B1's task completion time is 12 seconds, B2's unit task energy consumption is 3.2 watts, and B3's average response latency is 0.8 seconds. The system normalizes the data, scores the three adaptability evaluations, and ranks the three nodes, for example, B3 is ranked first, B1 second, and B2 last. The ranking results form a task unloading priority list, providing a clear selection basis for subsequent target node number control and final confirmation.
[0096] Sub-step 20332: Determine at least one target node from the sorted candidate nodes according to the preset target node number threshold.
[0097] In some embodiments of this application, to complete the final selection of target nodes based on the sorting results, at least one target node is determined from the sorted candidate nodes according to a preset target node quantity threshold. This process involves truncating the adaptive evaluation value list of the sorted tasks, and selecting several nodes from the top-ranked nodes as the final unloading targets for the task initiating node, based on the target node quantity threshold set by the system. The target node quantity threshold refers to the maximum number of target nodes that the system allows to allocate to each task initiating node within the current task cycle, and its setting can be dynamically adjusted according to task complexity, network load status, or resource redundancy. In this way, the system can control the scale and complexity of the unloading path while ensuring task processing capacity, thereby improving the controllability of task allocation and the resource utilization efficiency of system scheduling.
[0098] As shown in Figure 2, in a specific example, within a certain task cycle, the system has identified B1, B2, and B3 as candidate nodes and sorted them according to their task execution adaptability evaluation values. The system sets a target node number threshold of 2, meaning that a maximum of two tasks can be unloaded each time. Therefore, the system selects B3 and B1, which rank first and second in evaluation value from the sorting results, as target nodes. This selection process ensures that the task unloading path has scale control capabilities while prioritizing performance, thereby improving the stability of task allocation and the scheduling efficiency of system resources.
[0099] Step 204: Send the node information of the target node to the corresponding task initiation node.
[0100] When the task initiating node receives the node information of the target node, it will update the corresponding task execution node to the target node and unload the corresponding task to be executed according to the updated task execution node.
[0101] The method shown in this step has been explained in step 103 and will not be repeated here.
[0102] Optionally, considering that the two key parameters AP and fl in CSA play an important role in its optimization performance, for each current individual, the state-action value function (Q function) related to the variable parameters can be trained through the reinforcement learning process: Step 205, using the current individual's state information as the input state, obtain the dynamic response action determined by the state-action value function.
[0103] In some embodiments of this application, to select a more adaptive response strategy for an individual after a dynamic event occurs, the system uses the individual's current state information as input and obtains the dynamic response action determined by the state-action value function. Specifically, the system can collect the individual's state information within the current time slot, construct a state vector, and input this state vector into a Q-function trained using reinforcement learning. This function outputs the optimal action number for the current state. The Q-function is a function used to evaluate the expected reward obtained by taking a certain action in a specific state. Its core function is to guide the individual to select the most suitable action strategy in different environments. In this way, the system can obtain the optimal response action determined by the Q-function based on the individual's current environmental state, thereby providing a strategic basis for the individual's encoding update in a dynamic environment.
[0104] In a specific example, a platform failure event occurs within a task cycle in an unmanned swarm network. Researchers identify the affected individual states as follows: fitness decreased by 0.15, diversity changed by +0.1, encoding vector [1,1,2,0,3,3], non-dominated ranking level 2, and event type: platform failure. The system normalizes this state information and constructs a state vector [0.3, 0.2, 0.6, 1,1,2,0,3,3, 2, 0,0,1], which is then input into the Q-function. The Q-function outputs action number 3 based on historical learning results, corresponding to the response strategy of "moving towards the population center." Following this response strategy, the individual's encoding vector is adjusted according to the center point's position, thereby giving the individual higher fitness and more reasonable distribution in the new search space.
[0105] Sub-step 206 updates the state-action value function based on the output obtained from the execution of the dynamic response action as feedback.
[0106] In some embodiments of this application, to continuously optimize an individual's response strategy in a dynamic environment, the system updates the Q-function based on the output results obtained from the execution of dynamic response actions as feedback. Specifically, after completing an action output by the Q-function, the system collects the individual's fitness change value and diversity change value in the new state, and uses this feedback as a reward signal. Combined with the current state and the executed actions, the system updates the Q-value of the corresponding state-action pair in the Q-function. Based on the Q-learning principle, the current Q-value can be adjusted to improve the long-term return capability of the strategy by using the difference between the actual reward value and the maximum Q-value of the next state. In this way, the system can dynamically adjust the evaluation system of the Q-function based on the individual's performance feedback in the new environment, thereby improving the rationality of subsequent action selection and the adaptability of the strategy.
[0107] In a specific example, during a task cycle in an unmanned swarm network, a platform failure event occurs. Researchers identify an individual whose fitness increases from 0.6 to 0.75 and its diversity changes by +0.15 after executing the action "move towards the population center." The system uses this fitness increase and diversity change as reward signals and, combined with the individual's original state vector and the executed action number 3, updates the Q-value of the corresponding state-action pair in the Q-function. Through this update mechanism, the system can optimize the Q-function's evaluation system during continuous interaction, improving the quality of the individual's response strategy in future dynamic events.
[0108] Optionally, considering that the two key parameters AP and fl in CSA play an important role in its optimization performance, this application also designs the following strategy to form dynamic parameters: Elite following strategy: Crows will observe other crows and are more likely to follow elite crows that hide food in better locations. Therefore, a roulette wheel selection method is introduced to select the crow to follow. When the random value r e When the probability is greater than 0.5, a roulette wheel selection method is used; otherwise, a random selection method is used to choose a crow to follow from the archive. Dynamic perception probability: Individual crows differ, therefore their perception probabilities also differ. A widely used Gaussian distribution is introduced in nature to generate the perception probability of crows, and the AP of crow j is calculated. j for Where, Guassian(0,1) represents a Gaussian distribution with mean 0 and variance 1; Dynamic flight length: As crows gradually tire during the iteration process, their flight length decreases accordingly. This process can be represented as: ;where fl min and fl max Used to control fl τ The lower and upper bounds of r τ c is a random number that follows a uniform distribution between 0 and 1. tIt represents the total number of current environmental changes; It is the predicted interval of environmental change, and its calculation method is as follows: , where τ i Let be the iteration number for the i-th environmental change, and τ0 = 0. Furthermore, even without environmental change, an initial value p1 for the environmental change interval is set to dynamically control the flight length. This design considers that fatigued crows should recover during environmental changes, and that recent environmental change intervals are more relevant for predicting future intervals. When crows fly beyond the search boundary, they do not remain at their current position as in the original CSA, but instead confine the variables beyond the boundary to the boundary and then accept the new position.
[0109] As shown in Figure 4, in a specific embodiment of this application, to improve the solution space coverage and search efficiency of the crow search algorithm in the multi-objective task unloading problem, the system also introduces a multi-population co-evolution mechanism and embeds it into the discrete crow search algorithm framework. This mechanism constructs multiple parallel populations, each focused on optimizing a specified objective function, thereby realizing the distributed search and co-evolution of multi-objective task unloading strategies.
[0110] The nodes (crows) are divided into multiple populations (e.g., "Population 1", "Population 2" to "Population M") according to different search directions of the optimization objectives (e.g., "Optimization Objective 1", "Optimization Objective 2"). Within each population, individual crows update their positions and evolve their strategies under their corresponding objective function. Non-dominated solutions from all populations are uniformly stored in the "archive" module to preserve the optimal solution set during the current search process. During position updates, if a crow's new position has a non-dominated relationship with its memory position in the multi-objective space, but performs worse on its respective optimization objective, the new position will not replace the original memory position but will be immediately added to the "archive". This approach ensures that individuals contribute to global diversity while maintaining local stability. To avoid excessive archive capacity, the system also employs a truncation method based on crowding coding differences to retain the most widely distributed solutions, thereby improving the diversity of the solution set.
[0111] In addition, to accelerate the search process and control the archive update frequency, the system also introduces a memory time mechanism, in which each crow maintains a memory time parameter mt. When its memory position is updated in a certain iteration, mt is set to 1; otherwise, mt is set to mt+1. After each round of position update, only individuals with mt=1 are eligible to participate in the archive update, thereby significantly reducing redundant update operations and improving the efficiency of the algorithm.
[0112] In addition, to ensure that high-quality solutions in the archive are mutated and expanded after each iteration, the original population and the mutant population will be merged after each iteration to further enhance the search capability and the diversity of solutions.
[0113] It should be noted that although this application uses the process of constructing and updating the unloading path on a task cycle basis in some embodiments to illustrate the solution, this design does not constitute a limitation on the scope of protection. As long as the system can dynamically adjust the unloading scheme based on the real-time status information of the cluster network under the corresponding control architecture, regardless of whether its triggering mechanism depends on a fixed round or cycle, it should be considered as falling within the technical scope of the dynamic calculation unloading method proposed in this application. In other words, the solution described in this application has broad adaptability and can cover various scheduling rhythms and response mechanisms to adapt to resource changes and task requirements under different application scenarios.
[0114] In summary, in this embodiment, by identifying all task initiating nodes within the task cycle, a comprehensive perception of the cluster task distribution status can be achieved, thereby providing accurate task source information for subsequent unloading decisions. This ensures the timeliness and completeness of the input data for the unloading strategy, helping to improve the response speed of the unloading decision. Furthermore, by combining the feasibility conditions for task unloading with the adaptability conditions for task execution, and using a randomized search strategy to determine the target node, global search capabilities and local perturbation mechanisms are introduced, making the unloading path more adaptable and robust in dynamic environments. This allows for dynamic adjustment of the candidate node selection strategy, effectively avoiding the problem of traditional algorithms easily getting trapped in local optima, and improving the overall optimization level of the unloading path. Finally, in the process of feeding back the target node information to the task initiating node and updating the task execution node, dynamic reconstruction of the unloading path is achieved, enabling the task initiating node to adjust the task allocation scheme in a timely manner according to the latest network status. This not only improves the real-time performance of the unloading strategy but also enhances the system's ability to respond to sudden events or resource fluctuations. Therefore, the method based on the embodiments of this application improves the efficiency of computing task allocation for unmanned clusters in complex environments by constructing dynamic unloading paths, alleviates the problems of lagging and insufficient flexibility of unloading strategies, and thus improves the success rate of task execution while reducing the risk of resource waste and task delay.
[0115] Referring to Figure 5, it illustrates a dynamic computing unloading device 30 for unmanned swarms based on the crow search algorithm provided in this application embodiment. Applied to unloading decision nodes in an unmanned swarm network, it includes: a task confirmation module 301, used to determine all task initiating nodes that have initiated tasks to be executed in the current task cycle within the unmanned swarm network; each task initiating node has a corresponding task execution node in the unmanned swarm network; a node selection module 302, used to determine the target node for each task initiating node in the unmanned swarm network using a randomization method, based on the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed; and an unloading sending module 303, used to send the node information of the target node to the corresponding task initiating node, so that the task initiating node updates the corresponding task execution node to the corresponding target node and unloads the corresponding task to be executed according to the updated task execution node.
[0116] Optionally, the node selection module 302 includes: an unloading feasibility submodule, used to randomly determine a candidate node in the unmanned cluster network for each task initiating node, and determine the task unloading feasibility of the candidate node to the task initiating node; an execution adaptability submodule, used to determine the task execution adaptability of the task to be executed by the task initiating node to the candidate node if the task unloading feasibility of the candidate node to the task initiating node matches the preset unloading feasibility conditions; and a target confirmation submodule, used to determine the candidate node as the target node for the task initiating node if the task execution adaptability of the candidate node to the task to be executed matches the preset task execution adaptability conditions.
[0117] Optionally, the unloading feasibility submodule includes: a random number unit, used to randomly determine a reference node in the unmanned cluster network for the task initiating node and generate a random number; a first candidate unit, used to determine any node in the unmanned cluster network as a candidate node if the generated random number does not exceed a preset perception threshold; and a second candidate unit, used to determine the amount of code propagation offset change for unloading the task to be executed from the task initiating node based on the random number and the amount of code difference between the reference node and the task initiating node if the generated random number exceeds the perception threshold, and to determine the candidate node based on the amount of code propagation offset change.
[0118] Optionally, the random number unit includes: a mutation value subunit, used to randomly generate a mutation value for each task initiating node; a first random subunit, used to determine the corresponding reference node from the unmanned cluster network according to a first random method when the mutation value does not exceed a preset mutation threshold; the reference node determined by the first random method is determined according to a preset coding difference parameter; and a second random subunit, used to determine the corresponding reference node from the unmanned cluster network according to a second random method when the mutation value exceeds the mutation threshold; the reference node determined by the second random method is determined by a coding difference parameter that changes with the network environment of the unmanned cluster network.
[0119] Optionally, the random number unit includes: a partitioning subunit, used to divide all task initiating nodes into a first task initiating node and a second task initiating node according to a preset mutation ratio; a third random subunit, used to determine a reference node corresponding to the first task initiating node from the unmanned swarm network according to a third random method; the reference node determined by the third random method is determined according to a preset coding difference parameter; and a fourth random subunit, used to determine a reference node corresponding to the second task initiating node from the unmanned swarm network according to a fourth random method; the reference node determined by the fourth random method is determined by a coding difference parameter that changes with the network environment of the unmanned swarm network.
[0120] Optionally, the unloading feasibility submodule includes: a feasible unit, used to determine the feasibility of unloading the task from the candidate node to the task initiating node as feasible when there is a data propagation link between the candidate node and the task initiating node; and an infeasible unit, used to determine the feasibility of unloading the task from the candidate node to the task initiating node as infeasible when there is no data propagation link between the candidate node and the task initiating node.
[0121] Optionally, the execution adaptability submodule includes: a grouping unit, used to divide candidate nodes into multiple task execution adaptability evaluation groups according to a variety of preset optimization objective functions; and an evaluation unit, used to determine the task execution adaptability evaluation value of each candidate node according to the optimization objective function corresponding to each task execution adaptability evaluation group.
[0122] Optionally, each candidate node has a corresponding task execution adaptability evaluation value. The target confirmation submodule includes: a sorting unit, used to sort all candidate nodes according to their corresponding task execution adaptability evaluation values; and a selection unit, used to determine at least one target node from the sorted candidate nodes according to a preset target node quantity threshold.
[0123] Optionally, the unmanned cluster dynamic computing offloading device 30 based on the crow search algorithm further includes: an initialization module, used to initialize a corresponding task execution node for each node in the unmanned cluster network.
[0124] Optionally, the unmanned swarm dynamic computing unloading device 30 based on the crow search algorithm further includes: a training input module, used to obtain the dynamic response action determined by the state-action value function by taking the current individual's state information as the input state.
[0125] The reinforcement training module is used to update the state-action value function based on the output results obtained from the execution of dynamic response actions.
[0126] In summary, in this embodiment, by identifying all task initiating nodes within the task cycle, a comprehensive perception of the cluster task distribution status can be achieved, thereby providing accurate task source information for subsequent unloading decisions. This ensures the timeliness and completeness of the input data for the unloading strategy, helping to improve the response speed of the unloading decision. Furthermore, by combining the feasibility conditions for task unloading with the adaptability conditions for task execution, and using a randomized search strategy to determine the target node, global search capabilities and local perturbation mechanisms are introduced, making the unloading path more adaptable and robust in dynamic environments. This allows for dynamic adjustment of the candidate node selection strategy, effectively avoiding the problem of traditional algorithms easily getting trapped in local optima, and improving the overall optimization level of the unloading path. Finally, in the process of feeding back the target node information to the task initiating node and updating the task execution node, dynamic reconstruction of the unloading path is achieved, enabling the task initiating node to adjust the task allocation scheme in a timely manner according to the latest network status. This not only improves the real-time performance of the unloading strategy but also enhances the system's ability to respond to sudden events or resource fluctuations. Therefore, the method based on the embodiments of this application improves the efficiency of computing task allocation for unmanned clusters in complex environments by constructing dynamic unloading paths, alleviates the problems of lagging and insufficient flexibility of unloading strategies, and thus improves the success rate of task execution while reducing the risk of resource waste and task delay.
[0127] Referring to FIG6, the electronic device 500 may include one or more of the following components: processing component 502, memory 504, power supply component 506, multimedia component 508, audio component 510, input / output (I / O) interface 512, sensor component 514, and communication component 516.
[0128] Processing component 502 typically controls the overall operation of electronic device 500, such as operations associated with display, telephone calls, data communication, camera operation, and recording. Processing component 502 may include one or more processors 520 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 502 may include one or more modules to facilitate interaction between processing component 502 and other components. For example, processing component 502 may include a multimedia module to facilitate interaction between multimedia component 508 and processing component 502.
[0129] Memory 504 is used to store various types of data to support the operation of electronic device 500. Examples of this data include instructions for any application or method operating on electronic device 500, contact data, phonebook data, messages, pictures, multimedia, etc. Memory 504 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0130] Power supply component 506 provides power to various components of electronic device 500. Power supply component 506 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 500.
[0131] Multimedia component 508 includes an interface that provides an output interface between electronic device 500 and user. In some embodiments, the interface may include a liquid crystal display (LCD) and a touch panel (TP). If the interface includes a touch panel, the interface may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may not only sense the boundaries of touch or swipe actions but also detect the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 508 includes a front-facing camera and / or a rear-facing camera. When electronic device 500 is in an operating mode, such as shooting mode or multimedia mode, the front-facing camera and / or rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.
[0132] Audio component 510 is used to output and / or input audio signals. For example, audio component 510 includes a microphone (MIC) used to receive external audio signals when electronic device 500 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 504 or transmitted via communication component 516. In some embodiments, audio component 510 also includes a speaker for outputting audio signals.
[0133] Input / output (I / O) interface 512 provides an interface between processing component 502 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0134] Sensor assembly 514 includes one or more sensors for providing state assessments of various aspects of electronic device 500. For example, sensor assembly 514 may detect the on / off state of electronic device 500, the relative positioning of components such as the display and keypad of electronic device 500, changes in position of electronic device 500 or a component of electronic device 500, the presence or absence of user contact with electronic device 500, orientation or acceleration / deceleration of electronic device 500, and temperature changes of electronic device 500. Sensor assembly 514 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 514 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 514 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.
[0135] Communication component 516 facilitates wired or wireless communication between electronic device 500 and other devices. Electronic device 500 can access wireless networks based on communication standards, such as WiFi, carrier networks (such as 2G, 3G, 4G, or 5G), or combinations thereof. In one exemplary embodiment, communication component 516 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 516 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0136] In an exemplary embodiment, the electronic device 500 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to implement the methods provided in the embodiments of this application.
[0137] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 504 including instructions, which can be executed by a processor 520 of an electronic device 500 to perform the above-described method. For example, the non-transitory storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0138] In an exemplary embodiment, the electronic device 500 may also be provided as a server, including a processing component 502, which further includes one or more processors, and memory resources represented by memory 504 for storing instructions, such as applications, that can be executed by the processing component 502. The applications stored in memory 504 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 502 is configured to execute instructions to perform the methods provided in the embodiments of this application.
[0139] Electronic device 500 may also include a power supply component 506 configured to perform power management of electronic device 500, a wired or wireless communication component 516 configured to connect electronic device 500 to a network, and an input / output (I / O) interface 512. Electronic device 500 may operate on an operating system stored in memory 504, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or similar.
[0140] It should be noted that, for the sake of simplicity, the method embodiments of this application are all described as a series of actions. However, those skilled in the art should understand that the embodiments of this application are not limited to the described order of actions, because according to the embodiments of this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential to the embodiments of this application.
[0141] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the application disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the claims.
[0142] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the claimed rights.
Claims
1. A method for dynamic computational unloading of unmanned swarms based on a crow search algorithm, characterized in that, An offloading decision node applied in an unmanned swarm network includes: identifying all task initiating nodes that have initiated tasks to be executed in the current task cycle within the unmanned swarm network; each task initiating node having a corresponding task execution node in the unmanned swarm network; determining a target node for each task initiating node in the unmanned swarm network using a randomization method, based on the task offloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed; sending the node information of the target node to the corresponding task initiating node, so that the task initiating node updates the corresponding task execution node to the corresponding target node, and offloads the corresponding task to be executed according to the updated task execution node.
2. The unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in claim 1, characterized in that, The step of determining the target node for each task initiating node in the unmanned swarm network using a randomization method, based on the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed, includes: randomly determining a candidate node for each task initiating node in the unmanned swarm network and determining the task unloading feasibility of the candidate node for the task initiating node; if the task unloading feasibility of the candidate node for the task initiating node matches a preset unloading feasibility condition, determining the task execution adaptability of the task to be executed for the task initiating node to the candidate node; if the task execution adaptability of the candidate node for the task to be executed matches a preset task execution adaptability condition, determining the candidate node as the target node for the task initiating node.
3. The unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in claim 2, characterized in that, The step of randomly determining a candidate node for each task initiating node in the unmanned swarm network includes: randomly determining a reference node for the task initiating node in the unmanned swarm network and generating a random number; if the generated random number does not exceed a preset perception threshold, determining any node in the unmanned swarm network as the candidate node; if the generated random number exceeds the perception threshold, determining the amount of encoding propagation offset change for unloading the task to be executed from the task initiating node based on the random number and the amount of encoding difference between the reference node and the task initiating node, and determining the candidate node based on the amount of encoding propagation offset change.
4. The unmanned swarm dynamic computational unloading method based on the crow search algorithm as described in claim 2, characterized in that, Determining the feasibility of the candidate node to unload the task from the task initiating node includes: if there is a data propagation link between the candidate node and the task initiating node, determining the feasibility of the candidate node to unload the task from the task initiating node as feasible; if there is no data propagation link between the candidate node and the task initiating node, determining the feasibility of the candidate node to unload the task from the task initiating node as infeasible.
5. The unmanned swarm dynamic computational unloading method based on the crow search algorithm as described in claim 2, characterized in that, The step of determining the task execution adaptability of the task to be executed of the task initiating node to the task execution adaptability of the candidate nodes includes: dividing the candidate nodes into multiple task execution adaptability evaluation groups according to a variety of preset optimization objective functions; and determining the task execution adaptability evaluation value of each candidate node according to the optimization objective function corresponding to each task execution adaptability evaluation group.
6. The unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in claim 2, characterized in that, Each candidate node has a corresponding task execution adaptability evaluation value. The step of determining the candidate node as the target node for the task initiating node when the task execution adaptability of the candidate node matches the preset task execution adaptability conditions includes: sorting all the candidate nodes according to their corresponding task execution adaptability evaluation values; and determining at least one target node from the sorted candidate nodes according to a preset target node quantity threshold.
7. The unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in claim 1, characterized in that, The unmanned cluster dynamic computation unloading method based on the crow search algorithm further includes: initializing a corresponding task execution node for each node in the unmanned cluster network.
8. A dynamic computing unloading device for unmanned swarms based on a crow search algorithm, characterized in that, An unloading decision node applied in an unmanned swarm network includes: a task confirmation module, used to determine all task initiating nodes that have initiated tasks to be executed in the current task cycle in the unmanned swarm network; each task initiating node has a corresponding task execution node in the unmanned swarm network; a node selection module, used to determine a target node for each task initiating node in the unmanned swarm network according to the task unloading feasibility conditions of each task initiating node and the task execution adaptability conditions of each task to be executed, through a randomization method; and an unloading sending module, used to send the node information of the target node to the corresponding task initiating node, so that the task initiating node updates the corresponding task execution node to the corresponding target node, and unloads the corresponding task to be executed according to the updated task execution node.
9. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, and when executed by a processor, the computer program implements the unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in any one of claims 1 to 7.
10. An electronic device, characterized in that, The method includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When executed by the processor, the computer program implements the steps of the unmanned swarm dynamic computation unloading method based on the crow search algorithm as described in any one of claims 1 to 7.