WSNs clustering based on semantic neighborhood ... - Semantic Scholar

1 downloads 1631 Views 2MB Size Report
Jan 31, 2012 - ios of damage with different data aggregation methods. We also ...... mable flash memory, 512 kB external serial flash, 4 kB EE-. PROM.
Computer Networks 56 (2012) 1627–1645

Contents lists available at SciVerse ScienceDirect

Computer Networks journal homepage: www.elsevier.com/locate/comnet

WSNs clustering based on semantic neighborhood relationships Atslands R. Rocha a,⇑, Luci Pirmez b, Flávia C. Delicato b, Érico Lemos b, Igor Santos b, Danielo G. Gomes a, José Neuman de Souza a a Group of Computer Networks, Software Engineering and Systems (GREat), Federal University of Ceará, Campus do Pici, Bloco 942-A, CEP: 60455-760 Fortaleza, Brazil b Federal University of Rio de Janeiro, Caixa Postal 2324, Rio de Janeiro, Brazil

a r t i c l e

i n f o

Article history: Received 19 March 2011 Received in revised form 19 September 2011 Accepted 17 January 2012 Available online 31 January 2012 Keywords: Wireless sensor networks Semantic clustering Semantic neighborhood relationships Fuzzy logic system

a b s t r a c t We propose a semantic clustering model based on a fuzzy inference system to find out the semantic neighborhood relationships in wireless sensor networks in order to both reduce energy consumption and improve the data accuracy. As a case study we describe a structural health monitoring application which was used to illustrate and assess the proposed model. We conduct experiments in order to evaluate the proposal in two different scenarios of damage with different data aggregation methods. We also compared our proposal, using the same data set, with a deterministic clustering method and with the LEACH algorithm. The results indicate that our approach is an energy-efficient clustering method for WSNs, outperforming both the deterministic clustering and LEACH algorithms in about 70% and 47% of energy savings respectively. The energy saving comes from the fact that we have a more efficient in-network data aggregation process since by exploiting the semantic relation between sensor nodes we can potentially aggregate more similar data and consequently, decrease the data redundancy (thus minimizing transmissions). Nodes that are semantically unrelated can operate in low-duty cycle, further reducing the energy consumption. Moreover, our proposal has the potential to improve the data accuracy provided for the application where accuracy is a QoS requirement in typical WSN applications. Ó 2012 Elsevier B.V. All rights reserved.

1. Introduction Wireless sensor networks (WSNs) are examples of resource-constrained networks in which processing resources, storage and energy are limited. In spite of the fact that cost and size considerations imply that the resources available to individual nodes are severely limited, recent advances on technology and research in this field lead us to believe that limited processor and memory are temporary constraints in WSNs that tend to disappear with fast developing fabrication techniques [1]. The energy constraint, on the other hand, remains as a critical issue ⇑ Corresponding author. Tel./fax: +55 85 33669797. E-mail addresses: [email protected] (A.R. Rocha), [email protected] (L. Pirmez), [email protected] (F.C. Delicato), [email protected] (É. Lemos), [email protected] (I. Santos), [email protected] (D.G. Gomes), [email protected] (J.N. Gomes), [email protected] (J.N. de Souza). 1389-1286/$ - see front matter Ó 2012 Elsevier B.V. All rights reserved. doi:10.1016/j.comnet.2012.01.014

that needs to be tackled so that WSNs can be widely employed. There is a wide range of applications that can benefit from the use of WSNs, with different features and QoS requirements. Typical QoS requirements in WSN environments are coverage, data accuracy and packet delay. On the one hand, it is important to adopt strategies and protocols that assure a given level of QoS for client applications so that the WSN can meet its design goals. On the other hand, while meeting QoS requirements the resource consumption of the WSN nodes must be managed in an efficient way in order to extend the network operational lifetime. Since the energy is the most critical resource in such networks, the tradeoff between energy saving and QoS provision is a major concern. Clustering has been used both in ad hoc networks as in WSNs as an effective technique for extending the network lifetime, and supporting network scalability [2,3]. The

1628

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

general idea is to perform the cluster formation based on the received signal strength indicator (RSSI) and to use local cluster heads (CHs) as routers of data gathered by the sensors in their clusters towards the sink node. Since the distance among cluster members and the respective cluster-head is, in general, smaller than the distance between these sensors and the sink, sensors in a cluster save transmission energy. Clustering can also be beneficial for purposes of energy saving because it favors data fusion procedures. Cluster members can collaborate about recent data measurements and determine how much information should be transmitted to the sink node. By averaging data values collected within the cluster, the algorithm can trade data resolution for transmission power. Some advantages of network clustering can be identified as [4] (i) size reducing of the routing tables stored at each individual sensor node, (ii) saving the communication bandwidth, since it limits the scope of the inter-cluster interactions to CHs and avoids redundant exchange of messages among sensor nodes, (iii) stabilizing the network topology at the level of sensors and thus cuts on topology maintenance overhead and (iv) the use of optimized management strategies to prolong the battery life of the individual sensors. Several works using clustering for WSNs have been developed [4,5,2,6]. However, although in some of these works the authors use information from sensor nodes to make decisions about the network organization, the semantic of collected data to group sensor nodes into clusters is not frequently exploited [7,8]. In this work we propose a semantic clustering for WSNs in order to minimize the communication resource usage and energy cost. The key feature of our proposal is a computation of semantic neighborhood relationships based on collected data from sensor nodes. We define as semantic neighbors the set of sensors that are semantically related. In traditional clustering approaches, when the concept of neighborhood relates to the geographical distance between nodes, sometimes neighboring nodes cover areas which are not related at all, or neighboring nodes provide measurements that are not semantically related. For example, in the airport security applications [9], sensor nodes both do video and audio processing and communicate with their neighboring nodes in order to share a global view of the monitored environment. However, sensors nodes fixed on opposite sides of a same wall will cover different areas of this airport environment that are not related at all. It is also worth emphasizing that a semantic clustering method favors applying fusion/aggregation algorithms only in semantically related data within the network. For example, in an airport security application, if a cluster consists of nodes fixed on opposite sides of the same wall, the CH will not be able to eliminate any redundancy (one of the goals of fusion/aggregation data techniques) before sending messages to the sink, since the data sent from individual sensors are not related to the same monitored environment. Thus, the semantic clustering proposal brings advantages compared to the clusters generated only by taking into account the distance between the sensor nodes. Moreover, in case of applications based on events, it is interesting that clusters encompass only nodes

(semantic neighbors) that detect the event of interest, while the unrelated nodes can remain working at a lower duty cycle in order to save energy. In our work, the set of semantic neighbors is grouped into semantic clusters. The semantic clustering is a service provided by a semantic middleware for WSNs described in our previous work [7]. A fuzzy system is responsible to establish the relationships of the semantic neighborhood. Fuzzy inference systems match two of the most challenging requirements [10] of WSNs: (i) they are simple and can be executed on limited hardware and (ii) they can deal with imprecise data. Several WSNs applications use crisp values to specify the numerical variables that characterize a monitored event. For example, in a fire detection application, the WSN might classify an event when the temperature is above 50 °C. However, sensor readings are not always accurate and the sensor nodes, even if they are neighbors, often measure different values. In that example, if a sensor report 49.9 °C, a wrong decision will be made. Therefore, the ability of handling imprecise data is desirable since individual data from sensor nodes often are inaccurate due to calibration problems, environmental noise, wireless transmission loss, faulty sensors, among other items. Thus, fuzzy logic can handle the fluctuating of sensor readings in a proper way. Our clustering method can minimize the computational resources usage because (i) involves only the relevant nodes to the event monitored by the network; (ii) the semantic neighbors can be grouped into a semantic cluster that provides the use of techniques of local collaboration as data aggregation; and (iii) nodes semantically unrelated can operate in low duty cycle. Moreover, by using the semantic clustering, we have the potential to improve the data accuracy provided for the application, where accuracy is a typical QoS requirement in WSN applications. In this work, our proposal is applied in the structural health monitoring (SHM) domain. Some experiments were performed in order to evaluate the impact of our proposal in the network. First, we evaluate the proposal in two different scenarios of damage in the WSN. Second, we evaluate the impact of different aggregation method in the proposal related to energy saving. Third, our proposal was compared, using the same data set, with two algorithms: a deterministic clustering and the well-known LEACH (low-energy adaptive clustering hierarchy) [11]. This comparison includes the evaluating of the data accuracy and the energy consumed by the clustering phase. It is shown that our approach is an energy-efficient clustering method for WSNs, where it outperforms both the deterministic clustering and LEACH methods in about 70% and 47% of energy save respectively.

2. Related work Bouhafs et al. [5] propose a semantic clustering algorithm for energy-efficient routing in WSNs that allows a layered data aggregation whose the main feature is to group sensors according to semantic information and nodes connectivity properties. The sink node broadcasts a user’s query (e.g., temperature > 50 °C) throughout the

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

network. When the collected data from a node match the query, this node both elects itself as a CH and sends an advertisement message containing the user’s query to its neighbors. Similar to [5], our proposal also considers the semantic information of the nodes in order to form the clusters, but we use a fuzzy system to determine relevant sensors in a given period. Thus, we both accommodate properly the inaccuracy of the collected data from sensors and specify accurately the number of relevant sensors. Moreover, our aggregation method is one-layer. We just aggregate sensing data in CH(s) in order to not generate a significant latency in data delivery. Bruckner et al. [9] show how a network of smart sensor nodes can be established by using high-level semantic knowledge that is gathered by loopy belief propagation between sensors with overlapping sensing areas. The semantic knowledge is obtained by fusing information from monomodal sensors (audio and video) into multimodal objects by using a semantic multilevel framework. The semantic neighborhood relationships are inferred by smart nodes using statistical analysis of the shared environment since the events have a temporal correlation. Our work is similar to [9] because both approaches use the concept of semantic neighborhood. Nevertheless, we use a distributed fuzzy system to specify the semantic relationships, which support inaccurate data and reduce development and convergence time of the algorithm, since it does not require massive amount of data as statistical analysis. In [9], the authors do not use clusterization at all. Perianu et al. [2] present a method for spontaneous clustering of mobile wireless sensor nodes based on a common context, namely Tandem, which allows reclustering in case of topological or contextual changes. Our work is similar to [2] because both use clusterization methods. However, we use semantic clusters that are created in order to save energy by placing the clusters whose sensors are not detecting any event in low duty cycle. Hussain et al. [12] present the design of agent-based sensor networks for petroleum offshore monitoring. The authors propose a routing agent that uses genetic algorithms to create clusters by using network information (such as available nodes and their initial energies) obtained from the knowledge base repository. Our proposal and [12] are both applied in SHM domain and use a clustering method to save energy. However, in [12] the clusters are established according to the amount of sensors energy whereas we present clusters that are established according to the sensors that are semantic neighbors. The benefit of creating semantic clusters instead of clusters formed according to the nodes energy is that only the sensors related to the monitored event are in activity. In [12], the sensor nodes involved in the monitored event are in activity, but the remainder nodes also forward packets that are not relevant to the application at that time. Tashtoush and Okour [6] also present a method based on fuzzy system for uniform clustering of distributed WSNs. Each sensor node uses parameters as energy level, local density within its sensing range, besides time information as input data for the fuzzy system to perform a clustering of the sensor nodes. The similarity with our proposal is that both works use a clustering method based on

1629

fuzzy logic. The difference between them is that in [6] the semantic of the collected data from sensor nodes are not taken into account for clusterization method. All these related works build their solutions over semantic clustering techniques or fuzzy logic or SHM domains. To the best of our knowledge, we are the first to address semantic clustering techniques and structural monitoring issues in conjunction. In [8], we presented an early version of this work where we proposed a semantic clustering model based on fuzzy inference system to find out the semantic neighborhood relationships in WSNs. In this paper, we go one step forward and provide a detailed experimental evaluation using Crossbow’s MicaZ motes [13]. 3. Clustering proposal overview We propose a two-phase clustering method: a physical and a semantic clustering. First, at the network start up process, a physical clustering is done. The physical organization is hierarchical and consists of two levels. The upper level encompasses CHs that do not perform sensing tasks, but perform processing of data received by sensors and inter-cluster communication. The lower level consists of sensors that are responsible for collecting the environmental data and are subordinated to one of the CHs. For the physical clustering phase, algorithms that use RSSI or distance parameters can be used, e.g., LEACH, PEACH (Power-Efficient and Adaptive Clustering Hierarchy Protocol) [14], among other existent protocols [4]. The semantic organization1 is also hierarchical and consists of two levels. The upper level is composed of semantic collectors. We define a semantic collector as a sensor node that is responsible for making a report containing the data received by the semantic neighbors and send the report to the sink node. The semantic collectors perform processing on the received data before sending them to the sink node. This processing can be done through techniques of aggregation or data fusion [15]. The lower level consists of semantic neighbors that are subordinated to one of the semantic collectors. The UML activity diagram (Fig. 1) describes the steps to perform the semantic clustering phase. Our proposed method is applied in three steps: (i) creating Low Level Symbols (LLSs) for each sensor input; (ii) performing fuzzy system to calculate the semantic neighborhood relationships of the network; and (iii) (re) grouping in semantic clusters the set of sensor nodes which are semantically related to each others. Step 1 is processed locally in each sensor node, while steps 2–3 are processed locally in each CH. In the first step, each sensor node creates low level symbols (LLS) to represent monomodal symbols. Each input variable of a sensor, such as temperature, pressure, light, is considered a monomodal symbol. Thus, the LLSs specify the variables which can be analyzed in the environment to support a decision-making process. For example, in a SHM 1 Here in this paper cluster head is related to the physical clustering. Likewise, whenever we refer to the grouping of sensors in cluster based on semantics, we use the semantic cluster term. In the other references to clusters, we are referring to the initial physical clustering.

1630

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

Cluster Head

Sensor Creates LLSs input

Sends data To CH

Starts individual fuzzy inference

Communicates with others CH

The semantic collector is responsible for sending the reports to the sink nodes. The reports may contain the aggregated data of the semantic neighbors. Whenever the fuzzy inference system does not detect relevant semantic relationship to some adjacent sensor nodes, none information is shared between them and their operation is switched to low duty-cycle. The transmission intervals of unrelated nodes are extended in order to produce low duty-cycle operation thus saving energy, since they are not directly involved with the monitored event at a given period.

4. Semantic neighborhood process Starts distributed fuzzy inference

Establishes semantic neighborhood

Starts semantic clustering

Fig. 1. UML diagram.

domain, a semantic relationship between LLSs such as acceleration, temperature and humidity can be performed, in order to detect possible damages in the engineering structure. In the next step, a fuzzy system is responsible for establishing semantic neighborhoods relationships between sensor nodes. The fuzzy inference system operates in two phases: in a first phase, an individual fuzzy inference process is performed in each CH considering only the sensor nodes that belong to its own cluster; afterwards, a distributed fuzzy inference process is performed in each CH considering the neighbors CHs ‘‘opinion’’ about their sensor nodes relationship. The ‘‘opinion’’ of the CHs is gathered when they communicate with each other in order to obtain an accurate decision. In the last step, the semantic neighbors are (re)grouped into semantic clusters, although those sensor nodes can be either on the same physical cluster or not. It is important mentioning that for many applications, initially our semantic clustering is implicitly based on the distance between the sensor nodes for clustering the nodes. Actually, the focus of our proposal is mainly applications that provides base for this feature. The main reason is that the transmission distance is a key feature in order to save energy and the it must be considered even we emphasize the semantic data in the clustering process. In a given neighborhood, the CH having the largest number of semantic neighbors as a whole is elected as a semantic collector. The semantic collector may send an advertisement message via broadcast to the semantic neighbors join the semantic cluster. In case of tie, i.e, two or more CHs have the same number of semantic neighbors, the semantic collector chosen is the CH who firstly sends the advertisement message (also received by the CHs via broadcast).

As it was previously mentioned, in our work a fuzzy system is responsible to establish the relationships of the semantic neighborhood. Any system based on fuzzy logic starts with and builds on a set of user-supplied human language rules. The fuzzy systems convert these rules to their mathematical equivalents. Such approach results in much more accurate representations of the way systems behave in the real world [16]. Fuzzy logic models, called fuzzy inference systems, consist of a number of conditional ‘‘ifthen’’ rules. For the designer who understands the system, these rules are easy to write, and as many rules as necessary can be supplied to properly describe the system (although typically only a moderate number of rules are needed). In our case, a domain expert is responsible to provide the rules. Since WSN can be applied in a wide range of application domains, the rules need to be tailored to each specific domain so that the fuzzy system better reflects the real world environment being modeled. It is an intrinsic feature of the fuzzy logic technique that the most accurate and representative of the real world the defined rules are, the better the fuzzy system will perform. In fuzzy logic, unlike standard conditional logic, the truth of any statement is a matter of degree. Fuzzy inference systems rely on membership functions to explain to the computer how to calculate the correct value between 0 and 1. The degree to which any fuzzy statement is true is denoted by a value between 0 and 1. Not only do the rule-based approach and flexible membership function scheme make fuzzy systems straightforward to create, but they also simplify the design of systems and ensure that the system can be easily updated and maintained over time. Therefore, in spite of the behavior and performance of a fuzzy system is clearly dependent on domain specific rules and functions, such systems were designed to be flexible and easy to adapt to different domains. We use a rule-based distributed fuzzy inference system (Fig. 2) for WSN. Briefly, a fuzzy logic system is composed of five basic components: fuzzifier interface, inference process, defuzzifier interface, semantic-knowledge base and rule base. The fuzzifier converts crisp inputs into fuzzy sets by using the membership functions. A membership function gives the similarity degree of a crisp input to the fuzzy set. Next, the fuzzified values activate the rules of knowledge base that are provided by experts or extracted from numerical data. The fuzzy rules summarize how the relationship between the fuzzy sets is reflected in the output variable behavior.

1631

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

Fuzzification

Inference Engine

Input Data

Deffuzification

Crisp Output

Rule Base

Neighbor Observation

ΣCount

Quantifier “most”

Semantic Base

Fig. 2. Fuzzy inference system.

The fuzzy rules are expressed as statements like ‘‘IF . . . THEN . . .’’. The semantic-knowledge base refers to labels associated to fuzzy sets defining the linguistic variables. A fuzzy system uses linguistic variables instead of numeric variables. According to Zadeh [17], a linguistic variable is a variable whose values are not numbers but words or sentences in a natural or artificial language. The linguistic variables can take values such as ‘‘low’’, ‘‘high’’, ‘‘very large’’ which are represented by fuzzy sets. Next, the fuzzy inference process combines the rules to obtain an aggregated fuzzy output. Finally, the defuzzifier interface converts the fuzzy output back to a crisp number that can be used to make decisions. The rule-based distributed fuzzy inference system here proposed is similar to the work described in [10] but we just apply the fuzzy system in the CHs instead of all sensors nodes. Thus, the message exchange in our proposal is just performed in the upper level hierarchy in order to save resources. The fuzzy inference system uses two types of inputs: individual observations collected from the sensor nodes and sent to the CH (individual fuzzy inference) and neighborhood observations gathered when neighboring CHs communicate with each other (distributed fuzzy inference). The individual fuzzy inference process is explained as following. The fuzzy logic system starts up when a CH detects that one or more sensors nodes inside its cluster are ‘‘candidates’’ to become semantic neighbors. The nodes are considered ‘‘candidates’’ when their data satisfy a domain rule related to the event monitored by the WSN. For example, in the SHM domain, if there is any relevant change in the acceleration values of a sensor node, the sensor node will be considered a ‘‘candidate’’ to become a semantic neighbor. In this example, the domain rule is ‘‘acceleration is higher than X’’, where X is a specified threshold. The fuzzifier utilizes as input data the data (crisp input) of the sensors that satisfy a domain rule. More specifically, the input data are the LLSs presented in the method proposed. The fuzzifier can also utilize as input data some sensor’s data that were processed by the CH. For example, values resulting from a mathematical equation as add. The fuzzifier maps crisp inputs into fuzzy sets by using the membership functions. The most common membership functions are trapezoidal and triangular. Triangular membership functions are used whenever there is a single element that has its membership degree equal to 1 (one). The trapezoidal membership functions are used if there are several (>1) elements that have the membership degree equal to 1. We use the

max–min inference since it proves to be computationally fast in the system implementation [10]. Each CH stores their fuzzy inference results. The CHs communicate with each other (one-hop) by sending and receiving messages containing their individual fuzzified results about semantic neighborhood relationships inside their respective clusters. Every CH receiving such messages from neighboring CHs performs the fuzzy inference using the fuzzified neighboring observations (distributed fuzzy inference). It is used a sigma-count factor defined by [18], a measure of fuzzy cardinality that allows generalizing counting techniques, in the quantification of neighborhood observations:

X

CountðFÞ ¼

X

lF ðxi Þ;

ð1Þ

i

where a fuzzy set F is characterized by a membership function lF ðxi Þ which gives the degree of similarity of x to F. F is a property of interest related to the sensor nodes observations, e.g. ‘‘acceleration value is high’’ or ‘‘humidity level is low’’. Finally, X = {x1 , . . . , xn} is the set of neighbors. A fuzzy majority quantifier is used to get a fuzzified indication of the consensual neighborhood opinion. A fuzzy majority is defined as a fuzzy linguistic quantifier. In our case, we use the most quantifier, defined in [19], to characterize the fuzzy majority, i.e., the consensual neighborhood opinion in order to take a more accurate decision:

lmost

X

!  X lF ðxi Þ=n ; CountðFÞ=jXj ¼ lmost

ð2Þ

i

8 if x 6 0:3; > : 1 if x P 0:8: Next, the fuzzified values activate the inference rules. The fuzzy inference system incorporates both the fuzzified individual observations and the quantified neighborhood observations in the rules. For example, concerning a SHM domain: IF acceleration is High AND most (accelerationNeigh) is High THEN SemanticNeighborDetection is high The fuzzy inference system merges the rules to obtain an aggregated fuzzy output. Finally, the defuzzifier maps the fuzzy output back to a crisp number which is used for making decisions related to the semantic

1632

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

neighborhood. We use a simple defuzzification strategy denoted as center of gravity (COG) method in order to produce a crisp output.

5. Methodology for building the fuzzy knowledge base Pirmez et al. [20] present a methodology for building fuzzy knowledge bases to aid the design of WSN applications but also generic enough to be applied in other domains. This methodology encompasses five stages: (i) bibliographical research on selected domain; (ii) selection of parameters to be used in the knowledge base; (iii) planning and execution of simulations/measurements and analysis of results; (iv) definition of linguistic variables and (v) definition of fuzzy inference rules. The first stage of methodology presented in [20] consists of an extensive literature review on selected domain in order to choose a set of parameters to be considered for the system fuzzy design. The second stage consists of selecting the parameters to be monitored in that domain. The parameters can be variables to be monitored according to the application requirements, such as temperature, and pressure. Moreover, the parameters can be WSN physical characteristics, such as network density, or QoS parameters, such as minimum delay or data accuracy. The third stage consists of performing simulations and/ or measurements with use of a proper methodology to analyze the behavior of the WSN in the selected domain. A set of scenarios should be planned to evaluate the behavior of the WSN while varying each monitored parameter. In this work, we use a database [21] to build the inference rules (see Section 7.4 for details). The fourth stage is responsible for building the semantic base, i.e., for populating the fuzzy knowledge base for the fuzzy system. The base is built from the data obtained in the simulations/measurements performed during the third stage. It is necessary the definition of all the linguistic variables of fuzzy system for building the semantic base. We assumed that the linguistic variables are defined through a quintuple (X, L, U, G, M) [22], where X is the variable symbolic name; L is the set of labels assumed by X; U is the universe of discourse that contains all possible values assumed by X; G is the syntactic rule, usually defined in the form of a grammar; and M are the semantic rules that define the meaning of each label L (also known as membership function). To simplify the G grammars definition we adopted the approach based on the use of an ordered structure of linguistic terms, presented in [22]. Therefore, according to such approach, we supply directly the sets of primary terms (also known as fuzzy sets or sets of labels), distributed over a scale on which a complete (total) order is established. The fifth stage in generating the knowledge base consists of building the inference rules that relate the linguistic values of the fuzzy variables. Once the fuzzy variables are defined, the inference rules for each fuzzy set are built taking into account the relation between the fuzzy sets and the behaviors of the WSN according to the specified scenarios.

6. Case study: structural damage detection, location and extent estimation Nowadays WSNs are widely used for SHM systems [23,24] mainly because such networks have low cost of deployment and maintenance and a high degree of flexibility and reconfigurability of the installed nodes. SHM systems aim to detect and localize damages in engineering structures such as buildings, bridges, mines and offshore platforms. In general, SHM applications rely on measuring the structural response to natural stimuli or forced excitation. Natural stimuli can be caused by earthquakes or other events and forced stimuli can be produced by hydraulic or piezoelectric shakers. A variety of sensors, such as accelerometers, stress/strain gauges, corrosion, crack, delamination and humidity, can be used to measure structural responses. SHM systems perform a high density sensing of the monitored environment. Thus, it is interesting to apply methods that save energy and help extend the network lifetime. In this section we describe our proposed semantic clustering method applied to the SHM domain and we present it based on the Sensor-SHM algorithm [25]. Sensor-SHM is a distributed algorithm for WSNs which performs damage detection, localization and extent determination in engineering structures, making use of the shifts in the structure’s modal frequencies. In this work, we use only the function of damage detection of Sensor-SHM algorithm and then we apply our semantic clustering method to save energy and to improve the data accuracy. Below, we explain the steps performed by the Sensor-SHM for damage detection in engineering structures. Further details on the process of structural location and extent estimation performed by Sensor-SHM can be found in [25]. It is important mentioning that in our proposal, we assume that the damage occurs gradually. Our semantic clustering algorithm starts whenever the Sensor-SHM detects the first relevant changes in the modal frequency values of the structure. Catastrophic events or sudden damages are out of the scope of this work.

6.1. Sensor-SHM: structural damage detection In the Sensor-SHM algorithm, a hierarchical network topology comprised of two layers is assumed. The lower layer contains sensor nodes organized in clusters2 and the higher layer contains CHs. Sensor nodes perform only sensing tasks and communicate with their corresponding cluster head. CHs do not perform sensing tasks and are responsible for coordinating the communication and processing inside their respective clusters. Each CH is aware of its CH neighbors. The presence of damage in a engineering structure can cause changes in all modal frequencies in a given position of the sensor node [26]. Therefore, the perceived change depends on the position of the sensor node, e.g. if it is 2

Semantic clustering is not used in the original Sensor-SHM algorithm.

1633

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

located near the damage. The part of Sensor-SHM algorithm for damage detection is explained as follows. (1) Each sensor node i monitor the structure during a data collection stage t. Each sensor collects the acceleration measurements from its position on the engineering structure in the time domain. A fast Fourier transform (FFT) is then performed by each sensor over the collected acceleration measurements. Then, a simple method for extracting frequency values from the five peaks of the power spectrum generated by the FFT is used. Thus, each ! sensor node i obtains a vector xi;t (3) in each data collection stage t and sends them to its CH using a DataMsg packet.

2 6

x1i;t

3 7

7 ! 6 6 . 7 x i;t ¼ 6 .. 7 5 4

ð3Þ

xMi;t

The DataMsg payload (total of 10 bytes) is described as follows:DataMsg{ uint16 omega1; uint16 omega2; uint16 omega3; uint16 omega4; uint16 omega5;} (2) Each CH analyzes incoming signature vectors from each sensor node contained in its cluster, in order to notice any modal frequency change. Each CH ! compares the modal frequency vectors xi;t sent at the current data collection stage from sensor nodes ! to a modal frequency vector xi;0 sent from each sensor i in the first data collection stage, containing the initial signature of the structure for each location. ! Each xi;0 means a signature from a healthy state of the engineering structure, i.e, no damage or undesired perturbations in the structure. The comparison is made through the absolute value of the difference ! ! between vectors xi;t and xi;0 and the result is stored ! in the vector Dxi;t :

2

jx1i;0  x1i;t j

3

2

Dx1i;t

3

7 6 7 6 6 jx2  x1 j 7 6 Dx2 7 6 i;0 6 i;t 7 i;t 7 7 7 6 6 ! 7 6 7 6 ! ! Dxi;t ¼ jxi;0  xi;t j ¼ 6 jx3i;0  x1i;t j 7 ¼ 6 Dx3i;t 7 7 6 7 6 7 7 6 4 6 6 jxi;0  x1i;t j 7 6 Dx4i;t 7 5 4 5 4 Dx5i;t jx5i;0  x1i;t j

2

Dx1i;t

3

2

T 1i

3

7 6 6 7 6 Dx 2 7 6 27 6 6 Ti 7 i;t 7 7 6 6 7 ! ! 6 6 7 3 7 Dxi;t P T i ¼ 6 Dxi;t 7 P 6 T 3i 7 7 6 6 7 7 6 6 47 6 Dx4i;t 7 6 Ti 7 5 4 4 5

ð5Þ

T 5i

Dx5i;t

! The tolerance threshold vector T i is defined for each sensor node. The threshold values are defined by a structure specialist and they depend on knowledge and analysis of the position where each sensor is in! stalled. Moreover, the T i vector can be statistically determined after making a series of experimental ! samples. A T i tolerance vector is used in order to prevent that small random disturbances indicate the occurrence of abnormal conditions in the structure. (4) A Di;t coefficient is calculated for each sensor i that has exceeded the given tolerance in each cluster. For the first five modal frequencies, see the Di;t formal definition:

3 Dx1i;t 7 6 6 Dx2 7 6 i;t 7 7 6 7 6 A5i 6 Dx3i;t 7 7 6 7 6 6 Dx4i;t 7 5 4 Dx5i;t 2

!!  Di;t ¼ Ai Dxi;t ¼ A1i

A2i

A3i

A4i

ð6Þ The Di;t coefficient value means how close a sensor node i is ! to the detected damage site. The Ai vector is composed by weights associated to each modal frequency shift. The sink ! node informs the Ai values to the CHs at the network start ! up. However, the Ai values can be modified during the operation of the network. Since changes in the higher modal frequencies mean there are changes in the local modes ! of vibration, the Ai vector is responsible for identifying the sensor nodes which are closest to the damage position. Therefore, at the network startup process, the highest weight values are associated with the highest modes of vibration and are stored in the CH of each sensor node i. Thus, the sensor nodes that are closest to the damage position have the highest Di;t coefficients of the whole network. 6.2. Semantic clustering in SHM domain

ð4Þ (3) If there is a relevant change in the modal frequency ! ! values in xi;t related to those of xi;0 , considering a certain amount of tolerance threshold specified at the network start up process, the algorithm assumes the possibility of damage presence in the monitored structure. Thus, if the result of Eq. (5) is positive, the algorithm will assume the possibility of damage to the structure:

For the considered SHM application, let us suppose the WSN semantic neighbors are the sensors nodes closest to the damage site. Thus, besides semantic relationships, our algorithm uses (implicitly) the distance parameter for nodes clustering, because if the semantic neighbors are close to the damage position, they are also close to each other. This fact already confines the generated semantic clusters to a certain geographic region, thus guaranteeing that the sensors in a same cluster will not be far apart. The steps of our semantic clustering method for SHM domain is described as follows:

1634

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

(1) At the network start up process, a deterministic physical clustering scheme is performed. We fixed the position of clusters in the structure. A clustering algorithm as LEACH or PEACH could be used, but in order to facilitate the evaluation of the proposed semantic clustering, we chose to use an initial deterministic physical clustering. (2) We use the Sensor-SHM algorithm, described in Section 6.1, to detect the possibility of damage presence in the monitored structure. (3) Next, our fuzzy system starts. The fuzzy system is responsible for establishing semantic relationships between the sensors in the network, regardless of which cluster the sensor is positioned. The fuzzy system starts whenever a CH notices that one or more sensors inside its cluster exceeded the given tolerance threshold, i.e, the sensors are ‘‘candidates’’ to become semantic neighbors because they satisfy the domain rule defined in Eq. (5). (4) During individual fuzzy inference process, a partial set of semantic neighbors is selected by each CH based on sensor nodes relation that belong only to its cluster. Thus, a partial set of semantic neighbors is selected in each physical cluster. For this purpose, the fuzzy system performs a individual inference process based on two linguistic variables labeled coefficient and nmessages and a local rule base. The coefficient variable represents the Di;t coefficient of sensor nodes. For coefficient, the grammar G is given by Gcoefficient={s0 = Low, s1 = Medium, s2 = High} and the three labels were defined as Low (L), Medium (M) and High (H), in order to represent the calculated coefficients. The universe of discourse for this linguistic variable was defined considering the closed interval of real numbers between 0 (zero) and the largest calculated value for this variable. Regarding the membership function, that determines the shapes that represent each fuzzy set, the trapezoidal shape was chosen for coefficient variable because there are several (>1) elements that have the membership degree equal to 1. The highest Di;t calculated values of the network were mapped to the High (H) fuzzy set in order to identify the sensors (semantic neighbors) closest to damage site. For this purpose, we use a Ld threshold value that, in the start up process of the network, is informed to the CHs and depends on the structure local attributes where each sensor node is installed. The Ld threshold is specified to each sensor node in order to determine how close the sensor is from the damaged site. The sensors that have Di;t PLd values are the sensors closest to the damage site. Thus, we use the Ld threshold as the smallest value whose membership degree in the High fuzzy set is 1 (one), that indicate full membership in this fuzzy set. For a given variable, each fuzzy set must have an intersection with his neighbor fuzzy set. Thus, a given value which belongs to its universe of discourse will be contained in at least one of their fuzzy sets. Similar to [20], we define the boundaries of the polygonal using the concept of the 95% confidence

interval. The boundaries of the polygonal are defined as following. At the lower boundary (left side) of the fuzzy sets, we use the difference between the smallest calculated value whose membership degree in the next fuzzy set is equal to 1 (one) and the adopted 95% confidence interval. At the upper boundary (right side), we use the smallest calculated value whose membership degree in the next fuzzy set is equal to 1 (one). In local fuzzy inference, each CH specifies individually the semantic neighbors by using the local rule knowledge base (Fig. 3). (5) Whenever a CH notices that there are one or more sensors within its cluster with values of Di;t mapped (by fuzzyfication function) to the High (H) fuzzy set, the CH communicates with its neighbors to notify its own partial list of neighborhood semantics. The CH sends to the neighboring CHs (one-hop) a FuzzyficationMsg message that contains the fuzzified values of the Di;t coefficients from semantic neighbors found in that respective cluster. The FuzzyficationMsg message has the following structure in the payload field (total of 10 bytes): FuzzyficationMsg{ uint16 originCH; uint16 DcoeffGrauB; (Low degree – coefficient) uint16 DcoeffGrauA; (High degree – coefficient) uint16 nMessagesGrauB; (Low degree – Nmessages) uint16 nMessagesGrauA; (High Degree – Nmessages)} Nmessages is a linguistic variable that represents the number of received messages by the CHs from neighboring CHs including their fuzzified values. The nmessages variable avoids a large number of false damage detection notifications, because it is supposed that some neighboring CHs also detect the same event. For nmessages, the grammar G is given by Gnmessages={s0 = Low, s1 = High} and the two labels were defined as Low (L) and High (H), in order to represent the number of received messages by the CHs. The universe of discourse for nmessages was defined considering the closed interval of real numbers between 0 (zero) and the largest value for this variable occurred in the experiments. Regarding the membership function, the trapezoidal shape was also chosen for nmessages variable because there are several (>1) elements that have the membership degree equal to 1. We use the total number of neighboring CHs as the smallest value whose membership degree in the High fuzzy set

Fig. 3. Local rule-based fuzzy inference.

1635

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

is 1 (one), because if all neighboring CHs detect the same event, it does not really mean a false alarm. The polygonal boundaries are defined according to the network behavior in the experiments. At the upper boundary (right side), we use the smallest calculated value whose membership function degree in the next fuzzy set is equal to 1 (one), i.e, the total number of neighboring CHs. Every CH that receives these messages from neighboring CHs updates the fuzzy inference using the neighbors observations (distributed fuzzy inference) through sigma-count factor and most operator (Eqs. (1) and (2)). In distributed fuzzy inference, the rule knowledge base (Fig. 4) is used to obtain the specification of semantic neighbors of the entire network. An example of a defined fuzzy rule can be observed: IF coefficient is High AND nmessages is High AND most (coefficientNeigh) is High AND most (nmessagesNeigh) is High THEN SemanticNeighborDecision is High The semanticneighborhood variable (Fig. 5) is the fuzzy output of the specified fuzzy system. It represents the probability of a sensor node belong to the set of semantic neighbors of the WSN in a given time. For semanticneighborhood, the grammar G is given by Gsemanticneighborhood={s0 = Low, s1 = Medium, s2 = High} and the three labels were defined as Low (L), Medium (M) and High (H), in order to represent the probabilities. The universe of discourse for semanticneighborhood was defined considering the closed interval of real numbers between 0 (zero) and 100 (one hundred), since it represents probabilities. The trapezoidal function was chosen for this

Confidence Interval

μ 1 Medium

Low

High

0 0

20

40

60

80

100

Fig. 5. Probability of semantic neighborhood.

variable since there are several (>1) elements that have the membership degree equal to 1. We also define the boundaries of the polygonal using the concept of the 95% confidence interval. At the lower boundary (left side) of the fuzzy sets, we use the difference between the smallest calculated value whose membership degree in the next fuzzy set is equal to 1 (one) and the adopted 95% confidence interval. At the upper boundary (right side), we use the smallest calculated value whose membership degree in the next fuzzy set is equal to 1 (one). (6) Once semantic neighborhood relationships are established, the semantically unrelated sensor nodes have changes in their transmission rates in order to save resources (the transmission interval is extended to double the current). (7) A new semantic cluster is composed of all detected semantic neighbors and a semantic collector election is performed. The elected semantic collector broadcast an advertisement message labeled JoinCollectorMsg to all nodes. The JoinCollectorMsg message contains a list of semantic neighbors selected in the network. A maximum of four

Fig. 4. Distributed rule-based fuzzy inference.

1636

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

semantic neighbors is advertised per message due to TinyOS message size. Whenever there are more semantic neighbors, the approach will send multiple JoinCollectorMsg messages including the different identifiers. Each semantic neighbor that receive the cluster-head advertisement message might compare its identifier to the list of semantic neighbors identifier and decide if join or not to the semantic cluster. A JoinCollectorMsg has the following structure in the payload field (total of 10 bytes): JoinCollectorMsg{ uint16 idSemanticCollector; uint16 sneighbors[4]; (Four IDs per message) } The semantic collector is responsible for sending a (ReportMsg) message containing the reports to the sink nodes. The ReportMsg message contains the value of Di;t coefficient resulting from an aggregation method performed on the semantic collector. The actual aggregation method is the mean of the values Di;t received by semantic neighbors. The aggregation degree is defined as the number of packets aggregated into a single packet transmission. In this case, the aggregation degree is equivalent to the number of semantic neighbors of the network. A ReportMsg has the following structure in the field of data (content of total six bytes): ReportMsg{ uint16 DcoeffAggr; (aggregation method output) uint16 pertinency; (fuzzy output) uint16 sneighbors; (number of semantic neighbors) } (8) Whenever a new damage is detected, both a new election of the semantic neighbors and a new semantic clustering are performed. In cases of multiple damages or large damages, it is possible the occurrence of multiple semantic collectors that can send to the sink node multiple reports from the different positions in the structure.

7. Experimental evaluation 7.1. Goals Four sets of experiments were performed in order to evaluate the impact of our proposal in the network, considering the following metrics: overhead of messages generated in the network, total of bytes sent, energy consumption and memory usage. Experiments I and II aim to evaluate the proposal in two scenarios of damage. Experiment III aims to assess the impact over the energy saving of the selected aggregation method in our proposal. Finally, experiment IV aims at comparing our proposed semantic clustering algorithm to a deterministic clustering method and the LEACH algorithm. In this experiment, besides the number of sent messages, total of bytes sent, energy consumption and memory usage, we also evaluate the data accuracy and the energy used to establish the clusters.

7.2. Environment We used Crossbow Technology’s [13] Micaz wireless sensors with the following specification: ATMEGA128L microprocessor, CC2420 radio (2.4 Hz), 128 kB programmable flash memory, 512 kB external serial flash, 4 kB EEPROM. The MIB520 is used to access data from the sink node (or a sniffer that captures network traffic to posterior analysis) through its USB interface. NesC [27] and TinyOs (version 1.x) [28], a componentoriented operating system, have been used in the system implementation. Two modules were implemented: SensorNodeModule and ClusterHeadModule. The SensorNodeModule runs only at the sensor nodes, which send the values of the five modal frequencies for the CHs. The packet transmission rates of each sensor were set with different values. These values were chosen in the range [500, 1300] (ms) to avoid a high rate of packet collisions. The ClusterHeadModule runs only at the CHs which perform the functions described in the previous section. After the execution of ClusterHeadModule, all the CHs which received fuzzification messages from neighbors converge to an identical semantic neighborhood table. Every sensor node was configured in a low power mode (low energy), regardless they are CHs or sensors. The Xmesh [29] routing protocol developed by Crossbow Technology was selected for use in our experiments. In order to evaluate the data sent over the network, we use the Xniffer [29] development tool, which is included in the sensors kit from Crossbow. 7.3. Energy model We used the energy model [30] defined for Micaz sensors to assess the energy consumption in transmissions:

Et ¼ Psent  Plength  TB  It  V

ð7Þ

where:  Psent = number of sent packets.    

Plength = length of a packet in bytes. TB = byte transmission time (32 ls). It = transmit mode current = 17.4 mA. V = supply voltage (3 V).

The values used for TB, It and V parameters were found in the Crossbow Micaz Datasheet [31], which are also equal to the values presented in [30]. The variable P length depends on the type of the packet sent. For each algorithm, there are different packet types and sizes. The sections which describe our experiments include the specific values of packet types and sizes used to assess the energy consumption. In addition to the packets exchanged by our application, we also evaluated the packets related to the Xmesh routing protocol. Every node in the network periodically sends Health and Rte messages. The Rte messages are used to update the routing table. The Health messages are sent to the sink node and comprise information such as the remaining energy of the node and number of packets sent

1637

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

and received. The packet sizes (including their header sizes) are given below:  Rte = 27 or 12 bytes.  Health = 25 or 29 bytes.  AckDwn = 10 bytes. 7.4. Database We used a database (Table 1) to emulate the values collected by the sensors. Since we use artificial data, sensor boards were not integrated to the Micaz motes in our experiments. Thus, since we are focusing on the communication overhead generated by the raw data sampling, the modal frequency values which are being collected are irrelevant. The database was set up from the values presented by Clayton [21]. The authors collected the modal frequencies from a real structure by using Micaz sensors with MTS310CA modules, which include accelerometers (ADXL202JE dual axis). They used a five-storey building for deploying the sensor nodes. Individual damage sites were introduced on the five-storey building by reducing the stiffness of the inter-storey columns. This reduction was made by exchanging each original column by other column with a smaller moment of inertia. The structure was excited and the sampled values were assessed. Further details can be found in [21]. 7.5. Methodology for data distribution The distribution of artificial data (Table 1) among the sensors is described as following. At the beginning of the experiments (up to t = 10 s), all the sensors in the network, regardless of their position, generate data with ‘‘HEALTHY’’ values, as shown in the database, in order to emulate a structure which does not present any possibility of damage. After the period t = 10 s, all sensors change their values to one of the values which emulate an introduced damage. For example, the sensors can change their collected frequency values to the ones corresponding to ‘‘Damg FL2’’ from the database, which means the presence of damage in the second floor of the structure. In order to differentiate the opinion of each sensor node i about the frequency shift, different values of Ai vector are given to the sensors so that the Ai vector amplifies the Di;t values whenever these sensors are located near the detected damage. Thus, the Di;t coefficients of the sensors which are closest to damage will assume the highest

values of the network. It is important to mention that the set of values for the vectors Ai are defined at the network start up process and are kept unaltered during the network operation. The values of the Ai vectors are configured within the interval [0, 1] for each sensor, symbolizing values of percentages, so that the sum of all the values of each Ai vector is equal to 1 (one) in order to normalize them. In addition, the most significant frequencies have higher Ai values. For instance, for a sensor node on the second floor of the structure to indicate the possibility of damage in its position while the other sensors (on any floor) do not, on their respective positions, the Ai values of this sensor must be higher for the modes whose frequencies shifts are most significant for denouncing damage in this floor. The same procedure is performed for other sensors whenever the damage site is on their floors. Table 2 shows the Ai vectors which identify the sensor closest to the damage on the second floor and the fourth floor, respectively, defined as ‘‘Damg FL2’’ and ‘‘Damg FL4’’ in the table. These values were used in the experiments. 7.6. Defining fuzzy limits We created a database containing Di;t values in order to generate an universe of discourse for the linguistic variable labeled coefficient (Fig. 6(a)). For this purpose, we used the modal frequency values from the database presented in [21] and the weight vector values illustrated in Table 2 into Eq. (6) from Sensor-SHM. The maximum value calculated for this variable was 0.5577. Hence, the universe of discourse is represented by the interval [0, 0.5577]. Our database provides Di;t values of sensors closest to the damage in each different position. We use these values for specifying the Ld threshold. From this subset of values, we chose the minimum Di;t value (0.5439) to be specified as the Ld threshold for all sensors. The Ld threshold is illustrated in Fig. 6(a) as the smallest value whose membership degree in the High (H) fuzzy set is equal to 1. The boundaries for the fuzzy sets of the linguistic variable Nmessages (Fig. 6(b)) were defined based on the network behavior observed in the experiments. We use the maximum number of neighboring CHs (three CH neighbors) as the smallest value whose membership degree in the High (H) fuzzy set is equal to 1. 7.7. Metrics, experiments and scenarios In an effort to achieve the purpose of the experiments I, II and III, the metrics selected are: the total of packets

Table 1 Excerpt of the database [21]. Identified resonant frequencies Wireless accelerometer data HEALTHY Manual Damg FL2 Manual Damg FL4 Manual

Mode I 2.54 Mode I 2.34 Mode I 2.44

Mode II 7.52 Mode II 7.52 Mode II 6.93

Mode III 12.01 Mode III 11.62 Mode III 11.91

Mode IV 15.53 Mode IV 14.45 Mode IV 15.14

Mode V 17.77 Mode V 17.48 Mode V 16.99

1638

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645 Table 2 Weight vectors.

y (meters)

3

5

6

11

3

4

0

10

1

2

0

1

2

3

Sink Node

Medium

0.48 0.51

y (meters)

Legend

3

13

12

11

0

Sink Node

0

10

0

1

7

5

8

(a)

CH

ID

Sensor Semantic Neighbor

6

4

x (meters)

2

3

4

the ‘‘HEALTHY’’ values from the database, the nodes change their reported frequency values to the ‘‘Damg FL2’’ values, indicating a damage site on the second floor of the structure. The sensors with IDs 4, 6, 8 and 9 have the weight values identified in the ‘‘Damg FL2’’ table entry (Table 2) to simulate that they are close to the damage in their positions. Thus, a damage scenario 2 is generated as shown in Fig. 9. After damage detection, these four sensors (IDs 4, 6, 8 and 9) will be selected as semantic neighbors and CH 13 will be elected as a semantic collector, because it has the largest number of semantic neighbors included in its cluster. In Experiment III, the damage scenario 2 (Fig. 9) was used. The key idea in such experiment is to change the aggregation degree (see Section 6.2, item 7) in order to demonstrate that the selected aggregation method has an

Low

0.55

ID

9

Fig. 8. Scenario 1.

High

0.54

Sensor

x (meters)

High

0 0.45

ID

4

Confidence Interval

0

CH

Cluster

1

Low

ID

9

Fig. 7. Network topology.

Confidence Interval

1

0.00

12

0

generated in the network, the total of bytes sent, the energy consumed by the transmission of packets and the memory usage. Briefly, the experiments I and II aim to evaluate the proposal in two different scenarios of damage. Experiment III aims to assess the impact over the energy saving of the selected aggregation method in our proposal. Regarding to experiment IV that aim at comparing our proposed semantic clustering algorithm to a deterministic clustering method and the LEACH algorithm, besides the number of sent messages, total of bytes sent, energy consumption and memory usage, we also evaluate the data accuracy and the energy used to establish the clusters. For each experiment (I, II, III and IV), a fixed, deterministic and hierarchical initial physical organization of the network was considered (Fig. 7). The sensors were distributed at fixed positions, and were grouped into four clusters. Each cluster had a different number of sensors and each sensor is only subordinated to one CH. We used the distance as a criterion for the initial arrangement of sensors. For each experiment, we used the total of 4 cluster heads, 9 sensor nodes, 1 base station (MIB520 + sensor) and 1 sniffer (sensor + MIB520). In each experiment, the network ran for 15 min for each scenario (per round). We repeated ten times each experiment and used the 95% confidence interval. In Experiment I, after the period t = 10 s, the period in which the sensors generate the ‘‘HEALTHY’’ frequency values, the nodes change their reported values to the ‘‘Damg FL4’’ values, indicating damage on the fourth floor of the structure. At the network start up process, the weights were set for each sensor. The sensors with IDs 1, 2 and 3 had their weight values presented in the ‘‘Damg FL4’’ table entry (Table 2) to simulating that they were close to the damage in their positions. Thus, a damage scenario 1 is generated as illustrated in Fig. 8. After damage detection, these three sensors (IDs 1, 2 and 3) were selected as semantic neighbors and CH 10 will be elected as a semantic collector, because it has the largest number of semantic neighbors included in its cluster. Likewise, in Experiment II, after the period t = 10 s, where the sensors generate the frequency values equal to

8

2

0.05 0.06 0.23 0.32 0.34 0.05 0.11 0.12 0.22 0.5

7

1

Damg FL2 Damg FL4

μ

13

2

Weight vector (Ai)

1

Damage

Legend

0

1

3

(b)

Fig. 6. (a) Membership functions for coefficient variable. (b) Membership functions for nmessages variable.

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

y (meters)

Legend 7

ID

CH

ID

Sensor

3

13

1639

2

5

1

11

3

0

10

1

2

0

1

2

3

0

Sink Node

Semantic Neighbor

12

x (meters)

4

Fig. 9. Scenario 2.

impact over the energy consumption. For this purpose, we increased the aggregation degree. So, we multiplied by ten the current aggregation degree used in Experiment II. That is, the aggregation degree became equivalent to the number of semantic neighbors multiplied by the constant 10 (aggregation degree = total number of semantic neighbors ⁄ 10). In Experiment IV, we implemented the deterministic clustering algorithm using the same fixed physical organization of the network illustrated in Fig. 7. We also implemented the LEACH algorithm. LEACH is a self-organizing clustering algorithm that utilizes randomized rotation of CHs to evenly distribute the energy load throughout the sensor network. First, sensors elect themselves to be CHs at any given time with a certain probability. Next, the CHs broadcast their status to the other nodes. Then, each sensor node determines the cluster to which it wants to belong to by choosing the CH with the maximum RSSI. Once all the nodes are organized into clusters, each CH creates a schedule for the nodes in its cluster. This allows the radio components of each non-CH node to be turned off at all times except during its transmission time. Each CH receives data from nodes in its cluster, aggregates these data and sends them to the sink node.

8. Results

Fig. 10. Experiment I: total number of packets sent.

unrelated nodes do not send to CHs relevant messages that include frequency values that trigger fuzzification messages or report messages from CHs. Fig. 11 shows the total number of sent packets (classified per type). The messages sent from CHs (nodes 10, 11, 12 and 13) that are classified as 1Hop type in Fig. 11 are actually fuzzification and advertisement messages. The report messages sent from semantic collector (node 10) to the sink node are illustrated as DatUp in figure, that means messages sent from sensors to the sink node (mode upstream). The total number of sent bytes is illustrated in Fig. 12(a). The messages sent by our application (DataMsg, FuzzyficationMsg, JoinCollectorMsg and ReportMsg) are encapsulated in TinyOS packets and have a typical TinyOS header [32]. The packet sizes, including their headers, are given below:    

DataMsg = 23 bytes (1Hop). FuzzyficationMsg = 23 bytes (1Hop). JoinCollectorMsg = 21 bytes (1Hop). ReportMsg = 19 bytes (DatUp).

8.1. Experiment I: damage scenario 1 For the first damage scenario (Fig. 8), the total number of packets sent by each sensor is illustrated in Fig. 10. We can observe that the semantic neighbors (nodes 1, 2 and 3) and the semantic collector (node 10) sent more packets than other nodes over the network, because the unrelated nodes had their transmission rates changed in order to save resources. In other words, the values of the transmission interval were doubled. Thus, the unrelated nodes reduce the number of sent packets and do not waste as many resources, since they are not directly involved to the monitored event at that time. The CHs which were not selected as semantic collectors (nodes 11, 12 and 13) also reduce the number of sent packets, because they do not receive packets from semantic neighbors (after they were associated to a semantic collector). Moreover, the

According to the energy model [30], the amount of energy consumed in the bytes transmission is illustrated in Fig. 12(b).

8.2. Experiment II: damage scenario 2 The behavior of the second damage scenario (Fig. 9) is similar to the behavior of the first damage scenario (Fig. 8): the semantic neighbors (nodes 4, 6, 8 and 9) and the semantic collector (node 13) sent more packets (Fig. 13) than other nodes over the network because the unrelated nodes had their values of transmission interval doubled. However, in the second damage scenario, some unrelated nodes (1 and 3) also sent a larger amount of messages because of their short transmission intervals

1640

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

Fig. 11. Experiment I: total number of packets sent (per type).

Fig. 12. Experiment I: (a) Total number of bytes sent and (b) energy consumption.

initially configured. The CHs which were not selected as semantic collectors (nodes 10, 11 and 12) faced a reduction in the number of sent packets, because they do not receive packets from semantic neighbors (after they were associated to a semantic collector) and the unrelated nodes do not send relevant packets to CHs. The metrics are calculated and presented in figures as following: packets from each type sent by each sensor (Fig. 14), total number of bytes sent (Fig. 15(a)) and energy consumption (Fig. 15(b)).

8.3. Experiment III: changing aggregation degree

Fig. 13. Experiment II: total number of packets sent.

In Experiment III, we multiplied the current aggregation degree used in experiment II by 10, i.e, the aggregation degree became equivalent to the number of semantic neighbors multiplied by the constant 10. Thus, we increased the number of data packets aggregated into a single report packet. Fig. 16 shows that the number of report messages (DatUp type) sent to the sink node decreased in comparison to the Experiment II. The assessed energy saving was

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

1641

Fig. 14. Experiment II: total number of sent packets (per type).

Fig. 15. Experiment II: (a) total number of bytes sent and (b) energy consumption.

7.27% extra due to the change in the aggregation degree. However, a further study is necessary about the aggregation latency (average time between two consecutive transmissions) which is noticed when the aggregation degree increases. For our event-driven applications, the report messages are used to notify the engineers that an abnormal situation is occurring. So, it is not desirable that report messages arrive late to the sink node. One solution in this case would be to send the first report message whenever the (possible) damage is detected and then the aggregation method is performed. Finally, we can observe that the semantic clustering enables the use of efficient aggregation methods due to the semantic relation among sensors and consequently, we can save more energy. 8.4. Experiment IV: comparison

Fig. 16. Experiment III: energy consumption.

In experiment IV, we compared our semantic clustering with a deterministic clustering method and with the well known LEACH algorithm which forms clusters based on the RSSI. We evaluate the number of sent messages, total

1642

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

Table 3 Memory usage. Semantic clustering (memory in bytes)

Deterministic clustering (memory in bytes)

LEACH (memory in bytes)

CHModule

50,484 ROM 2567 RAM

41,864 ROM 2386 RAM

44,486 2577 RAM

SensorModule

40,760 ROM 2291 RAM

40,532 ROM 2284 RAM

44,486 2284 RAM

of sent bytes, energy consumption, memory usage, data accuracy and the overhead during the setup phase. Some benchmarks are given below. Regarding memory usage (Table 3), the proposed semantic clustering uses more memory of the nodes than deterministic clustering algorithm, because the code is more complex, since it includes the fuzzy system described earlier. Our code occupies 17% extra ROM memory and 7% extra RAM for ClusterHeadModule. For SensorNodeModule, the increase was 0.56% of ROM and 0.31% of RAM. When compared to the LEACH algorithm, our code occupies 11.9% extra ROM memory and save 0.39% of memory RAM for ClusterHeadModule. In contrast, for SensorNodeModule, we save 9.15% of ROM memory and 12.5% of RAM memory. Anyway, our proposal still follows the documentation [29] of Crossbow Technology, which recommends that the maximum of RAM should not exceed 3750 bytes for the processor ATMEGA128L (Micaz motes). It is important that a WSN application does not consume a lot of RAM memory, or it will not have enough space for the program execution. With regard to the overhead of messages generated in the network, the network behavior is similar to scenarios 1 and 2 (Figs. 8 and 9), then, in summary, we will reproduce only the results from scenario 1 (experiment I). As shown in Fig. 17, our proposal obtained a reduction of 69.11% and 54.71% of the total number of sent packets

Fig. 17. Experiment IV: total number of packets sent.

when compared to the deterministic and LEACH clustering methods respectively. This result is a consequence of the fact that, at the both deterministic and LEACH clustering algorithms, the sensors that do not have values of Di;t PLd (i.e, they are not close to the damage site and are not relevant to the monitored event at that time) also transmit a considerable amount of packets, wasting resources. Thus, the deterministic and LEACH clustering algorithms are energy-intensive because of the amount of report messages and communication originated by unrelated sensors. Moreover, our proposal exploits the semantic relation between sensor nodes thus potentially providing a more efficient aggregation method, decreasing the number of report messages and improving the data accuracy. The results (Fig. 18(a)) also show that we faced a reduction of 56.68% and 43.98% in the bytes sent respectively when compared to the deterministic and LEACH clustering methods. Consequently, we save 70.25% of energy (Fig. 18(b)) in comparison to the deterministic clustering and 47.75% of energy in comparison to the LEACH algorithms. Regarding data accuracy, we consider that (i) the aggregation method consists in computing the mean of the Di;t values sent from sensor nodes and (ii) the sensors that have Di;t PLd values are the sensors closest to the damage site. Table 4 illustrates the mean value of the results contained in the report messages sent to the sink for each algorithm. We use the Di;t PLd expression as a parameter of comparison whose Ld value is equal to 0.5439 (see Section 7.6). The semantic clustering is more accurate than the others algorithms. This is due to the fact that in our proposal the set of semantic neighbors is grouped into semantic clusters. Thus, only the values originated by semantic neighbors are considered in the aggregation method performed on the collector semantic. Consequently, the semantic collector aggregates more similar data. In contrast, the others two algorithms aggregate data from both relevant and non-relevant sensors. Concerning the energy used to establish the clusters, we evaluate the messages sent over the network during the setup phase. Table 5 shows the energy consumption due to the messages transmissions during the clustering setup phase for both the semantic clustering and LEACH algorithms. Since the deterministic clustering is a static proposal without any changes in the positions of clusters it is irrelevant for the comparison. The semantic clustering used 0.6 mJ (i.e. 0.18% of the total energy consumed) whereas the LEACH algorithm used 241.20 mJ (i.e. 50.23% of the total energy consumed). This is due to the fact that LEACH algorithm is divided into rounds and each one begins with a setup phase. Unlike LEACH algorithm, our semantic clustering is an event-driven proposal, i.e, there is no clustering rounds. Whenever a new damage is detected, both a new election of the semantic neighbors and a new semantic clustering phase are performed. That is why we also evaluate the average energy consumption related to the setup phase per round. Even in this case, the semantic clustering outperforms the LEACH algorithm.

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

1643

Fig. 18. Experiment IV: (a) total number of bytes sent and (b) energy consumption.

Table 4 Data accuracy (aggregation method). Ld Semantic clustering Deterministic value (mean of the values) clustering (mean of the values)

LEACH (mean of the values)

0.54

0.52

0.55

0.49

messages sent from sensors. Otherwise, if there are several small semantic clusters, there are more semantic collectors and the overhead in this case refers to the control and report messages. Hence, there is a tradeoff we intend to investigate to possibly find out the most suitable cluster size. Acknowledgements

Table 5 Set-up phase (average energy consumption). Semantic clustering

LEACH algorithm

Total (mJ)

Total (%)

Per round (mJ)

Per round (%)

Total (mJ)

Total (%)

0.60

0.18

0.94

0.20

241.20

50.23

This work is partly supported by the National Council for Research and Development (CNPq) through processes 4781174/2010-1 and 309270/2009-0 for Luci Pirmez; 311363/2011-3, 470586/2011-7 and 201090/2009-0 for Flavia Delicato; 481638/2007-5 for José Neuman de Souza; by Research and Projects Financing(FINEP) through processes 01.10.0549.00 and 01.10.0064.00 for Luci Pirmez; and by Carlos Chagas Filho Foundation for Research Support in the State of Rio de Janeiro (FAPERJ) through processes E26/101.360/2010 for Luci Pirmez.

9. Conclusions and further work In this paper, we have studied WSNs clustering based on semantic neighborhood relationships. To this aim, we have proposed a semantic clustering model based on a fuzzy inference system in order to both reduce the energy consumption and improve the accuracy of the data. Our proposal obtained a reduction of 69.11% and 54.71% of the total number of sent packets when compared to the deterministic and LEACH clustering algorithms respectively. Besides, the assessed energy saving was 7.27% extra due to changing the aggregation degree. Concerning data accuracy, our proposal aggregated more similar data than LEACH and deterministic algorithms. In overall, the proposed semantic clustering achieved pretty good results and outcomes. Finally, we will extend our work to consider the optimal clustering solution related to the number of semantic collectors, overhead and energy saving. Whenever a semantic cluster is large, there is an overhead in the CH to handle the

References [1] T. He, S. Krishnamurthy, J.A. Stankovic, T. Abdelzaher, L. Luo, R. Stoleru, T. Yan, L. Gu, Energy-efficient surveillance system using wireless sensor networks, International Conference on Mobile Systems, Applications, and Services, ACM Press, Boston, MA, 2004, pp. 270–283. [2] R.S. Marin-Perianu, C. Lombriser, P.J.M. Havinga, J. Scholten, G. Troster, Tandem: a context-aware method for spontaneous clustering of dynamic wireless sensor nodes, The Internet of Things, vol. 4952, Springer, Berlin/Heidelberg, 2008, pp. 341–359. [3] X.Y.S. Ghiasi, A. Srivastava, M. Sarrafzadeh, Optimal energy aware clustering in sensor networks, Sensors Journal 2 (7) (2002) 258–269. [4] A.A. Abbasi, M. Younis, A survey on clustering algorithms for wireless sensor networks, Computer Communications 30 (14–15) (2007) 2826–2841. [5] F. Bouhafs, M. Merabti, H. Mokhtar, A semantic clustering routing protocol for wireless sensor networks, in: Consumer Communications and Networking Conference, IEEE Computer Society, 2006, pp. 351–355. [6] Y.M. Tashtoush, M.A. Okour, Fuzzy self-clustering for wireless sensor networks, in: IEEE/IFIP International Conference on Embedded and Ubiquitous Computing, 2008, pp. 223–229.

1644

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645

[7] A.R. Rocha, F. Delicato, J.N. de Souza, D.G. Gomes, L. Pirmez, A semantic middleware for autonomic wireless sensor networks, Workshop on Middleware for Ubiquitous and Pervasive Systems, vol. 389, ACM, Dublin, Irlanda, 2009, pp. 19–25. [8] A.R. Rocha, I. Santos, L. Pirmez, F.C. Delicato, D.G. Gomes, J.N. de Souza, Semantic clustering in wireless sensor networks, in: Communications: Wireless in Developing Countries and Networks of the Future, IFIP Advances in Information and Communication Technology, vol. 327, Springer, Boston, 2010, pp. 3–14. [9] D. Bruckner, G. Zucker, J. Simo, W. Herzner, S. Mahlknecht, Semantic neighborhood sensor network for smart surveillance applications, in: International Conference from Scientific Computing to Computational Engineering, 2008. [10] M. Marin-Perianu, P.J.M. Havinga, D-fler: a distributed fuzzy logic engine for rule-based wireless sensor networks, in: International Symposium on Ubiquitous Computing Systems, Springer Verlag, Germany, 2007, pp. 86–101. [11] W. Heinzelman, A. Chandrakasan, H. Balakrishnan, An applicationspecific protocol architecture for wireless microsensor networks, IEEE Transactions on Wireless Communications 1 (4) (2002) 660– 670. [12] S. Hussain, M.R. Islam, E. Shakshuki, M.S. Zaman, Agent-based petroleum offshore monitoring using sensor networks, in: International Workshop on Database and Expert Systems Applications, 2006, pp. 103–107. [13] Crossbow Technology. http://www.xbox.com/.(Accessed 16.03.11). [14] S. Yi, J. Heo, Y. Cho, J. Hong, Peach: power-efficient and adaptive clustering hierarchy protocol for wireless sensor networks, Computer Communications 30 (14–15) (2007) 2842–2852. [15] E.F. Nakamura, A.A.F. Loureiro, A.C. Frery, Information fusion for wireless sensor networks: methods, models, and classifications, Journal ACM Computing Surveys 39 (3) (2007) 1–55. [16] L.A. Zadeh, Making computer think like people, IEEE Spectrum 8 (1984) 26–32. [17] L.A. Zadeh, Outline of a new approach to the analysis of complex systems and decision processes, IEEE Transactions on Systems, Man, and Cybernetics SMC-3 (1) (1973) 28–44. [18] L.A. Zadeh, A computational approach to fuzzy quantifiers in natural languages, Computers and Mathematics with Applications 9 (1) (1983) 149–184. [19] J. Kacprzyk, Group decision making with a fuzzy linguistic majority, Fuzzy Sets and Systems 18 (2) (1986) 105–118. [20] L. Pirmez, F.C. Delicato, P.F. Pires, A.L. Mostardinha, N.S. de Rezende, Applying fuzzy logic for decision-making on wireless sensor networks, in: Fuzzy Systems Conference, FUZZ-IEEE, 2007, pp. 1–6. [21] E.H. Clayton, Y. Qian, O. Orjih, S.J. Dyke, A. Mita, C. Lu, Off-the-shelf modal analysis: Structural health monitoring with motes, in: International Modal Analysis Conference, 2006. [22] F. Herrera, E. Herrera-Viedma, Linguistic decision analysis: steps for solving decision problems under linguistic information, Information, Fuzzy Sets and Systems 115 (1998) 67–82. [23] K. Chintalapudi, T. Fu, J. Paek, N. Kothari, S. Rangwala, J. Caffrey, R. Govindan, E. Johnson, S. Masri, Monitoring civil structures with a wireless sensor network, IEEE Internet Computing 10 (2) (2006) 26– 34. [24] G. Hackmann, F. Sun, N. Castaneda, C. Lu, S. Dyke, A holistic approach to decentralized structural damage localization using wireless sensor networks, in: Real-Time Systems Symposium, 2008, pp. 35– 46. [25] I. Santos, L. Pirmez, E. Lemos, L. Vaz, F. Delicato, J.N. Souza, Resource consumption analysis for a structural health monitoring algorithm using wireless sensor networks, in: Brazilian Symposium on Computer Networks and Distributed Systems, 2010. [26] S. Kim, S. Pakzad, D. Culler, J. Demmel, G. Fenves, S. Glaser, M. Turon, Health monitoring of civil infrastructures using wireless sensor networks, in: International Conference on Information Processing in Sensor Networks, 2007, pp. 254–263. [27] D. Gay, P. Levis, R. von Behren, M. Welsh, E. Brewer, D. Culler, The nesc language: a holistic approach to networked embedded systems, in: ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation, vol. 38, 2003. [28] P. Levis, S. Madden, J. Polastre, R. Szewczyk, K. Whitehouse, A. Woo, D. Gay, J. Hill, M. Welsh, E. Brewer, D. Culler. TinyOS: An operating system for wireless sensor networks, In: Ambient Intelligence, Springer-Verlag, 2005. [29] Xmesh users manual, revision d, pN: 7430-0108-01, 2007.

[30] R. Jurdak, A.G. Ruzzelli, G. O’Hare, Adaptive radio modes in sensor networks: How deep to sleep? in: IEEE Communications Society Conference on Ad Hoc and Sensor Networks, 2008. [31] Datasheet micaz: Wireless measurement system, document Part Number: 6020-0060-04 Rev A. [32] Xserve users manual, revision d, pN: 7430-0111-01, 2007.

Atslands R. Rocha is a Ph.D. student at the Department of Teleinformatics Engineering of the Federal University of Ceará (UFC), Brazil. Her recent research focuses on wireless sensor networks, semantic middleware, computacional intelligence and clustering algorithms for sensor networks. She is currently part of the research team of the Group of Computer Networks, Software Engineering and Systems (GREat/UFC) which performs research and development projects in partnership with other educational institutions and businesses. She is an Assistant Professor of the Federal University of Ceará, where she teaches for undergraduate course.

Luci Pirmez is a professor at the Institute of Informatics of the Federal University of Rio de Janeiro (UFRJ), Brazil. She received her M.Sc. and Ph.D. degree, both in computer science from the Federal University of Rio de Janeiro, Brazil in 1986 and 1996, respectively. She is a member of research staff of the Computer Center of Federal University of Rio de Janeiro. Her research interests include wireless networks, wireless sensor networks, network management and security. She is one of 300 researchers in computer science from all over Brazil selected to be CNPq researchers. She is currently involved in a number of research projects with funding from Brazilian government agencies, in the areas of wireless networks, wireless sensor networks, network management and security.

Flávia C. Delicato is an Associate Professor of the Federal University of Rio de Janeiro, Brazil, where she teaches for undergraduate and postgraduate courses and works as a researcher. In 2009 she was a Visitor Researcher at the Málaga University, Spain. In 2010 she was a visiting academic at the University of Sydney, Australia. She participates in several research projects with funding from International and Brazilian government agencies. Her research interests are middleware, wireless sensor networks and Software Engineering techniques applied to ubiquitous systems. She is a Researcher Fellow of the National Council for Scientific and Technological Development.

Érico Lemos is a master student in the Computer Science course of the Federal University of Rio de Janeiro (UFRJ), Brazil. Currently he is part of the research team of the laboratory LabNet in UFRJ, which develops researches in the area of sensor networks in UFRJ. His research interests are wireless sensor networks, computer network and distributed computing.

A.R. Rocha et al. / Computer Networks 56 (2012) 1627–1645 Igor Leão dos Santos is a student in the Production Engineering course of the Federal University of Rio de Janeiro (UFRJ), Brazil. Currently he is part of the research team of the laboratory called LabNet, which develops researches in the area of sensor networks in UFRJ. His research interests are wireless sensor networks, structural health monitoring and statistical process control.

Danielo G. Gomes is an assistant professor at the Teleinformatics Engineering Department of the Federal University of Ceará (UFC), Brazil. He received his Ph.D. degree in Réseaux et Télécoms from the University of Evry, France, in 2004. Currently, his research interests include mainly the fields of computer systems performance evaluation, cloud computing and WSNs. He has served as a referee for some important journals in the area of computer networks, such as Computer Networks (13891286), Computer Communications (01403664), Ad Hoc Networks (1570-8705), Journal of Network and Computer Applications (1084-8045) and Journal of Network and Systems Management (1064-7570).

1645 José Neuman de Souza holds a Ph.D. degree at Paris VI University, France, from 1994. Nowadays he is a CNPq researcher and professor at the Federal University of Ceará, Brazil, developing research activities and giving lectures at the Computer Science Department. He is Area Editor for the following scientific Elsevier journals: Computer Networks, Computer Communications and Journal of Networks and Computer Applications. He is the Brazilian representative at the IFIP TC6 (communication systems) since 1999.

Suggest Documents