A Clustering Algorithm for Heterogeneous Wireless Sensor Networks Based on Solar Energy Supply
Abstract
:1. Introduction
2. Related Work
2.1. Clustering Routing Algorithms without Energy Supply
2.1.1. LEACH Algorithm
2.1.2. DEEC Algorithm
2.1.3. SEP Algorithm
2.2. Clustering Routing Algorithms with Energy Supply
2.2.1. PHC Algorithm
2.2.2. EBCS Algorithm
2.2.3. HNS Algorithm
2.3. Problem Analysis
- (1)
- The traditional clustering routing algorithm does not consider that a node has an additional energy supply. The selection probability is only related to the initial energy of the node and does not consider the remaining energy. An advanced node is more likely to be selected as the cluster head than an ordinary node. After a certain number of rounds, the energy of an advanced node may be lower than that of an ordinary node, which increases the network energy consumption and accelerates the decline of the network.
- (2)
- The PHC [15] and EBCS algorithms [17] assume that the energy self-recharge of the nodes is steady and uninterrupted. In the true situation, the nodes cannot constantly obtain the same acquisition efficiency because of the irregular distribution of the energy supply in each region. This condition causes the cluster head to be mainly concentrated in the region with a high current energy supply level; the number of cluster heads in the area with a low energy supply is small, and the members are excessive in the cluster. Several clusters cause the overloading of cluster heads and affect the average residual energy and lifetime of the network.
- (3)
- The HNS algorithm [16] sets the node energy self-replenishment-state coefficient to increase the probability for nodes with a better energy self-replenishment status to be selected as cluster heads. However, the algorithm ignores the nodes with slow energy-storage efficiency and accumulates high residual energy through several rounds, which causes the excessive loading of several nodes with high energy-storage efficiency, makes the network energy consumption unbalanced, and affects the network stability.
- (1)
- Energy classification is used to set different initial energies for advanced and ordinary nodes to increase the probability of high-level nodes to serve as cluster heads. Meanwhile, a hibernation threshold is set for the advanced nodes to enable advanced nodes with an energy lower than the threshold value to only store energy and to prevent them from participating in the cluster-head competition that prolongs the lifetime of the network.
- (2)
- The algorithm increases the influence factor of residual energy. Meanwhile, the nodes with high residual energy and a better energy supply state have a high probability to be selected as cluster heads, and the influence of energy self-recharge parameters on the threshold of the node cluster head is gradually weakened. The nodes that have slow energy-storage efficiency and high residual energy can also be selected as cluster heads over several rounds to increase the number of cluster heads as far as possible and avoid the overloading of cluster heads.
- (3)
- Nodes are layered and use multi-hop transmission on the basis of the distance between the node and the base station. The network is layered to increase the probability of the inner network node becoming the cluster head. The cluster head of the outer layer passes the data packet to the advanced node that is high and near to it and does not directly transmit data to the base station, which avoids energy loss caused by long-distance transmission.
3. Model Construction
3.1. Heterogeneous Sensor Network Model
- (1)
- The network is composed of a small number of advanced nodes and a majority of ordinary nodes. An advanced node has the energy self-replenishment function, and ordinary nodes only use a lithium battery to supply power.
- (2)
- The positions of the advanced and common nodes are fixed.
- (3)
- Nodes have their own independent ID, certain data storage, and fusion capabilities.
3.2. Wireless Communication Energy Consumption Model
3.3. Energy Supply Model in Real Environment
3.4. State-Transformation Model of Advanced Nodes
4. Algorithm Design
4.1. Setup Phase
Algorithm 1: Setup phase of CHSES algorithm |
1) BEGIN; 2) while CT < TimePh1 do 3) if Sensor[i].state == ’Cluster Head’ then 4) Sensor[i].state = ’Node’; 5) endif 6) endwhile 7) while CT < TimePh2 do 8) if Sensor[i].property == ’Advanced’ then 9) if Sensor[i].energy > the block threshold then 10) predict node energy collection; 11) calculate the election threshold of Sensor[i] by Equation (6); 12) generate random numbers between 0 and 1; 13) if λ < the election threshold then 14) Sensor[i].state = ’Cluster Head’; 15) broadcast Head_Msg; 16) receive Head_Msg from competition Cluster Head; 17) store in Head_List Cluster Head L[] along with distance; 18) endif 19) endif 20) else if Sensor[i].energy < the block threshold then 21) block automatically and do not allow participation in the current round; 22) endif 23) endif 24) else if Sensor[i].property = ’Ordinary’ then 25) if Sensor[i].energy > 0 then 26) calculate the selection threshold of Sensor[i] by Equation (6); 27) generate random numbers between 0 and 1; 28) if λ < the election threshold then 29) Sensor[i].state = ’Cluster Head’; 30) broadcast Head_Msg; 31) receive Head_Msg from competition Cluster Head; 32) store in Head_List Cluster Head L[] along with distance; 33) endif 34) endif 35) else if Sensor[i].energy ⩽ 0 then 36) exit the network; 37) endif 38) endif 39) endwhile 40) while CT < TimePh3 do 41) if Sensor[i].state == ’Node’ then 42) select the nearest Cluster Head Sensor[j] from Cluster Head L[] list; 43) Sensor[i].head = Sensor[j]; 44) send Join Cluster Msg to Sensor[j]; 45) endif 46) else if Sensor[i].state == ’Cluster Head’ then 47) receive Join Cluster Msg from Cluster Member; 48) store in Cluster Member[] List; 49) endif 50) endwhile 51) END |
4.2. Data-Transmission Phase
Algorithm 2: Data-transmission phase of the CHSES algorithm |
1) BEGIN; 2) while CT < TimePh1 do 3) if Sensor[i].state == ’Cluster Head’ then 4) select the nearest advanced node Sensor[j] in higher Layer; 5) Sensor[i].next-hop = Sensor[j]; 6) endif 7) endwhile 8) while CT < TimePh2 do 9) if Sensor[i].state == ’Cluster Head’ then 10) receive Data Packet from Cluster Member; 11) aggregation of Data Packet; 12) broadcast Data Packet to base station or next hop; 13) endif 14) else if Sensor[i].state == ’Node’ then 15) broadcast Data Packet to Cluster Head; 14) endif 17) endwhile 18) END |
4.3. Algorithm Flow
- (Step 1)
- The advanced node considers its own residual energy. The node enters the dormancy state, and the current round is temporarily out of the cluster-head competition if the residual energy E is less than ; the algorithm proceeds to step 4. Otherwise, step 2 is performed.
- (Step 2)
- Nodes generate a random number between 0 to 1. If is less than the threshold, then the node is selected as the cluster head, and step 3 is performed. Otherwise, the algorithm proceeds to step 4.
- (Step 3)
- Cluster-head nodes broadcast the cluster-head information and wait for non-cluster-head nodes to join.
- (Step 4)
- A node receives the broadcast information of the cluster-head node, calculates the path, selects the optimal-path node as the cluster head, sends the cluster request, and periodically collects the data to the cluster head.
- (Step 5)
- The cluster head receives the data from its own regular collection and receives the data sent by the member nodes in the cluster at the same time, compresses and fuses the data, and enters the data-transmission phase. Data are transmitted across the clusters by multi-hopping and reach the base station.
5. Evaluation and Simulation
5.1. Simulation Scene and Parameter Setting
5.2. Simulation Results and Analysis
5.2.1. Comparison of Network Lifetimes
5.2.2. Comparison of Network Stability Cycle
5.2.3. Comparison of Network Energy Consumption Balance
5.2.4. Comparison of Network Residual Energy
5.2.5. Comparison of Network Throughput
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Akyildiz, I.F.; Su, W.; Sankarasubramaniam, Y.; Cayirci, E. A survey on sensor networks. IEEE Commun. Mag. 2002, 40, 102–114. [Google Scholar] [CrossRef]
- Xiao, F.; Liu, W.; Li, Z.T.; Chen, L.; Wang, R.C. Noise-Tolerant Wireless Sensor Networks Localization Via Multi-norms Regularized Matrix Completion. IEEE Trans. Veh. Technol. 2018, 67, 2409–2419. [Google Scholar] [CrossRef]
- Akyildiz, I.F.; Vuran, M.C. Wireless Sensor Networks; John Wiley & Sons Ltd.: Hoboken, NJ, USA, 2010. [Google Scholar]
- Zordan, D.; Melodia, T.; Rossi, M. On the design of temporal compression strategies for energy harvesting sensor networks. IEEE Trans. Wirel. Commun. 2016, 15, 1336–1352. [Google Scholar] [CrossRef]
- Xiao, F.; Wang, Z.Q.; Ye, N.; Wang, R.C.; Li, X.Y. One More Tag Enables Fine-Grained RFID Localization and Tracking. IEEE/ACM Trans. Netw. 2018, 26, 161–174. [Google Scholar] [CrossRef]
- Zhu, H.; Xiao, F.; Sun, L.J.; Wang, R.C.; Yang, P.L. R-TTWD: Robust Device-free Through-The-Wall Detection of Moving Human with WiFi. IEEE J. Sel. Areas Commun. 2017, 35, 1090–1103. [Google Scholar] [CrossRef]
- Srbinovski, B.; Magno, M.; O’Flynn, B.; Pakrashi, V.; Popovici, E. Energy aware adaptive sampling algorithm for energy harvesting wireless sensor networks. In Proceedings of the 2015 IEEE Sensors Applications Symposium (SAS), Zadar, Croatia, 13–15 April 2015; pp. 1–6. [Google Scholar]
- Dehwaha, A.H.; Elmetennania, S.; Claudelb, C. UD-WCMA: An energy estimation and forecast scheme for solar powered wireless sensor networks. J. Netw. Comput. Appl. 2017, 90, 17–25. [Google Scholar] [CrossRef]
- Liu, Q.; Zhang, Q.J. Accuracy improvement of energy prediction for solar-energy-powered embedded systems. IEEE Trans. Very Large Scale Integr. Syst. 2016, 24, 2062–2074. [Google Scholar] [CrossRef]
- Visser, H.J.; Vullers, R.J.M. RF Energy harvesting and transport for wireless sensor network applications: Principles and Requirements. Proc. IEEE 2013, 101, 1410–1423. [Google Scholar] [CrossRef]
- Bozorgi, S.M.; Rostami, A.S.; Hosseinabadi, A.A.R.; Balas, V.E. A new clustering protocol for energy harvesting-wireless sensor networks. Comput. Electr. Eng. 2017, 64, 233–247. [Google Scholar] [CrossRef]
- Heinzelman, W.R.; Chandrakasan, A.; Balakrishnan, H. Energy-efficient communication protocol for wireless microsensor networks. In Proceedings of the 33rd annual Hawaii international conference on System sciences, Maui, HI, USA, 7 January 2000; pp. 3005–3014. [Google Scholar]
- Qing, L.; Zhu, Q.; Wang, M. Design of a distributed energy-efficient clustering algorithm for heterogeneous wireless sensor networks. Comput. Commun. 2006, 29, 2230–2237. [Google Scholar] [CrossRef]
- Smaragdakis, G.; Matta, I.; Bestavros, A. SEP: A stable election protocol for clustered heterogeneous wireless sensor networks. In Proceedings of the 2nd International Workshop on Sensor and Actor Network Protocols and Applications, Baltimore, MD, USA, 31 May 2004. [Google Scholar]
- Fan, X.; Yang, X.; Liu, S.; Qu, Z. Clustering routing algorithm for wireless sensor networks with power harvesting. Comput. Eng. 2008, 34, 120–122. [Google Scholar]
- Xu, X.; Lv, Q.; Wang, W.; Huangfu, X. Clustering routingalgorithm for heterogeneous wireless sensor networks with self-supplying nodes. Comput. Sci. 2017, 44, 134–139. [Google Scholar]
- Yao, Y.; Wang, G.; Ren, Z.; Yi, J. Energy balanced clustering algorithm for self-energized wireless sensor networks. Chinese J. Sens. Actuators 2013, 2013, 1420–1425. [Google Scholar]
- Roundy, S.; Wright, P.K.; Rabaey, J. A study of low level vibrations as a power source for wireless sensor nodes. Comput. Commun. 2003, 26, 1131–1144. [Google Scholar] [CrossRef]
- Zaidi, S.A.R.; Afzal, A.; Hafeez, M.; Ghogho, M.; McLernon, D.C.; Swami, A. Solar energy empowered 5G cognitive metro-cellular networks. IEEE Commun. Mag. 2015, 53, 70–77. [Google Scholar] [CrossRef] [Green Version]
- Martinez, G.; Li, S.; Zhou, C. Maximum residual energy routing in wastage-aware energy harvesting wireless sensor networks. In Proceedings of the 79th IEEE Vehicular Technology Conference (VTC Spring), Seoul, Korea, 18–21 May 2014; pp. 1–5. [Google Scholar]
- Martinez, G.; Li, S.; Zhou, C. Multi-commodity online maximum lifetime utility routing for energy-harvesting wireless sensor networks. In Proceedings of the IEEE Global Communications Conference (GLOBECOM), Austin, TX, USA, 8–12 December 2014; pp. 106–111. [Google Scholar]
- Oak Ridge National Laboratory (ORNL) RSR Web Site. Available online: http://midcdmz.nrel.gov/ornl _ rsr/ (accessed on 5 April 2018).
- Heinzelman, W.B.; Chandrakasan, A.P.; Balakrishnan, H. An application-special protocol architecture for wireless micro-sensor networks. IEEE Trans. Wirel. Commun. 2002, 1, 660–670. [Google Scholar] [CrossRef]
0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | |
---|---|---|---|---|---|---|
The round number of the first dead node | 1367 | 1173 | 1283 | 1506 | 1309 | 1337 |
Parameter | Parameter Meaning | Value |
---|---|---|
N | Number of nodes | 100 |
Base-station coordinates | [50, 50] | |
m | Advanced-node ratio | 0.2 |
p | Proportion of ideal cluster heads | 0.1 |
Initial energy of node | 0.5 J | |
Emission circuit loss | 50 nJ/bit | |
Energy consumption factor of free-space amplifier | 10 pJ/bit/m | |
Energy consumption factor of | 0.0013 pJ/bit/m | |
multi-path-attenuated power amplifier | ||
Receiving circuit loss | 50 nJ/bit | |
Data fusion loss | 5 nJ/bit | |
a | Advanced node exceeds the initial | 5 nJ/bit |
energy percentage of ordinary node | ||
l | Packet length | 4000 bit |
The largest round | 3000 |
Algorithm | Death of First Node | Death of 10% of Nodes | Death of All Nodes |
---|---|---|---|
LEACH | 921 | 1053 | 1362 |
EH-LEACH | 968 | 1063 | — |
SEP | 1072 | 1124 | 2040 |
DEEC | 1348 | 1487 | 2942 |
PHC | 1085 | 1203 | — |
HNS | 1216 | 1318 | — |
CHSES (proposed) | 1506 | 1712 | — |
© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Han, C.; Lin, Q.; Guo, J.; Sun, L.; Tao, Z. A Clustering Algorithm for Heterogeneous Wireless Sensor Networks Based on Solar Energy Supply. Electronics 2018, 7, 103. https://doi.org/10.3390/electronics7070103
Han C, Lin Q, Guo J, Sun L, Tao Z. A Clustering Algorithm for Heterogeneous Wireless Sensor Networks Based on Solar Energy Supply. Electronics. 2018; 7(7):103. https://doi.org/10.3390/electronics7070103
Chicago/Turabian StyleHan, Chong, Qing Lin, Jian Guo, Lijuan Sun, and Zhuo Tao. 2018. "A Clustering Algorithm for Heterogeneous Wireless Sensor Networks Based on Solar Energy Supply" Electronics 7, no. 7: 103. https://doi.org/10.3390/electronics7070103