1 Introduction
-
We propose to use progressive optimization for UWB indoor localization by ELPSO. We show that this strategy is crucial for good performance.
-
Our hardware communication-based method helps filter the target area, and our progressive optimization step helps find the most likely optimal point among the modeling area for indoor positioning task.
-
We present detailed evaluations for ELPSO and performance both in 2D and 3D UWB indoor positioning. Experimental results demonstrate that our ELPSO algorithm performs favorably against the state-of-the-art evolutionary computation methods. Our two-step location and optimization method achieves promising accuracy on UWB indoor positioning, surpassing the initial performance obviously.
2 Related work
2.1 Particle swarm optimization
2.2 Indoor positioning
3 Ensemble learning particle swarm optimization
3.1 PSO variants employed in ELPSO
3.2 ELPSO with super best guide
4 UWB indoor localization method using ELPSO
4.1 UWB indoor localization system design
4.2 Ranging algorithm
4.3 Localization algorithm
4.4 ELPSO-based system implementation
5 Experimental results and discussion
5.1 Experimental results for ELPSO
Algorithm | Parameter settings | Reference |
---|---|---|
GPSO | ω 0.9~0.4, c1 = c2 = 2.0, V_MAXd = 0.2 × range | [52] |
LPSO | ω 0.9~0.4, c1 = c2 = 2.0, V_MAXd = 0.2 × range | [53] |
BBPSO | ω 0.9~0.4, c1 = c2 = 2.0, V_MAXd = 0.2 × range | [54] |
FIPS | χ = 0.729, ∑ci = 4.1, V_MAXd = 0.2 × range | [55] |
HPSO-TVAC | ω 0.9~0.4, c1 2.5~0.5, c2 0.5~2.5, V_MAXd = 0.2 × range | [56] |
CLPSO | ω 0.9~0.4, c = 1.49445, m = 7, V_MAXd = 0.2 × range | [57] |
OPSO | ω 0.9~0.4, c1 = c2 = 2.0, V_MAXd = 0.2 × range | [58] |
ELPSO | ω 0.9~0.4, c = 2.0, G = 5, V_MAXd = 0.2 × range | – |
Test function |
D
| Search space | fmin | Acceptance | Name | |
---|---|---|---|---|---|---|
Unimodal | 30 | [− 100,100]
D
| 0 | 0.01 | Sphere | |
30 | [− 10,10]
D
| 0 | 0.01 | Schwefel’s P2.22 | ||
30 | [− 10,10]
D
| 0 | 100 | Rosenbrock | ||
30 | [− 1.28,1.28]
D
| 0 | 0.01 | Quadric noise | ||
Multimodal | 30 | [− 500,500]
D
| − 12,569.5 | − 10,000 | Schwefel | |
30 | [− 5.12,5.12]
D
| 0 | 50 | Rastrigin | ||
30 | [− 32,32]D | 0 | 0.01 | Ackley | ||
30 | [− 600,600]
D
| 0 | 0.01 | Griewank | ||
30 | [− 50,50]
D
| 0 | 0.01 | Generalized Penalized | ||
30 | [− 50,50]
D
| 0 | 0.01 | |||
Rotated | 30 | [− 500,500]
D
| − 12,569.5 | − 8000 | Rotated Schwefel | |
30 | [− 5.12,5.12]
D
| 0 | 100 | Rotated Rastrigin | ||
30 | [− 32,32]
D
| 0 | 1 | Rotated Ackley | ||
30 | [− 600,600]
D
| 0 | 0.1 | Rotated Griewank |
Functions | GPSO | LPSO | FIPS | HPSO-TVAC | CLPSO | OPSO | BBPSO | ELPSO | |
---|---|---|---|---|---|---|---|---|---|
f
1
| Mean | 1.69 × 10−31 | 4.48 × 10−14 | 5.55 × 10−14 | 2.55 × 10−33 | 2.54 × 10−12 | 5.33 × 10−18 | 1.90 × 10−53 | 5.15 × 10−38 |
Std. Dev | 4.55 × 10−31 | 4.00 × 10−14 | 2.26 × 10−14 | 5.55 × 10−33 | 8.84 × 10−13 | 3.86 × 10−18 | 3.69 × 10−53 | 9.64 × 10−38 | |
Rank | 4 | 6 | 7 | 3 | 8 | 5 | 1 | 2 | |
f
2
| Mean | 1.30 × 10−21 | 1.97 × 10−10 | 1.48 × 10−8 | 8.44 × 10−20 | 3.59 × 10−8 | 1.76 × 10−10 | 1.52 × 10−29 | 7.44 × 10−22 |
Std. Dev | 1.83 × 10−21 | 9.85 × 10−11 | 4.04 × 10−9 | 8.21 × 10−20 | 9.21 × 10−9 | 1.52 × 10−10 | 2.24 × 10−29 | 5.49 × 10−22 | |
Rank | 3 | 6 | 7 | 4 | 8 | 5 | 1 | 2 | |
f
3
| Mean | 36.94197 | 22.39326 | 24.71584 | 19.28725 | 14.1712 | 41.60198 | 37.72958 | 1.83494 |
Std. Dev | 25.53545 | 10.8901 | 0.24099 | 4.70946 | 10.72737 | 28.6714 | 40.18926 | 6.57884 | |
Rank | 6 | 4 | 5 | 3 | 2 | 8 | 7 | 1 | |
f
4
| Mean | 0.00851 | 0.01911 | 0.00377 | 0.05747 | 0.00595 | 0.05798 | 0.0102 | 0.01484 |
Std. Dev | 0.00328 | 0.00481 | 8.57 × 10−4 | 0.02237 | 0.00153 | 0.02131 | 0.00349 | 0.00391 | |
Rank | 3 | 6 | 1 | 7 | 2 | 8 | 4 | 5 | |
f
5
| Mean | − 10,000.1 | − 9594.07 | − 9280.09 | − 10,931.9 | − 12,569.5 | − 10,336.8 | − 12,218.8 | − 12,569.5 |
Std. Dev
| 479.961 | 376.9293 | 906.5758 | 374.6448 | 0 | 501.6225 | 185.7255 | 0 | |
Rank | 6 | 7 | 8 | 4 | 1 | 5 | 3 | 1 | |
f
6
| Mean | 29.72935 | 33.18402 | 38.25496 | 6.80555 | 7.61 × 10−5 | 6.08918 | 1.19395 | 0 |
Std. Dev | 8.41469 | 6.85435 | 8.58552 | 2.67412 | 7.16 × 10−5 | 2.28549 | 1.1124 | 0 | |
Rank | 6 | 7 | 8 | 5 | 2 | 4 | 3 | 1 | |
f
7
| Mean | 1.34 × 10−14 | 1.18 × 10−7 | 1.09 × 10−7 | 8.54 × 10−14 | 5.29 × 10−7 | 5.87 × 10−9 | 8.12 × 10−15 | 4.28 × 10−15 |
Std. Dev | 2.90 × 10−15 | 9.11 × 10−8 | 2.75 × 10−8 | 4.70 × 10−14 | 1.54 × 10−7 | 1.89 × 10−9 | 2.13 × 10−15 | 7.11 × 10−16 | |
Rank | 3 | 7 | 6 | 4 | 8 | 5 | 2 | 1 | |
f
8
| Mean | 0.00837 | 0.00227 | 2.19 × 10−6 | 0.00325 | 1.23 × 10−8 | 0.00118 | 0.00404 | 0 |
Std. Dev | 0.00996 | 0.00432 | 1.10 × 10−5 | 0.00419 | 1.86 × 10−8 | 0.00277 | 0.00721 | 0 | |
Rank | 8 | 5 | 3 | 6 | 2 | 4 | 7 | 1 | |
f
9
| Mean | 0.00415 | 1.74 × 10−15 | 3.70 × 10−16 | 1.77 × 10−29 | 1.03 × 10−13 | 1.27 × 10−19 | 1.61 × 10−32 | 1.57 × 10−32 |
Std. Dev | 0.02073 | 3.08 × 10−15 | 2.52 × 10−16 | 8.17 × 10−30 | 6.16 × 10−14 | 1.14 × 10−19 | 1.43 × 10−33 | 0 | |
Rank | 8 | 6 | 5 | 3 | 7 | 4 | 2 | 1 | |
f
10
| Mean | 0.00176 | 1.78 × 10−13 | 5.55 × 10−15 | 2.44 × 10−28 | 2.17 × 10−12 | 1.06 × 10−18 | 1.43 × 10−32 | 1.35 × 10−32 |
Std. Dev | 0.00411 | 2.55 × 10−13 | 2.42 × 10−15 | 1.08 × 10−28 | 1.11 × 10−12 | 6.37 × 10−19 | 3.94 × 10−33 | 2.47 × 10−34 | |
Rank | 8 | 6 | 5 | 3 | 7 | 4 | 2 | 1 | |
f
11
| Mean | − 8840.69 | − 9880.77 | − 7430.41 | − 8515.69 | − 9377.81 | − 9700.32 | −10,697.7 | − 10,597.2 |
Std. Dev | 1114.708 | 1240.53 | 1303.977 | 1818.807 | 870.6272 | 1423.02 | 1652.89 | 2096.313 | |
Rank | 6 | 3 | 8 | 7 | 5 | 4 | 1 | 2 | |
f
12
| Mean | 56.75235 | 49.65696 | 118.3976 | 32.59482 | 77.63228 | 73.04538 | 42.86277 | 56.53254 |
Std. Dev | 13.11957 | 11.62829 | 19.42732 | 9.56176 | 10.19121 | 19.79576 | 11.10137 | 14.19207 | |
Rank | 5 | 3 | 8 | 1 | 7 | 6 | 2 | 4 | |
f
13
| Mean | 1.72364 | 1.23822 | 1.34 × 10−7 | 5.71977 | 9.49 × 10−6 | 1.45 × 10−8 | 7.84 × 10−15 | 4.28 × 10−16 |
Std. Dev | 0.77477 | 0.66329 | 3.72 × 10−8 | 1.51541 | 2.58 × 10−5 | 6.46 × 10−9 | 1.62 × 10−15 | 7.11 × 10−16 | |
Rank | 7 | 6 | 4 | 8 | 5 | 3 | 2 | 1 | |
f
14
| Mean | 0.01496 | 0.00202 | 3.89 × 10−9 | 0.01201 | 2.98 × 10−5 | 0.00118 | 2.96 × 10−4 | 5.47 × 10−9 |
Std. Dev | 0.01319 | 0.00506 | 9.01 × 10−9 | 0.01348 | 3.32 × 10−5 | 0.00327 | 0.00148 | 1.60 × 10−8 | |
Rank | 8 | 6 | 2 | 7 | 3 | 5 | 4 | 1 | |
Average rank | 5.79 | 5.57 | 5.50 | 4.64 | 4.79 | 5.00 | 2.93 | 1.71 | |
Final rank | 8 | 7 | 6 | 3 | 4 | 5 | 2 | 1 |
5.2 Experimental results for 2D UWB localization
Targets | Target position | Measured position | Measure error | Optimized position | Error after optimization |
---|---|---|---|---|---|
1 | (− 4.50, − 4.50) | (−5.0447, − 4.6286) | 0.55965 | (− 4.50, − 4.50) | 9.96174E−12 |
2 | (− 4.50, − 3.50) | (− 4.8778, − 2.6532) | 1.6172 | (− 4.50, − 3.50) | 2.92107E−11 |
3 | (− 4.50, − 2.50) | (− 4.6396, − 3.1304) | 2.23051 | (− 4.50, − 2.50) | 1.15305E−13 |
4 | (− 4.50, − 1.50) | (− 3.6902, − 0.5405) | 2.39119 | (− 4.50, − 1.50) | 7.77746E−12 |
5 | (− 4.50, − 0.50) | (− 4.6223, − 1.2778) | 4.19499 | (− 4.50, − 0.50) | 2.08048E−13 |
6 | (− 4.50, 0.50) | (− 4.9839, 0.3174) | 5.48691 | (− 4.50, 0.50) | 1.62034E−12 |
7 | (− 4.50, 1.50) | (− 4.3102, 1.0244) | 5.82964 | (− 4.50, 1.50) | 4.33788E−12 |
8 | (− 4.50, 2.50) | (− 4.2943, 2.9224) | 6.80743 | (− 4.50, 2.50) | 2.60556E−13 |
9 | (− 4.50, 3.50) | (− 5.0565, 2.7348) | 8.59065 | (− 4.50, 3.50) | 7.72499E−14 |
10 | (− 4.50, 4.50) | (− 4.9066, 4.1376) | 9.41363 | (− 4.50, 4.50) | 1.96826E−11 |
11 | (− 3.50,4.50) | (− 3.6517, 4.5157) | 8.15168 | (− 3.50,4.50) | 3.32919E−12 |
12 | (− 2.50, 4.50) | (− 3.3290, 4.0250) | 7.84337 | (− 2.50, 4.50) | 1.22653E−12 |
13 | (− 1.50, 4.50) | (− 0.8980, 3.5584) | 5.47947 | (− 1.50, 4.50) | 7.78704E−13 |
14 | (− 0.50, 4.50) | (0.3577, 4.9607) | 4.16783 | (− 0.50, 4.50) | 9.69029E−12 |
15 | (0.50, 4.50) | (0.4772, 4.6571) | 4.02585 | (0.50, 4.50) | 3.98315E−13 |
16 | (1.50, 4.50) | (0.9746, 4.4177) | 3.52639 | (1.50, 4.50) | 8.19715E−14 |
17 | (2.50, 4.50) | (3.4262, 4.5936) | 1.0779 | (2.50, 4.50) | 7.04791E−12 |
18 | (3.50, 4.50) | (3.5423, 3.9632) | 1.09791 | (3.50, 4.50) | 2.70726E−12 |
19 | (4.50, 4.50) | (4.4778, 4.7481) | 0.24911 | (4.50, 4.50) | 3.14245E−12 |
20 | (4.50, 3.50) | (4.8583, 3.2910) | 1.37425 | (4.50, 3.50) | 6.21847E−12 |
21 | (4.50, 2.50) | (4.2349, 3.4760) | 1.99055 | (4.50, 2.50) | 2.44775E−11 |
22 | (4.50, 1.50) | (3.5755, 2.2703) | 2.21383 | (4.50, 1.50) | 1.7763E−11 |
23 | (4.50, 0.50) | (5.3266, 1.0924) | 4.86279 | (4.50, 0.50) | 5.11463E−14 |
24 | (4.50, − 0.50) | (3.6974, − 0.9763) | 4.22436 | (4.50, − 0.50) | 3.14801E−13 |
25 | (4.50, − 1.50) | (4.1707, − 1.1405) | 5.68209 | (4.50, − 1.50) | 1.42503E−11 |
26 | (4.50, − 2.50) | (3.7731, − 2.0575) | 6.28869 | (4.50, − 2.50) | 3.71205E−12 |
27 | (4.50, − 3.50) | (3.7135, − 3.1925) | 7.22008 | (4.50, − 3.50) | 1.00981E−12 |
28 | (4.50, − 4.50) | (4.4883, − 3.9419) | 9.00566 | (4.50, − 4.50) | 6.37406E−12 |
29 | (3.50, − 4.50) | (3.9301, − 3.6926) | 8.46865 | (3.50, − 4.50) | 2.06266E−12 |
30 | (2.50, − 4.50) | (3.2818, − 4.8317) | 7.78891 | (2.50, − 4.50) | 1.27315E−12 |
31 | (1.50, − 4.50) | (1.8975, − 5.1044) | 6.42598 | (1.50, − 4.50) | 2.85797E−12 |
32 | (0.50, − 4.50) | (− 0.4389, − 4.0119) | 4.09031 | (0.50, − 4.50) | 3.02775E−12 |
33 | (− 0.50, − 4.50) | (− 0.500, − 4.5402) | 4.00025 | (− 0.50, − 4.50) | 1.20355E−13 |
34 | (− 1.50, − 4.50) | (− 0.6906, − 4.2803) | 3.81578 | (− 1.50, − 4.50) | 4.35941E−14 |
35 | (− 2.50, − 4.50) | (− 2.2647, − 3.7811) | 2.34809 | (− 2.50, − 4.50) | 1.13464E−12 |
36 | (− 3.50, − 4.50) | (− 2.8890, − 4.3466) | 1.61827 | (− 3.50, − 4.50) | 1.04629E−12 |
5.3 Experimental results for 3D UWB localization
Targets | Target position | Measured position | Measure error | Optimized position | Error after optimization |
---|---|---|---|---|---|
1 | (− 4.50,− 4.50,3.60) | (− 4.8963,− 3.9034,2.7739) | 1.195549 | (− 4.5001,− 4.4999,3.6000) | 1.36E−07 |
2 | (− 4.50,− 3.50,3.40) | (− 3.7988,− 3.2387,3.1449) | 0.222615 | (− 4.4997,− 3.4998,3.4010) | 4.47E−07 |
3 | (− 4.50,− 2.50,3.20) | (− 5.4980,− 3.1084,4.1273) | 10.21776 | (− 4.4999,− 2.4997,3.2001) | 4.79E−07 |
4 | (− 4.50,− 1.50,3.00) | (− 4.5462,− 0.8003,2.2173) | 10.38149 | (− 4.4999,− 1.5000,3.0001) | 9.33E−07 |
5 | (− 4.50,− 0.50,2.80) | (− 4.2680,− 1.1158,3.4165) | 14.95691 | (− 4.4999,− 0.4999,2.7997) | 2.81E−08 |
6 | (− 4.50,0.50,2.60) | (− 5.0689,0.0609,2.3528) | 31.26613 | (− 4.4995,0.4998,2.6004) | 8.35E−07 |
7 | (− 4.50,1.50,2.40) | (− 4.4801,1.9412,3.0769) | 36.41482 | (− 4.4999,1.4999,2.3998) | 1.02E−06 |
8 | (− 4.50,2.50,2.20) | (− 3.8865,2.6628,2.7892) | 41.16078 | (− 4.5004,2.4999,2.2002) | 6.60E−07 |
9 | (− 4.50,3.50,2.00) | (− 4.4704,2.5495,1.8709) | 64.44693 | (− 4.5003,3.5000,1.9997) | 3.14E−07 |
10 | (− 4.50,4.50,1.80) | (− 4.4249,5.4920,1.1801) | 81.02231 | (− 4.4992,4.5003,1.8004) | 7.19E−08 |
11 | (− 3.50,4.50,1.60) | (− 4.3540,5.3446,1.2056) | 79.2619 | (− 3.4990,4.5001,1.6009) | 3.73E−08 |
12 | (− 2.50,4.50,1.40) | (− 1.5197,5.4871,2.3420) | 38.0984 | (− 2.4999,4.4997,1.3999) | 3.49E−07 |
13 | (− 1.50,4.50,1.20) | (− 1.8102,3.5861,0.7940) | 40.8185 | (− 1.5000,4.5004,1.2001) | 6.35E−08 |
14 | (− 0.50,4.50,1.00) | (− 1.3398,4.7150,0.9666) | 34.15083 | (− 0.4997,4.5001,1.0001) | 1.06E−07 |
15 | (0.50,4.50,0.80) | (0.9290,4.7708,− 0.1517) | 13.73123 | (0.4999,4.5010,0.8008) | 1.54E−07 |
16 | (1.50,4.50,0.60) | (0.8956,5.4528,0.2310) | 14.03577 | (1.5003,4.4998,0.6007) | 2.97E−07 |
17 | (2.50,4.50,0.40) | (2.1190,3.5713,1.0994) | 7.02079 | (2.5003,4.5007,0.4004) | 2.14E−07 |
18 | (3.50,4.50,0.20) | (3.4177,5.3572,− 0.7132) | 2.739887 | (3.5000,4.4999,0.2004) | 2.48E−07 |
19 | (4.50,4.50,0.00) | (3.5646,4.8827,0.0601) | 1.024956 | (4.5001,4.5003,0.0000) | 4.13E−08 |
20 | (4.50,3.50,0.20) | (3.5194,4.2055,0.2805) | 0.504606 | (4.4999,3.5004,0.1998) | 5.50E−07 |
21 | (4.50,2.50,0.40) | (5.1754,2.1557,1.0299) | 7.673302 | (4.5002,2.4997,0.3994) | 2.57E−07 |
22 | (4.50,1.50,0.60) | (4.7668,2.1279,0.9010) | 11.15713 | (4.5005,1.5004,0.6002) | 1.33E−07 |
23 | (4.50,0.50,0.80) | (5.3860,− 0.0327,0.5229) | 24.2334 | (4.4998,0.4998,0.8001) | 5.92E−07 |
24 | (4.50,− 0.50,1.00) | (3.6574,− 0.8015,1.9427) | 18.26336 | (4.5001,− 0.5000,1.0011) | 9.60E−07 |
25 | (4.50,− 1.50,1.20) | (4.3772,− 1.7886,0.9126) | 34.70706 | (4.5003,− 1.4994,1.2003) | 4.18E−07 |
26 | (4.50,− 2.50,1.40) | (4.0502,− 1.8335,0.5315) | 44.10311 | (4.4997,− 2.5002,1.3995) | 3.88E−07 |
27 | (4.50,− 3.50,1.60) | (4.7995,− 2.5315,1.2096) | 69.97281 | (4.4996,− 3.5003,1.6000) | 2.74E−07 |
28 | (4.50,− 4.50,1.80) | (3.6330,− 3.5897,1.1721) | 67.36877 | (4.4997,− 4.5002,1.8001) | 6.72E−07 |
29 | (3.50,− 4.50,2.00) | (3.4149,− 4.9324,1.7673) | 62.88624 | (3.4992,− 4.4994,1.9989) | 7.84E−07 |
30 | (2.50,− 4.50,2.20) | (3.4877,− 5.2365,1.8627) | 64.46026 | (2.4996,− 4.4999,2.1998) | 1.28E−07 |
31 | (1.50,− 4.50,2.40) | (1.9432,− 4.4983,2.8564) | 41.72338 | (1.4996,− 4.5004,2.4001) | 3.70E−07 |
32 | (0.50,− 4.50,2.60) | (− 0.2560,− 4.0642,3.0258) | 18.38233 | (0.5002,− 4.5002,2.5993) | 5.78E−07 |
33 | (− 0.50,− 4.50,2.80) | (− 0.7117,− 3.5567,2.5600) | 15.29884 | (− 0.4996,− 4.5003,2.8004) | 1.17E−07 |
34 | (− 1.50,− 4.50,3.00) | (− 1.6642,− 4.2216,2.1823) | 8.787994 | (− 1.4999,− 4.4998,2.9990) | 2.54E−08 |
35 | (− 2.50,− 4.50,3.20) | (− 2.7616,− 4.6484,3.3791) | 3.076307 | (− 2.4997,− 4.5002,3.2005) | 1.58E−07 |
36 | (− 3.50,− 4.50,3.40) | (− 3.9609,− 5.4706,4.3427) | 2.121412 | (− 3.4999,− 4.5001,3.3997) | 1.68E−07 |