PREFACE Wireless Sensor Network (WSN) is the collection of sensor nodes which cooperatively monitor surrounding phenomena over large physical areas. The advances in the integration of micro-electro-mechanical systems and digital electronics with the development of wireless communications have enabled the wide deployment of WSNs. Sensor nodes in WSNs have been equipped with various sensing capabilities in space and time and higher processing capacities can satisfy requests from various modern applications. Because of low-cost, small-in-size and no-replace battery powered characteristics of sensor nodes, energy conservation is commonly recognized as the key challenge in designing and operating the networks. In typical WSNs applications, sensors are required for spatially dense deployment to achieve satisfactory coverage. As a result, multiple sensors will record information about a single event in the sensing field, i.e. sensed data are correlated with each other. The existence of correlation characteristic can bring many significant potential advantages for the development of efficient communication protocols wellsuited to the WSNs paradigm. For example, due to the correlation degree, data in a correlated region can be compressed with a high ratio to reduce the amount of sent data for saving dissipated energy. Even with high enough correlation, it may not be necessary for every sensor node in a correlation group to transmit its data to the base station. Instead, a smaller number of sensor measurements (representation) might be adequate to communicate the event features to the base station within a certain reliability/fidelity level. From this point of view, various researches have focused on discovering and exploiting the correlation of sensed data in WSNs. At the beginning of these researches, the traditional probability and statistic theory have been used to describe the correlation among data. Nevertheless, these approaches limited the correlation as a linear relation that may not appropriate for general, nonlinear cases in practice. Therefore, the information entropy approach has been considered to obtain the generality. However, most of the research approach, using traditional probability - statistic theory or information entropy theory, considered the correlation as a distance-dependence feature. In general, the correlation of data may be independent of external factors such as sensor location and environmental conditions and thus, so it is better to concentrate on the information contained in the data itself rather than considering only attribute meta-data such as location and time.
MINISTRY OF EDUCATION AND TRAINING HANOI UNIVERSITY OF SCIENCE AND TECHNOLOGY Nguyen Thi Thanh Nga EFFICIENT DATA COMMUNICATION FOR WIRELESS SENSOR NETWORK BASED ON DATA CORRELATION Major: Computer Engineering Code No.: 9480106 COMPUTER ENGINEERING DISSERTATION SUPERVISORS: Dr Nguyen Kim Khanh Assoc Prof Ngo Hong Son Hanoi - 2018 TABLE OF CONTENT COMMITMENT ACKNOWLEDGMENTS TABLE OF CONTENT LIST OF ABBREVIATIONS LIST OF FIGURES LIST OF TABLES 11 PREFACE 13 INTRODUCTION 16 Overviews 16 Energy conservation in WSNs 19 1.2.1 Radio optimization 19 1.2.2 Sleep/wake-up schemes 20 1.2.3 Energy efficient routing 20 1.2.4 Data reduction 21 1.2.5 Charging solution 22 Data correlation and energy conservation in WSNs 23 Problem statements and contributions 24 CORRELATION IN WIRELESS SENSOR NETWORK 25 Correlation model survey 25 Information entropy theory 31 2.2.1 Overview 31 2.2.2 Entropy concept 32 2.2.3 Joint entropy 32 Correlation and entropy 33 2.3.1 Correlation of two variables 33 2.3.1.1 Mutual information 33 2.3.1.2 Entropy correlation coefficient 34 2.3.2 Correlation of more than two variables 36 Conclusions 38 ENTROPY-BASED CORRELATION CLUSTERING 39 Joint entropy estimation 39 3.1.1 Determining the upper bound of joint entropy 39 3.1.2 Determining the lower bound of joint entropy 42 3.1.3 Validating entropy estimation 44 Correlation region and correlation clustering algorithm 47 3.2.1 Estimated joint entropy and correlation 47 3.2.2 Correlation region definition 50 3.2.3 Correlation clustering algorithm 52 3.2.4 Validation 54 Conclusions 56 ENTROPY CORRELATION BASED DATA AGGREGATIONS 57 Compression aggregation 57 4.1.1 Comparison of compression schemes 57 4.1.2 Compression based routing scheme in a correlated region 60 4.1.2.1 1-D analysis 61 4.1.2.2 2-D analysis 65 4.1.2.3 General topology model analysis 69 4.1.3 Optimal routing scheme in correlation networks 71 Representative aggregation 72 4.2.1 Distortion function 72 4.2.2 Number of representative nodes 73 4.2.3 Representative node selection 76 4.2.4 Practical validation 77 Conclusions 80 5 ENTROPY CORRELATION BASED DATA AGGREGATION PROTOCOL (ECODA) 82 Network model 82 Radio model 83 Outline of ECODA 84 5.3.1 Set-up phase 85 5.3.2 Steady-state phase 87 Performance evaluation 87 5.4.1 Simulation models 87 5.4.1.1 Simulation parameters 88 5.4.1.2 Simulation setups 89 5.4.1.3 Dissipated energy calculation 90 5.4.2 Simulation results and discussions 92 5.4.2.1 Compression aggregation-based routing protocol 92 5.4.2.2 Representative aggregation-based routing protocol 97 5.4.3 Evaluations and comparison 100 5.4.3.1 The case of ECODA with compression aggregation 101 5.4.3.2 The case of ECODA with representative aggregation 106 Conclusions 107 CONCLUSIONS AND FUTURE STUDY 109 Summary of Contributions 109 Limitations 110 Future work 111 PUBLICATION LIST 112 REFERENCES 113 APPENDIX 125 LIST OF ABBREVIATIONS Abbreviation Meaning BS Base Station CDR Compression Driven Routing CH Cluster Head CSMA Carrier Sense Multiple Access DSC Distributed Source Coding ECODA Entropy COrrelation clustering for Data Aggregation JE Joint Entropy LEACH-C Low Energy Adaptive Clustering Hierarchy- Centralized MAC Media Access Control MEMS Micro Electro Mechanical Systems QoS Quality of Service RDC Routing Driven Compression RSSI Received Signal Strength Indication SPT Shortest Path Tree TDMA Time Division Multiple Access VLSI Very Large-Scale Integration WSN(s) Wireless Sensor Network(s) 1-D One-Dimensional 2-D Two-Dimensional LIST OF FIGURES Figure 1.1 Wireless Sensor Network 16 Figure 1.2 Wireless Sensor Network Applications 17 Figure 2.1 The layout of sensor nodes in an environment with two different conditions area 30 Figure 2.2 The relations between entropies, joint entropy, and mutual information 33 Figure 2.3 Relation between correlation and joint entropy 37 Figure 3.1 Joint entropy calculation principle 42 Figure 3.2 Sensor layout in Intel Berkeley Research Lab 45 Figure 3.3 Practical, upper bound and lower bound joint entropy (JE) of subsets of the dataset 46 Figure 3.4 Estimated joint entropy with different values of entropy correlation coefficients using upper bound function (with Hmax = 2[bits]) 48 Figure 3.5 Estimated joint entropy (by upper bound) and practical joint entropy of dataset 49 Figure 3.6 Correlation-based clustering algorithm 52 Figure 3.7 Temperature data measured at 11 nodes in the dataset 53 Figure 3.8 Derivative of estimated joint entropy and calculated the joint entropy of the selected group 55 Figure 4.1 Routing paths for three schemes: (a) DSC, (b) RDC, and (c) CDR [122] 59 Figure 4.2 Energy consumptions for the DSC, RDC and CDR schemes respectively to entropy correlation coefficients 60 Figure 4.3 Routing pattern of 1-D network 61 Figure 4.4 Total bit-hop cost Es that corresponds to cluster size with different values of entropy correlation coefficient in the case of 1-D with compression along SPT to the cluster head 63 Figure 4.5 Total bit-hop cost Es that corresponds to cluster size with different values of entropy correlation coefficient in the case of 1-D with compression at the cluster head only 64 Figure 4.6 Routing pattern of the 2-D network [122] 65 Figure 4.7 Total bit-hop cost Es that corresponds to cluster size with different values of entropy correlation coefficient in the case of 2-D with compression along SPT to the cluster head 67 Figure 4.8 Total bit-hop cost Es that corresponds to cluster size with different values of entropy correlation coefficient in the case of 2-D with compression at the cluster head only 68 Figure 4.9 Illustration of clustering for a general topology model 69 Figure 4.10 Total transmission cost that corresponds to cluster size with different values of entropy correlation coefficient with compression along SPT to the cluster head 70 Figure 4.11 Total transmission cost respectively to cluster size with different values of entropy correlation coefficient with compression at the cluster head only 71 Figure 4.12 The relation between distortion and the number of representative nodes with N = 10 74 Figure 4.13 The relation between distortion and the number of representative nodes with N = 15 74 Figure 4.14 The relation between distortion and the number of representative nodes with N = 20 75 Figure 4.15 Maximizing obtained information based representative node selection algorithm 77 Figure 5.1 Radio energy dissipation model 83 Figure 5.2 Time scheduling for one round 85 Figure 5.3 Sensor node distribution in the 200mx200m sensing area 88 Figure 5.4 Routing path of compression-based routing protocol 89 Figure 5.5 Total energy in each round in case of compression along SPT to the CH 93 Figure 5.6 Number of alive nodes in each round in case of compression along SPT to the CH 94 Figure 5.7 Total energy in each round in case of compression at the CH only 96 Figure 5.8 Number of alive nodes in each round in case of compression at the CH only 97 Figure 5.9 Total energy in each round in case of representative aggregation with compression with 16 correlation clusters 98 Figure 5.10 Number of alive nodes in each round in case of representative aggregation with compression with 16 correlation clusters 98 Figure 5.11 Total energy in each round in the case of representative aggregation without compression with 16 correlation clusters 99 Figure 5.12 Number of alive nodes in each round in the case of representative aggregation without compression with 16 correlation clusters 100 Figure 5.13 Total energy comparison between distance-based protocol and ECODA with compression aggregation in the case of 16 correlation clusters 101 Figure 5.14 Total energy comparison between distance-based protocol and ECODA with compression aggregation in the case of 16 correlation clusters 102 Figure 5.15 Total energy comparison between distance-based protocol and ECODA with compression aggregation in the case of correlation clusters 102 Figure 5.16 Total energy comparison between distance-based protocol and ECODA with compression aggregation in the case of correlation clusters 103 Figure 5.17 Total energy comparison between distance-based protocol and ECODA with compression aggregation in the case of correlation clusters 104 Figure 5.18 Total energy comparison distance-based protocol and ECODA with compression aggregation in the case of correlation clusters 105 Figure 5.19 Total energy comparison between distance-based protocol and ECODA with representative aggregation in the case of 16 correlation clusters 106 Figure 5.20 Number of alive nodes comparison between distance-based protocol and ECODA with representative aggregation in the case of 16 correlation clusters 107 10 LIST OF TABLES Table 3.1 Node’s entropy of the dataset 46 Table 3.2 Entropy correlation coefficient of each pair from the dataset 47 Table 3.3 Practical, upper bound and lower bound joint entropy (JE) of subsets of the dataset 49 Table 3.4 Clustering results of 48 nodes 53 Table 4.1 Number of representative nodes with distortion D = 0.05 76 Table 4.2 Number of representative nodes with distortion D = 0.1 76 Table 4.3 Number of representative nodes with distortion D = 0.15 76 Table 4.4 Selection of representative nodes and the actual distortion based on theoretical calculation (dataset with N = 11 nodes) 78 Table 4.5 Selection of representative nodes and the actual distortion based on practical calculation (dataset with N = 11 nodes) 78 Table 4.6 Entropy values of 10 nodes in the correlation region (dataset with N = 10 nodes) 78 Table 4.7 Selection of representative nodes and the actual distortion based on theoretical calculation (dataset with N = 10 nodes) 79 Table 4.8 Selection of representative nodes and the actual distortion based on practical calculation (dataset with N = 10 nodes) 80 Table 5.1 Simulation parameters 88 Table 5.2 Simulation results in case of compression along SPT to the CH 94 Table 5.3 Simulation results in case of compression at the CH only 95 Table 5.4 Simulation results in the case of representative aggregation with compression at the CH 97 Table 5.5 Simulation results in the case of representative aggregation without compression at the CH 100 Table 5.6 Comparison between distance-based protocol and ECODA with compression aggregation in the case of 16 correlation clusters 103 Table 5.7 Comparison between distance-based in the case of correlation clusters 104 11 Table 5.8 Comparison between distance-based protocol and ECODA with compression aggregation in the case of correlation clusters 105 Table 5.9 Comparison between distance-based protocol and ECODA with representative aggregation in the case of 16 correlation clusters 106 12 𝑠−1 𝐸1𝑖𝑛 𝑏 𝑏 𝑏 = 𝐻0 ∑ 𝑘𝑖 − 𝐻0 𝑘𝑠−1 + 𝐻0 ( (𝑠 − 2) + 1) 2 𝑖=1 𝑏 𝑏 𝑏 = 𝐸𝑖𝑛 + 𝐻0 ( (𝑠 − − 𝑘𝑠−1 ) + − ) 2 𝑏 𝑏 𝑏 ⇒ 𝐸1𝑖𝑛 = 𝐻0 ( (𝑠 − − 𝑘𝑠−1 ) + − )⁄(1 − ) 2 𝑏 (𝑠 − − 𝑘𝑠−1 ) + 1) 𝐻0 𝐸1𝑖𝑛 = ( 2−𝑏 In addition, 𝐸1𝑒𝑥 = 𝑃 𝐻𝑠 = 𝑃 𝑘𝑠 𝐻0 Therefore, 𝑁 𝐸𝑠 (𝜌0 ) = (𝐸1𝑖𝑛 + 𝐸1𝑒𝑥 ) 𝑠 𝑁 𝑏 (𝑠 − − 𝑘𝑠−1 ) + + 𝑃𝑘𝑠 ) 𝐻0 𝐸𝑠 (𝜌0 ) = ( 𝑠 2−𝑏 (A2.1) (A2.2) (A2.3) Moreover, 𝑏 (𝑘𝑠−1 + 1) ⟹ 𝑘𝑠−1 = 𝑘𝑠 − 𝑏 Substitute (A2.4) into (A2.3) we obtain 𝑁 𝑏 (𝑠 − − ( 𝑘𝑠 − 1)) + + 𝑃𝑘𝑠 ) 𝐻0 𝐸𝑠 (𝜌0 ) = ( 𝑠 2−𝑏 𝑏 𝑁 𝑏 𝑠 )𝑘 )𝐻 𝐸𝑠 (𝜌0 ) = ( + + (𝑃 − 𝑠 2−𝑏 2−𝑏 𝑠 A3 Proof of equation (4.7) 𝑘𝑠 = 𝑠−1 𝐸1𝑖𝑛 = ∑ 𝑖 𝐻𝑖 = 𝑖=1 𝑠 (𝑠 − 1) 𝐻0 (A2.4) (A2.5) (A3.1) In addition, 𝐸1𝑒𝑥 = 𝑃 𝐻𝑠 = 𝑃 𝑘𝑠 𝐻0 (A3.2) Therefore, 𝑁 (𝐸 + 𝐸1𝑒𝑥 ) 𝑠 1𝑖𝑛 𝑁 𝑠 (𝑠 − 1) = ( 𝐻0 + 𝑃 𝑘𝑠 𝐻0 ) 𝑠 𝑠 − 𝑃 𝑘𝑠 ) 𝐻0 = 𝑁( + 𝑠 A4 Proof of equation (4.10) 𝐸𝑠 (𝜌0 ) = 𝑠−1 𝐸2𝑖𝑛 𝑛 = ( ) ∑(2(𝑠 − 𝑖)𝐻𝑖 + 𝐻𝑖 ) 𝑠 𝑖=1 126 (A3.3) 𝑠−1 𝐸2𝑖𝑛 𝑛 = ( ) (∑(2(𝑠 − 𝑖)𝑘𝑖 + 𝑘𝑖 )) 𝐻0 , 𝑠 (A4.1) 𝑖=1 where 𝑏 𝑖 ( ) −1 𝑏 𝑖−1 𝑘𝑖 = ( + ( ) − 1) 𝐻0 ; 𝑏 −1 2 𝑏 𝑖 ( ) −1 𝑏 𝑖 −1 𝑘𝑖 = ( +( ) − 1) 𝐻0 , 𝑏 −1 with 𝑏 = − 𝜌0 In addition, 𝑛 −1 𝑠 𝑛 𝐸2𝑒𝑥 = 𝑠 (∑ ( − 𝑖) 𝑖 + 𝑖 ) 𝐻𝑠𝑠 𝑠 𝑖=1 (A4.2) 𝑛 −1 𝑠 𝑛 = 𝑠 (∑ ( − 𝑖) 𝑖 + 𝑖 ) 𝑘𝑠𝑠 𝐻0 , 𝑠 𝑖=1 where 𝑘𝑠𝑠 with 𝑏 = − 𝜌0 We have 𝑏 𝑠 ( ) −1 𝑏 𝑠 −1 = +( ) − 1, 𝑏 −1 𝑛 −1 𝑠 𝑛 ∑ ( − 𝑖) 𝑖 + 𝑖 𝑠 𝑖=1 𝑛 −1 𝑠 𝑛 −1 𝑠 𝑛 = ∑ 𝑖 − ∑ 𝑖2 𝑠 𝑖=1 𝑖=1 𝑛 𝑛 𝑛 𝑛 𝑛 = ( ) ( − 1) − ( − 1) ( ) (2 − 1) 𝑠 𝑠 𝑠 𝑠 𝑠 𝑛 𝑛 𝑛 = ( − 1) (4 + 1) 6𝑠 𝑠 𝑠 Then, 𝐸2𝑒𝑥 = 𝑛 𝑛 𝑛 ( − 1) (4 + 1) 𝐻𝑠𝑠 𝑠 𝑠 127 = 𝑛 𝑛 𝑛 ( − 1) (4 + 1) 𝑘𝑠𝑠 𝐻0 𝑠 𝑠 Finally, 𝐸𝑠 (𝜌0 ) = 𝐸2𝑖𝑛 + 𝐸2𝑒𝑥 𝑠−1 𝑛 𝑛 𝑛 𝑛 𝐸𝑠 (𝜌0 ) = ( ) (∑(2(𝑠 − 𝑖)𝑘𝑖 + 𝑘𝑖 )) 𝐻0 + ( − 1) (4 + 1) 𝑘𝑠𝑠 𝐻0 𝑠 𝑠 𝑠 𝑠−1 𝑖=1 𝑛 𝑛 𝑛 𝑛 𝐸𝑠 (𝜌0 ) = [( ) ∑(2(𝑠 − 𝑖)𝑘𝑖 + 𝑘𝑖 ) + ( − 1) (4 + 1) 𝑘𝑠𝑠 ] 𝐻0 , 𝑠 𝑠 𝑠 (A4.3) 𝑖=1 where 𝑏 𝑖 ( ) −1 𝑏 𝑖−1 𝑘𝑖 = ( + ( ) − 1) 𝐻0 ; 𝑏 −1 2 𝑏 𝑖 ( ) −1 𝑏 𝑖 −1 𝑘𝑖 = ( +( ) − 1) 𝐻0 ; 𝑏 −1 2 𝑘𝑠𝑠 𝑏 𝑠 ( ) −1 𝑏 𝑠 −1 =( +( ) − 1) 𝐻0 , 𝑏 −1 with 𝑏 = − 𝜌0 A5 Proof of equation (4.14) 𝑠−1 𝐸2𝑖𝑛 𝑛 = ( ) (∑ 2(𝑠 − 𝑖)𝑖 + 𝑖 ) 𝐻0 𝑠 𝑖=1 𝑠−1 𝑠−1 𝑖=1 2( 𝑖=1 𝑛 = ( ) (2𝑠 ∑ 𝑖 − ∑ 𝑖 ) 𝐻0 𝑠 𝑛 2𝑠 𝑠 − 1) 𝑠(𝑠 − 1)(2𝑠 − 1) ) 𝐻0 =( ) ( − 𝑠 𝑛 𝑠(𝑠 − 1)(4𝑠 + 1) ( = ) 𝐻0 𝑠 𝑛2 𝐸2𝑖𝑛 = (𝑠 − 1)(4𝑠 + 1)𝐻0 6𝑠 In addition, 𝑛 −1 𝑠 𝑛 𝐸2𝑒𝑥 = 𝑠 (∑ ( − 𝑖) 𝑖 + 𝑖 ) 𝐻𝑠𝑠 𝑠 𝑖=1 128 (A5.1) 𝑛 𝑛 𝑛 ( − 1) (4 + 1) 𝐻𝑠𝑠 𝑠 𝑠 𝑛 𝑛 𝑛 = ( − 1) (4 + 1) 𝑘𝑠𝑠 𝐻0 𝑠 𝑠 = 𝐸2𝑒𝑥 Then, 𝐸𝑠 (𝜌0 ) = 𝐸2𝑖𝑛 + 𝐸2𝑒𝑥 𝑛2 𝑛 𝑛 𝑛 = (𝑠 − 1)(4𝑠 + 1)𝐻0 + ( − 1) (4 + 1) 𝑘𝑠𝑠 𝐻0 6𝑠 𝑠 𝑠 𝑛2 𝑛 𝑛 𝑛 𝐸𝑠 (𝜌0 ) = [ (𝑠 − 1)(4𝑠 + 1) + ( − 1) (4 + 1) 𝑘𝑠𝑠 ] 𝐻0 6𝑠 𝑠 𝑠 where 𝑏 𝑠 ( ) −1 𝑏 𝑠 −1 𝑘𝑠𝑠 = ( +( ) − 1) 𝐻0 , 𝑏 −1 with 𝑏 = − 𝜌0 B1 Create the simulated network: network_create.m %% NTTNGA@2017 clear; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%init%%%%%%%%%%%%%%%%%%%%%%%%%% xmax=200;%x dimension; ymax=200;%y dimension; numdead=0; pkToBS=0; %no of packet data received at base station energyDis=0; %energy dissipated p=0.05; % for LEACH-C %position of bs bs.x=100; bs.y=275; %no of nodes numNode=400; %energy parameters: unit is j eelec=50*0.000000001; efs=10*0.000000000001; emp=0.0013*0.000000000001; eda=5*0.000000001; edead=201000*0.000000001; %energy limit InitE = 0.25; %packet length: unit is bits pkl=4000; %set position of nodes figure (1); for i=1:1:numNode Or_node(i).x=rand(1,1)*xmax; Or_node(i).y=rand(1,1)*ymax; Or_node(i).rch=0; %check if node is ch in this round Or_node(i).isch=0; %check if node is ch Or_node(i).dead=0; %0 is alive 129 (A5.2) (A5.3) Or_node(i).energy=InitE; %initial energy for each node Or_node(i).cluster=0; % node(i) is not in any cluster %draw Bs figure (1); plot(Or_node(i).x,Or_node(i).y,'o'); hold on; end %draw Bs figure (1); title('Original Simulation Network'); hold on; plot(bs.x,bs.y,'ro'); B2 LEACH-C simulation: leach.m %%NTTNGA@2017 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%init%%%%%%%%%%%%%%%%%%%%%%%%%% clear; load('workspace12032018.mat'); %results of running %network_create.m file is saved to this mat file numdead = 0; pkToBS = 0; %no of packet data received at base station rho = 0.1; cc = 1-rho/2; %%%%%%%%%%%%%%%%%set position of nodes figure (1); for i=1:1:numNode node(i).x = Or_node(i).x; node(i).y = Or_node(i).y; node(i).rch = 0; %check if node is ch in this round node(i).isch = 0%check if node is ch node(i).dead = 0; node(i).energy = InitE; %initial energy for each node node(i).cluster = 0;% node(i) is not in any cluster hold on; end figure (1); %title('LEACH'); hold on; plot(bs.x,bs.y,'ro'); Lstatistics.energy(1)=InitE*numNode; Round = 1600; LenergyDis = zeros(1,Round); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for r=1:1:Round for i=1:1:numNode node(i).isch=0; end numdead=0; for i=1:1:numNode %count dead nodes if(node(i).energyk) NoCluster = k; else NoCluster = Lstatistics.alive(r); end %select cluster heads while (cluster< NoCluster) for i=1:1:numNode if(node(i).dead==0) Limit = p/(1-p*mod(r,round(1/p))); noderand=rand; %set random value for each node if(node(i).isch==0) if (noderand =(j1-1)*ymax/k1) && (node(i).y=(j2-1)*xmax/k2) && (node(i).x=(j3-1)*ymax/k3) && (node(i).y=(j4-1)*xmax/k4) && (node(i).x0) node(Gindex(j)).gch = j; c(j).x=node(Gindex(j)).x; %position of group head c(j).y=node(Gindex(j)).y; end end %choose the cluster head is the closest to base station among group heads for z = 1:1:cz minDisC(z)=1000; CHindex(z) = 0; for i=1:1:numNode if (node(i).dead == 0) if ((node(i).cluster == z)&&(node(i).gch>0)) dtocenterC = sqrt((node(i).xbs.x)^2+(node(i).y-bs.y)^2); if (dtocenterC < minDisC(z)) CHindex(z) = i; minDisC(z)= dtocenterC; end end end end if (CHindex(z)>0) node(CHindex(z)).rch = z; d(z).x=node(CHindex(z)).x; %position of cluster head d(z).y=node(CHindex(z)).y; end end %%%%%%%%%%%%%%% %calculate dissipation energy Gdata = zeros(1,cz); for i=1:1:numNode if (node(i).dead==0) %energy dissipated for non-ch and non-gh if ((node(i).rch==0)&&(node(i).gch==0)) dtogh=sqrt((node(i).x- c(node(i).group).x)^2 + (node(i).y- c(node(i).group).y)^2); node(i).energy = node(i).energy (pkl*eelec+pkl*efs*(dtogh*dtogh)+pkl*eda); end %energy dissipated for non-ch but gh 135 if ((node(i).rch==0)&&(node(i).gch>0)) dtoch=sqrt((node(i).x- d(node(i).cluster).x)^2 + (node(i).y- d(node(i).cluster).y)^2); Ng = c(node(i).gch).nodes; pkC = ((cc^Ng-1)/(cc-1)+cc^(Ng-1)-1)*pkl; Gdata(node(i).cluster) = Gdata(node(i).cluster) + pkC; node(i).energy=node(i).energy-(pkl*eelec*(Ng1)+pkl*eda*Ng+pkC*eelec+pkC*emp*(dtoch*dtoch)); end %energy dissipated for CH if ((node(i).gch > 0)&&(node(i).rch > 0)) dtobs=sqrt((node(i).x- bs.x)^2 + (node(i).ybs.y)^2); Ng = c(node(i).gch).nodes; pkC = Ng*pkl; Gd = Gdata(node(i).rch); Sd = Gd+pkC; N = d(node(i).rch).nodes; pkN = ((cc^N-1)/(cc-1)+cc^(N-1)-1)*pkl; node(i).energy=node(i).energy-(Gd*eelec+(Ng1)*pkl*eelec+Sd*eda+pkN*eelec+pkN*emp*(dtobs*dtobs*dtobs*dtobs)); end end if (node(i).energy>edead) CenergyDis(r)=CenergyDis(r)+node(i).energy; if (r==1) figure (1); plot(node(i).x,node(i).y,'b*'); end end end Cstatistics.energy(r)=CenergyDis(r); end r=1:Round; figure (2); hold on plot(r,Cstatistics.dead); xlabel('Rounds'); ylabel('Dead nodes'); title('Number dead nodes per round'); figure (3); hold on plot(r,Cstatistics.alive); xlabel('Rounds'); ylabel('Alive nodes'); title('Number alive nodes per round'); figure (4); hold on xlabel('Rounds'); ylabel('Energy'); title('Total Expenditute Energy'); plot(r,Cstatistics.energy); 136 B4 Compression based scheme simulation: representative.m %%NTTNGA@2017 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%init%%%%%%%%%%%%%%%%%%%%%%%%%% clear; load('workspace12032018.mat'); %results of running %network_create.m file is saved to this mat file numdead = 0; pkToBS = 0; %no of packet data received at base station rho = 0.6; cc = 1-rho/2; %%%%%%%%%%%%%%%%%set position of nodes figure (1); for i=1:1:numNode node(i).x = Or_node(i).x; node(i).y = Or_node(i).y; node(i).rch = 0; %check if node is ch in this round node(i).isch = 0; %check if node is ch node(i).dead = 0; %0 is alive node(i).energy = InitE; %initial energy for each node node(i).cluster = 0;% node(i) is not in any cluster node(i).sleep = 0; %check if node is sleep node figure (1); plot(node(i).x,node(i).y,'o'); hold on; end figure (1); hold on; plot(bs.x,bs.y,'ro'); Round = 5000; CenergyDis = zeros(1,Round); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for r=1:1:Round numdead=0; for i=1:1:numNode %count dead nodes if(node(i).energy=(j1-1)*ymax/k1) && (node(i).y=(j2-1)*xmax/k2) && (node(i).x=TotalE(j)/c(j).nodes)) dtocenter = sqrt((node(i).xTotalX(j))^2+(node(i).y-TotalY(j))^2); if (dtocenter < minDis(j)) CHindex(j) = i; minDis(j)= dtocenter; end end end end if (CHindex(j)>0) 138 node(CHindex(j)).isch = 1; node(CHindex(j)).rch = j; c(j).x=node(CHindex(j)).x; %position of ch c(j).y=node(CHindex(j)).y; end end %choose the sleep nodes for j = 1:1:k if (c(j).nodes > N_rep) for l=1:1:c(j).nodes-N_rep minE(j)=0.25; Sleepindex(j) = 0; for i=1:1:numNode if ((node(i).dead == 0)&&(node(i).sleep == 0)) if ((node(i).cluster == j)&&(node(i).energy0) node(Sleepindex(j)).sleep = 1; end end end end %%%%%%%%%%%%%%% %calculate dissipation energy for i=1:1:numNode %non-ch select CH if ((node(i).dead==0)&&(node(i).sleep == 0)) if (node(i).rch==0) dtoch=sqrt((node(i).x- c(node(i).cluster).x)^2 + (node(i).y- c(node(i).cluster).y)^2); %energy dissipated for non-ch node(i).energy = node(i).energy(pkl*eelec+pkl*efs*(dtoch*dtoch)+pkl*eda); end %energy dissipated for CH if(node(i).rch > 0) dtobs=sqrt((node(i).x- bs.x)^2 + (node(i).ybs.y)^2); if (c(node(i).cluster).nodes > N_rep) N = N_rep; else N = c(node(i).cluster).nodes; end pkC = N*pkl;%((cc^N-1)/(cc-1)+cc^(N-1)-1)*pkl; node(i).energy=node(i).energy-(pkl*eelec*(N1)+0*pkl*eda*N+pkC*eelec+pkC*emp*(dtobs*dtobs*dtobs*dtobs)); end end if (node(i).energy>=0) CenergyDis(r)=CenergyDis(r)+node(i).energy; end 139 end Cstatistics.energy(r)=CenergyDis(r); end r=1:Round; figure (2); hold on plot(r,Cstatistics.dead); figure (3); hold on plot(r,Cstatistics.alive); figure (4); hold on plot(r,Cstatistics.energy); 140 ... sensors will record information about a single event in the sensing field, i.e these sensed data strongly depends on each other For example, temperature sensors in the same room record the same... correlation environment can be divided into groups called correlation regions where measured data strongly depends on each other By clustering sensor nodes into correlation regions, data aggregation... be pointed out Correlation model survey Correlation is represented for the relationships between quantitative variables or categorical variables In other words, it’s a measure of how things are