Abstract

Wireless sensor network (WSN) refers to the network formed by sensor nodes for communicating sensed data over the wireless medium. These sensor nodes are mostly deployed randomly in the target area, and hence estimating the coordinates of these sensor nodes through the localization process is an important activity. Majority of the localization algorithms existing in the literature assume the target area to be an obstacle-free 2D terrain. However, such algorithms are not suitable for real-life scenarios where WSNs are actually deployed on 3D terrains that may also have obstacles that hinder the radio signals from the deployed sensor nodes. Hence, factors such as the height of the terrain, the presence of obstacles, etc., require significant considerations while designing algorithms for WSN. The proposed research presents a localization scheme for 3D WSN where the sensor nodes are randomly deployed in a 3D area having large obstacles. The proposed scheme adopts a distributed approach for calculating the virtual coordinates of the sensors using four beacon nodes. The deployment area is divided into regions, and each node computes its virtual coordinates with respect to the obstacle. Simulation results indicate an average localization error of 6.93 m. The proposed scheme requires very less computational effort and can be easily adapted in different scenarios.

1. Introduction

Wireless sensor networks (WSNs) have a wide range of applications in various fields ranging from medicines to army practices which makes it a prominent area of research. Formally, a WSN can be visualized as a connected graph where each node represents a sensor, and connecting edges depict communication links between different sensors [1]. The communication links are restricted by the maximum distance up to which each node can transmit data. The reason to restrict the maximum transmission and sensing distance of sensors is to conserve energy and hence improve the lifetime of the network. Replacing batteries or recharging them is not an option available in the case of WSN, and if available too, then also not considered a good practice in this context. WSNs can be mathematically formulated as a connected graph , where set of sensor nodes and connecting neighbor. Connecting neighbors such that distance between and .

The main objective of sensors in WSN is to sense and notify any change in the characteristics of the region in which they are deployed. Sensor nodes are mostly deployed randomly in the target region. For performing their objective functions, they need to be location aware. Location information is useful in routing as well as it adds value to the sensed information, i.e., tagging sensed information with location makes the information more valuable. For instance, information regarding a fire in a forest is meaningless if no information about the area where fire has occurred is available. The process of estimating location information is termed localization.

In WSN, the main objective of the localization process is to determine the location coordinates of the sensor nodes with minimal energy consumption and computing complexity [2]. The distance between the reference node and the target node is a crucial aspect in the localization process. Localization algorithms may be divided into two groups depending on the method used to compute distance: (1) range-free localization and (2) range-based localization. Range-based localization methods need additional hardware and calculate distance information using the physical features of radio waves. In accordance with their physical properties, the localization process can be further classified as received signal strength indicator [3], time of arrival [4], time difference of arrival (TDoA) [5], and angle of arrival (AoA) [5]. To calculate distance, range-free localization algorithms use existing topological information such as connectivity. Distance Vector-Hop (DV-Hop) is a range-free localization technique that uses the traditional distance vector packet for calculation.

Sensors in the deployment field possess 3D coordinates. Many works in the literature consider the top view of field and hence avoid the height of the terrain. This assumption works well when we go for an almost plain field. However, it may not be feasible in scenarios such as forests, mountains, underwater, or air suspension. There are various situations where height acts as an important factor of scenario and cannot be ignored, as it may result in incorrect information. Figures 1 and 2 justify our point of height consideration by considering one situation.

This paper presents a range-based localization algorithm using received signal strength indicator (RSSI) for WSN deployed in a 3D area. The efficiency of the virtual coordinates of the sensor nodes for various applications has already been emphasized upon in the existing works such as Anwit et al. [6]. The proposed work, hence, utilizes the concept of virtual coordinates of the nodes and presents a distributed approach for computing the 3D location of the sensor nodes. The proposed work estimates the location coordinates in two phases where in the first phase, the x and y coordinates of the sensor nodes are estimated, and the z coordinate is calculated in the second phase. In order to model the real-world scenario, few obstacles are also considered to be present in the deployment region.

The rest of the paper is organized as follows: Section 2 reviews the existing literature related to WSN localization. The system model is discussed in Section 3, while the computation phases are presented in Section 4. Section 5 sheds light on the results and also provides an analysis of the results obtained. Lastly, Section 6 concludes with a brief discussion of future works.

Many algorithms for localization in WSN exist in the literature that aims to estimate the locations of the deployed sensor nodes effectively and efficiently. These algorithms have been reviewed by many authors in recent years, such as Kumari et al. [7] and Bhat and Santhosh [8]. This section reviews a subset of such algorithms. A majority of these algorithms employ multidimensional scaling (MDS) for localizing sensor nodes using a small number of sensor nodes. These algorithms are mainly proposed for the WSNs deployed in a 2D plane. Ji and Jha [9] proposed MDS based localization scheme for WSN for addressing the challenges posed by uneven terrain and anisotropic topology. The proposed scheme utilizes a distributed localization approach using MDS where each sensor node computes a local view of the network, which is further compared with the actual physical coordinates of the anchors for rectifying the estimate. This process is carried out by each sensor node with the aim of obtaining a correct estimate of the network. Local optimization aims to minimize the localization error. The scheme, however, suffers from the major drawback of increased energy consumption by the sensor nodes due to the iterative nature of the algorithm executing on each sensor node for localization. Hierarchical MDS is a localization algorithm for 2D WSN proposed by Yu and Wang [10] comprising three phases: clustering, intracluster localization, and local coordinates aggregation. The algorithm, however, fails to infer the global coordinate system using the local coordinate system in case of disjoint clusters. Shang et al. [11] proposed an MDS MAP algorithm that produces a map of the nodes in WSN using classical MDS. Two different variants of this algorithm, MDS-MAP (R) and MDS-MAP (P), are proposed by Shang and Ruml [12] for improving the efficiency. The use of a cooperative strategy coupled with MDS-MAP (P) for localizing the sensor nodes by assembling the relative estimates computed by each node is proposed by Shang et al. [13].

Localization techniques that utilize the shortest path approach for computing distances have been reported to suffer from higher data rates. Kumar et al. [14] proposed a set of localization algorithms with respect to various characteristics of the sensor nodes, such as deployment type, mobility, and processing capabilities. Bulusu et al. [15] proposed a localization scheme for estimating the location of sensor nodes in 2D WSN using a conventional centroid strategy. The scheme is further extended for applicability in 3D WSN scenarios in the work proposed by Chen et al. [16]. The authors apply the centroid theorem to the volume-coordinate system for the coordinate tetrahedron, thereby improving the accuracy of the former strategy. The algorithms proposed by Bulusu et al. [15] and Chen et al. [16], however, require a large number of sensor nodes. Further, the accuracy of these algorithms has been reported to be inversely proportional to number of anchor nodes. A comprehensive review of the localization algorithms for WSN is presented by Han et al. [17]. The algorithms are classified on the basis of node as well as anchor mobility. The paper reviews localization algorithms for both 2D as well as 3D scenarios. The algorithm proposed by Chaurasiya et al. [18] is based on classical MDS and adopts a centralized approach for localizing the sensor nodes deployed in 3D WSN using five anchor nodes. The accuracy of the proposed scheme has been reported to be directly proportional to the number of anchor nodes.

Various localization algorithms have been proposed by Han et al. [19], Bhat and Venkata [20], Singh et al. [21], Shah et al. [22], Fan et al. [23], Bhat and Santhosh [24] for the anisotropic fields have been proposed where a majority of them considers hole or some shaped structure in the network and identifies the boundary nodes first. The research presented by Raguraman et al. [25], Huang et al. [26], Bhat and Venkata [20], and Singh et al. [21] further optimizes the estimated locations in order to reduce the location error.

Many authors, such as Kaur et al. [27], Cai et al. [28], Bhat and Venkata [20], and Huang et al. [26], have proposed the use of the variants of DV-Hop (either by modifying DV-Hop or using it as a base for location computation and then further optimizing it) for the localization process. Xu et al. [29] have used the concept of with DV-Hop to increase the accuracy of localization. The concept of degree of coplanarity is used by Xu et al. [29]. They combined DV-HOP concept with coplanarity to increase the accuracy of localization.

Yildiz et al. [30] present an algorithm in which each unknown node requires four neighboring anchor nodes for localization, and the newly localized nodes may act as anchors for other unknown nodes. Singh and Mittal [31] used only one anchor node to localize the sensor nodes. The anchor node is virtually projected in six directions using hexagonal projection, and these virtual anchors are used in the localization process. Nguyen et al. [32] have proposed a hybrid localization algorithm by combining the RSSI and AoA approaches. The authors have used quantized RSSI values rather than analog ones. Liang et al. [33] have used TDoA for the localization process. The authors have used opposition-based learning and parallel strategies Artificial Gorilla Troop Optimizer (OPGTO) for reducing the localization error caused by TDoA.

Bhat and Santhosh [24] have proposed a range reduction-based localization algorithm by utilizing the properties of hop-based and centroid methods. The close-by neighboring nodes are identified within a predefined threshold, and only such reference (anchor) nodes are used for localization rather than all anchor nodes. A number of researches have applied the techniques of geometric modeling for the localization of WSNs deployed in 3D planes. Fan et al. [34] proposed an approach by representing the distance between the sensor nodes in a WSN as a dissimilarity matrix. This matrix is subjected to multidimensional scaling followed by Helmet Transformation for deriving global coordinates from the local coordinates of the sensor node. The work proposed by Shan and Sun [35] aims to localize 3D WSN by employing a location assistant that broadcasts its location and estimates the distance using RSSI in a periodic manner. This information is used to predict the node state and update the iteration of the unscented Karman Filter for localizing the nodes. Particle swarm optimization (PSO) is utilized by Zhou et al. [36] for achieving 3D localization in WSN. Their work considers a spherical target area and manipulates RSS using pre-processing factors. This minimizes the disjunctive between distance estimation and RSS. Few works, such as Bayrakdar [37] and Cao et al. [38], have extended the localization methods for 3D WSN using flying anchors. Every anchor has a GPS module and flies across the deployment region while broadcasting its location information. The sensor nodes infer their own location coordinates from this location information by employing basic geometrical techniques. Teymorian et al. [39] proposed a method for underwater WSN in which they transform the 3D scenario into a 2D one using nondegenerative projection. However, they have a strong prior assumption that nodes are aware of their depth.

Deploying WSN in 3D terrains poses a number of challenges that need to be addressed for efficient coverage of the target area as well as communication of sensed data within the network. Modeling the target area as a 3D terrain having obstacles results in an uneven plane having a height factor as well. Moreover, the presence of obstacles leads to blockage of radio signals transmitted/received by the sensor nodes. Hence, in order to ensure accurate estimation of the location coordinates of the deployed sensor nodes, it is important to consider additional constraints as well.

One of the most widely adopted approaches for localization in WSNs is the use of static noncoplanar beacon or anchor nodes. WSNs deployed in 3D regions utilize radio signals from a minimum of four such anchor nodes for estimating the location coordinates of a single sensor node. Owing to the fact that the presence of obstacles in the deployment region may obstruct the path of the radio signals of the anchor nodes, localizing all the nodes in the WSN shall require a large number of anchor nodes for ensuring that every sensor node receives signals from at least four anchor nodes. A review of the existing literature reveals that the number of required anchor nodes may increase up to half of the total deployed sensor nodes in a region. Hence, optimizing the number of anchor nodes required for localization in 3D WSNs becomes a significant area of research.

Localization approaches that utilize anchor nodes may further be classified as per the following strategies: range-based and range-free. These approaches can adopt centralized or distributed computation of the location coordinates. Range-based strategies mainly rely on the RSSI for distance computation. The most commonly utilized approach is that of MDS and its variants. They are mainly centralized in nature, leading to complex computations performed by a single entity. Other strategies may involve extending lateration strategies for localizing WSN nodes in 2D terrains to quadrilateration that involves computation of the additional dimension.

Localization strategies such as weighted centroid, DV-Hop are range-free approaches and require less information than range-based strategies. They are also cost-efficient due to no requirement of any additional hardware. However, they are usually found to provide less accurate results, and as such, they are often optimized using algorithms such as PSO, ant-colony optimization, etc., for computing optimal location coordinates of sensor nodes. These optimization techniques are computationally intensive, and hence executing them on individual resource-constrained sensor nodes may not be a feasible choice.

3. System Models

This section encloses the details of the proposed work. Sensors do not need to communicate with the outside world so, the work deals with the virtual coordinates of sensors. The assumptions considered in this work regarding the target area and other components are as follows:(i)Beacon nodes and base station (BS) have no resource constraints(ii)The location of the BS is outside the target area(iii)Nodes of the network are heterogeneous(iv)The target area contains large obstacles that lead to signal loss.

3.1. Energy Consumption Model

A sensor node is not only limited to sensing data from the environment. It, additionally, performs other activities as well such as computation, data transmission, and reception. Further, energy consumption by a sensor node during the transmission and reception of data is much larger than that required for sensing and computation [40]. The proposed work adopts the two widely considered energy models for WSN: multipath fading channel model and free space propagation model. The mathematical representation of the considered energy model is represented by Equation (1).

Energy required for transmitting data comprising of bits over distance can be formulated as follows:where denotes the energy consumed by a sensor node for coding, filtering, modulation, etc. when it transmits data of one bit. represents the energy consumption by the amplifier in the free space model. represents the energy consumption by the amplifier in the multipath fading model. denotes the Threshold distance and is computed by the following:

Energy consumed in receiving p bits of data is given by the following:

3.2. Mathematical Prerequisites

(i)RSSI ranging principle [41]: this principle utilizes the strength of the radio signals to estimate the distance between the communicating entities. The strength of the radio signals decays with distance, and as such, nodes that are far away from the node sending the radio signals will receive signals with weaker strength as compared to those that are nearer to the sender node. Considering the power strength of the transmitted signal as , the sender and receiver are separated by distance and represents the transmission factor which is governed by the environmental factors, the received power strength of signal () can be calculated as follows:(ii)Given two points and , distance () between and can be computed as follows:(iii)Given three sides of a triangle a, b, and c, an the angle of a triangle will be as follows:

3.3. Deployment Scenario

The paper presents an algorithm, which considers region with obstacles. Obstacles here do not refer to terrain irregularities; they are large objects in the fields which create shadowing regions for signals. Four anchor nodes are placed on the boundary of field over the same height. The proposed idea is flexible with the exact position of anchors, but they are not movable once the setup is done. Figure 3 represents the initial setup considered in simulation results. The position of anchors is subject to knowledge of obstacle location.

4. Computational Phases

This section provides a detailed description about the various phases involved in the proposed localization scheme for WSN in 3D scenario.

4.1. Region Identification

The deployment area comprises multiple regions where individual region denotes the availability of signals from the anchor nodes. A 4 byte identifier denoted by that is used to represent each region. The value of each byte denotes the signal strength received by a sensor node from the corresponding anchor node. For instance, the region code for node indicates that the node is receiving the signal from anchor node with the signal strength of 2 dBm. Figure 4 represents a deployment area comprising several regions bounded by dotted lines. The polygon denoted by red boundaries shows the region in which only the signals from beacon node 1 and beacon node 4 are received by the sensor nodes. The diffraction and reflection of the signals are ignored for the sake of simplicity in visualization.

Each node broadcasts its counter value. Node maintains the counter values of its neighbor node, which can help to determine its neighbor’s location with an obstacle. Region identification is covered in Algorithm 1.

Input: Target region , positions of beacons, position of obstacles
Output: Beacons reachability to nodes
forall node networkdo
  initialize to
end
forall node networkdo
  foreach do
   ifnode is not in shadowing region of
    then
    Set to
   end
  end
end
4.2. Coordinates Computation

The beacon nodes are statically deployed at the four corners of the considered target area, as shown in Figure 5. When a sensor node receives radio signals (messages containing the location coordinates of a beacon node) from at least two different beacon nodes, it can compute its distance from these beacon nodes using Equation (4). The location coordinates of the sensor node can, further, be computed as per Equation (5).

Consider a sensor node with coordinate that receives location message from beacon nodes and . The computed distance of the sensor node from beacon node is and from is . This information can be used to formulate equations of circles with the beacon nodes as the center. Hence, a circle with beacon node as the center can be represented as Equation (7), while for as center, it can be written as Equation (8).

As per Figure 5, if and are on the corners of different smaller sides of the target region, i.e., , then on subtracting Equation (8) from Equation (7) and simplifying the x and y values can be determined as follows:where and can be computed as follows:

However, if both and are on the corners of the same smaller sides of the target region, i.e., if , then on subtracting Equation (8) from Equation (7) and simplifying the x and y values can be computed as follows:where and can be computed as follows:

The solution of the quadratic equation shall yield two different values representing the coordinates of the sensor node. The position of one of these x and y values will be within the boundaries of the deployment area and hence, will be considered the coordinates of the sensor nodes.

4.3. Height Computation

The height coordinate of the sensor nodes can be computed using the signal from a single localized node, as shown in Equation (6). The scenario depicted in Figure 6 shows the height of sensor node location S (a, b) and beacon node placement B (x, y) as and , respectively.

In Figure 6, position A is only the projection of the beacon node on the same xy plane but at a height equal to that of the sensor node S. As such, the x and y coordinates of point A are same as that of the beacon node. Hence, the distance can be computed by the sensor node S using Equation (5). Distance from beacon node B is known to sensor node S using RSSI ranging principle as per Equation (4). The angle SAB will be since S and A are on the same height, and A is the vertical projection of B. Hence, the height can be computed as follows:where BA can be computed using Equation (6).

The approach adopted for computing the height of the sensor nodes can work efficiently even when the nodes are coplanar. This can be attributed to the fact that the approach does not utilize all the beacons for computing x, y, and z coordinates simultaneously. Instead, multiple beacons are utilized for initially computing x and y coordinates only similar to a 2D scenario. However, for computing the z-coordinate, the sensor node requires only one beacon, and based on the RSSI signal from one beacon, the height is computed.

4.4. Proposed Algorithm for Localization

The proposed algorithm employs four beacon nodes deployed at the same height in the deployment area. The entire deployment area is logically divided into smaller regions that are characterized by a subset of the beacon nodes whose signals are being received the sensor nodes placed in that region. The presence of obstacles renders some regions as shadowed areas where the deployed sensor nodes cannot receive the signals from one or more beacon nodes. The region in which a sensor node is deployed is identified by the received signals from the beacon nodes, which are stored by the corresponding sensor node. Initially, the proposed algorithm computes the x and y coordinates of the sensor node on the basis of the signals received from at least two beacon nodes. The algorithm further evaluates the z coordinate of the sensor node. The proposed algorithm is formally presented as Algorithm 2.

Input: Location of beacons
Base station sends control message to beacons to start transmission
Beacons share control message among them
foreach do
  Transmit data messages containing location information
end
foreach nodedo
  ifnode receives a messagethen
   ifduplicate messagethen
    Discard message
  else
    
    Update info table
    ifthen
     Compute x and y
     If successfully computed,
      computed = 1
     Compute z
     ifcomputed = = 1then
      retransmit and goto sleep
     else
      wait for message
     end
    end
   end
  end
end

5. Results and Analysis

The proposed protocol was tested using the simulation tool Qualnet (Version 7.3) on an Intel Core i5-4990 processor, 3.6 GHz CPU and 4 GB RAM running on the Microsoft Windows 7 professional platform. The scenario consists of obstacles, and sensor nodes are deployed randomly in objective terrain. For the simulations, we have taken a 100 × 100 × 20 m3 deployment area in which 100–200 nodes are randomly scattered. The values of the parameters used are mentioned in Table 1.

The position of the anchor points , , , and are (0, 0, 15), (0, 100, 15), (100, 0, 15), and (100, 100, 15), respectively. Obstacles have a height much higher than nodes.

The efficiency of the algorithm is presented in terms of average error in the location coordinates of the deployed sensor nodes computed using the proposed algorithm. The location error of each node is recorded and averaged for the total number of deployed nodes for obtaining the average location error. Simulations are performed for different scenarios that consider the variable number of sensor nodes deployed in a 3D terrain having different number of obstacles. The location errors obtained for each node in different scenarios are presented in Figures 710. In each figure, the Node ID is shown on x-axis, while the computed location error is depicted on y-axis. Node IDs having a bar of zero height indicates that the node was not able to receive signals from a sufficient number of anchor nodes and hence are not localized. The average location error is computed by taking the average of the location error for all the nodes.

Figures 7 and 8 present the location error of 100 sensor nodes in the presence of three and two obstacles, respectively. Error in the computed location coordinates of 50 sensor nodes in the presence of three and two obstacles are shown in Figures 9 and 10, respectively. The computed location errors in each scenario are averaged, and the average location error for each scenario is presented in Table 2.

Table 2 depicts the average location error in four different scenarios having a different number of sensor nodes and a different number of obstacles. The average location error obtained by using the proposed localization algorithm is less than 10 m. Further, it can also be inferred from Table 2 that the localization error increases with the increase in the number of obstacles. However, the increase is within the feasible limits. The average location error becomes higher in the scenario having a smaller number of nodes. This can be attributed to the method of obtaining average localization error. Reducing the number of nodes increases the average error.

A comparison of the proposed work with NDEMDS [18] is presented in Figure 11. The comparison is depicted in terms of variation in the number of nodes vs. variation in the average location error. The results obtained using the proposed algorithm in scenarios with two obstacles are shown as a line graph for Proposed_2 while scenarios having three obstacles are shown as Proposed_3. The comparison graph indicates that the proposed work gives stabilized error in the range of 0–10 m, which is better than that of NDEMDS, which gives high variation in error. Hence, it can be inferred that the proposed algorithm is able to efficiently localize the sensor nodes in a 3D scenario having a different number of obstacles.

6. Conclusions and Future Works

The majority of the existing literature regarding localization schemes for WSN considers the deployment area of the sensor nodes as a 2D plane, thus ignoring the height/depth factor of the terrain leading to inaccurate results in real-world scenarios. The work proposed in this paper aims to address this issue by considering the height/depth factor of 3D environment along with the presence of obstacles. This paper proposes a distributed algorithm for estimating the location coordinates of sensor nodes in WSN that are randomly deployed in a 3D space having obstacles. The proposed work employs beacon signals from anchor nodes for estimating the location information of the deployed sensor nodes. The reception of the minimum number of beacon signals by the sensor nodes required for the location estimation is ensured by utilizing four anchor nodes. Since every node is responsible for evaluating its own location coordinates, the complexity involved in the localization of all the sensor nodes by the BS only is avoided. Further, the single transmission of data from each node throughout the algorithm execution ensures less energy consumption at each node which otherwise will be high if more information is exchanged between nodes/BS in the localization process.

As the objective of the proposed work is to design a suitable algorithm for localizing sensor nodes in 3D regions having obstacles, the work is evaluated in terms of localization-related metrics only. However, the proposed work can be further empirically analyzed from an energy efficiency point of view as well. Inclusion of appropriate radio irregularity model shall also be explored since a radio wave has some degree of irregularity in actual 3D scenarios since obstacles may lead to reflection and refraction of the radio waves. Other future enhancements may include optimizing the number of employed anchor nodes. This may be achieved by designing suitable placement strategies for anchor nodes or by utilizing additional hardware. The communication overheads may be further reduced by allowing only significant data to be transmitted. Efficient routing schemes can also be proposed in conjunction with the proposed work. Region codes may also be utilized for inferring significant characteristics of the network.

Data Availability

No dataset is associated with this work.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Authors’ Contributions

All authors contributed equally to this work.