On 10/07/14 17:43, Hanno Schlichting wrote:
However, devices with multiple, closely related BSSIDs are also a potential 
issue with online APIs. It would be interesting to know if they handle that 
case (I can't get a location by supplying a single BSSID, but can I get one by 
supplying two BSSIDs of the same device?), and how they do it.
I don’t think any of the services look for this.

For MLS, I’ve logged an issue a while back but we haven’t worked on it yet 
(https://github.com/mozilla/ichnaea/issues/27).
I've updated the issue with some thoughts of mine, including some taken from this discussion.

Basically, I would suggest a combination of Hamming distance (essentially, number of bits flipped) and arithmetical difference (to catch cases like 1F → 20).

Unfortunately, while all of this might work well for an online API, I can't think of an algorithm which would map each BSSID out of two to the same out of four dimensions it the Hamming distance or arithmetic difference between the BSSIDs is less than a given threshold.

Offline use presents an additional challenge here. Consider the following requests to an online API:

02:F0:00:BA:12
02:F0:00:BA:13
– too similar (Hamming distance and arithmetic difference), no location returned

02:F0:00:BA:13
02:F0:00:BA:15
– too similar (Hamming distance and arithmetic difference), no location returned

02:F0:00:BA:12
02:F0:00:BA:15
– OK (probably two devices from the same batch, but sufficiently different by our criteria)

For an offline DB, we would need to map BSSIDs to coordinates in such a way that the two above queries would return the same dimension twice. Thus:
02:F0:00:BA:12 → X (or any dimension of your choice)
02:F0:00:BA:13 → X (same dimension as :12 because of similarity)
02:F0:00:BA:15 → X (same dimension as :15 because of similarity)

So the first two queries against an offline DB would return two X coordinates, which is insufficient to determine a location. But the third query, which is legit by our previous definition and would get answered by the online API, would also receive two X coordinates because of the above constraints.
_______________________________________________
dev-geolocation mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-geolocation

Reply via email to