Singular Value Thresholding Algorithm for Wireless Sensor Network Localization

: Wireless Sensor Networks (WSN) are of great current interest in the proliferation of technologies. Since the location of the sensors is one of the most interesting issues in WSN, the process of node localization is crucial for any WSN-based applications. Subsequently, WSN’s node estimation deals with a low-rank matrix which gives rise to the application of the Nuclear Norm Minimization (NNM) method. This paper will focus on the localization of 2-dimensional WSN with objects (obstacles). Recent studies introduce Nuclear Norm Minimization (NNM) for node estimation instead of formulating the rank minimization problem. Common way to tackle this problem is by implementing the Semidefinite Programming (SDP). However, SDP can only handle matrices with a size of less than 100 × 100. Therefore, we introduce the method of Singular Value Thresholding (SVT) which is an iterative algorithm to solve the NNM problem that produces a sequence of matrices and executes a soft-thresholding operation on the singular value of the matrix k Y . This algorithm is a user-friendly algorithm which produces a low computational cost with low storage capacity required to give the lowest-rank minimum nuclear norm solution.


Introduction
A Wireless Sensor Network (WSN) is a network of miniature devices known as nodes, which are capable of environment sensing, data computing and information transmission to remote areas via wireless links [1]. Today, WSN has become one of the vital technologies for smart environments, where various kinds of devices are connected to each other according to the principles of the Internet of Things (IoT) [2]. Hence, node localization is crucial, or else the advancement of the technology will be in vain if the locations of the nodes or sensors are intractable.
The process of estimating missing entries from the very limited information in a matrix arises in many applications, which are mostly related to engineering and applied sciences, such as computer vision and pattern recognition [3], machine learning [4], Wireless Sensor Network (WSN) and control [5].
Nguyen et al. stated that MDS is an algorithm that is based on the shortest path algorithm which localizes the nodes via truncated eigendecomposition [16]. However, the accuracy of the MDS-based algorithm is based on the distance estimation efficiency between all pairs of nodes. The distance estimation for all nodes is impossible through radio resources because of the limited communication range.
NNM is known to be one of the simplest yet most accurate localization techniques for 2-D WSN [10,13,17] which minimizes the nuclear norm instead of the rank of the matrix subject to some equality constraints [17,18].
A common way to tackle this problem is by implementing Semidefinite Programming (SDP). SDP is an algorithm that localizes nodes through the convex relaxation of the nonconvex quadratic constraints of the nodes [16]. However, Candes et al. stated that SDP produces a high computational complexity where it can only handle matrices of a size less than 100 × 100 [19]. Therefore, SVT is introduced to solve NNM iteratively and produce a better approximation of the rank of the matrix [14]. This algorithm is a standard convex optimization method for NNM, which executes a softthresholding operation on a sparse matrix, and the rank of the iterate k X is empirically nondecreasing, which makes this algorithm well-suited for low-rank matrix completion problems. Our aim is to propose a user-friendly algorithm for node localization which results in high accuracy with low computational complexity and requires a low storage capacity.
The rest of this paper is structured as follows: Section 2 contains the background of the research. Section 3 presents the proposed algorithm. Section 4 describes the details of the simulation. In Section 5, the simulation results are presented with further discussion of the performance comparison. Lastly, the conclusion is in Section 6.

Range-Based Localization
In recent years, a Wireless Sensor Network (WSN) has been widely proposed in several applications where the location information of the sensors has been the fundamental subject of WSN studies [20]. The localization of the exact location can improve the importance of the sensing information. Thus, accurate node localization remains an interesting area of research regarding WSN. Although most localization algorithms offer fairly accurate estimates of the location [21], they have a high computational and communicational complexity.
Based on the distance estimation technique, node localization can be categorized into two categories-range-free localization and range-based localization. The range-free localization method focuses on connectivity information and geometric distance, such as a hop count for node localization [22,23]. However, this method is a well-known cost-effective method that produces poor localization accuracy [22]. On the other hand, the range-based localization method produces approximated results with a higher localization accuracy. This is due to the process of estimating the physical distance between any two sensor nodes [23]. Hence, this research will focus on range-based localization for the best localization accuracy.
For range-based localization, the physical distances between the nodes are first estimated through the physical characteristics of communication signal, which is also called the ranging technique, followed by a localization computation technique to localize the nodes [6,24,25]. Ranging techniques that are used to estimate the distance between the nodes are known as Received Signal Strength Indicator (RSSI), Time of Arrival (ToA), Time Difference of Arrival (TDoA) or Angle of Arrival (AoA) [6]. However, the problem occurs when estimating the distances between two nonneighboring nodes. Hence, the Received Signal Strength Indicator (RSSI) is used to estimate the distances for neighboring nodes while trilateration is introduced to calculate the distances for nonneighboring nodes.
Zhao et al. in [26] proposed an RSSI-based algorithm, which made use of the RSSI values calculated between a sensor node and mobile anchor node for sensor node localization. Moreover, there are some studies that proposed the hybrid implementation of the RSSI-based algorithm, such as the RSSI-ToA-based localization algorithm. Zhang et al. proposed an integrated algorithm which combines the RSSI-ToA-based algorithm with the single mobile anchor node strategy in [27]. Sharma et al., in [22], proposed a RSSI-ToA-based localization algorithm which implements the RSSI technique in the near end and the ToA technique in the far end. Once the ranging values between the anchor node and the unknown node are calculated, node localization is done using the maximumlikelihood (ML) estimation.
However, Heurtefeux and Valois stated that the implementation of the RSSI-based localization algorithm in real environments has low computational accuracy. This is because the signal strength of RSSI is affected by three phenomena, which are path loss (electromagnetic wave power density reduction), fading (weakening signal due to signal deviation) and shadowing (loss of signal due to obstacles) [28]. Hence, this paper will propose the implementation of the RSSI ranging technique for the distance estimation of neighboring nodes and the trilateration technique for the non-neighboring nodes.

Trilateration
Generally, trilateration is a technique used to estimate the location of an object by measuring the distances from at least three non-collinearly located reference nodes, using the geometry of spheres or triangles [8,9,29]. In practical, trilateration is widely implemented since it is fully distributed, promotes easy implementation and offers low communicational and computational complexity [30]. Distance estimation between two nodes in WSN is possible if they are neighbors, where the distances between the sensors are less than or equal to the communication range. d is the distance between two nodes and r is their communication range; therefore, both sensors are neighbors of each other if In this paper, RSSI is used for neighboring nodes while trilateration is used for non-neighboring nodes. Trilateration can recover the positions of the individual sensors based on the Euclidean Distance Matrix (EDM), and at least three or more anchor nodes. Since we are dealing with 2dimensional WSN, at least three anchor nodes are required for the trilateration process, as shown in Figure 1. Assume that three anchor nodes 1 2 3 , , q q q are known, and we want to figure out the coordinate p of an unknown node from only knowing the distances and the distances between the anchor nodes themselves, [31]. Hence, it is possible to localize sensor nodes in a network by iterative trilateration [32].
Once the distance estimation process is completed, the information will be transformed into EDM and matrix completion via Nuclear-Norm Minimization (NNM) will take place. Next, NNM will be solved iteratively by using the proposed method, which is the Singular Value Thresholding (SVT) algorithm, which will be discussed in Section 3.

The Singular Value Thresholding Algorithm
The basic approach in solving matrix completion is by formulating the rank-minimization problem (RMP). The general matrix RMP is given as denotes a large vector where all the columns are stacked on top of each other. In this paper, the vec notation will be omitted, and is written as . Hence, the general matrix RMP can now be expressed as . This method is acceptable for data fitting, however this algorithm is a nonconvex optimization. Thus, it is NP-hard (non-deterministic polynomial time hard) and too expensive for acquiring exact solutions [10]. By definition, Z is simply the number of singular values available. The sum of the singular values is known as the nuclear norm. Since EDM is a symmetric positive semidefinite matrix, a simple yet effective heuristic is applicable where its trace is minimized instead of its rank. This heuristic is called a nuclear-norm heuristic, or the minimization of the nuclear norm, or singular values of the matrix, as stated by Fazel et al. in [32,33]. This method is known as a convex function, which can be optimized simply via semidefinite programming (SDP) [14]. Hence, nuclearnorm minimization (NNM) is introduced to minimize the nuclear norm of the matrix over the linear equality constraint, ) (X i  denotes the singular value of X , and * X is known as the nuclear norm, Schatten 1norm, trace class norm or Ky-fan r-norm [31]. The optimization heuristic is given by: * min X (5) Subject to , and zero otherwise. The problem can now be expressed as * min X (7) Subject to Nuclear Norm Minimization (NNM) is one of the recent yet effective techniques that have been introduced for node localization. However, as it requires the implementation of SDP, it has another limitation, where the best SDP solvers only work for matrices with sizes of less than 100 × 100 [34].
Therefore, SVT is introduced to solve NNM iteratively to produce a better approximation to the rank of the matrix [14]. SVT is an extension of the method of the iterative soft-thresholding algorithm. This algorithm executes a soft-thresholding operation on a sparse matrix, and the rank of the iterate k X is empirically nondecreasing, which makes this algorithm well-suited for low-rank matrix completion problems. This algorithm not only ascertains a sparse singular vector but also the basis of the sparse representation.
Which defines the singular value shrinkage operator, T D : The following theorem then follows:  At each step, the computation of SVD is needed and elementary matrix operations will be performed. Equation (10) is the linearized Bregman iteration, which is a special example of Uzawa's algorithm.

Simulation
In this paper, sensor nodes are generated as 2xn matrices while random objects are modelled as circles of similar sizes, according to the given radius, which represent the obstacles between the nodes. The sensor nodes are placed on the plane randomly. If the sensor nodes fall on an object during placement, the sensor will be regenerated. The process is continued by the placement of the sensor nodes on the plane. The dimension of the field is set to be 200 200 x , as can be seen in Figure 2. Here, we check whether the sensor nodes fall on an object during placement. If this happens, the sensor nodes will be regenerated.
Next, the distances between neighboring nodes are calculated with respect to the x-axis and yaxis. The process of distance estimation is done using the technique of trilateration which make use of Equations (16) and (10). The distances are then transformed into the Euclidean Distance Matrix (EDM), as can be seen in Figure 2. The distance between the non-neighboring nodes can be calculated using the following steps: 1. Calculate the distance between coordinate p and anchor node, . Then, we have  Right: blue dots represent the entries in the Euclidean Distance Matrix, corresponding to the neighboring sensors (nodes).
In Figure 2, the distances between the neighboring nodes are connected by red lines; whereas, for non-neighboring nodes, their distances are calculated by solving b A  ) (X which is done using the method of trilateration. The distances that have been calculated will be transformed into the partial EDM and, hence, will proceed with the process of matrix completion, as explained in Section 4.1.

Matrix Completion
First, the partial EDM is decomposed using SVD. The decomposition produces an array of singular value matrices with respect to the x-axis and y-axis, in which where  is the singular value matrix.
Next, the matrix completion process is continued using Nuclear Norm Minimization (NNM) with the implementation of two techniques-Semidefinite Programming (SDP) and Singular Value Thresholding (SVT).

Nuclear Norm Minimization (NNM)
This technique optimizes array of singular value matrices subject to limited known constraints by using two algorithms, which are Semidefinite Programming (SDP) and Singular Value Thresholding (SVT).

Let
) (X C be the linear function of X and b is the singular value matrix. Then : This is done by using the CVX toolbox in MATLAB [35].

Singular Value Thresholding
Subject to The optimization is done by using two techniques which are Convex Optimization through Semidefinite Programming (SDP) and also via Singular Value Thresholding (SVT). The optimization is done using MATLAB. Once the optimization process is completed, the location of the sensors can be located.

Results and Discussions
The average number of missing entries in the EDM is computed for a range of 1 to 20 sensors. The average is calculated by generating 100 random scenarios for each number of obstacles. Figure 3 shows the relationship between the number and size of objects and its effect on the proportion of missing entries. The proportion of missing entries increased as the number and size of the objects increased. This shows that a greater number of objects (obstacles), or the larger size of the objects, will both inevitably result in a greater number of missing entries in the Euclidean Distance Matrix (EDM). Based on this result, the number and size of objects in this paper are fixed to five objects with a size of 8cm. 1. Next, matrix completion is implemented using Singular Value Thresholding in MATLAB and the results are attached in Appendix 1. 2. The complete EDM is now reconstructed via the technique of Trilateration in MATLAB and the results are stated in Table 1. Our computational results are displayed in Tables 1 and 2. Table 1 states the number of sensor nodes deployed, percentage of missing entries, percentage of missing entries in the incomplete EDM, the relative error of EDM, relative recovery error and the run time in seconds for 2-dimensional Wireless Sensor Network localization via Semidefinite Programming (CVX Toolbox). Table 2 states the number of sensor nodes deployed, number of iterations needed for convergence, percentage of missing entries in the incomplete EDM, the run time in seconds, the relative error of EDM and relative recovery error for 2-dimensional Wireless Sensor Network localization via Singular Value Thresholding.  Table 1 shows that, for a number of sensor nodes less than 100, WSN localization via SDP by using CVX toolbox works quite well, with 4.529 × 10 −4 and 5.06 × 10 1 as the average relative error of EDM and the average relative recovery error, respectively. However, as stated in [35], where the best SDP solvers only work for matrices with sizes of less than 100 × 100, it can be seen that the relative error of EDM and relative recovery error of the reconstructed node location are high for sensor nodes with 100 or more nodes. Therefore, although the SDP method is simple and user-friendly with the application of CVX toolbox in MATLAB, the method is proven to have limitations in the number of sensor nodes, which affects the size of the EDM.
On the contrary, we can see in Table 2 that the proposed technique produces a stable relative error of EDM and relative recovery error of the reconstructed node location for all sensor nodes. The number of missing nodes depends on the percentage of missing entries that are produced during the simulation. Since the number and size of objects in this simulation are fixed to five objects with sizes of 8 cm, as the number of sensor nodes increases, the number of missing entries will be decreasing. The average relative recovery error of the reconstructed node location via SVT is 5.974 × 10 −1 , while the average relative error for matrix completion via SVT is 5.074 × 10 −5 .

Conclusions
This research proposes the implementation of Singular Value Thresholding along with the application of Nuclear Norm Minimization (NNM) for 2-dimensional (2-D) Wireless Sensor Network localization (with obstacles). The process of matrix completion via SVT produces a low average relative error, which is 5.074 × 10 −5 . However, the average relative recovery error of the reconstructed node location is 5.974 × 10 −1 which can be improvised, referring to the lower matrix completion's relative error. Further work is needed to improvise the process of node reconstruction.