A design method of a large-scale wireless sensor network multi-hop clustering routing protocol
Patent Information
- Application Number
- CN202211552211.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-05
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2042-12-05
AI Technical Summary
[0005]本发明目的是提供一种大范围无线传感器网络多跳分簇路由协议设计方法,用于解决无线传感器网络区域范围较大时,能量消耗不均衡,个别传感器节点死亡过快,网络寿命周期过短等问题
[0074]1)本发明提出了改进蚁群算法RACO选择簇头节点,将每个节点的初始能量、距离汇聚节点的距离、当选簇头节点的次数、节点的覆盖度作为节点的初始累计信息素。根据信息素大小,采用线性排序选择策略随机生成种群。相比传统的种群生成方法,提高了算法的收敛速度。
Smart Images

Figure CN116017789B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of wireless sensor network routing protocol technology, specifically a design method for a multi-hop clustering routing protocol for large-scale wireless sensor networks. Background Technology
[0002] Wireless sensor networks (WSNs) are computer networks composed of a large number of stationary or moving miniature sensor nodes that operate in a self-organizing and multi-hop manner. These miniature sensor nodes mainly consist of four parts: a sensing module (for data acquisition), a processing module (running with a CPU), a communication module (for data transmission and reception, and idle listening), and a power module (for node power supply). They can collaboratively monitor physical or environmental conditions at different locations, such as temperature, sound, vibration, pressure, motion, or pollutants. Wireless sensor networks have been widely used in military, environmental monitoring, traffic management, and home automation, among other fields.
[0003] In sensor networks, sensor nodes are powered by batteries. Due to their small size, they carry very limited energy. Once the energy is depleted, the node dies, affecting data transmission across the entire wireless sensor network. Some research has focused on the power supply methods for wireless sensors, initially employing methods to harvest energy from the sensor's environment (solar or wind power). However, this power supply is highly unstable due to environmental factors. Since the primary energy consumption of nodes is in the communication module, designing a suitable multi-hop routing protocol to balance network energy consumption is essential.
[0004] Existing routing protocols employ single-hop and multi-hop communication methods. In a single-hop network, each sensor node communicates directly with the sink node. Sensor nodes farther from the sink node will quickly enter a sleep state due to rapid energy consumption caused by the long transmission distance. In a multi-hop network, outer sensor nodes relay data layer by layer to inner sensor nodes, ultimately delivering the data to the sink node. According to the energy consumption model of sensor nodes, the greater the communication distance, the more energy is consumed. Therefore, to reduce energy consumption during communication, existing routing protocols mostly adopt multi-hop communication methods. A well-designed multi-hop routing protocol can effectively extend the lifespan of wireless sensor networks. However, in wireless sensor networks using multi-hop routing protocols, relay nodes bear a greater share of data transmission tasks, needing to forward data from other sensor nodes. This results in higher energy consumption for relay nodes, leading to premature failure and causing energy depletion in the network. Furthermore, simply improving the routing protocol can only moderately extend the network lifespan; as communication continues, the energy will eventually be exhausted. Summary of the Invention
[0005] The purpose of this invention is to provide a design method for a multi-hop clustering routing protocol for large-area wireless sensor networks, which can solve problems such as uneven energy consumption, rapid death of individual sensor nodes, and short network lifespan when the wireless sensor network covers a large area.
[0006] This invention is achieved using the following technical solution:
[0007] A design method for a multi-hop clustering routing protocol for large-area wireless sensor networks includes the following steps:
[0008] Step 1: Network Initialization
[0009] A network of sensor nodes is formed by randomly and evenly distributing several sensor nodes within a planar sensor area monitored by the network, with a sink node positioned at the center of the area. The sensor nodes remain stationary. All sensor nodes except the sink node have finite energy, with identical initial energy values, information processing capabilities, and communication capabilities. The sink node has unlimited energy. Normally, the sensor nodes are in a sleep state. When communication is needed, the sink node wakes up all sensor nodes, and each sensor node sends its energy value, geographical location, and sensor number to the sink node. The sink node calculates the complete network adjacency matrix and sends it to all sensor nodes. The sensor nodes then send their data according to the network adjacency matrix and transmit the data to the sink node.
[0010] Step 2: Selection of candidate nodes
[0011] To balance the energy consumption of nodes in the network, sensor nodes whose distance to the sink node is less than the communication range rc directly send data to the sink node. Among the remaining sensor nodes, those with remaining energy greater than the average remaining energy of their neighboring nodes become candidate nodes, and other nodes become ordinary member nodes.
[0012] Step 3: Selection of Cluster Head Nodes
[0013] This is mainly achieved by improving the ant colony algorithm RACO, and the specific process is as follows:
[0014] (3.1) Design a fitness function to evaluate the quality of the selected cluster head node: The fitness function f is the energy consumption of the network after one round of communication, including the total energy consumption of ordinary nodes and the total energy consumption of cluster head nodes.
[0015]
[0016] Where P represents the set of ordinary sensor nodes and C represents the set of cluster head nodes.
[0017] The energy consumption of a normal node is:
[0018]
[0019] The energy consumption of the cluster head node is:
[0020]
[0021] Among them, E elec This represents the energy consumption per bit of data, where l represents the data length, and d represents the energy consumption per bit of data. i,k This represents the distance from sensor node i to cluster head node k. m represents the number of data packets collected by the cluster head node, n represents the number of data packets that cluster head node k needs to forward, and E... da d represents the energy consumption of the cluster head node to fuse each bit of data. k,j ε represents the distance between cluster head node k and the next-hop cluster head node j. fs , ε mp It is the energy loss coefficient related to the power amplification model, and d0 is the distance constant.
[0022] (3.2) Population Initialization: First, the cumulative pheromone size needs to be initialized. To improve convergence speed, the initial cumulative pheromone size for each candidate node is... By calculating the proportion of each node's remaining energy to that of its neighbors. The proportion of times a node is elected as the cluster head relative to its neighboring nodes. The proportion of each node's coverage to the coverage of its neighboring nodes The proportion of the distance from each node to the sink node relative to its neighboring nodes. To make a comprehensive evaluation. The initial cumulative pheromone size is:
[0023]
[0024]
[0025]
[0026]
[0027]
[0028] Among them, energy i dib i freq i ,cov i Let represent the remaining energy of the i-th sensor node, the distance between the i-th sensor node and the sink node, the number of times the i-th sensor node has been selected as the cluster head node, and the coverage of the i-th sensor node, respectively. table dib table freqtable ,cov table These represent the i-th node and its neighboring nodes in terms of the above four factors (energy). i dib i freq i ,cov i The array consists of the values α, β, λ, and μ, which represent the weights of these four factors, with values of 0.4, 0.2, 0.3, and 0.1, respectively.
[0029] (3.3) Calculate the pheromone weight: Calculate the cumulative pheromone weight of each candidate node among its neighboring nodes.
[0030]
[0031] in, This represents the cumulative pheromone of the i-th node in generation t. This array represents the cumulative pheromone of node i and its neighboring nodes in generation t.
[0032] (3.4) Linear sorting selection strategy:
[0033] (3.4.1) Randomly select a node from the candidate nodes and assign a percentage to that node and its neighboring nodes. i Sort by size from smallest to largest, and determine the probability of each node in the neighbor node table being selected.
[0034]
[0035] Among them, percent table An array representing the weight of node i and its neighboring nodes.
[0036] (3.4.2) Randomly generate a random number α, and then from Pro table Iterate through the array, if The i-th candidate node in the table is selected as the cluster head node. Other candidate nodes within the range of the cluster head node are removed. This step is repeated until the candidate nodes are empty, resulting in a set of cluster head nodes. This process is repeated multiple times to obtain N sets of cluster head nodes, thus obtaining a population of N individuals.
[0037] (3.5) Update cumulative pheromone: The amount of pheromone remaining in the population at sensor node i is:
[0038]
[0039] Where Θ represents the set of individuals with ID i included in the decision variables, f j f represents the fitness of the j-th ant in Θ, calculated according to formula (1).min f represents the minimum fitness value of all ants in the current ant colony. max This represents the maximum fitness value of each ant in the current ant colony. Then, the cumulative pheromone size of sensor node i in the next population iteration is...
[0040]
[0041] (3.6) Using the updated cumulative pheromone size, calculate the proportion of the cumulative pheromone of each sensor node in its neighboring nodes and the linear sorting selection strategy to obtain a new generation of population. Calculate the fitness of the new population and compare the fitness of the individual with the lowest fitness in the new population with the historical best solution. If the fitness of the individual is less than the fitness of the historical best solution, then update the historical best solution; otherwise, do not update it. If the number of iterations has not been reached, repeat the above operations (3.3)-(3.6); otherwise, step 3 ends, and the final historical best solution is the cluster head node set that meets the requirements.
[0042] Step 4: Clustering
[0043] Based on the cluster head node set obtained by the RACO algorithm (step 3), the corresponding sensor node becomes the cluster head node, and the remaining sensor nodes become ordinary nodes. The distance from each ordinary node to each cluster head node is calculated. The ordinary node sends the data it has collected to the nearest cluster head node. The cluster head node then performs data fusion on the collected data to facilitate subsequent forwarding.
[0044] (4.1) The energy consumption model for sensor nodes transmitting data is as follows:
[0045]
[0046] Where l represents the data length, E elec ε represents the energy consumption for transmitting each bit of data, d represents the distance between the transmitting node and the receiving node; fs , ε mp It is the energy loss coefficient related to the power amplification model, and d0 is the distance constant.
[0047] (4.2) The energy consumption model of the sensor node when receiving data is as follows:
[0048] E rece (l)=l*E elec (14)
[0049] (4.3) Energy consumed by the sensor cluster head node when performing data fusion on the collected data:
[0050] E f (m, l) = m * l * E da(15)
[0051] Where m represents the number of data packets collected by the cluster head node, and E da This represents the energy consumption of the cluster head node in fusing each bit of data.
[0052] Step 5: Establish a transit link
[0053] The formation of relay links relies on the sector link selection routing protocol, which specifically includes the following process:
[0054] (5.1) Calculating the sector range of the cluster head node: By adjusting the radius of the tangent circle between the cluster head node and the sink node, the sector range can be changed, so that cluster head nodes farther from the sink node have larger sector ranges, and cluster head nodes closer to the sink node have smaller sector ranges. Let the cluster head node to be forwarded be numbered j, and its sector range be Sector. The distances from the cluster head node to both sides of Sector are:
[0055]
[0056] Among them, dib j The distance from the j-th cluster head node to the sink node is represented by r1, rc represents the communication range, dib represents the array of distances from each cluster head node to the sink node in the cluster head node set, and r1 is a constant with a value of 0.75.
[0057] (5.2) Calculate the set of other cluster head nodes within the fan-shaped region of the cluster head node:
[0058] (5.2.1) Calculate the vertical distance from each cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node:
[0059]
[0060] Where, x i The coordinates of cluster head node i are represented by x. j x0 represents the coordinates of the cluster head node j to be forwarded, and x0 represents the coordinates of the sink node.
[0061] (5.2.2) Calculate the dic of each cluster head node in the sector region. i Distance limits that should be met:
[0062]
[0063] dict i It is the maximum distance from cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node. When dic i Less than dict iIf the cluster head node i is within the sector formed by the cluster head node j to be forwarded and the sink node, then the cluster head node i is not within the sector formed by the cluster head node j to be forwarded.
[0064] (5.3) Calculate the transfer force of each cluster head node within the sector region:
[0065]
[0066]
[0067]
[0068]
[0069] in, This represents the proportion of the remaining energy of the cluster head node within its sector. This indicates the proportion of data packets that currently need to be relayed within the current sector. The energy value represents the proportion of the distance from the cluster head node to the sink node within the sector it occupies. Sector dib Sector Npk Sector These represent the remaining energy of the cluster head node within the sector, the distance to the sink node, and the number of data packets requiring relay, respectively. a and b are dynamically adjusted factors that change with the number of communication attempts (Time); when the values of a and b increase to 1 / 3, they no longer change with the number of communication attempts (Time). Specific values are as follows:
[0070]
[0071] (5.4) Sort the cluster head node set in descending order of distance to the sink node. For each cluster head node in the sorted set, calculate the relay capacity within its sector. The cluster head node with the largest relay capacity within its rc communication range within the sector is determined as the next-hop relay node. If no cluster head node exists within the sector of the cluster head node's rc communication range, search within the sector of the cluster head node's 2*rc communication range. If found, select the cluster head node with the largest relay capacity as the next-hop relay node; otherwise, double the communication distance and continue searching.
[0072] (5.5) Determine the next-hop relay node for each cluster head node from far to near according to (5.1)-(5.4) above. The cluster head node forwards the data to the corresponding relay node in sequence. Finally, after multiple relays, the data is transmitted to the aggregation node. During this period, the relay node does not perform fusion processing on the received data and forwards all of it to the next-hop relay node.
[0073] The present invention has the following advantages:
[0074] 1) This invention proposes an improved ant colony selection algorithm, RACO, to select cluster head nodes. The initial accumulated pheromone of each node is determined by its initial energy, distance to the sink node, number of times it has been selected as a cluster head node, and node coverage. Based on the pheromone levels, a linear sorting selection strategy is used to randomly generate the population. Compared to traditional population generation methods, this improves the algorithm's convergence speed.
[0075] 2) This invention proposes a new sector link selection routing protocol, which dynamically adjusts the sector area based on the distance between the cluster head node and the sink node. At the same time, it comprehensively considers factors such as the energy of the cluster head node in the sector area, the distance to the sink node, and the number of data packets that need to be relayed, and selects a suitable next-hop node for each cluster head node, thereby forming a link to transmit data to the sink node.
[0076] 3) This invention proposes a dynamic adjustment operator. In the early stage of communication, the selection of the next-hop node should take distance factors into account more to ensure the energy consumption of the node. However, as the number of communications proceeds, some nodes act as cluster head nodes in multiple communications to ensure that the energy consumption of the current communication process is minimized, which leads to a sharp drop in their own energy. To avoid this situation, the proportion of energy information should be gradually increased as the number of communications proceeds.
[0077] This invention is rationally designed and has great practical application value. Attached Figure Description
[0078] Figure 1 This diagram illustrates a scenario where a multi-hop clustering routing protocol is used in wireless sensor networks.
[0079] Figure 2 This is a flowchart illustrating the selection process for cluster head nodes.
[0080] Figure 3 This is a flowchart illustrating the formation of a transit link.
[0081] Figure 4 This graph shows the change in the number of surviving sensor nodes as a function of the number of communication rounds.
[0082] Figure 5 This indicates the round number in which a node dies for the first time.
[0083] Figure 6This diagram illustrates the change in remaining energy with the number of communication rounds when 1 / 3 of the total energy has been consumed.
[0084] Figure 7 This diagram illustrates the change in remaining energy with the number of communication rounds when energy consumption exceeds 1 / 3 of the total energy.
[0085] Figure 8 This diagram illustrates the change in remaining energy with the number of communication rounds when energy consumption exceeds 2 / 3 of the total energy.
[0086] Figure 9 This graph shows how the average communication length of the cluster head node changes with the number of communication rounds.
[0087] Figure 10 This graph shows how network coverage changes with the number of communication rounds. Detailed Implementation
[0088] The specific embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0089] The present invention describes a multi-hop clustering routing protocol design method for large-area wireless sensor networks. This routing protocol is based on the Improved Ant Colony Algorithm (RACO) and the sector link selection routing protocol, using LEACH. The network operating time is divided into several rounds, each round comprising three phases: a cluster head selection phase based on RACO, a sector link selection phase, and a data acquisition phase. After successful node deployment, the sink node sends a broadcast message to notify all nodes to begin operation. Upon receiving the broadcast message, each node calculates its distance to the sink node and forms a neighbor table within its communication range. Nodes with energy values greater than the average energy value of all nodes in the neighbor table and not within one times the communication range of the sink node become candidate nodes. Candidate nodes send their location, neighbor table, and remaining energy to the sink node. The sink node uses the RACO algorithm to select a cluster head node from the candidate nodes. Ordinary nodes send data to the nearest cluster head node, and the cluster head node allocates time slots to ordinary nodes within its communication range, collecting data and performing data fusion using time-division multiple access. The cluster head node then uses a sector link routing protocol to select its own relay node to form a link, transmitting the data to the aggregation node via multi-hop transmission. The aggregation node then sends the collected data to the monitoring platform. Specifically, the steps include:
[0090] Step 1, Network Initialization:
[0091] 300 sensor nodes are randomly and uniformly distributed within a 400m x 400m planar sensor area, with a sink node placed at the center of the area. The sensor nodes remain stationary, forming a sensor network. All sensor nodes except the sink node have finite energy, with identical initial energy, information processing capacity, and communication capabilities. The sink node has unlimited energy. Normally, the sensor nodes are in a sleep state. When communication is needed, the sink node wakes up all sensor nodes, and each sensor node sends its energy value, geographical location, and sensor number to the sink node. The sink node calculates the complete network adjacency matrix and sends it to all sensor nodes. The sensor nodes then send their data according to the network adjacency matrix and transmit the data to the sink node.
[0092] Step 2, Selection of candidate nodes:
[0093] The specific process includes: in order to balance the energy consumption of nodes in the network, sensor nodes whose distance from the sink node is less than the communication range rc directly send data to the sink node, and among the remaining sensor nodes, nodes whose remaining energy is greater than the average remaining energy of their neighboring nodes become candidate nodes, while other nodes become ordinary member nodes.
[0094] Step 3: Selection of Cluster Head Nodes: Traditional ant colony algorithms simulate ants foraging by accumulating pheromone concentration to select the shortest path to a foraging location; the higher the accumulated pheromone concentration, the greater the likelihood that ants will pass through that point. This invention improves upon this probabilistic search mechanism by considering factors such as node energy, distance between the node and the sink node, node coverage, and the number of times a node acts as a cluster head node as the initial pheromone concentration. A linear sorting selection strategy is then used to select cluster head nodes, ensuring minimal energy consumption during each round of network communication.
[0095] The selection process for cluster head nodes is mainly achieved through the improved ant colony algorithm RACO, and the specific process is as follows:
[0096] (3.1) Design a fitness function to evaluate the quality of the selected cluster head nodes: Assuming that each individual selects a set of sensor nodes as the cluster head nodes, ordinary nodes send their own data to the nearest cluster head node. The cluster head node performs a fusion operation on the received data and forwards the data to the sink node according to the fan-shaped link formation algorithm. The fitness function f is the energy consumption of the network after one round of communication, including the total energy consumption of ordinary nodes and the total energy consumption of cluster head nodes.
[0097]
[0098] Where P represents the set of ordinary sensor nodes and C represents the set of cluster head nodes.
[0099] The energy consumption of a normal node is:
[0100]
[0101] The energy consumption of the cluster head node is:
[0102]
[0103] Among them, E elec This represents the energy consumption per bit of data, where l represents the data length, and d represents the energy consumption per bit of data. i,k This represents the distance from sensor node i to cluster head node k. m represents the number of data packets collected by the cluster head node, n represents the number of data packets that cluster head node k needs to forward, and E... da d represents the energy consumption of the cluster head node to fuse each bit of data. k,j ε represents the distance between cluster head node k and the next-hop cluster head node j. fs , ε mp It is the energy loss coefficient related to the power amplification model, and d0 is the distance constant.
[0104] (3.2) Initialize the population:
[0105] First, the cumulative pheromone size needs to be initialized. To improve convergence speed, the initial cumulative pheromone size for each candidate node is determined. By calculating the proportion of each node's remaining energy to that of its neighbors. The proportion of times a node is elected as the cluster head relative to its neighboring nodes. The proportion of each node's coverage to the coverage of its neighboring nodes The proportion of the distance from each node to the sink node relative to its neighboring nodes. To make a comprehensive evaluation. The initial cumulative pheromone size is:
[0106]
[0107]
[0108]
[0109]
[0110]
[0111] Among them, energy i dib i freq i ,cov iLet represent the remaining energy of the i-th sensor node, the distance between the i-th sensor node and the sink node, the number of times the i-th sensor node has been selected as the cluster head node, and the coverage of the i-th sensor node, respectively. table dib table freq table ,cov table Let represent the arrays of the i-th node and its neighboring nodes, representing the values of the four factors mentioned above. α, β, λ, and μ represent the weights of these four factors, with values of 0.4, 0.2, 0.3, and 0.1, respectively.
[0112] (3.3) Calculate the pheromone weight: Calculate the cumulative pheromone weight of each candidate node among its neighboring nodes.
[0113]
[0114] in, This represents the cumulative pheromone of the i-th node in generation t. This array represents the cumulative pheromone of node i and its neighboring nodes in generation t.
[0115] (3.4) Linear sorting selection strategy:
[0116] (3.4.1) Randomly select a node from the candidate nodes and assign a percentage to that node and its neighboring nodes. i Sort by size from smallest to largest, and determine the probability of each node in the neighbor node table being selected.
[0117]
[0118] Among them, percent table An array representing the weight of node i and its neighboring nodes.
[0119] (3.4.2) Randomly generate a random number α, and then from Pro table Iterate through the array, if The i-th candidate node in the table is selected as the cluster head node. Other candidate nodes within the range of the cluster head node are removed. This step is repeated until the candidate nodes are empty, resulting in a set of cluster head nodes. This process is repeated multiple times to obtain N sets of cluster head nodes, thus obtaining a population of N individuals.
[0120] (3.5) Update cumulative pheromone: The amount of pheromone remaining in the population at sensor node i is:
[0121]
[0122] Where Θ represents the set of individuals with ID i included in the decision variables, fj f represents the fitness of the j-th ant in Θ, calculated according to formula (1). min f represents the minimum fitness value of all ants in the current ant colony. max This represents the maximum fitness value of each ant in the current ant colony. Then, the cumulative pheromone size of sensor node i in the next population iteration is...
[0123]
[0124] (3.6) Using the updated cumulative pheromone size, calculate the proportion of the cumulative pheromone of each sensor node in its neighboring nodes and the linear sorting selection strategy to obtain a new generation of population. Calculate the fitness of the new population and compare the fitness of the individual with the lowest fitness in the new population with the historical best solution. If the fitness of the individual is less than the fitness of the historical best solution, then update the historical best solution; otherwise, do not update it. If the number of iterations has not been reached, repeat the above operations (3.3)-(3.6); otherwise, step 3 ends, and the final historical best solution is the cluster head node set that meets the requirements.
[0125] Step 4: Clustering
[0126] Based on the cluster head node set obtained by the RACO algorithm (i.e., step 3), the corresponding sensor node becomes the cluster head node, and the remaining sensor nodes become ordinary nodes. The distance from each ordinary node to each cluster head node is calculated. The ordinary node sends the data it has collected to the nearest cluster head node. The cluster head node then performs data fusion on the collected data to facilitate subsequent forwarding.
[0127] (4.1) The energy consumption model for sensor nodes transmitting data is as follows:
[0128]
[0129] Where l represents the data length, E elec ε represents the energy consumption for transmitting each bit of data, d represents the distance between the transmitting node and the receiving node; fs , ε mp It is the energy loss coefficient related to the power amplification model, and d0 is the distance constant.
[0130] (4.2) The energy consumption model of the sensor node when receiving data is as follows:
[0131] E rece (l)=l*E elec (14)
[0132] (4.3) Energy consumed by the sensor cluster head node when performing data fusion on the collected data:
[0133] E f (m, l) = m * l * E da (15)
[0134] Where m represents the number of data packets collected by the cluster head node, and E da This represents the energy consumption of the cluster head node in fusing each bit of data.
[0135] Step 5: Establish a transit link
[0136] The formation of relay links mainly relies on sector link selection routing protocols, which specifically include the following processes:
[0137] (5.1) Calculating the sector range of the cluster head node: By adjusting the radius of the tangent circle between the cluster head node and the sink node, the sector range can be changed, so that cluster head nodes farther from the sink node have larger sector ranges, and cluster head nodes closer to the sink node have smaller sector ranges. Let the cluster head node to be forwarded be numbered j, and its sector range be Sector. The distances from the cluster head node to both sides of Sector are:
[0138]
[0139] Among them, dib j The distance from the j-th cluster head node to the sink node is represented by r1, rc represents the communication range, dib represents the array of distances from each cluster head node to the sink node in the cluster head node set, and r1 is a constant with a value of 0.75.
[0140] (5.2) Calculate the set of other cluster head nodes within the sector area of each cluster head node. The specific process is as follows:
[0141] (5.2.1) Calculate the vertical distance from each cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node:
[0142]
[0143] Where, x i The coordinates of cluster head node i are represented by x. j x0 represents the coordinates of the cluster head node j to be forwarded, and x0 represents the coordinates of the sink node.
[0144] (5.2.2) Calculate the dic of each cluster head node in the sector region. i Distance limits that should be met:
[0145]
[0146] dict iIt is the maximum distance from cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node. When dic i Less than dict i If the cluster head node i is within the sector formed by the cluster head node j to be forwarded and the sink node, then the cluster head node i is not within the sector formed by the cluster head node j to be forwarded.
[0147] (5.3) Calculate the transfer force of each cluster head node within the sector region:
[0148]
[0149]
[0150]
[0151]
[0152] in, This represents the proportion of the remaining energy of the cluster head node within its sector. This indicates the proportion of data packets that currently need to be relayed within the current sector. The energy value represents the proportion of the distance from the cluster head node to the sink node within the sector it occupies. Sector dib Sector Npk Sector These represent the remaining energy of the cluster head node within the sector, the distance to the sink node, and the number of data packets requiring relay, respectively. a and b are dynamically adjusted factors that change with the number of communication attempts (Time); when the values of a and b increase to 1 / 3, they no longer change with the number of communication attempts (Time). Specific values are as follows:
[0153]
[0154] (5.4) Sort the cluster head node set in descending order of distance to the sink node. For each cluster head node in the sorted set, calculate the relay capacity within its sector. The cluster head node with the largest relay capacity within its rc communication range within the sector is determined as the next-hop relay node. If no cluster head node exists within the sector of the cluster head node's rc communication range, search within the sector of the cluster head node's 2*rc communication range. If found, select the cluster head node with the largest relay capacity as the next-hop relay node; otherwise, double the communication distance and continue searching.
[0155] (5.5) Determine the next-hop relay node for each cluster head node from far to near according to (5.1)-(5.4) above. The cluster head node forwards the data to the corresponding relay node in sequence. Finally, after multiple relays, the data is transmitted to the aggregation node. During this period, the relay node does not perform fusion processing on the received data and forwards all of it to the next-hop relay node.
[0156] To balance energy consumption among nodes during data acquisition in wireless sensor networks, this invention optimizes cluster head node selection and link formation. The RACO algorithm is used to select cluster head nodes, minimizing energy consumption per communication round while maintaining balanced energy levels. To prevent nodes closer to the sink node from exhausting their energy and entering a sleep state due to a large number of relayed data packets during multi-hop communication, this invention employs a fan-shaped link formation routing protocol. This gives cluster head nodes farther from the sink node more options when selecting the next-hop node, thus balancing network consumption among relay nodes. Nodes closer to the sink node, carrying many relayed data packets, should minimize the need to search for the next-hop cluster head node, thereby extending network lifespan. This invention is compared with current routing protocols across multiple metrics, including the number of communication rounds when the first node dies, the number of communication rounds when a typical node dies, the number of communication rounds when 90% of nodes die, and the average energy consumption per communication round. Compared with existing similar routing protocols, the routing protocol proposed in this invention achieves better results in terms of network lifetime, network energy consumption, link quality, and network coverage. Specific simulation and experimental results are as follows.
[0157] I. The RACO-STL routing protocol proposed in this invention has been verified in MATLAB R2020A and compared with existing routing protocols (UDNDC, LEACH, GA-STL, ACO-STL, Rand-STL). The experimental parameter settings used in the proposed method are shown in the table below:
[0158]
[0159] The routing protocols being compared are as follows:
[0160] LEACH routing protocol: The LEACH protocol is the most classic clustering routing protocol. It randomly selects cluster head nodes from the network, and network data is transmitted in a single-hop manner.
[0161] UDNDC Routing Protocol: The UDNDC routing protocol is also a clustered routing protocol. It divides the network into concentric circles according to the communication radius. Data is transmitted from the outer cluster head node to the inner cluster head node, layer by layer, and then transmitted to the sink node. It belongs to the multi-hop routing protocol.
[0162] Rand-STL routing protocol: Rand-STL selects cluster head nodes randomly in LEACH, and subsequent data transmission forms links according to the sector link selection routing protocol proposed in this invention. It is a multi-hop routing protocol.
[0163] GA-STL routing protocol: GA-STL uses a genetic routing protocol to select the cluster head node that minimizes network energy consumption. Subsequent data transmission forms links according to the sector link selection routing protocol proposed in this invention. It is a multi-hop routing protocol.
[0164] ACO-STL routing protocol: ACO-STL uses the traditional ant colony optimization routing protocol to select the cluster head node that minimizes network energy consumption. The data transmission method forms links according to the sector link selection routing protocol proposed in this invention, which is a multi-hop routing protocol.
[0165] II. Evaluation Metrics: Evaluation metrics for comparing routing protocols include network lifetime, packet loss rate, and energy consumption per round of communication.
[0166] (1) Network lifetime assessment: The effectiveness of routing protocols in terms of network lifetime is evaluated by comparing factors such as the number of rounds in which the first dead node appears, the number of communication rounds when the number of dead nodes exceeds half, the number of rounds in which nodes are almost exhausted, and the relationship between the number of surviving nodes and the number of communication rounds. Figure 4 This describes the number of surviving nodes in a wireless sensor network using various routing protocols as communication progresses. For example... Figure 4 As shown, with the increase in communication rounds, nodes using the LEACH protocol die the fastest. This is because the LEACH routing protocol is a single-hop routing protocol, while the sensor network area is relatively large. If nodes far from the sink node continue to use single-hop transmission, energy consumption will be very high, leading to rapid node death. The first nodes to die are located on the periphery of the sensor network. UDNDC-STL, GA-STL, ACO-STL, Rand-STL, and the routing protocol proposed in this invention all employ multi-hop transmission, relaying data packets from distant cluster head nodes through cluster head nodes closer to the sink node, thus delaying node death. Figure 4 It is evident that the routing protocol proposed in this invention has better network lifetime compared to other multi-hop clustering routing protocols, balancing network energy consumption and extending network lifetime.
[0167] besides, Figure 5 This describes the number of communication rounds (FDN) for each routing protocol when the first node death occurs, the number of communication rounds (MDN) when nearly half of the nodes have died, and the number of communication rounds (LDN) when more than 90% of the nodes have died. For example... Figure 5As shown, the LEACH protocol has a very small number of rounds in which the first dead node occurs, which is consistent with... Figure 4 This is consistent with other multi-hop routing protocols. However, because cluster head nodes closer to the sink node in the LEACH protocol do not need to relay data from other nodes, the number of communication rounds in the later stages is longer compared to other multi-hop routing protocols. By this time, more than half of the network nodes have died. The remaining multi-hop routing protocols are all good at balancing network energy consumption. Overall, the RACO-STL routing protocol performs better.
[0168] (2) Energy consumption in the network: In this embodiment of the invention, the energy consumption of each round of the routing protocol and the energy consumption of the cluster head node are compared. Since the total energy value is too large, the energy difference between the routing protocols is small compared with the total energy and is not easy to see. Therefore, the present invention compares the routing protocols in stages.
[0169] Figure 6 This paper describes the relationship between the initial 1 / 3 energy of wireless sensor networks using various routing protocols and the number of communication rounds. Combined with... Figure 4 Looking at the changes in surviving nodes with the number of communication rounds, the nodes in the early stages had relatively abundant energy, and no nodes died. Regarding network energy consumption, [the following text appears to be incomplete and requires further context: "by..."] Figure 6 It can be seen that the proposed algorithm is not significantly more effective than other multi-hop routing protocols. However, as communication progresses, the remaining energy of nodes in the network becomes uneven. Multi-hop routing protocols balance network energy consumption by rotating cluster head nodes and adjusting links, but excessive balancing can lead to increased overall network energy consumption. Compared to UDNDC, the RACO-STL routing protocol adopts a fan-shaped link formation method, breaking the hierarchical node transmission of UDNDC and the unnecessary energy consumption caused by a fixed number of hops. The fan-shaped link method has an adaptive hop count, which balances network energy consumption to a certain extent, thus resulting in lower energy consumption than UDNDC. Compared to ACO-STL, GA-STL, and Rand-STL, the RACO-STL routing protocol comprehensively considers factors such as the number of times a node has been selected as a cluster head node, coverage, remaining energy, and distance from the base station in cluster head selection, resulting in better distribution of cluster head nodes. Figure 7 and Figure 8 This paper presents a comparison of the changes in energy remaining with the number of communication rounds when 2 / 3 of the total energy is available in the sensor network for each routing protocol, and a comparison of the changes with the number of communication rounds when 1 / 3 of the total energy is available in the sensor network for each routing protocol. Figure 7 and Figure 8 It can be seen that the proposed RACO-STL routing protocol performs better.
[0170] (3) Network Link Quality: In wireless sensor networks, packet loss can be caused by channel congestion or poor link quality. When a cluster head node sends data over a long distance, or when a cluster head node needs to receive too many data packets from other nodes, channel congestion can occur, leading to packet loss. Therefore, this embodiment of the invention evaluates network link quality by calculating the average link length when cluster head nodes relay data packets. However, this results in too many communication rounds. This invention takes the average link length for every 50 communication rounds and compares RACO-STL, UDNDC, Rand-STL, ACO-STL, and GA-STL for this metric. Figure 9 This describes the relationship between the average relay length of cluster head nodes and the number of communication rounds in wireless sensor networks using various routing protocols. For example... Figure 9 As shown, since these routing protocols are all multi-hop, the initial communication length is relatively short. As the nodes that are closer to each other enter a sleep state due to excessive energy consumption caused by relaying, the transmission distance will increase dramatically. The proposed RACO-STL routing protocol does not have an advantage over other routing protocols in this respect.
[0171] (4) Network Coverage: In evaluating network coverage, this application subdivides the 400m*400m network area into 100 smaller 40m*40m areas. If no node survives in a certain area, then that area is not covered. The network coverage can be evaluated by dividing the number of covered smaller areas by the total number of smaller areas. The coverage of each routing protocol after each round of communication was compared. Figure 10 This describes the relationship between node coverage and the number of communication rounds in wireless sensor networks using various routing protocols. For example... Figure 10 As shown, as communication progresses, sensor nodes may die, leading to a decrease in network coverage. It can be seen that RACO-STL has a slight advantage in network coverage compared to other routing protocols.
[0172] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Those skilled in the art should understand that modifications or equivalent substitutions to the technical solutions of the present invention do not depart from the spirit and scope of the technical solutions of the present invention, and all such modifications and substitutions should be covered within the scope of protection of the claims of the present invention.
Claims
1. A design method for a multi-hop clustering routing protocol in a large-scale wireless sensor network, characterized in that: Includes the following steps: Step 1: Network Initialization A network of sensor nodes is formed by randomly and evenly distributing several sensor nodes within a planar sensor area monitored by the network, with a sink node positioned at the center of the area. The sensor nodes remain stationary. All sensor nodes except the sink node have finite energy, with identical initial energy values, information processing capabilities, and communication capabilities. The sink node has unlimited energy. Normally, the sensor nodes are in a sleep state. When communication is needed, the sink node wakes up all sensor nodes, and each sensor node sends its energy value, geographical location, and sensor number to the sink node. The sink node calculates the complete network adjacency matrix and sends it to all sensor nodes. Each sensor node then sends its data based on the network adjacency matrix and transmits the data to the sink node. Step 2: Selection of candidate sensor nodes Sensor nodes whose distance to the aggregation node is less than the communication range rc directly send data to the aggregation node. Among the remaining sensor nodes, those whose remaining energy is greater than the average remaining energy of their neighboring sensor nodes become candidate sensor nodes, and other sensor nodes become ordinary sensor nodes. Step 3: Selection of Cluster Head Nodes (3.1) Design a fitness function to evaluate the quality of the selected cluster head node: the fitness function f is the energy consumption of the network after one round of communication, including the total energy consumption of ordinary sensor nodes and the total energy consumption of cluster head nodes; (1) in, This represents a set of ordinary sensor nodes. Represents the set of cluster head nodes; The energy consumption of a typical sensor node is: (2) The energy consumption of the cluster head node is: (3) in, This indicates the energy consumption for transmitting each bit of data. Indicates the data length. Let represent the distance from sensor node i to cluster head node k, m represent the number of data packets collected by the cluster head node, and n represent the number of data packets that cluster head node k needs to forward. This represents the energy consumption of the cluster head node in fusing each bit of data. This represents the distance between cluster head node k and the next-hop cluster head node j. It is the energy loss coefficient related to the power amplification model. It is a distance constant; (3.2) Population initialization: Initial cumulative pheromone size for each candidate sensor node By calculating the proportion of the remaining energy of each sensor node to that of its neighboring sensor nodes. The proportion of times a node is elected as the cluster head relative to its neighboring sensor nodes. The proportion of each sensor node's coverage to the coverage of its neighboring sensor nodes. The proportion of the distance from each sensor node to the sink node relative to the distance from its neighboring sensor nodes. To conduct a comprehensive evaluation; the initial cumulative pheromone size is: (4) (5) (6) (7) (8) in, , , , These represent the remaining energy of the i-th sensor node, the distance between the i-th sensor node and the sink node, the number of times the i-th sensor node has been selected as the cluster head node, and the coverage of the i-th sensor node, respectively. , , , These represent arrays representing the values of the i-th sensor node and its neighboring nodes for the four factors mentioned above; This indicates the weight of these four factors; (3.3) Calculate the pheromone weight: Calculate the cumulative pheromone weight of each candidate sensor node among its neighboring sensor nodes. (9) in, This represents the cumulative pheromone of the i-th sensor node in generation t. An array representing the cumulative pheromones of sensor node i and its neighboring sensor nodes at generation t; (3.4) Linear sorting selection strategy: (3.4.1) Randomly select a sensor node from the candidate sensor nodes, and calculate the percentage of pheromone accumulated by that sensor node among its neighboring sensor nodes. i Sort the array from smallest to largest In the middle, the probability of each sensor node being selected (10) in, An array representing the proportion of pheromones accumulated by candidate sensor node i among its neighboring sensor nodes; (3.4.2) Randomly generate a random number , and then from Iterate through the array, if ,but The i-th candidate sensor node is selected as the cluster head node. Other candidate nodes within the range of the cluster head node are removed. This step is repeated until the candidate sensor nodes are empty, resulting in a set of cluster head nodes. This process is repeated multiple times to obtain N sets of cluster head nodes, thus obtaining a population of N individuals. (3.5) Update cumulative pheromone: The amount of pheromone remaining in the population at sensor node i is: (11) in, Let i represent the set of individuals with ID i that are included in the decision variable. express The fitness of the j-th ant in the equation is calculated according to formula (1). This represents the minimum fitness value of all ants in the current ant colony. This represents the maximum fitness value of all ants in the current ant colony; then the cumulative pheromone size of sensor node i in the next population iteration is... (12) (3.6) Calculate the proportion of cumulative pheromone in neighboring nodes for each sensor node and the linear sorting selection strategy based on the updated cumulative pheromone size to obtain a new generation of population; calculate the fitness of the new population and compare the fitness of the individual with the lowest fitness in the new population with the historical best solution; if the fitness of the individual is less than the fitness of the historical best solution, then update the historical best solution, otherwise do not update; if the number of iterations has not been reached, repeat the above operations (3.3)-(3.6); otherwise step 3 ends, and the final historical best solution is the cluster head node set that meets the requirements; Step 4: Clustering Based on the cluster head node set obtained by the RACO algorithm, the corresponding sensor node becomes the cluster head node, and the remaining sensor nodes become ordinary nodes. The distance from each ordinary node to each cluster head node is calculated. The ordinary node sends the data it has collected to the nearest cluster head node, and the cluster head node then performs data fusion on the collected data. (4.1) The energy consumption model for sensor nodes transmitting data is as follows: (13) in, Indicates the data length. This indicates the energy consumption for transmitting each bit of data. Indicates the distance between the transmitting node and the receiving node; It is the energy loss coefficient related to the power amplification model. It is a distance constant; (4.2) The energy consumption model of the sensor node when receiving data is as follows: (14) (4.3) Energy consumed by the sensor cluster head node when performing data fusion on the collected data: (15) Where m represents the number of data packets collected by the cluster head node. This represents the energy consumption of the cluster head node in fusing each bit of data; Step 5: Establish a transit link The formation of relay links relies on the sector link selection routing protocol, which specifically includes the following process: (5.1) Calculate the sector range of the cluster head node: By adjusting the radius of the tangent circle between the cluster head node and the sink node, the sector range can be changed, so that cluster head nodes farther from the sink node have a larger sector range, and cluster head nodes closer to the sink node have a smaller sector range; let the number of the cluster head node to be forwarded currently under examination be j, and its sector range be... The cluster head node to The distance between the two sides is: (16) in, This represents the distance from the j-th cluster head node to the sink node, rc represents the communication range, and dib represents an array consisting of the distances from each cluster head node in the cluster head node set to the sink node. It is a constant; (5.2) Calculate the set of other cluster head nodes within the fan-shaped region of the cluster head node: (5.2.1) Calculate the perpendicular distance from each cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node: (17) in, This represents the coordinates of cluster head node i. This represents the coordinates of cluster head node j to be forwarded. Represents the coordinates of the convergence node; (5.2.2) Calculate the sector region Each cluster head node Distance limits that should be met: (18) in, It is the maximum distance from cluster head node i to the line connecting the cluster head node j to be forwarded and the sink node. Less than When this occurs, it indicates that cluster head node i is within the fan-shaped region formed by the cluster head node j to be forwarded and the sink node. Otherwise, cluster head node i does not belong to the sector region of cluster head node j to be forwarded. ; (5.3) Calculate the transfer force of each cluster head node within the sector region: (19) (20) (21) (22) in, This indicates the remaining energy of the cluster head node within its sector region. The proportion of the inside, This indicates the number of data packets that currently need to be relayed within the current sector area. The proportion of the inside, This indicates the distance from the cluster head node to the sink node within the corresponding sector. The proportion of the inside, , , These represent the remaining energy of the cluster head node within the sector area, the distance to the sink node, and the number of data packets that need to be relayed, respectively. , It is a dynamically adjusted factor that changes as the number of communication times (Time) increases; when the values of a and b increase to 1 / 3, they no longer change with the increase of the number of communication times (Time). The specific values are as follows: (23) (5.4) Sort the cluster head node set in descending order of distance to the sink node. For each cluster head node, calculate the transfer capacity of the cluster head node within its sector area according to the sorted cluster head node set. The cluster head node with the largest transfer capacity within the rc communication range of the sector area is determined as the next hop relay node of the current cluster head node. If there is no cluster head node within the sector area of the rc communication range of the cluster head node, search within the sector area of 2*rc communication range of the cluster head node. If it exists, select the cluster head node with the largest transfer capacity as the next hop relay node. Otherwise, double the communication distance and continue searching. (5.5) Determine the next-hop relay node for each cluster head node from far to near according to (5.1)-(5.4) above. The cluster head node forwards the data to the corresponding relay node in sequence. Finally, after multiple relays, the data is transmitted to the aggregation node. During this period, the relay node does not perform fusion processing on the received data and forwards all of it to the next-hop relay node.
2. The design method for a multi-hop clustering routing protocol for a large-area wireless sensor network according to claim 1, characterized in that: In step (3.2), This indicates the weights of these four factors, with values of 0.4, 0.2, 0.3, and 0.
1.
3. The design method for a multi-hop clustering routing protocol for a large-area wireless sensor network according to claim 1, characterized in that: In step (5.1), The value is 0.75.
Citation Information
Patent Citations
Inter-cluster multi-hop routing algorithm of energy consumption balance in wireless sensor networks
CN108712767A
Wireless sensor network clustering routing algorithm based on minimum energy consumption
CN110062432A