# Deep Belief Networks for Fingerprinting Indoor Localization Using Ultrawideband Technology

Authors: Junhai Luo; Huanbin Gao
Journal: International Journal of Distributed Sensor Networks
 (2016)

---

## Abstract

With the increasing requirement of localization services in indoor environment, indoor localization techniques have drawn a lot of attention. In recent years, fingerprinting localization techniques have been proved to be effective in indoor localization tasks. Due to the complexity and variability of indoor environment, some traditional geometric localization techniques based on time of arrival (TOA), received signal strength (RSS), or direction of arrival (DOA) may cause big position errors. Unlike common geometric localization methods, fingerprinting localization techniques estimate the position of target by creating a pattern matching model or regression model for the measurement. Therefore, a suitable learning model is the key of a fingerprinting location system. This paper presents a fingerprinting based localization technique using deep belief network (DBN) and ultrawideband (UWB) signals in an office environment. Some location-dependent parameters extracted from channel impulse response (CIR) are used as signatures to build the fingerprinting database. The construction of DBN which is based on the fingerprinting database is also discussed in this paper. Experiment results show that, with appropriate fingerprinting database and model structure, the location system can get desired accuracy.


---

## Body

## 1. Introduction

In recent years, indoor localization technique has received a lot of attention. Some concepts of outdoor location systems are used in indoor localization, but they are always subject to big position errors. Most of the accuracy problems are caused by the complexity and variability of indoor environments such as multipath reflections.UWB refers to the signals that can spread over a bandwidth larger than 500 MHz which can be obtained by generating a series of extremely short duration pulses with large bandwidths [1]. UWB has many attributes such as low power, large bandwidth, and high time resolution, which makes it ideal for indoor location task. Additionally, the high time resolution of UWB results in better multipath resolvability at the same time, which is quite crucial in the complex indoor environment. According to the UWB impulse sequence acquired at the receiver, a lot of useful position information related to the environment can be exacted.Compared to the geometric localization technique which is widely used in outdoor localization tasks, fingerprinting localization technique provides a different method to determine the position of a target in an indoor environment [2–4]. It can be divided into two phrases: the off-line phase and the online phase. In the off-line phase, a large fingerprinting database is obtained from the CIR as a training database of a particular machine learning model such as k-nearest neighbor (kNN) [5, 6], neural networks (NNs) [7–9], and support vector machine (SVM) [10]. After the chosen model is trained successfully, it can be used as the regression scheme which maps the signatures to the position coordinates. In the online phase, the constructed regression model can be used to locate a target node according to the obtained signatures. Considering that the signatures in fingerprinting database are of great complexity, DBN learning model is proposed in this paper.DBN is an effective machine learning model proposed in 2006 [11]. It has been widely used in many different fields such as image [12], speech [13], and language processing [14]. It is a multilayer model which imitates the mode in which the human brain represents information. Unlike normal multilayer network models such as kNN, the training phrase of DBN is divided into two parts, the pretraining part and the fine-tune part. In the pretraining part, the network is trained layer by layer with a greedy unsupervised method, when the network will find the hidden structure of the input data and initialize the parameters [15–19]. In the fine-tune part, the network is trained by a back propagation supervised method with initialized parameters obtained from the previous part. DBN can conquer many problems that a multilayer model may suffer from, such as overfitting and local optimum. It is proved that DBN can acquire a desired accuracy in many complex classification and regression problems.The main contributions of this work are as follows:(i)
Proposing a fingerprinting location algorithm using DBN to match the coordinates of a target to its signatures.(ii)
Using the CIR parameters independent of transmission time as signatures of fingerprinting localization, which makes the algorithm free from the dependence of synchronization.(iii)
Applying SAE to pretrain DBN using unlabeled samples which can be acquired easily.The remaining part of this paper is organized as follows: In Section2, we present some related works in recent years. In Section 3, we discuss the indoor environment and channel model. The architecture of the indoor environment is presented and the transmission characteristic of UWB signals is discussed. In Section 4, a fingerprinting algorithm using DBN is proposed. For the fingerprinting localization technique, we discuss the off-line and online phrase, respectively. For DBN, the details of pretraining part and fine-tune part are described and studied. In Section 5, we explain the experiment setups and show the experiment results and analysis. Finally, we put the conclusion of this paper in Section 6.


## 2. Related Works

Recently, in [1–6], there has been research working on the improvement of fingerprinting localization techniques. Fingerprinting localization is used in different kinds of localization systems with different hardware, such as UWB [1], RFID [2], WIFI [3], and WSN [4]. Two main aspects of fingerprinting localization are the construction of database and the training of matching model. The fingerprinting database was constructed by analyzing the CIR of signals. The signatures of samples may consist of CIR parameters based on RSS, TOA, or AOA. As for the matching model, different matching models such as kNN [5, 6], NN [7–9], and SVM [10] were used to match the target position to the CIR parameters of a particular signal channel.The concept of deep learning was first established in 2006 in [11]. As a typical deep learning model, DBN solves the training problem which may occur in a deep neural network. It is widely used in many different areas in the recent years, such as graphics processing and language recognition [12–14]. DBN is advanced model which can fit the complex nonlinear relationship between attributes in many issues [15, 16]. Pretraining phase of DBN is the key reason for its performance. Two main methods to pretrain DBN are restricted Boltzmann machine (RBM) [17] and SAE [18, 19]. They can be used to initialize the parameters of DBN and discover the hidden structure of the input data.


## 3. Indoor Localization Environment and Channel Model

We consider an office scenario as the indoor environment of the location finding system in this paper. The Beacon Node (BN) is the signal receiver whose position is constant, while the Blind Node (BLN) is the signal emitter whose position needs to be estimated. There are several BNs and a BLN in this test area. And the task is to find the position of BLN according to the received signals of BNs.The environment we consider here contains different kinds of objects which may influence the transmission of signals in unpredictable ways. The indoor environment is divided into several parts by different kinds of obstructions, thus making the UWB signals propagate in mixed line-of-sight (LOS) and non-line-of-sight (NLOS) conditions. As a result, the BNs receive the signals from different paths. Because of the complexity of the environment, no existing decay model can be used to analyze the signal propagation. In addition, the multipath effect of the signals makes them more unpredictable. As for UWB signal, what BN receives is a series of impulses acting as bases of the localization system in this work.The indoor channel model in this paper can be described as the time domain response of CIR:(1)rt=∑i=1Ntgitet-τit+nt,where e(t) is the original impulse from a BLN, while gi(t) and τi(t) are the path gain and delay of the ith path, respectively, N(t) is the total number of detected multipath components, and n(t) is the noise depending on the environment itself. Besides, if the channel is considered stationary, the domain result turns out to be(2)rt=∑i=1Ngiet-τi+nt.The parameters of CIR variy according to the indoor environment and the positions of the BNs and BLN. Each impulse with the path gain gi and delay τi represents a propagation path of signal with a specific transmission time and decay rate. It is difficult to reconstruct the propagation of UWB impulse according to the received sequence. As a result, traditional geometric localization techniques will be invalid in such kind of situation.


## 4. Fingerprinting Localization Using Deep Belief Network

Due to the existence of NLOS, reverberation, and multipath effect in the scenario, geometric localization technique may consequently achieve low accuracy in this situation because of its dependency on LOS situation. As a result, fingerprinting technique is implemented in this work. Actually, compared to traditional localization techniques, the advantage of fingerprinting technique is that the localization task is no longer tied to any defined channel model to infer the geometry or distance information of the BLN. Instead, fingerprinting technique only depends on the database extracted from the acquired sequence samples.In order to map the sequence to the position of a BLN, a regression model is needed in the fingerprinting localization problems. Some deep model can be used to learn complex relationship between attributes and labels in different research fields. However, the performance always turns out to be unsatisfactory because of the poor local optima situation which may happen in the training phase when the number of layers is increased. Taking this problem into consideration, we apply DBN as a regression model to the fingerprinting localization algorithm in this paper.As a result, a fingerprinting localization algorithm using DBN is presented in this paper. The localization algorithm can be divided into two phases: the off-line phase and the online phase.In the online phase, the signature of a BLN is then normalized and input to the learned DBN model. The values of the last layer neurons represent the normalized coordinates of BLN. After transforming the normalized coordinates into realistic coordinates, the estimate of BLN position is acquired.The off-line phase is the key step of the localization algorithm. It can be divided into two parts: the building process of fingerprinting database and the training process of DBN. In the building process of fingerprinting database, signatures and coordinates of BLNs are extracted and normalized. In the training process of DBN, a DBN model is built and trained in order to match the signature of a BLN to its position.


### 4.1. The Building Process of Fingerprinting Database

The database is built according to the impulse samples acquired at the BNs and the coordinates of the BLN. From the impulse response, we can get several parameters, namely, the number of multipath components (N), the power of the ith path (Pi), and the total power (P). Pi can be defined according to the time domain response in Formula (2):(3)Pi=∫-∞+∞giet-τi+nt2dt.P can be defined as follows:(4)P=∑i=1NPi.The fingerprinting database can be expressed as follows:(5)S=s1,p1,s2,p2,…,sk,pk,…,sM,pM,where (sk,pk) represents the kth sample of the fingerprinting database and M is the number of samples in the database. Besides, the first component of a sample sk is a vector serving as the signatures of the kth sample, given by(6)sk=s1k,s2k,…,sik,…,snk,where sik is a vector that represents the normalized signatures extracted from the ith BN. It is worth mentioning that, unlike many other location-dependent parameters, the parameters chosen in this paper are mainly based on RSS, which free the BNs from the dependence of synchronization and make the deployment of the system easier. In this paper, N, P, P1, and P2 are considered as signatures. Therefore, sik turns out to be(7)sik=NikNmax,PikPmax,P1ikP1max,P2ikP2max,where Nmax, Pmax, P1max, and P2max are the maximum values of N, P, P1, and P2, respectively. The second component pk is the position of the kth sample BLN represented by its normalized coordinates:(8)pk=xkxmax,ykymax,zkzmax,where xk, yk, and zk are the coordinates of a BLN, while xmax, ymax, and zmax are the maximum values of the coordinates, respectively.To be precise,sk is the input pattern while pk is the output pattern. The task of the off-line phase is to match the output position pk to the input signature by constructing and training a regression model.


### 4.2. The Training Process of Deep Belief Network

In this work, DBN is used as a regression model of the localization algorithm. It is an advanced model which can achieve better results even when the network is deep or the number of hidden neurons is large. The excellent performance of DBN should be attributed to the extra unsupervised training using only unlabeled data the result of which is used to initialize DBN. In this way, the local optima problem is solved obviously.The training phase of DBN used in our indoor location algorithm can be divided into two parts. One is the global-training procedure of the entire network using labeled samples. The other is the layer-wise pretraining procedure using a greedy unsupervised training method to discover features from unlabeled samples.


#### 4.2.1. Global-Training of DBN

The framework of DBN is illustrated in Figure1. It consists of n layers of units. The first layer is the observation layer which represents the input signatures of a given BLN, while the last layer is the output layer that consists of three nodes which indicate the three coordinates of the BLN, respectively. The intermediate two layers between input and output layers are called the hidden layers, which are used to find the potential data correlations of the signature layer. Considering that the model has n layers, the parameters of the network can be illustrated as(9)W,b=W1,b1,W2,b2,…,Wl,bl,…,Wn-1,bn-1,where (Wl,bl) represents the parameters between layer l and layer l+1 and Wl is the weight matrix between layer l and layer l+1, while bl is the bias vector. Therefore, the activation phase between layer l and layer l+1 can be described as(10)ail+1=f∑j=1slWijlajl+bil,where Wijl is the weight connecting the ith neuron in layer l+1 and the jth in layer l, sl is the number of neurons that layer l contains, ail denotes the activation value of the ith unit in layer l, and f(·) is the activation function. In this paper, we choose the sigmoid function as the activation function:(11)fz=11+exp⁡-z.The task of the training phase is to learn the parameters between layers using the back propagation algorithm. Concretely, the parameters are adjusted to minimize a cost function:(12)JW,b=1m∑kmJW,b;sk,ek+λ2∑l=1n-1∑j=1sl∑i=1sl-1Wijl2,where the first additive term is the mean value of the cost function of m samples, while the second additive term is the weight decay term used to constrain the change rate of weights. And the cost function of a single fingerprint sample is defined as(13)JW,b;sk,pk=12hW,bsk-pk2,where hW,b(·) denotes the function used to map the input signature to a predicted position. The cost function will be used to update DBN parameters with gradient descent algorithm which can be described as follows:(14)W^,b^=W,b+α∂∂W,b∑k=1mJW,b;sk,pk,where α is the learning rate and m is the size of a batch. (W^,b^) represents the updated parameters.Figure 1
The framework of DBN.The procedure of global-training is listed in Algorithm1. The model is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm in order to avoid the overfitting situation.Algorithm 1:Global-training of DBN.
Require: (W, b) = the parameters of DBN; S = the total fingerprinting dataset
Ensure: train DBN with a fingerprinting dataset
pre-train(W, b)
divideS into baths
for each bath∈S  do
calculate weight decay
calculate cost function
update(W, b)
end for


#### 4.2.2. Pretraining of DBN

Since poor local optimization phenomenon depresses the performance of deep model, it is always caused by inappropriate values of initial parameters. In DBN, pretraining algorithm is introduced to initialize the parameters. Instead of initializing the parameters randomly, we use pretraining algorithm to set the parameters connecting the input and hidden layers. There are two models that can be used to initial a feed-forward neural network. One is the restricted RBM, and the other is SAE. Considering the fact that DBN is used as a regression model in this paper, we apply SAE as the unsupervised training model.SAE is an unsupervised learning model, whose aim is to reconstruct the input vector from a neural network with a hidden layer. The structure of SAE is shown in Figure2. The first layer is the visible layer, while the last layer is the reconstructed result of it. The training phase is to train a neural network with three layers whose label vector is the input vector itself. Namely, it will fit a function hW,b(x)≈x. If the model can reconstruct the input vector at the output layer, the hidden layer can be regarded as another expression of the input vector. And the parameters of SAE are initialized randomly between −1 and 1. Besides, only unlabeled samples are needed to train this model until it is convergent. As a result, the hidden layer units can be regarded as a series of extracted features of the input data. And the trained parameters between the first two layers (W1,b1) in this network are used to initialize the corresponding parameters in DBN.Figure 2
The structure of SAE.In this paper, the signatures acquired in the indoor environment are always not accurate. The impulse sequences received by the BNs contain noises. As a result, reconstructing the fingerprint vector at the output layer in Figure2 is not enough. In order to reduce the influence of noises, the average fingerprints are acquired by averaging the signature values of repeated measurements. The input vector in Figure 2 is acquired when the real fingerprint vector is the input vector in Figure 1. The output vector in Figure 2 is acquired when the average fingerprint vector is the output vector in Figure 1. Using (W1,b1) to initialize the corresponding parameters in DBN can reduce the influence of noises in real fingerprints.In this paper, the input vector consists of signatures from several receivers in the indoor environment. Considering the fact that the dimension of our input vector is small, we need to increase the number of hidden units in order to find the interesting structure in the input data. However, too many hidden units may cause poor performance of the pretraining phase. Consequently, a sparsity constraint is required for the hidden units during the unsupervised learning in order to limit the average activation of a hidden unit. Assuming that samples are input to SAE, the average activation of theith unit in hidden layer can be defined as(15)ρ^i=1m∑k=1maik,where aik is the value of the ith unit in hidden layer when the kth sample is input to the model. The sparsity constraint term can be acquired as(16)JsparsityW1,b1=∑i=1s2ρlog⁡ρρ^i+1-ρlog⁡1-ρ1-ρ^i,where ρ is the sparsity parameter which is close to 0. The value of ρ depends on the number of hidden units. The sparsity constraint term Jsparsity(W1,b1) is minimized only when ρi equals ρ. Consequently, the cost function can be modified as(17)JSAEW,b=JW,b+βJsparsityW1,b1,where β is the weight of sparsity constraint term. Accordingly, after training SAE, the learned parameters can be used to initialize DBN. The parameters among the first three layers, namely, (W1,b1) and (W2,b2), are pretrained by corresponding SAE bottom-up in a greedy method. Afterwards, the fine-tune method based on back propagation algorithm is applied to the entire DBN to map the input signatures to the coordinates of the BLNs.The procedures of pretraining are listed in Algorithm2. The parameters of DBN are pretrained layer by layer with SAE model. Every SAE is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm.Algorithm 2:Pretraining of DBN.
Require: DBN = the structure of DBN; S = the total fingerprinting dataset
Ensure: pre-train DBN with a fingerprinting dataset
for each hiddenlayer∈DBN  do
create SAE model
randomly initialize parameters of SAE (W, b)
divideS into batches
for each batch∈S  do
calculate sparsity constraint term
calculate weight decay
calculate cost function
update (W, b)
end for
initialize the parameters of DBN with(W1, b1)
end for


## 4.1. The Building Process of Fingerprinting Database

The database is built according to the impulse samples acquired at the BNs and the coordinates of the BLN. From the impulse response, we can get several parameters, namely, the number of multipath components (N), the power of the ith path (Pi), and the total power (P). Pi can be defined according to the time domain response in Formula (2):(3)Pi=∫-∞+∞giet-τi+nt2dt.P can be defined as follows:(4)P=∑i=1NPi.The fingerprinting database can be expressed as follows:(5)S=s1,p1,s2,p2,…,sk,pk,…,sM,pM,where (sk,pk) represents the kth sample of the fingerprinting database and M is the number of samples in the database. Besides, the first component of a sample sk is a vector serving as the signatures of the kth sample, given by(6)sk=s1k,s2k,…,sik,…,snk,where sik is a vector that represents the normalized signatures extracted from the ith BN. It is worth mentioning that, unlike many other location-dependent parameters, the parameters chosen in this paper are mainly based on RSS, which free the BNs from the dependence of synchronization and make the deployment of the system easier. In this paper, N, P, P1, and P2 are considered as signatures. Therefore, sik turns out to be(7)sik=NikNmax,PikPmax,P1ikP1max,P2ikP2max,where Nmax, Pmax, P1max, and P2max are the maximum values of N, P, P1, and P2, respectively. The second component pk is the position of the kth sample BLN represented by its normalized coordinates:(8)pk=xkxmax,ykymax,zkzmax,where xk, yk, and zk are the coordinates of a BLN, while xmax, ymax, and zmax are the maximum values of the coordinates, respectively.To be precise,sk is the input pattern while pk is the output pattern. The task of the off-line phase is to match the output position pk to the input signature by constructing and training a regression model.


## 4.2. The Training Process of Deep Belief Network

In this work, DBN is used as a regression model of the localization algorithm. It is an advanced model which can achieve better results even when the network is deep or the number of hidden neurons is large. The excellent performance of DBN should be attributed to the extra unsupervised training using only unlabeled data the result of which is used to initialize DBN. In this way, the local optima problem is solved obviously.The training phase of DBN used in our indoor location algorithm can be divided into two parts. One is the global-training procedure of the entire network using labeled samples. The other is the layer-wise pretraining procedure using a greedy unsupervised training method to discover features from unlabeled samples.


### 4.2.1. Global-Training of DBN

The framework of DBN is illustrated in Figure1. It consists of n layers of units. The first layer is the observation layer which represents the input signatures of a given BLN, while the last layer is the output layer that consists of three nodes which indicate the three coordinates of the BLN, respectively. The intermediate two layers between input and output layers are called the hidden layers, which are used to find the potential data correlations of the signature layer. Considering that the model has n layers, the parameters of the network can be illustrated as(9)W,b=W1,b1,W2,b2,…,Wl,bl,…,Wn-1,bn-1,where (Wl,bl) represents the parameters between layer l and layer l+1 and Wl is the weight matrix between layer l and layer l+1, while bl is the bias vector. Therefore, the activation phase between layer l and layer l+1 can be described as(10)ail+1=f∑j=1slWijlajl+bil,where Wijl is the weight connecting the ith neuron in layer l+1 and the jth in layer l, sl is the number of neurons that layer l contains, ail denotes the activation value of the ith unit in layer l, and f(·) is the activation function. In this paper, we choose the sigmoid function as the activation function:(11)fz=11+exp⁡-z.The task of the training phase is to learn the parameters between layers using the back propagation algorithm. Concretely, the parameters are adjusted to minimize a cost function:(12)JW,b=1m∑kmJW,b;sk,ek+λ2∑l=1n-1∑j=1sl∑i=1sl-1Wijl2,where the first additive term is the mean value of the cost function of m samples, while the second additive term is the weight decay term used to constrain the change rate of weights. And the cost function of a single fingerprint sample is defined as(13)JW,b;sk,pk=12hW,bsk-pk2,where hW,b(·) denotes the function used to map the input signature to a predicted position. The cost function will be used to update DBN parameters with gradient descent algorithm which can be described as follows:(14)W^,b^=W,b+α∂∂W,b∑k=1mJW,b;sk,pk,where α is the learning rate and m is the size of a batch. (W^,b^) represents the updated parameters.Figure 1
The framework of DBN.The procedure of global-training is listed in Algorithm1. The model is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm in order to avoid the overfitting situation.Algorithm 1:Global-training of DBN.
Require: (W, b) = the parameters of DBN; S = the total fingerprinting dataset
Ensure: train DBN with a fingerprinting dataset
pre-train(W, b)
divideS into baths
for each bath∈S  do
calculate weight decay
calculate cost function
update(W, b)
end for


### 4.2.2. Pretraining of DBN

Since poor local optimization phenomenon depresses the performance of deep model, it is always caused by inappropriate values of initial parameters. In DBN, pretraining algorithm is introduced to initialize the parameters. Instead of initializing the parameters randomly, we use pretraining algorithm to set the parameters connecting the input and hidden layers. There are two models that can be used to initial a feed-forward neural network. One is the restricted RBM, and the other is SAE. Considering the fact that DBN is used as a regression model in this paper, we apply SAE as the unsupervised training model.SAE is an unsupervised learning model, whose aim is to reconstruct the input vector from a neural network with a hidden layer. The structure of SAE is shown in Figure2. The first layer is the visible layer, while the last layer is the reconstructed result of it. The training phase is to train a neural network with three layers whose label vector is the input vector itself. Namely, it will fit a function hW,b(x)≈x. If the model can reconstruct the input vector at the output layer, the hidden layer can be regarded as another expression of the input vector. And the parameters of SAE are initialized randomly between −1 and 1. Besides, only unlabeled samples are needed to train this model until it is convergent. As a result, the hidden layer units can be regarded as a series of extracted features of the input data. And the trained parameters between the first two layers (W1,b1) in this network are used to initialize the corresponding parameters in DBN.Figure 2
The structure of SAE.In this paper, the signatures acquired in the indoor environment are always not accurate. The impulse sequences received by the BNs contain noises. As a result, reconstructing the fingerprint vector at the output layer in Figure2 is not enough. In order to reduce the influence of noises, the average fingerprints are acquired by averaging the signature values of repeated measurements. The input vector in Figure 2 is acquired when the real fingerprint vector is the input vector in Figure 1. The output vector in Figure 2 is acquired when the average fingerprint vector is the output vector in Figure 1. Using (W1,b1) to initialize the corresponding parameters in DBN can reduce the influence of noises in real fingerprints.In this paper, the input vector consists of signatures from several receivers in the indoor environment. Considering the fact that the dimension of our input vector is small, we need to increase the number of hidden units in order to find the interesting structure in the input data. However, too many hidden units may cause poor performance of the pretraining phase. Consequently, a sparsity constraint is required for the hidden units during the unsupervised learning in order to limit the average activation of a hidden unit. Assuming that samples are input to SAE, the average activation of theith unit in hidden layer can be defined as(15)ρ^i=1m∑k=1maik,where aik is the value of the ith unit in hidden layer when the kth sample is input to the model. The sparsity constraint term can be acquired as(16)JsparsityW1,b1=∑i=1s2ρlog⁡ρρ^i+1-ρlog⁡1-ρ1-ρ^i,where ρ is the sparsity parameter which is close to 0. The value of ρ depends on the number of hidden units. The sparsity constraint term Jsparsity(W1,b1) is minimized only when ρi equals ρ. Consequently, the cost function can be modified as(17)JSAEW,b=JW,b+βJsparsityW1,b1,where β is the weight of sparsity constraint term. Accordingly, after training SAE, the learned parameters can be used to initialize DBN. The parameters among the first three layers, namely, (W1,b1) and (W2,b2), are pretrained by corresponding SAE bottom-up in a greedy method. Afterwards, the fine-tune method based on back propagation algorithm is applied to the entire DBN to map the input signatures to the coordinates of the BLNs.The procedures of pretraining are listed in Algorithm2. The parameters of DBN are pretrained layer by layer with SAE model. Every SAE is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm.Algorithm 2:Pretraining of DBN.
Require: DBN = the structure of DBN; S = the total fingerprinting dataset
Ensure: pre-train DBN with a fingerprinting dataset
for each hiddenlayer∈DBN  do
create SAE model
randomly initialize parameters of SAE (W, b)
divideS into batches
for each batch∈S  do
calculate sparsity constraint term
calculate weight decay
calculate cost function
update (W, b)
end for
initialize the parameters of DBN with(W1, b1)
end for


## 4.2.1. Global-Training of DBN

The framework of DBN is illustrated in Figure1. It consists of n layers of units. The first layer is the observation layer which represents the input signatures of a given BLN, while the last layer is the output layer that consists of three nodes which indicate the three coordinates of the BLN, respectively. The intermediate two layers between input and output layers are called the hidden layers, which are used to find the potential data correlations of the signature layer. Considering that the model has n layers, the parameters of the network can be illustrated as(9)W,b=W1,b1,W2,b2,…,Wl,bl,…,Wn-1,bn-1,where (Wl,bl) represents the parameters between layer l and layer l+1 and Wl is the weight matrix between layer l and layer l+1, while bl is the bias vector. Therefore, the activation phase between layer l and layer l+1 can be described as(10)ail+1=f∑j=1slWijlajl+bil,where Wijl is the weight connecting the ith neuron in layer l+1 and the jth in layer l, sl is the number of neurons that layer l contains, ail denotes the activation value of the ith unit in layer l, and f(·) is the activation function. In this paper, we choose the sigmoid function as the activation function:(11)fz=11+exp⁡-z.The task of the training phase is to learn the parameters between layers using the back propagation algorithm. Concretely, the parameters are adjusted to minimize a cost function:(12)JW,b=1m∑kmJW,b;sk,ek+λ2∑l=1n-1∑j=1sl∑i=1sl-1Wijl2,where the first additive term is the mean value of the cost function of m samples, while the second additive term is the weight decay term used to constrain the change rate of weights. And the cost function of a single fingerprint sample is defined as(13)JW,b;sk,pk=12hW,bsk-pk2,where hW,b(·) denotes the function used to map the input signature to a predicted position. The cost function will be used to update DBN parameters with gradient descent algorithm which can be described as follows:(14)W^,b^=W,b+α∂∂W,b∑k=1mJW,b;sk,pk,where α is the learning rate and m is the size of a batch. (W^,b^) represents the updated parameters.Figure 1
The framework of DBN.The procedure of global-training is listed in Algorithm1. The model is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm in order to avoid the overfitting situation.Algorithm 1:Global-training of DBN.
Require: (W, b) = the parameters of DBN; S = the total fingerprinting dataset
Ensure: train DBN with a fingerprinting dataset
pre-train(W, b)
divideS into baths
for each bath∈S  do
calculate weight decay
calculate cost function
update(W, b)
end for


## 4.2.2. Pretraining of DBN

Since poor local optimization phenomenon depresses the performance of deep model, it is always caused by inappropriate values of initial parameters. In DBN, pretraining algorithm is introduced to initialize the parameters. Instead of initializing the parameters randomly, we use pretraining algorithm to set the parameters connecting the input and hidden layers. There are two models that can be used to initial a feed-forward neural network. One is the restricted RBM, and the other is SAE. Considering the fact that DBN is used as a regression model in this paper, we apply SAE as the unsupervised training model.SAE is an unsupervised learning model, whose aim is to reconstruct the input vector from a neural network with a hidden layer. The structure of SAE is shown in Figure2. The first layer is the visible layer, while the last layer is the reconstructed result of it. The training phase is to train a neural network with three layers whose label vector is the input vector itself. Namely, it will fit a function hW,b(x)≈x. If the model can reconstruct the input vector at the output layer, the hidden layer can be regarded as another expression of the input vector. And the parameters of SAE are initialized randomly between −1 and 1. Besides, only unlabeled samples are needed to train this model until it is convergent. As a result, the hidden layer units can be regarded as a series of extracted features of the input data. And the trained parameters between the first two layers (W1,b1) in this network are used to initialize the corresponding parameters in DBN.Figure 2
The structure of SAE.In this paper, the signatures acquired in the indoor environment are always not accurate. The impulse sequences received by the BNs contain noises. As a result, reconstructing the fingerprint vector at the output layer in Figure2 is not enough. In order to reduce the influence of noises, the average fingerprints are acquired by averaging the signature values of repeated measurements. The input vector in Figure 2 is acquired when the real fingerprint vector is the input vector in Figure 1. The output vector in Figure 2 is acquired when the average fingerprint vector is the output vector in Figure 1. Using (W1,b1) to initialize the corresponding parameters in DBN can reduce the influence of noises in real fingerprints.In this paper, the input vector consists of signatures from several receivers in the indoor environment. Considering the fact that the dimension of our input vector is small, we need to increase the number of hidden units in order to find the interesting structure in the input data. However, too many hidden units may cause poor performance of the pretraining phase. Consequently, a sparsity constraint is required for the hidden units during the unsupervised learning in order to limit the average activation of a hidden unit. Assuming that samples are input to SAE, the average activation of theith unit in hidden layer can be defined as(15)ρ^i=1m∑k=1maik,where aik is the value of the ith unit in hidden layer when the kth sample is input to the model. The sparsity constraint term can be acquired as(16)JsparsityW1,b1=∑i=1s2ρlog⁡ρρ^i+1-ρlog⁡1-ρ1-ρ^i,where ρ is the sparsity parameter which is close to 0. The value of ρ depends on the number of hidden units. The sparsity constraint term Jsparsity(W1,b1) is minimized only when ρi equals ρ. Consequently, the cost function can be modified as(17)JSAEW,b=JW,b+βJsparsityW1,b1,where β is the weight of sparsity constraint term. Accordingly, after training SAE, the learned parameters can be used to initialize DBN. The parameters among the first three layers, namely, (W1,b1) and (W2,b2), are pretrained by corresponding SAE bottom-up in a greedy method. Afterwards, the fine-tune method based on back propagation algorithm is applied to the entire DBN to map the input signatures to the coordinates of the BLNs.The procedures of pretraining are listed in Algorithm2. The parameters of DBN are pretrained layer by layer with SAE model. Every SAE is trained with the fingerprinting database which is divided into batches. The cost function of every sample is calculated and cumulated in a batch with size m. The parameters of DBN are updated batch by batch with gradient descent algorithm.Algorithm 2:Pretraining of DBN.
Require: DBN = the structure of DBN; S = the total fingerprinting dataset
Ensure: pre-train DBN with a fingerprinting dataset
for each hiddenlayer∈DBN  do
create SAE model
randomly initialize parameters of SAE (W, b)
divideS into batches
for each batch∈S  do
calculate sparsity constraint term
calculate weight decay
calculate cost function
update (W, b)
end for
initialize the parameters of DBN with(W1, b1)
end for


## 5. Experiment and Results

### 5.1. Setups of Experiment

As shown in Figure3, the localization system is deployed in an office scenario with several obstructions. There are three fixed BNs distributed in the localization area. When the BLN emits a UWB impulse in this area, we will acquire three different impulse sequences in the BNs, respectively.Figure 3
The architecture of experiment area.Python 2.7 is used as a simulator in this paper. The propagation process of UWB signal in indoor environment is simulated by using the 3D ray tracing algorithm [20]. The BLN is abstracted to a point which emits rays in a certain position in the 3D space. The rays may go through the obstructions or reflect on the surfaces. Every ray is traced until its power is too low. The BNs are abstracted to spheres called receive balls which record the rays that pass through them. The rays received by a BN can be converted to the impulse sequences which are needed in the experiment.In the off-line phase, a large amount of fingerprinting samples needs to be collected at first. Gathering fingerprinting samples is a time-consuming work, owing to the fact that collecting the signatures as well as the corresponding position is inconvenient in realistic work. However, relatively speaking, the unlabeled fingerprinting samples without position information can be accessed easily.In this paper, the BLN is placed in 250 different positions successively. 10 different samples are collected when BLN is placed in a position. Considering the fact that a large amount of fingerprint samples is needed, the collected samples are used repeatedly in the training process. Besides, extra 1000 labeled samples are needed to test the performance of this localization system.As is previously discussed, the signature of thekth sample fk consists of several parameters of the CIR. In this experiment we consider four different parameters of the CIR for the ith BN, namely, the number of multipath components Nik, the total power Pik, the first-path component power left(P1)ik, and the second-path component power (P2)ik. We will chose all or part of the parameters and discuss the choice of signatures and its effect later.In addition, as shown in Figure3, we deploy 3 BNs in the test area. The position of each BN is fixed. We will also discuss the influence of the BNs by changing the number of deployed BNs.DBN model considered in this experiment is constructed of 7 layers including 5 hidden layers, and each hidden layer contains 60 hidden units. In other words, the parameters connecting the first 6 layers will be initialized layer by layer using SAE.


### 5.2. Results and Discussion

As is discussed above, after the off-line phase, the indoor localization system based on DBN model is established and used to predict the position of a BLN according to the impulse sequence received by the BNs. Comparing the predicted coordinates to the actual coordinates in the test database, we can get the evaluation of the localization performance. In this experiment, cumulative density function (CDF) of position error is used to evaluate the performance.The localization performances of different matching models are compared in Figure4. The fingerprinting databases used in DBN, kNN, SVR, and NN are the same. The training time of DBN is the longest in these models while the position error of DBN is the lowest in this experiment. The kNN model does not have a training process and its accuracy is lowest. The complexity of SVR is lower than DBN and NN, but its accuracy is still lower than DBN and NN. DBN and NN model in the experiment share the same structure of network. Compared to NN, DBN has an extra pretraining process which increases its complexity as well as accuracy.Figure 4
The CDF of position error with different models.The choice of signatures will influence the localization result of the system. In Figure5, different groups of CIR parameters are chosen to construct different signatures. The model using all of the four parameters acquires the best accuracy in this experiment. The parameters of CIR contain different environment information which is the key of ensuring localization accuracy.Figure 5
The CDF of position error with different fingerprints.Another factor related to the signatures is the number of BNs. The BNs deployed in different positions will receive different impulse sequences which represent the position feature of a BLN. And more BNs mean more valuable position information that the signatures contain. In Figure6 we take three experiments with different numbers of BNs and compare the results. The experiment with the most BNs reaches the highest position accuracy.Figure 6
The CDF of position error with different number of NBs.


## 5.1. Setups of Experiment

As shown in Figure3, the localization system is deployed in an office scenario with several obstructions. There are three fixed BNs distributed in the localization area. When the BLN emits a UWB impulse in this area, we will acquire three different impulse sequences in the BNs, respectively.Figure 3
The architecture of experiment area.Python 2.7 is used as a simulator in this paper. The propagation process of UWB signal in indoor environment is simulated by using the 3D ray tracing algorithm [20]. The BLN is abstracted to a point which emits rays in a certain position in the 3D space. The rays may go through the obstructions or reflect on the surfaces. Every ray is traced until its power is too low. The BNs are abstracted to spheres called receive balls which record the rays that pass through them. The rays received by a BN can be converted to the impulse sequences which are needed in the experiment.In the off-line phase, a large amount of fingerprinting samples needs to be collected at first. Gathering fingerprinting samples is a time-consuming work, owing to the fact that collecting the signatures as well as the corresponding position is inconvenient in realistic work. However, relatively speaking, the unlabeled fingerprinting samples without position information can be accessed easily.In this paper, the BLN is placed in 250 different positions successively. 10 different samples are collected when BLN is placed in a position. Considering the fact that a large amount of fingerprint samples is needed, the collected samples are used repeatedly in the training process. Besides, extra 1000 labeled samples are needed to test the performance of this localization system.As is previously discussed, the signature of thekth sample fk consists of several parameters of the CIR. In this experiment we consider four different parameters of the CIR for the ith BN, namely, the number of multipath components Nik, the total power Pik, the first-path component power left(P1)ik, and the second-path component power (P2)ik. We will chose all or part of the parameters and discuss the choice of signatures and its effect later.In addition, as shown in Figure3, we deploy 3 BNs in the test area. The position of each BN is fixed. We will also discuss the influence of the BNs by changing the number of deployed BNs.DBN model considered in this experiment is constructed of 7 layers including 5 hidden layers, and each hidden layer contains 60 hidden units. In other words, the parameters connecting the first 6 layers will be initialized layer by layer using SAE.


## 5.2. Results and Discussion

As is discussed above, after the off-line phase, the indoor localization system based on DBN model is established and used to predict the position of a BLN according to the impulse sequence received by the BNs. Comparing the predicted coordinates to the actual coordinates in the test database, we can get the evaluation of the localization performance. In this experiment, cumulative density function (CDF) of position error is used to evaluate the performance.The localization performances of different matching models are compared in Figure4. The fingerprinting databases used in DBN, kNN, SVR, and NN are the same. The training time of DBN is the longest in these models while the position error of DBN is the lowest in this experiment. The kNN model does not have a training process and its accuracy is lowest. The complexity of SVR is lower than DBN and NN, but its accuracy is still lower than DBN and NN. DBN and NN model in the experiment share the same structure of network. Compared to NN, DBN has an extra pretraining process which increases its complexity as well as accuracy.Figure 4
The CDF of position error with different models.The choice of signatures will influence the localization result of the system. In Figure5, different groups of CIR parameters are chosen to construct different signatures. The model using all of the four parameters acquires the best accuracy in this experiment. The parameters of CIR contain different environment information which is the key of ensuring localization accuracy.Figure 5
The CDF of position error with different fingerprints.Another factor related to the signatures is the number of BNs. The BNs deployed in different positions will receive different impulse sequences which represent the position feature of a BLN. And more BNs mean more valuable position information that the signatures contain. In Figure6 we take three experiments with different numbers of BNs and compare the results. The experiment with the most BNs reaches the highest position accuracy.Figure 6
The CDF of position error with different number of NBs.


## 6. Conclusion

In this paper, we propose an indoor localization algorithm based on fingerprinting and DBN techniques. According to the UWB impulse sequences received by different BNs, we extract the CIR parameters and construct the fingerprinting database. In the off-line phase of fingerprinting localization, we apply a DBN model as a regression model to map the position of a BLN to the corresponding signatures. Greedy unsupervised training method to SAE model is used to initialize the parameters of a DBN model in the pretraining part. Supervised back propagation training method is used to fine-tune the initialized parameters of DBN afterwards. At last, CDF of position error is used to evaluate the performance of the localization algorithm. The localization accuracy is improved when DBN model is used in this algorithm.



---

*Source: 5840916-2016-01-21.xml*