Lifetime Optimization in Hierarchical Wireless Sensor Networks

4 downloads 0 Views 457KB Size Report
reachable from all the CHs, which becomes needed for ... of these CHs, and clusters formation. Another .... electronics and the power amplifier while the receiver.
Lifetime Optimization in Hierarchical Wireless Sensor Networks Samy S. Botros IEEE Student member Electronics and Communications Eng. Department, Cairo University, Giza, Egypt [email protected]

Hany M. ElSayed IEEE member Electronics and Communications Eng. Department, Cairo University, Giza, Egypt [email protected]

Abstract Wireless sensor networks is a voracious field for research, especially after the great advances in MEMS based sensors. In this paper, environmental monitoring applications are considered where data may be continuously reported with the possibility of urgent alarming if necessary. Hierarchical architecture of the network is assumed in order to overcome the problem of energy constrained sensors. Two algorithms are proposed with the purpose of network lifetime elongation and the maximization of the use of the available energy. The first algorithm is a modification for LEACH-C to enhance its performance. It results in a 25% longer lifetime. The second algorithm is an energy efficient method to ensure full coverage of the network as long as sensors are still working. This achieves 32% longer lifetime than LEACH-C.

1. Introduction Deployment of large scale as well as small scale Wireless Sensor Networks (WSN) has come into wide use owing to the rapid achievements in MEMS technologies, wireless communications and digital electronics [1-3]. WSNs have drawn great interest due to their wide range of applications including physical environment monitoring, security surveillance, military applications and others [4]. An example of the environmental applications is the detection of toxic gases in habitable areas and the measurement of their percentage in air. Due to the limited energy resources of sensor nodes, designing efficient routing protocols has been one of the most challenging issues for WSNs [4]. One main concern for WSNs is to make best use of the network and maximize its lifetime. A lot of research work has been conducted in routing protocols [2, 5]. Many energy efficient strategies have been considered [6, 7]. Hierarchical protocols are proposed aiming at clustering the nodes so that cluster

978-1-4244-2728-4/09/$25.00 ©2009 IEEE

Hassanein H.Amer IEEE member Electronics Eng. Department, American University in Cairo Cairo, Egypt [email protected]

M.S.El-Soudani IEEE Senior member Electronics and Communications Eng. Department, Cairo University, Giza, Egypt [email protected]

heads can do some aggregation and reduction of data in order to save energy [2]. LEACH [8] is a clustering based protocol that uses randomized rotation of cluster heads to evenly distribute the energy load among the sensors in the network. LEACH-C [9] uses a central control algorithm to form the clusters in order to produce better clusters. It overcomes some of the drawbacks of LEACH resulting in better performance in terms of the number of data items received by the end user of the network. This paper proposes a modification in LEACH-C by optimizing one of the protocol parameters to achieve longer lifetime for the network. This proves to achieve more than 25% lifetime elongation in the examples presented in this paper. Another algorithm is proposed in order to overcome drawbacks of LEACH-C and to fit a wider range of applications. This also shows about 32% lifetime improvement. The rest of the paper is organized as follows. Section 2 describes the previous work. Section 3 proposes the first modification to LEACH-C to elongate the network lifetime. In section 4, further improvement of the lifetime is discussed. Finally, section 5 concludes the paper and describes future extensions.

2. Previous work Energy considerations as well as data routing and delivery have been some of the important design issues of WSNs [2]. The energy constrained nature of wireless nodes requires the use of energy efficient strategies to maximize the usefulness of the network [6]. These strategies can be classified into: • Energy efficient routing. • Topology control. • Reducing the volume of information transferred. • Scheduling the nodes sleeping state. The best energy efficiency will be obtained by combining all these strategies [6].

As for data delivery, the routing protocols that have been proposed can be broadly classified as flat or data centric protocols and hierarchical or cluster based protocols [2, 5]. In flat routing protocols, each sensor determines its parent node(s) to forward data packets. Nodes are not organized into hierarchical clusters as it is done in the hierarchical protocols. Most of the flat routing protocols that have been proposed assume that nodes maintain estimates of their distances from the destination nodes [5]. In data centric routing, the sink sends queries to certain regions and waits for data from the sensors located in the selected regions [2]. SPIN [10] was the first data centric protocol, and later Directed Diffusion [11] has been developed and has become a breakthrough in data centric routing [2]. The second main category (hierarchical routing protocols) organizes the network into groups. Each group selects a node to act as a master node (Cluster Head, CH) for this group. Each CH collects data from group members and transmits an aggregate of this data to the sink. The main assumption is that the sink is reachable from all the CHs, which becomes needed for all sensors if CH rotation is permitted [5]. LEACH [8] is one of the first and most popular hierarchical routing protocols for sensor networks [2]. The main features of LEACH are localized coordination and control for cluster set-up and operation, as well as randomized rotation of the CHs and the corresponding clusters. The aim of LEACH is to disperse the energy load between sensor nodes. One problem of LEACH is that CHs are selected randomly [12]. Another problem is that clusters may not be divided equally which increases each sensor’s energy consumption [12]. LEACH proved to be more energy efficient than preceding routing techniques and it successfully distributes energy usage among the nodes in the network such that the nodes die randomly [8]. Later, LEACH was modified such that the CHs selection and the clusters formation algorithm takes into consideration the energies of the sensors. This modification necessitated the assumption that each node has an estimate of the total energy of all nodes in the network. But this approach did not work well in dynamic networks [9]. Another modification that was made by the authors in [9] to guarantee the performance of LEACH was to develop a central control algorithm to form clusters to disperse CH nodes throughout the network. This was the basis for LEACH-C which used a centralized clustering algorithm and the same steady state protocol as LEACH. The strong point of LEACH-C is that it can equally distribute waste of energy between sensors by positioning the CHs into the centers of clusters [12]. Energy overhead is one of the disadvantages of LEACH and its centralized version, LEACH-C. This overhead is consumed in CHs selection, announcement of these CHs, and clusters formation. Another drawback

is losing full coverage of the network when some sensors are completely depleted of their energy. This occurs while other sensors still have some non-zero residual energy. Attempts to overcome these drawbacks are presented in the next sections.

3. Optimum number of cycles for network master (NM) 3.1. Discussion One of the main aims in wireless sensor networks is to maximize network lifetime, which can be defined as [6]: • Definition 1: the time to the first node failure due to battery outage. • Definition 2: the time to the first network partitioning. • Definition 3: the time to the unavailability of application functionality. In this work, the first definition is considered since it does not depend on the type of application and it is suitable for any network architecture, either divided into groups, clusters or not. This definition is also preferred since it guarantees that during the whole lifetime of the network, it is fully covered with active nodes which collect data from all positions in the network. The proposed algorithm deals with all sensors as one network. The cluster head approach is used to manage the communication with the network. One of the sensors in the whole area is selected as a master. It is called a Network Master node to differentiate it from the cluster head used in LEACH or other algorithms. The Network Master or NM for the network receives data from the other sensors in the network. Single hop is assumed for all sensors in the network. The NM then performs data aggregation and compression to remove redundancy and send the useful information to the sink or base station, also in one hop. This is similar to the idea of LEACH and LEACH-C and some others, but here it is applied to the whole network. It is assumed that all the sensors are aware of their positions, as assumed in [9], and that the sink knows these positions. In the absence of mobility, these locations are fixed throughout the whole lifetime of the network. The sink has knowledge about the whole network and is responsible for selecting the NM. It then informs all other sensors about the current NM. This removes such an overhead from the sensor nodes. The algorithm consists of rounds, each starts with the NM selection by the sink. This node remains as NM for a fixed number of cycles “C”, after which a new round starts. Before the selection of the NM, the energies of sensors are compared with two thresholds {EnTh and EnThNM}. The first threshold, EnTh, is the energy required by each sensor to transmit its data to the farthest possible

NM node for one complete round. This is calculated for each sensor assuming the worst case that the NM is the farthest node from this sensor. A sensor that has energy below this threshold, means that it is no longer active and cannot perform any useful function. The second threshold, EnThNM, is the energy required by the sensor to act as an NM, gathering data from sensors, aggregating them and sending the resulting packet to the far away sink. Again, this is the energy needed for one complete round. It is calculated for each sensor according to its distance from the sink. A sensor that has energy below this threshold, cannot act as an NM for the network. Sensors are classified according to these thresholds before NM selection into one of three categories: • Active nodes that can act as NMs. • Active nodes but cannot act as NMs. • Inactive nodes or dead nodes. Once a node is classified as dead node, the network is considered dead, according to the definition of lifetime used in this research. The sink selects a sensor as an NM for the current round according to the following criteria: 1- The node belongs to the first category. 2- The node has energy greater than the average energy of all active nodes. 3- The sum of its distances to the active nodes is minimal. It is observed that a node can be selected as an NM for many rounds through the whole network lifetime. One factor that must be taken into consideration is the overhead effect of NM selection, which is not clear in other protocols. The main energy overhead is the reception of announcements about the NM from the sink. This energy waste is repeated at the beginning of each round. Regarding the number of cycles a node remains a head per round, as this number decreases, the thresholds decrease permitting longer lifetime of the sensors, but energy dissipated in overhead reception of announcement messages increases. On the other hand, when this number increases, the energy wasted decreases at the expense of the increased thresholds and hence the less useful lifetime of sensors. Hence, there is a tradeoff between the frequency of master rotation and the overhead energy dissipation. Simulations with different values for the number of cycles show that there is an optimum number of cycles per round that maximizes the network lifetime. Using this optimum number of cycles shows that the network achieves longer lifetime than the corresponding LEACH-C. 3.2. Simulation and results A simulation model is built using MatLab [13] with the same network parameters and description used in [9]. These parameters are listed in Table 1. The network consists of nodes that are randomly distributed in the

deployment area. Nodes are assumed to have always data to send to the end user and nodes are located close to each other to have correlated data. A simple model for radio hardware energy dissipation is used. In this model the transmitter dissipates energy to run the radio electronics and the power amplifier while the receiver dissipates energy only to run the radio electronics. Although this model is simplistic, but it is accepted and used in the literature [9, 14]. The new parameter taken into consideration is the overhead energy. This overhead is consumed in receiving the packet from the sink announcing the NM sensor of the current round. This announcement packet is considered 25% of the data packet size. The system is run for different values of the number of cycles “C” per round, and the corresponding network lifetime is calculated. Table 1. Network and System parameters Parameter Network Size Number of Sensors ( N ) Transmitter / Receiver Electronics Transmitter Amplifier for short distance for long distance Pass Loss Factor for short distance for long distance Aggregation Energy Data Packet Size Overhead Packet Size

Value 100 m X 100 m 100 Sensors 50 nJ/bit

10 0.0013 2 4 50 500 125

pJ/bit/ m2 pJ/bit/ m4

nJ/bit/Signal Byte Byte

Fig. 1 shows that there is an optimum number of cycles for which each sensor remains acting as NM, before another round starts over and a new NM is selected. For the parameters considered, the longest lifetime is achieved for C=3, resulting in a lifetime equivalent to 3702 cycles. LEACH-C is simulated with the same parameters, and without dividing the network into clusters. Although LEACH-C divides the network into clusters, but it is assumed here that the network is considered as one cluster to set the basis for comparison. This resulted in a lifetime equivalent to 2950 cycles for C=50. These results are shown in Fig. 2. The figure shows also the number of alive nodes that can act as NMs. It is noticed that, for the proposed scheme, most of the sensors remain capable of acting as NMs for the whole network lifetime. For LEACH-C, sensors that act as NM once will not have enough energy to act as NM again. This minimizes the chance to replace the current NM with another sensor if it is subject to any communication difficulties. This is not the situation when C=3 as it is proposed.

1.4

3750 X: 3 Y: 3702

1.2

3700

R e m a in in g E n e r g y

T o tal L ife tim e in C y c les

3650

3600

3550

3500

1

0.8

0.6

0.4

3450

0.2

3400

3350 0

2

4

6

8

10

12

0 0

14

10

20

30

40

Number of Cycles per Round

50

60

70

80

90

100

Sensors

Figure 1. The total network Lifetime to the death of first node versus the number of cycles per round assigned for all sensors the same.

Figure 3. The remaining energy for each sensor after the network is considered dead. The number of cycles per round C is set to 50.

0.8 100

0.7

90

0.6

R e m a in in g E n e r g y

N u m b e r o f A liv e n o d e s

80 70

0.5

60

0.4

50 40 30

0.3

Active Nodes for C = 3

0.2

Active Nodes for C = 50

20 10 0 0

Active Heads for C = 3

0.1

Active Heads for C = 50

500

1000

1500

2000

2500

2950

3702 4000

4500

Total number of Cycles (Time Slots)

0 0

10

20

30

40

50

60

70

80

90

100

Sensors

Figure 2. Sensor Classification

Figure 4. The remaining energy for each sensor after the network is considered dead. The number of cycles per round C is set to 3.

After the first node loses all its energy and the network loses its full coverage, the remaining energies at each sensor are calculated and shown in Fig. 3 and Fig. 4 for C=50 and C=3 respectively. The figures show that for LEACH-C, although many sensors still have large enough energy, but due to the death of one sensor, the whole network is considered dead. This means that about 28% of the network energy is not used. On the contrary, when C=3 is considered, 94% of the sensors have residual energy less than 3-5% of their initial energy. The total remaining energy is only 4% of the network

energy. LEACH-C tries to minimize overhead energy of NM selection by forcing each sensor to be selected as NM only once. In order to achieve that, the number of cycles per round must be large (C=50, for the parameters used). Consequently, some sensors deplete their energies while others still have a large quantity of energy. Breaking down this large number of cycles, allows more rotation for the NM, at the expense of increased energy overhead. But this cost is payable in order to increase the useful lifetime of the network.

4. Lifetime improvement 4.1. Discussion The previous algorithm selected a fixed optimum number of cycles “C” per round in order to achieve a longer lifetime. It is observed that with this relatively small number of cycles, a sensor is chosen as an NM for many rounds. It is observed also that not all sensors act as NMs for the same number of rounds. So, if these could be gathered together, such that each sensor is selected as an NM only once, but without exhausting sensors which require more energy to act as an NM, a longer lifetime for the network will be achieved. Another observation in previous techniques is that after the death of the first node, there is still some residual energy for some sensors. This residual energy is not used effectively. One reason is that it is distributed to all the sensors, and hence, the share of each sensor is not large enough to work as NM. Another reason is that the full coverage of the network, which may be a primary concern in many applications, is lost. Both observations lead to an algorithm which requires that each sensor be selected as an NM only once, and acts as an NM for a certain number of cycles “Ci”, which need not be the same for all sensors. The algorithm also requires the most usage of the available energies for each sensor. The algorithm is simply run once at the sink based on its knowledge of the locations of the different sensors. The sink can calculate the energy “Etx i to NM j” required by each sensor “i” to transmit its data to any of the other nodes “j” acting as an NM, as well as the energy “ENM i” needed by the node “i" to act as an NM itself. Assuming that each sensor acts as an NM for a certain number of cycles “Ci”, before and after which it acts as an ordinary node, the energy consumed by any sensor “i” through the network lifetime can be calculated as: Esensor i = Ci * E NM i +

j=N C j * Etx i to NM j j =1 j≠i for i = 1,2,......, N



∑i Ci

(2)

If each sensor node “i” has an initial energy “Eo i”, it must be that the energy consumed by any sensor is less than or equal its initial energy. That is: Esensor i ≤ Eo i

Esensor i = Eo i for i = 1,2,3,....., N

(3)

(4)

The solution set S = {Ci} indicates that the network will have maximum lifetime. Any other set, S’ = {C’i}, will not be a solution for the set of equations. Hence, there are two possibilities. The first is that the set S’ results that “Esensor i” for any of the sensors will be greater than “Eo i” of that sensor. This violates (3) and is not permitted. The second situation is that the set S’ causes “Esensor i” for any of the sensors to be less than its “Eo i” which means that a certain amount of the system energy is not used, and consequently, the total lifetime will be less. This means that only the set S, which solves the equations (4) will achieve the longest lifetime. It should be noted that the solution of such equations does not guarantee integer values for the “Ci”s and since it has no meaning for a sensor to act as a head for a portion of a cycle, the decimal part of the solution set must be truncated. It can be shown also that truncation of all the decimal part is a must and that none of the “Ci”s can be rounded up. This can be explored as follows. Assuming that all “Ci”s are rounded down, except “Cm” which is rounded up, the energy dissipated by sensor “m” can be calculated as: Esensor m = ⎡Cm ⎤* E NM m +

j=N

∑ ⎣C j ⎦* Etx m to NM j

j =1 j≠ m

(5)

For the other sensors; Esensor i = ⎣Ci ⎦* E NM i +

j=N

∑ ⎣C j ⎦* Etx i to NM j

j =1 j ≠i j≠ m

(1)

Since each sensor will act as a NM only once for “Ci” cycles, then the total lifetime, in number of cycles, is the summation of the different “Ci”s. T=

In order to make the best use of the available energies for the sensor, the following set of “N” equations in “N” unknowns, { C1 , C2 , C3 , ….., CN }, is solved.

(6) + ⎡Cm ⎤ * Etx i to NM m

Although the second term in (5) is less than the second term of equation (1), but the first term is greater than the first term of equation (1). But since “Etx i to NM j” is about two orders of magnitude less than “ENM i”, the total sum of the two terms in (5) will be larger than their sum in (1). Consequently, the energy required for sensor “m” will most likely be larger than “Eo m” which violates (3). The same is valid for equation (6), i.e., for some of the sensors, the condition in (3) will be violated. Hence, the “Ci”s obtained from solving (4) must be rounded down, and the total expected network lifetime will be: T=

∑i ⎣Ci ⎦

(7)

4.2. Simulation and results The simulation environment used before is used for the new scheme. The solution of the set of equations in (4) resulted in the set of “Ci”s shown in Fig. 5 after truncation. It can be observed that the different values of “Ci” range between 16 and 46 cycles per round. The summation of these “Ci”s causes the expected lifetime of the network to be almost 3900 cycles. The steady state phase of the algorithm discussed in the previous section is used here again. Since any schedule of NMs will give the same performance, an NM selection phase is not required. Fig. 6 shows a comparison of the results. It can be seen that this algorithm achieves about 32% longer lifetime than LEACH-C and a longer lifetime than using the optimal number of fixed cycles as well. The rationale behind this lifetime elongation is the arrangement of energy dissipation such that no sensor depletes its energy faster than the other nodes. Also, the energy that was consumed in the selection of NM, even though it was dissipated in the sink, is not needed any more. Any schedule for the sensors acting as NMs will work well giving the same maximum lifetime. This saves the energy of NM announcement at the beginning of each round, which is a large saving if this overhead is relatively large.

more important observation is that these sensors have almost energies at the same level. Also the sensors which have not acted as NMs yet, have approximately the same energy. This supports the argument of the algorithm, namely that sensors deplete energies equally and eventually, die all almost at the same time. This can be seen in Fig. 8. In this figure, sensors are seen to have all very low energy, not sufficient to function anymore. Here, 100% of the sensors have residual energy less than 2.5% of their initial energy, causing the total energy remaining to be about 2% of the network energy. This shows clearly the advantages of lifetime improvement in addition to overhead energy saving. In addition to the previous advantages of this very simple idea, it can be also advantageous in suitability to applications requiring continuous reporting of data, as well as event driven applications. For the latter, after the specified expected lifetime, the equations can be resolved taking into consideration the remaining energies for sensors, instead of “Eo i”, and so on till the first node loses all its energy. It is also suitable for homogeneous as well as heterogeneous networks, where sensors of different initial energies “Eo i” are deployed. Sensors with more initial energy will be able to act as NMs for a longer number of cycles.

50 45

Number of Cycles

40 35 30 25 20 15 10 5 0

10

20

30

40

50

60

70

80

90

100

Sensors

Figure 5. The number of cycles "Ci" assigned for each sensor to act as a Network Master.

Fig. 7 shows the residual energies for all the sensors after 50 rounds (equivalent to 1900 cycles) in which the first 50 sensors have acted as NMs. It is clear that the sensors that acted as NMs have less energy. But the

Since this procedure is centralized, all the calculations are done in the sink which has more energy as well as more powerful processing capabilities. This decreases the time of the calculations.

100

Number of Alive nodes

90 80

Death Point of the Network - LEACH-C C = 50

70 60 50 40

Death Point of the Network - First Modification C=3 25.5 % Longer Lifetime

30 20

Death Point of the Network - Second Modification Set of Ci 32.0 % Longer Lifetime

10 0 0

500

1000

1500

2000

2500

2950

3500

3895

4500

Total number of Cycles (Time Slots) Figure 6. Number of nodes alive versus the total number of cycles.

1.8

0.18

1.6

0.16

1.4

0.14

R e m a in i n g E n e r g y

0.2

R e s id u a l E n e r g y

2

1.2 1

0.8 0.6

0.12 0.1 0.08 0.06

0.4

0.04

0.2

0.02

0

10

20

30

40

50

60

70

80

90

100

Sensors

0

10

20

30

40

50

60

70

80

90

100

Sensors

Figure 7. The residual energy for each sensor after the first 50 sensors have acted as NMs for the network.

Figure 8. The remaining energy for each sensor after the network is considered dead. Each sensor acts as NM for its assigned number of cycles.

One more advantage of this method is the possibility to change the order in which sensors act as NMs at anytime. This may be required in order to account for communication difficulties. A nearby interferer to the current NM may corrupt the data received and sent by this NM, increasing the probability of packet data drop. Such case can be dealt with by selecting another

sensor to work as NM. This is done with much small extra cost and avoids the dissipation of energy in sending erroneous corrupted data. Finally, Fig. 9 shows a comparison of LEACH-C with both proposed ideas in terms of the number of data signals received at the sink. This is an applicationindependent quantity suitable to determine and compare

quality of different algorithms [9]. The more data received at the sink, the more accurate its view of the environment will be [9]. The figure shows that selecting C=3 in the modification of LEACH-C results in more data delivery. The second improvement achieves more data delivery than both. x 10

References [1]

[2]

5

[3]

3.9 C=3 3.8

C = 50 Set of Ci

D a t a S ig n a ls R e c e iv e d

3.7

[4]

3.6 3.5 3.4 3.3

[5]

3.2 3.1

[6]

3 2,950

3500

3,702

3984

Number of Cycles

Figure 9. Total amount of data received by the sink over the number of cycles.

[7]

5. Conclusion and future work [8]

Wireless Sensor Networks have an important role in a wide range of applications. Many hierarchical routing algorithms were proposed to solve energy problems and maximize the network lifetime. LEACH-C was one of the successful protocols to deal with hierarchical networks. This paper suggested a modification on LEACH-C, through finding the optimum number of cycles "C" per round, to be used by sensors acting as network masters. An algorithm is proposed that does not involve clustering of the network, but it outperforms its corresponding version from LEACH-C in terms of network lifetime. Clustering the network and finding the optimum number of cycles “C” per round for this architecture is currently being investigated. A second algorithm is proposed that calculates the optimum number of cycles for each sensor to act as a network master (NM) such that the sensors eventually die at the same time, consuming all their energy to maximize the network lifetime. Using MatLab, it was demonstrated that both algorithms achieve longer lifetime and have a higher ability of coping with communication problems or NM failures by selecting another node as NM without significant loss in performance. Further work will include using a more realistic radio model. Also, a network simulator tool will be used to approach real network performance.

[9]

[10]

[11]

[12]

[13] [14]

I.F. Akyildiz, W. Su, Y. Sankarasubramaniam and E. Cayirci, “Wireless Sensor Networks: A Survey,” Computer Networks Magazine, 2002. K. Akkaya, and M. Younis, “A Survey on Routing Protocols for Wireless Sensor Networks,” Journal of Ad Hoc Networks, vol. 3, no. 3, 2005. X. Wang, X. Zhang, G. Chen and Sh. Tian, “An Adaptive and Distributed Clustering Scheme for Wireless Sensor Networks,” Convergence Information Technology, 2007. A. Martirosyan, A. Boukerche and R. Pazzi , “A Taxonomy of Cluster-Based Routing Protocols for Wireless Sensor Networks,” The International Symposium on Parallel Architectures, Algorithms, and Networks (i-span 2008), Sydney, Australia, 2008. N. Narasimha and K. Gopinath, “A Survey of Routing Algorithms for Wireless Ssensor Networks ,” Indian Institute of Science, vol. 43, no. 4, 2006. S. Mahfoudh and P. Minet, “Survey of Energy Efficient Strategies in Wireless Ad Hoc and Sensor Networks,” Seventh International Conference on Networking (icn 2008), Cancun, Mexico, 2008. G.F. Zaki, H.M. Elsayed, H.H. Amer and M.S. ElSoudani, “Energy-Efficient Hybrid Wireless Sensor Networks in Urban Areas”, International Journal of Factory Automation, Robotics and Soft Computing,, April 2008. W. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “Energy-Efficient Routing Protocols for Wireless Microsensor Networks,” Proceedings of the 33rd Hawaii International Conference on System Sciences (HICSS), Maui, HI, 2000. W. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “An Application-Specific Protocol Architecture for Wireless Microsensor Networks,” IEEE Transactions On Wireless Communications, vol. 1, no. 4, 2002. W. Heinzelman, J. Kulik, and H. Balakrishnan, “Adaptive Protocols for Information Dissemination in Wireless Sensor Networks,” Proceedings of the 5th Annual ACM/IEEE International Conference on Mobile Computing and Networking, Seattle, WA,1999. C. Intanagonwiwat, R. Govindan and D. Estrin, “Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks,” Proceedings of the Sixth ACM/IEEE International Conference on Mobile Computing and Networking, Boston, MA, 2000. Ch.-S. Nam, H.-J. Jeong and D.-R. Shin , “The Adaptive Cluster Head Selection in Wireless Sensor Networks,” IEEE International Workshop on Semantic Computing and Applications, Incheon, Korea, July 2008. Official Site of MatLab: www.mathworks.com Th.S. Rappaport, Wireless Communications: Principles and Practice, Prentice Hall, 2nd Edition, 2002