Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

Visible light fingerprint database recovery algorithm based on CP decomposition

Open Access Open Access

Abstract

Visible light communication(VLC) is a new method of indoor communication. It can provide an effective solution for indoor positioning. Fingerprint-based visible light positioning(VLP) has been widely studied for its feasibility and high accuracy. The acquisition of ‘fingerprint database’ is crucial for accurate VLP. However, sparse sensors such as photodiode(PD) can only be arranged because of the space-limited scenario and high costs. Correspondingly, it results in the loss of the fingerprint database. Therefore, it is indispensable to solve the problem of how to effectively and accurately recover the fingerprint database from measurements of sparsely arranged sensors. In this paper, we propose a spatio-temporal constraint tensor completion (SCTC) algorithm based on CANDECOMP/PARAFAC (CP) decomposition to recover the fingerprint database from measurements of sparsely arranged sensors. Specifically, we model the measurements from the spatial and temporal dimensions as a tensor, and formulate the optimization problem based on the low-rank feature of the tensor. To improve the recovery accuracy, spatial and temporal constraint matrices are introduced to effectively constrain the optimization direction when completing the tensor. Spatial constraint matrices are constructed by utilizing the mode-n expansion matrix of the tensor based on the undirected graph theory. Accordingly, the Toeplitz matrix is used as the temporal constraint matrix to excavate the temporal correlation of the tensor. Since the optimization problem is non-convex and difficult to solve, we introduce CP decomposition to decompose the tensor into several factor matrices. By solving the factor matrices, the original tensor is reconstructed. The performance of the proposed SCTC algorithm is confirmed via experimental measured data.

© 2023 Optica Publishing Group under the terms of the Optica Open Access Publishing Agreement

1. Introduction

In the past few decades, due to the importance of position based services in various practical applications such as smart home, robot navigation, library route guidance [1], large-scale supermarket shopping [2] and so on, the demand for indoor position based services has been increasing. Many positioning systems have been studied to estimate the position of objects in the environment. For outdoor environments, global positioning system(GPS) can achieve high accuracy positioning. However, GPS cannot work reliably indoors due to the blockage of buildings. Accordingly, some indoor positioning systems have been developed, including technologies such as Wi-Fi [3], radio-frequency identification [4], ultra-wideband [5], and ZigBee [6]. Unfortunately, these technologies have limitations in terms of positioning accuracy and stability due to multipath effect.

In recent years, visible light communication(VLC) technology has shown great potential for high-precision indoor positioning [7]. VLC uses light in the visible band as the information carrier for communication, which has the advantages of low energy consumption and high security [8]. For visible light positioning(VLP), the most commonly used signal characteristic is the received signal strength (RSS), correspondingly, photodiode (PD) is usually used as the optical signal detector. Visible light-based localization algorithms mainly include proximity-, fingerprinting-, and geometry-based methods [9]. Fingerprint-based positioning systems have been widely studied for the feasibility and low complexity [10], which can obtain accurate positions by simple calibration.

Owing to factors such as obstacle occlusions and sunlight influences in the environment, it is actually difficult to obtain an accurate channel model. Therefore, it is hard to effectively construct the corresponding fingerprint database. An alternative way is to arrange dense PDs to make detections without the knowledge of the channel model. However, due to the space-limited scenario and high cost, sparse PD arrangement is indispensable. Hence, how to recover the fingerprint database from the sparse PD measurements is a challenge.

Recovering the fingerprint database through sparse PD measurements can be regarded as a sparse data filling problem. At present, some data recovery algorithms have been widely studied. For each sample to be determined, K-nearest neighbors (KNN) algorithm [11,12] achieves classification or numerical prediction by searching for the $K$ nearest samples in the feature space. Accordingly, this method requires extensive computation. Singular value threshold(SVT) algorithms [1315] perform singular value decomposition on the matrix to restore the sparse matrix iteratively. It can not fully utilize the multidimensional characteristics of data, which results in unsatisfactory accuracy. Compressed sensing(CS) algorithms [1618] creatively combine the norm minimization with undersampling to reconstruct sparse signals. But its performance is limited to the used random sampling matrix. Matrix filling algorithms [19] and tensor completion algorithms [20,21] recover data based on the low-rank feature of matrices or tensors. However, the accuracy of these algorithms could be further improved, as they fail to fully exploit the potential spatio-temporal correlations of the data. More importantly, the PDs in the environment are usually sparsely arranged beforehand, which results in missing data in the locations without PDs. Unfortunately, the data recovery algorithms in the recent literature focus more on random missing, rather than the missing form caused by sparsely arranged PDs. To solve this problem, a new tensor completion algorithm based on CANDECOMP/PARAFAC(CP) decomposition is proposed in this paper. It is worth noting that Abou-Shehada et al. [22] proposed a weighted KNN approach for fingerprint recognition in VLP. They used the sparse RSS dataset to obtained the fingerprint database by pathloss exponent calibration and finally achieved accurate positioning. However, the pathloss calibration is still based on the availability of the channel model. The advantage of our paper is that no calibration is required and the fingerprint database can be directly and accurately restored by the proposed algorithm, thus allowing it to be applied in a wide range of scenarios. The main contributions in this paper are summarized as follows:

  • 1. In order to solve the missing data caused by the arrangement of sparse PDs, a spatio-temporal constraint tensor completion(SCTC) algorithm based on CP decomposition is proposed in this paper. We model the measured data by PDs as a tensor. By analyzing potential low-rank feature of the tensor, the optimization problem is formulated to recover the fingerprint database. During the solution process of the optimization problem, we analyze the spatio-temporal correlation of the tensor and designed the spatio-temporal constraint matrices to improve the recovery accuracy. Specifically, the spatial constraint matrices are constructed based on graph theory. Subsequently, the Toeplitz matrix is used as the temporal constraint matrix. Since the optimization problem is non-convex and difficult to solve, we implement CP decomposition on the tensor and transform the optimization problem into solving three factor matrices in alternating iterations. Finally, the original tensor is reconstructed by the factor matrices.
  • 2. To verify the performance of the proposed SCTC algorithm, a $1.2\times 0.6\times 1.5 m^3$ visible light experimental environment is built. We divided the ground into $12\times 6$ grids and placed PDs in the grids to obtain the illuminance, which is used as the received signal. The missing ratio of PDs is set from 0.1 to 0.9 to evaluate the recovery performance of the proposed algorithm. The results show that the proposed SCTC algorithm has better data recovery performance for dealing with missing data caused by sparse PDs.

The remainder of the paper is organized as follows. The preliminaries are presented in Section 2. Section 3 introduces the system model and the low-rank feature of the data tensor. Section 4 details the proposed algorithm and the process of solving optimization problems. In section 5, we evaluate the performance of the proposed algorithm via experimental data. Finally, we summarized the work in section 6.

2. Preliminaries

In this section, some basic notations and necessary definitions are presented. The following notations are used throughout this paper. Tensors are denoted by uppercase calligraphic letters (${\cal X,Y,Z\ldots }$), matrices are written as uppercase boldfaced letters(X,Y,Z…), vectors are represented by lowercase boldfaced letters (x,y,z…). Symbol $\lVert. \rVert _0$, $\lVert. \rVert _1$ and $\lVert. \rVert _2$ respectively stands for the L$_0$, L$_1$ and L$_2$ norm. Subsequently, symbol $\lVert. \rVert _F$ and $\lVert. \rVert _*$ denotes the Frobenius norm and nuclear norm respectively. The relevant variables used in this paper are summarized in Table 1.

Tables Icon

Table 1. Key variables in this paper

Definition 1 (Kronecker product of matrix [23]): The Kronecker product of matrix A$\in \mathbb {R}^{m \times n}$ and B$\in \mathbb {R}^{M \times N}$ is defined as A$\otimes$B=[$a_{ij}\cdot$B]$\in \mathbb {R}^{mM \times nN}$, in which $a_{ij}\in$A.

Definition 2 (Khatri-Rao product of matrix): The Khatri-Rao product of matrix A$\in \mathbb {R}^{I \times K}$ and B$\in \mathbb {R}^{J \times K}$ is defined as A$\odot$B=[a$_{1}\otimes$b$_{1}$ a$_{2}\otimes$b$_{2}$a$_{K}\otimes$b$_{K}$]$\in \mathbb {R}^{IJ \times K}$, in which ${\textbf {a}}_{k}$ and ${\textbf {b}}_{k}$ respectively denotes a column of matrix A and B, ${k}\;\in \;\left \{ {1,2 \ldots,K} \right \}$.

Definition 3 (Slice of tensor [24]): A $3$-order tensor can be represented by a set of two-dimensional slices. For tensor ${\cal X}\;\in \;\mathbb {R}^{L \times W \times T}$, slices in various directions can be obtained by observing from different dimensions, denoted by $\textbf{X}_{l,:,:}$, $\textbf{X}_{:,w,:}$, and $\textbf{X}_{:,:,t}$ respectively, where $l\in \left \{ {1,2,\ldots,L} \right \}$, $w\in \left \{ {1,2,\ldots,W} \right \}$ and $t\in \left \{ {1,2,\ldots,T} \right \}$.

Definition 4 (Tensor expansion by mode-$n$ [25]): Mode-$n$ expansion is to unfold tensor into matrix format according to a predefined rule. Generally, mode-$n$ expansion of tensor ${\cal X}_N\;\in \;\mathbb {R}^{I_1 \times I_2 \times \ldots \times I_N}$ along its $n$-th mode into a matrix is defined as X$_{N(n)}\;\in \;\mathbb {R}^{I_n \times \prod _{j\not =n} I_j}$, $n\in \left \{ {1,2,\ldots,N} \right \}$. As shown in Fig. 1, we illustrate the mode-$1$, mode-$2$ and mode-$3$ expansion of the $3$-order tensor ${\cal X}\;\in \;\mathbb {R}^{L \times W \times T}$.

 figure: Fig. 1.

Fig. 1. Schematic diagram of mode-$1$, $2$, $3$ expansion.

Download Full Size | PDF

Definition 5 (Rank-1 tensor): If tensor ${\cal X}_N\;\in \;\mathbb {R}^{I_1 \times I_2 \times \ldots \times I_N}$ can be written as the outer product of $N$ vectors, it is called rank-1 tensor. Accordingly, rank-1 tensor ${\cal X}_N$ can be denoted as ${\cal X}_N$=${\textbf{v}^{(1)} \circ \textbf{v}^{(2)} \circ \ldots \circ \textbf{v}^{(N)}}$, in which ${\textbf{v}^{(n)}}\in \mathbb {R}^{I_n}$ and $n\in \left \{ {1,2,\ldots,N} \right \}$.

Definition 6 (Tensor rank): The rank of tensor is defined as the minimum number of rank-1 tensor required to restore the current tensor. A tensor ${\cal X}_N$ with rank $R$ can be expressed as ${\cal X}_N$=$\sum\limits _{r = 1}^{R}{\textbf{v}_r^{(1)} \circ \textbf{v}_r^{(2)} \circ \ldots \circ \textbf{v}_r^{(N)}}$, in which ${\textbf{v}_r^{(n)}}\in \mathbb {R}^{I_n}$ and $n\in \left \{ {1,2,\ldots,N} \right \}$.

Definition 7 (CP decomposition [26]): CP decomposition is to decompose a tensor into the sum of a series of rank-1 tensors, by this way, the $N$-order tensor ${\cal X}_N\;\in \;\mathbb {R}^{I_1 \times I_2 \times \ldots \times I_N}$ with rank $R$ can be decomposed to ${\cal X}_N$=$\sum\limits _{r = 1}^{R}{\textbf{v}_r^{(1)} \circ \textbf{v}_r^{(2)} \circ \ldots \circ \textbf{v}_r^{(N)}}$. By introducing the factor matrices V$_{(n)}$=$[\textbf{v}_1^{(n)},\textbf{v}_2^{(n)},\ldots,\textbf{v}_R^{(n)}]\in \mathbb {R}^{I_n\times R}$, tensor ${\cal X}$ can be further denoted as ${\cal X}_N$=$\left [\kern -0.15em\left [ {\textbf {V}^{(1)},\textbf {V}^{(2)},\ldots,\textbf {V}^{(N)}} \right ]\kern -0.15em\right ]$.

3. System model and problem formulation

In this section, we illustrate the system configuration diagram, including the layout of LED luminaires and PDs. The illuminance received by PDs is modeled as a tensor. Furthermore, we analyze the low-rank feature of the tensor. Based on that, the corresponding optimization problem is formulated.

3.1 System configuration

Considering an indoor scenario, the LED is mounted in the geometric centre of the ceiling. The PDs are placed on the floor to measure illuminance. The scenario diagram of the indoor VLC system is shown in Fig. 2.

 figure: Fig. 2.

Fig. 2. The VLC system model.

Download Full Size | PDF

In the VLC network, it is assumed that the receiver plane of each PD is paralleled to the ceilling. The vertical distance $h$ from the LED to the ground is constant. Since the light signal intensity from reflection and diffusion is much less than that from the line of sight(LOS) transmission in the VLC environment [27], the direct current (DC) channel gain of the LOS link between the LED and PD$_i$ is given as [28],

$$H_{i} =\left\{\begin{array}{ll}{\frac{{(m + 1)A{R_{PD}}}}{{2\pi D_{i}^2}}{{\cos }^{(m)}}({\phi _{i}}){T_s}({\psi _{i}})g({\psi _{i}})\cos ({\psi _{i}}),} & {0 \le {\psi _{i}} \le {\Psi _c}}\\ {0,} & {{\psi _{i}} > {\Psi _c}} \end{array} \right.$$
where $A$ is the physical area of the PD, $m = - 1/{\log _2}(\cos {\phi _{1/2}})$ is the order of the Lambertian index, ${{R_{PD}}}$ denotes the responsivity of the PD, which is a constant. ${{\phi _{i}}}$ and ${{\psi _{i}}}$ are the irradiance angle and incidence angle of PD$_i$, respectively. ${{T_s}({\psi _{i}})}$ represents the gain of an optical filter of PD$_i$. ${D_{i}}$ is the distance between LED and PD$_i$, which can be calculated from the vertical distance $h$ and the horizontal distance $r_m$ as follows:
$${D_{i}} = \sqrt {{h^2} + {r^2_m}}$$

The gain of optical concentrator ${g({\psi _{i}})}$ is given as [29]:

$$g({\psi _{i}})= \left\{ {\begin{array}{ll} {\frac{{{\eta^2}}}{{{{\sin }^2}{\Psi _c}}},} & {0 \le {\psi _{i}} \le {\Psi _c}}\\ {0,} & {{\psi _{i}} > {\Psi _c}} \end{array}} \right.$$
where ${\eta }$ denotes the refractive index, ${{\Psi _c}}$ is the field-of-view of PD$_i$.

The affecting factors of the missing data in the fingerprint database mainly include: (1) the size of the grids division, (2) the sparseness of the sensors arrangement, (3) the sampling time, etc. The illuminance in the environment varies continuously with space and time. However, we only obtain the illuminance by arranging sparse PDs on the discrete grids, which results in missing data for grids without PD. Consequently, the incomplete data are definitely introduced. The location set of all grids is defined as:

$$Gs = {L} \otimes {W} = \left\{ {\left( {{g_l},{g_w}} \right)\left | {{l} \in } \right.\left\{ {1,2 \ldots,L} \right\}, {w} \in \left\{ {1,2 \ldots,W} \right\}} \right\}$$
where ${{\left ( {{g_l},{g_w}} \right )}}$ is the geometric center coordinate of the divided grid, and PD is placed in the center of the grid. ${\otimes }$ is the Hadamard product operation. ${L}$ and ${W}$ denote the number of grids in the horizontal and vertical directions respectively.

To distinguish the different scenarios that our algorithm and most other algorithms focus on, here we define two forms of data missing, including random missing (RM) and sensor time series missing (STSM). Arranging sensors at all grids to sample randomly at certain slots results in RM. However, it is difficult to achieve in practice. If sparse sensors are placed in the environment to sample data for a period of time simultaneously, it results in STSM. We construct the measured data as a third-order tensor $\cal X\;\in \mathbb {R} ^{L,W,T}$, where $T$ denotes the number of slots.

Schematic diagrams of RM and STSM are shown in Fig. 3(a) and Fig. 3(b) respectively. The orange cubes represent the measured data and the white cubes denote the missing data. In the practical scenario, only sparse PDs can be arranged. Hence, we focus on the scenario of STSM.

 figure: Fig. 3.

Fig. 3. Two missing forms of the data tensor: RM and STSM.

Download Full Size | PDF

3.2 Low rank analysis

The low-rank feature of the tensor provides the theoretical basis for data recovery. Tensor singular value decomposition(t-SVD) is a new decomposition framework based on the tensor product operation [30], mainly for the decomposition of 3-D tensor. Unlike CP decomposition or Tucker decomposition, the advantage of t-SVD is that the singular values of the tensor can be obtained intuitively. The t-SVD decomposition model of a third-order tensor is shown in Fig. 4.

 figure: Fig. 4.

Fig. 4. Schematic diagram of t-SVD.

Download Full Size | PDF

Accordingly, the t-SVD decomposition of $\cal X$ can be expressed as follows:

$${\cal X} ={\cal U*S}*{\cal V}^T$$
where $\cal X\in R^{L\times W\times T}$ is the tensor to be decomposed. $\cal U\in R^{T\times W\times T}$ and $\cal V\in R^{L\times W\times L}$ are the orthogonal tensor, and $\cal S\in R^{L\times W\times T}$ is the diagonal tensor. The elements on the diagonal of the tensor $\cal S$ are singular values.

The singular values have been sorted from the largest to the smallest in the process of t-SVD. The sum of the first $n$ singular values is $E_n$, the sum of all singular values is $E_{total}$, and we define the ratio $E_n/E_{total}$ as the energy accumulation ratio. Accordingly, to illustrate the effect of missing data on the low-rank feature of the tensor, we further analyze the variation of the energy accumulation ratio with the number of singular values in both RM and STSM scenarios.

As shown in Fig. 5, only a few singular values are needed to take the energy accumulation rate close to 1, which reflects the low-rank feature of the tensor. Moreover, comparing Fig. 5(a) and (b), the energy accumulation rate in the STSM scenario rises more slowly than in the RM scenario. It can be concluded that the low-rank feature of the tensor is certainly destroyed in the STSM scenario.

 figure: Fig. 5.

Fig. 5. The change of energy accumulation rate under different data missing ratios.

Download Full Size | PDF

3.3 Problem formulation

The fingerprint database is recovered by measured data of sparse PDs, which can actually be transformed into a tensor completion problem. Based on the low-rank feature of the data tensor, we propose the corresponding optimization problem for recovering data tensor.

Before introducing the low rank tensor completion problem, let us start with the well-known low rank matrix completion [31]:

$$\min_{\bf{X}}: rank({\bf{X}}) \quad s.t. \textbf{X}_{\omega}=\textbf{M}_{\omega}$$
where $\textbf{X}$ and $\textbf{M}$ denote the matrix to be recovered and the observed matrix, respectively. The elements of $\textbf{M}$ in the set $\omega$ are given while the remaining elements are missing.

Inspired by the low rank matrix completion problem, the low rank tensor completion problem can be expressed as:

$$\min_{\hat{\cal X}}: rank(\hat{\cal X}) \quad s.t. {\hat{\cal X}}_{\Omega}={\cal X}_{\Omega}$$
where $\hat {\cal X}\;\in \mathbb {R}^{L\times W\times T}$ and $\cal X\;\in \mathbb {R}^{L\times W\times T}$ denote the tensor to be recovered and the complete tensor, respectively. $\Omega$ represents the collection of measured elements. Accordingly, the recovery of data tensor is converted into the optimization problem of solving Eq. (7).

4. Proposed SCTC algorithm

In this section, we propose the SCTC algorithm based on CP decomposition to recover sparse PDs measured data. Then the procedure of constructing the spatial constraint matrix based on graph theory is given. Subsequently, the Toeplitz matrix is used as the temporal constraint matrix.

4.1 Spatio-temporal constraint tensor comlpetion based on CP decomposition

Note that although the rank of matrix in optimization problem (7) is NP-hard [32] and difficult to solve, since the nuclear norm is the tightest convex envelope of the matrix rank, some literature proves that currently using nuclear norm as a substitution is still the optimal solution [33,34]. Accordingly, applying this method to tensors, we deduce the optimization problem (7) as follows:

$$\min_{\hat{\cal X}}: \parallel{\hat{\cal X}}\parallel_{{\ast}} \quad s.t. {\hat{\cal X}}_{\Omega}=({\cal X}_T)_{\Omega}$$

Since the nuclear norm is proposed for matrices, here we give the definition of the nuclear norm of the $n$-th order tensor ${\cal X}_n$:

$$\parallel{{\cal X}_n}\parallel_{{\ast}}=\sum_{i = 1}^n \mu_i \parallel{{\cal X}_n}{_{(i)}}\parallel_{{\ast}}$$
where $\mu _i$ is a constant satisfying $\mu _i\geq 0$ and $\sum\limits _{i = 1}^n \mu _i = 1$.

In essence, we can understand the nuclear norm of the tensor as some linear convex combination of the nuclear norm of all matrices expanded along each mode. It should be noted that, when the mode number $n$=2, the nuclear norm of tensor is completely consistent with the definition of the matrix. After introducing the definition of nuclear norm, we can further rewrite the optimization problem as:

$$\min_{\hat{\cal X}}:\sum_{i = 1}^3 \mu_i \parallel{\hat{\cal X}} {_{(i)}}\parallel_{{\ast}} \quad s.t. {\hat{\cal X}}_{\Omega}=({\cal X}_T)_{\Omega}$$

The tensor obtained from the total $T$ slots measured data is ${\cal X}_T$. Accordingly, we introduce a sampling operator ${\cal P}_{\Omega }$ to limit the consistency of elements at the same positions in different tensors, which can be denoted as:

$${(P_{\Omega({\cal X})})_{l,w,t}} = \left\{ {\begin{array}{cc} {x_{l,w,t}, } &{(l,w,t)\in {\Omega}} \\ 0, &{otherwise} \end{array}} \right.$$
where $x_{l,w,t}$ represents element observed in set ${\Omega }$. Subsequently, we use the Frobenius norm between $\hat {\cal X}$ and the known observed tensor ${\cal X}_T$ to constrain the optimization problem:
$$\min_{\hat{\cal X}}:\sum_{i = 1}^3 \mu_i \parallel{\hat{\cal X}}{_{(i)}}\parallel_{{\ast}} \quad s.t. \parallel{{\cal P}_{\Omega}(\hat{\cal X}-{\cal X}_T)}\parallel_{F}^2 \leq \varepsilon \\$$
where $\parallel (.)\parallel _{F}^2$ is Frobenius norm and $\varepsilon$ is a minimum normal number.

By introducing the constraint term as a regularization into the optimization problem, we obtain the new optimization problem as:

$$\min_{\hat{\cal X}}:\sum_{i = 1}^3 \mu_i \parallel{\hat{\cal X}}{_{(i)}}\parallel_{{\ast}}+ \rho \cdot{\parallel}{{\cal P}_{\Omega}(\hat{\cal X}-{\cal X}_T)}\parallel_{F}^2 \quad s.t. {\hat{\cal X}}= {\cal X}_T \\$$
where $\rho$ is the regularization factor.

The rank minimization constraint only ensures that the tensor is recovered with a minimal number of rank-one tensor to approximate the original tensor. However, it only obtains coarse optimization results. It is indispensable to further impose constraint on the optimization problem. However, imposing constraints on the nuclear norm is not easy. Therefore, the CP decomposition of tensor ${\cal X}$ is introduced.

$${{\cal X}}_T=\sum_{r = 1}^R {\bf{i}}_r \circ {\bf{j}}_r \circ {\bf{k}}_r = \left[\kern-0.15em\left[ \textbf{I},\textbf{J},\textbf{K} \right]\kern-0.15em\right]\\$$
where $R$ represents the rank of tensor $\cal X$. Accordingly, $\textbf{i}_r\in \mathbb {R}^{L}$, $\textbf{j}_r\in \mathbb {R}^{W}$ and $\textbf{k}_r\in \mathbb {R}^{T}$ are vectors with rank 1. $\bf {I}\in \mathbb {R}^{L\times R}$, $\bf {J}\in \mathbb {R}^{W\times R}$ and $\bf {K}\in \mathbb {R}^{T\times R}$ are the factor matrices obtained by CP decomposition.

By introducing the rank adjustment factor $\lambda$, the previous regularization factor $\rho$ can be substituted. We separate the three factor matrices and use the Frobenius norm to replace the nuclear norm. The optimization problem can be further transformed into:

$$\min_{\hat{\cal X}}: \parallel{{\cal P}_{\Omega}({\cal X}_T-\hat{\cal X})} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2+{\parallel} {\bf{K}} \parallel_{F}^2) \quad s.t. \hat{\cal X}=\left[\kern-0.15em\left[ \textbf{I},\textbf{J},\textbf{K} \right]\kern-0.15em\right]$$

Such an optimization problem can recover RM data. However, the recovery accuracy is limited for STSM data. Accordingly, we introduce spatial and temporal constraint matrices for the optimization problem. The spatio-temporal correlation of the tensor and the construction of the spatial and temporal constraint matrices would be described in the next subsection. Thus, we obtain the new optimization problem $f$ as:

$$\begin{aligned}&f=\min_{\bf{I,J,K}}: \parallel{{\cal P}_{\Omega}({\cal X}_T-\left[\kern-0.15em\left[ \textbf{I},\textbf{J},\textbf{K} \right]\kern-0.15em\right])} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2+\\ &\parallel {\bf{K}} \parallel_{F}^2)+\beta_1\parallel {{\bf{S}}_1\hat{\bf{X}}_{(1)}} \parallel{+}\beta_2\parallel {{\bf{S}}_2\hat{\bf{X}}_{(2)}}\parallel{+}\beta_3\parallel {{{\bf{T}}_K}\hat{\bf{X}}_{(3)}}\parallel \end{aligned}$$
where, $\beta _1$ and $\beta _2$ are the adjustment factors of spatial constraint matrices $\textbf{S}_1,\textbf{S}_2$, $\beta _3$ is the adjustment factor of temporal constraint matrix $\textbf{T}_K$. $\hat{\textbf{X}}_{(1)},\hat{\textbf{X}}_{(2)},\hat{\textbf{X}}_{(3)}$ is the mode-$1,2,3$ expansion of tensor ${\hat {\cal X}}$ respectively, which can be denoted as $\hat{\textbf{X}}_{(1)}$=I(K$\odot$J)$^T$, $\hat{\textbf{X}}_{(2)}$=J(K$\odot$I)$^T$ and $\hat{\textbf{X}}_{(3)}$=K(J$\odot$I)$^T$. Therefore, we can rewrite Eq. (16) as follows:
$$\begin{aligned}&f=\min_{\bf{I,J,K}}: \parallel{{\cal P}_{\Omega}({\cal X}_T-\left[\kern-0.15em\left[ \textbf{I},\textbf{J},\textbf{K} \right]\kern-0.15em\right])} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2 +{\parallel} {\bf{K}} \parallel_{F}^2)+\\ & \beta_1\parallel {{\bf{S}}_1\cdot \textbf{I}(\textbf{K}\odot\textbf{J})^T} \parallel{+}\beta_2\parallel {{\bf{S}}_2\cdot{\textbf{J}(\textbf{K}\odot\textbf{I})^T)}}\parallel{+}\beta_3\parallel{{{\bf{T}}_K}\cdot{\textbf{K}(\textbf{J}\odot\textbf{I})^T)}}\parallel \end{aligned}$$

The optimization problem in Eq. (17) is nonconvex and difficult to solve for the joint variables $\textbf{I},J$ and $\textbf{K}$. Therefore, we decompose the original optimization problem into three sub-optimization problems $f_1,f_2,f_3$ to solve $\bf {I,J,K}$ separately:

$$\begin{aligned}f_1&=\min_{\bf{I}}: \parallel{{\cal P}_{\Omega}({\bf{X}}_{T(1)}-\textbf{I}(\textbf{K}\odot\textbf{J})^T)} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2+{\parallel} {\bf{K}}\parallel_{F}^2)+\beta_1\parallel {{\bf{S}}_1\cdot{\textbf{I}(\textbf{K}\odot\textbf{J})^T)}} \parallel \\ f_2&=\min_{\bf{J}}: \parallel{{\cal P}_{\Omega}({\bf{X}}_{T(2)}-\textbf{J}(\textbf{K}\odot\textbf{I})^T)} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2+{\parallel} {\bf{K}} \parallel_{F}^2)+\beta_2\parallel {{\bf{S}}_2\cdot{\textbf{J}(\textbf{K}\odot\textbf{I})^T)}} \parallel \\ f_3&=\min_{\bf{K}}: \parallel{{\cal P}_{\Omega}({\bf{X}}_{T(3)}-\textbf{K}(\textbf{J}\odot\textbf{I})^T)} \parallel_{F}^2+\lambda({\parallel} {\bf{I}} \parallel_{F}^2+{\parallel} {\bf{J}} \parallel_{F}^2+{\parallel} {\bf{K}} \parallel_{F}^2)+\beta_3\parallel {{\bf{T}}_K\cdot{\textbf{K}(\textbf{J}\odot\textbf{I})^T)}} \parallel \end{aligned}$$
where $\textbf{X}_{T(1)},\textbf{X}_{T(2)},\textbf{X}_{T(3)}$ are the mode-$1,2,3$ expansion of tensor ${\cal X}_T$, respectively.

For Eq. (18), we solve it by alternating optimization. Specifically, the $\textbf{J}$ and $\textbf{K}$ matrices are fixed when solving for $\textbf{I}$. Since the optimization problem $f_1$ is convex and derivable with respect to matrix $\textbf{I}$, we directly derive $f_1$ as follows:

$$\frac{\partial f_1}{\partial \textbf{I}}=2({\bf{X}}_{T(1)}-\textbf{I}(\textbf{K}\odot\textbf{J})^T)(\textbf{K}\odot\textbf{J})+ 2\lambda {\bf{I}}+2\beta_1 {\bf{S}}_1^T[{\bf{S}}_1\cdot{\bf{I}}(\textbf{K}\odot\textbf{J})^T](\textbf{K}\odot\textbf{J})$$

Then, we let the derivative of $\frac {\partial f_1}{\partial \textbf{I}} = 0$ to obtain:

$${\bf{X}}_{T(1)}(\textbf{K}\odot\textbf{J})=\textbf{I}(\textbf{K}\odot\textbf{J})^T(\textbf{K}\odot\textbf{J})- \lambda {\bf{I}}-\beta_1 {\bf{S}}_1^T[{\bf{S}}_1\cdot{\bf{I}}(\textbf{K}\odot\textbf{J})^T](\textbf{K}\odot\textbf{J})$$

Similarly, the optimization problems $f_2$ and $f_3$ are convex and derivable with respect to matrix $\textbf{I}$ and $\textbf{K}$ respectively, we directly derive $f_2$ and $f_3$ as follows:

$$\frac{\partial f_2}{\partial \textbf{J}}=2({\bf{X}}_{T(2)}-\textbf{J}(\textbf{K}\odot\textbf{I})^T)(\textbf{K}\odot\textbf{I})+ 2\lambda {\bf{J}}+2\beta_2 {\bf{S}}_2^T[{\bf{S}}_2\cdot{\bf{J}}(\textbf{K}\odot\textbf{I})^T](\textbf{K}\odot\textbf{I})$$
$$\frac{\partial f_3}{\partial \textbf{K}}=2({\bf{X}}_{T(3)}-\textbf{K}(\textbf{J}\odot\textbf{I})^T)(\textbf{J}\odot\textbf{I})+ 2\lambda {\bf{K}}+2\beta_3 {\bf{T}}_K^T[{\bf{T}}_K\cdot{\bf{K}}(\textbf{J}\odot\textbf{I})^T](\textbf{J}\odot\textbf{I})$$

Let the derivative of $\frac {\partial f_2}{\partial \textbf{J}} = 0$ and $\frac {\partial f_3}{\partial \textbf{K}} = 0$, we obtain:

$${\bf{X}}_{T(2)}(\textbf{K}\odot\textbf{I})=\textbf{J}(\textbf{K}\odot\textbf{I})^T(\textbf{K}\odot\textbf{I})- \lambda {\bf{J}}-\beta_2 {\bf{S}}_2^T[{\bf{S}}_2\cdot{\bf{J}}(\textbf{K}\odot\textbf{I})^T](\textbf{K}\odot\textbf{I})$$
$${\bf{X}}_{T(3)}(\textbf{J}\odot\textbf{I})=\textbf{K}(\textbf{J}\odot\textbf{I})^T(\textbf{J}\odot\textbf{I})- \lambda {\bf{K}}-\beta_3 {\bf{T}}_K^T[{\bf{T}}_K\cdot{\bf{K}}(\textbf{J}\odot\textbf{I})^T](\textbf{J}\odot\textbf{I})$$

Tables Icon

Algorithm 1. Spatio-temporal Constraint Tensor Completion (SCTC)

Due to the Eq. (20),(23) and (24) are complex and difficult to solve, we use the conjugate gradient method and solve alternately to obtain $\bf {I},\bf {J}$ and $\bf {K}$. Finally, the estimated tensor $\hat {\cal X}$ is recovered through the factor matrices $\bf {I}$, $\bf {J}$ and $\bf {K}$:

$$\hat{\cal X}=\left[\kern-0.15em\left[ \textbf{I},\textbf{J},\textbf{K} \right]\kern-0.15em\right] =\sum_{r = 1}^R {{\bf{i}}_r} \circ {{\bf{j}}_r} \circ {{\bf{k}}_r}$$

The pseudocode of the proposed SCTC algorithm is illustrated in Algorithm  1.

4.2 Construction of constraint matrix

In this subsection, we firstly analyze the spatio-temporal correlation of data tensor. Subsequently, we illustrate the construction of the spatial and temporal constraint matrices.

4.2.1 Temporal constraint matrix

We calculate the spatial and temporal correlation for the data tensor. Specifically, we divide the data tensor into slice matrices and calculate the correlation from three dimensions of the tensor separately. The Pearson correlation coefficient is used to measure the correlation between the two slice matrices. For matrices $\textbf{{P,Q}} \in \mathbb {R}^{M \times N}$, the Pearson correlation coefficient is defined as follows:

$$\gamma = \frac{{\sum\limits_{m = 1}^M {\sum\limits_{n = 1}^N {({P_{mn}}} } - \bar P)({Q_{mn}} - \bar Q)}}{{\sqrt {{{(\sum\limits_{m = 1}^M {\sum\limits_{n = 1}^N {({P_{mn}}} } - \bar P)^2}}){{(\sum\limits_{m = 1}^M {\sum\limits_{n = 1}^N {({Q_{mn}}} } - \bar Q)^2}})} }}$$
where $P_{mn}$ and $Q_{mn}$ denote the element in matrices $\textbf{P}$ and $\textbf{Q}$, respectively. Accordingly, $\bar P$ and $\bar Q$ can be expressed as:
$$\bar P = \frac{{\sum\nolimits_{m = 1}^M {\sum\nolimits_{n = 1}^N {{P_{mn}}} } }}{{M \times N}} \quad \bar Q = \frac{{\sum\nolimits_{m = 1}^M {\sum\nolimits_{n = 1}^N {{Q_{mn}}} } }}{{M \times N}}$$

For example, we divide the tensor into $T$ time slice matrices on the time dimension. We calculate the correlation coefficients for any two time slice matrices to obtain the correlation schematic in Fig. 6(a). It can be seen that there is a high correlation between the two adjacent time slice matrices. This is because the illuminance is relatively stable over time in the absence of strong fluctuations from the outside.

 figure: Fig. 6.

Fig. 6. Temporal and spatial correlations of the considered tensor.

Download Full Size | PDF

Similarly, Fig. 6(b) and (c) show the high correlation among the slice matrices on spatial dimensions including horizontal and vertical directions. Accordingly, due to the symmetry of the data in the vertical and horizontal directions, a strong correlation is shown near the main diagonal in Fig. 6(b) and (c). Based on the high temporal and spatial correlation of the data tensor, we further design the corresponding constraint matrices.

According to the temporal correlation between any two time slice matrices in Fig. 6(a), the Toeplitz matrix is designed according to the temporal correlation of adjacent moments.

$${{\bf{T}}_K}= \left[ {\begin{array}{cccc} 1 & -1 & 0 & \ldots \\ 0 & 1 & -1 & \ldots \\ 0 & 0 & 1 & \ldots\\ \vdots & \vdots & \vdots & \ddots\\ \end{array} } \right]_{(T-1)\times T}$$

For $f_3$ in the optimization problem Eq. (18), the value of the constraint term should be as small as possible to avoid additional errors. The data measured by a PD corresponds to a column in the mode-$3$ expansion of the data tensor. Therefore, the Toeplitz matrix is used as the temporal constraint matrix multiplied with the mode-$3$ expansion, which maintains the temporal correlation among the data while solving the optimization problem.

4.2.2 Spatial constraint matrix

As shown in Fig. 6, there is a high correlation among the data tensor on the spatial dimension. We utilize the idea of undirected graph [35] to describe the relationship of spatial grids. The undirected graph can be expressed as $G = (V, E)$, where $V$ is a set of vertices representing grids and $E$ is a set of edges. And the correlation can be described by Laplace matrix $\textbf{L}$, which is defined as $\textbf{L} = D-\textbf{A}_d$, where $\textbf{D}$ and $\textbf{A}_d$ are the degree matrix and adjacency matrix of the graph respectively. Thus, we construct spatial constraint matrices based on Laplace transform.

For the data tensor, the rows of mode-$1$ expansion matrix correspond to the rows of grids, and the columns of mode-$2$ expansion matrix correspond to the columns of grids. Hence, we utilize $\textbf{X}_{(1)}$ and $\textbf{X}_{(2)}$ to construct the spatial constraint matrices $\textbf{S}_1$ and $\textbf{S}_2$, respectively. The process of constructing $\textbf{S}_1$ is as follows.

Firstly, We calculate the correlation coefficient between any two rows of $\textbf{X}_{(1)}$. The correlation coefficient $\rho _{ij}$ between two vectors ${{\textbf{x}_i}}$ and ${{\textbf{x}_j}}$ is defined as:

$${\rho _{ij}} = \frac{{{\mathop{\rm cov}} ({{\bf{x}}_i},{{\bf{x}}_j})}}{{{\sigma _{{{\bf{x}}_i}}}{\sigma _{{{\bf{x}}_j}}}}}$$
where ${{{\sigma _{{\textbf{x}_i}}}}}$ and ${{{\sigma _{{\textbf{x}_j}}}}}$ are variances of ${{\textbf{x}_i}}$ and ${{\textbf{x}_j}}$, respectively. Incidentally, the correlation is strongest when $\rho _{ij}$ is 1 and weakest when $\rho _{ij}$ is 0.

Referring to the undirected graph theory, the adjacency matrix $\textbf{A}_d\in \mathbb {R}^{L\times L}$ can be expressed as:

$${\bf{A}}_d=\begin{bmatrix} a_{11} & \dots & a_{1L} \\ \vdots & \ddots & \vdots \\ a_{L1} & \dots & a_{LL} \end{bmatrix}_{L \times L}$$

We set the threshold $u$ of the correlation coefficient to 0.9. If the correlation coefficient $\rho _{ij}$ between ${{\textbf{x}_i}}$ and ${{\textbf{x}_j}}$ is greater than $u$, let $a_{ij}=1$, otherwise $a_{ij}=0$, $i,j \in \left \{ {1,2, \ldots,L} \right \}$. It can be expressed as:

$${{a}_{ij}} = \left\{ {\begin{array}{cc} 1 &{\rho_{ij}>u}, i\neq j \\ 0, &{otherwise} \end{array}} \right.$$

In particular, since we do not consider the autocorrelation of each row vector, all elements on the diagonal of the matrix $\textbf{A}_d$ are 0, i.e., $a_{ii}=0$.

Next we calculate the sum of the elements of each column of the adjacency matrix $\textbf{A}_d$. Accordingly, the sum are placed on the diagonal of the corresponding column separately, and the elements on the other positions are zero. The matrix obtained is called the degree matrix $\bf {D}$.

$${\bf{D}}=\begin{bmatrix} a_{11}+a_{21}+\dots a_{L1} & \dots & 0 \\ \vdots & \ddots & \vdots \\ 0 & \dots & a_{1L}+a_{2L}+\dots a_{LL} \end{bmatrix}_{L \times L}$$

Obviously, $\bf {D}$ is a diagonal matrix. Finally, we obtain the spatial constraint matrix $\textbf{S}_1$ by subtracting the degree matrix $\bf {D}$ from the adjacency matrix $\textbf{A}_d$.

$${{\bf{S}}_1}={\bf{D}}-{\bf{A}}_d$$

The process of constructing the spatial constraint matrix $\textbf{S}_1$ is illustrated in Algorithm  2.

Tables Icon

Algorithm 2. The label and the caption are preserved here, and the body of the algorithm can be found below.

The construction method of the spatial constraint matrix $\textbf{S}_2$ is similar to $\textbf{S}_1$, and it is sufficient to use the mode-$2$ expansion of the tensor $\cal X$.

5. Experiment results

In this section, we validate the performance of the proposed algorithm using the experimental measured data.

5.1 Experimental setup

5.1.1 Dataset

A $1.2\times 0.6\times 1.5 m^3$ VLC system is shown in Fig. 7. The LED luminaire is embedded in the center of the ceiling, and the floor is divided into square grids with $0.1m$ side length. Each PD is placed in the center of the grid. The received signal is the illuminance in lux. The entire experimental environment was covered with a black cloth to reduce the impact of light and pedestrians in the environment.

 figure: Fig. 7.

Fig. 7. Experimental setup.

Download Full Size | PDF

Accordingly, the relevant parameters are given in Table 2.

Tables Icon

Table 2. Experimental parameters

We model the measured data as tensor ${\cal X}\in \;\mathbb {R}^{L\times W\times T}$. $L$=12 and $W$=6 are the number of horizontal and vertical grids respectively. $T$ = 120 represents the number of time slots. The element ${\cal X}_{l,w,t}$, $l \in \left \{ {1,2, \ldots,L} \right \}$, $w \in \left \{ {1,2, \ldots,W} \right \}$, $t \in \left \{ {1,2, \ldots,T} \right \}$ in tensor represents the illuminance of the $t$-th time slot at the $l$-th and $w$-th grid.

5.1.2 Parameter setting

Considering the optimization problem of Eq. (18), the values of each regulator are empirically set as $\beta _1$=$\beta _2$=$\beta _3=6\times 10^{1}$, $\lambda =0.3$. Meanwhile, we will analyze the errors of different ranks to determine the appropriate rank value.

5.1.3 Error evaluation criteria

In order to quantitatively evaluate the performance of the proposed algorithm, we use relative mean square error (RMSE) to measure the accuracy of data recovery:

$$RMSE=\frac{\parallel {\cal X}-\hat{\cal X}\parallel_2^2}{\parallel{\cal X}\parallel_2^2} \\$$
where ${\cal X}$ and $\hat {\cal X}$ denote the original data tensor and the restored data tensor, respectively.

5.2 Performance analysis

We present the recovery results of the proposed SCTC algorithm using the measured data. Subsequently, we analyze the performance from various aspects, such as algorithm convergence and error.

5.2.1 Robustness analysis

Figure 8 shows the error analysis of $R$=4,6 and 8 in the scenario of STSM. It can be seen that for a certain rank, the RMSE increases with the increase of the missing proportion. Moreover, when the missing proportion is fixed, the RMSE decreases as the rank increases. This is because when the rank increases, more rank-one tensors can be used to construct the original tensor, more accurate recovery results are obtained.

 figure: Fig. 8.

Fig. 8. Variation of error with missing rate at $R$=4, 6 and 8.

Download Full Size | PDF

In general, the RMSE variation among the different ranks is small, and all are within an acceptable range. Since spatio-temporal constraint matrices are introduced in the algorithm, which can effectively constrain the data recovery process, the algorithm is robust for different ranks. Accordingly, the results illustrate that the proposed SCTC algorithm is robust and recovers well for different ranks.

5.2.2 Convergence analysis

The convergence analysis of the proposed algorithm is given in Fig. 9. It can be seen that as the missing rate increases, the RMSE increases and the convergence speed slows down. When the missing rate is fixed, the RMSE decreases as the rank increases. Because when more rank-one tensors are used to restore the original tensor, more accurate results can be obtained with less error. Moreover, the convergence curves show that the algorithm converges basically within 5 iterations. Hence, we can conclude that the proposed SCTC algorithm has good convergence and robustness. Considering the errors and computational complexity under different ranks, we set $R$=6 for subsequent experiments.

 figure: Fig. 9.

Fig. 9. The convergence of the algorithm when R=4,6 and 8 using experimental data.

Download Full Size | PDF

5.2.3 Recovery error comparison

In this section, we compare the performance of the proposed SCTC algorithm with several commonly used data recovery algorithms. The baseline data recovery algorithms used here are mainly divided into the following four categories: (1)SVT decomposition algorithm [36]; (2) CS algorithm [37]; (3)High accuracy low rank tensor completion(HaLRTC) [31]. (4)Low-Rank High-Order Tensor Completion algorithm With Applications in Visual Data (HTNN-FFT) [38]. For comparison, we also used the algorithm based on CP decomposition, which does not involve utilizing the spatio-temporal correlation of the data tensor.

Through experiment, we compare the recovery performance of the proposed SCTC algorithm and several other baseline data recovery algorithms in the STSM scenario, where the missing ratio varies from 0.1 to 0.9. Experimental results of data recovery errors are given in Fig. 10. Obviously, the RMSE of various recovery algorithms increases as the missing rate increases. Since the proposed SCTC algorithm introduces spatio-temporal constraint matrices, which can provide effective guidance in the process of data recovery to avoid serious distortion of the recovered data. In general, the proposed SCTC algorithm has better stability and a smaller RMSE, especially when the proportion of missing data increases.

 figure: Fig. 10.

Fig. 10. Performance comparison of various recovery algorithms under STSM scenario.

Download Full Size | PDF

5.2.4 Time complexity analysis

The time complexity of various algorithms is shown in Fig. 11. Overall, the time required for various algorithms is not significant due to the small amount of data used. Since the proposed SCTC algorithm converges only within a few iterations, which reduces a large amount of computational and time complexity. Moreover, compared with the recovery algorithm using only CP decomposition, faster convergence can be obtained because the proposed algorithm imposes spatial and temporal constraint matrices. In general, the time complexity of our algorithm is significantly lower than other algorithms.

 figure: Fig. 11.

Fig. 11. Comparison of the calculation time of different data recovery algorithms.

Download Full Size | PDF

6. Conclusion

In this paper, we proposed a SCTC algorithm to solve the problem of missing data caused by sparsely arranged PDs. Reasonable constraint for the optimization problem in this algorithm was constructed by introducing spatial and temporal constraint matrices. Then we validated the performance of the proposed algorithm using an experimental measured dataset. The results showed that the proposed algorithm outperformed other algorithms in terms of RMSE and time complexity.

Funding

Graduate Research and Innovation Projects of Jiangsu Province (KYCX22-3661); The Six talent peak high level talent plan projects of Jiangsu Province (XYDXX-115); Project 333 of Jiangsu Province.

Disclosures

The authors declare no conflicts of interest.

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

References

1. T.-C. Huang, Y. Shu, T.-C. Yeh, and P.-Y. Zeng, “Get lost in the library? an innovative application of augmented reality and indoor positioning technologies,” The Electron. Libr. 34(1), 99–115 (2016). [CrossRef]  

2. O. Raad, M. Makdessi, Y. Mohamad, and I. Damaj, “Sysmart indoor services: a system of smart and connected supermarkets,” in 2018 IEEE Canadian Conference on Electrical & Computer Engineering (CCECE), (IEEE, 2018), pp. 1–6.

3. S. He and S.-H. G. Chan, “Wi-fi fingerprint-based indoor positioning: Recent advances and comparisons,” IEEE Commun. Surv. Tutorials 18(1), 466–490 (2016). [CrossRef]  

4. A. F. Errington, B. L. Daku, and A. F. Prugger, “Initial position estimation using rfid tags: A least-squares approach,” IEEE Trans. Instrum. Meas. 59(11), 2863–2869 (2010). [CrossRef]  

5. M. Ridolfi, A. Kaya, R. Berkvens, M. Weyn, W. Joseph, and E. D. Poorter, “Self-calibration and collaborative localization for uwb positioning systems: A survey and future research directions,” ACM Comput. Surv. 54(4), 1–27 (2022). [CrossRef]  

6. K. Gill, S.-H. Yang, F. Yao, and X. Lu, “A zigbee-based home automation system,” IEEE Trans. Consumer Electron. 55(2), 422–430 (2009). [CrossRef]  

7. T.-H. Do and M. Yoo, “An in-depth survey of visible light communication based positioning systems,” Sensors 16(5), 678 (2016). [CrossRef]  

8. X. Bao, G. Yu, J. Dai, and X. Zhu, “Li-fi: Light fidelity-a survey,” Wirel. Netw. 21(6), 1879–1889 (2015). [CrossRef]  

9. A. M. Rahman, T. Li, and Y. Wang, “Recent advances in indoor localization via visible lights: A survey,” Sensors 20(5), 1382 (2020). [CrossRef]  

10. F. Alam, M. T. Chew, T. Wenge, and G. S. Gupta, “An accurate visible light positioning system using regenerated fingerprint database based on calibrated propagation model,” IEEE Trans. Instrum. Meas. 68(8), 2714–2723 (2019). [CrossRef]  

11. R. Malarvizhi and A. S. Thanamani, “K-nearest neighbor in missing data imputation,” Int. J. Eng. Res. Dev 5, 5–7 (2012).

12. S. Faisal and G. Tutz, “Multiple imputation using nearest neighbor methods,” Inf. Sci. 570, 500–516 (2021). [CrossRef]  

13. J.-F. Cai, E. J. Candès, and Z. Shen, “A singular value thresholding algorithm for matrix completion,” SIAM J. Optim. 20(4), 1956–1982 (2010). [CrossRef]  

14. T.-H. Oh, Y. Matsushita, Y.-W. Tai, and I. S. Kweon, “Fast randomized singular value thresholding for low-rank optimization,” IEEE Trans. Pattern Anal. Mach. Intell. 40(2), 376–391 (2018). [CrossRef]  

15. Y. Yu, J. James, V. O. Li, and J. C. Lam, “A novel interpolation-svt approach for recovering missing low-rank air quality data,” IEEE Access 8, 74291–74305 (2020). [CrossRef]  

16. D. L. Donoho, “Compressed sensing,” IEEE Trans. Inf. Theory 52(4), 1289–1306 (2006). [CrossRef]  

17. J. Chen, J. Jia, Y. Deng, X. Wang, and A.-H. Aghvami, “Adaptive compressive sensing and data recovery for periodical monitoring wireless sensor networks,” Sensors 18(10), 3369 (2018). [CrossRef]  

18. M. Rani, S. B. Dhok, and R. B. Deshmukh, “A systematic review of compressive sensing: Concepts, implementations and applications,” IEEE Access 6, 4875–4894 (2018). [CrossRef]  

19. L. T. Nguyen, J. Kim, and B. Shim, “Low-rank matrix completion: A contemporary survey,” IEEE Access 7, 94215–94237 (2019). [CrossRef]  

20. X. Chen, J. Yang, and L. Sun, “A nonconvex low-rank tensor completion model for spatiotemporal traffic data imputation,” Transp. Res. Pt. C-Emerg. Technol. 117, 102673 (2020). [CrossRef]  

21. J. Xue, Y. Zhao, S. Huang, W. Liao, J. C.-W. Chan, and S. G. Kong, “Multilayer sparsity-based tensor decomposition for low-rank tensor completion,” IEEE Trans. Neural Netw. Learn. Syst. (2021).

22. I. M. Abou-Shehada, A. F. AlMuallim, A. K. AlFaqeh, A. H. Muqaibel, K.-H. Park, and M.-S. Alouini, “Accurate indoor visible light positioning using a modified pathloss model with sparse fingerprints,” J. Lightwave Technol. 39(20), 6487–6497 (2021). [CrossRef]  

23. S. Liu and G. Trenkler, “Hadamard, khatri-rao, kronecker and other matrix products,” Int. J. Inf. Syst. Sci 4, 160–177 (2008).

24. K. Xie, X. Li, X. Wang, G. Xie, J. Wen, J. Cao, and D. Zhang, “Fast tensor factorization for accurate internet anomaly detection,” IEEE-ACM Trans. Netw. 25(6), 3794–3807 (2017). [CrossRef]  

25. Z. Fang, X. Yang, L. Han, and X. Liu, “A sequentially truncated higher order singular value decomposition-based algorithm for tensor completion,” IEEE T. Cybern. 49(5), 1956–1967 (2019). [CrossRef]  

26. C. Battaglino, G. Ballard, and T. G. Kolda, “A practical randomized cp tensor decomposition,” SIAM J. Matrix Anal. Appl. 39(2), 876–901 (2018). [CrossRef]  

27. T. Fath and H. Haas, “Performance comparison of mimo techniques for optical wireless communications in indoor environments,” IEEE Trans. Commun. 61(2), 733–742 (2013). [CrossRef]  

28. X. Bao, X. Gu, W. Zhang, and H.-H. Chen, “User-centric quality-of-experience optimization and scheduling of multicolor leds in vlc systems,” IEEE Syst. J. 13(3), 2275–2284 (2019). [CrossRef]  

29. T. Komine and M. Nakagawa, “Fundamental analysis for visible-light communication system using led lights,” IEEE Trans. Consumer Electron. 50(1), 100–107 (2004). [CrossRef]  

30. Z. Zhang and S. Aeron, “Exact tensor completion using t-svd,” IEEE Trans. Signal Process. 65(6), 1511–1526 (2017). [CrossRef]  

31. J. Liu, P. Musialski, P. Wonka, and J. Ye, “Tensor completion for estimating missing values in visual data,” IEEE Trans. Pattern Anal. Mach. Intell. 35(1), 208–220 (2013). [CrossRef]  

32. C. J. Hillar and L.-H. Lim, “Most tensor problems are np-hard,” J. ACM 60(6), 1–39 (2013). [CrossRef]  

33. H. Luo, M. Li, S. Wang, Q. Liu, Y. Li, and J. Wang, “Computational drug repositioning using low-rank matrix approximation and randomized algorithms,” Bioinformatics 34(11), 1904–1912 (2018). [CrossRef]  

34. J. Tan, W. Liu, T. Wang, N. N. Xiong, H. Song, A. Liu, and Z. Zeng, “An adaptive collection scheme-based matrix completion for data gathering in energy-harvesting wireless sensor networks,” IEEE Access 7, 6703–6723 (2019). [CrossRef]  

35. Z. Xiao, H. Wen, A. Markham, and N. Trigoni, “Indoor tracking using undirected graphical models,” IEEE Trans. on Mobile Comput. 14(11), 2286–2301 (2015). [CrossRef]  

36. K. Xu, Y. Zhang, and Z. Xiong, “Iterative rank-one matrix completion via singular value decomposition and nuclear norm regularization,” Inf. Sci. 578, 574–591 (2021). [CrossRef]  

37. S. Qaisar, R. M. Bilal, W. Iqbal, M. Naureen, and S. Lee, “Compressive sensing: From theory to applications, a survey,” J. Commun. Netw. 15(5), 443–456 (2013). [CrossRef]  

38. W. Qin, H. Wang, F. Zhang, J. Wang, X. Luo, and T. Huang, “Low-rank high-order tensor completion with applications in visual data,” IEEE Trans. on Image Process. 31, 2433–2448 (2022). [CrossRef]  

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (11)

Fig. 1.
Fig. 1. Schematic diagram of mode-$1$, $2$, $3$ expansion.
Fig. 2.
Fig. 2. The VLC system model.
Fig. 3.
Fig. 3. Two missing forms of the data tensor: RM and STSM.
Fig. 4.
Fig. 4. Schematic diagram of t-SVD.
Fig. 5.
Fig. 5. The change of energy accumulation rate under different data missing ratios.
Fig. 6.
Fig. 6. Temporal and spatial correlations of the considered tensor.
Fig. 7.
Fig. 7. Experimental setup.
Fig. 8.
Fig. 8. Variation of error with missing rate at $R$=4, 6 and 8.
Fig. 9.
Fig. 9. The convergence of the algorithm when R=4,6 and 8 using experimental data.
Fig. 10.
Fig. 10. Performance comparison of various recovery algorithms under STSM scenario.
Fig. 11.
Fig. 11. Comparison of the calculation time of different data recovery algorithms.

Tables (4)

Tables Icon

Table 1. Key variables in this paper

Tables Icon

Algorithm 1. Spatio-temporal Constraint Tensor Completion (SCTC)

Tables Icon

Algorithm 2. The label and the caption are preserved here, and the body of the algorithm can be found below.

Tables Icon

Table 2. Experimental parameters

Equations (34)

Equations on this page are rendered with MathJax. Learn more.

H i = { ( m + 1 ) A R P D 2 π D i 2 cos ( m ) ( ϕ i ) T s ( ψ i ) g ( ψ i ) cos ( ψ i ) , 0 ψ i Ψ c 0 , ψ i > Ψ c
D i = h 2 + r m 2
g ( ψ i ) = { η 2 sin 2 Ψ c , 0 ψ i Ψ c 0 , ψ i > Ψ c
G s = L W = { ( g l , g w ) | l { 1 , 2 , L } , w { 1 , 2 , W } }
X = U S V T
min X : r a n k ( X ) s . t . X ω = M ω
min X ^ : r a n k ( X ^ ) s . t . X ^ Ω = X Ω
min X ^ :∥ X ^ s . t . X ^ Ω = ( X T ) Ω
X n = i = 1 n μ i X n ( i )
min X ^ : i = 1 3 μ i X ^ ( i ) s . t . X ^ Ω = ( X T ) Ω
( P Ω ( X ) ) l , w , t = { x l , w , t , ( l , w , t ) Ω 0 , o t h e r w i s e
min X ^ : i = 1 3 μ i X ^ ( i ) s . t . P Ω ( X ^ X T ) F 2 ε
min X ^ : i = 1 3 μ i X ^ ( i ) + ρ P Ω ( X ^ X T ) F 2 s . t . X ^ = X T
X T = r = 1 R i r j r k r = [ [ I , J , K ] ]
min X ^ :∥ P Ω ( X T X ^ ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) s . t . X ^ = [ [ I , J , K ] ]
f = min I , J , K :∥ P Ω ( X T [ [ I , J , K ] ] ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) + β 1 S 1 X ^ ( 1 ) + β 2 S 2 X ^ ( 2 ) + β 3 T K X ^ ( 3 )
f = min I , J , K :∥ P Ω ( X T [ [ I , J , K ] ] ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) + β 1 S 1 I ( K J ) T + β 2 S 2 J ( K I ) T ) + β 3 T K K ( J I ) T )
f 1 = min I :∥ P Ω ( X T ( 1 ) I ( K J ) T ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) + β 1 S 1 I ( K J ) T ) f 2 = min J :∥ P Ω ( X T ( 2 ) J ( K I ) T ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) + β 2 S 2 J ( K I ) T ) f 3 = min K :∥ P Ω ( X T ( 3 ) K ( J I ) T ) F 2 + λ ( I F 2 + J F 2 + K F 2 ) + β 3 T K K ( J I ) T )
f 1 I = 2 ( X T ( 1 ) I ( K J ) T ) ( K J ) + 2 λ I + 2 β 1 S 1 T [ S 1 I ( K J ) T ] ( K J )
X T ( 1 ) ( K J ) = I ( K J ) T ( K J ) λ I β 1 S 1 T [ S 1 I ( K J ) T ] ( K J )
f 2 J = 2 ( X T ( 2 ) J ( K I ) T ) ( K I ) + 2 λ J + 2 β 2 S 2 T [ S 2 J ( K I ) T ] ( K I )
f 3 K = 2 ( X T ( 3 ) K ( J I ) T ) ( J I ) + 2 λ K + 2 β 3 T K T [ T K K ( J I ) T ] ( J I )
X T ( 2 ) ( K I ) = J ( K I ) T ( K I ) λ J β 2 S 2 T [ S 2 J ( K I ) T ] ( K I )
X T ( 3 ) ( J I ) = K ( J I ) T ( J I ) λ K β 3 T K T [ T K K ( J I ) T ] ( J I )
X ^ = [ [ I , J , K ] ] = r = 1 R i r j r k r
γ = m = 1 M n = 1 N ( P m n P ¯ ) ( Q m n Q ¯ ) ( m = 1 M n = 1 N ( P m n P ¯ ) 2 ) ( m = 1 M n = 1 N ( Q m n Q ¯ ) 2 )
P ¯ = m = 1 M n = 1 N P m n M × N Q ¯ = m = 1 M n = 1 N Q m n M × N
T K = [ 1 1 0 0 1 1 0 0 1 ] ( T 1 ) × T
ρ i j = cov ( x i , x j ) σ x i σ x j
A d = [ a 11 a 1 L a L 1 a L L ] L × L
a i j = { 1 ρ i j > u , i j 0 , o t h e r w i s e
D = [ a 11 + a 21 + a L 1 0 0 a 1 L + a 2 L + a L L ] L × L
S 1 = D A d
R M S E = X X ^ 2 2 X 2 2
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.