[GIS] How does WiFiSLAM work

geolocationindoormobilewifi

Apple recently acquired WifiSlam. How does their technology work?

Their website doesn't go into much detail.

Allow your smartphone to pinpoint its location (and the location of
your friends) in real-time to 2.5m accuracy using only ambient WiFi
signals that are already present in buildings.

We are building the next generation of location-based mobile apps
that, for the first time, engage with users at the scale that personal
interaction actually takes place. Applications range from step-by-step
indoor navigation, to product-level retail customer engagement, to
proximity-based social networking.

Best Answer

After googling a bit more, I found this paper, Using Wi-Fi for Navigating the Great Indoors. I suppose the algorithm that handles multiple fingerprints, plus compass and accelerometer is what caught Apple's eye.

When a gadget using WiFiSLAM wants to know its location, it analyzes the signal strengths and unique IDs of all the Wi-Fi networks around it. That is matched against a reference data set for the area either accessed over the Internet, or stored on the device. The estimate of location can be sharpened if a gadget moves slightly, because WiFiSLAM's algorithms can gather multiple fingerprints. Compass data and accelerometer signals capturing a person's footsteps are also used to refine the accuracy of subsequent location fixes as a person moves around.

WiFiSLAM needs similar data to be gathered in advance inside a particular building before it can offer location fixes. A person running another special app must walk around a building a few times, entering every room at least once. Algorithms originally developed for robot navigation process the changing pattern of Wi-Fi fingerprints and footsteps to re-create the path the person covered. That trace is then manually associated with a map of the place so that WiFiSLAM can tell a user in that environment where they are.

Edit 2: Also, looks like WifiSlam had a blog that's been removed. However, Google still has it in their cache with some details:

Most recently, WiFiSLAM’s inertial sensor fusion was featured in Grizzly Analytics. It sparked some excellent e-mail discussion with Dr. Bruce Krulwich and we’d love to summarize it for you here!

  • The demo video includes no maps constraints. It is purely accelerometer, gyroscope, and compass.

  • We are able to get better-than-typical accuracy because we are taking non-traditional pattern-matching approaches to sensor fusion rather than the conventional “double-integration + Kalman filter” techniques used traditionally.

  • We held the phone in front of us, trying to mimic a typical smartphone user who is following a map and walking while looking at their phone. Nothing super-specific.

  • Inertial sensor fusion is now enabled by default as of last week’s releases of the entire WiFiSLAM product line: footprint.io, WiFiSLAM QuickMap, and the Indoor Location SDK. Any user of WiFiSLAM with a gyroscope-enabled smartphone will receive hybrid positioning that uses both our Wi-Fi fingerprinting technology combined with our inertial sensor fusion.

Edit 3 Grizzly analytics provides map setup details in their recent blog post.

WiFiSlam has released a mobile app that enables any smartphone user to take a picture of a map of their indoor site, walk around the site a few times, and have that site work within WiFiSLAM's location positioning system. This app enables much easier crowd-sourcing of indoor maps than Google or others have, and would enable iPhone indoor positioning to spread like wildfire as iPhone fanboys jump to upload their site maps.

Edit 4 Here's a video from the GeoMeetup (kindly posted by Ragi Burhum) where Joseph Huang of WiFiSLAM presents a talk about the underlying algorithms.