A clustering method and system based on binary whale optimization algorithm
By adopting a clustering method based on the binary whale optimization algorithm, the problems of node mobility and limited energy in flight ad hoc networks are solved, achieving efficient cluster management and communication, reducing energy consumption, and extending the network lifespan.
Patent Information
- Application Number
- CN202310039919.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-01-11
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2043-01-11
AI Technical Summary
In flight ad hoc networks, the high mobility of nodes and limited energy resources make it difficult to establish and maintain the network, hindering efficient management and control of multi-UAV swarms. Furthermore, the high energy consumption affects the network's lifespan.
A clustering method based on the binary whale optimization algorithm is adopted. The optimal number of clusters is determined by calculating network bandwidth and node coverage. Cluster heads are selected, maintenance strategies are set, and efficient cluster maintenance is achieved. Different routing strategies are set inside and outside the cluster to reduce energy consumption.
Effective use of network resources improves the communication efficiency of drone swarms, reduces energy consumption, and extends network lifespan.
Smart Images

Figure CN116582907B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application relates to the technical field of flying ad hoc networks, in particular to a clustering method and system based on a binary whale optimization algorithm. BACKGROUND
[0002] Multi-UAV networks are often referred to as flying ad hoc networks (FANETs). In a FANET, all UAVs establish a self-organizing network, only part of the UAVs are connected to the infrastructure, and the other UAVs use intermediate UAVs to communicate with the ground base station in a multi-hop manner. Due to the limited energy and computing capacity of a single UAV, it is impossible to guarantee the best working state at any time and any place, and the close cooperation between multiple UAVs to form a UAV cluster can be used to complete various complex and special environment tasks. Therefore, it has gradually become an important form of current UAV combat application.
[0003] However, in the FANET, the nodes have high mobility, and the network entry and exit are relatively frequent, which causes certain difficulties in network establishment and maintenance, and as the UAV scale increases, it is difficult to efficiently control and manage the UAVs. Dividing the network into clusters can help solve the above problems. In the division process, based on different parameters, the UAVs are divided into different cluster groups, and within the effective communication range of the nodes, the UAVs can directly communicate with each other and share channels and resources. Therefore, a clustering method and system based on a binary whale optimization algorithm are proposed. The network bandwidth and node coverage capability are used to calculate the optimal number of clusters to be divided in the network. A discrete binary whale optimization (BWOA) algorithm is used to select cluster heads. The energy, intra-cluster distance and inter-cluster distance are used to design a fitness function to select cluster heads and divide clusters. A maintenance strategy is set to achieve efficient maintenance of the clusters. Cluster routing communication is achieved by setting different routing strategies within and between clusters to meet the communication needs of the UAV cluster at a low energy consumption. Compared with previous research work, the application has good performance in reducing energy consumption and improving network survival period. SUMMARY
[0004] The application proposes a clustering method and system based on a binary whale optimization algorithm to solve the problems of link failure, routing overhead and the like caused by energy resource limitation and high mobility in a flying ad hoc network.
[0005] To achieve the above purpose, the application adopts the following technical scheme:
[0006] The application proposes a clustering method based on a binary whale optimization algorithm, which comprises the following steps:
[0007] Step 1: Calculate the optimal number of clusters based on network bandwidth and node coverage constraints;
[0008] Step 2: Select cluster heads using the binary whale optimization algorithm;
[0009] Step 3: Divide the drone clusters according to distance;
[0010] Step 4: Achieve efficient cluster maintenance by setting maintenance strategies;
[0011] Step 5, Cluster Routing Communication: By setting different routing strategies within and between clusters, the communication needs of the drone cluster can be met with lower energy consumption.
[0012] Further, step 1 includes:
[0013] Step 101, establish the constraints for the node coverage area as shown in equations (4) and (5):
[0014] D ij =min{Dis(i,1),Dis(i,2),...,Dis(i,K)} (1)
[0015]
[0016]
[0017]
[0018]
[0019] Where D ij R represents the distance from UAV node i to cluster head j; K represents the total number of cluster heads; j L represents the coverage area of cluster head j; if node i is within the coverage area of cluster head j, L ij =1, otherwise L ij =0; N
[0020] U represents the total number of UAV nodes; U = {UAV1, UAV2, ..., UAV} i ,...,UAV N} represents the set of all drone nodes; C = {CH1, CH2, ..., CH j ,...,CH K Let} be the set of all cluster head nodes; the constraint condition ensures that each node is covered by cluster head nodes and is connected to only one cluster head at a time.
[0021] Step 102, establish the constraints that satisfy the network bandwidth as shown in equation (7):
[0022]
[0023]
[0024] where B1 and B2 are the intra-cluster and inter-cluster bandwidths, and Mj is the number of cluster members in the jth cluster j ;
[0025] Step 103, constraints such as formula (8) are established to meet the optimal number of clusters that satisfy the node coverage range and network bandwidth
[0026] as shown:
[0027]
[0028]
[0029]
[0030] The above constraints are respectively: 1. Each cluster member is connected to only one cluster head, 2. All cluster members are connected to the cluster head, 3. Intra-cluster and inter-cluster bandwidth balance is achieved.
[0031] Further, the step 2 comprises:
[0032] Step 201, initial whale population: the whale adopts binary coding, and the cluster head election is performed on N UAVs, each UAV node has a unique ID number, and the position of the whale at a certain time is an N-dimensional binary vector;
[0033] Step 202, set the maximum number of iterations t of the binary whale algorithm max ;
[0034] Step 203, calculate the fitness value of each whale: design a cluster head selection fitness function based on energy, intra-cluster and inter-cluster distance, and load balancing, as shown in formula (13):
[0035]
[0036]
[0037]
[0038]
[0039] Fitness=w1×f1+w2×f2+w3×f3+w4×f4 (13)
[0040] where E(UAV i ) is the residual energy of the ith UAV node in the network (i=1, 2, 3, …, N), and E(CHj )
[0041] Ej is the residual energy of the jth CH node (j = 1, 2, 3, …, K), m is the number of UAV nodes in the jth cluster;
[0042] Dis(UAV i ,CH j ) is the distance between the cluster head CH j and the cluster member UAV i ; Dis(CH j ,BS) is the distance between the cluster head CH j and the base station BS; Cnum j is the size of the cluster j; w1+w2+w3+w4 = 1, w1, w2, w3, w4 are weight parameters between (0, 1);
[0043] Step 204, until the maximum number of iterations is reached, the position of the whale with the optimal solution is output, that is, the elected cluster head UAV.
[0044] Further, the step 3 comprises:
[0045] Step 301, for all non-cluster head UAVs (UAV i , i = 1, 2, …, N), the distance to all CH (CH j , j = 1, 2, …, K) nodes within its communication range is calculated.
[0046] Step 302, if the distance between the UAV and the CH j is the smallest, the UAV joins the cluster.
[0047] Further, the step 4 comprises:
[0048] Step 401, set an energy threshold for the cluster head, periodically detect the node energy, and if the cluster head energy level is lower than the value or the cluster head leaves the cluster, the cluster maintenance is performed, and the cluster head is re-elected;
[0049] Step 402, if the cluster member leaves the cluster, the node is deleted from the member list of the cluster.
[0050] Further, the step 5 comprises:
[0051] Step 501, for intra-cluster communication: first, find the neighbor table, if it is in the neighbor table, directly communicate, otherwise, forward to the cluster head and the target node for communication;
[0052] Step 502, for inter-cluster communication: the next hop node is selected based on the weighted function of the residual energy and the distance of the UAV node, and the path selection function is shown in equation (14):
[0053]
[0054] wherein E j represents the residual energy of node j; Dis(i,j) represents the distance between nodes i and j.
[0055] Another aspect of the present application provides a clustering system based on a binary whale optimization algorithm, comprising:
[0056] an optimal cluster number solving module configured to calculate an optimal cluster number based on network bandwidth and node coverage range constraints;
[0057] a cluster head election module configured to select a cluster head using a binary whale optimization algorithm;
[0058] a cluster division module configured to divide the UAV cluster according to distance;
[0059] a cluster maintenance module configured to achieve efficient maintenance of the cluster by setting a maintenance strategy;
[0060] a routing communication module configured to cluster routing communication, and different routing strategies are set within and between clusters to meet the communication needs of the UAV cluster at a lower energy consumption.
[0061] Further, the optimal cluster number solving module comprises:
[0062] a first constraint establishing submodule configured to establish a node coverage range constraint as shown in equations (4) and (5):
[0063] D ij = min{Dis(i,1),Dis(i,2),...,Dis(i,K)} (1)
[0064]
[0065]
[0066]
[0067]
[0068] wherein D ij represents the distance from the UAV node i to the cluster head j; K represents the total number of cluster heads; R j represents the coverage range of the cluster head j; if the node i is within the coverage range of the cluster head j, L ij is 1, otherwise L ij is 0; N represents the total number of UAV nodes; U = {UAV1, UAV2,..., UAV i ,...,UAVN} is all UAV nodes set; C = {CH1, CH2,..., CH j ,...,CH K} is all cluster head nodes set; the constraint condition guarantees that each node is covered by cluster head nodes and at the same time only connected with one cluster head;
[0069] The second constraint establishment submodule is used for establishing a constraint satisfying network bandwidth as shown in equation (7):
[0070]
[0071]
[0072] Wherein, B1 and B2 are intra-cluster and inter-cluster bandwidths, and the number of intra-cluster cluster members is M j ;
[0073] The optimal cluster number solving submodule is used for establishing a constraint of optimal cluster number satisfying node coverage range and network bandwidth as shown in equation (8):
[0074]
[0075] The above constraint conditions are respectively: 1. Each cluster member is only connected with one cluster head, 2. All cluster members are connected with cluster heads, 3. Intra-cluster and inter-cluster bandwidths are balanced.
[0076] Further, the cluster head election module comprises:
[0077] The initialization submodule is used for initializing whale population: whales adopt binary coding mode, cluster head election is performed on N UAVs, each UAV node has a unique ID number, and the position of a whale at a certain moment is an N-dimensional binary vector.
[0078] The maximum iteration number setting submodule is used for setting the maximum iteration number t max ;
[0079] The fitness value calculation submodule is used for calculating the fitness value of each whale: a cluster head selection fitness function is designed based on energy, intra-cluster and inter-cluster distance and load balancing, as shown in equation (13):
[0080]
[0081]
[0082]
[0083]
[0084] Fitness = w1 x f1 + w2 x f2 + w3 x f3 + w4 x f4 (13)
[0085] where E(UAV i ) is the residual energy of the i-th UAV node (i = 1, 2, 3, …, N), E(CH j ) is the residual energy of the j-th CH node (j = 1, 2, 3, …, K), m is the number of UAV nodes in the j-th cluster; Dis(UAV i , CH j ) is the distance between the cluster head CH j and the cluster member UAV i in the cluster; Dis(CH j , BS) is the distance between the cluster head CH j and the base station BS; Cnum j is the size of the cluster j; w1 + w2 + w3 + w4 = 1, w1, w2, w3, w4 are weight parameters between (0, 1);
[0086] An optimal cluster head derivation submodule is configured to output the position of the whale with the optimal solution, i.e., the elected cluster head UAV, until the maximum number of iterations is reached.
[0087] Further, the cluster division module comprises:
[0088] A distance calculation submodule is configured to calculate the distance between all non-cluster head UAVs (UAV i , i = 1, 2, …, N) and all CH (CH j , j = 1, 2, …, K) nodes within the communication range of the UAV.
[0089] A cluster joining submodule is configured to join the cluster if the distance between the UAV and the CH j is the smallest.
[0090] Further, the cluster maintenance module comprises:
[0091] A cluster head maintenance submodule is configured to set an energy threshold for the cluster head, periodically detect the energy of the nodes, and perform cluster maintenance and re-elect the cluster head if the energy level of the cluster head is lower than the value or the cluster head leaves the cluster.
[0092] A cluster member maintenance submodule is configured to delete the node from the member list of the cluster if the cluster member leaves the cluster.
[0093] Further, the routing communication module comprises:
[0094] Intra-cluster communication submodule, for intra-cluster communication: first look up the neighbor table, if in its neighbor table then direct communication, otherwise forward to the cluster head and target node for communication;
[0095] Inter-cluster communication submodule, for inter-cluster communication: select the next hop node based on the weight function of the remaining energy of the UAV node and the distance, and the path selection function is shown in formula (14):
[0096]
[0097] Wherein, E j Indicates the remaining energy of node j; Dis(i,j) indicates the distance between nodes i and j.
[0098] Compared with the prior art, the present application has the beneficial effects:
[0099] The present application calculates the optimal cluster number to be divided in the network through network bandwidth and node coverage capability, so as to reasonably and fully utilize network resources and realize network resource utilization maximization.
[0100] The present application provides a clustering scheme based on binary whale optimization algorithm. The discrete binary whale optimization (BWOA) algorithm is used to select cluster heads. The algorithm selects cluster heads and divides clusters based on the fitness function of energy, intra-cluster distance and inter-cluster distance; a maintenance strategy is set to realize efficient maintenance of clusters; cluster routing communication is realized by setting different routing strategies in and between clusters. The scheme has good performance in reducing energy consumption and improving network survival cycle on the basis of meeting the communication needs of the UAV cluster. BRIEF DESCRIPTION OF DRAWINGS
[0101] Figure 1 A basic flowchart of a clustering method based on binary whale optimization algorithm for embodiments of the present application;
[0102] Figure 2 A schematic diagram of random distribution of UAVs in FANET for embodiments of the present application;
[0103] Figure 3 A schematic diagram of cluster division in FANET for embodiments of the present application;
[0104] Figure 4 A schematic diagram of a clustering system architecture based on binary whale optimization algorithm for embodiments of the present application. DETAILED DESCRIPTION
[0105] The present application will be further explained and described below in conjunction with the drawings and specific embodiments:
[0106] As Figure 1 shown, a clustering method based on binary whale optimization algorithm comprises:
[0107] Step S101, calculating the optimal cluster number based on network bandwidth and node coverage range constraints;
[0108] Step S102, selecting cluster heads using a binary whale optimization algorithm;
[0109] Step S103, dividing the UAV cluster according to distance;
[0110] Step S104, achieving efficient maintenance of the cluster by setting maintenance strategies;
[0111] Step S105, cluster routing communication, by setting different routing strategies within and between clusters, to meet the communication needs of the UAV cluster at a lower energy consumption.
[0112] Further, in the step S101, the specific steps of calculating the optimal cluster number based on network bandwidth and node coverage range constraints are as follows:
[0113] Step S101.1, establish the constraints of node coverage range as shown in formula (4) (5):
[0114] D ij = min{Dis(i,1),Dis(i,2),...,Dis(i,K)} (1)
[0115]
[0116]
[0117]
[0118]
[0119] where D ij represents the distance from the UAV node i to the cluster head j; K represents the total number of cluster heads; R j represents the coverage range of the cluster head j; if the node i is within the coverage range of the cluster head j, L ij is 1, otherwise L ij is 0; N represents the total number of UAV nodes; U = {UAV1, UAV2,..., UAV i ,..., UAV N} is the set of all UAV nodes; C = {CH1, CH2,..., CH j ,..., CH K} is the set of all cluster head nodes. The constraint condition ensures that each node is covered by a cluster head node and is connected to only one cluster head at the same time.
[0120] Step S101.2, establish the constraint of meeting the network bandwidth as shown in equation (7):
[0121]
[0122]
[0123] Wherein, B1 and B2 are the bandwidth within and between clusters, the number of the jth cluster member is M j .
[0124] Step S103.3: establish the constraint of meeting the optimal cluster number of node coverage and network bandwidth as shown in equation (8):
[0125]
[0126] The above constraints are respectively: 1. Each cluster member is connected with only one cluster head, 2. All cluster members are connected with cluster head, 3. The bandwidth balance within and between clusters is achieved.
[0127] Further, in the step S102, the specific steps of selecting cluster head by using binary whale optimization algorithm are as follows:
[0128] Step S102.1, initial whale population. Whale adopts binary coding mode, and cluster head election is performed on N UAVs. Each UAV node has a unique ID number, and the position of whale at a certain time is an N-dimensional binary vector. As an implementable mode, the number of whales is set to 50.
[0129] Step S102.2, set the maximum iteration number t of binary whale algorithm max As an implementable mode, t max =100.
[0130] Step S102.3, calculate the fitness value of each whale. Based on energy, intra-cluster and inter-cluster distance and load balancing, the cluster head selection fitness function is designed as shown in equation (13):
[0131]
[0132] Wherein, E(UAV i ) is the residual energy of the ith UAV node in the network (i=1, 2, 3, …, N), and E(CH j ) is the residual energy of the jth CH node (j=1, 2, 3, …, K).
[0133]
[0134] Wherein Dis(UAV i ,CH j) is the distance between cluster head CH j and base station BS. i
[0135]
[0136] where Dis(CH j ,BS) is the distance between cluster head CH j and base station BS.
[0137]
[0138] where Cnum j is the size of cluster j.
[0139] Fitness = w1xf1+ w2xf2+ w3xf3+ w4xf4 (13)
[0140] where w1+ w2+ w3+ w4= 1, w1, w2, w3, w4 are weight parameters between (0, 1).
[0141] Step S102.4, until the maximum number of iterations is reached, the position of the whale with the optimal solution is output, that is, the elected cluster head UAV.
[0142] Further, the specific steps of dividing the UAV cluster according to the distance in step S103 are as follows:
[0143] Step S103.1, for all non-cluster head UAVs (UAV i , i = 1, 2, …, N), the distance to all CH (CH j , j = 1, 2, …, K) nodes within its communication range is calculated;
[0144] Step S103.2, if the distance between UAV and CH j is the smallest, then join the cluster.
[0145] Further, the specific steps of realizing efficient maintenance of the cluster by setting the maintenance strategy in step S104 are as follows:
[0146] Step S104.1, set an energy threshold for the cluster head, periodically detect the node energy, and if the cluster head energy level is lower than the set energy threshold or the cluster head leaves the cluster, then perform cluster maintenance and re-elect the cluster head.
[0147] Step S104.2, if the cluster member leaves the cluster, then delete the node in the member list of the cluster.
[0148] Further, in the step S105, the cluster routes communication, and different routing strategies are set in the cluster and between clusters to meet the communication needs of the UAV cluster at a lower energy consumption. The specific steps are as follows:
[0149] Step S105.1, for intra-cluster communication: first search the neighbor table, if in the neighbor table, directly communicate, otherwise, forward to the cluster head and the target node for communication;
[0150] Step S105.2, for inter-cluster communication: the next hop node is selected based on the weighted function of the residual energy and distance of the UAV node, and the path selection function is shown in formula (14):
[0151]
[0152] Wherein, E j represents the residual energy of node j; Dis(i,j) represents the distance between nodes i and j.
[0153] On the basis of the above embodiment, as Figure 4 shown, another aspect of the present application proposes a clustering system based on a binary whale optimization algorithm, comprising:
[0154] An optimal cluster number solving module is used to calculate the optimal cluster number based on network bandwidth and node coverage range constraints;
[0155] A cluster head election module is used to select a cluster head by using a binary whale optimization algorithm;
[0156] A cluster division module is used to divide the UAV cluster according to the distance;
[0157] A cluster maintenance module is used to realize efficient maintenance of the cluster by setting maintenance strategies;
[0158] A routing communication module is used to route communication in the cluster, and different routing strategies are set in the cluster and between clusters to meet the communication needs of the UAV cluster at a lower energy consumption.
[0159] Further, the optimal cluster number solving module comprises:
[0160] A first constraint establishing submodule is used to establish the constraints of the node coverage range as shown in formula (4) (5):
[0161] D ij =min{Dis(i,1),Dis(i,2),...,Dis(i,K)} (1)
[0162]
[0163]
[0164]
[0165]
[0166] where D ij represents the distance from UAV node i to cluster head j; K represents the total number of cluster heads; R j represents the coverage range of cluster head j; if node i is within the coverage range of cluster head j, L ij is 1, otherwise L ij is 0; N represents the total number of UAV nodes; U = {UAV1, UAV2,..., UAV i ,...,UAV N} is the set of all UAV nodes; C = {CH1, CH2,..., CH j ,...,CH K} is the set of all cluster head nodes. The constraint condition guarantees that each node is covered by a cluster head node and is connected to only one cluster head at the same time.
[0167] The second constraint establishment submodule is configured to establish a constraint satisfying network bandwidth, as shown in equation (7):
[0168]
[0169]
[0170] where B1 and B2 are the intra-cluster and inter-cluster bandwidths, and the number of intra-cluster cluster members is M j .
[0171] The optimal cluster number solving submodule is configured to establish a constraint of the optimal cluster number satisfying node coverage range and network bandwidth, as shown in equation (8):
[0172]
[0173] The above constraints are respectively: 1. Each cluster member is connected to only one cluster head, 2. All cluster members are connected to a cluster head. 3. Intra-cluster and inter-cluster bandwidths are balanced.
[0174] Further, the cluster head election module comprises:
[0175] The initialization submodule is configured to initialize a whale population. The whale adopts a binary coding mode, and cluster head election is performed on N UAVs. Each UAV node has a unique ID number, and the position of the whale at a certain moment is an N-dimensional binary vector.
[0176] The maximum iteration number setting submodule is configured to set the maximum iteration number t of the binary whale algorithmmax .
[0177] The fitness value calculation submodule is used to calculate the fitness value of each whale. The cluster head selection fitness function is designed based on energy, intra-cluster and inter-cluster distances, and load balancing, as shown in equation (13):
[0178]
[0179] Where E(UAV) i Let E(CH) be the remaining energy of the i-th UAV node in the network (i = 1, 2, 3, ..., N), and let E(CH) be the energy of the i-th UAV node in the network. j ) represents the remaining energy of the j-th CH node (j = 1, 2, 3, ..., K).
[0180]
[0181] Among them, Dis(UAV) i CH j ) represents the cluster head CH in the cluster. j and cluster members UAV i The distance between them.
[0182]
[0183] Among them, Dis(CH) j ,BS) is the cluster head CH in the cluster. j The distance between the base station (BS) and the BS.
[0184]
[0185] Where Cnum j The size of cluster j.
[0186] Fitness=w1×f1+w2×f2+w3×f3+w4×f4 (13)
[0187] Where w1+w2+w3+w4=1, w1,w2,w3,w4 are weight parameters between (0,1).
[0188] The optimal cluster head is derived from a submodule, which is used until the maximum number of iterations is reached, and outputs the position of the whale with the optimal solution, i.e., the elected cluster head UAV.
[0189] Furthermore, the cluster partitioning module includes:
[0190] The distance calculation submodule is used for all non-cluster head UAVs (UAVs) i For each i = 1, 2, ..., N, calculate all CH(CH) within its communication range. j The distance between nodes (j = 1, 2, ..., K);
[0191] a joining cluster submodule, configured to join a cluster if the distance between the UAV and the CH is the smallest. j
[0192] Further, the cluster maintenance module comprises:
[0193] a cluster head maintenance submodule, configured to set an energy threshold for the cluster head, periodically detect the energy of the nodes, and perform cluster maintenance and reelect a cluster head if the energy level of the cluster head is lower than the set energy threshold or the cluster head leaves the cluster.
[0194] a cluster member maintenance submodule, configured to delete a node from the member list of the cluster if the node leaves the cluster.
[0195] Further, the routing communication module comprises:
[0196] an intra-cluster communication submodule, configured to, for intra-cluster communication, first search the neighbor table, and directly communicate if the target node is in the neighbor table, or forward the communication to the cluster head for communication with the target node.
[0197] an inter-cluster communication submodule, configured to, for inter-cluster communication, select a next hop node based on a weighted function of the residual energy and the distance of the UAV node, and the path selection function is shown in formula (14):
[0198]
[0199] wherein, E j represents the residual energy of node j; Dis(i, j) represents the distance between nodes i and j.
[0200] To sum up, the application first calculates the optimal cluster number in the network based on the network bandwidth and node coverage range constraints; secondly, based on the optimal cluster number, the cluster head is selected by using the binary whale optimization algorithm according to the weighted value of the node intra-cluster and inter-cluster distance and residual energy, and the cluster is divided based on the distance; thirdly, the cluster maintenance strategy is set to realize the efficient maintenance of the cluster; finally, different routing communication strategies are adopted for intra-cluster and inter-cluster communication; so as to meet the communication needs of the UAV cluster under lower energy consumption and improve the network performance.
[0201] The above only shows the preferred embodiments of the application, and it should be noted that for those skilled in the art, without departing from the principles of the application, a number of improvements and refinements can be made, and these improvements and refinements should also be considered as the protection scope of the application.
Claims
1. A clustering method based on the binary whale optimization algorithm, characterized in that, include: Step 1: Calculate the optimal number of clusters based on network bandwidth and node coverage constraints; Step 2: Select cluster heads using the binary whale optimization algorithm; Step 3: Divide the drone clusters according to distance; Step 4: Achieve efficient cluster maintenance by setting maintenance strategies; Step 5, Cluster routing communication: By setting different routing strategies within and between clusters, the communication needs of the drone cluster can be met with lower energy consumption. Step 1 includes: Step 101, establish the constraints for the node coverage area as shown in equations (4) and (5): (1) (2) (3) (4) (5) in K represents the distance from UAV node i to cluster head j; K represents the total number of cluster heads. This indicates the coverage area of cluster head j; if node i is within the coverage area of cluster head j, =1, otherwise =0; N represents the total number of drone nodes; For all drone nodes; The set of all cluster head nodes; Step 102, establish the constraints that satisfy the network bandwidth as shown in equation (7): (6) (7) in, and For intra-cluster and inter-cluster bandwidth, Let j be the number of cluster members in the j-th cluster; Step 103, establish the constraint of the optimal number of clusters that satisfies the node coverage and network bandwidth as shown in equation (8): (8) The constraints are as follows: each cluster member is connected to only one cluster head, all cluster members are connected to the cluster head, and bandwidth balance is achieved within and between clusters.
2. The clustering method based on the binary whale optimization algorithm according to claim 1, characterized in that, Step 2 includes: Step 201, Initial whale population: Whales are encoded in binary. Cluster head election is performed on N UAVs. Each UAV node has a unique ID number. The position of a whale at a certain moment is an N-dimensional binary vector. Step 202: Set the maximum number of iterations for the binary whale algorithm. ; Step 203, calculate the fitness value of each whale: design the cluster head selection fitness function based on energy, intra-cluster and inter-cluster distances, and load balancing, as shown in Equation (13): (9) (10) (11) (12) (13) in Let be the remaining energy of the i-th UAV node in the network, i=1,2,3,…,N; Let be the remaining energy of the j-th cluster head CH node, j=1,2,3,…,K; Cluster head in the cluster and cluster members The distance between them; m is the number of UAV nodes in the j-th cluster; Cluster head in the cluster and base stations The distance between them; The size of cluster j; , The weight parameters are between (0,1); Step 204 continues until the maximum number of iterations is reached, then outputs the position of the whale with the optimal solution, i.e., the elected cluster head UAV.
3. The clustering method based on the binary whale optimization algorithm according to claim 1, characterized in that, Step 3 includes: Step 301: For all non-cluster head UAV nodes, calculate the distance to all cluster head nodes within their communication range; Step 302: If the distance between the drone node and the j-th cluster is the smallest, then join the cluster.
4. The clustering method based on the binary whale optimization algorithm according to claim 1, characterized in that, Step 4 includes: Step 401: Set an energy threshold for the cluster head, periodically check the node energy, and if the cluster head energy level is lower than the set energy threshold or the cluster head leaves the cluster, perform cluster maintenance and re-elect a cluster head. Step 402: If a cluster member leaves the cluster, delete the node from the cluster's member list.
5. The clustering method based on the binary whale optimization algorithm according to claim 1, characterized in that, Step 5 includes: Step 501, for intra-cluster communication: First, look up the neighbor table. If the target drone node is in the neighbor table, then communicate directly; otherwise, forward the communication to the cluster head to communicate with the target drone node. Step 502, for inter-cluster communication: the next-hop node is selected based on a weighted function of the remaining energy and distance of the UAV node, and the path selection function is shown in equation (14): (14) in, This represents the remaining energy of node k; This represents the distance between nodes i and k.
6. A clustering system based on the binary whale optimization algorithm, characterized in that, include: The optimal cluster number solution module is used to calculate the optimal cluster number based on network bandwidth and node coverage constraints. Cluster head election module, used to select cluster heads using binary whale optimization algorithm; The cluster partitioning module is used to partition drone clusters based on distance. The cluster maintenance module is used to achieve efficient cluster maintenance by setting maintenance policies; The routing communication module is used for cluster routing communication. By setting different routing strategies within and between clusters, it can meet the communication needs of the drone cluster with low energy consumption. The optimal cluster number calculation module includes: The first constraint establishment submodule is used to establish the constraints for the node coverage area, as shown in equations (4) and (5): (1) (2) (3) (4) (5) in K represents the distance from UAV node i to cluster head j; K represents the total number of cluster heads. This indicates the coverage area of cluster head j; if node i is within the coverage area of cluster head j, =1, otherwise =0; N represents the total number of drone nodes; For all drone nodes; The set of all cluster head nodes; The second constraint establishment submodule is used to establish constraints that satisfy the network bandwidth, as shown in equation (7): (6) (7) in, and For intra-cluster and inter-cluster bandwidth, Let j be the number of cluster members in the j-th cluster; The optimal cluster number solution submodule is used to establish the constraints of the optimal cluster number that satisfy the node coverage and network bandwidth, as shown in equation (8): (8) The constraints are as follows: each cluster member is connected to only one cluster head, all cluster members are connected to the cluster head, and bandwidth balance is achieved within and between clusters.
7. A clustering system based on the binary whale optimization algorithm according to claim 6, characterized in that, The cluster head election module includes: The initialization submodule is used to initialize the whale population: the whales are encoded in binary and a cluster head election is performed on N UAVs. Each UAV node has a unique ID number, and the position of a whale at a certain moment is an N-dimensional binary vector. The maximum iteration count setting submodule is used to set the maximum number of iterations for the binary whale algorithm. ; The fitness value calculation submodule is used to calculate the fitness value of each whale: the cluster head selection fitness function is designed based on energy, intra-cluster and inter-cluster distances and load balancing, as shown in equation (13): (9) (10) (11) (12) (13) in Let be the remaining energy of the i-th UAV node in the network, i=1,2,3,…,N; Let be the remaining energy of the j-th cluster head CH node, j=1,2,3,…,K; Cluster head in the cluster and cluster members The distance between them; m is the number of UAV nodes in the j-th cluster; Cluster head in the cluster and base stations The distance between them; The size of cluster j; , The weight parameters are between (0,1); The optimal cluster head is derived from a submodule, which is used until the maximum number of iterations is reached, and outputs the position of the whale with the optimal solution, i.e., the elected cluster head UAV.
8. A clustering system based on the binary whale optimization algorithm according to claim 6, characterized in that, The cluster partitioning module includes: The distance calculation submodule is used to calculate the distance to all cluster head nodes within the communication range of all non-cluster head UAV nodes; The cluster submodule is used to add a drone node to the j-th cluster if the distance between the drone node and the j-th cluster is minimized.
9. A clustering system based on the binary whale optimization algorithm according to claim 6, characterized in that, The cluster maintenance module includes: The cluster head maintenance submodule is used to set energy thresholds for cluster heads and periodically check node energy. If the energy level of a cluster head is lower than the set energy threshold or the cluster head leaves the cluster, cluster maintenance is performed and a new cluster head is elected. The cluster member maintenance submodule is used to delete a node from the cluster's member list if a cluster member leaves the cluster.
10. A clustering system based on the binary whale optimization algorithm according to claim 6, characterized in that, The routing communication module includes: The cluster communication submodule is used for intra-cluster communication: first, it looks up the neighbor table. If the target drone node is in its neighbor table, it communicates directly; otherwise, it forwards the message to the cluster head to communicate with the target drone node. The inter-cluster communication submodule is used for inter-cluster communication: selecting the next-hop node based on a weighted function of the remaining energy and distance of the UAV node, and the path selection function is shown in equation (14): (14) in, This represents the remaining energy of node k; This represents the distance between nodes i and k.
Citation Information
Patent Citations
Wireless sensor network mobile node clustering method based on improved whale algorithm
CN112672396A