Methods, devices, equipment, and media for achieving situational consensus in unmanned aerial vehicle (UAV) swarms
Patent Information
- Application Number
- CN202511792940.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-01
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2045-12-01
AI Technical Summary
[0003]相关技术中,无人集群化应用场景中,态势感知区域广、环境复杂多变、特别在海上等复杂环境背景下目标具有小而分散的特点,各无人平台、集群通过协同态势感知模型实时汇总和分析多源信息,并进行分级、按需上报,为决策节点提供全面的态势信息,而中小型无人平台各自的探测能力有限,因此存在态势共识的缺失,导致了态势情报的准备性降低,进而影响了最终的任务效果
[0010]上述说明仅是本申请实施例技术方案的概述,为了能够更清楚了解本申请实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本申请实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
Smart Images

Figure CN121857778B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this disclosure relate to the field of unmanned aerial vehicle (UAV) swarm control technology, and more specifically, to a method, apparatus, device, and medium suitable for achieving situational consensus in an UAV swarm. Background Technology
[0002] In practical applications of unmanned equipment, the complexity of the environment, the differences in the perception capabilities of unmanned systems, and interference and failure of communication links can all lead to information dispersion and inconsistency. By researching and designing an effective consensus mechanism, it is possible to ensure that different unmanned systems can quickly and efficiently reach a consistent situational awareness assessment under mission conditions. This consensus mechanism can reduce information conflicts and misjudgments, ensuring that the unmanned swarm's perception of the environment is more unified and accurate, and enhancing information consistency and reliability.
[0003] In related technologies, in unmanned swarm application scenarios, the situational awareness area is wide, the environment is complex and changeable, especially in complex environments such as at sea, the targets are small and scattered. Each unmanned platform and swarm uses a collaborative situational awareness model to collect and analyze multi-source information in real time, and reports it in a hierarchical and on-demand manner to provide comprehensive situational information for decision-making nodes. However, the detection capabilities of small and medium-sized unmanned platforms are limited, resulting in a lack of situational consensus, which reduces the readiness of situational intelligence and thus affects the final mission results. Summary of the Invention
[0004] The embodiments described herein provide a method, apparatus, device, and medium for achieving situational consensus in unmanned aerial vehicle (UAV) swarms, overcoming the aforementioned problems.
[0005] Firstly, based on the content of this disclosure, a method for achieving situational consensus in a drone swarm is provided, including: Obtain the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index for each cluster node in the drone swarm; When the drone cluster is in a preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node. When the drone cluster is in a non-preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node. The non-consensus node only receives broadcast information within the drone cluster but does not participate in the cluster's situational information consensus process. The cluster master node broadcasts a consensus instruction containing target control commands to the consensus node within the drone cluster; the target control commands are sent from the drone console to the cluster master node. The consensus node determines the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy; the cluster master node determines the corresponding node situation information from the local situation information received by the cluster master node based on a pre-set confidence strategy. The cluster master node broadcasts the node status information corresponding to the cluster master node within the drone cluster; and the consensus node broadcasts the node status information corresponding to the consensus node within the drone cluster. If the number of identical situational information received by the current node meets the first preset rule, then the current node is determined to have reached a local situational consensus; the current node includes: the cluster master node, the consensus node, and the non-consensus node; The current node sends a situational consensus message to the drone control console. If it is determined that the number of identical situational consensus messages received by the UAV control console meets the second preset rule, then it is determined that the target control command has achieved network-wide consensus within the UAV cluster.
[0006] Secondly, according to the content of this disclosure, an apparatus for achieving situational consensus in a drone swarm is provided, comprising: The acquisition module is used to acquire the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node in the drone cluster. The first determining module is configured to, when the UAV cluster is in a preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the UAV cluster based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node; and when the UAV cluster is in a non-preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the UAV cluster based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node; the non-consensus node only receives broadcast information within the UAV cluster but does not participate in the cluster's situational information consensus process; The first broadcast module is used to broadcast a consensus instruction containing a target control command to the consensus node within the drone cluster through the cluster master node; the target control command is sent from the drone console to the cluster master node; The second determining module is used to determine the corresponding node situation information from the local situation information received by the consensus node based on a preset confidence strategy; and to determine the corresponding node situation information from the local situation information received by the cluster master node based on a preset confidence strategy. The second broadcast module is used to broadcast the node status information corresponding to the cluster master node within the UAV cluster through the cluster master node; and to broadcast the node status information corresponding to the consensus node within the UAV cluster through the consensus node. The third determining module is used to determine that the current node has reached a local situation consensus if the number of identical situation information received by the current node meets the first preset rule; the current node includes: the cluster master node, the consensus node, and the non-consensus node; The sending module is used to send a situational consensus message to the UAV console through the current node; The fourth determining module is used to determine that the target control command has achieved network-wide consensus within the drone cluster if the number of identical situational consensus messages received by the drone control console meets the second preset rule.
[0007] Thirdly, a computer device is provided, including a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements the steps of the method for achieving situational consensus in a drone swarm as described in any of the above embodiments.
[0008] Fourthly, a computer-readable storage medium is provided, on which a computer program is stored, and when executed by a processor, the computer program implements the steps of the method for achieving situational consensus in a drone swarm as described in any of the above embodiments.
[0009] The method for achieving situational consensus in a drone swarm provided in this application embodiment obtains the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node in the drone swarm; when the drone swarm is in a preset state, the cluster master node, consensus node, and non-consensus node are determined according to the communication latency index, task execution capability index, and computing power index corresponding to each cluster node; when the drone swarm is in a non-preset state, the cluster master node, consensus node, and non-consensus node are determined according to the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node; non-consensus nodes only receive broadcast information within the drone swarm but do not participate in the situational information consensus process within the swarm; the cluster master node broadcasts a consensus instruction containing target control commands to the consensus node within the drone swarm; the target... Control commands are sent from the UAV console to the cluster master node. Consensus nodes determine the corresponding node situation information from the local situation information received by the consensus nodes based on a pre-set confidence strategy. The cluster master node then determines the corresponding node situation information from the local situation information received by the cluster master node, also based on a pre-set confidence strategy. The cluster master node broadcasts its corresponding node situation information within the UAV cluster. Consensus nodes also broadcast their corresponding node situation information within the UAV cluster. If the number of identical situation information received by a current node meets a first preset rule, then the current node has reached a local situation consensus. The current node includes the cluster master node, consensus nodes, and non-consensus nodes. The current node sends a situation consensus message to the UAV console. If the number of identical situation consensus messages received by the UAV console meets a second preset rule, then the target control command has achieved network-wide consensus within the UAV cluster. In this way, each UAV node can share and interact in specific mission scenarios and select node situation information to quickly merge and form the situation information with the highest consistency, significantly improving the collaborative situational awareness efficiency of the UAV cluster, and thus improving mission execution efficiency.
[0010] The above description is merely an overview of the technical solutions of the embodiments of this application. In order to better understand the technical means of the embodiments of this application and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of this application more obvious and understandable, specific implementation methods of this application are described below. Attached Figure Description
[0011] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the accompanying drawings of the embodiments will be briefly described below. It should be understood that the drawings described below only relate to some embodiments of this disclosure and are not intended to limit this disclosure, wherein: Figure 1This is a flowchart illustrating a method for achieving situational consensus in a drone swarm, as disclosed in this publication.
[0012] Figure 2 This is a schematic diagram of a cluster consensus mechanism based on a competition mechanism, which is publicly provided.
[0013] Figure 3 This is a schematic diagram of a sharded blockchain model structure provided in this public disclosure.
[0014] Figure 4 This is a schematic diagram of an inter-group consensus mechanism provided in this public document.
[0015] Figure 5 This is a schematic diagram of a device for achieving situational consensus in a drone swarm, as disclosed in this publication.
[0016] Figure 6 This is a schematic diagram of the structure of a computer device provided in this disclosure.
[0017] It should be noted that the elements in the attached diagram are schematic and not drawn to scale. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this disclosure. All other embodiments obtained by those skilled in the art based on the described embodiments of this disclosure without creative effort are also within the scope of protection of this disclosure.
[0019] Unless otherwise defined, all terms used herein (including technical and scientific terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which this subject matter pertains. It will be further understood that terms such as those defined in commonly used dictionaries shall be interpreted as having the meaning consistent with their meaning in the context of the specification and in the relevant art, and shall not be interpreted in an idealized or overly formal form unless otherwise explicitly defined herein. As used herein, the statement of “connecting” or “coupling” two or more parts together shall mean that these parts are directly joined together or joined through one or more intermediate components.
[0020] The term "embodiment" as used herein means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of the phrase "embodiment" in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0021] In this document, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists, A and B exist simultaneously, or B exists. Additionally, the character " / " generally indicates that the preceding and following related objects have an "or" relationship. Terms such as "first" and "second" are only used to distinguish one component (or part of a component) from another component (or another part of a component).
[0022] In the description of this application, unless otherwise stated, "multiple" means two or more (including two), and similarly, "multiple groups" means two or more (including two groups).
[0023] In the unmanned swarm system, each unmanned platform (i.e., drone) forms a network, defining itself as a node. An intelligent agent is built for each node to ensure that, in specific task scenarios, unmanned nodes can share, interact, and competitively select the perception information generated by each node, quickly merging it to form the most consistent situational information based on task requirements and rules. During the consensus process, a contract layer, consensus layer, network layer, and data layer are constructed. In the contract layer, each node integrates a smart contract module for automatically executing internal swarm operations. In the network layer, P2P network communication is used within the swarm to ensure efficient interconnection and data transmission between nodes. In the consensus layer, the consensus algorithm elects the master node based on the nodes' own capabilities. To improve system communication capabilities, sharding is implemented in a low-resource mode, and secondary consensus within and between groups reduces the number of communications. In the data layer, the consensus results are stored using blockchain technology to ensure data immutability and traceability.
[0024] This embodiment can competitively select the node with the strongest overall capabilities for the current task as the master node based on the varying complexity of the cluster task. It also considers the constantly changing external environment and the resulting changes in the credit model's indicators, which is more conducive to consensus formation. To address inconsistencies in node situational information within the unmanned cluster, it quickly filters out the most representative situational information based on changes in evaluation indicators, achieving information consistency across the cluster. In situations with a large number of cluster nodes and high communication pressure, the unmanned cluster performs sharding and secondary consensus within and between groups, optimizing communication overhead, improving consensus efficiency, and adapting to communication needs in low-resource environments. Through the competitive mechanism, the unmanned system can respond rapidly in changing environments, providing accurate situational awareness and decision support, thereby improving the overall task success rate and efficiency.
[0025] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings.
[0026] Figure 1 This is a flowchart illustrating a method for achieving situational consensus in a drone swarm, as provided in an embodiment of this disclosure. Figure 1 As shown, the specific process of achieving situational consensus in a drone swarm includes: S110. Obtain the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index for each cluster node in the drone cluster.
[0027] In this context, cluster nodes correspond to the drone devices within a drone swarm. The communication latency index describes the latency that cluster nodes may encounter during communication, reflecting the timeliness and stability of information transmission. The master node rotation index measures the frequency of master node rotation during the consensus process, ensuring the system maintains efficient task allocation and coordination capabilities in dynamic environments. The consensus rounds index reflects the number of iterations required for cluster nodes to complete a consensus decision, directly affecting the overall system's response speed and resource consumption. The task execution capability index assesses the performance potential of each node in a specific task, providing a scientific basis for task allocation. The computing power index describes the computing resource status of cluster nodes, enabling optimization of task processing priorities and load balancing in complex scenarios.
[0028] In some embodiments, obtaining the communication latency index and master node round index for each cluster node in the drone swarm includes: determining the communication latency index for each cluster node by using the upper limit of communication transaction latency and the communication latency between each cluster node and other nodes; and determining the master node round index for each cluster node by using the difference between the upper and lower limits of the rounds a node serves and the rounds each cluster node serves as a master node.
[0029] Among them, the communication delay index A i It can be calculated using the following formula (1).
[0030] (1) In formula (1), d ij Indicates an unmanned node i and unmanned nodes j Inter-communication delay; d _ max This indicates the maximum allowed latency of the exchange (i.e., the upper limit of communication transaction latency); if the maximum latency is exceeded, it means that the communication failed to complete. The communication latency is the average communication latency from each node to other nodes in the unmanned cluster when the credit value is calculated.
[0031] Master Node Round Index B iThe following formula (2) can be used to calculate the value at the node. i Continue to serve as master node k After the round, their reputation value can be downgraded.
[0032] (2) In formula (2), R △ This represents the difference between the lower limit of a normal node and the lower limit of a high-credit node, which is the difference between the upper and lower limits of the round a node serves. m This indicates the round with the highest consensus, after the most... m After each consensus round, a new master node needs to be elected. The further back in time the consensus round is from the current round, the less impact it has on the node's reputation score. This aims to prevent a single node from serving as the master node for an extended period, thus avoiding excessive concentration of power that could undermine the system's decentralized nature. It also helps maintain the system's activity and ensures its healthy operation.
[0033] Consensus Round Index C i It can be calculated using the following formula (3).
[0034] (3) In formula (3), T i Represents a node i The t Whether the consensus is reached in a timely manner; if so, then... T i =1, if not completed in time, then T i =0; , representing the time decay factor.
[0035] Task execution capability index D i It can be calculated using the following formula (4).
[0036] (4) In an unmanned cluster, each node is equipped with different types of CPUs and GPUs. The CPUs of the node devices may have different numbers of cores, so comprehensive statistics of the CPUs are needed to accurately evaluate the performance of the node CPUs. The node devices may have multiple GPUs of the same type or different types, so similarly, comprehensive evaluation of these GPUs is also needed to obtain the computing power index of each cluster node.
[0037] S120. When the drone cluster is in a preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the drone cluster based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node; when the drone cluster is in a non-preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the drone cluster based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node.
[0038] Non-consensus nodes only receive broadcast information within the drone swarm but do not participate in the swarm's situational awareness consensus process. Both the swarm master node and consensus nodes participate in the swarm's situational awareness consensus process and both receive broadcast information from the drone swarm.
[0039] The preset state indicates that the drone cluster is in its initial state; the non-preset state indicates that there are unmanned nodes in the drone cluster that have experienced communication failures or have been destroyed, or that the master node needs to be updated to complete a specified round of consensus.
[0040] In some embodiments, the cluster master node, consensus nodes, and non-consensus nodes of the UAV cluster are determined based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node. This includes: determining the confidence score corresponding to each cluster node based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node; determining candidate nodes based on the confidence score corresponding to each cluster node; broadcasting the corresponding confidence score of the candidate nodes to the non-candidate nodes in the UAV cluster, so that the non-candidate nodes can vote to select the cluster master node corresponding to the UAV cluster from the candidate nodes based on the confidence score and relative distance of the candidate nodes; and determining the unselected nodes among the candidate nodes as consensus nodes, and determining the non-candidate nodes as non-consensus nodes.
[0041] Based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node, the cluster master node, consensus nodes, and non-consensus nodes of the drone cluster are determined. This includes: determining the confidence score corresponding to each cluster node based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index; determining candidate nodes based on the confidence score corresponding to each cluster node; broadcasting the corresponding confidence score of the candidate nodes to the non-candidate nodes in the drone cluster, so that the non-candidate nodes can vote to select the cluster master node corresponding to the drone cluster from the candidate nodes based on the confidence score corresponding to the candidate nodes and the relative distance; and determining the unselected nodes among the candidate nodes as consensus nodes, and determining the non-candidate nodes as non-consensus nodes.
[0042] Among them, a credit value assessment mechanism is introduced. The credit evaluation model scores the consensus nodes based on their behavior in the consensus process, and the node's state is determined according to the defined node credit value threshold range. Different node states result in different reward and punishment mechanisms, which can evaluate and provide feedback on node behavior in a timely manner.
[0043] For the credit rating model, the node credit value is set to [0, 100], with an initial value of 50. Based on the credit value, nodes participating in consensus are divided into three categories: low-credit nodes, ordinary nodes, and high-credit nodes. Management nodes and candidate nodes are both consensus nodes. Low-credit nodes have low credit values and only receive consensus results but do not participate in the consensus process. The node categories are divided according to credit values in different ranges as shown in Table 1 below.
[0044] Table 1 Node Credit Value Categories
[0045] To assess a node's current creditworthiness, data such as the node's communication latency performance, historical creditworthiness, number of times it was elected as a master node, accuracy in delivering situational information, and communication failure rate are used as metrics to measure the node's trustworthiness.
[0046] The credit rating model is shown in the following formula (5).
[0047] (5) In formula (5), R i,k Indicates an unmanned node i In the k On the credibility value in consensus; A i , B i , C i , D i , E i After the calculation is complete, the range can be adjusted to [-0.5, 0.5] by normalization with offset value. α , β , θ , γ , μ These represent the weighting coefficients for the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index, respectively. It should be noted that when the drone swarm is in a preset state... α , γ , μ All are 0.
[0048] By weighting various indicators, the reputation value of a node is dynamically adjusted based on its behavior; positive behavior increases its reputation value, while negative behavior decreases it. This facilitates the determination of its rating based on the current reputation value of each node.
[0049] All high-credit nodes become candidate nodes and broadcast their own credit values to all non-candidate nodes. All non-candidate nodes vote according to the credit value and distance of each candidate, as shown in the following formula (6).
[0050] (6) In formula (6), V ij Indicates non-candidate nodes i For candidate nodes j The voting score; R j Indicates candidate nodes j The credit score (i.e., confidence score); , representing a node i and j Normalized distance, max and min Representing nodes respectively i The maximum and minimum values to other nodes; a , b This indicates the weights that control the score.
[0051] The candidate node with the most votes is selected as the master node. If there is a tie, the node with the higher credit score is selected as the new master node.
[0052] In this embodiment, the credit evaluation model reflects the performance of nodes in consensus. A node with low latency, high consensus completion rate, closer proximity to the cluster, and good historical credit score is considered highly trustworthy; conversely, a node with high latency, low consensus completion rate, and poor historical credit score is considered less trustworthy. For different tasks, by adjusting weight values to calculate the computing power index and task execution capability index, unmanned nodes with stronger task-handling capabilities can be elected as master nodes. Furthermore, the master node's value is appropriately reduced after each round of consensus to ensure it is not continuously elected as the master node in the next round of master node election, thus ensuring the decentralization of the unmanned cluster.
[0053] S130. The cluster master node broadcasts a consensus instruction containing target control commands to the consensus node within the UAV cluster; the consensus node determines the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy; the cluster master node determines the corresponding node situation information from the local situation information received by the cluster master node based on a pre-set confidence strategy.
[0054] Among them, the target control command is sent from the drone console to the cluster master node.
[0055] A pre-defined confidence strategy describes how each node selects information within a certain range of its local situational awareness as correct information, and then selects the situational awareness information corresponding to the node with the highest confidence among the correct information as that node's final situational awareness information. Given the context of maritime operations, there may be subtle differences in the situational awareness information detected by each node, and situations where only a few unmanned nodes can detect targets, a confidence strategy is needed to ensure that the majority of nodes reach a correct consensus.
[0056] In some embodiments, the corresponding node situation information is determined by the consensus node from the local situation information received by the consensus node based on a pre-set confidence strategy; the corresponding node situation information is determined by the cluster master node from the local situation information received by the cluster master node based on a pre-set confidence strategy, including: The consensus node selects the node with the highest confidence from the nodes corresponding to each received local situation information as the situation coordination node; and the local situation information corresponding to the situation coordination node is determined as the node situation information corresponding to the consensus node. The cluster master node selects the node with the highest confidence from the nodes corresponding to each received local situation information as the situation coordination node; and the local situation information corresponding to the situation coordination node is determined as the node situation information corresponding to the cluster master node.
[0057] like Figure 2 As shown, the consensus mechanism in this embodiment mainly includes five stages: request, pre-preparation, preparation, confirmation, and submission. Among them, request and submission are the interaction stages between the UAV control station and the UAV cluster, while pre-preparation, preparation, and confirmation are the internal information consensus stages of the UAV cluster.
[0058] For example, suppose there are four drones in a drone swarm, where drone 0 is the master node, and drones 1, 2, and 3 are slave nodes. Drone 3 malfunctions and cannot communicate normally. The drone control station connects to each node. First, the drone control station sends a request message to drone 0, and while maintaining the connection with the drone swarm, it issues combat instructions (i.e., target control instructions). After receiving the instructions, drone 0 will enter a pre-ready state and forward the combat instructions to other nodes in the drone swarm.
[0059] During the request phase, the drone console sends a message to drone 0 in the following format:<REQUST,o,t,c> The request is as follows: “o” represents the specific operation requested, used to issue instructions to the unmanned swarm and switch the combat mode; t is the timestamp appended by the UAV console when the request is made, used to record the time; c is the UAV console identifier, used to ensure the accuracy of the source of control information; REQUST: contains message content m, message digest d(m), which is the specific content of the request from the UAV console and the encrypted signature.
[0060] During the pre-preparation phase, drone 0 receives a request from the drone console, verifies the signature of the drone console request message, and discards invalid requests. If the signature is valid, it enters the pre-preparation state. Drone 0 receives request m, broadcasts request m to drones 1, 2, and 3, assigns a sequence number n to request m, and broadcasts it to drones 1, 2, and 3. The broadcast message is then stored in drone 0's log. The message format during the pre-preparation phase is as follows:<PRE-PREPARE,v,n,d> p,m>>. Where "v" represents the drone number 0; n represents the sequence number assigned to request m; d is the drone console message digest; and m is the message content.<PRE-PREPARE,v,n,d> Sign off on the drone (0 signatures).
[0061] When a slave node (taking drone 1 as an example) receives a pre-preparation message from drone 0, the following verification operations are required: Verify the message signature sent by drone 0. Currently, drone 1 has not received any pre-preparation messages from the same master node 0 with the same number but different signatures. The received message sequence number n is within the current receiving window. The digests d and m, i.e., whether the signatures match. If all of the above pass, the message is accepted, and the preparation phase begins. Drone 1 broadcasts the preparation message (to all nodes in the drone cluster) and then stores the message in its local log. All nodes in the drone cluster that normally received the pre-preparation message need to perform the above process.
[0062] During the preparation phase, when any unmanned node in the unmanned cluster (taking node 1 as an example) receives a preparation phase message, it verifies the signature and checks whether it is the current master node, i.e., the consensus initiated by master node 0. It also checks whether the message sequence number n is within the current receiving window. If the verification passes, it accepts the message and saves it to its local log. A node is considered ready when it meets the following three conditions, denoted as prepared(m,v,n,i): ① Message m exists in the local log; ② A pre-prepared message m exists in the local log; ③ 2f pre-prepared messages from other nodes exist in the local log. Here, f represents the number of invalid or erroneous nodes; n represents the total number of nodes in the system. In the case of incorrect identification of situational information, n is at least 3f+1; in the case of only communication failure, n is at least 2f+1.
[0063] The pre-preparation message includes the situational information detected by the node itself. Other nodes receive this situational information and use it to select the final situational information later. This ensures a globally consistent order for message m without a change in the master node. Furthermore, the pre-preparation and preparation messages are recorded locally.
[0064] In other words, with the primary node remaining unchanged: a normal node i It is not possible to achieve the same sequence number n for two or more different messages. In other words, prepared(m,v,n,i) and prepared(m',v,n,i) cannot exist simultaneously. Two normal nodes i , j For the same message m, the same sequence number n must be reached in the prepared state.
[0065] During the determination phase, when drones i After receiving more than 2f+1 messages, the system enters the confirmation state. All UAVs select the final situation information from all the situation information they have received according to the same rules (i.e., the pre-set confidence strategy) and add the final situation information to the confirmation message to be sent.
[0066] S140. Broadcast the node status information corresponding to the cluster master node within the drone cluster through the cluster master node; and broadcast the node status information corresponding to the consensus node within the drone cluster through the consensus node.
[0067] Among them, corresponding to Figure 2 In the determination phase, drones iBefore broadcasting node status information, the following verification steps are required: verify the message signatures sent by other nodes. The current replica node has not received any acknowledgment messages under the same v and with the same number n, but with different signatures; the received message sequence number n is within the current receiving window; and the digests of d and m are consistent. Once these conditions are met, the node status information is broadcast to all nodes in the unmanned cluster.
[0068] S150. If it is determined that the number of identical situational information received by the current node meets the first preset rule, then it is determined that the current node has reached a local situational consensus; a situational consensus message is sent to the UAV control console through the current node; if it is determined that the number of identical situational consensus messages received by the UAV control console meets the second preset rule, then it is determined that the target control command has reached a network-wide consensus within the UAV cluster.
[0069] The current nodes include: cluster master node, consensus node and non-consensus node.
[0070] Corresponding to Figure 2 In the determination stage, when the drone i A node reaches consensus when it has achieved a ready state and received 2f+1 identical status confirmation messages (i.e., according to the first preset rule). After reaching consensus, the node's status information is shared in data consensus, packaged into contract data, and uploaded to the blockchain. The node then has a globally consistent order for message m and transmits the information to the client.
[0071] During the submission phase, nodes return the result information after reaching local consensus.<REPLY,v,t,c,i,r> The message is sent to the drone control console, where r is the result of the request operation. If the client receives f+1 identical REPLY messages (i.e., the second preset rule), it means that the request initiated by the client has achieved consensus across the entire network. Otherwise, the client needs to determine whether to resend the request to the master node.
[0072] In this embodiment, the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node in the UAV cluster are obtained. When the UAV cluster is in a preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, task execution capability index, and computing power index of each cluster node. When the UAV cluster is in a non-preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node. Non-consensus nodes only receive broadcast information within the UAV cluster but do not participate in the situational information consensus process within the cluster. The cluster master node broadcasts a consensus instruction containing target control commands to the consensus nodes within the UAV cluster. The target control commands are UAV control... The system sends situational awareness information to the cluster master node; consensus nodes determine the corresponding node situational awareness information from the local situational awareness information received by the consensus nodes based on a pre-set confidence strategy; the cluster master node determines the corresponding node situational awareness information from the local situational awareness information received by the cluster master node based on a pre-set confidence strategy; the cluster master node broadcasts the node situational awareness information corresponding to the cluster master node within the UAV cluster; and the consensus nodes broadcast the node situational awareness information corresponding to the consensus nodes within the UAV cluster; if the number of identical situational awareness information received by the current node meets a first preset rule, then the current node is determined to have reached a local situational awareness consensus; the current node includes: the cluster master node, consensus nodes, and non-consensus nodes; the current node sends a situational awareness consensus message to the UAV control console; if the number of identical situational awareness consensus messages received by the UAV control console meets a second preset rule, then the target control command is determined to have reached a network-wide consensus within the UAV cluster. In this way, each UAV node can share and interact in specific task scenarios and select node situational awareness information to quickly merge and form the situational awareness information with the highest consistency, significantly improving the collaborative situational awareness efficiency of the UAV cluster, and thus improving task execution efficiency.
[0073] In real-world scenarios involving unmanned maritime swarms, the formation of consensus on swarm status information under limited communication resources must be considered. As the number of nodes increases, the number of system communications rises significantly, easily leading to network congestion, reduced consensus efficiency, and high latency. To address this issue, this embodiment employs a clustering-based grouping mechanism to optimize consensus communication. First, the unmanned swarm is grouped using the K-medoids clustering algorithm; then, a voting mechanism based on a credit model is used to elect a master node and the master node within the master node cluster within each group; second, consensus is achieved within each group and between groups.
[0074] In some embodiments, the method further includes: if the number of cluster nodes in the drone cluster exceeds a preset threshold, the drone cluster is grouped to obtain multiple cluster groups; the group master node corresponding to each cluster group is determined based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each group node in the cluster group; intra-group consensus is achieved for each cluster group through the group master node corresponding to each cluster group; and inter-group consensus is achieved for multiple cluster groups through the master node group to which the cluster master node belongs.
[0075] The process of determining the master node of a cluster group is the same as that of determining the master node of a drone cluster, and will not be repeated here.
[0076] The K-medoids algorithm initially limits the cluster centers to the sample points, and K-medoids is more robust to noise in the samples than other clustering algorithms such as K-means. It is more flexible in handling dynamically changing unmanned swarms in the context of maritime operations. Therefore, this embodiment uses the K-medoids algorithm to group the blockchain network.
[0077] For example, define the set of nodes in a blockchain network as V = {v1, v2, ...} ,vn}, for During the initial grouping, a probe message (PING, v_i, timestamp_i, sign_i) is sent to all nodes in the node set V, where PING is the probe message identifier, v_i is the node number, timestamp_i is the timestamp when the probe message is sent, and sign_i is the message signature. Upon receiving this probe message, a timestamp timestamp_ji will be recorded, and the validity of the message will be verified. After verification, the one-way distance from node v_i to v_j will be calculated by the following formula (7).
[0078] (7) Node v_j records d(v_i, v_j) locally and constructs a reply message (REPLY, v_j, d(v_i, v_j), sign_j) to send to v_i, where REPLY is the reply message identifier, v_j is the node number, d(v_i, v_j) is the one-way distance, and sign_j is the message signature. After the probe is completed, all nodes will calculate a globally consistent distance matrix, where the distances are Euclidean distances.
[0079] The K-medoids algorithm is used to cluster the nodes into K clusters, where K is equal to the number of supervisory nodes in the blockchain network. Each cluster is represented by C_i, and in each iteration, C_i has a cluster centroid node n_i. The set of all cluster centroid nodes is defined as N = {n_1, n_2, ..., n_i}. Based on the distance matrix D, construct the membership function of node v_i as shown in formula (8).
[0080] (8) The objective function for iteration can be obtained from the membership function, as shown in formula (9) below.
[0081] (9) According to the K-medoids algorithm, K nodes are randomly selected from the node set V as initial cluster centers. The remaining nodes are then assigned to their respective cluster centers based on their membership functions. Within each cluster, the criterion function for each node is calculated, and the node with the smallest criterion function is selected as the new cluster center. This process is iterated until all cluster centers no longer change. When the K-medoids algorithm converges, the objective function value is minimized, and the grouping is complete. At this point, the sharded blockchain model structure is as follows: Figure 3 As shown.
[0082] In some embodiments, consensus within each cluster group is achieved through the group master node corresponding to each cluster group. This includes: broadcasting corresponding local situation information within the cluster group through the group master node; broadcasting corresponding local situation information within the cluster group through the group slave nodes; and if an inconsistency is detected between the local situation information corresponding to the group master node and the local situation information corresponding to the group slave nodes, the group master node broadcasts the local situation information corresponding to the group master node to the group slave nodes within the cluster group, so that the group slave nodes can reach a consensus on the group situation based on the local situation information corresponding to the group master node.
[0083] For example, suppose a cluster group has three nodes: drones A, B, and C, where A is the group's master node. If drones B and C have different log entries, including records of drone status, drone A will forcibly overwrite the results of drones B and C due to inconsistencies among group members. Specifically, drone A uses log replication consistency checks to find the largest index value of the log entries that are identical to its own on the follower nodes.
[0084] When consensus is reached, drone A records its own situational information, as well as that of drones B and C. If at a certain moment drones A and B detect targets 1 and 2, and drone C detects target 1, then drone A acquires the most recent situational data and finds that more than half of the nodes in the group share the same situational information. It then directly broadcasts this information as the group's consensus within the group. This mechanism significantly reduces the communication requirements of the drone swarm, ensuring a reduction in the amount of communication.
[0085] Furthermore, when a node is deleted within an unmanned cluster group, a new master node is elected within the group. When a node change occurs within the cluster, i.e., a new unmanned node joins a group, a joint consensus is required to update the cluster configuration. Joint consensus refers to the use of a transitional intermediate configuration during the process of changing the cluster from an old configuration to a new configuration. The joint consensus configuration is the union of the old and new configurations, allowing multiple nodes to be inserted into the cluster at once without causing a new master node election issue. Moreover, the entire cluster can still receive user requests during the configuration transition process, thus achieving cluster awareness of configuration switching. Because the cluster will have both old and new configurations during the joint consensus phase, the following constraints are imposed for better operation: the logs of the old and new configurations will be replicated to all nodes in both configurations; any node in either configuration can become a group master node; and a majority vote is required in both the old and new configurations for the election and log replication phases to be committed and effective.
[0086] For example, suppose a drone cluster has drones A, B, and C, with drone A as the master node. Now, we need to add drones D and E. The steps to add drone D are as follows: First, drone A synchronizes data with drone D. Second, the leader drone A copies the new configuration [A, B, C, D] as a log entry to all nodes in the new configuration (drones A, B, C, D), and then applies the log entry to its local state machine, completing the single-node change. Similarly, to add node E: First, drone A synchronizes data with drone E. Second, drone A copies the new configuration [A, B, C, D, E] as a log entry to all nodes in the new configuration (drones A, B, C, D, E), and then applies the log entry to its local state machine, completing the single-node change.
[0087] In some embodiments, consensus is achieved among multiple cluster groups through the master node group where the cluster master node is located. This includes: determining the corresponding intra-group situational information from the local situational information received by the cluster group based on a preset confidence policy; determining the corresponding intra-group situational information from the local situational information received by the master node group based on a preset confidence policy; broadcasting the intra-group situational information corresponding to the master node group within the UAV cluster through the master node group; and broadcasting the intra-group situational information corresponding to each cluster group within the UAV cluster through each cluster group; if the number of identical situational information received by the current group meets a third preset rule, then the current group is determined to have reached a local situational consensus; sending a situational consensus message to the UAV console through the current group; and if the number of identical situational consensus messages received by the UAV console meets a fourth preset rule, then inter-group consensus among multiple cluster groups is determined to have been achieved.
[0088] The diagram of the inter-group consensus mechanism is as follows: Figure 4 As shown. The third preset rule can be to achieve 2q+1 identical situational information; the fourth preset rule can be to achieve q+1 identical situational consensus messages. Where q represents the number of invalid or erroneous groups; within the first group, if the number of invalid or erroneous nodes exceeds half (or other proportions) of the total number in the group, then the group is determined to be an invalid or erroneous group.
[0089] Based on a pre-set confidence strategy, the system determines the intra-group situational information from the local situational information received by the cluster group; similarly, it determines the intra-group situational information from the local situational information received by the master node group, based on a pre-set confidence strategy. This can include: selecting the group with the highest confidence from the nodes corresponding to each received local situational information as the situational coordination group; and determining the corresponding intra-group situational information (which can be derived from the combined local situational information received by each node in the group, or determined from the local situational information received by the master node in the group). Similarly, it selects the group with the highest confidence from the nodes corresponding to each received local situational information as the situational coordination group; and determines the corresponding intra-group situational information (which can be derived from the combined local situational information received by each node in the group, or determined from the local situational information received by the master node in the group).
[0090] This example illustrates the communication complexity of inter-group consensus. Assuming the number of blockchain shards is K (K≥4) and the number of nodes in each shard is n (n≥3), the total number of nodes in the system can be obtained as follows: N = K *n Through the inter-group consensus mechanism in this embodiment, the number of consensus communications is [number missing]. Within a single shard, the master node first broadcasts to all slave nodes; this process involves the following number of communications: n -1; then the master node will collect the status information of all slave nodes, and the number of communications in this process is... -1. During the commit phase, the master node will send confirmation messages to all slave nodes in the group. This process involves the following number of communications: n -1. Therefore, the number of communications required for a single consensus can be obtained: T 3=2 K 2 - K + K [ n +( n -1)+( K -1)+( n -1)]=3 K 2 +3 NK -4 K The communication complexity is only O ( N + K 2 ).
[0091] In summary, this embodiment effectively suppresses the generation and transmission of erroneous information by introducing a credit assessment model, reducing decision-making errors caused by misidentification and effectively improving the accuracy and reliability of information. By introducing a competition mechanism into the traditional collaborative situational awareness model, a competition-based collaborative situational awareness model is formed, significantly improving the collaborative situational awareness efficiency of the unmanned swarm and generating a more accurate global situational map, ensuring the accuracy and reliability of information processing. The credit model calculates and assigns a credit value to each node to evaluate its credibility and performance, and uses competitive voting based on the credit values to select the most suitable master node. Once all nodes reach a consensus on the situational information, this consensus information is packaged into contract data and uploaded to the blockchain for storage and management. In this way, the unmanned swarm can effectively share and verify situational information, ensuring the accuracy and reliability of the information.
[0092] Figure 5 This is a schematic diagram of a device for achieving situational consensus in a drone swarm, as provided in this embodiment. The device for achieving situational consensus in a drone swarm may include: The acquisition module 510 is used to acquire the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node in the UAV cluster.
[0093] The first determining module 520 is used to determine the cluster master node, consensus node, and non-consensus node of the UAV cluster based on the communication latency index, task execution capability index, and computing power index of each cluster node when the UAV cluster is in a preset state; and to determine the cluster master node, consensus node, and non-consensus node of the UAV cluster based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node when the UAV cluster is not in a preset state; the non-consensus node only receives broadcast information within the UAV cluster, but does not participate in the consensus process of situational information within the cluster.
[0094] The first broadcast module 530 is used to broadcast a consensus instruction containing target control commands to the consensus nodes within the drone cluster through the cluster master node; the target control commands are sent from the drone console to the cluster master node.
[0095] The second determining module 540 is used to determine the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy; and to determine the corresponding node situation information from the local situation information received by the cluster master node based on a pre-set confidence strategy.
[0096] The second broadcast module 550 is used to broadcast the node status information corresponding to the cluster master node within the UAV cluster through the cluster master node; and to broadcast the node status information corresponding to the consensus node within the UAV cluster through the consensus node.
[0097] The third determining module 560 is used to determine that the current node has reached a local situation consensus if the number of identical situation information received by the current node meets the first preset rule; the current node includes: cluster master node, consensus node and non-consensus node.
[0098] The sending module 570 is used to send situational consensus messages to the UAV console through the current node.
[0099] The fourth determination module 580 is used to determine that if the number of identical situational consensus messages received by the UAV console meets the second preset rule, the target control command will achieve network-wide consensus within the UAV cluster.
[0100] The apparatus for achieving situational consensus in a drone swarm provided in this disclosure can execute the above-described method embodiments. Its specific implementation principle and technical effects can be found in the above-described method embodiments, and will not be repeated here.
[0101] This application also provides a computer device. Please refer to the following for details. Figure 6 , Figure 6 This is a basic structural block diagram of the computer device in this embodiment.
[0102] The computer device includes a memory 610 and a processor 620 that are interconnected via a system bus. It should be noted that only a computer device with memory 610 and processor 620 is shown in the figure; however, it should be understood that it is not required to implement all the components shown, and more or fewer components may be implemented alternatively. Those skilled in the art will understand that the computer device described herein is a device capable of automatically performing numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes, but is not limited to, microprocessors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), embedded devices, etc.
[0103] Computer devices can include desktop computers, laptops, handheld computers, and cloud servers. These devices allow for human-computer interaction with users through keyboards, mice, remote controls, touchpads, or voice-activated devices.
[0104] The memory 610 includes at least one type of readable storage medium, including non-volatile memory or volatile memory, such as flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, optical disk, etc. RAM may include static RAM or dynamic RAM. In some embodiments, the memory 610 may be an internal storage unit of a computer device, such as the hard disk or memory of the computer device. In other embodiments, the memory 610 may also be an external storage device of a computer device, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, or flash card equipped on the computer device. Of course, the memory 610 may include both internal storage units and external storage devices of the computer device. In this embodiment, the memory 610 is typically used to store the operating system and various application software installed on the computer device, such as the program code of the method described above. In addition, the memory 610 can also be used to temporarily store various types of data that have been output or will be output.
[0105] The processor 620 is typically used to perform the overall operation of a computer device. In this embodiment, the memory 610 is used to store program code or instructions, including computer operation instructions. The processor 620 is used to execute the program code or instructions stored in the memory 610 or to process data, such as program code that runs the methods described above.
[0106] In this article, the bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. This bus system can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used to represent it in the diagram, but this does not mean that there is only one bus or one type of bus.
[0107] Another embodiment of this application also provides a computer-readable medium, which may be a computer-readable signal medium or a computer-readable medium. A processor in a computer reads computer-readable program code stored in the computer-readable medium, enabling the processor to execute the functional actions specified in each step or combination of steps in the above method; and to generate means for implementing the functional actions specified in each block or combination of blocks in the block diagram.
[0108] Computer-readable media include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared memory or semiconductor systems, devices or apparatuses, or any suitable combination thereof, wherein the memory is used to store program code or instructions, the program code including computer operation instructions, and the processor is used to execute the program code or instructions of the above-described methods stored in the memory.
[0109] The definitions of memory and processor can be found in the description of the foregoing computer device embodiments, and will not be repeated here.
[0110] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0111] In the various embodiments of this application, the functional units or modules can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0112] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0113] In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" as described in this application does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. This application can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims listing several means, several units of these means may be embodied by the same item of hardware. The use of "first," "second," and "third," etc., does not indicate any order and these words should be interpreted as names. Unless otherwise specified, the steps in the above embodiments should not be construed as limiting the order of execution.
[0114] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A method for achieving situation consensus in a UAV swarm, characterized in that, include: Obtain the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index for each cluster node in the drone swarm; When the drone cluster is in a preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node. When the drone cluster is in a non-preset state, the cluster master node, consensus node, and non-consensus node are determined based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node. The non-consensus node only receives broadcast information within the drone cluster but does not participate in the cluster's situational information consensus process. The cluster master node broadcasts a consensus instruction containing target control commands to the consensus node within the drone cluster; the target control commands are sent from the drone console to the cluster master node. The consensus node determines the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy. The cluster master node determines the corresponding node status information from the local status information received by the cluster master node based on a pre-set confidence strategy. The cluster master node broadcasts the node status information corresponding to the cluster master node within the drone cluster; And broadcast the node status information corresponding to the consensus node within the drone cluster through the consensus node; If the number of identical situational information received by the current node meets the first preset rule, then it is determined that the current node has reached a local situational consensus. The current node includes: the cluster master node, the consensus node, and the non-consensus node; The current node sends a situational consensus message to the drone control console. If it is determined that the number of identical situational consensus messages received by the UAV control console meets the second preset rule, then it is determined that the target control command has achieved network-wide consensus within the UAV cluster.
2. The method of claim 1, wherein, The consensus node determines the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy. The cluster master node determines the corresponding node situation information from the local situation information received by the cluster master node based on a pre-set confidence strategy, including: The consensus node selects the node with the highest confidence from the nodes corresponding to each received local situation information as the situation coordination node; and determines the local situation information corresponding to the situation coordination node as the node situation information corresponding to the consensus node. The cluster master node selects the node with the highest confidence from the nodes corresponding to each received local situation information as the situation coordination node; and determines the local situation information corresponding to the situation coordination node as the node situation information corresponding to the cluster master node.
3. The method of claim 1, wherein, The step of determining the cluster master node, consensus node, and non-consensus node corresponding to the UAV cluster based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node includes: Based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node, a confidence score is determined for each cluster node; candidate nodes are then determined based on the confidence scores of each cluster node; the candidate nodes broadcast their corresponding confidence scores to the non-candidate nodes in the drone cluster, so that the non-candidate nodes vote to select the cluster master node corresponding to the drone cluster from the candidate nodes based on the confidence scores and relative distances of the candidate nodes; and the unselected nodes among the candidate nodes are determined as consensus nodes, and the non-candidate nodes are determined as non-consensus nodes. The process of determining the cluster master node, consensus node, and non-consensus node of the drone cluster based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node includes: Based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node, a confidence score is determined for each cluster node. Candidate nodes are then determined based on their confidence scores. These candidate nodes broadcast their corresponding confidence scores to the non-candidate nodes in the drone cluster, enabling the non-candidate nodes to vote for the cluster master node based on the candidate node's confidence score and relative distance. The unselected candidate nodes are then identified as consensus nodes, and the non-candidate nodes are identified as non-consensus nodes.
4. The method of claim 1, wherein, The acquisition of the communication latency index and master node round index for each cluster node in the UAV cluster includes: The communication latency index for each cluster node is determined by the upper limit of communication transaction latency and the communication latency between each cluster node and other nodes; The master node round index for each cluster node is determined by the difference between the upper and lower limits of the rounds in which a node serves as a master node and the rounds in which each cluster node serves as a master node.
5. The method of claim 1, wherein, Also includes: If the number of cluster nodes in the drone cluster exceeds a preset threshold, the drone cluster is grouped to obtain multiple cluster groups. The group master node corresponding to the cluster group is determined based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each group node in the cluster group. Consensus within each cluster group is achieved through the group master node corresponding to each cluster group; And consensus is achieved among multiple cluster groups by grouping the master nodes where the cluster master nodes are located.
6. The method of claim 5, wherein, The step of achieving intra-group consensus for each cluster group through the group master node corresponding to each cluster group includes: The master node of the cluster group broadcasts the corresponding local situation information within the cluster group; the slave node of the cluster group broadcasts the corresponding local situation information within the cluster group. If the local situation information corresponding to the group master node is found to be inconsistent with the local situation information corresponding to the group slave node, the group master node broadcasts the local situation information corresponding to the group master node to the group slave node within the cluster group, so that the group slave node can reach a group situation consensus based on the local situation information corresponding to the group master node.
7. The method of claim 5, wherein, The step of achieving inter-group consensus among multiple cluster groups through the master node group where the cluster master node resides includes: Based on a pre-set confidence strategy, the cluster group determines the corresponding intra-group situation information from the local situation information received by the cluster group; based on a pre-set confidence strategy, the master node group where the cluster master node is located determines the corresponding intra-group situation information from the local situation information received by the master node group. The master node group broadcasts the intra-group situation information corresponding to the master node group within the UAV cluster; and each cluster group broadcasts the intra-group situation information corresponding to each cluster group within the UAV cluster. If it is determined that the number of times the current group receives the same situational information meets the third preset rule, then it is determined that the current group has reached a local situational consensus. The current group sends a situational consensus message to the UAV control console; If it is determined that the number of identical situational consensus messages received by the UAV console meets the fourth preset rule, then it is determined that an inter-group consensus has been reached among the multiple cluster groups.
8. An apparatus for achieving situation consensus in a drone swarm, the apparatus comprising: include: The acquisition module is used to acquire the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index of each cluster node in the drone cluster. The first determining module is configured to, when the UAV cluster is in a preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the UAV cluster based on the communication latency index, task execution capability index, and computing power index corresponding to each cluster node; and when the UAV cluster is in a non-preset state, determine the cluster master node, consensus node, and non-consensus node corresponding to the UAV cluster based on the communication latency index, master node round index, consensus round index, task execution capability index, and computing power index corresponding to each cluster node; the non-consensus node only receives broadcast information within the UAV cluster but does not participate in the cluster's situational information consensus process; The first broadcast module is used to broadcast a consensus instruction containing a target control command to the consensus node within the drone cluster through the cluster master node; the target control command is sent from the drone console to the cluster master node; The second determining module is used to determine the corresponding node situation information from the local situation information received by the consensus node based on a pre-set confidence strategy. The cluster master node determines the corresponding node status information from the local status information received by the cluster master node based on a pre-set confidence strategy. The second broadcast module is used to broadcast the node status information corresponding to the cluster master node within the UAV cluster through the cluster master node. And broadcast the node status information corresponding to the consensus node within the drone cluster through the consensus node; The third determining module is used to determine that the current node has reached a local situation consensus if the number of identical situation information received by the current node meets the first preset rule. The current node includes: the cluster master node, the consensus node, and the non-consensus node; The sending module is used to send a situational consensus message to the UAV console through the current node; The fourth determining module is used to determine that the target control command has achieved network-wide consensus within the drone cluster if the number of identical situational consensus messages received by the drone control console meets the second preset rule.
9. A computer device, comprising: It includes a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the method for achieving situational consensus in a drone swarm as described in any one of claims 1 to 7.
10. A computer-readable storage medium having stored thereon a computer program, characterized in that, When a computer program is executed by a processor, it implements the method for achieving situational consensus in a drone swarm as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Unmanned aerial vehicle cluster reconstruction method based on communication state
CN118612771A
Unmanned aerial vehicle cluster security collaboration method, system, device, medium and product
CN119316030A