# An Energy Efficient Anchor-Free Localization Algorithm for No-Identity Wireless Sensor Networks

Authors: Zhe Qu; Minglei Shu; Ming Yang; Chongqing Zhang; Nuo Wei; Qingbei Guo; Tao Du
Journal: International Journal of Distributed Sensor Networks
 (2015)

---

## Abstract

A wireless sensor network (WSN) model by analyzing the limitations of existing localization algorithm is proposed in this paper. Specifically, neither the anchor nor the ID is required in the proposed model, and the node function is limited. The hardware function of the node in our model is independent of the MAC protocol. Moreover, based on the proposed WSN model, we design an energy efficient anchor-free localization algorithm for no-identity WSN. Instead of multiple measurements, mathematical calculation is adopted to acquire the position information. Subsequently, the effectiveness of the algorithm is confirmed by rigid theory. The simulation results show that the proposed algorithm can improve the performance of localization and energy efficiency in WSN significantly.


---

## Body

## 1. Introduction

Wireless sensor network (WSN) is a special kind of Ad hoc network [1], and it is usually applied in the areas which are difficult for wiring or power supply, depopulated regions (e.g., pollution, environment that cannot be destroyed, or hostile areas), some other emergency circumstances (such as natural disasters and damage of the fixed communication network), and so forth. The WSN does not need the support of fixed network. Moreover, it has characteristics of easy deployment, robustness, self-organization, and so forth [2, 3]. And hence, it has attracted wide attention and has been applied widely in military, industry, traffic, environmental protection, healthcare, and other fields [4–6]. Generally, WSN is composed of numerous cheap and tiny sensor nodes whose functions are relatively weak, and it interacts with the outside world using the gateway. WSN is usually deployed in a target area in the form of multihop network, which is dynamic, wireless connected, and self-organized. The main function of WSN is to collect and monitor physical or environmental conditions in the target area and send the information through the network to the end users [7]. Normally the sensor nodes and gateway are stationary once their deployment completed, and this is the main difference between the Ad hoc network and the WSN. Sensor nodes, perceptual objects, and the end users constitute the three elements of sensor networks [8].Different from traditional networks, the nodes of WSN are randomly distributed in the sensing area and do not have wired connection and their positions and connectivity can be managed and maintained by routers or other equipment [9–11]. The energy and computing ability of node are limited; furthermore, the direct communication distance between nodes is short, and hence the complex operation cannot be done by the sensor node [12–14]. WSN needs operations (such as neighbor relationships discovery, nodes location calculation, and dynamic routing selection) to realize the discovery of network structure. Considering the localization problems mentioned above, it is necessary for each node to obtain the following information in the initialization stage: sink node position, neighbor node ID, and the distances and angles between neighbor nodes. And then, the information is used to calculate their relative positions or absolute positions in the network.As mentioned above, ID is usually necessary for localization method, but it limits the flexibility and scale of the network. However, there is almost no research on no-identity WSN in existing localization algorithms. In this paper, we propose a network model without setting ID information. On one hand, the node function is weakened, so that the network can complete communication and localization regardless of node ID information. On the other hand, we increase the flexibility of the entire network; that is, instead of obtaining the global information through the sink node, the local information of nodes is used to maintain the network.In this paper, we propose an energy efficient anchor-free localization algorithm for no-identity WSN. The rest of this paper is organized as follows. In Section2 we analyze the related researches on WSN localization problem. The proposed WSN network model is presented in Section 3; moreover, a detailed design of a localization algorithm is proposed based on this model. In Section 4, the proposed algorithm is analyzed theoretically. Then, simulations and experimental results of the algorithm are provided in Section 5. Finally, we conclude the paper in Section 6.


## 2. Related Work

### 2.1. Methods of Distance and Angle Measurement

The locations of the sensor nodes can be classified as absolute locations (i.e., the coordinate in world coordinate system) and relative locations (i.e., the coordinate within the sensing area). In general applications, the relative positions of nodes within the entire network are usually needed to distinguish nodes. The essence of localization is to obtain the position of the sensor nodes. However, the locations of the sensor nodes and the distances between each node are unknown in the initial stage, which can be obtained via measurement and calculation.Ranging technologies include RSSI (Received Signal Strength Indication), ToA (Time of Arrival), and TDoA (Time Difference of Arrival) [15]. These methods are mainly based on the hardware implementation; that is, the hardware devices are employed to detect transmission signal and calculate distance. RSSI calculates the distance based on the energy loss of wireless signal transmission; that is, the receiver detects the signal strength after receiving the packet, and the distance between the sender and the receiver is calculated according to the degree of signal attenuation [16]. In RSSI, it is easy to implement since the hardware requirements are not high, and the measuring error is relatively small. However, the path loss coefficient has to be set in this method, which is greatly influenced by the environmental change. ToA calculates the distance between the sender and the receiver according to the signal propagation time. This approach requires the synchronization of the sender and receiver, which is difficult to achieve under the distributed environment of WSN. Then, TDoA is proposed to overcome this defect. In TDoA, the distance is calculated by the Time Difference Of Arrival, and the sender needs to send two data packets in two different frequency bands, such as radio spectrum and infrared wavelengths, and then the difference of packet arrival time is used to calculate the distance [17]. This method avoids the synchronization problem, which is easy to be deployed in a distributed environment. However, the measuring error is relatively large, and the energy consumption is huge.Similarly, hardware is used to realize the angle measuring technologies. The basic idea is that the receiver perceives arrival direction of signal by antenna array or other devices to calculate the relative angle between the receiver and sender. Finally, the node location can be calculated through triangulation method [15, 16]. The challenge of this method is how to transform the local angle information into unified global angle information.


### 2.2. The Existing WSN Localization Algorithms

The existing localization algorithms can be classified into anchor-based algorithms and anchor-free algorithms. Anchor is a node with localization device. Energy, information transmission capacity, and computing power of anchor are not restricted. The core of the anchor-based algorithms is that the anchors broadcast localization information to the network, and the locations of the sensor nodes are obtained by comparing and calculating the information received from different anchors. These algorithms have the advantages of high accuracy, less energy consumption, and low computation complexity. But the biggest drawback is that the anchor nodes need to be deployed on the special location of sensing area, which limits the scale and scope of the sensing area. Furthermore, the deployment flexibility is poor and the hardware cost is high. So the research on this kind of algorithm is limited. Anchor-free algorithms are research hotspots currently, and the core idea is to replace the anchor using the sink node. The sink node sends angle information, distance information, and so on to sensor nodes, and sensor nodes use such information to calculate their locations themselves. The anchor-free algorithms overcome the inflexibility of the anchor-based algorithms, but it needs a lot of communication and computation of sensor nodes, which aggravate the nodes energy consumption. Then, the network lifespan is reduced, and the error is relatively big.WSN localization algorithms are proposed based on the angle and distance measurement methods as mentioned in Section2.1, and the information of neighbor node is mainly used to do localization. Čapkun et al. proposed a Self-Positioning Algorithm (SPA) in [18]. The algorithm used the distances between the nodes to build a relative coordinate system in which the node positions were computed. However, the SPA algorithm required a lot of computation and communication between nodes in the process of positioning, and the computational complexity increased with the number of nodes by exponential growth, which was not suitable for large-scale network.Iyengar and Sikdar analyzed the defects of the SPA and proposed a Scalable and Distributed GPS Free Positioning for Sensor Networks (SDGPSN) [19]. The algorithm adopted the distributed concept, and cluster head was used to establish global coordinate system, which accelerated the execution speed and reduced the computational complexity. Therefore, SDGPSN was more suitable for large-scale network deployment. But the localization error would be accumulated during clustering, which led to low global localization accuracy. Moreover, huge communication was required in this algorithm, and this resulted in large energy consumption.The anchor-based algorithms have been described previously. Youssef et al. proposed an Accurate Anchor-Free Localization (AAFL) algorithm based on clustering [20]. The localization efficiency was ensured without the help of anchor, and the localization error was small. However, high connectivity of the network was required in this algorithm, and hence the flexibility of the network structure would be affected. Furthermore, the communication burden of the edge nodes would be larger than other nodes, and the life span of the network would be affected since the edge nodes were exhausted earlier due to overuse.Qu and Wicker proposed a lightweight anchor-free localization-routing algorithm on the view of a special application, which sets the sensing area as a circular form and the sink node to be located in the center point [21]. In order to realize routing selection, the neighbor node list information would be formed during localization. But the localization accuracy of the algorithm was not high, and the error would be accumulated in each node. Consequently, the algorithm had a strict application background, which was out of universality. And the routing selection was simple, which could not realize the global dynamic adjustment.In 2008, Jordt et al. proposed an anchor-free localization algorithm which could obtain the sensing range [22], and the algorithm achieved accurate localization without using anchor. Similar to the algorithm in [21], in order to realize the global unification, the location information of sink node was used to adjust local coordinate system. Compared with the algorithm in [21], the localization of this algorithm was more accurate. However, the communication cost was high, and the energy efficiency was low since the energy consumption in positioning stage was excessive.An algorithm named LOCOMOTE was proposed in [23] to realize data transmission and localization at the same time, which had the advantages of simplicity, high robustness, and good dynamism. However, all the nodes should communicate directly with the sink node, which limited the scale of the network significantly. Additionally, the energy consumption of flooding transmission was too large, and the energy efficiency was relatively poor.In [24], the researchers added a few shortcuts to reduce the average energy expenditure per sensor node, and hence, energy efficiency and accurate localization have been achieved. In [25], RSSI was used to improve the localization accuracy, coverage, and robustness. References [26–28] described some methods for WSNs to self-locate in indoor environments. Moreover, mobile anchor was proposed to help localization in [29, 30]. Some improvements had been achieved, but anchor was still necessary in the proposed algorithms.Although existing anchor-free localization algorithms can solve the localization problem without anchor node, there still exist some defects, such as high computation complexity, low localization accuracy, and lack of theoretical support. Furthermore, most of the existing researches focus on improving the localization accuracy, and hence the node energy consumption problems have been ignored, which leads to low energy efficiency in these algorithms. Therefore, how to realize fast, accurate, and energy efficient node localization based on limited information is the focus and trend of future research.


## 2.1. Methods of Distance and Angle Measurement

The locations of the sensor nodes can be classified as absolute locations (i.e., the coordinate in world coordinate system) and relative locations (i.e., the coordinate within the sensing area). In general applications, the relative positions of nodes within the entire network are usually needed to distinguish nodes. The essence of localization is to obtain the position of the sensor nodes. However, the locations of the sensor nodes and the distances between each node are unknown in the initial stage, which can be obtained via measurement and calculation.Ranging technologies include RSSI (Received Signal Strength Indication), ToA (Time of Arrival), and TDoA (Time Difference of Arrival) [15]. These methods are mainly based on the hardware implementation; that is, the hardware devices are employed to detect transmission signal and calculate distance. RSSI calculates the distance based on the energy loss of wireless signal transmission; that is, the receiver detects the signal strength after receiving the packet, and the distance between the sender and the receiver is calculated according to the degree of signal attenuation [16]. In RSSI, it is easy to implement since the hardware requirements are not high, and the measuring error is relatively small. However, the path loss coefficient has to be set in this method, which is greatly influenced by the environmental change. ToA calculates the distance between the sender and the receiver according to the signal propagation time. This approach requires the synchronization of the sender and receiver, which is difficult to achieve under the distributed environment of WSN. Then, TDoA is proposed to overcome this defect. In TDoA, the distance is calculated by the Time Difference Of Arrival, and the sender needs to send two data packets in two different frequency bands, such as radio spectrum and infrared wavelengths, and then the difference of packet arrival time is used to calculate the distance [17]. This method avoids the synchronization problem, which is easy to be deployed in a distributed environment. However, the measuring error is relatively large, and the energy consumption is huge.Similarly, hardware is used to realize the angle measuring technologies. The basic idea is that the receiver perceives arrival direction of signal by antenna array or other devices to calculate the relative angle between the receiver and sender. Finally, the node location can be calculated through triangulation method [15, 16]. The challenge of this method is how to transform the local angle information into unified global angle information.


## 2.2. The Existing WSN Localization Algorithms

The existing localization algorithms can be classified into anchor-based algorithms and anchor-free algorithms. Anchor is a node with localization device. Energy, information transmission capacity, and computing power of anchor are not restricted. The core of the anchor-based algorithms is that the anchors broadcast localization information to the network, and the locations of the sensor nodes are obtained by comparing and calculating the information received from different anchors. These algorithms have the advantages of high accuracy, less energy consumption, and low computation complexity. But the biggest drawback is that the anchor nodes need to be deployed on the special location of sensing area, which limits the scale and scope of the sensing area. Furthermore, the deployment flexibility is poor and the hardware cost is high. So the research on this kind of algorithm is limited. Anchor-free algorithms are research hotspots currently, and the core idea is to replace the anchor using the sink node. The sink node sends angle information, distance information, and so on to sensor nodes, and sensor nodes use such information to calculate their locations themselves. The anchor-free algorithms overcome the inflexibility of the anchor-based algorithms, but it needs a lot of communication and computation of sensor nodes, which aggravate the nodes energy consumption. Then, the network lifespan is reduced, and the error is relatively big.WSN localization algorithms are proposed based on the angle and distance measurement methods as mentioned in Section2.1, and the information of neighbor node is mainly used to do localization. Čapkun et al. proposed a Self-Positioning Algorithm (SPA) in [18]. The algorithm used the distances between the nodes to build a relative coordinate system in which the node positions were computed. However, the SPA algorithm required a lot of computation and communication between nodes in the process of positioning, and the computational complexity increased with the number of nodes by exponential growth, which was not suitable for large-scale network.Iyengar and Sikdar analyzed the defects of the SPA and proposed a Scalable and Distributed GPS Free Positioning for Sensor Networks (SDGPSN) [19]. The algorithm adopted the distributed concept, and cluster head was used to establish global coordinate system, which accelerated the execution speed and reduced the computational complexity. Therefore, SDGPSN was more suitable for large-scale network deployment. But the localization error would be accumulated during clustering, which led to low global localization accuracy. Moreover, huge communication was required in this algorithm, and this resulted in large energy consumption.The anchor-based algorithms have been described previously. Youssef et al. proposed an Accurate Anchor-Free Localization (AAFL) algorithm based on clustering [20]. The localization efficiency was ensured without the help of anchor, and the localization error was small. However, high connectivity of the network was required in this algorithm, and hence the flexibility of the network structure would be affected. Furthermore, the communication burden of the edge nodes would be larger than other nodes, and the life span of the network would be affected since the edge nodes were exhausted earlier due to overuse.Qu and Wicker proposed a lightweight anchor-free localization-routing algorithm on the view of a special application, which sets the sensing area as a circular form and the sink node to be located in the center point [21]. In order to realize routing selection, the neighbor node list information would be formed during localization. But the localization accuracy of the algorithm was not high, and the error would be accumulated in each node. Consequently, the algorithm had a strict application background, which was out of universality. And the routing selection was simple, which could not realize the global dynamic adjustment.In 2008, Jordt et al. proposed an anchor-free localization algorithm which could obtain the sensing range [22], and the algorithm achieved accurate localization without using anchor. Similar to the algorithm in [21], in order to realize the global unification, the location information of sink node was used to adjust local coordinate system. Compared with the algorithm in [21], the localization of this algorithm was more accurate. However, the communication cost was high, and the energy efficiency was low since the energy consumption in positioning stage was excessive.An algorithm named LOCOMOTE was proposed in [23] to realize data transmission and localization at the same time, which had the advantages of simplicity, high robustness, and good dynamism. However, all the nodes should communicate directly with the sink node, which limited the scale of the network significantly. Additionally, the energy consumption of flooding transmission was too large, and the energy efficiency was relatively poor.In [24], the researchers added a few shortcuts to reduce the average energy expenditure per sensor node, and hence, energy efficiency and accurate localization have been achieved. In [25], RSSI was used to improve the localization accuracy, coverage, and robustness. References [26–28] described some methods for WSNs to self-locate in indoor environments. Moreover, mobile anchor was proposed to help localization in [29, 30]. Some improvements had been achieved, but anchor was still necessary in the proposed algorithms.Although existing anchor-free localization algorithms can solve the localization problem without anchor node, there still exist some defects, such as high computation complexity, low localization accuracy, and lack of theoretical support. Furthermore, most of the existing researches focus on improving the localization accuracy, and hence the node energy consumption problems have been ignored, which leads to low energy efficiency in these algorithms. Therefore, how to realize fast, accurate, and energy efficient node localization based on limited information is the focus and trend of future research.


## 3. The Proposed Algorithm

### 3.1. System Model

Firstly, the characteristics of the system model are introduced in detail:(a)
All the nodes in the network are deployed randomly, so that the network can be used in any environment. The structure of the network is flexible, and the nodes can be deployed according to practical application, which is not limited by the algorithm.(b)
The network has only one sink node, and the computing power, communications power, storage capacity, and energy of sink node are not limited. The sink node is the interactive interface of WSN with the outside world, which is the typical characteristic of WSN structure. With only one sink node, information transmission security and energy saving will be guaranteed.(c)
The sensor nodes in the network are identical. All the nodes are not set ID and they have the same computing power and primary energy. And hence the network structure is more flexible as the nodes can be deployed randomly.(d)
The sensor nodes in the network are not equipped with positioning device, and the coordinate systems of nodes are not uniform in initial stage. So the hardware costs will be saved, and it will be easy to deploy large-scale nodes. In addition, the flexibility of the network deployment has been improved.(e)
The information transmission channel is symmetrical; that is, the energy consumption fromA to B is the same as that from B to A, which is determined by the characteristics of wireless signal transmission.(f)
The transmission energy can be controlled by the nodes independently in accordance with the transmission distance. This function is controlled by the system-on-a-chip of sensor node, and now some embedded systems for WSN can realize this function.(g)
Conflict control and channel assignment are carried out by the MAC protocol, which is not considered by the localization algorithms.


### 3.2. An Energy Efficient Anchor-Free Localization Algorithm

Since the sink is unlimited in energy and transport capacity, we set it as the origin of the global coordinate system. The active packets are transmitted by the sink in the form of broadcasting. After receiving active packets, the distances and angles between the sensor nodes and the sink will be calculated. Equation (1) is the path loss formula in free space, where PT is the transmitting power, PR is the receiving power, GT denotes the transmitting antenna gain, and GR represents a receiving antenna gain. The distance calculation formula can be deduced by (1) as shown in (2). At the same time the angle from node to sink can be obtained by using the angle measuring device. Next, the coordinate systems of sensor node and sink will be unified with the help of sink. The active packets of the nodes will be created, and these active packets will be transmitted to the surrounding nodes. The power to transmit a single packet is fixed. As long as these nodes receive two active packets, the positions of the two active packets will be used to calculate the distances to sink via Trigonometric formula. The process above is repeated until all the nodes are activated, and then, the nodes save neighbor node lists. A list contains the relative position information from this node to all neighbor nodes. The specific format of the list is shown in Table 1, and the structure of packet is shown in Table 2. The flow chart of the algorithm is shown in Figure 1, which explains the system localization procedure. The message flow diagram is shown in Figure 2, which explains the messages exchange between nodes and between nodes and sink. Consider (1)PR=PTGTGRλ4πd2,(2)d=λPTGTGR16π2PR.The algorithm can be described as in Algorithm 1. Consider (3)lab=la2+lb2-2lalbcos⁡α+β,(4)γ=arccos⁡l12+l22-l322l1l2,(5)l=sin⁡α·lABsin⁡π-α-β,(6)lab=la2+lb2-2lalbcos⁡γ.Table 1
Neighbor node list.
Level
The level of neighbor node
Dis
Distance to the neighbor node
Ang
Angle to the neighbor nodeTable 2
The structure of packet.
Pkt-typ
The type of packet (ACT/CON)
Level
The level of packet
Dis
Distance to the sink/distance between two nodes
Ang
Angle to the sink/angle between two nodes
Pow
Transmitting powerAlgorithm 1
Sink Node:
Broadcast Active Packet;
When receive a packet → measure its arrive angelA and receive power PR;
If packet.ACT
reject;
If packet.CON
getPT = packet.Pow;
D = formula_2(PT, PR); //Use (2)
add (D, A) to neighbor-list;
send a Confirm Packet [CON, 0,D, A, P0] to (D, A);
Ordinary Node:
Set a flagF = [null, null, null, null];
When receive a packet → measure its arrive angelA and receive power PR;
If packet.ACT
If my.Level == null
If packet.Level == 0
getPT = packet.Pow;
D = formula_2(PT, PR); //Use  (2)
send a Confirm Packet [CON, 1,D, A, P0] to (D, A);
Else
IfF = null;
F = packet.ACT;
getPT1 = packet.Pow, A1 = A, PR1 = PR, Da = packet.Dis, α = packet.Ang;
L1 = packet.Level, θ = 180-A-α;
rotate coordinate system the degree ofθ clockwisely;
Wait for another Active packet;
Else
getPT2 = packet.Pow, A2 = A, PR2 = PR, Db = packet.Dis;
getL2 = packet.Level, β = packet.Ang;
The calculation process as shown in Table3;
add (l1, A1) and (l2, A2) to neighbor-list;
set my.Dis =l3, my.Ang = λ8, my.Level = min(L1, L2) + 1;
send a Confirm Packet [CON, my.Level,l1, A1, P0] to (l1, A1);
send a Confirm Packet [CON, my.Level,l2, A2, P0] to (l2, A2);
If my.Level ≠ null
If packet.Level > my.Level
reject;
Else
getDa = packet.Dis, α = packet.Ang, β = packet.Ang; Db = my.Dis;
Dab = formula_3(Da, Db, α, β); //Use  (3)
If this (Dab, A) exists in neighbor-list
do nothing;
Else
add (Dab, A) to neighbor-list;
send a Confirm Packet [CON, my.Level,Dab, A, P0] to (Dab, A);
If packet.CON
If packet.Level == 0
getDs = packet.Dis and As = packet.Ang;
θ = 180-A-As; rotate coordinate system the degree of θ clockwisely;
add (Ds, A) = sink to neighbor-list;
set my.Level = 1; store my.Dis =Ds and my.Ang = A;
begin to broadcast Active Packet [ACT, 1,Ds, A, P0];
Else
getD = packet.Dis;
If this (D, A) exists in neighbor-list
do nothing;
Else
add (D, A) to neighbor-list;Table 3
Calculation process in the algorithm.
Input
Formula
Output
D
a
,
D
b, α, β
Equation (3)
D
a
b
D
a
,
D
b
,
D
a
b
Equation (4)
λ
1
D
b
,
D
a
,
D
a
b
Equation (4)
λ
2
A
1
,
α
A
1
-
α
λ
3
A
2
,
β
A
2
-
β
λ
4
λ
3
,
λ
2
λ
3
-
λ
2
λ
5
λ
4
,
λ
1
λ
4
-
λ
1
λ
6
λ
6
,
D
a
b
,
λ
5
Equation (5)
l
1
λ
5
,
D
a
b
,
λ
6
Equation (5)
l
2
l
2
,
D
b
,
λ
4
Equation (6)
l
3
l
3
,
l
2
,
D
b
Equation (4)
λ
7
λ
7
,
A
2
λ
7
+
A
2
λ
8Figure 1
The flow chart of the algorithm.Figure 2
The message flow diagram.As shown in Figure3, active packets are broadcasted by the sink node periodically, and the packet structure is shown in(7)ACT000P0Node A, which receives active packet from sink, firstly measures the arrival angle β and receiving power PR of source packet. The distance lA from node A to the sink is calculated by (2); then a confirm packet whose structure is shown in(8)CON1lAβP0is sent from A to the sink. After receiving the confirm packet, the sink sends a confirm packet, which is shown in(9)CON0lAαP0to A as well, and the sink puts A in its neighbor list. After receiving the confirm package, node A calculates the angle γ using (10) and the angle in the confirm package. Then, the coordinate system of node A rotates clockwise by γ, so that the coordinate system of node A has been unified with the coordinate system of the sink. Finally, node A sets its level as 1 and puts sink into its neighbor lists. Now A has been activated. The coordinate system directions of the outer layer nodes are unified by the sink, as shown in Figure 4. Consider(10)α+β+γ=180⟹γ=180-α-β.Figure 3
Neighbor discovery of sink node.Figure 4
Outer layer node unified the direction of coordinate system.After being activated, the sensor nodes with the same situation as nodeA begin to send active packets, and the packet structure is shown in (11)ACT1lAαP0Other nodes which receive the active packets can be classified into two categories: the nodes which have been already activated and the nodes which have not been activated.(
1
) If node B has been activated after receiving the active packet from A, its relative position to sink node is denoted as (lB, β). According to the level of active packet from A, node B finds that they are at the same layer, and the angle from A to B, which is denoted by λ, will be measured. The distance from B to A is calculated by (13). Then node B sends back a confirm packet to A, which is shown in (12)CON1lBAλP0Nodes A and B add each other to their neighbor node lists. Node A stores the location information of B as (lAB, λ), and B stores the location information of A as (lBA, 180-λ). The whole process is shown in Figure 5. One has(13)lAB=lA2+lB2-2lAlBcosα+β.Figure 5
Neighbor discovery between nodes.(
2
) If node C has not been activated after receiving the active packet from A, then C needs to wait for other active packets. C starts the activation steps until more than two active packets from different nodes have arrived. Assume that C receives the active packets from A and B respectively, as shown in(14)ACTXlAαP0(15)ACTYlBβP0Then, node C will send confirm packets to node A and node B, and the process is shown in Figure 6.Figure 6
Angle and distance calculation of outer layer nodes.
(a)
(b)In Figure6(a), node C can calculate the distance between A and B according to (13), since the active packets from A and B contain angles and distances of A and B to the sink, respectively. O is the direction of x-axis; then ∠ACO and ∠BCO can be measured by C according to the directions of the packets. And ∠ABS and ∠BAS can also be calculated by C using lA, lB, and lAB based on Trigonometric formula, which is shown as (16). With these information, node C calculates ∠SAC and ∠SBC according to (17) and calculates ∠ABC and the ∠CAB using (18). Furthermore, lAC and lBC are calculated by C based on the Trigonometric formula, as shown in (19) and (20):(16)∠ABS=arccos⁡lA2+lBC2-lB22lAlBC,∠BAS=arccos⁡lB2+lBC2-lA22lBlBC,(17)∠SAC=180-180-∠ACO-α=∠ACO-α,∠SBC=180-180-∠BCO-β=∠BCO-β,(18)∠BAC=∠SAC-∠BAS,∠ABC=∠SBC-∠ABS,(19)lAC=sin⁡ABC·lABsin⁡π-ABC-BAC,(20)lBC=sin⁡BAC·lABsin⁡π-ABC-BAC.After calculating∠SAC, ∠SBC, lAC, and lBC, lSC will be calculated as (22), and the process is shown in Figure 6(b). Node C can calculate ∠SCB using (23), and then ∠SCO, lSC, and ∠SCO are calculated by (24), which is the relative location from C to the sink. C stores nodes A and B to their neighbor node lists, and the content is shown in(21)XlAC∠ACOYlBC∠BCOOn the other hand, nodes A and B store information of C to their neighbor node lists as well. Now the activation of node C has been completed. All nodes whose level is greater than 1 use this step to activate. Consider(22)lSC=lB2+lBC2-2lBlBCcos⁡SBC,(23)∠SCB=arccos⁡lSC2+lBC2-lB22lSClBC,(24)∠SCO=∠SCB+∠BCO.


## 3.1. System Model

Firstly, the characteristics of the system model are introduced in detail:(a)
All the nodes in the network are deployed randomly, so that the network can be used in any environment. The structure of the network is flexible, and the nodes can be deployed according to practical application, which is not limited by the algorithm.(b)
The network has only one sink node, and the computing power, communications power, storage capacity, and energy of sink node are not limited. The sink node is the interactive interface of WSN with the outside world, which is the typical characteristic of WSN structure. With only one sink node, information transmission security and energy saving will be guaranteed.(c)
The sensor nodes in the network are identical. All the nodes are not set ID and they have the same computing power and primary energy. And hence the network structure is more flexible as the nodes can be deployed randomly.(d)
The sensor nodes in the network are not equipped with positioning device, and the coordinate systems of nodes are not uniform in initial stage. So the hardware costs will be saved, and it will be easy to deploy large-scale nodes. In addition, the flexibility of the network deployment has been improved.(e)
The information transmission channel is symmetrical; that is, the energy consumption fromA to B is the same as that from B to A, which is determined by the characteristics of wireless signal transmission.(f)
The transmission energy can be controlled by the nodes independently in accordance with the transmission distance. This function is controlled by the system-on-a-chip of sensor node, and now some embedded systems for WSN can realize this function.(g)
Conflict control and channel assignment are carried out by the MAC protocol, which is not considered by the localization algorithms.


## 3.2. An Energy Efficient Anchor-Free Localization Algorithm

Since the sink is unlimited in energy and transport capacity, we set it as the origin of the global coordinate system. The active packets are transmitted by the sink in the form of broadcasting. After receiving active packets, the distances and angles between the sensor nodes and the sink will be calculated. Equation (1) is the path loss formula in free space, where PT is the transmitting power, PR is the receiving power, GT denotes the transmitting antenna gain, and GR represents a receiving antenna gain. The distance calculation formula can be deduced by (1) as shown in (2). At the same time the angle from node to sink can be obtained by using the angle measuring device. Next, the coordinate systems of sensor node and sink will be unified with the help of sink. The active packets of the nodes will be created, and these active packets will be transmitted to the surrounding nodes. The power to transmit a single packet is fixed. As long as these nodes receive two active packets, the positions of the two active packets will be used to calculate the distances to sink via Trigonometric formula. The process above is repeated until all the nodes are activated, and then, the nodes save neighbor node lists. A list contains the relative position information from this node to all neighbor nodes. The specific format of the list is shown in Table 1, and the structure of packet is shown in Table 2. The flow chart of the algorithm is shown in Figure 1, which explains the system localization procedure. The message flow diagram is shown in Figure 2, which explains the messages exchange between nodes and between nodes and sink. Consider (1)PR=PTGTGRλ4πd2,(2)d=λPTGTGR16π2PR.The algorithm can be described as in Algorithm 1. Consider (3)lab=la2+lb2-2lalbcos⁡α+β,(4)γ=arccos⁡l12+l22-l322l1l2,(5)l=sin⁡α·lABsin⁡π-α-β,(6)lab=la2+lb2-2lalbcos⁡γ.Table 1
Neighbor node list.
Level
The level of neighbor node
Dis
Distance to the neighbor node
Ang
Angle to the neighbor nodeTable 2
The structure of packet.
Pkt-typ
The type of packet (ACT/CON)
Level
The level of packet
Dis
Distance to the sink/distance between two nodes
Ang
Angle to the sink/angle between two nodes
Pow
Transmitting powerAlgorithm 1
Sink Node:
Broadcast Active Packet;
When receive a packet → measure its arrive angelA and receive power PR;
If packet.ACT
reject;
If packet.CON
getPT = packet.Pow;
D = formula_2(PT, PR); //Use (2)
add (D, A) to neighbor-list;
send a Confirm Packet [CON, 0,D, A, P0] to (D, A);
Ordinary Node:
Set a flagF = [null, null, null, null];
When receive a packet → measure its arrive angelA and receive power PR;
If packet.ACT
If my.Level == null
If packet.Level == 0
getPT = packet.Pow;
D = formula_2(PT, PR); //Use  (2)
send a Confirm Packet [CON, 1,D, A, P0] to (D, A);
Else
IfF = null;
F = packet.ACT;
getPT1 = packet.Pow, A1 = A, PR1 = PR, Da = packet.Dis, α = packet.Ang;
L1 = packet.Level, θ = 180-A-α;
rotate coordinate system the degree ofθ clockwisely;
Wait for another Active packet;
Else
getPT2 = packet.Pow, A2 = A, PR2 = PR, Db = packet.Dis;
getL2 = packet.Level, β = packet.Ang;
The calculation process as shown in Table3;
add (l1, A1) and (l2, A2) to neighbor-list;
set my.Dis =l3, my.Ang = λ8, my.Level = min(L1, L2) + 1;
send a Confirm Packet [CON, my.Level,l1, A1, P0] to (l1, A1);
send a Confirm Packet [CON, my.Level,l2, A2, P0] to (l2, A2);
If my.Level ≠ null
If packet.Level > my.Level
reject;
Else
getDa = packet.Dis, α = packet.Ang, β = packet.Ang; Db = my.Dis;
Dab = formula_3(Da, Db, α, β); //Use  (3)
If this (Dab, A) exists in neighbor-list
do nothing;
Else
add (Dab, A) to neighbor-list;
send a Confirm Packet [CON, my.Level,Dab, A, P0] to (Dab, A);
If packet.CON
If packet.Level == 0
getDs = packet.Dis and As = packet.Ang;
θ = 180-A-As; rotate coordinate system the degree of θ clockwisely;
add (Ds, A) = sink to neighbor-list;
set my.Level = 1; store my.Dis =Ds and my.Ang = A;
begin to broadcast Active Packet [ACT, 1,Ds, A, P0];
Else
getD = packet.Dis;
If this (D, A) exists in neighbor-list
do nothing;
Else
add (D, A) to neighbor-list;Table 3
Calculation process in the algorithm.
Input
Formula
Output
D
a
,
D
b, α, β
Equation (3)
D
a
b
D
a
,
D
b
,
D
a
b
Equation (4)
λ
1
D
b
,
D
a
,
D
a
b
Equation (4)
λ
2
A
1
,
α
A
1
-
α
λ
3
A
2
,
β
A
2
-
β
λ
4
λ
3
,
λ
2
λ
3
-
λ
2
λ
5
λ
4
,
λ
1
λ
4
-
λ
1
λ
6
λ
6
,
D
a
b
,
λ
5
Equation (5)
l
1
λ
5
,
D
a
b
,
λ
6
Equation (5)
l
2
l
2
,
D
b
,
λ
4
Equation (6)
l
3
l
3
,
l
2
,
D
b
Equation (4)
λ
7
λ
7
,
A
2
λ
7
+
A
2
λ
8Figure 1
The flow chart of the algorithm.Figure 2
The message flow diagram.As shown in Figure3, active packets are broadcasted by the sink node periodically, and the packet structure is shown in(7)ACT000P0Node A, which receives active packet from sink, firstly measures the arrival angle β and receiving power PR of source packet. The distance lA from node A to the sink is calculated by (2); then a confirm packet whose structure is shown in(8)CON1lAβP0is sent from A to the sink. After receiving the confirm packet, the sink sends a confirm packet, which is shown in(9)CON0lAαP0to A as well, and the sink puts A in its neighbor list. After receiving the confirm package, node A calculates the angle γ using (10) and the angle in the confirm package. Then, the coordinate system of node A rotates clockwise by γ, so that the coordinate system of node A has been unified with the coordinate system of the sink. Finally, node A sets its level as 1 and puts sink into its neighbor lists. Now A has been activated. The coordinate system directions of the outer layer nodes are unified by the sink, as shown in Figure 4. Consider(10)α+β+γ=180⟹γ=180-α-β.Figure 3
Neighbor discovery of sink node.Figure 4
Outer layer node unified the direction of coordinate system.After being activated, the sensor nodes with the same situation as nodeA begin to send active packets, and the packet structure is shown in (11)ACT1lAαP0Other nodes which receive the active packets can be classified into two categories: the nodes which have been already activated and the nodes which have not been activated.(
1
) If node B has been activated after receiving the active packet from A, its relative position to sink node is denoted as (lB, β). According to the level of active packet from A, node B finds that they are at the same layer, and the angle from A to B, which is denoted by λ, will be measured. The distance from B to A is calculated by (13). Then node B sends back a confirm packet to A, which is shown in (12)CON1lBAλP0Nodes A and B add each other to their neighbor node lists. Node A stores the location information of B as (lAB, λ), and B stores the location information of A as (lBA, 180-λ). The whole process is shown in Figure 5. One has(13)lAB=lA2+lB2-2lAlBcosα+β.Figure 5
Neighbor discovery between nodes.(
2
) If node C has not been activated after receiving the active packet from A, then C needs to wait for other active packets. C starts the activation steps until more than two active packets from different nodes have arrived. Assume that C receives the active packets from A and B respectively, as shown in(14)ACTXlAαP0(15)ACTYlBβP0Then, node C will send confirm packets to node A and node B, and the process is shown in Figure 6.Figure 6
Angle and distance calculation of outer layer nodes.
(a)
(b)In Figure6(a), node C can calculate the distance between A and B according to (13), since the active packets from A and B contain angles and distances of A and B to the sink, respectively. O is the direction of x-axis; then ∠ACO and ∠BCO can be measured by C according to the directions of the packets. And ∠ABS and ∠BAS can also be calculated by C using lA, lB, and lAB based on Trigonometric formula, which is shown as (16). With these information, node C calculates ∠SAC and ∠SBC according to (17) and calculates ∠ABC and the ∠CAB using (18). Furthermore, lAC and lBC are calculated by C based on the Trigonometric formula, as shown in (19) and (20):(16)∠ABS=arccos⁡lA2+lBC2-lB22lAlBC,∠BAS=arccos⁡lB2+lBC2-lA22lBlBC,(17)∠SAC=180-180-∠ACO-α=∠ACO-α,∠SBC=180-180-∠BCO-β=∠BCO-β,(18)∠BAC=∠SAC-∠BAS,∠ABC=∠SBC-∠ABS,(19)lAC=sin⁡ABC·lABsin⁡π-ABC-BAC,(20)lBC=sin⁡BAC·lABsin⁡π-ABC-BAC.After calculating∠SAC, ∠SBC, lAC, and lBC, lSC will be calculated as (22), and the process is shown in Figure 6(b). Node C can calculate ∠SCB using (23), and then ∠SCO, lSC, and ∠SCO are calculated by (24), which is the relative location from C to the sink. C stores nodes A and B to their neighbor node lists, and the content is shown in(21)XlAC∠ACOYlBC∠BCOOn the other hand, nodes A and B store information of C to their neighbor node lists as well. Now the activation of node C has been completed. All nodes whose level is greater than 1 use this step to activate. Consider(22)lSC=lB2+lBC2-2lBlBCcos⁡SBC,(23)∠SCB=arccos⁡lSC2+lBC2-lB22lSClBC,(24)∠SCO=∠SCB+∠BCO.


## 4. Theoretical Analysis of the Algorithm

In order to be localized uniquely based on the known information, what attributes of vertex and edge should the nodes in WSN satisfy? This is the key issue of localization research in WSN. Existing researches use methods including rigidity and global rigidity in frameworks [31, 32], geometric constraint [19], combinatorial rigidity in frameworks [33], and coordination of formations of autonomous agents [34] to prove the unique localization problem. Based on the research of [35], considering the characteristics of transmission and structure in WSN, we analyze the unique localization of the proposed network structure on the basic of global rigid framework.Theorem 1 (see [36]).
Let N be a WSN inRD consisting of m ordinary sensor nodes Vs=1,2,…,m located at positions p1,p2,…,pm and n-m anchor nodes Va=m+1,m+2,…,n located at pm+1,…,pn. Suppose that there are at least D+1 anchors positioned at points in general position. Let Fp denote the corresponding framework of N and let p=(p1,p2,…,pn). Then the WSN localization problem is solvable (i.e., has a unique solution) if and only if Fp is globally rigid.Hence, the WSNs unique localization problem is switched into verifying the global rigidity of corresponding framework and analyzing the localizability.First, we provide a mathematical description to WSNs localization problem. Let sensor nodes be distributed inD (D≥1, usually D=2) dimensional space; then these WSNs can be represented by an undirected connected graph G=(V,E). The elements of E are positive weights dij, which are the distances between adjacent nodes.The network structure of the algorithm’s output is shown in Figure7. The forms store the neighbor’s information of each node.Figure 7
Part of an output of the algorithm.Definition 2 (framework [17, 37]).
LetG=(V,E) be an undirected graph and V and E are vertex set and edge set, respectively. In RD space, each point has a position pi∈RD. The length of edge ij∈E between the points pi and pj is decided by the Euclidean distance. Then a framework Fp is a pair (G,p), where p is a map from V to RD satisfying pi-pj=dij, and for all ij∈E, pi≠pj.According to Definition2, each graph can be mapped into a framework, in which the set of edges is represented by B∪L. Length edge L is the edge satisfying distance constraint, which means that the distance of the edge between two nodes is known by both sides. Bearing edge B is the edge satisfying angle constraint, which means that the angles of the edge between two nodes are known by both sides. The intersection set between B and L is called mixed edge which satisfies both the distance constraint and angle constraint, that is, combined constraints. Apparently, the more mixed edges exist, the higher the probability of rigid network structure is, even global rigid.The rigidity of the framework will be enhanced under combined constraints. If all of the edges in the framework satisfy combined constraints, we call the framework full combined constraints.In our algorithm, the combined constraint edge can be regarded as communication channel between the nodes. The communication data contains distance and angle information; that is, the distance and angle between two nodes are known by both sides via measurement and calculation, as shown in Figure7. And hence, all of the edges in the framework can be seen both as the length edge and the bearing edge; that is, B=L. Thus the node distribution in our algorithm satisfies the strictest combined constraints, that is, full combined constraints. In [38], network structures in 2D are all global rigid under the condition of full combined constraints. Obviously, the WSN nodes satisfy global rigid conditions under the constraint of the proposed algorithm, and the uniqueness and accuracy of localization process can be guaranteed. The WSN structure of the proposed algorithm which satisfies the combined constraint framework is shown in Figure 8.Figure 8
WSNs structure of this algorithm which satisfies the combined constraint framework.


## 5. Simulation

An energy efficient anchor-free localization algorithm for no ID WSN model is proposed in this paper. In this section, a series of experiments are designed to verify the performance of the proposed algorithm. Furthermore, the positioning accuracy, localization rate, and energy efficiency of our algorithm have been analyzed thoroughly.


### 5.1. Performance Evaluation Criteria

The accuracy of positioning is described as follows: the wireless channel of WSN has the characteristics of being complex and changeful. There usually exist path loss, multichannel interference, shadow effect, and so on, which may result in distortion. Generally, the radio propagation model is not ideal, which produces measurement error inevitably, and this results in further positioning error between the calculated value and the actual node location. In addition, it is inevitable that distributed computing results in cumulative effect in multihops network. With multiple use of the calculation, the scope of the position error will be enlarged. In our experiments, the error follows normal distributionN(0.1,1), and the error can be calculated using (25), where μ=0.1 and σ=1:(25)fx=12πσexp⁡-x-μ22σ2.Localization Rate. In this paper, the concept of coverage rate of positioned node is used to judge the rate, and its computation formula is shown in (26), where sumA is the number of positioned nodes and sum is the total number of all nodes:(26)F=sumAsum.Energy Efficiency. Energy efficiency of the algorithm means that, after positioning energy consumption of the nodes in network as low as possible, energy consumption is uniformly distributed, and obvious excessive energy consumption of the node does not exist. Since the positioning calculation requires a lot of communication between nodes, which consumes huge node energy, hence, how to reduce energy consumption mentioned above and allocate more energy for routing and information transmission is the key issue to improve the network performance. One of the standards to measure the energy efficiency of the algorithm is the average residual energy of the nodes in the entire network, as shown in (27). And it reflects the overall energy saving effect of the algorithm. Another standard is the energy difference between the maximum node and the minimum node, as shown in (28), which reflects the balance of node energy consumption in the algorithm. Consider (27)E¯=∑inE′n,(28)ΔE=Emax-Emin.


### 5.2. Results

The proposed algorithm is simulated in MATLAB. Hardware and environment parameter settings involved in the experiments are shown in Table4. The simulated network environment generated in our experiments is shown in Figure 9, and the neighbor link and range of each node are shown in Figure 10.Table 4
The main parameters of the experiment.
Threshold distance (d0) (m)
15
E
Elec (nJ/bit)
50
ε
f
s (pJ/bit/m2)
10
ε
m
p (pJ/bit/m4)
0.0013
Sensing area (m2)
100∗ 100Figure 9
The experiment generated network simulation environment.Figure 10
Neighbor link and range of each node.Transmission threshold, sending, and receiving information parameters (i.e.,EElec, εfs, and εmp) are related to specific hardware. Common parameter values are adopted in our experiments, and the sensing area is set as a square with maximum area of 104 m2. Additionally, the nodes are deployed randomly in the sensing area, and hence, the sensing area can be any irregular shape.100 nodes are deployed in the sensing area, and let each node be the sink node; the relationship of localization rate and distance from the center of the area to sink node is shown in Figure11.Figure 11
The relations of distance from the center of the region to each sink node and the localization rate.In the deployed 100 nodes, the one with the highest localization rate is chosen as the sink node. The relationship between measure error and average error is shown in Figure12.Figure 12
The relations of the measurement error and average error.In order to verify the energy efficiency, SPA [16], SDGPSN [19], and AAFL [20] are chosen to compare with the proposed algorithm. SPA is a classic anchor-based localization algorithm. SDGPSN adds clustering scheme on the basic of SPA and has similar structure with the proposed algorithm. AAFL is an anchor-free localization algorithm which is similar as the proposed algorithm, and it has good flexibility.We deploy 250 nodes in the network. With the increasing of the nodes coverage rate, the change of the node average residual energy of all these four algorithms is shown in Figure13. Figure 14 shows the node residual energy changing of these four algorithms with the increase of the node coverage rate. Obviously, the balance of SDGPSN’s node energy consumption is the worst, followed by SPA and AAFL. The node energy consumption of the proposed algorithm is very balanced, and the difference of node’s residual energy is no more than 30% even the coverage rate reaches 99%.Figure 13
The relations of average residual energy and the coverage rate of nodes.Figure 14
The relations of residual enenrgy and the coverage rate of nodes.


### 5.3. Experimental Analysis

In the positioning accuracy and localization rate aspects, the proposed algorithm is based on the research of global rigid framework system, which has the unique localization theoretical basis. Except the one-hop neighbor node of the sink, the location information of the rest of the nodes is all obtained by strict mathematical calculation, so that the measurement error of transmission expansion is avoided. Experiments show that the location of the sink node affects the localization rate to a certain extent. This is because the localization starts from the sink node and the positioning information is transmitted from the sink layer by layer. The localization rate will be higher if the sink node comes closer to the center of the sensing area.In the energy efficiency aspect, it can be seen, no matter how much the coverage rate of positioned node is, the proposed algorithm has the most average residual energy of nodes. Additionally, with the increase of the coverage rate, this advantage is more and more obvious, which means good energy efficiency. Compared with the existing algorithms, instead of omnidirectional broadcast mode, the proposed algorithm adopts the method of sensor node searching for neighbor node based on directed diffusion function. And all data packets are sent by small fixed energy, rather than large energy, which narrows the search range and reduces the neighbor number of each node, and hence, energy will be saved. Furthermore, distributed discovery strategy is adopted in the proposed algorithm. Instead of directly communicating with sink node, the sensor nodes transmit the positioning information layer by layer from inside to outside. The information communication and positioning burden are similar for all nodes, which ensures the balance of the entire network node energy consumption.


### 5.4. Error Analysis

In the proposed algorithm, we assume that each node can measure the angle to other nodes and the power of radio waves; accordingly, accurate localization can be realized theoretically. In the simulation, we only consider the error caused by channel distortion, such as path loss, multichannel interference, and shadow effect.In practice applications, a set of directional antennas is usually used for measuring the direction of radio wave, but the accuracy of the measured angles cannot be guaranteed.In the proposed algorithm, however, only the first layer nodes (i.e., the one-hop nodes of sink node) are activated by the measured angle; the outer layer nodes obtain angles mainly by calculation. As a result, the error of a layer will not affect the next layer, so that the error will not accumulate layer by layer, and the accuracy of our algorithm mainly depends on hardware measurement.


## 5.1. Performance Evaluation Criteria

The accuracy of positioning is described as follows: the wireless channel of WSN has the characteristics of being complex and changeful. There usually exist path loss, multichannel interference, shadow effect, and so on, which may result in distortion. Generally, the radio propagation model is not ideal, which produces measurement error inevitably, and this results in further positioning error between the calculated value and the actual node location. In addition, it is inevitable that distributed computing results in cumulative effect in multihops network. With multiple use of the calculation, the scope of the position error will be enlarged. In our experiments, the error follows normal distributionN(0.1,1), and the error can be calculated using (25), where μ=0.1 and σ=1:(25)fx=12πσexp⁡-x-μ22σ2.Localization Rate. In this paper, the concept of coverage rate of positioned node is used to judge the rate, and its computation formula is shown in (26), where sumA is the number of positioned nodes and sum is the total number of all nodes:(26)F=sumAsum.Energy Efficiency. Energy efficiency of the algorithm means that, after positioning energy consumption of the nodes in network as low as possible, energy consumption is uniformly distributed, and obvious excessive energy consumption of the node does not exist. Since the positioning calculation requires a lot of communication between nodes, which consumes huge node energy, hence, how to reduce energy consumption mentioned above and allocate more energy for routing and information transmission is the key issue to improve the network performance. One of the standards to measure the energy efficiency of the algorithm is the average residual energy of the nodes in the entire network, as shown in (27). And it reflects the overall energy saving effect of the algorithm. Another standard is the energy difference between the maximum node and the minimum node, as shown in (28), which reflects the balance of node energy consumption in the algorithm. Consider (27)E¯=∑inE′n,(28)ΔE=Emax-Emin.


## 5.2. Results

The proposed algorithm is simulated in MATLAB. Hardware and environment parameter settings involved in the experiments are shown in Table4. The simulated network environment generated in our experiments is shown in Figure 9, and the neighbor link and range of each node are shown in Figure 10.Table 4
The main parameters of the experiment.
Threshold distance (d0) (m)
15
E
Elec (nJ/bit)
50
ε
f
s (pJ/bit/m2)
10
ε
m
p (pJ/bit/m4)
0.0013
Sensing area (m2)
100∗ 100Figure 9
The experiment generated network simulation environment.Figure 10
Neighbor link and range of each node.Transmission threshold, sending, and receiving information parameters (i.e.,EElec, εfs, and εmp) are related to specific hardware. Common parameter values are adopted in our experiments, and the sensing area is set as a square with maximum area of 104 m2. Additionally, the nodes are deployed randomly in the sensing area, and hence, the sensing area can be any irregular shape.100 nodes are deployed in the sensing area, and let each node be the sink node; the relationship of localization rate and distance from the center of the area to sink node is shown in Figure11.Figure 11
The relations of distance from the center of the region to each sink node and the localization rate.In the deployed 100 nodes, the one with the highest localization rate is chosen as the sink node. The relationship between measure error and average error is shown in Figure12.Figure 12
The relations of the measurement error and average error.In order to verify the energy efficiency, SPA [16], SDGPSN [19], and AAFL [20] are chosen to compare with the proposed algorithm. SPA is a classic anchor-based localization algorithm. SDGPSN adds clustering scheme on the basic of SPA and has similar structure with the proposed algorithm. AAFL is an anchor-free localization algorithm which is similar as the proposed algorithm, and it has good flexibility.We deploy 250 nodes in the network. With the increasing of the nodes coverage rate, the change of the node average residual energy of all these four algorithms is shown in Figure13. Figure 14 shows the node residual energy changing of these four algorithms with the increase of the node coverage rate. Obviously, the balance of SDGPSN’s node energy consumption is the worst, followed by SPA and AAFL. The node energy consumption of the proposed algorithm is very balanced, and the difference of node’s residual energy is no more than 30% even the coverage rate reaches 99%.Figure 13
The relations of average residual energy and the coverage rate of nodes.Figure 14
The relations of residual enenrgy and the coverage rate of nodes.


## 5.3. Experimental Analysis

In the positioning accuracy and localization rate aspects, the proposed algorithm is based on the research of global rigid framework system, which has the unique localization theoretical basis. Except the one-hop neighbor node of the sink, the location information of the rest of the nodes is all obtained by strict mathematical calculation, so that the measurement error of transmission expansion is avoided. Experiments show that the location of the sink node affects the localization rate to a certain extent. This is because the localization starts from the sink node and the positioning information is transmitted from the sink layer by layer. The localization rate will be higher if the sink node comes closer to the center of the sensing area.In the energy efficiency aspect, it can be seen, no matter how much the coverage rate of positioned node is, the proposed algorithm has the most average residual energy of nodes. Additionally, with the increase of the coverage rate, this advantage is more and more obvious, which means good energy efficiency. Compared with the existing algorithms, instead of omnidirectional broadcast mode, the proposed algorithm adopts the method of sensor node searching for neighbor node based on directed diffusion function. And all data packets are sent by small fixed energy, rather than large energy, which narrows the search range and reduces the neighbor number of each node, and hence, energy will be saved. Furthermore, distributed discovery strategy is adopted in the proposed algorithm. Instead of directly communicating with sink node, the sensor nodes transmit the positioning information layer by layer from inside to outside. The information communication and positioning burden are similar for all nodes, which ensures the balance of the entire network node energy consumption.


## 5.4. Error Analysis

In the proposed algorithm, we assume that each node can measure the angle to other nodes and the power of radio waves; accordingly, accurate localization can be realized theoretically. In the simulation, we only consider the error caused by channel distortion, such as path loss, multichannel interference, and shadow effect.In practice applications, a set of directional antennas is usually used for measuring the direction of radio wave, but the accuracy of the measured angles cannot be guaranteed.In the proposed algorithm, however, only the first layer nodes (i.e., the one-hop nodes of sink node) are activated by the measured angle; the outer layer nodes obtain angles mainly by calculation. As a result, the error of a layer will not affect the next layer, so that the error will not accumulate layer by layer, and the accuracy of our algorithm mainly depends on hardware measurement.


## 6. Conclusions

In this paper, we propose an efficient anchor-free localization algorithm for wireless sensor networks (WSNs) without ID information. Making use of the positioning information transmitted by the sink node, the proposed algorithm can localize the nodes accurately without depending on the anchor node. We propose a network model that does not contain ID information, which makes the algorithm more flexible in application. The unique localization has been proved by the combined constraints based on global rigid framework. In the process of localization, the algorithm reduces radio transmission with high energy consumption. Localization of the node can be calculated mainly by mathematical calculation, and hence, the error accumulation has been reduced. Finally, the localization efficiency and accuracy have been verified by reasonable experimental design, and the algorithm has been proved with high energy efficiency on the premise of accurate positioning. In practical applications, three-dimensional localization method and theory are more close to the actual WSNs sensor node deployment. Therefore, our future research will focus on WSNs localization in three-dimensional space.



---

*Source: 595246-2015-12-09.xml*