6.808 Mobile and Sensor Computing Lecture 12 Map Matching with - - PowerPoint PPT Presentation

6 808 mobile and sensor computing
SMART_READER_LITE
LIVE PREVIEW

6.808 Mobile and Sensor Computing Lecture 12 Map Matching with - - PowerPoint PPT Presentation

6.808 Mobile and Sensor Computing Lecture 12 Map Matching with Cellular Data Hari Balakrishnan Accurate, Low Energy Trajectory Mapping For Mobile Phones Arvind Thiagarajan, Lenin Ravindranath, Hari Balakrishnan, Sam Madden, Lewis Girod MIT


slide-1
SLIDE 1

Map Matching with Cellular Data

Lecture 12

6.808 Mobile and Sensor Computing

Hari Balakrishnan

slide-2
SLIDE 2

Accurate, Low Energy Trajectory Mapping For Mobile Phones

Arvind Thiagarajan, Lenin Ravindranath, Hari Balakrishnan, Sam Madden, Lewis Girod MIT CSAIL

slide-3
SLIDE 3
  • Find the trajectory i.e. sequence of locations

visited by a mobile device

  • Applications need to find path both accurately

and energy-efficiently

Goal

slide-4
SLIDE 4

Traffic Estimation

slide-5
SLIDE 5

Bike Routes

http://www.jonathanokeeffe.com/strava/multi-ride-mapper/

slide-6
SLIDE 6

Driving Quality

slide-7
SLIDE 7

Trash Track

slide-8
SLIDE 8

Crowdsource tracks to estimate traffic on road segments

Context: CarTel Project

slide-9
SLIDE 9
  • GPS signals are energy-intensive to acquire & process
  • Frequent GPS sampling drains battery fast
  • This data is from 2010-11, but the same trends persist today

Limitation of GPS: Energy

20 40 60 80 100 500 1000 1500 2000 2500 3000 3500 Remaining Battery Life (percentage) Time Elapsed (minutes) Battery Drain Curve CTrack: GSM@1Hz,Compass,Accl@20Hz GPS every 1s GPS every 120s WiFi every 1s

Android G1 phone: 6-8 hours with 1 Hz GPS

6 hrs on iPhone 3GS vs 18 hrs w/o GPS (dim screen)

slide-10
SLIDE 10

Approach: Use low-power sensors

Raw accuracy of position samples Relative Energy consumption Cellular GPS Wi-Fi

75m 300m 5-10m Close to standby energy (< 1 mW extra power) Much more energy efficient than GPS/WiFi (400, 100 mW)

slide-11
SLIDE 11

Outline

  • Prior work

– Intermittent GPS (Microsoft Krumm et al.) – Vtrack – uses Wi-Fi data – from same group that did the Ctrack work (CarTel project)

  • CTrack paper

– Cellular fingerprints – Better energy – Accuracy?

slide-12
SLIDE 12

The closest road to a position sample is not where it originally came from

  • Exploit both previous and future location information
  • Don’t overly weight any one location sample
  • Find a continuous (unbroken) sequence of roads

Previous Future Outlier

Background: Vtrack Algorithm Noisy Data (Wi-Fi example)

slide-13
SLIDE 13

Si pi

Noisy (Lat,Lon) (Observable) Road Segment (Hidden State) Emission Score E(pi,Si) Transition Score T(Si, Si+1) Dynamic Program Finds Best State Sequence (cf. Viterbi) “Best” => Max Product of Emission and Transition Scores

  • Maps noisy observations (coordinates) to hidden

states (underlying road segments) pi+1 Si+1

Solution: Hidden Markov Model

slide-14
SLIDE 14

Hidden Markov Models (HMM)

What do we observe? What do we want? What probability do we want to maximize?

slide-15
SLIDE 15

Model as “State Transition diagram”

s1 s2 s3 sn m1 m2 m3 mN pij P(s|m)

slide-16
SLIDE 16

Emission Score

pi Si d

  • Emission Score E(pi,Si) = e-d2/σ2sensor

– Intuition: pts closer to a segment are more likely to come from it – σsensor depends on GPS/WiFi/Cellular

slide-17
SLIDE 17

Transition Score

Si

  • Transition Score T(Si,Si+1)

– 0 if segments are not adjacent or not enough time has been spent on Si – 1 if segments are adjacent and enough time has been spent on Si

  • Speed constraint is essential:

because algorithm jumps around and follows noise in the input data without it

  • Decreases error significantly

Si+1

slide-18
SLIDE 18

S1 S2 S3 p1 S1

S1 S2 S3 S3 has score 0, isn’t permitted (speed constraint) S1 S1 S3 S3 is most likely match

S1 S2 S3 S1 S2 S3 S1 S2 S3 p1 p2 p3 p4 S2 S3 S3 p4

VTrack In Action

S1 S2 S3

p1 p2 p3 p4

slide-19
SLIDE 19

Handling Gaps: Interpolation

  • VTrack’s HMM maps input to output samples one-to-one
  • We need frequent (1 Hz) input because we want output to be

continuous (so we can enforce adjacency constraint)

  • Interpolate gaps, then run HMM (linear interpolation)
slide-20
SLIDE 20

CTrack Problem Statement

  • Can we develop techniques to process cellular

signal information to produce accurate trajectories?

  • How accurate?
slide-21
SLIDE 21

CTrack: Accurate Trajectory Mapping with Inaccurate Cellular Signals

  • Consumes no extra energy
  • New techniques achieve good enough accuracy for track-

based apps

– “75% as accurate as 1 Hz GPS” – “As accurate as GPS every 2 minutes” – As energy-efficient as GPS every 4 minutes and much more accurate” – Over “3x better” than previous cellular (GSM) systems – (I’ll explain what these mean)

  • Optionally, augment with low-energy “sensor hints”

– Compass to detect turns (15 μW @ 1 Hz) – Accelerometer to detect movement (60 μW @ 10 Hz)

slide-22
SLIDE 22

Existing Cellular Location Systems Aren’t Good Enough To Find Tracks

  • State-of-the-art is

“radio fingerprinting”

(E.g. PlaceLab)

  • OK for best static

localization estimate

  • But poor at

identifying tracks

slide-23
SLIDE 23

Existing Map-Matching Algorithms Perform Poorly w/ Cellular Radios

d8:30:62:5f:be:da, RSSI -94 00:0f:b5:3d:43:20, RSSI -58 00:18:0a:30:00:a3, RSSI -51 . . . . . . . . . . . . . . 42.361,-71.09 42.361,-71.09 42.362,-71.091 . . . . . . . . 42.361,-71.09 42.361,-71.09 42.362,-71.091 . . . . . . . .

Krumm et al. (SAE World Congress ‘07), VTrack (SenSys ‘09)

slide-24
SLIDE 24

Existing Map-Matching Algorithms Ok For GPS/WiFi, But Poor For GSM

d8:30:62:5f:be:da, RSSI -94 00:0f:b5:3d:43:20, RSSI -58 00:18:0a:30:00:a3, RSSI -51 . . . . . . . . . . . . . . 42.361,-71.09 42.361,-71.09 42.362,-71.091 . . . . . . . . 42.361,-71.09 42.361,-71.09 42.362,-71.091 . . . . . . . .

Krumm et al. (SAE World Congress ‘07), VTrack (SenSys ‘09)

slide-25
SLIDE 25

What algorithm said

slide-26
SLIDE 26

What user did

slide-27
SLIDE 27

Key Insight in CTrack

  • Do not convert radio fingerprints to (lat, lon)

coordinates and then sequence them on map

  • Instead, first sequence GSM fingerprints on a

spatial grid

  • This insight is crucial: it reduces error by 3x
slide-28
SLIDE 28

Grid Sequencing

Road Map

War-driving Database Smoothing and Interpolation Segment Matching Input Drive

Cell Tower Fingerprints Sensor Hints Sequence of Grids Sequence of Road Segments Sequence of Coordinates

Input Track

CTrack FlowChart

slide-29
SLIDE 29

Raw points (using Placelab for illustration – Ctrack does not use these “raw” points)

slide-30
SLIDE 30

Grid Sequence

slide-31
SLIDE 31

Smooth + Interpolate Grid Sequence

slide-32
SLIDE 32

Smoothed Grid à Road Segments

slide-33
SLIDE 33

CTrack Steps

HMM fingerprints to grid sequence HMM smooth grid to map Raw points (placelab) Smooth + interpolate grid sequence

slide-34
SLIDE 34

Time TowerId RSSI 18.03 334490560 14 334478599 12 337772865 18 334478600 14 334470539 12 334490699 12 19.01 . . . . .

Given a sequence of GSM fingerprints (TowerID, RSSI), what is the most likely sequence of grid cells?

Grid Sequencing

Size of grid = 125 meters Why?

slide-35
SLIDE 35

HMM For Grid Sequencing

334490560,14 334478599,12 337772865,18

GSM Signature (Towers+ RSSI) “Observable” Emission Score P ( Signature| Grid Cell ) Grid Cell (“Hidden State”) Grid Cell Grid Cell Grid Cell Grid Cell Grid Cell

slide-36
SLIDE 36

HMM For Grid Sequencing

334490560,14 334478599,12 337772865,18

GSM Signature (Towers+ RSSI) “Observable” Emission Score P ( Signature| Grid Cell ) Grid Cell (“Hidden State”) Grid Cell Grid Cell Grid Cell Grid Cell Grid Cell Transition Score P ( Grid Cell | Previous Grid Cell )

Dynamic Programming Finds Best Grid Sequence (cf. Viterbi) “Best” => Max (Emission Score * Transition Score)

slide-37
SLIDE 37

Emission Score (Grid Cell G, Fingerprint F)

  • Find closest matching

fingerprint Fclosest to F in all training data for grid cell G

  • Score is inversely proportional

to “distance” d of Fclosest from F in signal strength space

  • Better match => smaller d =>

higher score

334490560,14 334478599,12 337772865,18 334490560,14 334478599,12 337772865,18 332231024, 7

Fclosest F d

Training Points

slide-38
SLIDE 38

Example

3344,14 3346,12 3349,10 3344,13 3346,15 3347,12

d = l*2 + (dmax– 0.5*sqrt( (14–13)2 + (12–15) 2) With l=3 and dmax= 32, Emission Score =38 – sqrt(10)/2 Normalize this to (0,1] range

slide-39
SLIDE 39

Tolerant Transition Score

  • Inversely proportional to

distance between grid cells

  • The score is very tolerant of

jumps between non-adjacent grid cells

  • Necessary to tolerate large
  • utliers/regions of poor

coverage in the GSM data

d

Score = 1/d

slide-40
SLIDE 40

Example

Transition Score = 1 d = 7 Transition Score = 1/7

slide-41
SLIDE 41

Grid Sequencing In Action

slide-42
SLIDE 42

Grid Sequencing In Action

slide-43
SLIDE 43

Grid Sequencing In Action

slide-44
SLIDE 44
slide-45
SLIDE 45

Smoothing & Interpolation

slide-46
SLIDE 46

Grid Sequencing

Road Map

War-driving Database Smoothing and Interpolation Segment Matching Input Drive

Cell Tower Fingerprints Sensor Hints Sequence of Grids Sequence of Road Segments Sequence of Coordinates

Input Track

CTrack FlowChart

slide-47
SLIDE 47

Matching (Lat, Lon) To Segments

42.361117,

  • 71.090203

Latitude + Longitude “Observable” Road Segment Road Segment Transition Score P ( Road Segment | Previous Road Segment )

42.361118,

  • 71.09021

Latitude + Longitude “Observable”

slide-48
SLIDE 48

Matching (Lat, Lon) To Segments

42.361117,

  • 71.090203

Latitude + Longitude “Observable” Road Segment Road Segment Transition Score P ( Road Segment | Previous Road Segment )

42.361118,

  • 71.09021

Latitude + Longitude “Observable” Multiply by: P(Movement | Movement Hint) P(Turn | Turn Hint)

Extract 0/1 (Binary) Movement and Turn Hints For Each Time Slot

slide-49
SLIDE 49
slide-50
SLIDE 50
slide-51
SLIDE 51

Evaluation

  • 126 hours (312 drives)

– From 16 Android phones – Logged GPS ground truth, GSM, accel, compass

  • Selected subset of 53 drives (28

hours) as “test drives”

– Tests lie in dense cov. area – Tests have good GPS accuracy – Mean drive length: 30-35 mins

  • Leave-one-out evaluation

– Train on all but test, evaluate on test drive

slide-52
SLIDE 52

We Compared CTrack To…

  • Placelab + VTrack

– Look up single best matching GSM fingerprint for each time – Match (lat, lon) using VTrack

  • GPS k + VTrack

– Get a GPS sample every k secs – Match (lat, lon) using VTrack – k = 4 min is energy-equivalent to CTrack

slide-53
SLIDE 53

Evaluation Metrics

Ground Truth Output Of Tracking Algorithm

slide-54
SLIDE 54

Evaluation Metrics

Ground Truth Output Of Tracking Algorithm Best Sequence Matching (Computed using DP)

d

Match Length (d = 0) Precision = Match Length / Output Length Recall = Match Length / Ground Truth Length

slide-55
SLIDE 55

CTrack Has 75% Precision: 3x Less Error Than Placelab+VTrack, GPS k

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1 Probability Precision (Matched Length/Output Length) CTrack GPS 2 min GPS 4 min Placelab+VTrack

slide-56
SLIDE 56

Grid Sequencing Step is Critical

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1 Probability Precision (Matched Length/Output Length) With Sequencing Without Sequencing

Sequencing First Before Converting to (Lat, Lon) Coordinates is Critical

slide-57
SLIDE 57

Impact Of Sensor Hints

  • Small in quantitative terms

– 6% precision, 3% recall

  • But help correct some

systematic errors

– Turn hints fix “kinks” in

  • utput track

– Movement hints fix “looping” in GSM signature

0.2 0.4 0.6 0.8 1 0.2 0.4 0.6 0.8 1 Probability Precision (Matched Length/Output Length) With Sensor Hints Without Sensor Hints

slide-58
SLIDE 58

Conclusion

  • CTrack is a cellular-only system that:

– Can recover over 75% of a user’s track – Significantly (over 3x) better in energy/accuracy tradeoff than existing approaches

  • Broader impact

– Make large scale deployment of location-based apps feasible without running into energy barriers – Enable devices without GPS to contribute to and benefit from location-based services – Many IoT devices may have cellular or other long- range low-power radios such as LoRaWAN or Sigfox, but no GPS