1. Introduction
Over the last decade, a wide array of indoor positioning technologies has emerged, and their widespread acceptance and application across society are increasing [
1,
2,
3]. Currently, the most utilized indoor positioning technologies encompass Wi-Fi [
4,
5,
6], Bluetooth low energy (BLE) [
7,
8,
9], and ultra-wide band (UWB) [
10,
11,
12,
13]. UWB technology, known for its high accuracy and strong anti-interference capabilities, has received considerable attention for indoor positioning, though it is limited by its inability to cover large areas and high costs associated with hardware and deployment [
14,
15]. Wi-Fi-based indoor positioning benefits from extensive existing infrastructure, which can help reduce costs but suffers from high power consumption, short battery life, and increased susceptibility to interference from other Wi-Fi devices [
16,
17]. After the introduction of BLE technology, it has drawn wide attention in the field of indoor positioning because of its low power consumption, widespread range, and low cost [
18]. Nevertheless, despite the considerable advancements made by these technologies, the domain of indoor positioning continues to encounter a number of pivotal challenges, including the trade-off between accuracy and cost, energy efficiency, environmental adaptability, and scalability. The DSFP algorithm proposed in this paper seeks to address these challenges and achieve a high-precision, low-cost, and energy-efficient indoor positioning solution by integrating D–S evidence theory and fingerprint positioning technology.
Within indoor positioning research, primary observational metrics include time of arrival (TOA) [
19], time difference of arrival (TDOA) [
20], angle of arrival (AOA) [
21], and received signal strength indicator (RSSI) [
18]. Although TOA, TDOA, and AOA can achieve high-precision positioning, they have high requirements for equipment, complex deployment, and high cost [
13]. Due to these factors, they may not be the best fit for applications that require tracking personnel or managing logistics, where cost-effectiveness and ease of implementation are crucial. In the management of fixed assets, positioning tags attached to equipment allow for the real-time tracking and management of each item. This capability enables the precise localization of each asset, thereby automating inventory processes [
22]. For instance, it is possible to verify whether tool carts are correctly positioned in warehouses or to locate various devices in hospitals that are essential for delivering medical services and conducting clinical care, which supports emergency care management. Additionally, the system can monitor the movements of portable assets; for example, it can trigger alerts when a tool cart exits the premises to ensure that it is used only within authorized areas [
23]. In such scenarios, we only need to estimate the location of the positioning target at the room level to meet the requirements at the lowest cost.
The goal of this paper is to achieve room-level accuracy positioning and tracking. RSSI has the advantages of low implementation cost, low equipment requirements, and wide applicability [
24]; thus, it is suitable to use RSSI for the observations. However, existing RSSI-based positioning systems encounter a number of challenges, including signal instability resulting from environmental changes, positioning errors caused by multipath effects, and the difficulty of maintaining high accuracy in large-scale deployments. For the room-level indoor localization problem, the target may frequently be estimated in a wrong room, because the coverage area of an anchor is not as same as the actual room. In this case, the estimation accuracy is not improved, even with a higher accurate localization algorithm, in which the MSE is rather small.
In this paper, we propose a Bluetooth-based indoor positioning system that enables room-level localization and real-time tracking of targets. The BLE target consists of a solar panel which supports the energy-harvesting capability and long-term operation. This system requires only a single anchor node device in each room to facilitate room-level localization of BLE tags, eliminating the need for complex and expensive configurations. The primary contributions of this work are as follows:
- (1)
We developed a cost-effective real-time indoor positioning and tracking system using Artificial Intelligence of Things (AIoT) devices, capable of synchronously localizing multiple energy harvesting BLE tag devices within complex environments. This system integrates hardware, databases, and algorithms to facilitate a highly customized platform. It features a front-end interface connected to the database, enabling the real-time display of positions and identification of different targets across various rooms.
- (2)
We introduce an algorithm named DSFP, which combines the D–S theory of evidence and fingerprint-based positioning to achieve efficient and accurate location estimation. DSFP divides the indoor environment into clear areas and fuzzy areas. The clear areas indicate that each room is equipped with a unique anchor. For fuzzy areas, it is difficult to classify the anchors into the specific rooms. The D–S algorithm is employed for positioning within clear areas. For fuzzy areas, the fingerprinting technique is utilized to ensure reliable localization. The D–S theory has been applied to represent and combine conflicting RSSI information for positioning [
25]. The implementation concept of the D–S algorithm is to regard each room as a hypothesis, and the measured value of the target RSSI in each room as evidence. The confidence level is set according to the distance and area size between different rooms. The algorithm calculates the probability of each hypothesis based on the confidence level and the evidence of the target in each room, and the hypothesis with the maximum probability value is used as the position estimation result. For fingerprint-based positioning, we evaluated and compared three machine learning algorithms: k-nearest neighbors (KNN), random forest (RF), and support vector machine (SVM).
Our proposed system is evaluated via extensive experiments. The results demonstrate that the DSFP can achieve highly accurate room-level estimation, maintaining positioning accuracy above 99% under standard test conditions.
This paper is organized as follows:
Section 2 presents an overview of the various methodologies and technologies employed to achieve room-level positioning.
Section 3 provides an overview of the system architecture.
Section 4 delves into the methods and algorithms employed for location estimation.
Section 5 presents the experimental results that validate the proposed scheme. Finally,
Section 6 summarizes the conclusions drawn from this work.
2. Related Work
Among the various indoor positioning technologies, RSSI-based methods have gained widespread adoption due to their ease of implementation and cost-effectiveness [
18]. These systems typically employ one of following three methods for positioning:
Ranging-based methods: This approach leverages the principle that radio signal strength is degrading with the increased propagation distance. By measuring the received signal strength, an estimate of the distance between the device and the Bluetooth beacon can be obtained, which is then used to calculate the device’s position [
26]. Rida et al. proposed an indoor positioning system with an average error ranging from 0.5 to 1 m [
27]. This system operates by selecting the three anchor nodes with the strongest signal strength when a target enters their coverage area. The target’s location is then estimated using a trilateration algorithm developed by the authors. The effectiveness of this method relies on a model that accounts for transmitter power and environmental path loss. However, the complexity of indoor environments, particularly the presence of multipath effects, can significantly reduce positioning accuracy. Furthermore, achieving room-level accuracy using trilateration necessitates at least three anchor nodes, which increases deployment costs. Additionally, the inherent instability of RSSI signals makes real-time target tracking challenging [
28].
Fingerprint-based methods: This approach involves two distinct phases: offline training and online estimation. During the offline phase, RSSI measurements are collected at various points within the target area to construct a fingerprint database, often referred to as a “radio map”. In the online phase, real-time RSSI measurements are compared against the radio map to estimate the user’s location [
1]. Fingerprint-based methods offer several advantages over ranging techniques. They eliminate the need for complex infrastructure and, with appropriate fingerprint matching algorithms, exhibit greater resilience to temporal fluctuations in RSSI. However, deploying these systems across large areas necessitates extensive upfront effort for fingerprint data collection. Additionally, any environmental changes may alter the radio map, requiring recalibration or retraining [
29]. Akram et al. presented a framework for room-level positioning using Wi-Fi fingerprinting and a random forest ensemble classifier [
6]. Their approach achieved an accuracy of 89% when validated with a Wi-Fi fingerprint dataset. Lazaro et al. developed a room-level positioning system based on LoRa signals [
30]. They employed the Linear Discriminant Analysis (LDA) algorithm and achieved a notable accuracy of 89.7%.
Proximity positioning methods: A target device is simply identified as being within the vicinity of an anchor node if its RSSI value exceeds a predefined threshold when it enters the anchor node’s range. Kyritsis et al. developed a room-level positioning algorithm based on thresholding, where the threshold calculation takes into account both the RSSI measurements and the geometric shape of the room containing the beacon [
31]. Their algorithm specifically focused on analyzing and refining the boundary points between rooms, resulting in an impressive overall accuracy of 90.1%. However, the algorithm prioritizes larger rooms, leading to improved accuracy for most locations but at the expense of reduced accuracy in smaller rooms. Bianchi et al. introduced a method based on the receiver operating characteristics (ROCs) to assess the optimal placement of anchor nodes, the number of RSSI measurements required, and the appropriate threshold values [
32]. Although the system implementation is relatively complex, it achieves a remarkable accuracy rate of up to 98%.
After reviewing the above positioning systems and algorithms, we found that there are some challenges with the existing positioning systems (as summarized in
Table 1). In systems using fingerprint recognition (scene analysis), it requires the creation of a comprehensive fingerprint map (radio map) of the target environment, which is a labor-intensive and time-consuming process. Systems using multilateral positioning algorithms require higher deployment costs and cannot achieve real-time positioning. Some systems use proximity algorithms in conjunction with fingerprint recognition algorithms but cannot achieve high-accuracy position estimation.
The DSFP method proposed in this paper combines the advantages of D–S theory and fingerprint positioning. While maintaining high accuracy, it reduces system complexity and energy consumption, providing a new and effective solution for indoor positioning. Our proposed system boasts several advantages, including room-level accuracy, cost-effectiveness, ease of maintenance, and real-time positioning capabilities. By leveraging existing infrastructure and Bluetooth beacons, we achieve a positioning accuracy above 99% within each room. Furthermore, we evaluate the impact of sample size and computational complexity on the training of three machine learning algorithms: KNN, RF, and SVM. We also compare the accuracy of the D–S algorithm alone against the combined D–S and fingerprint approach employed in DSFPS. Lastly, we conduct a moving trajectory tracking test to assess the system’s performance in dynamic scenarios.
3. System Architecture
The system comprises four primary components: hardware, database, algorithmic processing, and frontend interface, which are illustrated in
Figure 1. The hardware configuration consists of target nodes and anchor nodes. The BLE target nodes, which are also called tags, are equipped with solar panels for energy harvesting and continuously providing the signals to the anchors. The anchors are typically the AIoT nodes which can detect the signals from the BLE targets and process the data locally. The database component stores not only the transmitted data from the anchor nodes, including each node’s ID and timestamps, but also the calculated RSSI values from target nodes. This process involves decoding the beacon data and applying the DSFP algorithm to ascertain precise locations in the following process. Finally, the frontend interface retrieves and displays these location data from a MySQL database, offering real-time and historical tracking of target positions as well as compiling information about targets encountered in each room.
The experimental deployment overview illustrates the DSFP positioning system, as depicted in
Figure 2. In each room, an anchor node is installed to facilitate the localization of several undetermined targets within the vicinity. These nodes capture and transmit signal data to a centralized database via Wi-Fi APs. Subsequently, the DSFP algorithm is executed on a computer, processing these data to derive accurate positional estimates for various targets. These results are then presented on the user interface.
Given that signals can be detected via various anchors in the complicated indoor environment, we classify the environment into clear areas and fuzzy areas. Fuzzy areas indicate the scenarios where a target is located at the boundary between Room A and Room B as depicted in
Figure 3. In this case, the RSSI values received from the target in both rooms are similar. Relying solely on the anchor node that captures the strongest signal for determining the target’s location can result in significantly inaccurate estimation. This exemplifies the need for more sophisticated approaches in areas where signal overlap complicates straightforward location estimation. On the contrary, clear areas indicate that each anchor can only detect the signals from solo specific room. In this case, the D–S theory can be directly used to locate the target to the related room. To more clearly distinguish between clear areas and fuzzy areas, we define them as shown in
Table 2:
3.1. Energy Harvesting BLE Target Node
The target node consists of a solar panel as an energy harvesting module, which is shown in
Figure 4. The signals are periodically transmitted via the Bluetooth module, which is depicted in
Figure 4c. The principle of the energy harvesting module circuit is shown in
Figure 5, and the real component is depicted in
Figure 4a. The main working procedure of the target is as follows: when the toggle switch is set to the output gear, the super capacitor is used as the input voltage of the circuit, and when the voltage is greater than 1.8 V, the buck/boost converter TPS63900 starts to work. By adjusting the resistance value of RCFG1 and RCFG2, the output voltage is set to 3.3 V. When the toggle switch is set to the charging gear, the device focuses on charging the super capacitor by collecting solar energy. The solar panel (
Figure 4b) measures 37 mm × 22 mm × 1 mm for capacitor charging. The Bluetooth module ATK-MW579D is debugged through the serial port, and its working mode is set to iBeacon mode, while the identification markers Major and Minor are set to broadcast Bluetooth signals at a frequency of 1 Hz.
3.2. Anchor Node
Here, we use the ESP32-C3 development board, which is a typical AIoT programmable node platform, as the anchor node with the objective of scanning and recognizing the Bluetooth data broadcast by the target node. The anchor node contains the signal detection, processing, and communication capabilities. The deployment of an anchor node in each room allows for the acquisition of information pertaining to the target node currently situated therein. The anchor nodes situated in all rooms collectively form a sensor network, the purpose of which is to obtain information regarding the target’s movements. The workflow of the anchor node is illustrated in
Figure 6. Initially, the parameters for connecting to Wi-Fi are configured, and then the scanning process for Bluetooth devices is initiated. Upon detecting a Bluetooth signal that matches the iBeacon data format, the Major and Minor values are examined to ascertain whether the signal originates from the target node that has been previously deployed. The data format is illustrated in
Table 3.
3.3. Database Component
We design a distributed data collection and processing system based on the MQTT protocol, which consists of an anchor node, an MQTT Broker, and a back-end server for collecting, transmitting, and processing data from target nodes in real-time.
The anchor node, as an MQTT client, encapsulates the collected target node data into MQTT messages and publishes them to predefined custom topics through the MQTT Broker. The MQTT Broker receives these messages and routes them to corresponding subscribers based on subscription relationships. The backend server subscribes to the relevant topics through the MQTT client to receive real-time anchor node data and processes them. The processed data are stored by the server in the
iBeacon_xx database table, which is used by the front-end to retrieve the historical trajectory of the target. Subsequently, for each anchor identified by its unique ID, a dedicated table named
scanner_xxx is created for storing and retrieving the MAC address and RSSI value of the detected targets in each room, and the
iBeacon_time table serves as a dynamic table recording the last time when each target is scanned by the anchor node. This timestamp information is used by the front-end to display the target’s path timing in different rooms. The
predicted_rooms table stores predicted room information including timestamps, addresses, anchor nodes, and algorithm sources, which are used for display and discrimination acquired by the front-end. The relationship of the data tables is as shown in in
Table 4.
4. DSFP
After collecting the RSSI data from the anchors, we employ the DSFP algorithm which combines the D–S algorithm and fingerprinting localization for the entire area. The DSFP algorithm uses the D–S algorithm for clear areas while employing fingerprinting localization for targets in fuzzy areas.
The DSFP algorithm possesses environmental adaptability. It divides the indoor space into distinct clear areas with obvious signal characteristics and complex fuzzy areas, and then adopts the optimal positioning strategy accordingly. This dynamic area division method enables the algorithm to flexibly respond to different environmental features. DSFP achieves a balance between accuracy and efficiency. The algorithm uses the computationally efficient D–S algorithm in clear areas, while employing more precise fingerprinting technology in signal-complex fuzzy areas. This ensures overall positioning accuracy while avoiding unnecessary computational overhead. The algorithm is adept at handling uncertainty. By introducing D–S theory, DSFP can effectively manage uncertainty information in RSSI measurements, thereby enhancing the reliability of positioning results. DSFP demonstrates good scalability, making this method easy to extend to large, multi-room complex environments.
4.1. Dempster–Shafer Theory in Indoor Positioning
D–S evidence theory is employed to aggregate multiple sources of evidence to derive more reliable conclusions, especially useful in environments where individual evidence sources may not be entirely dependable. The D–S algorithm is based on the D–S theory reasoning, where we consider the RSSI values of the targets captured by the anchor nodes in each room as independent evidence, and using the evidence aggregation rules of the theory, the algorithm combines the signal strengths of the individual anchor nodes and the room area characteristics. By deploying a decision rule for the trust function, it constructs a probability profile for each room. The D–S algorithm then determines the estimated location of the beacon by selecting the room with the highest probability of existence. The steps are as follows:
4.1.1. Define the Recognition Framework
Different rooms are considered as different hypotheses and the recognition framework is the set of all rooms .
4.1.2. Assign Quality Function
For each anchor point
, the RSSI values within a time window are accumulated and denoted as
. The accumulated RSSI value
is then multiplied by the room area
to obtain the un-normalized quality value for each room as illustrated in Equation (
1).
where
: Belief mass for location based on evidence from anchor ,
: Normalized room area for location ,
: RSSI value received at location from anchor .
4.1.3. Evidence Fusion and Decision Making
The mass functions of all anchor points are merged to obtain the final mass function
m:
where
: Combined belief for location ,
and : Two mass functions to be combined,
represents the conflict factor.
Then, the room with the largest mass value is selected as the final localization result:
The detailed algorithm of D–S approach is illustrated in Algorithm 1.
Algorithm 1 Indoor localization using a simplified D–S approach with room size |
Require: : Set of possible locations Require: : Set of anchors Require: E: RSSI values received at each location from the target Require: : Normalized room area for each location Ensure: : Estimated location for each anchor in do 0 for each location in do ▹ Calculate mass by ( 1) end for Normalize such that Combine m and by ( 2) end for ▹ Select location with highest mass
|
4.2. Fingerprinting in Fuzzy Zones
In fuzzy zones, where targets’ signals overlap across multiple rooms, it is essential to employ robust location estimation methods to accurately determine a target’s position. To address this challenge, a specialized fingerprinting approach is used. This method leverages a fingerprinting database alongside sophisticated machine learning algorithms, e.g., random forest (RF), k-nearest neighbors (KNN), and support vector machines (SVMs), to analyze RSSI distribution patterns and predict the target’s location. The fingerprint database captures the unique characteristics of RSSI data within these zones, providing a critical foundation for the effective application of these algorithms.
The steps of the fingerprinting localization algorithm are divided into three steps:
4.2.1. Data Preprocessing
The raw RSSI data (denoted as X) are subjected to sliding average filtering and normalization. These steps are essential to reduce noise and standardize the data format, making it suitable for further analysis by machine learning models.
4.2.2. Model Training
A fingerprint localization model is trained on a subset of the preprocessed data . The model learns to map RSSI features to latent locations , which allows it to predict the most likely location of new RSSI readings.
4.2.3. Location Prediction
Given new RSSI data , the fingerprint model predicts the most likely location by matching with the data in the fingerprint database to find the most similar fingerprint ().
Algorithm 2 details the operational steps of our room-level localization system, DSFPS, for processing RSSI data to efficiently estimate indoor locations.
Algorithm 2 Indoor Location Estimation |
- 1:
▹ Window size for data segmentation - 2:
▹ Data windows for each address - 3:
▹ Count of data points for each address - 4:
▹ Mapping of device addresses to scanners - 5:
▹ Trust values associated with each scanner - 6:
▹ Set of hypotheses based on scanner IDs - 7:
Input: , - 8:
for row in Data() do - 9:
▹ Extract address, scanner, and RSSI - 10:
AddData() - 11:
Increment() - 12:
end for - 13:
if Sufficientdata() then - 14:
▹ Dictionary to hold estimated locations - 15:
for in D.items() do - 16:
GroupByScanner(d) - 17:
CountScanners(g) - 18:
if then - 19:
EstimateDS() - 20:
else - 21:
EstimateRF() - 22:
end if - 23:
end for - 24:
return L - 25:
end if
|
5. Experiments
To assess the accuracy of our proposed system, we conduct several experiments, and the specific experimental equipment is shown in
Figure 7. The experiment takes place in seven designated areas on the second floor of our college, covering an area of approximately 2000 m
2. Each area is equipped with an anchor node, the location is shown in
Figure 8. The environmental description of the test area is as shown in the
Table 5. Ten targets are deployed in each area, and the targets are launched once per second. The formula for calculating accuracy is as follows:
This process requires collecting RSSI readings from each target, and then applying the sliding window method with a window size of 10 to evaluate the position in turn according to the RSSI data of each window, as shown in
Table 6.
Based on the current deployment locations of targets, the regions associated with targets b, c, e, and i are identified as regions of uncertainty. We compare the accuracy of the D–S algorithm when used alone versus its combination with a fingerprinting positioning algorithm. Prior to this comparison, it is noteworthy that the fingerprinting algorithm implemented in our system requires only a minimal set of location data to achieve highly accurate determinations in these uncertain regions, as illustrated in
Figure 8. In
Figure 8, targets b, c, e, and i are situated in the fuzzy areas. Subsequently, we conduct an accuracy comparison between using solely the D–S algorithm and employing DSFP location algorithms.
Prior to the comparative analysis, to validate the robustness of the DSFP algorithm, we conducted training using 5, 10, 20, 30, 40, 50, 100, and 300 data points from each room and evaluated the algorithm’s performance in situations of data scarcity. As depicted in
Figure 9, the accuracy of location estimates using different training set sizes shows that each of the three algorithms reaches optimal accuracy when trained with 50 data points.
Figure 10 illustrates the computational time required by various algorithms and models trained with different data volumes, using approximately 2400 test data points. It is evident that the SVM algorithm requires the least time for execution; however, the KNN algorithm is able to produce a highly accurate model with just 10 training data points. Considering running time, accuracy, and data requirements collectively, the KNN algorithm exhibits superior performance.
Using a model trained with 50 data points, we assessed the accuracy of various algorithms at different data window sizes.
Figure 11 illustrates that setting the window size to 10 yields the highest accuracy.
Following the static accuracy evaluation, we proceed with mobile testing. The trajectory for this testing is depicted in
Figure 12.
Figure 13 presents both the location estimates derived solely from the D–S algorithm and those obtained with the DSFP algorithm. The D–S algorithm results reveal that, during the transition from Room 3 to Room 2, the anchor node in Room 1 (hall) also detected the target signal, which compromises the accuracy of the pure D–S algorithm. In contrast, the DSFP algorithm demonstrates its ability to accurately determine the correct location of the target throughout the transition.
Figure 14 shows the interface of the DSFP system, which allows users to view the scanned target records in a selected room. After selecting a target, the system displays the target’s current room on the floor plan and lists the most recent 10 location records along with the algorithm used to derive those results.
6. Conclusions
This paper proposes a room-level localization system, which employs the energy harvesting Bluetooth tags as targets, the AIoT nodes as anchors, and the DSFP algorithm to locate the targets. We introduce the D–S theory in conjunction with fingerprinting techniques for an integrated solution to Bluetooth target positioning. Specifically, the D–S theory facilitates the computation of the most probable location by analyzing beacon RSSI values across different rooms. Meanwhile, the fingerprinting technique addresses the issue of RSSI signal overlap in areas where room boundaries are indistinct. Extensive experimental validation demonstrates that our system performs robustly in the test environment, maintaining room-level positioning accuracy above 99% under standard test conditions. This performance metric may fluctuate due to environmental changes, such as personnel movement and equipment layout modifications, particularly in fuzzy areas. Nevertheless, the system consistently provides reliable room-level positioning, meeting the requirements for practical applications in industrial warehousing and medical equipment management. Lastly, DSFPS implements a simple and easy-to-use front page.