1
Mobility Data Management
Yannis Theodoridis & Nikos Pelekis
InfoLab, University of Piraeus, Greece infolab.cs.unipi.gr
Aalborg, September 2011
Mobility Data Management
Yannis Theodoridis & Nikos Pelekis
InfoLab, University of Piraeus, Greece infolab.cs.unipi.gr
Aalborg, September 2011
2
3
Acknowledgments
� The content of this tutorial has been inspired by partners’ work in
the following EU projects:
� FP6/GeoPKDD (http://www.geopkdd.eu), 2005-09
� FP7/MODAP (http://www.modap.org), 2009-12
� ESF/COST-MOVE (http://move-cost.info), 2009-13
� Also, special thanks to our colleagues at InfoLab, U. Piraeus
GeoPKDDGeographic Privacy-awareKnowl. Discovery & Delivery
4
Log file
� Previous versions of this material:
� 2011
� Mobility Data Management. Post-graduate course @ KAUST, Jeddah, Saudi
Arabia, June 2011.
� From Mobility Data Management to Location-based Services. PhD short
course @ Univ. Milano, Italy, May 2011.
� Recent Advances in Mobility Data Mining. Invited talk @ Univ. Zurich,
Switzerland, Apr. 2011.
� 2010
� Mobility Data Management: theory and practice with Hermes. Hands-on
seminar @ MODAP summer school, Rhodes, Greece, Aug. 2010.
� From Mobility Data Management to Location-based Services. PhD short
course @ Univ. Venice, Italy, Jun. 2010.
3
5
Introduction, Overview
From digital mapping to mobile social networking –
A tour on geospatial information management
challenges
6
Mobile devices and services
� Large diffusion of mobile devices, mobile services and location-based
services � mobility data
4
7
Which mobility data?
� Location data from mobile phones
� i.e., cell positions in the GSM/UMTS network
� Location data from GPS-equipped devices
� Humans (pedestrians, drivers) with GPS-equipped smartphones
� Vessels with AIS transmitters (due to maritime regulations )
� Location data from intelligent transportation environments
� Vehicular ad-hoc networks (VANET)
� Location data from indoor posistioning systems
� RFIDs (radio-frequency ids)
� Wi-Fi access points
� Bluetooth sensors
8
Examples of mobility data
� Vehicles moving in Milan
� ~2M GPS recordings from 17241 distinct
objects (7 days period) � 214,780
trajectories
� Vessels sailing in Mediterranean
sea
� (only a small subset of the dataset at
hand) ~4.5M GPS recordings from 1753
distinct objects (3 days period) � 1503
trajectories
5
9
What can we learn from mobility
data ...
10
Vehicles datasets…
� (global) Traffic monitoring
� How many cars are in the ring of the town?
� Once an accident is discovered, immediately send
alarm to the nearest police and ambulance cars
� (personalized) Location-aware queries
� Where is my nearest Gas station?
� What are the fast food restaurants within 3 miles from
my location?
� Let me know if I am near to a restaurant while any of
my friends are there
� Get me the list of all customers that I am considered
their nearest restaurant
6
11
Vessels datasets…
(requirements from Greek Maritime Conservation Agencies)
� For each ship and for each day
� Extract / draw the ship tracks (detailed vs. simplified)
� Calculate average and minimum distance from shore; where and when
� Calculate the maximum number of ships in the vicinity of the ship (e.g. 10 n.m.
radius)
� Find whether (and how many times) a ship goes through narrow passages or
biodiversity boxes
� Calculate the number of sharp changes in direction
� For the full population of ships
� Find typical routes vs. outliers (full or small part of its track)
12
More ambitious: “Mobile Landscapes”[Ratti et al. 2005]
MIT senseable project: http://senseable.mit.edu/grazrealtime/
7
13
More ambitious: “Trajectory patterns”[Giannotti et al. 2007]
∆∆∆∆T ∈∈∈∈ [10min, 20min]
∆∆∆∆T ∈∈∈∈ [20min, 35min]
∆∆∆∆T ∈∈∈∈ [5min, 10min]∆∆∆∆T ∈∈∈∈ [25min, 45min]
EU GeoPKDD project: http://www.geopkdd.eu
14
The big picture
8
15
Mobility Data
Raw data
Mobility Patterns
GSM network, WSN, GPS
End user
Mobility manager
16
Multimedia & Geo
GSM, GPS
Mobility models
Mobility Database
Mobility expert
9
17
Multimedia & Geo
GSM, GPS
Mobility models
End user
Mobility Database
18
The modules of our architecture
raw data producers
Lat/Lon to x/y
data conversion Trajectory
reconstructionTrajectory
aggregations
(DW)
Lat/Lon
locations
(DB)
x/y
locations
(DB)
Mobility Data
VisualizationMobility Data
Querying
Mobility Data
MiningTrajectories
(MOD)
Mobility Data
OLAP
Extract-
Transform-
Load (ETL)
10
19
Key questions that arise
� How to reconstruct a trajectory from raw logs?
� How to store trajectories in a DBMS?
� Is a trajectory simply a sequence of (x, y, t) tuples?
� What kind of analysis is suitable for mobility data?
� In particular, trajectories of moving objects?
� How does infrastructure (e.g. road network) affect this analysis?
� Which patterns / models can be extracted out of them?
� Clusters, frequent patterns, anomalies / outliers, etc.
� How to compute such patterns / models efficiently?
� How to protect privacy / anonymity?
� trade-off between privacy protection and quality of analysis
20
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
11
21
A pot-pourri of what we ‘ll see in
the next lectures ...
22
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
12
23
Part I. Mobility data storage and querying
� Basic characteristics of moving
objects
� Large number of objects
� Frequent location updates
� Fast query processing
� Diversity in space / time
� Issues:
� Trajectory reconstruction
techniques (from raw
locations to trajectories)
� Simple vs. advanced queries
involving space / time
� Robust MOD engines for
efficient trajectory data
storage, indexing, and query
processing
24
The trajectory reconstruction problem
� From raw data, i.e., time-stamped locations
� Raw data (3D points) arrive either one-by-one or in bulks
� … to trajectory data, i.e., continuous evolutions
� Redundancy is reduced, noise is removed, etc.
13
• Semantic Trajectory: T={efirst,…,elast}
• Episode: ei=(tfrom, tto, place, tag)
raw mobility data
sequence (x,y,t) points
e.g., GPS feeds
Home (breakfast)office (work) Market (shopping)Home (relax)
Road
(bus)
Train
(metro)
Sideway
(walk)
[~, 8am]
[8am, 9am] [6pm, 6:30am] [7:30pm, 8pm]
[9am, 6pm] [6:30pm, 7:30pm] [8pm,~]
meaningful mobility tuples
<place, timein, timeout, tags>
What is semantic trajectory?
25
26
Example mobility-aware queriesoriginal slides from [Mokbel & Aref, 2007]
� (I’m a driver) Where will my nearest McDonald’s
be for the next hour?
� (I’m a gas station) Send E-coupons to all cars that
I am their nearest gas station
� (I’m a traffic manager) Continuously report the
number of cars in the freeway
� (I’m taxi A driver’s colleague) What was the
closest dist. between Taxi A & me yesterday?
14
27
Indexing, Query Processing, etc.
� Query mechanism
� What happens inside the DBMS?
� Efficient storage of mobility data
� Indexing, query processing & optimization techniques
Data
Query
Answer
28
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
15
29
Part II. Mobility-aware applications
� Q: Apart from scientists and engineers, who can take advantage of
the above?
� A: Everybody!
� How? Location-based services (LBS)
source: iphone-2.co.uk
30
LBS is easy to get
� High-end smartphones with build-in GPS receiver
� Nokia N8, N97, …
� Sony Ericsson Xperia X10, P1i, …
� HTC HD2, P3600 i-go, …
� Apple iPhone
� Google’s Android
� etc.
� etc.
source: iphone-2.co.uk
16
31
LBS vendors: from Google to Apple
� See in real time where your friends
are! (launched Feb.09 by Google)
� “Find my iPhone”
� Track your lost iPhone
(launched Jun.09 by Apple)
source: apple.com
source: google.com
32
From naïve to advanced LBS
� From Routing (“get directions”), What-is-
around (“search nearby”) and Find-the-
nearest
� http://g.co/maps/38yfy
� … to “Zombies, Run!” online adventure game
� http://www.zombiesrungame.com/
17
33
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
34
Part III. Mobility data analysis and mining
� OK, trajectories are stored in MOD engines
� Efficiently updated, queried
� What about analyzing data and discovering knowledge?
� Trajectory data warehousing for OLAP analysis
� Trajectory data mining for knowledge discovery
� What kind of patterns can be extracted from trajectories (clusters?
sequences?)
� Trajectory data/pattern visualization for better interpretation of
OLAP/KDD results
18
35
Aggregations on mobility data
36
Frequent pattern mining
� T-patterns
19
37
Trajectory clustering
� Finding clusters of trajectories and outliers
� What about clusters’ centroids?
38
Trajectory sampling
� Can we get the gist of a real large MOD by visualizing it? Can we do
this automatically?
� If yes, we can
� extrapolate the query results from queries in the sampled MOD
� discover mobility patterns working with a “representative” subset
20
39
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
40
Part IV. Privacy aspects
“New technologies can pinpoint your location at any time and place. They
promise safety and convenience but threaten privacy and security”
Cover story, IEEE Spectrum, July 2003
YOU ARE
TRACKED …
!!!!
21
41
Linkage in Mobility Data
� By intersecting the phone directories of locations A and B we find that
only one individual lives in A and works in B.
� id:34567 � Prof. Smith
� Then you discover that on Saturday night id:34567 usually drives to
the city red lights district. Too bad for Prof. Smith �
A
A
B
B
[almost every day Mon-Fri between 7:45 – 8:15]
[almost every day Mon-Fri between 17:45 – 18:15]
id:
34567
42
A guided tour on Mobility Data Mgmt
I. Mobility data storage and querying
Acquiring trajectories from raw data; Location-aware querying; Efficient trajectory indexing and storage in MODs
II. Mobility-aware applications and tools
Location-based services and tools; Algorithms and operations for LBS
III. Mobility data analysis and mining
Trajectory warehousing and OLAP; Mobility data mining and reasoning; Visual analytics for mobility data
IV. Privacy aspects
Preserving user traces’ anonymity
V. Outlook
Open issues – Future Challenges
22
43
Part V. Outlook
� What’s next? Mobile social networks
� Facebook, Twitter, etc.: currently, 1 billion users of social media; what
if their movement is added?
� Towards complex social networks of moving interacting objects.
Leadership
Path following
Goal seek
44
Before we start this tour ...
A quick survey on background
knowledge
23
45
Outline
� Spatial database management
� Spatial data models and Spatial DBMS extensions
� Spatial indexing and query processing
� Infrastructure for Location-based Services
� Positioning technologies – GPS etc.
46
Spatial data modeling
24
47
Geographical data models
� Representation of reality:
Raster vs. Vector
x
y
0 400 800
400
800
street
river
house
house
Trees II
Trees I
bridge
II
I I
II
II II
h
II hb
r
r
r r
r r
r
r
r
r
s
s s
s
s s
s
7
6
5
4
3
2
1
0
0 1 2 3 4 5 6 7
reality
raster vector
48
Vector model
� Geographical space = a set of entities
� 0-d: points
� 1-d: line segments, polylines, …
� 2-d: polygons, polygons with holes, …
edge
vertex
end
end
Open line Closed line
Simple
polygon
Non-simple
polygon
Convex
polygon
Polygon
with hole(s)
25
49
Spatial relationships
� Topological vs. directional relationships between spatial objects
� Topological relationships are invariant to topological transformations
� Shift, Rotation, Scaling
50
Topological relationships
� Egenhofer’s 4- and 9-
intersection model
(Egenhofer and
colleagues, 1989-93)
� Based on the set
intersections between
objects’ interior,
boundary and exterior
disjoint
meet
overlap
inside
contain
covered-by
cover
equal
26
51
Egenhofer’s Nine-Intersection Model
0 0 1
0 0 1
1 1 1
1 1 1
0 0 1
1 1 1
1 1 1
1 1 1
���������������������������� ������������������������������������������������������������������������������������ ����������������disjoint
0 0 1
0
0
1 1 1
0
0
1
0 0 1
0 1
1 1 1
0
1
0
1 1 1
contains inside equal
meet covers coveredBy overlap
1
1 0
0 0
0
0 0
1
1
1
1
0
1
1
1
1
0
1
1 1 0
0
52
Temporal relations
� Allen’s interval
algebra (Allen, 1983)
� A set of 13 relations
between intervals A,
B
Relation Definition
t
AA B
AB
t
A B
t
A B
t
B
A
tAB
t
AB
t
A takes place before B(and its dual)
A is equal to B
A meets B(and its dual)
A during B(and its dual)
A overlaps with B(and its dual)
A finishes B(and its dual)
A starts B(and its dual)
27
53
Example of a geo-DB
� Entities: countries, cities, rivers, etc.
� Relationships between entities: capital-of-country, …
� How can we model and manage such information?
� Country is of polygon shape
� River is of polyline shape (?)
� City is of point shape (?)
� Spatial operations:
� area of a country, length of borderline between 2 countries, ...
Map source: geographyjim.org
54
Example: World Database
� At the conceptual level
� 3 Entities: Country, City, River
� 2 Relationships: capital-of, originates-in
POPULATION
CAPITAL
ORIGINATESCOUNTRY RIVERCITY
NAME
CAPITAL-OF
NAME
POPULATION
LIFE-EXP
NAMELENGTH
CONTINENT
GDP
28
55
Example: World Database (cont.)
� At the logical level: 3 relations (Country, City, River)
56
How do we implement spatial DBs
� An example Spatial DBMS:
PostgreSQL
� Geometric data types
� Point
� Line segment = 2 points
� Box = 2 points
� Path = sequence of points
� Polygon = sequence of
points
� Circle = point + number
(radius)
� Spatial indexing techniques
� GiST – generalized search
trees
� Special case: R-tree
� Geometric functions and
operators
� A variety …
29
57
PostgreSQL geometric operators
Operator Description Example
58
PostgreSQL geometric operators (cont.)
Operator Description Example
30
59
PostgreSQL DDL
� A table of areas (zones)
CREATE TABLE zones ( poly_id integer,name varchar(30),sector polygon);
INSERT INTO network.zones VALUES (1, ’PARK’, ’(479243, 4204000, 477728, 4202750,477559, 4202100, 476271, 4204750)’ :: polygon);
� A table of points (locations)
CREATE TABLE locations ( point_id integer, name varchar(30), pos point);
INSERT INTO locations VALUES (52, ‘Freedom Sq.’, ‘(476600, 4202800)’ :: point);
60
PostgreSQL DML
� Objects within distance from a given point
SELECT point_id,(pos<->Point '(475750, 4201500)') as distance
FROM locations
WHERE (pos <-> Point '(475750, 4201500)' ) <= 200
� Objects within a given region
SELECT point_id, name
FROM locations
WHERE (pos @ polygon '(479243, 4204000, 476271, 4204750)') = TRUE
SELECT point_id, name
FROM locations
WHERE (pos @ (SELECT sector FROM zones WHERE name = 'PARK'))
31
61
SDBMS physical level
� Issue:
� How to store and efficiently process this kind of information?
� Relational DBMS support traditional (alphanumeric, etc.) data types
� Low complexity � relational tables are efficient
� Total ordering � search trees (e.g. B+-trees) for fast search
� Unfortunately, spatial objects
� (a) are of high complexity and
� (b) lack total ordering
x
y
0 400 800
400
800
street
river
house
house
Trees II
Trees I
bridge
62
SDBMS physical level
� Unfortunately, spatial objects
� (a) are of high complexity and (b) lack total ordering
� Nevertheless, can we do something?
� Regarding (a): use spatial data approximations of low complexity
� Regarding (b): adopt multi-dimensional search techniques
France
32
63
Spatial data approximations
� Minimum (Orthogonal) Bounding Rectangle (MBR)
� MBR(obj) is the minimum orthogonal rectangle that covers obj
� Unfortunately, approximations are not identical to the original
shapes they origin from �
� Need for a filter and refinement procedure to support typical spatial
queries
France
64
(parenthesis: “typical spatial queries”)
� Typical spatial queries are the
following:
� Point (D, p): find objects in dataset
D covering point p
� Range (D, p): find objects in dataset
D that lie inside (or overlapping)
region r
� NN (D, p, k): find the (k-) object(s)
in dataset D that lie nearest to
point p
� SpatialJoin (D1, D2): find all pairs
(o1,o2) of objects in datasets D1,
D2, that satisfy a spatial condition
(usually, overlap)
Map source: geographyjim.org
33
65
The Filter-Refinement procedure
� Processing a spatial query Q
� Filter step: find a set S that contains (for sure) the answer set of Q
� Using MBR approximations
� Refinement step: find the exact answer set of Q
� Geometrically processing S
Query
Spatial Index
Candidate Set
Filter Step
False Hits
Refinement Step
Local Object Geometry
Test on exact Geometry
Hits
Query Result
66
An example of filter – refinement
� Range query processing
� filter step: find object MBRs overlapping Q
� refinement step: find objects overlapping Q
B
C D
A
B
C D
Query
region
MBR
Data
Object B
C
34
67
Indexing spatial objects
� Problem:
� Cannot adopt “total ordering” in multi-dimensional space
� Solutions:
� Adopt partial ordering (using space filling curves, e.g. Hilbert), transform 2D objects in 1D intervals, and exploit on e.g. B+-trees, or
� Invent novel spatial indexing techniques: R-trees, Quadtrees, etc.
� The latter solution turned out to be the winner.
Hilbert curve
68
Space filling curves
Row Row-prime Z-Order (Morton)
Hilbert Cantor diagonal Spiral
35
69
Z- vs. Hilbert curve
� Z-curve:
� Produced by interleaving bits
x 5 0 0 0 0 00 (2,4)
5 (24)
1 1
0 0 0 1 1 00 0
y 5
n=3n=2n=1n=0
70
Z- vs. Hilbert curve
� Hilbert curve:
� Produced by interleaving bits
� … and rotating
n=3n=2n=1n=0
A
A A
A
36
71
R-tree (and family)
� The basic idea: extends B-tree to multi-dimensional space
� Basic properties:
� Nodes correspond to disk pages; Balanced tree; Nodes consist of MBRs covering the entries of the lower level
� Implemented in Oracle, IBM DB2, PostgreSQL, etc.
� Finds many applications: spatial, image, multimedia, time-series databases, OLAP, etc. (Manolopoulos et al. 2005)
72
Point / Range query processing in R-trees[Guttman, 1984]
� Query window: Q
� Root level: Q overlaps R1, R2
� Depth-first propagation: node R1 � node R3, node R2 � node R5 � overlaps r7
� Answer set: r7
Q
37
73
NN query processing in R-trees[Roussopoulos et al. 1995]
� Query point: Q
� Root level: R1, R2 are candidates (at the moment…) for containing the answer
� Depth-first propagation (ask yourselves why…): node R1 � node R3 � r2 and r3
are candidate answers
� side-effect: R2 is pruned!
� Answer set: r2, r3 (two candidates for the 1-NN !!)
Q
MINDIST
MAXDIST
MAXDIST
74
Spatial DB + Time = Spatio-temporal DB
� Including time dimension in spatial data is not straightforward(Koubarakis et al. 2003)
� time is not simply a 3rd dimension (monotonicity, etc.)
� Adding motion in spatial objects (points, lines, regions)
� Novel data types, e.g. “moving points” (Güting et al. 2000)
� Spatio-temporal extensions of R-trees for indexing (Theodoridis et al.
1998)
38
75
An example of spatio-temporal DB
� Vessel traffic:
� Entities: vessels, ports, coastlines, narrow passages, etc.
� Relationships between entities: vessels’ scheduled trips (port-to-port)
� Spatial operations:
when does a
vessel approach
(pass through)
a port (narrow
passage), how
close (and when)
do two vessels
approach each
other,...
Live information: vesseltracker.com
76
How do mobility data look like?
GPS recordings
39
77
GPS Data
� Raw data: GPS recordings
N; Time; Lat; Lon; Height; Course; Speed; PDOP; State; NSat
…
8;22/03/07 08:51:52;50.777132;7.205580; 67.6;345.4;21.817;3.8;1808;4
9;22/03/07 08:51:56;50.777352;7.205435; 68.4;35.6;14.223;3.8;1808;4
10;22/03/07 08:51:59;50.777415;7.205543; 68.3;112.7;25.298;3.8;1808;4
11;22/03/07 08:52:03;50.777317;7.205877; 68.8;119.8;32.447;3.8;1808;4
12;22/03/07 08:52:06;50.777185;7.206202; 68.1;124.1;30.058;3.8;1808;4
13;22/03/07 08:52:09;50.777057;7.206522; 67.9;117.7;34.003;3.8;1808;4
14;22/03/07 08:52:12;50.776925;7.206858; 66.9;117.5;37.151;3.8;1808;4
15;22/03/07 08:52:15;50.776813;7.207263; 67.0;99.2;39.188;3.8;1808;4
16;22/03/07 08:52:18;50.776780;7.207745; 68.8;90.6;41.170;3.8;1808;4
17;22/03/07 08:52:21;50.776803;7.208262; 71.1;82.0;35.058;3.8;1808;4
18;22/03/07 08:52:24;50.776832;7.208682; 68.6;117.1;11.371;3.8;1808;4
…
78
GPS Data
� Typical structure:
N;Time;Lat;Lon;Height;Course;Speed;PDOP;State;NSat
…
8;22/03/07 08:51:52;50.777132;7.205580; 67.6;345.4;21.817;3.8;1808;4
9;22/03/07 08:51:56;50.777352;7.205435; 68.4;35.6;14.223;3.8;1808;4
10;22/03/07 08:51:59;50.777415;7.205543; 68.3;112.7;25.298;3.8;1808;4
11;22/03/07 08:52:03;50.777317;7.205877; 68.8;119.8;32.447;3.8;1808;4
12;22/03/07 08:52:06;50.777185;7.206202; 68.1;124.1;30.058;3.8;1808;4
13;22/03/07 08:52:09;50.777057;7.206522; 67.9;117.7;34.003;3.8;1808;4
14;22/03/07 08:52:12;50.776925;7.206858; 66.9;117.5;37.151;3.8;1808;4
15;22/03/07 08:52:15;50.776813;7.207263; 67.0;99.2;39.188;3.8;1808;4
16;22/03/07 08:52:18;50.776780;7.207745; 68.8;90.6;41.170;3.8;1808;4
17;22/03/07 08:52:21;50.776803;7.208262; 71.1;82.0;35.058;3.8;1808;4
18;22/03/07 08:52:24;50.776832;7.208682; 68.6;117.1;11.371;3.8;1808;4
…
40
79
GPS Data
� 50.777317;7.205877 � ???
80
GPS Data
� (and the inverse) Aalborg Univ. � 57° 00′ 59.76″ N, 9° 58′ 43.15″ E
� Google maps link: Aalborg University
41
81
How do we collect mobility data?
Positioning infrastructure
82
Geo-positioning
� Positioning technologies (all standardized in early 2000’s)
� Using the mobile telephone network
� Time of Arrival (TOA), UpLink TOA (UL-TOA)
� Using information from satellites
� Global Positioning System (GPS)
� Assisted (A-GPS), Differential GPS (D-GPS)
source: ESA
source: http://www.3gpp.org
U-TDOA
hyperboloid
Antenna
Antenna
Antenna
Estimated
Location Region
RTT
Circle
42
83
Geo-positioning (cont.)
� Uplink - Time Difference of Arrival (U-TDOA)
� At least 3 receivers (located together with antennas) get signals from a
user’s mobile, triangulate, and
estimate its position
� Accuracy: 30-120 m
� Standardized by the 3GPP
(3rd Generation Partnership Project)
� Problem: Requires great
investment in infrastructure
source: 3gpp.org
U-TDOA
hyperboloid
Antenna
Antenna
Antenna
Estimated
Location
Region
RTT Circle
84
Satellite-supported positioning
� GPS (Global Positioning System)
� Initiated 1978 by US DoD; error-free for civilian applications since 2000
� A constellation of 24 satellites
� monitored by 5 monitoring stations and 4 ground antennas; handled with (extremely precise) atomic clocks
� At least 5 satellites are in view from every point on the globe
� GPS receiver gathers information from 4 (or 3, the minimum) satellites and (a) triangulates to position itself; (b) fixes its (non-atomic) clock
� Position accuracy: ~20m
43
85
source: (Swedberg, 1999)
Geo-positioning (cont.)
� Assisted GPS (A-GPS)
� provides pre-
calculated satellite
orbits to the receiver
� Accuracy 10-20 m
� Differential GPS (D-GPS)
� accuracy down to 1m
86
Geo-positioning (cont.)
� EGNOS/Galileo
� EU’s rival to US’ GPS
� constellation of 30 satellites; to be in operation by 2010 2013
� 1st Galileo satellite launched in Dec. 2005
� designed for civil use
� GPS compatible
� 1m accuracy
44
87
Conclusions
� Assumptions
� Wireless networks infrastructures are the nerves of our territory
� besides offering their services, they gather highly informative traces
about human (animal, etc.) mobile activities
� Ubiquitous computing infrastructure will further push this
phenomenon
� Therefore,
� Mobility data collections will be more and more popular …
� … asking for effective and efficient management, analysis, and
exploitation
88
Questions
45
89
Reading list
� Project overviews, Manifesto papers, etc.
� Atzori, P. (2007) Privacy and anonymity in location and movement-aware data analysis – the GeoPKDD approach. Proceedings of ISI.
� Giannotti, F. and Pedreschi, D. (2008) Mobility, Data Mining, and Privacy: A Vision of Convergence. In Mobility, Data Mining and Privacy – Geographic Knowledge Discovery. Springer.
� Giannotti, F. et al. (2008) Mobility, Data Mining, and Privacy – the Experience of the GeoPKDD Project. Proceedings of PinKDD.
� Lopez, X. (2003) The Future of GIS: Real-time, Mission Critical, Location Services. Proceedings of Cambridge Conference.
� Nabian, N. et al. (2009) MIT GEOblog: A Platform for Digital Annotation of Space and Collective Community Based Digital Story Telling. Proceedings of IEEE-DEST.
� Ratti, C. et al. (2005) Mobile Landscapes: Graz in Real Time. Proceedings of LBS & TeleCartogrqaphy.
90
Reading list
� Spatial & spatio-temporal data modeling
� Allen JF (1983) Maintaining knowledge about temporal intervals.Communications of the ACM, 11, 832-843.
� Egenhofer MJ (1989) A Formal Definition of Binary Topological Relationships.Proceedings of FODO Conference.
� Egenhofer MJ, Sharma J (1993) Topological Relations Between Regions in R²and Z². Proceedings of SSD Conference.
46
91
Reading list
� Spatial & spatio-temporal database management
� Güting, R.H. et al. (2000) A Foundation for Representing and Querying MovingObjects. ACM Transactions on Database Systems, 25(1):1-42
� Guttman, A. (1984) R-trees: A Dynamic Index Structure for Spatial Searching.Proceedings of ACM SIGMOD Conference.
� Koubarakis, M. et al. (2003) Spatio-Temporal Databases – the Chorochronosapproach. Springer.
� Manolopoulos, Y. et al. (2005) R-trees: Theory and Applications. Springer.
� Roussopoulos, N. et al. (1995) Nearest Neighbor Queries. Proceedings of ACM SIGMOD.
� Theodoridis, Y. et al. (1998) Specifications for Efficient Indexing in Spatio-temporal Databases. Proceedings of SSDBM.
92
Reading list
� Positioning and tracking technologies
� Bajaj R. et al. (2002) GPS: Location-Tracking Technology. IEEE Computer, 35(4):92-94.
� Bar-Noy, A. and I. Kessler (1993) Tracking Mobile Users in Wireless Communication Networks. IEEE/ACM Transactions on Information Theory, 39(6):1877-1886.
� Bulusu, N. et al. (2000) GPS-less Low Cost Outdoor Localization for Very Small Devices. IEEE Personal Communications Magazine, 7(5):28-34.
� Djunkic, G.M. and R.E. Richton (2001) Geolocation and Assisted GPS. IEEE Computer, 34(2):123-125.
� Hofman-Wellenhoff, B. et al. (1997) Global Positioning System: Theory and Practice, 4th ed. Springer.
� Kaplan, E. (1996) Understanding GPS Principles and Applications. Artech House.
47
93
Reading list
� Positioning and tracking technologies (cont.)
� Mauve, M. et al. (2001) A survey on position-based routing in mobile ad hoc
networks. IEEE Network Magazine, 15(6):0-39.
� Misra, A. et al. (2004) An Information-Theoretic Framework for Optimal
Location Tracking in Multi-System 4G Networks. Proceedings of IEEE INFOCOM
Conf.
� Porcino, D. (2001) Location of Third Generation Mobile Devices: A Comparison
between Terrestrial and Satellite Positioning Systems. Proceedings of IEEE
Vehicular Technology Conf.
� Ward, A. et al. (1997) A New Location Technique for the Active Office. IEEE
Personal Communications, 4(5):42-47.
� Xiang, Z. et al. (2004) A Wireless LAN-based Indoor Positioning Technology.
IBM Journal of Research and Development, 48(5/6):617-626.
94
Reading list
� Indoor positioning and data management issues
� Jensen, C. S., Lu, H., Yang, B. (2009) Indexing the Trajectories of Moving
Objects in Symbolic Indoor Space. Proceedings of SSTD.
� Yan, B., Lu, H., Jensen, C. S. (2009) Scalable continuous range monitoring of
moving objects in symbolic indoor space. Proceedings of CIKM.
� Jensen, C. S., Lu, H., Yang, B. (2010) Indoor - A New Data Management
Frontier. IEEE Data Eng. Bull. 33(2): 12-17.
48
95
Online Resources
� Spatial – temporal database management
� ChoroChronos.org. A portal of datasets and algorithms for mobility data management. http://www.chorochronos.org
� R-tree-portal. A repository of R-tree related material. http://www.rtreeportal.org
� TimeCenter – an international center for temporal database applications. http://timecenter.cs.aau.dk
� Positioning technologies
� 3GPP specifications, http://www.3gpp.org/specs/specs.htm
� Dana, P.H.: Global Positioning System Overview, http://www.colorado.edu/geography/gcraft/notes/gps/gps_f.html
� ETSI – European Telecommunication Standards Institute. http://www.etsi.org
� Open GIS Consortium, OpenGIS® Location Services (OpenLS): Core Services, http://www.openls.org
� Open Mobile Alliance (OMA), http://www.openmobilealliance.org
� OpenPrivacy Initiative, http://www.openprivacy.org
� Parlay Mobility Service Interface v.1.1, http://www.parlay.org
� Shostek group: The Future of WAP and Location Based Services, http://www.shosteck.com/studies/wap_lbs.htm
� Trimble: All About GPS, http://www.trimble.com/gps