An Introduction to Indoor Localization Techniques. Case of Study: A Multi-Trilateration-Based Localization System with User–Environment Interaction Feature

: The problem of estimating the indoor position of a person or an object, also known as indoor localization, has gained a lot of interest in the last decades. Actually, this feature would be valuable in many application contexts, from logistics to robotic and Assistive Technology. Different solutions have been proposed in the literature, exploiting a wide range of approaches. This paper aims to provide a brief review of the state-of-the-art approaches in the ﬁeld, as well as to present the RESIMA case study. The latter exploits an ultrasound-based indoor localization system and a User– Environment Interaction functionality, which allows for performing the continuous estimation of the distance between the end-user and objects in the environment. The latter is valuable to provide the end-user with efﬁcient assistance during the environment exploitation. The main focus of this work is related to the overall description of the system architecture, the trilateration algorithm adopted for the sake of user localization and the estimation of the delay time produced by user-distance computation under different operating conditions.


Introduction
The problem of estimating the indoor position of a person or an object (as an example, a wearable device or a moving robot, etc.), also known as indoor localization, has gained a lot of interest in the last decades. Lots of researchers have focused their efforts on this topic to develop solutions exploiting new technologies or to improve the performance of existing ones, mainly in terms of accuracy and reliability.
Many surveys and review papers on this topic that address the different proposed technologies and compare their performances are now available in the literature. Examples are [1][2][3][4][5][6] and others there referenced.
Indoor localization has become a fundamental task in many different fields; for example, everywhere Location-Based Services (LBS), context-aware applications and locationbased Internet of Things services are provided. Examples of applications exploiting solutions of indoor localization are security, healthcare, environmental exploration, and recently, gaming, and automated storage [7]. Places where there is a need for localization are shopping malls, stores, warehouses, hospitals, airports, subways, universities and campuses, public office buildings, cultural places such as museums and art galleries, public and botanical gardens, cities, etc.
Proximity detection-based methodologies localize the monitored target by sensing whether it is close to a well-known location or an area. The sensing can be performed by physical contact, as in the cases where touch sensors or pressure capacitive sensors are employed, or by checking whether the monitored target is in the range of anchor devices such as Wi-Fi access points or near-field communication readers.
The advantages of such an approach are simplicity and easy implementation, but they can only sense the location within a limited area, and the achieved localization accuracy is low.
Localization approaches based on triangulation estimate the location of the target by using geometry properties of triangles formed from known points (generally transmitters, e.g., Wi-Fi access points, GSM towers, Bluetooth beacons) to the mobile target. Triangulation can be subdivided into two subcategories using different measurements: lateration and angulation. While lateration is a distance-based technique, which uses measurements of the Time of Arrival (ToA), Time Difference of-Arrival (TDoA), Received Signal Strength (RSS) or Round-Trip time-of-Flight (RToF), angulation is a direction-based technique that is used in the Angle of Arrival (AoA) approach and in the camera pose method, which estimates the location by calculating the pose of the camera carried by the monitored target.
The main idea underpinning the fingerprinting methodology is matching a set of measurements from a localization signal (for example, RSS measurements from visible access points) at a certain location, called a fingerprint, with a set of pre-collected fingerprints stored in a database. Such an approach requires a training phase to build the fingerprint database with a given level of granularity. The finer the granularity, the better the accuracy but requires more time to collect the fingerprints.
During the localization phase, the location of the monitored target is computed by comparing the collected fingerprint with the fingerprints in the database using deterministic or probabilistic algorithms. Depending on the localization signals, fingerprinting can be categorized as wireless, magnetic and visual fingerprinting.
The Dead Reckoning approach uses inertial sensors to infer the current location from the moving direction, velocity, and sampling interval, given an initial position. The main advantage of such a methodology is that it needs no extra infrastructure and has no coverage limitation. This makes it useful in areas where Wi-Fi is not available. However, the main drawback is the accumulated error, leading to the degradation of accuracy over time. The error can be corrected periodically by using other localization methods or spatial information such as environmental maps and landmarks. In the specific case of the pedestrian dead-reckoning, the approach requires three phases: step detection, step length estimation and heading estimation. Many different strategies and methods have been proposed to cope with each of these three steps [4,[8][9][10].
Finally, hybrid localization techniques aim to overcome the limits of the other methodologies in terms of accuracy, coverage, the requirement for infrastructure and the cost of deployment by fusing multiple localization signals [4].
A brief review of technologies for the development of indoor localization system is given in Section 2, while in Section 3, the RESIMA system is presented along with considerations related to the implementation of the User-Environment Interaction (UEI) functionality.

Technologies for Indoor Localization
From a technology point of view, localization solutions exploit different approaches such as Wi-Fi, Ultra-WideBand (UWB), ZigBee, Bluetooth, Radio-frequency Identification (RFID), Global System for Mobile communication (GSM), Infrared (IR) and visible light Frequency Modulation (FM), ultrasounds and audible sounds, magnetic field, camera and sensors such as inertial sensors available in wearable devices, smartphones or dedicated electronics [1,11]. In some cases, hybrid systems based on the combination of different techniques, such as multimodal fingerprinting, triangulation-based fusion, and pedestrian dead-reckoning-based fusion, have been presented as solutions to cope with limitations in accuracy, coverage, and complexity while maintaining a low cost [7]. The main drawbacks of several navigation systems in the literature are related to discontinuous assistance for the user, the high cost, and sometimes the arbitrary form of information provided [12]. A comparison of the different location solutions and a review of the approaches used to evaluate their performances are discussed in [13].
IR technology is largely adopted in many communication systems. Anyway, since it relies on the Line-of-Sight (LoS) between transmitters and receivers, this approach can be conveniently adopted in the case of open environments. As an example, in [14], a low-cost localization method based on tracking mobile IR transmitters and an AoA estimation algorithm is presented. The solution was investigated in the context of the supermarket cart navigation, showing accuracies ranging from centimeters in the case of static positions up to 1 m mean localization error obtained for a cart moving at 1.4 m/s. The main problem affecting IR technology and, in general, light-based solutions is the multipath propagation due to light reflections and refractions in the indoor environment. Both the line-of-sight component and the multipath component are received by the receiver, and because signal components can vary in power strength and phase, the localization accuracy can be significantly affected. Strategies for the compensation of the multipath effect have been proposed in literature. The authors in [15] proposed a model of IR signal reflections on any kind of surface material that can be applied for the multipath behavior of optical signals. The same authors, in [16], proposed a model to determine the multipath effect in indoor environments when the shape and characteristics of the environment (e.g., reflection features of the materials) are known a priori. Recently, the effects on the accuracy of IR-based indoor positioning caused by the multipath have been analyzed using Angle of Arrival (AoA) and Phase-of-Arrival (PoA) techniques [17].
In the context of visible light communication systems, fluorescent lamps and Light-Emitting Diodes (LEDs) are used to transmit data as light beams and light pulses. The basic principle is that each light source serves as a beacon whose modulated radiation can be captured by a light sensor and uniquely identified [18]. A survey of LED-based visual light communication systems is reported in [19]. The main drawbacks reported in the literature are the need for significative computational resources for real-time processing and high energy demands.
Sound-based indoor tracking systems adopt microphones, speakers, and sound (audible) and ultrasonic sensors to generate and detect signals. Such systems can be used to detect the intensity of sounds or as distance sensors by estimating the travel time of the sound signal from the source to the sensor. To this aim different distance measurement techniques have been proposed, such as the Time of Arrival (ToA) and the Time Difference of Arrival TDoA. Ultrasonic sensors are used as a distance sensor in the location detection systems discussed in [20,21]. The authors in [21] proposed a high-accuracy ultrasonic indoor positioning system that exploits several wireless ultrasonic beacons in the indoor environment. Each beacon has well-known coordinates and operates both as a receiver collecting the signals from the target node and a transmitter by emitting ultrasonic signals. The distance between the beacon and the target node is calculated by measuring the Time-of-Flights (ToF) for the ultrasonic signals, and then the position of the target is evaluated by computing the measured distances. An experimental location error of 10.2 mm in the positioning for a moving robot is reported when the system is operated in the line-of-sight signal conditions. In ref. [22], an ultrasonic localization system using a spring relaxation technique is proposed, which shows an accuracy in the order of 58.6 mm in the 90-percentile.
The main drawbacks affecting ultrasound-based localization systems are the difficulty of signals to penetrate well through an obstruction, the need for several numbers of ultrasonic sensors to monitor large areas, multipath sensitivity, temperature sensitivity and the Doppler effect.
Magnetic field variations sensing, through dedicated sensor nodes or sensors embedded in portable devices such as smartphones, for positioning estimation have also been addressed. The applicability of a magnetic positioning system as support for a dead-reckoning inertial navigation system for pedestrians has been investigated in [23].
The integrated system has been demonstrated to provide positioning errors of 1 to 2 m over significantly long periods of time up to 45 min in realistic indoor environments. A novel localization and calibration algorithm for an indoor magnetic positioning system employing a one-axis magnetic transmitter and several three-axis field sensors connected to a sensor network is presented in [24]. A calibration scheme for the overall field sensor nonidealities due to magnetic coupling of the sensor coils, coil misalignment, field sensor rotation, and unsynchronized sampling, together with a statistically optimal localization procedure, is presented. The positioning system has been demonstrated in a common office environment with a size of 7 m × 5 m × 3 m and showed a positioning root-mean-square error (RMSE) of 10.6 cm and an angle RMSE of 6.1 • . A positive aspect of magnetic systems, generally highlighted, is that magnetic fields are not blocked by walls or people and can then operate also in non-line-of sight (NLoS) condition. Anyway, as it emerges, magnetic positioning is not suitable for high accuracy.
Wireless communication-based indoor positioning systems that employ different radio frequency signals have attracted many researchers. Two main groups of indoor localization systems can be defined: active and passive localization systems [5]. The main difference is the presence or lack of a tag or device used for the sake of localization. In active localization systems, the monitored person carries a dedicated tag or device. Active localization systems exploit RFID [25,26], UWB [27], Bluetooth [28], ZigBee [29], IR [19], ultrasonic [20], hybrid systems [30] and 802.11 WLANs [31,32]. Passive localization systems are discussed in [33,34]. Technologies adopted in passive localization systems include UWB [35,36] and computer vision [37,38].
Ready to use (or easy to install) solutions for indoor localization, addressing different application scenarios, are already available on the market. Examples, just to name a few, are the Simatic Real-Time Locating System (RTLS) by Siemens [39], the KIO RTLS by Eliko [40] and the Sewio RTLS [41], designed for industrial applications and based on the UWB technology. The Situm Indoor Positioning System [42] and the HERE Indoor Positioning System [43] are designed for people tracking inside buildings and exploit information from local Wi-Fi and Bluetooth networks, magnetic fields and information from beacons or inertial sensors of smartphones. Smartphone sensors and low-signal Bluetooth beacons are also used in the indoor positioning solution proposed by Nextome [44], while an inertial engine with geomagnetic fingerprinting, sensor fusion and radiofrequency mapping is at the core of GIPStech's technology [45]. Finally, the integration of a Low-Power Wide Area Network (LPWAN) and a trilateration algorithm is the solution for a large-scale indoor localization system by Behr Technologies Inc. (North York, ON, Canada) [46].
In the following, localization and navigation solutions to be adopted in the Active and Assisted Living framework (AAL), aiming to assist frail people during the exploration of indoor environments, are detailed. In the case of AAL contexts, the need for very accurate indoor positioning solutions emerges, which should also fulfill the user acceptability requirement.
More specifically, navigation assistive systems are in charge of getting awareness of surroundings and of the User-Environment Interaction, as well as to provide the user with suitable information (in terms of the contents, quantities and the form) that is useful for assuring safe mobility. To this aim, two main approaches have been investigated: Obstacle Detection and Location-Based Service. Solutions in these two classes can exploit different technologies, among those described above, to acquire information about the surrounding environment, such as ultrasonic, infrared, laser and cameras, RFID, wireless networks, etc. Moreover, auditory, tactile, electromagnetic and optical technologies are used to provide a form of feedback to end-users [47][48][49].
A case study related to an indoor localization system for AAL is presented in Section 3. For the sake of completeness, in the following, a basic background on related works available in the literature is reported.
A CANBUS (Controller Area Network BUS) sensor network aimed to provide weak users (elderly or impaired people) with a continuous spatio-temporal form of assistance during the exploitation of indoor environments is presented in [50]. The system allows for a continuous update of the user's position within the environment (with an uncertainty of less than 10 cm) by a continuous interaction between a user worn module and a distributed ultrasound sensor network. Dedicated paradigms have been developed to provide awareness of the User-Environment Interaction (UEI), such as the presence of obstacles or services.
Improvements to both the architecture and functionalities have been discussed in [51]. A Wireless Sensor Network (WSN) has been used to replace the CANBUS network, thus providing the architecture more flexibility and ease of installation. The main improvement is represented by the capability of the system of building awareness of the User-Environment Contextualization (UEC), which relates the user status by monitoring the user's inertial behavior (posture and dynamic) to the environmental status by checking the presence of hazards such as fires, gas leakages, smoke, etc. The information coming from the UEC and UEI tools is automatically processed by a Decision Support System (DSS) tool, which can provide optimal information to help the supervisor make decisions and perform actions to manage hazards or specific user needs.
Indoor localization systems using other wireless technologies are known to have accuracies that are often not compatible with the task of tracking people in indoor environments with a high degree of accuracy. As reported in the literature [2,5], the accuracy of Wi-Fi-based localization systems ranges between 1 m and 5 m, while in the case of Bluetooth, accuracies range between 2 m and 5 m. Similar values (from 3 to 5 m) were reported for ZigBee-based systems, while RFID technology provides an accuracy ranging between 1 m and 2 m. Examples of wireless localization systems are the hybrid fingerprint location technology based on Received Signal Strength (RSS) and Channel State Information (CSI) proposed in [52] and the Wi-Fi system exploiting a Round Trip Time (RTT) positioning method based on Line of Sight (LoS) identification and range calibration presented in [53], which achieves a mean localization error of 0.862 m and a root-mean-square error of 0.989 m.
Machine learning techniques and deep learning algorithms have been also investigated. As an example, ref. [54] presents a localization model employing a convolutional neural network (CNN) and the Gaussian Process Regression (GPR) based on Wi-Fi RSS indication fingerprinting data. code.

Case of Study: The RESIMA System
The RESIMA system, very well addressed in [51], aims to support people with a sensory disability willing to autonomously exploit indoor environments. The main peculiarities of the RESIMA architecture are given by the time continuous operation of the indoor localization approach, which shows a suitable spatial resolution. This feature, combined with the a priori knowledge of the environmental map and the inertial monitoring of the user status and information on the environmental status, allows for implementing interesting assistive functionalities, such as ones provided by the User-Environment-Interaction (UEI) and the User-Environment-Contextualization (UEC) tools, supporting the user in exploring indoor environments. The system architecture consists of a WSN with multi-sensor nodes, a user module and a master node connected to a PC running a dedicated environment developed in NI LabVIEW™. As better addressed in the next section, the latter implements pre-processing algorithms, the Trilateration Paradigm for indoor localization, the UEI and the UEC tools, the DSS and the System-Management-Tool (SMT) [50,51,55].
In the following, the ultrasound-based indoor localization approach and the UEI functionality are addressed in detail.

The Localization System and the UEI Tool
The localization feature exploits Ultrasound Sensors (US) to measure the distance between the user and anchors in the environment. Each node in the environment is equipped with an ultrasound receiver (400ER080 by Tecnosens), while the ultrasound transmitter (400ET080 by Tecnosens) is embedded in the user module. Inertial sensors are also used to implement complementary user tracking tasks. More details concerning the system realization are available in [51].
The user localization is performed through a trilateration algorithm exploiting measured distances between the user and the sensor nodes. The principle of standard trilateration algorithms is well-known. To summarize, to calculate the position of an entity within a region, its distance from at least three fixed (and not aligned) nodes must be measured. In real scenarios, increasing the number of nodes conveys a certain degree of redundancy to the method, which allows for increasing its accuracy, robustness and fault tolerance. Moreover, the availability of a redundant number of nodes allows for implementing advanced trilateration techniques, such as the Multi-Trilateration Algorithm (MTA) used in the RES-IMA system and shown in Figure 1. The MTA algorithm estimates the user coordinates by considering and computing all possible combinations of three measured user-node (not aligned) distances [50]. The approach adopted sorts all the estimated user coordinates in order to filter out outlier estimations. The latter, which is the main advantage of MTA with respect to the standard trilateration algorithm, allows for enhancing the robustness of the localization method against fake or not accurate distance measurements. The user position is hence estimated by computing the mean value of the positions depurated from outliers. The results discussed in [50,51,55] demonstrate the suitability of the proposed approach. It should be observed that in the trilateration approach, and so also in the MTA algorithm, increasing the number of nodes could improve, to a certain extent, the accuracy of the localization system. However, this assessment must be performed case by case by taking into account the characteristic of the considered environment. In particular, performances of the localization system have been investigated in different real environments. As an example, an experimental set-up made up of six fixed nodes installed in a 43 m 2 environment and a reference grid. A statistical analysis of residuals between expected and measured user coordinates allows estimating a system uncertainty less than 5.0 cm for both the x and the y axis. The estimated accuracy value is compliant with application in the field of Assistive Technology, which usually requires accuracy in the range of ten centimeters.
The UEI tool aims to support the end-user while performing indoor navigation or other tasks requiring interaction with the environment. In particular, environment-related information (e.g., location of obstacles or services) is appropriately combined with users' position in order to properly set out candidate messages valuable for improving their performance, especially in terms of efficiency in exploring the environment and safety. The adopted paradigms continuously compare user-objects distance to safety or working ranges, as addressed in [51]. The way to estimate the above-referred distances is discussed in the next section. Finally, the DSS is mainly in charge of sorting candidate messages generated by the UEI tool in order to provide the user with an optimized degree of information.

The System Management Tool and User-Objects Distance Estimation
The dedicated LabVIEW tool, shown in Figure 2, has been developed to properly manage the whole system. The front panel is mainly composed by: Functional commands which will be explained in the following notes; • Warning and Danger indicators, which starts lighting when the user exceeds safety thresholds thus approaching or being very close to an obstacle, respectively; • Nearby and Found indicators, which in the same way as the previous case notify the user of being closer or reached a service. As mentioned in Section 3.1, to properly implement the UEI functionality, userobstacle/service distances must be conveniently estimated. To such aim, obstacle/services contours have been discretized by a discretization step, which allows defining nodes to be used to estimate distances from the user. An example of user-objects distance representation, allowed by the SMT, is shown in Figure 3. This information is valuable for the implementation of the UEI functionality, with particular regard to the assessment of the obstacle collision risk and the service proximity condition [51]. The same information can be also valuably used to implement a navigation aiding system. Actually, many of such functionalities exploit the information related to the minimum user-object distance, as shown in Figure 4.   Figure 5 shows results of the system performances analysis in terms of the delay time introduced by the UEI tool in estimating the overall user-object-nodes distance, as a function of the discretization step, used to define obstacle/services nodes. The minimum discretization step (0.05 m) corresponds to a number of 1160 nodes, requiring the same number of distances to be computed. In order to explore different scenarios, for each discretization step, 50 different user positions have been considered. Figure 5 shows, for each discretization step, the maximum value of the delay time estimated for the whole set of user positions. In particular, Figure 5a shows the results obtained in case the UEItool continuously updates the user-objects distance maps (e.g., graphical outputs shown in Figures 3 and 4), while Figure 5b shows results in case the tool only computes user-object distances without providing any graphical output. As it can be observed, computational times, in the second case, which is the typical working condition during the real operation of the system, are negligible considering the time scale of the addressed application. Moreover, as expected, the standard deviation of the delay time computed across the 50 different user positions demonstrated a negligible dependence on the user position. The standard deviation of the delay time computed across the 50 different user positions demonstrated a negligible dependence on the user position. It is important to note that the choice to show the maximum value (instead of the average value) has been further motivated by the need to investigate the system performance in the worst case, which could compromise the system efficiency in real applications. For the sake of completeness, Figure 6 shows the delay time in computing user-object distances in the case of no graphical output as a function of the number of nodes used to describe the objects in the environment. The results presented in Figures 5 and 6 need to be scaled up proportionally to the number of users.
It must be underlined that the analysis performed against different discretization steps and different number of nodes also allows assessing the system performance in different scenarios characterized by a customized spatial definition of obstacles and services.

Conclusions
This work reports a brief introduction of the state-of-the-art approaches in the field of indoor localization systems, with a specific focus on solutions oriented to the Ambient Assisted Living framework. In particular, the case of the RESIMA system has been presented, which exploits the combined information on the user position, as obtained by a wireless network of Ultrasound sensors, and the environmental map to implement the User-Environment Interaction functionalities. This system aims to support end-users in a safe and efficient exploitation of the indoor environment. The UEI tool computes the distance between the end-user and the objects in the environment and also generates information on possible collisions with obstacles or interactions with services. The adopted indoor localization system, exploiting the MTA algorithm, demonstrates the suitability of this approach for the Ambient Assisted Living framework addressed by this work. Moreover, the delay time in computing user-object distances has been investigated, which allows affirming that in the case of no graphical output (the real operating condition), the system performances are compliant with the addressed application field.
Further efforts will be dedicated to embedding different solutions to implement the user localization functionality in order to fix issues related to user localization in the blind part of the map not covered by the Ultrasound approach, for example. Moreover, the effect of running tasks parallel on the system performances will be also investigated.