^{1}

^{*}

^{1}

^{*}

RFID technology is one of the important technologies to determine the object locations. Distances are calculated with respect to calibration curves of RSSI amplitudes. The aim of this study is to determine the 2D position of mobile objects in the indoor environment. The importance of the work is to show that localization by using Artificial Neural Network plus Kalman Filtering is more accurate than using classical KNN method. An indoor wireless sensing network is established with strategically stationed RFID transmitter nodes and a mobile object with a RFID receiver node. A fingerprint map is generated and K-Nearest Neighbourhood algorithm (KNN) is deployed to calculate the object locations. Fingerprint coordinates and RSS values received at these coordinates are deployed to set up an Artificial Neural Network (ANN). This network is used to determine the unknown object locations by using RSS values received at these locations. The accuracy of object localization is found to be better with ANN technique than KNN technique. Object coordinates, determined with ANN technique, are subjected to Kalman filtering. The results show that localization accuracies are improved and localization error distances are reduced by 46% with the deployment of ANN + Kalman Filtering.

In recent years, researchers have used RFID technology in location detection. This technology consists of wireless sensor nodes (WSN). Object locations are determined by employing EM signal strengths to/from WSNs in both indoors and outdoors. RFID systems have a rich data capacity, non-contact features, repetitive ability and durability. There are many active RFID systems discussed in the literature [

In the first one, various EM signal parameters are measured such as angle of arrival (AOA), time of arrival (TOA) and time difference of arrival (TDOA). A propagation channel is generated based on these parameters and the object position is determined [

In the second one, signal characteristics are different at different locations across the region of interest. Hence a different signal signature or fingerprint is generated at each location [

These two approaches have several problems such as multipath propagation, fading and variations in signal profile over time [

Initially, object positions are determined by using KNN algorithm with measured RSS values. In second stage, ANN technique is deployed to calculate object coordinates [

In third stage, Kalman Filtering is employed to filter out the calculated object coordinate variations due to initial RSS fluctuations. Comparisons are carried out between object coordinates calculated with KNN, ANN and Kalman filtered ANN.

The paper is organized as follows. In Section 2, a description of Fingerprint localization system is presented. Sections 3 and 4 give a comprehensive view about Kalman filtering. Implementation of Neural Network technique is discussed in Section 5. Results and discussions are presented in Sections 6 and conclusions are given in Section 7.

Fingerprint localization technique is proposed in this study. Object location is estimated by employing KNN algorithm in a WLAN indoor environment. There are 2 phases in the technique. The first phase is the data collection and measurement offline phase while the second phase is the location estimation online phase [

Data collection offline phase is conducted in a rectangular shape indoor area with dimensions 12 m × 20 m. WSN transmitters [

In the online phase, real time sample of RSS measurements are collected from a WSN receiver on the object at unknown locations across the fingerprint map. Sample RSS values are compared to those stored in the database. The theory of minimization of Euclidean distances [

Euclidean distance, d, is the signal amplitude distance between RSS values at a fingerprint point and RSS values at unknown object location. Nearest grid locations from the fingerprint database to the actual object RSS measurements can be detected by minimizing the Euclidean distance d, Equation (1), between them.

d i = ∑ j = 1 4 ∑ i = 1 N ( R S S j i − R S S j o ) 2 (1)

where j is the number of APs and R S S j i is the RSS value from j^{th} AP at i^{th} grid location. R S S j o is the object RSS measurement from j^{th} AP at o^{th} unknown object location. i = i 1 , i 2 , ⋯ , N , where N is the maximum number of grid points.

Hence the unknown object, “o”, location coordinates can be calculated by deploying weighted centroid localization algorithm expressed by Equation (2).

( x ^ , y ^ ) = ∑ k = 1 K 1 d k ( x , y ) k ∑ k = 1 K 1 d k (2)

where ( x , y ) k is the coordinates of k^{th} number of nearest fingerprint points. Similarly d k is the k^{th} number of minimum Euclidean distance.

Kalman Filtering (KF) is applied to reduce the localization errors [

Let the initial state of a system be X_{0} and initial error in estimation during process be P_{0}. State equation of the system can be defined as

X k p = A X k − 1 + B u k + ω k (3)

where X_{k} is the state matrix and contains position and velocity coordinates ( x , y ) and ( x ¯ , y ¯ ) . ω k is noise and it is assumed zero. u is control matrix. A and B are unity matrices, k is the time index. Process covariance matrix is defined as

P k P = A P k − 1 A T + Q k (4)

where Q_{k} is the process noise.

The system behaves according to the state equation and there is a need for an estimator which gives an accurate estimate of the true state even if it cannot be measured directly. Mathematically, there is a need for a state estimate that varies from the true state as little as possible. Difference between true state and estimated state is defined by a quantity called Kalman Gain. This Kalman gain (K) is given as

K = P k p H T H P k p H T + R (5)

where R is sensor noise and H is unity matrices. Updated state with new measurement input Y_{k} and Kalman gain can be defined as:

X k = X k p + K ( Y k − H X k p ) (6)

where Y k = C X k m + Z m with C is unity matrix and Z is measurement noise. Error estimate during process becomes

P k = ( I − k H ) P k p (7)

Finally output of updated state becomes X_{k} and P_{k.} An operational model of Kalman filtering is given in

In this study, localization model of Kalman filter is obtained from the linear motion of a person walking with a constant velocity. Object position in the model is ( x , y ) and velocity is ( x , y ) . Matrices in state Equation (1) can be defined as

A = [ 1 0 Δ T 0 0 1 0 Δ T 0 0 1 0 0 0 0 1 ] , B = [ 1 2 Δ T 2 0 0 1 2 Δ T 2 Δ T 0 0 Δ T ] , u k = [ a x a y ]

Therefore, the state equation X_{k} becomes;

X k = [ x y x ¯ y ¯ ] k = [ x k − 1 + x ¯ k − 1 Δ T + a x 1 2 Δ T y k − 1 + y ¯ k − 1 Δ T + a y 1 2 Δ T 2 x ¯ k − 1 + a x Δ T y k − 1 + a y Δ T ] (8)

The Kalman gain can be calculated by Equation (5) where H is unity matrix and R is observation error matrix. They are shown as

Where Δ T is the sampling time step. a_{x} and a_{y} are the acceleration along x and y axis and equal to zero.

The error estimate during the process which is also termed as state process covariance matrix is defined in Equation (9).

P K − 1 = [ σ X 2 σ X σ Y σ X σ V X σ X σ V Y σ Y σ X σ Y 2 σ Y σ V X σ Y σ V Y σ X σ V X σ Y σ V X σ V X 2 σ V X σ V Y σ X σ V Y σ Y σ V Y σ V X σ V Y σ V Y 2 ] (9)

where σ x and σ y are the process variations. σ v x and σ v y are the velocity variations of the process which are considered as zero. Measurement input is defined as:

Y k = C X k m + z m (10)

It updates the system with new measurements. The model characterizing the measurement input equation is given by

[ Y x Y y ] = [ 1 0 0 0 0 1 0 0 ] [ x y x ¯ y ¯ ] + [ z m X z m Y ] (11)

where z_{m} is the electronic noise and assumed zero.

H = [ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ] , R = [ Δ x 2 0 0 0 0 Δ y 2 0 0 0 0 Δ V X 2 0 0 0 0 Δ V Y 2 ]

New adjusted state, in another word, new predicted state X_{k} will be calculated with Equation (6). Process covariance matrix is updated with Equation (7) by using unity matrices I and H with Kalman gain. The new predicted state X_{k} and new updated covariance matrix P_{k} represent previous k-1 state in second round and the whole iteration is repeated once again.

The outputs are the updated state values which are presented in

The second method introduced in this study to determine the mobile object’s location is the Artificial Neural Network approach [

The approach is a nonlinear mapping from a set of input RSS values onto a set of two output variables representing the mobile object position coordinates (x, y). ANN based structure is constructed by using Multi-Layer Perception (MLP). This network deploys the back propagation training of estimated errors. Errors propagate backwards from the output nodes to the inner nodes. Back propagation method is a supervised learning method and its model is given in

ANN approach has two operational phases separately. They are training (learning) phase and real time estimation phase.

In this study, there is a set of 4 RSS inputs applied to the input of the ANN during the training phase. In this phase, weights are iteratively adjusted to minimize the network performance function. During the real time estimation phase, RSS measurement at a specific object location is applied to the inputs of ANN. The outputs of the ANN are the estimated values of object location coordinates.

Feed forward architecture is employed with ANN. Network model with the back propagation method has the following characteristics in

This study is undertaken to compare the effects of Artificial Neural Network and Kalman Filtering with k-NN localization. Unknown object locations are determined with KNN and ANN techniques and an initial comparison is made between them. ANN technique has shown a higher positioning accuracy compared to KNN technique. Hence, the object coordinates which are calculated with ANN technique are subjected to a further stage of Kalman filtering to improve the positioning accuracy.

Experimental test area has 240 fingerprint points with a spatial separation of 1 m. 4 WSN transmitters are placed at the 4 corners of the test area. A mobile person with a WSN receiver has moved along a trajectory track along the edges of the test area during the measurements. This trajectory track is formed by 57 locations with 1 m distance between two adjacent locations. Position of the mobile person is calculated at each location and recorded as the unknown object location.

During the offline phase, a fingerprint database is constructed. This database consists of ( x , y ) grid coordinates against RSS values from 4 transmitters. During the online phase, RSS measurements at trajectory points are recorded. KNN algorithm is deployed and k number of nearest Euclidean distances and their corresponding fingerprint points are selected. Location of the person is estimated by employing the weighted centroid localization technique. As a result, a series of estimated location coordinates are obtained along the edges of the test area. These coordinates are displayed graphically in

Location of the mobile person is also determined by deploying Artificial Neural Network. Fingerprint database, generated during offline phase, is used as the input and output training data for the MLP network structure. Sigmoid activation function is used between input and output layers. Inputs are the RSS values received from transmitters at every fingerprint point. ( x , y ) coordinates of the fingerprint points are the related output ( x , y ) coordinates for the ANN. The network is trained with these known RSS values and their known ( x , y ) coordinates. Number of training iterations is taken as 3000.

ANN model | |
---|---|

Input nodes | 4 |

Output nodes | 2 |

Activation function | Sigmoid |

Training iteration | 3000 |

Hidden layers | 4 |

Training rate | 0.2 |

MATLAB neural network toolbox is employed during calculations. Feed forward architecture is employed by using function “newff”. Activation function “tansig” for the hidden layers and “purelin” linear function is used for output layer. Training function is defined by the function “trainrp”. Once the training phase is completed, RSS measurements at unknown tracking trajectory points are applied as inputs to trained network inputs and the output ( x , y ) coordinates are determined as the unknown locations of the mobile person along the trajectory. These output coordinates are presented in

Location mean error, mean value of distance between the actual and estimated location, with KNN method is 0.98 m and with ANN method is 0.84 m. Similarly location median error, median value of distances between the actual and estimated locations, with KNN method is 0.91 m while with ANN method is 0.78 m. Finally, standard deviation of error distances (SDE) with KNN is 0.32 m while with ANN is 0.23 m. These are presented as a bar chart in

Because the results show that unknown coordinates of the mobile person are calculated closer to actual coordinates with ANN method compare to KNN method. Furthermore estimated position variations are reduced with ANN method.

To increase the localization accuracy of the mobile person Kalman filtering is applied on the ( x , y ) position coordinates of the mobile person calculated with ANN method in time domain. The sampling time is set to Δ T = 1 s. Process variations σ x and σ y are considered as (2.5)^{2} and the velocity variations of the process, σ v x and σ v y , are equal to zero due to the mobile person’s constant walking speed.

( x , y ) coordinates of 57 locations which are obtained with ANN method along the mobile person’s trajectory are Kalman filtered. Filtered coordinates are also plotted in

e r r = ( x e s t − x t r u e ) 2 + ( y e s t − y t r u e ) 2 (12)

Location mean error with ANN + KF is 0.53 m, median error is 0.51 m and standard mean error is 0.12 m. These errors are also presented in

In this study, a dynamic localization technique is introduced along a trajectory in a closed indoor area. A mobile person has walked along a trajectory and RSS values were recorded. A fingerprint map and its database are constructed and unknown locations on the trajectory are estimated with well-known KNN method. ANN algorithm is also deployed along the trajectory and unknown locations are once more estimated. Kalman filtering is applied on the results of ANN algorithm and the accuracies of the mobile person’s positions are improved. It can be concluded that Fingerprint mapping based on ANN algorithm combined with Kalman filtering produces excellent localization accuracies of around half a grid space indoors.

In future studies, localization of moving persons in indoors will be researched by applying other artificial neural network techniques such as General Regression Neural Network (GRNN), Convolutional Neural Network (CNN), and Deep Neural Network (DNN). Additionally, object coordinates obtained with these techniques will be subjected to Kalman filtering to improve the positioning accuracies a stage further.

Koyuncu, H. and Koyuncu, B. (2017) An Application of Kalman Filtering and Artificial Neural Network with K-NN Position Detection Technique. Wireless Sensor Network, 9, 239-249. https://doi.org/10.4236/wsn.2017.98013