modeling spatio-temporal network computations betsy george, shashi shekhar department of computer...

23
Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second International Conference on GeoSpatial Semantics, Mexico City, Mexico 29 November 2007

Upload: thomasina-stewart

Post on 16-Dec-2015

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Modeling Spatio-temporal Network Computations

Betsy George, Shashi ShekharDepartment of Computer Science and

Engineering University of Minnesota

Second International Conference on GeoSpatial Semantics, Mexico City, Mexico

29 November 2007

Page 2: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Outline

Introduction Motivation Problem Statement Related Work

Contributions

Conclusion and Future Work

Representation

Evaluation of Model using Case studies

Conceptual Model

Logical Model

Physical Model

Page 3: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Motivation

Varying Congestion Levels and turn restrictions travel time changes.

1) Transportation network Routing

Identification of frequent routes (i.e.) Journey to Crime

U.P.S. Embraces High-Tech Delivery Methods (July 12, 2007) By Claudia H. Deutsch“The research at U.P.S. is paying off. Last year, it cut 28 million miles from truck routes— in good part by mapping routes that minimize left turns.”

3) Knowledge discovery from Sensor data.

2) Crime Analysis

Spreading Hotspots

9 PM, November 19, 2007Sensors on Minneapolis Highway

Network periodically report time varying traffic

4 PM, November 19, 2007

Some example queries on a time-varying network.

Page 4: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Problem Definition

Input : a) A Spatial Network b) Temporal changes of the network topology and parameters.

Objectives : (i) Expressive power (ii) Minimize storage and computation costs.

Output : A model that supports efficient correct algorithms for computing the query results.

Constraints : (i) Changes occur at discrete instants of time, (ii) Logical & Physical independence

Page 5: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Challenges

Conflicting Requirements

Expressive Power

Storage Efficiency

New and alternative semantics for common graph operations.

Ex., Shortest Paths are time dependent.

Key assumptions violated.

Ex., Prefix optimality of shortest paths

Page 6: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Related Work In Conceptual Data Model

Temporally Enhanced ER Model (TERC)*

Person

ApplicantNon-Degree

seekingStudent

Degree seekingStudent

Alumnus Donor

Accepted

Promoted

Graduated

Added

•Models temporal changes in relationships via entity subtypes.

* E. Zimayi, C. Parent, S, Spaccapietra, TERC+: A Temporal Conceptual Model, Proceedings of International Symposium on Digital Media Information Base, November 1997

Page 7: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Related Work In Logical Data Model

Snapshots at t=1,2,3,4,5

t=1

N2

N1

N3

N4 N5

1

2

2

2

t=2

N2

N1

N3

N4 N5

1

22

1

t=3

N2

N1

N3

N4 N5

1

22

1

t=4

N2

N1

N3

N4 N5

1

22

1

t=5

N2

N1

N3

N4 N5

12

22

1

N..

Travel time

Node:

Edge:

Time Expanded Graph

Holdover Edge

Transfer Edges

t=1

N1

N4

t=2

N4

N5

t=3

N2

N3

N4

t=4

N1

N2

N3

N4

N5

N1

N2

N3

N4

N5

t=5

N1

N2

N3

N5t=6

N1

N2

N3

N4

N5

t=7

N1 N1

N2 N2

N3 N3

N4

N5 N5

Page 8: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Limitations of Related Work

High Storage Overhead Redundancy of nodes across time-frames Additional edges across time frames.

Inadequate support for modeling non-flow parameters and uncertainty on edges.

Time Expanded Graph

Lack of physical independence of data

Computationally expensive Algorithms Increased Network size.

AB t=t2t=t3

t=t4

t=t1

Relationship between Two Objects at Various Instants

disjoint

touch

.

..

Representation using Pictograms

Model can lead to too many sub-entities

Entities participating in an evolving relationship might not always have subtypes.

TERC Model

Can affect scalability

Parking Lot

Vehicle

Parking Lot

Vehicle

Page 9: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Our Contributions

Time Aggregated Graph (TAG)

Representation

Evaluation of Model using Case Studies Routing Algorithms

Conceptual Model

Logical Model

Physical Model

Time Aggregation on evolving relationships

Time aggregated Graph

Set of logical operators

Page 10: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Representation of a Dynamic Relationship

t=t9

AB

t=t2t=t3t=t4

t=t1

Relationship between Two Objects at Various Instants

Pictogram with time aggregation

[d,t,o,c,c,v,o,t,d]

Parking Lot

Vehicle

Uses time-aggregation to model evolving relationships.

d – disjoint t – touch o – overlap c – contains v – covers

Disjoint

CoveredByCovers

Touch

Equals

Overlap

InsideContains

Implicit evolving relationships among Spatial Objects

Page 11: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Time Aggregated Graph

Snapshots of a Network at t=1,2,3,4,5

Time Aggregated Graph

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5

mi- travel time at t=i

[m1,…..,(mT]

Edge

N..

Node

Attributes are aggregated over edges and nodes.

t=1

N2

N1

N3

N4 N5

1

2

2

2

t=2

N2

N1

N3

N4 N5

1

22

1

t=3

N2

N1

N3

N4 N5

1

22

1

t=4

N2

N1

N3

N4 N5

1

22

1

t=5

N2

N1

N3

N4 N5

12

22

1

Page 12: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Time Aggregated Graph

N : Set of nodes E : Set of edges T : Length of time interval

nwi: Time dependent attribute on nodes for time instant i.

ewi: Time dependent attribute on edges for time instant i.

On edge N4-N5

* [2,∞,∞,∞,2] is a time series of attribute;

* At t=2, the ‘∞’ can indicate the absence of connectivity between the nodes at t=2.

* At t=1, the edge has an attribute value of 2.

TAG = (N,E,T, [nw1…nwT ],

[ew1,..,ewT ] |nwi : N RT, ewi : E RT

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5

Page 13: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Logical Model

Logical Operators

• Accessors

• Modifiers

• Predicates

o get

o insert, update, deleteo exists

• Node

• Edge

• Route

• Graph

Graph Elements

Examples getEdge(N1,N3,1) 2

getEdge(N1,N3) [2,2,2,2,2]

insertEdge(N1,N4,1,1)

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5[1,∞, ∞, ∞, ∞]

•Topology_first Operations Example: getEdge(n1,n2)•Time_first Operations Example: getEdge(n1,n2,t)

Page 14: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Logical Model – A Set of Logical Operators

insert delete modify

at_time at_all_time at_time at_all_time at_time at_all_time

Node insert(node, t,value)

insert(node, series)

delete(node,t)

delete(node)

update(node,t,value)

update(node, series)

Edge insert(node1, node2,value,

t)

insert(node1,node2,seri

es)

delete(node1,node2,t)

delete(node1,node2)

update(node1,

node2,t,value)

update(node1,node2,seri

es)

Route

insert(node1, node2,value,

t)

insert(node1,node2)

delete(node1,node2,t)

delete(node1,node2)

Graph

insert(graph, time)

insert(graph)

delete(graph, time)

delete(graph)

update(graph, time)

update(graph)

Operators in the Accessor Category

Operators in the Modifier Category

at_time at_all_time at_earliest

Node getNode(node,time) getNode(node) get_node_earliest (node,time)

Edge getEdge(node1,node2,time) getEdge(node1,node2) get_Edge_earliest (node1,node2,tim

e)

Route getRoute(node1,node2,time) getRoute(node1,node2) get_route_earliest (node1,node2,tim

e)

SP_Route getSP_Route(node,node2,time) getSP_Route(node,node)

Flow get_max_Flow(node1,node2,time)

get_max_Flow(node1,node2)

Graph get_Graph(time) get_Graph()

Page 15: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Physical Representation

N1

N2

N3

N4

N5

N2 N3

N4

N4

N5

∞V 1 1 11

F 1

F 2

V 2 2∞∞∞

F 2

Time-Aggregated Adjacency List

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5

Attribute time series is stored at the link to each adjacent node.‘V’ – Attribute varies over time. ‘F’ – Attribute remains constant

Might use less storage for sparse graphs.

Page 16: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Physical Representation

N1 N2

N3

N4

N5

N3

N1

N2

N4

N5

2

2

2

1

∞ ∞ ∞ ∞

∞ ∞ ∞ ∞

t=2

2

2

1

∞ 1 ∞ ∞

∞ ∞ ∞ ∞

t=1

N1 N2 N3 N4 N5

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5

N1 N2

N3

N4

N5

N3

N1

N2

N4

N5

2

2

1

∞ 1 ∞ ∞

∞ ∞ ∞ ∞

t=4

2

2

1

∞ 1 ∞ ∞

∞ ∞ ∞ ∞

t=3

N1 N2 N3 N4 N5

Attributes are stored in a three dimensional matrix.

One slice on the time dimension one snapshot

More suitable for Time-first (snapshot) operations.

Page 17: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Physical Representation

Time-Aggregated Adjacency List wit sliding windows

N1

[,1,1,1,1]

[2,2,2,2,2]

[1,1,1,1,1]

[2,2,2,2,2]

[2,, , ,2]

N2

N3

N4 N5

An Implementation of Infinite time series.

N1

N2

N3

N4

N5

N2 N3

N4

N4

N5

11

11

1

22

2

22

2

2 ∞∞

Time series is stored in a circular queue the link to each adjacent node.

Page 18: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Comparison of Storage Cost

Memory(Length of time series=150)

100

1100

2100

3100

4100

5100

111 277 562 786

No: of nodes

Sto

rag

e u

nit

s (K

B)

TAG

TEXP

For a TAG of n nodes, m edges and time interval of length T, If there are k edge time series in the TAG , storage required for time series is

O(kT). (*) Storage requirement for TAG is O(n+m+kT)

(**) D. Sawitski, Implicit Maximization of Flows over Time, Technical Report (R:01276),University of Dortmund, 2004.

(*) All edge and node parameters might not display time-dependence.

For a Time Expanded Graph,

Storage requirement is O(nT) + O(n+m)T (**)

Experimental Evaluation

Page 19: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Evaluation using Routing Algorithms

Start at t=1:Shortest Path is N1-N3-N4-N5;

Travel time is 6 units.

Start at t=3:Shortest Path is N1-N2-N4-N5;

Travel time is 4 units.

Shortest Path is dependent on start time!!

Fixed Start Time Shortest Path Least Travel Time (Best Start Time)

Finding the shortest path from N1 to N5..

t=1

N2

N1

N3

N4 N5

1

2

2

2

t=2

N2

N1

N3

N4 N5

1

22

1

t=3

N2

N1

N3

N4 N5

1

22

1

t=4

N2

N1

N3

N4 N5

1

22

1

t=5

N2

N1

N3

N4 N5

12

22

1

Page 20: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Shortest Path Algorithm for Given Start Time

Algorithm Every node has a cost ( arrival time at the node). Greedy strategy:

Select the node with the lowest cost to expand.

Traverse every edge at the earliest available time. Complexity of shortest path algorithm is O(m( log T+ log n))

Pseudo codeInput: Graph G(N,E), Source s, Destination d, Start time tstart

Output: Shortest Path from s to d for start time tstart

Insert s in minimum heap Q

u= extract_min (Q);while Q not empty {

for each node v adjacent to u { t = get_edge_earliest(u,v,cu); = getEdge (u,v,t);relax(u,v,);insert(Q,v);

}}

Page 21: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Best Start Time Shortest Path Algorithm

Algorithm

Pseudo codeInput: Graph G(N,E), Source s, Destination d, Start time tstart

Output: Best start time from s to d for start time tstart

Enqueue(Q,s);

u= dequeue(Q);

while Q not empty {

for each node v adjacent to u and for each t{ = getEdge(u,v,t);

if (cu > + cv), then {

insert(Q,v);}}

Each node has a cost series. Node to be expanded is selected at random.

Every entry in the cost series of ‘adjacent’ nodes are updated (if there is an improvement in the existing cost).

ts = getNode(u);

cu = getNode(u,t);cv = getNode(v,t+ );

update(v,t, + cv);

Page 22: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Conclusions

Time Aggregated Graph (TAG) Time series representation of edge/node properties Non-redundant representation Often less storage, less computation time

Evaluation of the Model using Case Studies

Shortest Path for Fixed Start Time

Shortest Path for Fixed Start Time

Transportation Network Routing Algorithms

Page 23: Modeling Spatio-temporal Network Computations Betsy George, Shashi Shekhar Department of Computer Science and Engineering University of Minnesota Second

Future Work

Spatio-temporal Network Databases

Conceptual level Extend Pictogram-enhanced ER model.

Logical level Formulate a complete set of logical operators

Physical level Add spatial properties to nodes, edges. Design indexing methods for time-aggregated graph. Explore the possibility of infinite time windows. Formulate new algorithms.

Three-Schema Architecture