Genetic Algorithm for Hierarchical Wireless Sensor Networks

11
Genetic Algorithm for Hierarchical Wireless Sensor Networks Sajid Hussain, Abdul Wasey Matin, Obidul Islam Jodrey School of Computer Science, Acadia University, Wolfville, Nova Scotia, Canada [email protected], wasey [email protected], [email protected] Abstract— Large scale wireless sensor networks (WSNs) can be used for various pervasive and ubiquitous ap- plications such as security, health-care, industry automa- tion, agriculture, environment and habitat monitoring. As hierarchical clusters can reduce the energy consumption requirements for WSNs, we investigate intelligent techniques for cluster formation and management. A genetic algorithm (GA) is used to create energy efficient clusters for data dissemination in wireless sensor networks. The simula- tion results show that the proposed intelligent hierarchical clustering technique can extend the network lifetime for different network deployment environments. Index Terms— sensor networks, hierarchical, genetic al- gorithm, routing, energy efficient I. I NTRODUCTION Recently, Wireless Sensor Networks (WSNs) are be- coming an essential part of many application environ- ments that are used in military and civilians. The key applications of WSN are habitat monitoring, target track- ing, surveillance, and security management [1] [2]. The application of WSN consists of small sensor nodes that are low-cost, low-power and multi-functional. These small sensor nodes communicate within short distances. Since energy consumption during communication is a major energy depletion factor, the number of transmissions must be reduced to achieve extended battery life [3] [4]. Cluster-based approaches are suitable for habitat and environment monitoring, which requires a continuous stream of sensor data. Cluster-based routing protocols are investigated in several research studies. For example, researchers in [5] presented a theoretical study with a special focus on the clustering problem in sensor networks with application to energy optimization. In their study, they propose an optimal algorithm for clustering the sensor nodes. The algorithm creates clusters of uniform size such that the distance between the sensor nodes and the CHs is minimized; the minimized distance helps to reduce the cost of transmission energy. Heinzelman et al. [6] describe the LEACH protocol, a hierarchical, self-organized cluster-based approach for This paper is based on “Genetic Algorithm for Energy Efficient Clusters in Wireless Sensor Networks”, by Sajid Hussian, Abdul Wasey Matin, Obidul Islam, which appeared in the Proceedings of the 4th International Conference on Information Technology: New Generations (ITNG), Las Vegas, April 2-4, 2007. c 2007 IEEE. Further, this work was supported in part by Discovery Grant of Natural Sciences and Engineering Research Council (NSERC) Canada. monitoring applications. The data collection area is ran- domly divided into several clusters, where the numbers of clusters are pre-determined. Based on time division multiple access (TDMA), the sensor nodes transmit data to the CHs, which aggregate and transmit the data to the BS. A new set of CHs is chosen after specific time intervals. A node can be re-elected only after all the remaining candidates have been elected. Lindsey et al. [7] propose PEGASIS, an extension of LEACH, in which nodes transmit to their nearest neighbors, which eventually transmit the messages to the base station. The PEGASIS protocol is found to be more robust to node failures as compared to LEACH. The work in [8] shows that a two-tiered architecture is more energy efficient when hierarchical clusters are deployed at specific locations. Bandyopadhyay and Coyle [9] de- scribe a multi-level hierarchical clustering algorithm, in which the parameters for minimum energy consumption are obtained using stochastic geometry. Ye et al. [10] describe a contention-based, medium access protocol, S- MAC, which reduces energy consumption by using virtual clusters. Common sleep schedules are developed for the clusters, and in-channel signaling is used to avoid colli- sions. Cerpa et al. [11] propose ASCENT (Adaptive Self- Configuring Sensor Networks Topologies) that operates between routing and link layers. Any routing or data dissemination protocol can use ASCENT to manage node redundancy. In ASCENT, nodes monitor their connectiv- ity and decide whether to become active and participate in the multi-hop networking. Moreover, nodes other than active nodes remain in a passive state until they receive a request from active nodes. Muruganathan et al. [12] propose a centralized routing protocol called Base-Station Controlled Dynamic Cluster- ing Protocol (BCDCP). The protocol tries to distribute the network energy evenly among all the network nodes and proposes a specialized approach for selecting the cluster heads. Like LEACH, the BCDCP divides the network into clusters that are each managed by a base station assigned CH. After every round, the base station computes the average energy of all the nodes and compares it with a certain threshold energy level. The nodes whose energy level is greater than the threshold value become eligible to become cluster heads. Then, using a cluster splitting algorithm, it divides the network into several clusters, ensuring that the CHs are uniformly placed throughout JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 87 © 2007 ACADEMY PUBLISHER

Transcript of Genetic Algorithm for Hierarchical Wireless Sensor Networks

Genetic Algorithm for Hierarchical WirelessSensor Networks

Sajid Hussain, Abdul Wasey Matin, Obidul IslamJodrey School of Computer Science,

Acadia University, Wolfville, Nova Scotia, [email protected], wasey [email protected], [email protected]

Abstract— Large scale wireless sensor networks (WSNs)can be used for various pervasive and ubiquitous ap-plications such as security, health-care, industry automa-tion, agriculture, environment and habitat monitoring. Ashierarchical clusters can reduce the energy consumptionrequirements for WSNs, we investigate intelligent techniquesfor cluster formation and management. A genetic algorithm(GA) is used to create energy efficient clusters for datadissemination in wireless sensor networks. The simula-tion results show that the proposed intelligent hierarchicalclustering technique can extend the network lifetime fordifferent network deployment environments.

Index Terms— sensor networks, hierarchical, genetic al-gorithm, routing, energy efficient

I. I NTRODUCTION

Recently, Wireless Sensor Networks (WSNs) are be-coming an essential part of many application environ-ments that are used in military and civilians. The keyapplications of WSN are habitat monitoring, target track-ing, surveillance, and security management [1] [2]. Theapplication of WSN consists of small sensor nodes thatare low-cost, low-power and multi-functional. These smallsensor nodes communicate within short distances. Sinceenergy consumption during communication is a majorenergy depletion factor, the number of transmissions mustbe reduced to achieve extended battery life [3] [4].

Cluster-based approaches are suitable for habitat andenvironment monitoring, which requires a continuousstream of sensor data. Cluster-based routing protocolsare investigated in several research studies. For example,researchers in [5] presented a theoretical study with aspecial focus on the clustering problem in sensor networkswith application to energy optimization. In their study,they propose an optimal algorithm for clustering thesensor nodes. The algorithm creates clusters of uniformsize such that the distance between the sensor nodes andthe CHs is minimized; the minimized distance helps toreduce the cost of transmission energy.

Heinzelman et al. [6] describe the LEACH protocol,a hierarchical, self-organized cluster-based approach for

This paper is based on “Genetic Algorithm for Energy EfficientClusters in Wireless Sensor Networks”, by Sajid Hussian, Abdul WaseyMatin, Obidul Islam, which appeared in the Proceedings of the 4thInternational Conference on Information Technology: New Generations(ITNG), Las Vegas, April 2-4, 2007.c©2007 IEEE. Further, this workwas supported in part by Discovery Grant of Natural SciencesandEngineering Research Council (NSERC) Canada.

monitoring applications. The data collection area is ran-domly divided into several clusters, where the numbersof clusters are pre-determined. Based on time divisionmultiple access (TDMA), the sensor nodes transmit datato the CHs, which aggregate and transmit the data tothe BS. A new set of CHs is chosen after specific timeintervals. A node can be re-elected only after all theremaining candidates have been elected.

Lindsey et al. [7] propose PEGASIS, an extensionof LEACH, in which nodes transmit to their nearestneighbors, which eventually transmit the messages to thebase station. The PEGASIS protocol is found to be morerobust to node failures as compared to LEACH. Thework in [8] shows that a two-tiered architecture is moreenergy efficient when hierarchical clusters are deployedat specific locations. Bandyopadhyay and Coyle [9] de-scribe a multi-level hierarchical clustering algorithm, inwhich the parameters for minimum energy consumptionare obtained using stochastic geometry. Ye et al. [10]describe a contention-based, medium access protocol, S-MAC, which reduces energy consumption by using virtualclusters. Common sleep schedules are developed for theclusters, and in-channel signaling is used to avoid colli-sions. Cerpa et al. [11] propose ASCENT (Adaptive Self-Configuring Sensor Networks Topologies) that operatesbetween routing and link layers. Any routing or datadissemination protocol can use ASCENT to manage noderedundancy. In ASCENT, nodes monitor their connectiv-ity and decide whether to become active and participatein the multi-hop networking. Moreover, nodes other thanactive nodes remain in a passive state until they receivea request from active nodes.

Muruganathan et al. [12] propose a centralized routingprotocol called Base-Station Controlled Dynamic Cluster-ing Protocol (BCDCP). The protocol tries to distribute thenetwork energy evenly among all the network nodes andproposes a specialized approach for selecting the clusterheads. Like LEACH, the BCDCP divides the network intoclusters that are each managed by a base station assignedCH. After every round, the base station computes theaverage energy of all the nodes and compares it with acertain threshold energy level. The nodes whose energylevel is greater than the threshold value become eligibleto become cluster heads. Then, using a cluster splittingalgorithm, it divides the network into several clusters,ensuring that the CHs are uniformly placed throughout

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 87

© 2007 ACADEMY PUBLISHER

the network area. The BCDCP further uses a balancedclustering technique [5] to ensure that all clusters haveapproximately the same number of sensor nodes. Oncethe BS finalizes the number of clusters, cluster heads,and cluster members, it creates an optimized routing path.BCDCP uses a multi-hop routing scheme to transfer thedata to the base station. The cluster heads, instead ofdirectly sending data to the base station, sends data totheir neighboring cluster heads. The cluster head closestto the base station transfers the aggregated data of thenetwork to the base station. The simulation results showthat BCDCP reduces energy consumption by11 percentand15 percent from PEGASIS and LEACH, respectively.

Learning algorithms such as genetic algorithms (GAs)use prior network knowledge to reduce energy con-sumption. Turgutet al. [13] use a GA to enhance theperformance of clustering algorithms in mobile ad-hocnetworks. The WSN is represented in the form of chro-mosomes. This encoded information is used to obtain thebest solution (network) by applying biological operationssuch as crossover and mutation. In this approach, the bestsolution is based on the fitness function which defines thefate of an individual chromosome.

In another direction, Jinet al. [14] use a GA forreduce energy consumption in WSNs. In their work, aGA allows the formation of a number of pre-definedindependent clusters, which assists in reducing the totalminimum communication distance. Their results showthat the number of cluster-heads is about 10 percent of thetotal number of nodes. The pre-defined cluster formationalso decreases the communication distance by 80 percentas compared to the direct transmission distance.

Ferentinos et al. [15] extend the ideas proposed by Jinet al. [14] by improving the GA fitness function. Thefocus of their work is based on the optimization propertiesof a genetic algorithm. The characteristics used in thedesign of the fitness function of a GA include the statusof sensor nodes, network clustering with the choice of ap-propriate cluster-heads, and the choice between two signalranges from the normal sensor nodes. This improves theuniformity of measurement points as well as it reducesenergy consumption.

Hussain and Matin [16], [17] propose a hierarchicalcluster-based routing (HCR) protocol where nodes self-organize into clusters and each cluster is managed bya set of associates called head-set. Using round-robintechnique, each associate acts as a cluster head (CH).The sensor nodes transmit data to their cluster heads,which transmit the aggregated data to the base station.Moreover, the energy-efficient clusters are retained fora longer period of time; the energy-efficient clusters areidentified using heuristics-based approach.

Hussain et al. [18] improve the HCR protocol by usinga Genetic Algorithm (GA) to determine the number ofclusters, the cluster heads, the cluster members, and thetransmission schedules. A GA is used at the base station,which provides energy efficient solutions to the optimizer.This provides the base station with the ability to determine

the best cluster formation that will give minimum energyconsumption during run time. The base station analysesthe current network condition and applies the GA afterevery iteration (a set of transmissions). The optimizer atthe base station selects the best solution based on theacquired knowledge through the GA fitness function. Theproposed fitness function is based on parameters suchas energy consumption, number of clusters, cluster size,direct distance to sink, and cluster distance. Upon com-pletion of iteration, the optimizer improves its decisionsby receiving feedback, which is then used to adjust theweights of the parameters of the fitness function for thenext iteration. In this paper, we provide thorough andrigorous investigation of the results and discuss the designand implementation issues of simulation.

We use a radio model described in [6]. In this model,for a short range transmission such as within clusters, theenergy consumed by a transmit amplifier is proportionalto d2, whered is the distance between nodes. However,for a long range transmission such as from a cluster headto the base station, the energy consumed is proportionalto d4. Using the given radio model, the energy consumedETij

to transmit a message of lengthl bits from a nodei to a nodej is given by Equation 1 and Equation 2 forlong and short distances, respectively.

ETij= lEe + lǫld

4ij (1)

ETij= lEe + lǫsd

2ij (2)

Moreover,ER, the energy consumed in receiving thel-bitmessage, is given by:

ER = lEe + lEBF (3)

whereEBF represents the cost of beam forming approachto reduce the energy consumption. The constants used inthe radio model are as follows: a) energy consumed bythe amplifier to transmit at a shorter distance isǫs = 10pJ/bit/m2, b) energy consumed by the amplifier to transmitat a longer distance isǫl = 0.0013 pJ/bit/m4, c) energyconsumed in the electronics circuit to transmit or receivethe signal isEe = 50 nJ/bit, and d) energy consumed forbeam formingEBF = 5 nJ/bit.

The remainder of this paper is organized as follows:Section II describes the proposed technique of GA-basedintelligent hierarchical clusters. Section III discussesthesimulation and implementation details. Section IV pro-vides the results and discussion. Finally, Section V con-cludes the paper and provides a few directions for thefuture work.

II. I NTELLIGENT CLUSTERING

The HCR protocol [16], [17] is enhanced by using a GAat the BS. The BS uses a GA to create energy-efficientclusters for a given number of transmissions. The nodeis represented as a bit of a chromosome. The head andmember nodes are represented as1s and0s, respectively.A population consists of several chromosomes and thebest chromosome is used to generate the next population.

88 JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007

© 2007 ACADEMY PUBLISHER

Based on the survival fitness, the population transformsinto the future generation. Initially, each fitness parameteris assigned an arbitrary weight; however, after everygeneration, the fittest chromosome is evaluated and theweights for each fitness parameter are updated accord-ingly.

The GA outcome identifies suitable clusters for thenetwork. The BS broadcasts the complete network detailsto the sensor nodes. These broadcast messages include:the query execution plan, the number of cluster heads,the members associated with each cluster head, and thenumber of transmissions for this configuration. All thesensor nodes receive the packets broadcasted by the BSand clusters are created accordingly; thus completing thecluster formation phase. This is followed by the datatransfer phase.

A. Genetic Algorithm Background

A Genetic Algorithm performs fitness tests on newstructures to select the best population. Fitness determinesthe quality of the individual on the basis of the definedcriteria. In nature, an individual’s fitness is its ability topass on its genetic material. Anything that contributes tothis ability contributes to the organism’s overall fitness.This ability includes traits that enable it to survive andfurther reproduce. In a GA, fitness is evaluated by thefunction defining the problem. The fate of an individualchromosome depends on the fitness value; the better thefitness value, the better the chance of survival. GAs solvedesign problems similar to that of natural solutions forbiological design problems [19].

1) Population: A population consists of a group ofindividuals called chromosomes that represent a completesolution to a defined problem. Each chromosome is asequence of0s or 1s. The initial set of the populationis a randomly generated set of individuals. A new popu-lation is generated by two methods: steady-state GA andgenerational GA. The steady-state GA replaces one or twomembers of the population; whereas the generational GAreplaces all of them at each generation of evolution. Inelitism, a variation of generational GA that is adoptedin this paper, the GA keeps a certain number of thebest individuals from each generation and copies themto the new generation. The result is a new generationthat will have some of the individuals from the previouspopulation and others that evolve as a result of crossoverand mutation.

2) Fitness: In nature, an individual’s fitness is itsability to pass on its genetic material. This ability includestraits that enable it to survive and further reproduce [20].In a GA, fitness is evaluated by the function defining theproblem. The fate of an individual chromosome dependson the fitness value. The chances of survival are higherfor better fitness values.

3) Selection: The selection process determines whichof the chromosomes from the current population willmate (crossover) to create new chromosomes. These newchromosomes join the existing population. This combined

population will be the basis for the next selection. Theindividuals (chromosomes) with better fitness values havebetter chances of selection. There are several selectionmethods, such as: “Roulette-Wheel” selection, “Rank”selection and “Tournament” selection. In Tournamentselection, which is used in this paper, two chromosomesare chosen at random from the population. First, for a pre-defined probability p, the more fit of these two is selectedand with the probability (1-p) the other chromosome withless fitness is selected [19].

4) Crossover: Crossover is also known as recombi-nation of component materials due to mating. It is asimulation of the sexual reproductive process which isresponsible for the transfer of genetic inheritance. Theoutcome of crossover heavily depends on the selectionof chromosomes made from the population. Crossover isa binary genetic operator acting on two parents. Thereare different crossover operators that have been developedfor various purposes. The simplest is the single-pointcrossover whereby a point is chosen at random, and thetwo parent chromosomes exchange information after thatpoint. An example of single-point crossover is shown inFigure 1.

First SecondChromosome 11001 | 01100000110 10010 | 10110001110Offspring 11001 | 10110001110 10010 | 01100000110

Fig. 1. A single-point crossover.

In Figure 1 the bit sequences of first chromosome,starting from the crossover point, are copied to the secondchromosome and vice versa. The crossover results in twonew offspring that have different bit sequence from theirparents. Crossover is done after the selection process anddepends on the probability defined for the crossover calledcrossover rate. The probability that the crossover willtake place depends on the crossover rate. Generally thecrossover rate is high, around80 to 95 percent.

5) Mutation: As a result of crossover, the new genera-tion introduced will only have the traits of the parents.This can sometimes lead to a problem where no newgenetic material is introduced in the offspring. Mutationallows new genetic patterns to be introduced in thenew chromosomes. Mutation introduces a new sequenceof genes into a chromosome but there is no guaranteethat mutation will produce desirable features in the newchromosome. The selection process will retain it if thefitness of the mutated chromosome is higher than thegeneral population, otherwise, selection will ensure thatthe chromosome does not live to mate in future. As withcrossover, the mutation rate is defined to control howoften mutation is applied. Unlike crossover, the mutationrate is very low, around 0.5 to 1 percent.

In GAs, the probability of mutation can be implementedeither on a per-bit basis or on a per-chromosome basis.For a per-bit basis, if the mutation rate is 0.001, each bit ina chromosome has 0.1 percent chance of being mutated.For a per-chromosome basis, the mutation rate of 0.001means there is a 0.1 percent chance of a chromosome

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 89

© 2007 ACADEMY PUBLISHER

being mutated.In this paper, the proposed GA implements mutation

on a per-bit basis. Mutation, unlike crossover, is a unarygenetic operator that affects only a single chromosome. Achromosome selected for mutation will have a randomlyselected bit changed from 0 to 1, or vice versa.

Offspring 1 Offspring 2Original 1100110110001110 1001001100000110

Mutated 1100110010001110 1001001100000110

Fig. 2. An example of mutation.

Figure 2 shows the effect of mutation on the two off-spring created as a result of crossover. During mutation,the eighth bit ofoffspring 1 is changed from1 to 0;however, due to very low probability of mutation, thereis no mutation inoffspring 2.

6) Population Generation: The WSN nodes are repre-sented as bits of a chromosome. Head and member nodesare represented as 1s and 0s, respectively. The fitness ofa chromosome is determined by several parameters suchas node density and energy consumption. A populationconsists of several chromosomes and the best chromo-some is used to generate the next population. For theinitial population, a large number of random cluster headsare chosen. Based on the survival fitness, the populationtransforms into the future generation.

B. Fitness Parameters

The fitness of a chromosome is designed to minimizethe energy consumption and to extend the network lifetime. A few fitness parameters are described in thissection.

1) Direct Distance (DD) to Base Station: The directdistance,DD, to base station is the sum of all distancesfrom sensor nodes to the BS. This distance is defined asfollows:

DD =m∑

i=1

dis (4)

wheredis is the distance from the nodei to the BS nodes.For a larger network, this distance should be minimized;otherwise, the energy of most of the nodes will be wasted.However, for a smaller network that has a few closelylocated nodes, direct transfer to BS may be an acceptableoption.

2) Cluster Distance (C): The cluster distance,C is thesum of the distances from the nodes to the cluster headand the distance from the head to the BS. For a clusterwith k member nodes, the cluster distanceC is definedas follows:

C =k∑

i=1

dih + dhs (5)

wheredih is the distance from nodei to the cluster headh and dhs is the distance from the cluster headh tothe BS nodes. For a cluster that has large number ofwidely-spaced nodes, the cluster distance will be higher

and thus the energy consumption will be higher. For areduced energy consumption,C should not be too large.This metric will control the size of the clusters.

3) Cluster Distance - Standard Deviation (SD): Foruniform spatial distribution of sensor nodes, where nodesare uniformly placed, the variation in the cluster distancesshould be small. However, for non-uniform spatial dis-tribution, where nodes are randomly placed, the clusterdistances must not be necessarily the same. The variationin cluster distances should be tuned according to thedeployment information. If the deployment is uniform,variation in cluster distances will indicate poor networkconfiguration and must be tuned to get uniform clusters.However, in case of random deployment, there will beclusters of different sizes and the variation in clusterdistances is acceptable. The cluster distances,SD, witha deviationµ can be computed as follows:

µ =∑h

i=1 dclusteri

h(6)

SD =

√√√√ h∑i=1

(µ − dclusteri)2 (7)

4) Transfer Energy (E): Transfer energy,E, representsthe energy consumed to transfer the aggregated messagefrom the cluster to the BS. For a cluster withk membernodes, cluster transfer energy is defined as follows:

E =k∑

j=1

ETjh+ k × ER + EThs

(8)

The first term of Equation 8 shows the energy consumedto transmit messages fromk member nodes to the clusterhead. The second term shows the energy consumed bythe cluster head to receivek messages from the membernodes. Finally, the third term represents the energy neededto transmit from the cluster head to the BS.

5) Number of Transmissions (T): The number of trans-missionsT are assigned by the BS, for each data transferstage. The value ofT can be adjusted according to thenetwork conditions and current energy levels. Moreover,larger values ofT indicate that the outcome of the GAwill be used for a longer period of time. In other words,for larger T values, the superior optimum solutions, aswell as inferior optimum solutions serve for a longerperiod of time. Hence,T should be adjusted to reinforcethe outcome of a superior solution. The quality of bestchromosome is determined from the history of previousGA solutions.

C. Fitness Function

The chromosome fitness,F , is a function of all theabove fitness parameters, which is defined as follows:

F =∑

i

(wi × fi), ∀fi ∈ {C, DD, E, SD, T} (9)

The initial fitness parameters can be assigned arbitraryweights, wi. Then, after every generation the best fit

90 JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007

© 2007 ACADEMY PUBLISHER

chromosome is evaluated and the weights for fitnessparameters are updated as follows:

∆fi = fi − fi−1 (10)

The ∆f expression represents the change in the fitnessparameter value.

wi = wi−1 + ci∆fi (11)

whereci = 11+e−fi

improves the value of weights basedon the previous experience [21]. After every generation,the best fit chromosome is evaluated to see the im-provement in its fitness parameters such as cluster size,percentage headers, energy consumption and the standarddeviation (with respect to distance). A suitable range ofinitial weights can be determined during simulation, asdiscussed in Section IV.

The proposed technique uses a GA to determine theinitial set of hierarchical clusters, as shown in Figure3. At the start, the GA uses all the nodes to createclusters but during the operation, only the alive nodesare used to create new clusters, since a node may dieduring the data transfer phase. The cluster optimizeruses the GA’s suggested clusters, query type, and thecurrent network condition to create optimized clusters thatprovide the query execution plan and the transmissionschedules. The sensor nodes are configured according tothe optimized cluster information, which is followed bythe data transfer phase. Once the BS has received therequired transmissions, the GA at the BS creates newclusters for the WSN. The participating nodes are givento the GA and a new set of clusters are obtained.

Genetic Algorithm

Participating NodesInitial Nodes

Start

Optimized clusters

Data Transfer

Clusters

Cluster Optimizer

Fig. 3. Flow chart to demonstrate the steps involved in clusteroptimization.

III. S IMULATION

The main objective of the simulation is to comparedifferent cluster-based routing protocols on the basis ofsystem lifetime, energy dissipation, total transmissions

achieved, and total transfer distance from network tothe BS. The simulator is implemented in Java using theEclipse development environment [22]. The simulation ofa wireless sensor network environment requires severalmodules such as network configuration, communicationand routing.

In the simulation, three types of layouts are used: a)random, 2) grid, and 3) cluster grid as shown in Figure 4.Figure 4 (a) shows a random layout with the given seed;this layout is used for debugging, verification, and valida-tion purposes. Figure 4 (b) shows a random layout used

(a) Random Layout (Seed) (b) Random Layout

(c) Grid Layout (d) Cluster Grid

Fig. 4. Types of nodes layouts.

for performance evaluation. As several random layoutscan be generated, this layout is used to obtain confidencein the results. Further, the random deployment of nodesis also used in military and security applications, wherenodes are dispersed in a random fashion by an airplaneor other moving devices.

Figure 4 (c) shows the grid layout that creates the nodesat fixed distances; this layout can be used to incorporatelocation awareness in the proposed HCR protocol. A gridtype of network topology is usually used in applicationsrelated to agriculture in which nodes are manually placedin a field at known locations.

Finally, Figure 4 (d) shows the cluster grid that isa combination of grid and random placement in whichnodes are randomly created but there are a fixed numberof clusters. The cluster grid can be used to validatethe cluster formation of the protocols. This cluster gridtopology can be used in academia, such as universitybuildings in which each room might have several sensors.

Figure 5 shows a graphical user interface of thesimulator. The simulation parameters can be adjusteddynamically by using the input text fields of the graph-ical interface. The output has two sections: a list ofchromosomes (on the left side) and a graphical displayof the network configuration (on the right side). Thelist shows the entire population of the last generation,where the best chromosome is initially selected. Thenetwork configuration of the best chromosome is shownon the right side. A user can browse through the entire

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 91

© 2007 ACADEMY PUBLISHER

Fig. 5. Simulation of Protocols.

population to view the graphical representation of allthe chromosomes. The list shows the status of energy,number of headers, number of unassigned nodes, numberof member nodes, fitness value, number of active nodes,cluster distance, and the sequence of0’s and1’s.

In the network visualization, the clusters are distin-guished by different shapes (with different colors). Thecluster heads are shown as filled shapes and members areshown as hollow shapes. The sink is shown as a filledcircle in the right most direction.

The network size can be scaled in the simulation. Dueto scaling, the layout remains the same but the spacingbetween the nodes is adjusted according to the givennetwork size. The BS is located to the east of the network.

A. Design and Implementation

For an in-depth analysis of cluster-based routing proto-cols, an efficient and accurate design model is needed. Thedesign model requires the simulation of a sensor network,its configuration, communication and the energy dissi-pation that takes place within the network. The classesare designed such that they encapsulate entities used inWSNs. Furthermore, the classes used in the simulationcan easily be extended to add new capabilities to thecluster-based routing protocol. The descriptions of a fewclasses used in the simulator are given below.

1) Network Related Classes: The classNode repre-sents the sensor nodes. Each node has itsx andy locationand an initial starting energy of2J. The Node classmaintains a record of the energy level of the node asit performs long or short range transmissions. Each nodedies if its energy level falls below the minimum thresholdenergy. The node can have different states, such as: a)member of a cluster, b) cluster head, c) associate, d)unassigned, and d) dead node. One of the special nodesis a BS which has an x and y location but does not haveany energy constraint.

The classNetwork represents a network of all thenodes scattered within a pre-defined area. The simulatorimplements different types of network layouts (topolo-gies). The Network class is responsible for randomizingthe fields, setting up a BS at a specific location, startingthe election process for cluster heads, and resetting thesensors in the network, if needed. The network size andBS distances can be varied to test the network perfor-mance. A Network object contains the information aboutthe total number of nodes in the network, the numberof active nodes, and the number of cluster heads. TheNetwork class also controls the number of transmissionsfor a round.

The classCluster represents clusters of the WSN. ACluster object creates clusters around the selected clusterhead. The nodes select their cluster heads and are addedto the member list. The cluster also has an associatelist that holds the set of associates of each cluster. Thecluster members are associated to their head-set. If a nodebecomes an associate or the energy level falls below thethreshold, the cluster object removes the node from themember list. Only the active associate member transmitsthe aggregated data of the member nodes to the BS.

B. Protocol Related Classes

The protocol related classes simulate the election anddata transfer phases. The simulation is based on thefollowing assumptions: 1) there are no packet drops, 2)channels are symmetric, 3) nodes are stationary, 4) queriesare continuous and persistent, and 5) all nodes have thesame start energy. The protocols are compared based onthe total number of transmissions and the percentage ofnodes that are alive.

The Routing class takes care of the electionphase. An abstractelection() method is definedin this class. At the beginning of each round, it se-lects a pre-defined number of cluster heads using the

92 JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007

© 2007 ACADEMY PUBLISHER

createAssociate() method; the cluster heads sendlong range advertisements to the network nodes. Basedon the signal strength, nodes select their cluster heads.The createMember() function assigns the nodesto the cluster heads. TheRouting class uses theLeachNetworkEnergy class to compute the energyconsumed during header selection and member creation.

The LeachRouting class is a subclass of theRouting class and implements the LEACH protocolincluding theelection() method of the Routing class.For pure LEACH, each cluster has a single cluster head.The number of cluster heads depends on the predeter-mined percentage of CHs. Each node generates a randomnumber and checks with the threshold function; if thisnumber is less than the threshold function, the nodebecomes a cluster head. The cluster head list is thenpassed to the network nodes which select their clusterheads based on the signal strength. TheLeachRoutingclass usesCluster objects to create clusters. As anextension, once clusters are formed, they can also acquireassociates for their clusters. The number of associates canbe pre-defined or clusters can be adaptive e.g. the numberof associates depends on the size of the cluster.

The algorithm to simulate LEACH protocol is as fol-lows: while at least minimum number of nodes are alive,a) selectp% of cluster heads, b) remove the selectedcluster heads from candidate list, c) create clusters aroundthe cluster heads, d) consume energy of each node for datatransmission phase, and e) disassociate all the nodes fromtheir cluster heads.

The HCRouting is a subclass of routing which im-plements the head-set approach. TheHCRouting classmaintains a candidate list which stores all the nodesthat can become cluster heads. TheHCRouting classimplements theelection() method of the “Routing”class. In HCRouting, once cluster formation is complete,each cluster acquires a pre-defined number of associates.Furthermore, the clusters can be adaptive; i.e., the numberof associates depends on the size of the cluster. Thealgorithm to simulate the head-set approach (HCR-1) isas follows: while at least minimum number of nodesare alive, a) selectp% of clusters heads, b) remove theselected cluster heads from the candidate list, c) createclusters around the cluster heads, d) each cluster headselects a set of associates based on the connectivity withmember nodes, e) associates switches role after everytransmission, f) consume energy of each node for datatransmission phase, and g) disassociate all the nodes fromtheir cluster heads.

In addition to head-set approach, theRCRouting classuses the “retain cluster” technique (HCR-2). At the end ofeach round, the cluster performance is evaluated and theenergy efficient clusters are retained for the next roundby the election( ) method. The remaining nodesare disassociated from their cluster heads and they takepart in the next election phase. The network now hasthe clusters retained from previous round as well as newclusters formed in the current round. A brief description

of the algorithm is as follows: while at least minimumnumber of nodes are alive, a) selectp% of clusters heads,b) remove the selected cluster heads from candidate list,c) create clusters around the cluster heads, d) each clusterhead selects a set of associates based on the connectivitywith member nodes, e) consume energy of each node fordata transmission phase, f) identify the energy efficientclusters and retain them for the next round, g) decreasethe p% value bypr% (percentage clusters retained), andh) disassociate the rest of the nodes from their clusterheads.

The GeneticNetwork class implements a geneticalgorithm. The CHs, cluster size, and cluster mem-bers are determined by thegeneticAlgoirthm()function. TheGeneticNetwork class uses theNodeclass to create the chromosomes; Thepopulate()method creates several chromosomes, each of which rep-resents a network configuration with several clusters. TheGeneticNetwork class uses theNetworkEnergyclass to estimate the cost of the transmission that takesplace every iteration.

Figure 6 shows a flow chart to illustrate the phases andthe execution of the simulated protocols. The simulationstarts with the network setup phase, which creates anetwork of a pre-defined number of nodes; each nodeis assigned an x and y location and initialized with 2Joules of energy. After the network set up, the electionphase begins: the network is divided into several clustersand each of which is managed by a head-set. In case ofintelligent clustering, a GA at base station creates clustersfor the WSN. During the election phase, each cluster isalso provided with its own TDMA schedule to ensure thatsensors turn their radios on only when they are requiredto transmit; otherwise, they can keep their radios off.

The election phase is followed by the data transferphase: the cluster members transmit data to their clusterheads, the cluster heads aggregate the data received fromall the member nodes and transmit the aggregated data tothe BS. After every data transfer phase, the intermediateresults are logged. The results contain the status of thenetwork, such as: number of nodes alive, total transmis-sions, total energy dissipated, and energy status of thenetwork nodes. The data transfer phase continues until apre-defined number of transmissions are achieved.

Before the next election phase, the simulation checks ifa pre-defined number of nodes are alive; if the number ofnodes falls below the pre-defined number, the simulationsstops and outputs the final result. This check enablesthe network to continue until too few nodes are alive totransmit accurate data to the BS.

IV. RESULTS AND DISCUSSIONS

The GA-based protocol is compared with other cluster-based protocols such as LEACH [6], HCR-1 and HCR-2 [17], and [14]. The experiments use200 nodes (N ),network area of100 × 100 m2 denoted asM , and basestation is200m away from the network.

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 93

© 2007 ACADEMY PUBLISHER

> min nodesNumber of Nodes

Transmission == T

Start

Network Setup

Prepare theFinal Output

Log the intermediateresults

Data Transfer Phase

Election Phase(cluster formation)

No

Yes

Yes

No

End

Fig. 6. A flow chart for the implementation of cluster-based routingprotocols.

The GA’s outcome heavily depends on the fitnessfunction. The fitness function is composed of severalfitness parameters; each parameter is assigned a weightwhich is updated by the reinforcement learning, as dis-cussed earlier. One of the important tasks is to assignsuitable initial weights. For this a simple experiment wasconducted to get a range of suitable initial weights.

The weights of the fitness parameters are tuned usingreinforcement learning but it is important to determine thesuitable initial weights for the fitness parameters. Figure7 shows the graphs for the number of transmissions withrespect to weight of a particular fitness parameter, whilethe remaining parameters are disabled. The weights givingrelatively larger number of transmissions are chosen asinitial weights.

The best fitness values for 500 simulation experimentsare shown in Figure 8. A random topology was generatedfor every simulation. Theaveragefitness graph showsthe average of all the chromosomes in the populationobtained in the final generation. The graphs show thatthe best fitness values were significantly better than theaverage fitness values for all the experiments.

The variation between best and average fitness withrespect to the increase in the number of generations isshown in Figure 9. The results show very small variationsin the value of the best fitness of the chromosomes.This means that the fitness function was successful inidentifying the optimum solution for most of the cases.

0 0.2 0.4 0.6 0.8 15900

6000

6100

6200

6300

6400

6500

6600

0 0.2 0.4 0.6 0.8 13000

3500

4000

4500

5000

5500

6000

6500

0 0.1 0.2 0.3 0.43000

3500

4000

4500

5000

5500

6000

0 0.02 0.04 0.06 0.08 0.13000

4000

5000

6000

7000

8000

Weights

Nu

mb

er o

f T

ran

smis

sio

ns

a) Transfer Distance parameter b) Energy parameter

c) Headers Percentage parameter d) Standard Deviation parameter

Fig. 7. Range of weights for fitness parameters.

0 50 100 150 200 250 300 350 400 450 500200

250

300

350

400

450

500

550

600

650

700

750

Simulations

Fit

nes

s

Average Fitness

Best Fitness

Fig. 8. Fitness for various simulations.

The greater variations in the “average values” are due tothe low fitness chromosomes that were filtered during theselection criteria; only the best fit chromosomes survivedfor the next generations.

The GA used in the proposed cross layer optimizationis an extension of [14], which uses a very simple fitnessfunction; the fitness function has only two parametersdealing with total transfer distance and the number ofthe cluster heads in the network. The graph in Figure10 shows that the proposed GA performs better than theGA used in [14]. This improvement is due to additionalfitness parameters that included standard deviation ofcluster distance, estimated transfer energy and number oftransmissions. These parameters ensure that only the chro-mosomes (network configurations) that give maximumnumber of transmissions and reduced energy consumptionare selected for future generations.

The graph of the variation in the number of clustersin the network lifetime is shown in Figure 11(a). Thegraph shows the number of clusters with respect to the

94 JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007

© 2007 ACADEMY PUBLISHER

0 50 100 150 200 250 300 350 400 450 500200

300

400

500

600

700

800

Generations

Fit

nes

s

Average Fitness

Best Fitness

Fig. 9. Fitness with respect to generations.

0 1000 2000 3000 4000 5000 6000 7000 800020

40

60

80

100

120

140

160

180

200

Number of Transmisssions

Per

cen

tag

e o

f A

live

No

des

Our GAJin GA

Fig. 10. Comparison between the GA approaches

percentage of live nodes. The numbers of clusters arehigher when most of the nodes are alive. On average, thenumber of clusters varies between4 to 6 percent whenmore than50 percent of the nodes are alive; however,there are spikes due to the random nature of the GAevolution process. There are100 transmissions in eachround. As the number of alive nodes decreases with time,the consumed energy reduces accordingly; there are fewernodes to transmit. Although GA successfully reduces theenergy consumption most of the time, there are a fewcases of higher energy consumption; this is due to thepoor average fitness of the final population.

For LEACH, the optimum percentage of number ofclusters must be known for reduced energy consumption.Moreover, a node selected as a cluster head could be toofar from the BS, resulting in a high energy transmissionfrom the cluster head to the base station. On the otherhand, the GA generates random networks and the fitness iscomputed for each network configuration. GA eliminatesthe network configurations that give either high transferdistance or result in high or low cluster size. UnlikeLEACH, the genetic algorithm does not require all thenodes to become cluster heads. Moreover, the GA’s fitnessfunction selects the nodes that have a higher energy

10 20 30 40 50607080901000

2

4

6

8

10

Percentage of Alive Nodes

Nu

mb

er o

f C

lust

ers

0 10 20 30 40 50 60 700

5

10

15

20

Rounds

En

erg

y

a) GA determined number of Clusters

b) Energy dissipation per round

BS = 200, M = 100 , T = 100

BS = 200, M = 100 , T = 100

Fig. 11. Variation in Number of Clusters and Energy Consumption innetwork life time

level and are relatively closer to the BS. For this reason,the proposed GA-based approach tends to give moretransmissions.

A. Effect of Network Layouts

1020 30 40 50607080901000

2

4

6

8

10

Percentage of Alive Nodes

Nu

mb

er o

f C

lust

ers

10 20 30 40 50607080901000

2

4

6

8

10

Percentage of Alive Nodes

Nu

mb

er o

f C

lust

ers

a) Random Layout

b) Fixed Layout

Fig. 12. GA’s suggested clusters with respect to percentagealive nodes.

Figure 12 shows graphs of the variation in the numberof clusters in the network lifetime for grid and randomlayouts. The graph shows the suitable number of clusterswith respect to the percentage of alive nodes. As expected,the numbers of clusters are higher when most of thenodes are alive. On average, the number of clusters variesbetween 4 to 8 percent when more than 50 percent ofnodes are alive; however, there are spikes due to therandom nature of the GA evolution process.

Figure 13(a) shows the graphs of percentage of alivenodes with respect to the number of transmissions forgrid and random layouts. Moreover, the initial weightsare tuned based on the ranges. As the network goesthrough the data transmission phase, the optimizer tunesthe weights using reinforcement learning. The graphsshow that performance is independent of the networklayout.

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 95

© 2007 ACADEMY PUBLISHER

0 2000 4000 6000 80000

25

50

75

100

Number of Transmissions

Per

cen

tag

e o

f A

live

No

des

0 2000 4000 6000 80000

25

50

75

100

0 2000 4000 60000

25

50

75

100

0 2000 4000 6000 80000

25

50

75

100

LEACHHCR−1HCR−2GA

LEACHHCR−1HCR−2GA

LEACHHCR−1HCR−2GA

LEACHHCR−1HCR−2GA

5−Simulations

a) Multiple Simulations b) Grid Layout

c) Cluster Grid d) Random Layout

Fig. 14. Effect of Network Layouts on Routing Protocols

0 1000 2000 3000 4000 5000 6000 7000 80000

25

50

75

100

Number of Transmissions

Per

cen

tag

e o

f A

live

No

des

0 1000 2000 3000 4000 5000 6000 7000 80000

2

4

6

8

10

12

14

Number of Transmissions

En

erg

y

Random LayoutGrid Layout

Random LayoutGrid Layout

a) Nodes decay with increase in trasnmissions

b) Energy Consumed per cluster formation

Fig. 13. Number of Transmissions.

Figure 13(b) shows the graphs of the variation inthe energy consumption per cluster formation during thenetwork lifetime, for random and grid layouts. The graphsshow the consumed energy with respect to the number oftransmissions. As the number of alive nodes decreaseswith time, the consumed energy reduces accordingly;there are a fewer nodes to transmit.

Figure 14 shows the graphs of percentage of alive nodeswith respect to the number of transmissions received bythe base station. Figure 14(a) shows the consistency in thesimulation outcomes. Although in Figure 14(a), five sim-ulation run are shown, similar results were obtained fora large number of simulation experiments. The simulatednetwork layouts are as follows: a) grid, b) cluster grid, and

c) random. In grid layout, the nodes are placed at every5m on the horizontal axis and at 10m on the vertical axis.The cluster grid creates random patches at fixed distances.Finally, the random layout randomly distributes the nodesin the given network area.

Figure 14(b) shows graphs to compare the behaviorof four cluster-based routing protocols: LEACH, HCR-1,HCR-2, and the GA approach. Initially, all the protocolsshow a similar performance; however, when more than25percent of nodes have died, LEACH and HCR-1 dropsquite rapidly. On the other hand, as HCR-2 has fewerelections, the nodes conserve their energy and surviveover more transmissions. Since the GA uses cross layeroptimization, the energy consumption during reconfigu-ration is minimal. Unlike other cluster-based protocols,GA is adaptive to the current energy levels of the sensornodes. Most of the time, the numbers of transmissionsare increased by20 percent. Similarly, Figure 14(c) andFigure 14(d) show the graphs for cluster-grid and randomlayouts, respectively. In all the network layouts, GAoutperforms the remaining three protocols. Moreover, asGA evolves for the later transmissions, the cross layeroptimization becomes more significant.

V. CONCLUSION AND FUTURE WORK

Our proposed intelligent energy-efficient hierarchicalclustering protocol performs better than the traditionalcluster-based protocols. The simulation results indicatethat using GA-based hierarchical clusters increase thenetwork life time. In future, the cross layer optimizationusing query and routing strategies can be investigated.

96 JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007

© 2007 ACADEMY PUBLISHER

Moreover, the work can be extended by including multi-hop communication between cluster heads. Furthermore,other learning techniques could be incorporated to deter-mine energy efficient clusters.

REFERENCES

[1] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci,“Wireless sensor networks: A survey,”Computer Networks,vol. 38, no. 4, pp. 393–422, March 2002.

[2] D. Estrin, D. Culler, K. Pister, and G. Sukhatme, “Connectingthe physical world with pervasive networks,”IEEE PervasiveComputing, pp. 59 – 69, January-March 2002.

[3] V. Mhatre, C. Rosenberg, D. Kofman, R. Mazumdar, and N. Shroff,“A minimum cost heterogeneous sensor network with a lifetimeconstraint,” IEEE Transactions on Mobile Computing (TMC),vol. 4, no. 1, pp. 4 –15, 2005.

[4] N. Trigoni, Y. Yao, A. Demers, J. Gehrke, and R. Rajaramany,“Wavescheduling: Energy-efficient data dissemination forsensornetworks,” inProceedings of the International Workshop on DataManagement for Sensor Networks (DMSN), in conjunction withthe International Confernece on Very Large Data Bases (VLDB),August 2004.

[5] S. Ghiasi, A. Srivastava, X. Yang, and M. Sarrafzadeh, “Optimalenergy aware clustering in sensor networks,”Sensors, vol. 2, pp.258–259, 2002.

[6] W. R. Heinzelman, A. Chandrakasan, and H. Balakrishnan,“Energy-efficient communication protocol for wireless microsen-sor networks,” inProceedings of the Hawaii International Confer-ence on System Sciences, January 2000.

[7] S. Lindsey and C. S. Raghavendra, “PEGASIS: Power-efficientgathering in sensor information systems,” inProceedings of theIEEE Aerospace Conference, March 2002.

[8] J. Pan, L. Cai, Y. T. Hou, Y. Shi, and S. X. Shen, “Optimal base-station locations in two-tiered wireless sensor networks,” IEEETransactions on Mobile Computing (TMC), vol. 4, no. 5, pp. 458–473, 2005.

[9] S. Bandyopadhyay and E. J. Coyle, “An energy efficient hierar-chical clustering algorithm for wireless sensor networks.” in Pro-ceedings of the IEEE Conference on Computer Communications(INFOCOM), 2003.

[10] W. Ye, J. Heidemann, and D. Estrin, “Medium access controlwith coordinated adaptive sleeping for wireless sensor networks,”IEEE/ACM Transactions on Networks, vol. 12, no. 3, pp. 493–506,2004.

[11] A. Cerpa and D. Estrin, “ASCENT: Adaptive self-configuringsensor networks topologies,”IEEE Transactions on Mobile Com-puting (TMC) Special Issue on Mission-Oriented Sensor Networks,vol. 3, no. 3, July-September 2004.

[12] S. Muruganathan, R. B. D. Ma, and A. Fapojuwo, “A centralizedenergy-efficient routing protocol for wireless sensor networks,”IEEE Communications Magazine, vol. 43, pp. S8–S13, March2005.

[13] D. Turgut, S. K. Das, R. Elmasri, and B. Turgut, “Optimizingclustering algorithm in mobile ad hoc networks using geneticalgorithmic approach,” inProceedings of the Global Telecommu-nications Conference (GLOBECOM), November 2002.

[14] S. Jin, M. Zhou, and A. S. Wu, “Sensor network optimizationusing a genetic algorithm,” inProceedings of the 7th WorldMulticonference on Systemics, Cybernetics and Informatics, 2003.

[15] K. P. Ferentinos, T. A. Tsiligiridis, and K. G. Arvanitis, “Energyoptimization of wirless sensor networks for environmentalmea-surements,” inProceedings of the International Conference onComputational Intelligence for Measurment Systems and Appli-catons (CIMSA), July 2005.

[16] S. Hussain and A. W. Matin, “Base station assisted hierarchicalcluster-based routing,” inIEEE/ACM International Conference onWireless and Mobile communications Networks(ICWMC), July2006.

[17] A. W. Matin and S. Hussain, “Intelligent hierarchical cluster-basedrouting,” in International Workshop on Mobility and Scalability inWireless Sensor Networks (MSWSN). CTI Press, Greece, June2006, pp. 165–172.

[18] S. Hussain, A. W. Matin, and O. Islam, “Genetic algorithm forenergy efficient clusters in wireless sensor networks,” inFourthInternational Conference on Information Technology: New Gener-ations (ITNG 2007), April 2007.

[19] D. Goldberg, B. Karp, Y. Ke, S. Nath, and S. Seshan,Genetic al-gorithms in search, optimization, and machine learning. Addison-Wesley, 1989.

[20] V. Kreinovich, C. Fuentes, and O., “Genetic algorithms- whatfitness scaling is optimal?”Cybernetics and Systems, 1933.

[21] T. M. Mitchell, Machine Learning. McGraw Hill, 1997.[22] Eclipse, “http://www.eclipse.org/,” 2006.

Dr. Sajid Hussain is an Assistant Professor in the Jodrey Schoolof Computer Science, Acadia University, Canada. He receivedPh.D. in Electrical Engineering from the University of Manitoba,Canada. Dr. Hussain is investigating intelligent and energyefficient data dissemination techniques in sensor networksforubiquitous and pervasive applications. He has published morethan 50 refereed journal, conference and workshop papers.The research is financially supported by several grants andcontracts, such as Natural Sciences and Engineering ResearchCouncil (NSERC) Canada, National Research Council (Canada),Atlantic Innovation Fund (AIF), and Nova Scotia Health Re-search Foundation (NSHRF). Dr. Hussain has co-organized sev-eral International conferences and workshops, served on manytechnical program committees, and reviewed papers for severaljournals, conferences and workshops. Further, he has reviewedgrant proposals for NSERC’s Discovery Grants, Strategic ProjectGrants (SPG), and Research Tools and Instrument (RTI) Grants.He is a member of IEEE and ACM societies.

Abdul Wasey Matin received his MS degree from JodreySchool of Computer Science, Acadia University, Canada in2006. His research interests are in genetic algorithms, sensornetworks, web development, and collaborative systems.

Obidul Islam is a MSc student in Jodrey School of ComputerScience, Acadia University, Canada. He is working as an internat IBM Ottawa (May - Dec. 2007). His research interests are insensor networks, graphs, WebSphere, and tools automation.

JOURNAL OF NETWORKS, VOL. 2, NO. 5, SEPTEMBER 2007 97

© 2007 ACADEMY PUBLISHER