Learning Significant Locations and Predicting User Movement with

advertisement
Learning Significant Locations and
Predicting User Movement with GPS
Daniel Ashbrook and Thad Starner
Avinash Parnandi
Learning Significant Locations and
Predicting User Movement with GPS:
•
Learning Significant Locations: Significant Locations are those
locations which we commonly visit & spend time, over a period of
time(say one semester).
e.g. Home, Work, KOH, Leavey, DRB-Lab, Smart-Final… etc.
•
Predicting User Movement: After collecting the GPS data and
analyzing
it, it uses Markov Model to predict user movement and
answer queries
like:
– right now the user is at
home, what is the likely place she`ll go next?
-- how likely is he to stop at the grocery store on way from school to
home.
•
Location is one of the most commonly used context. Given this other
information can inferred i.e. what are you doing(Stadium-Match,
Classroom-Studying, Movie Hall- Movie etc.)
Applications: Single User
Associate a To-Do list or Reminders with location. So the
•
reminders will pop up depending on your location e.g.
Vegetables” when you are near a grocery store.
“Buy
This is where Prediction spices up the system…
Early reminders --- Suppose you`ve a library book to return & the
•
phone predicts that you`ll be taking the library route
today so it`ll
prompt a reminder before you leave your home instead of reminding you
near the library.
•
Location prediction abilities could allow a wearable computer to
optimize its transmissions based on availability of service in
various locations and the knowledge of how its user moves
throughout the day.
Applications: Multi User
•
Simplest example : “Will I see Bob today?“
•
Another application is scheduling a meeting of several people
depending on their calendar.
•
Serendipitous meeting.
•
Intelligent Interruption: Location models can be used to make an
intelligent guess about whether the user is interruptible or not. Suppose your
location says that you are in a lecture or at your workplace and cannot be disturbed so
it`ll automatically take your
phone into silent mode.
Requires sharing of information.Various mechanisms are available
central server, sharing only with trusted associates etc. Here
issues needs to be taken care of.
like
privacy
Implementation
•
•
•
•
•
Hardware: Collects the data using a GPS receiver & data logger.
Software: Processes the data, then by using a Markov Model
prediction about user movements based upon this data.
makes
Duration of experiment: 4 months
Data logger recorded the output from the GPS receiver at an
interval of one second, but only if the receiver was moving at one
mile an hour or greater. This helps pre-process the data.
Limitation of GPS: Accuracy of the GPS receiver was 15 meters; this
means that the same physical location will have a different
GPS coordinate
from day to day.
Significant Locations

We are interested in the places where the user spends time
and by
looking at the time gaps in the GPS data we can find
these significant
locations.

Time gaps will occur when the data logger is not logging which
happens when either you are stationary(less than 1mph) in an open
place or you are in a building with no GPS signal. Both
these cases
mean that you spend your time here.

The value of time gap is an important parameter. Whenever a
point
is found that has more than a certain time ‘t’ between it and the
previous point, we conclude that the point marks a
significant
location.
◦ So now we`ve the significant locations……
Determining places & Clustering

Because GPS measurements taken in the same
physical
location can vary by as much as
15 meters, the
logger may record different point
for a location even if the
user stops at precisely
the same point .

Hence create clusters of some radius ‘r’ . All GPS locations
inside a
cluster are now recognized by the cluster ID. So original hundreds of
thousands of GPS coordinates are now just a few significant locations.

Clustering done by a variant of K-mean clustering Algorithm.
K Mean Clustering
1.
2.
3.
4.
Take one place point and a radius. All the points within this radius of
the place are marked, and the mean of these points is found.
The mean is then taken as the new centre point, and the process is
repeated.
This continues until the mean stops changing.
When the mean no longer moves, all points within its radius are placed
in its cluster and removed from consideration
To determine the Radius:
knee
Radius of a Cluster:
Identifying Sub-locations

Problem with radius of the cluster--

Large R— small transits like SSL-RTH wont be predicted. All it`ll
say is – ‘campus’, which is a cluster.
Small R—Many locations will be individual clusters which is exactly

what we want to avoid by clustering. Also broader trips will not be
predicted.

Variable R – Sub-locations inside a cluster, Campus
a cluster & RTH, SSL, Lyon can be sub- locations.
can be
So now we have our locations, what next??
Prediction!!!!
Prediction

A Markov Model is created for each location in
the map with transition to other locations.

What is a Markov Model?
◦ Markov Models are State Transition models
with the nodes being the states & with
corresponding state transition
between the nodes.
probabilities
◦


It follows the Markov Rule i.e. future
state depends on the current
state and observational data &
independent of past states .
A simple random walk is an example of Markov Chain.
How does it work?

This model predicts user movement. Given current
location,
it reads out transition probabilities for all
possible locations from
this location and the one with
the highest probability is
accepted and taken as the next move.

Probability here is the relative
frequency of transitions.

If no transition ever occurs between
two nodes then the transition
probability between those nodes is
zero.
Future Work & Limitations:
Future Work:


This project was for single user, so the next obvious step
is Multi-User collaboration .
Design a Markov Model to support time based
prediction. Can predict where someone will go next but not
when.
Limitations:


Changes in schedule may take a long time to be
reflected in the model.
Does not update the user models in real time.
Related Work:








Multi-User: Learning locations & Prediction
Work done by the same group.
Mostly similar work, few changes to the approach.
The data collected was implemented for multi user
collaborative applications.
Still does not support time prediction.
Adaptive mobility prediction for location
management using mobile positioning
Location management scheme for mobile wireless
networks is presented
The mobile periodically compares its current location (GPS) with
the predicted location and sends an autonomous location update
whenever the prediction error exceeds a certain threshold.
Related Work:
•
Learning Significant Locations from GPS Data with
Time Window: (Tang Jian , Meng Lingkui 2006)
•
They identify significant locations but no prediction.
Distinguishes the location of the same place where the
user went at different time i.e. OHE at 11 AM is
different from OHE at 3:30 PM.
They make use of the fact that every GPS point is
acquired with a time stamp.
Can be the basis for time based prediction .
•
•
•
References:


Learning Significant Locations and Predicting User Movement with
GPS &
Using GPS to learn significant locations and predict movement
across multiple users: Daniel Ashbrook and Thad Starner

Learning Significant Locations from GPS Data with Time Window:
Tang Jian, Meng Lingkui.

Adaptive mobility prediction for location management using mobile
positioning: Zhang Rui , Bassiouni Mostafa A .

http://intoverflow.wordpress.com/2008/05/27/what-is-a-hiddenmarkov-model/
Thanks!!!
Questions ?????
Download