|
|
Algorithm 2: Sensor Refinement |
|
Input: Snxm matrix of time series for n sensors with m samples each, and a set
= {r1, r2,…, rn} of reliable sensors. |
Output: Set
of dislocated sensors and vector Δ of their dislocations from the majority. |
←∅ |
| Δ ← {Δi = 0 | 1 ≤ i ≤ n} |
|
m ← {mi = 0 | 1 ≤ i ≤ n} |
|
Pn×n ← {pi,j = 0 | 1 ≤ i,j ≤ n} |
| //
Compute the average squared pairwise-distance between each two sensors.
|
|
for
i ← 1 to
n − 1 do
|
| for
j ← i + 1 to
n
do
|
| //
Adjust the valid readings among the reliable sensors.
|
| u ← { sri,k (sri,k ≠ λ) and (srj,k ≠ λ), 1 ≤ k ≤ m }; |
| v ← { srj,k (sri,k ≠ λ) and (srj,k ≠ λ), 1 ≤ k ≤ m }; |
| pi,j ← pj,i ← mean((u − v)2) |
| end
|
| end |
| //
Compute the median pairwise-distance for each sensor.
|
|
for
i ← 1 to
n
do
|
| mi ← median({pi,j|1 ≤ j ≤ n}) |
| end |
| //
The limit to consider a sensor dislocated.
|
|
l ← mean(m) |
| //
The dislocated sensors.
|
← {i | mi > l} |
| //
Compute the dislocation Δi
for each reliable sensor.
|
|
for
i ← 1 to
n
do
|
| Δi ← median(pi,j − mi) |
| end |
return (
, Δ) |
|