A Framework for Simplifying Trip Data into Networks via Coupled Matrix Factorization Chia-Tung Kuo†

James Bailey∗

Ian Davidson†

Abstract Portable devices such as GPS-equipped smart phones and cameras are able to provide detailed spatiotemporal trip event data for each user. Such data can be aggregated over many users to provide large amounts of behavioral data of very fine granularity. Trying to simplify this data into meaningful higher-level insights is challenging for a variety of reasons. In this paper we study the problem of simplifying spatio-temporal trip data and summarizing them into an easily interpretable graph/network. We propose several constrained coupled nonnegative matrix factorization formulations that simultaneously cluster locations and times based on the associated trips, and develop a (block) coordinate descent algorithm to solve them. We empirically evaluate our approach on a real world data set of taxis’ GPS traces and show the advantages of our approach over traditional clustering algorithms.

into a general movement network/graph over space and time. The resulting simplification provides an overall abstraction of the original large volume complex behavior events; such simplification is easier to understand and more actionable for further tasks. In this paper we analyze trips in the format where each trip is only characterized by its origin and destination. This has the advantage of creating the greatest simplification (by ignoring the intermediate trajectory) and side-steps some privacy concerns. Complete sharing of trajectory information is known to generate significant privacy concerns since it can reveal sensitive places that the user has visited [4]. Consequently, a growing body of research has approached trajectory analysis from an obfuscation point of view [10], where a coarser granularity representation is employed, though our formulations could handle intermediate points by simply factoring more coupled matrices. A high level view of our problem is described below.

Keywords: Application, Matrix factorization, GPS, Movement network, Granularity

Problem 1.1. Network Simplification Problem. Input: A grid of n locations and a collection of trips, each of which is represented by its origin location and time, and its destination location and time. Output: A simplification into a directed graph where each node represents a subset of locations (i.e. referred to as a region; columns of Lp and Ld in the formulation later) and each edge represents the direction of major traffic flow (indicated by entries in Cs in the formulation later). In addition each edge is paired with a activation pattern over time.

1 Introduction and motivation Portable tracking devices have allowed the collection of spatio-temporal trajectory data in large amounts at relatively cheap costs. If summarized appropriately, such data can provide a wealth of information about human behavior and lead to diverse applications, from identification of static and variable traffic flows to more effective resource allocation in laying infrastructure. Analysis of these immense amounts of data, however, can be challenging beyond its volume. The spatio-temporal structure calls for a framework that can analyze these multiple dimensions simultaneously and find patterns along each dimension. Simply aggregating over a dimension or analyzing each dimension separately might lead to discoveries that are not representative of the overall data and/or are difficult to interpret. Our goal in this paper is to simplify a large amount of trip data

A baseline method to address this problem is to simply cluster these trips with a partitional clustering algorithm such as kmeans [14] using just the given spatial attributes and choose the centroids as the center of the major regions. However a few drawbacks significantly hinder the interpretability of the results from such approach. First, most partitional algorithms typically treat all attributes similarly and thus do not utilize the spatio-temporal nature of the data. Second, clustering algorithms have biases; for example kmeans only finds spherical and non-overlapping clusters char∗ [email protected], University of Melbourne, Australia † [email protected], [email protected], Department acterized by the centroids. Simply expanding from a of Computer Science, University of California, Davis. centroid as a region of interest might result in uninter-

pretable region that includes geographically impossible locations (e.g areas without roads, sea, etc). Finally, and most importantly clustering without coupling the origin and destination locations means we can only find a single pair of origin and destination regions in a centroid. In the view of our problem description above, the resultant output will only be able to characterize very simple movement network. This can be limiting as it may not be able to identify patterns such as shown in Figure 1(b) where two origin regions share one destination region. Variants of k-means that address selected limitations (such as Fuzzy cmeans [3]) does not greatly help overcome these issues. For example, Fuzzy cmeans allows overlapping clusters but these overlapping trips (not locations) usually occur at the fringes of two clusters, and it is unlikely to find more general shapes as in Figure 1(b). We overcome these shortcomings by formulating the problem as a coupled nonnegative matrix factorization where the matrices are defined to incorporate the spatiotemporal nature of the data. Instead of clustering trip records of origin and destination information, our formulation can be viewed as viewing origin and destination information separately and co-clustering locations and times based on these views. These clusters can have arbitrary shapes and arbitrary couplings among them beyond the one-to-one coupling. Figure 1 illustrates what our approach aims to achieve compared to the typical results from partitional methods such as kmeans. Algorithms such as spectral clustering are not appropriate in this setting since the large size of the data (either the number of trips, or the numbers of discretized locations/times) makes such algorithms inefficient. Our main contributions and the advantages of our approach are summarized below. • We study the novel problem of simplifying spatiotemporal trip records that include the start and end information in a trip, into a high level movement network/graph summary. • We show that existing clustering algorithms are poorly suited for our aim of creating networks. To address the problem we propose several formulations of coupled nonnegative matrix factorization that are time invariant, time variant and look for diverse regions of interest. • We provide systematic approaches in preprocessing and postprocessing the results for better interpretation along with a qualitative measure on how well the identified network explains the raw data. • We empirically evaluate our methods on a real world GPS-tracked taxi data set. We show our

method is able to create explanations that have higher quality and are more interpretable than the baseline methods. The rest of the paper is organized as follows. Section 2 discusses related work. Section 3 introduces our formulations, with subsections detailing the postprocessing and quality measure, etc. Section 4 presents our algorithms to solve our formulations with a brief discussion on their complexity. In section 5 we empirically evaluate our approach on a data set of taxis’ GPS traces and point out the significance of our findings. 2 Related work The related work encompasses trajectory pattern mining, clustering, nonnegative matrix factorization and domain specific applications. We discuss each in turn. Trajectory Pattern Mining: There has been considerable research in the analysis of spatio-temporal trajectories [9] and the discovery of patterns in such trajectories. A trajectory represents the movement of an object (person, animal, vehicle) over time and is modeled as a sequence of tuples where a tuple consists of the specific location and time. Trajectory data may be explored in different ways. One may search for mobility patterns [8] that characterize the daily behavior of individuals or perform analysis at a collective level to identify groups of objects such as flocks that travel together [22]. Our work is distinguished from these studies of trajectory mining in several respects; first we do not track the movement of individual objects. Instead we extract trips from the trajectories where each trip corresponds to a smaller part of a trajectory that is of interest; second, as opposed to a sequence in typical trajectory mining, each trip is only stored as a pair of spatio-temporal points;third, existing work on trajectory pattern mining typically processes the discovery of popular regions and their timings separately, whereas we attempt to combine these discoveries altogether. Overall our emphasis is different, in that it is to summarize all of the data into a movement network, in contrast to mining the frequent occurrences of particular objects in the trajectories. Clustering: Trajectory characteristics may also be explored via grouping or clustering. Here, the aim is to identify clusters which can model common user behaviors or journeys. Density based clustering [15] can be a good fit for identifying non-convex shared regions. Closely connected to trajectory clustering is the objective of trajectory visualization, wherein a geographical summary of a collection is desired, e.g. with a view to identifying the typical routes taken by cars in a city [1]. Another interesting direction is the summarization of trajectories, which can yield information such as the

D2

S1 S2

D1

(a) Kmeans - Discovers simple patterns

D2

S1

S2

D2

D1

(b) Our approach - Each edge has an activation signature

Figure 1: Illustrative visualization of what our approach can achieve in comparison with a traditional partitional clustering, such as kmeans. Note the arbitrary shapes of our discovered regions and distinctive chunks in a single region. Each edge is also accompanied with a temporal activation signature. S1 and S2 (red) are origin regions; D1 and D2 (blue) are destinations regions.

primary corridors of traffic [6], or the interesting locations that people visit [27]. A further important area of application is the identification of trajectories which are anomalous. For example, given a collection of taxis’ data, one may wish to identify traffic bottlenecks or potential frauds [22, 26] or find interesting locations and sequences [27]. Again the key difference of our work in this paper compared to these clustering or anomaly oriented tasks, is that these previous approaches have relied upon full information about trajectories, as opposed to using only data about start and end locations. Nonnegative Matrix Factorization:Our approach in this paper makes use of nonnegative matrix factorization (NMF). For spatio-temporal analysis, this method has been used for discovery of traffic dynamics [11] and for neighborhood discovery [21]. Compared to our work, these approaches instead use finer granularity about individual network links or intersections as the basis for matrix decomposition. To our knowledge, no prior work has attempted coupled NMF in our current setting where the matrix dimensions correspond to locations and times. Applications: Trajectory analysis has been posed as an important task for applications that aim to achieve destination inference, recommendations of interesting destinations to users [13, 25], and travel time estimation [23]. From the perspective of capacity planning, it is important to be able to automatically analyze geographical features such as road intersections and route sharing [19] or even automatically discover the locations of road intersections themselves [7]. Again, such analysis requires fine granularity information about the underlying travel network. In the context of social media and networking, the capability of users to ”check-in” to locations is giving rise to rich data sets recording such arrival-type events (e.g. Foursquare check-in data [20]). This type of activity is complementary to the scenario in our paper, since it models a trajectory at a coarser level, as a series of events (check-ins), which is analogous to our modeling of trajectories as start and end points. However the problem of extracting a movement summary as a graph/network as in our setting is not found in the literature. 3 Formulations and Methods In the following subsections, we describe three coupled matrix factorization models that gradually include more factors to be considered and our postprocessing procedures. Throughout the presentation we use Matlabstyle index X(i, j), X(i, :) and X(:, j) to refer to the i, j-th entry, the i-th row and the j-th column, respectively, of a matrix X. Since we work with taxis’ GPS traces, we will refer to a trip’s origin as pickup and its

destination as dropoff.

as D. With the addition of these two matrices P and D, we propose to solve the following coupled matrix 3.1 Time Invariant Migration Here we attempt factorization formulation (3.2) to extract latent factors to find the overall migration that appear consistently that take into account both the spatial and temporal across the entire observed time period. Let S be the observations simultaneously. n × n matrix of pickup locations by dropoff locations (3.2) (i.e. n distinct spatial locations in the model). Each minimize ||S − Lp Cs LTd ||2F + β(||P − Lp TpT ||2F Lp ,Ld ,Cs ,Tp ,Td ≥0 entry contains the number of trips with the correspond+ ||D − Ld TdT ||2F ) ing origin and destination locations over the observed time period; e.g. S(i, j) = 3 means there are 3 trips with origin location i and destination location j. As in The first term in the objective is the same as the most spatial data mining studies where the identifica- objective in formulation (3.1) and ensures that Lp and tion of relevant spatial sites depends on the resolution Ld explain the pickup and dropoff information of the of the discretization of the spatial dimension, the size trips well. The second and third terms ensure that Lp of the matrix S is directly based on the chosen spatial and Ld account for the temporal aspects of the data resolution. Then we decompose S into three nonnega- while looking for such explanation. Tp is a p × t matrix tive matrices Lp , Cs and Ld as shown in equation (3.1). where the i-th column is the temporal activation pattern The two matrices Lp and Ld have dimensions n × p and for the i-th discovered pickup region (i.e. i-th column n×d, respectively. Each column of Lp is a latent group- of Lp ). The matrix Td can be interpreted similarly for ing of pickup locations, referred to as a pickup region the dropoff regions. β is a tuning parameter that allows (i.e. a node in Problem 1.1). The columns of Ld can tradeoff between the fit in the aggregated spatial pickupbe interpreted similarly as latent dropoff regions. The dropoff information S and the fit in the observed spatioentries in the p × d core matrix Cs gives the strengths of temporal information for both the pickup and dropoff. the couplings between these pickup and dropoff regions Note that these terms share common factor matrices and are hence coupled, requiring the spatial patterns (i.e. edges in Problem 1.1). and temporal patterns to be related. T 2 minimize ||S − Lp Cs Ld ||F (3.1) Lp ,Ld ,Cs ≥0 3.3 Enforcing Diversity Constraints It is not too The typical NMF formulation (without the core Cs ) surprising to discover spatial regions that overlap sigcan be viewed as (soft) clustering both the rows and nificantly given the nature of taxi trips in cities such as the columns simultaneously [5]. In our case the spatial San Francisco (as in our experiment). However, we are matrix S is constructed from empirically observed data often interested in an alternative explanation where the and is not an actual similarity matrix, e.g. S(j, i) 6= regions are distinct even if they covered less total trips. S(i, j). S is unlikely to be positive definite in practice, To do so, we enforce constraints of the following form either. Under such circumstances, the presence of the to encourage diversity among the regions. core matrix Cs can “absorb” the indefiniteness of S and (3.3) for each k and for i 6= j, Lp (k, i)Lp (k, j) ≤  additionally serve as a diagnostics of how well separated the clusters are by examining how close Cs is to a The constraints in inequality (3.3) prevent any pair of diagonal matrix [5]. regions (indexed by i, j) both having large values in any single modeled location (indexed by k above). Note that 3.2 Time Variant Migration Here we build upon inequality (3.3) is similar to the relaxed orthogonality our earlier formulation but now attempt to simultane- constraint (i.e. Lp (:, i)T Lp (:, j) ≤ ) but we enforce ously capture the temporal variation patterns. Such the more restrictive entry-wise constraints in the hope a temporal activation pattern indicates at what times of more interpretable discovery as well as easier optiduring the observed period is the associated migration mization with our algorithm. However such constraints most active and can be interpreted as a histogram. To alone are not useful because the objective is invariant this end we further define two matrices; let P be the to scalings of multiple variables at the same time. For n × t matrix where each row corresponds to a modeled example constraints such as (3.3) can be trivially satlocation and each column is one time step (i.e. small- isfied, without changing the objective value, by replacest modeled unit of time). Each entry P (i, j) records ing any unconstrained solution {Lp , Ld , Cs , Tp , Td } with 1 Lp , Ld , mCs , mTp , Td } where m is a sufficiently large the number of trips whose pickups occur at location i { m at time j. Essentially P is a location by time matrix scalar constant. To avoid such scaling issue we also need recording the pickup behavior. Similarly another n × t to constrain the magnitudes of other variables at the matrix representing the dropoff information is defined same time. We adopt the similar constraints as in [17]

that was used to deal with a similar scaling bias issue. Specifically we add in the following (entry-wise) constraints Lp ≤ 1, Ld ≤ 1 and Cs ≤ maxi,j S(i, j). The upper bound on Lp and Ld makes the choices of  in inequality (3.3) more apparent;  ≤ 1 should be used where a smaller  enforces stricter diversity and  = 1 essentially puts no constraints. The upper bound on Cs avoids the scaling issue before since the weights cannot be absorbed by the core to arbitrarily scale down Lp and Ld . The constrained optimization problem is as follows (3.4) minimize ||S − Lp Cs LTd ||2F + β(||P − Lp TpT ||2F

The coverage of k quadruplets of spatio-temporal factors can be computed similarly by changing the numerator in (3.5) to be the number of trips covered by either one or more of the k quadruplets. Coverage is used as a criterion in the selection of parameters in our experiments.

3.5 Extracting Traffic Flow The temporal patterns from formulations (3.2) and (3.4) are associated only with the corresponding pickup and dropoff locations and not necessarily with the trips themselves. Here we discuss how to discover temporal activation patterns with the migrations from each pickup and dropoff T 2 + ||D − Ld Td ||F ) region pair. One possible way might be to impose constraints such that the differences between Tp and Td subject to 0 ≤ Lp ≤ 1, 0 ≤ Ld ≤ 1, Tp ≥ 0, Td ≥ 0 model some typical travel times. Imposing such constraints however will significantly complicate the prob0 ≤ Cs ≤ max S(i, j) i,j lem and the resulting model would lose more general Lp (k, i)Lp (k, j) ≤  ∀k, ∀i 6= j spatial regions that could have been discovered in the current formulation. Accordingly we adopt the straightLd (k, i)Ld (k, j) ≤  ∀k, ∀i 6= j forward postprocessing as follows. We simply scan 3.4 Measuring Quality of the Results A natural through all trips and identify the ones whose pickup way to measure the quality of our resulting simplified location and dropoff location fall into the given (threshmodel is to measure the portion of the original trips that olded) pickup and dropoff regions, respectively. The number of such trips can then be plotted against their are covered by the factors as defined below. respective times into this migration’s temporal pattern Definition 1. Let w be a trip with origin location i at as shown in Figure 2 (top). time a and destination location j at time b. We say a quadruplet of a pickup region lp ∈ Rn , a dropoff region 4 Algorithms ld ∈ Rn , a pickup temporal factor up ∈ Rt and a dropoff 4.1 Alternating Nonnegative Least Squares We temporal factor ud ∈ Rt cover w if lp (i) > 0, ld (j) > 0, first describe the algorithm for the unconstrained forup (a) > 0 and ud (b) > 0. mulation (3.2). These kinds of objectives are known to A practical difficulty involved in using this coverage, be non-convex. Thus solving for the global optimum however, is that a region typically contains many posi- is intractable in general and most algorithms attempt tive entries, of which only a very small number of them to find only local optima. This objective is, however, are of significant magnitudes to be considered inter- characterized by its block multi-convexity, meaning solvesting. Here we introduce a method to overcome this ing for each subset of variables (i.e. a block) while fixsituation such that the resulting regions have smaller ing all other variables constant results in convex subsupports of much more interest. We use this approach problems [24]. Consequently we employ a particular instead of enforcing sparsity-inducing constraints which type of block coordinate descent algorithm, known as can complicate the formulation and lead to additional the alternating nonnegative least squares (ANLS), an parameter tuning. First we normalize the region under extension to the widely used standard alternating least consideration, say lp , to unit `2 norm. If the weights in squares (ALS) with nonnegativity constraints [12]. We n locations were to be dispensed uniformly, each entry summarize the ANLS scheme for formulation (3.2) in p 1/n since ||lp ||2 = 1. Accord- Algorithm 1. in lp would have value p ingly we use 1/n as the normalized ( a threshold to p 4.2 Coordinate Descent for the Constrained 0 if l (i) < 1/n p lp , and define ˆlp (i) = . We can Formulation Here we present a coordinate descent lp (i) otherwise scheme to solve the constrained formulation (3.4) in similarly threshold the corresponding paired ˆld , u ˆp and particular since incorporating the constraints (3.3) into least squares solvers often result in rather slow solvers u ˆd and then compute the coverage of (ˆlp , ˆld , up , ud ) as (e.g. lsqlin in Matlab). The essence is the update Number of trips covered by (ˆlp , ˆld , u ˆp , u ˆd ) (3.5) Total number of trips in the data set

1 2 3

4 5

Input: S, P, D, β Output: Lp , Ld , Cs , Tp , Td Initialize Lp , Ld , Cs , Tp , Td with random nonnegative; while stopping criterion not   met do  T  T S L d Cs Lp ← arg min|| √ LTp − √ T ||2F ; βTp βP Lp ≥0     S L p Cs T ||2F ; Ld − √ Ld ← arg min|| √ βTd βDT Ld ≥0 Cs ← arg min||(Ld ⊗ Lp )vec(Cs ) − vec(S)||22 ; Cs ≥0

6

Tp ← arg min||Lp TpT − P ||2F ;

7

Td ← arg min||Ld TdT − D||2F ;

Tp ≥0 Td ≥0

Algorithm 1: Alternating nonnegative least squares method (ANLS) for formulation (3.2). ⊗ denotes the Kronecker product and vec(·) is the vectorization of a matrix.

1 2 3

Input: B, A,  Output: X for k ← 1, . . . , num of rows(B) do if k = 1 then T ˆ ←B−P B r6=1 A(:, r)X(:, r) ;

5

else ˆ←B ˆ + A(:, k − 1)X(:, k − 1)T − A(:, k)X(: B T , k) ;

6

x←

7

x ← max {x, 0}; n x ← minr6=k x, 1,

4

8

ˆ T A(:,k) B ; A(:,k)T A(:,k)

 X(:,r)

(Block) coordinate descent method is also known to converge to a stationary point under rather mild conditions [2]. The complexity for both algorithms is linear to the dimensions of the matrices. The coordinate descent method solves simpler sub-problems than ANLS but with a much larger total number of sub-problems. In practice, however, the existing least squares solver used in our implementation better exploits the matrix structures and can be much faster than the coordinate descent steps. A single decomposition (i.e. one parameter setting) of our experimental data takes ∼ 15 minutes for the unconstrained case and a few hours for the constrained case on a 2.10 GHz core. 5 Empirical Results Here we empirically evaluate our approach on a data set of taxi traces from the cabspotting project1 [18]. The data set contains GPS traces for each Yellowcab taxi at rather different time intervals depending on the device settings and the signal strengths in different geographical areas. We briefly describe the data set in section 5.1. Afterwards we explain our choice of parameters wherever applicable and discuss the results of our experiments (sections 5.2 and 5.3). Our objective is to summarize the trips in a high level interpretable and actionable movement network; therefore we visualize our results and along the way point out the significance of the findings. All of our codes are made available to replicate our results2 .

o ;

5.1 Data Setup The raw data set contains reported latitude, longitude, time, and whether a customer is on Algorithm 2: Coordinate descent update for the board or not for each taxi in non-uniform intervals rangconstrained sub-problem (4.6). ing from 10’s seconds to 10’s minutes. Such information is recorded for each of the 536 Yellowcab’s taxis in San Francisco area in May 2008 for approximately 24 conprocedure in solving the following constrained problem secutive days. Our overall collection of trip records are simply concatenations of the extracted trip records from minimize ||B − AX T ||2F 0≤X≤1 each taxi and the total number of trips in our experi(4.6) ment is 432557. We refer the readers to Supplemensubject to X(k, i)X(k, j) ≤  ∀k, ∀i 6= j tary Materials for the extraction of trip records from which corresponds to lines 3 and 4 in Algorithm 1 with the raw data and the discretization of spatial and temthe diversity constraints introduced in equation (3.3). poral dimensions2 . In our discretized model, the dimenAlgorithm 2 summarizes this procedure. Due to the sions n and t, associated with matrices S, P , and D, are page limit, we refer the readers to Supplementary Ma- 6320 and 34518, respectively. In other words, our model terials for the algorithm derivations and some imple- includes 6320 distinct locations and 34518 time steps. mentation details2 . Both algorithms solve sub-problems optimally and 5.2 Coverage of the Discovered Factors We thus the objective value is guaranteed to decrease mono- compare the results of a decomposition with 10 pairs of tonically over iterations. This monotonicity permits a pickup and dropoff regions (i.e. the core size 10 × 10) of simple and commonly used stopping criterion which occurs when the (relative) change in the objective value 1 Data set is downloadable at http://crawdad.org/epfl/ between two successive iterations is small enough. We mobility/ after registration. 2 http://kuo.idav.ucdavis.edu adopt this stopping criterion in our implementation. 9

X(:, k) ← x;

our time invariant model (3.1) to the results of kmeans with k = 10 and fuzzy cmeans with the exponent weight set to 2 (following suggestion from [16]) using only the spatial attributes. For our approach we select the top 10 pairs of pickup and dropoff regions as indicated by the 10 largest entries in the core Cs after Lp and Ld are column-wise normalized with weights being absorbed into Cs . On the other hand the results of kmeans and fuzzy cmeans each consist of 10 centroids where each centroid is a pair of pickup location and dropoff location. We consider the rectangular region around a centroid such that this region size is the same as the average size of the pickup and dropoff regions from our approach. We run each method 10 times and choose the one with the smallest objective values for all three methods, and compute the coverage by these 10 pairs of regions using (3.5). The coverages are 91.5% for our approach, 82.4% for kmeans and 82.2% for fuzzy cmeans. In this case the centroid regions from both kmeans and fuzzy cmeans capture reasonably large portion of the actual trips primarily because we have left out the temporal aspect of the data. Here we perform similar experiments as above using our time variant formulation (3.2) and compare the results with kmeans and fuzzy cmeans on both spatial and temporal attributes. For the choice of parameter β, we test a range of values and use coverage as a selection criterion. The coverage varies only slightly with β from 1 to 5 and become much worse when β is set beyond 10. The result with β = 4 turns out the best in our tests. Again we solve our model (3.2) with a 10 × 10 core and run kmeans and fuzzy cmeans with 10 clusters each for 10 times, and compare the best result from each method. The top 10 quadruplets of factors from our approach has a total coverage of 36.2% whereas kmeans covers merely 0.2% of all trips with fuzzy cmeans marginally better at 0.8%. The poor results of kmeans and fuzzy cmeans are not surprising since the centroids are meant to cover points in proximity and such flat contiguous temporal intervals (temporal parts in the centroids) are not expected to capture the temporal patterns of the occurrences of the trips.

the support. The effects of the diversity constraints are more pronounced in the pickup regions as we can see that the light dots in different regions cover quite different geographical areas. Further notice the presence of the light dots located at the San Francisco Airport (leftmost pickup and middle right dropoff) and the Oakland Airport (middle right dropoff). These well illustrate the advantages of allowing arbitrarily shaped regions. For the clarity of presentation, we only show the partial temporal factors corresponding to the first 7 days. The daily patterns can be identified in all temporal factors and the differences in daily peaks and shapes may help better analyze the movement patterns between holidays and non-holidays, etc. Figure 2 shows the temporal patterns associated with the movements (top) as well as the temporal patterns associated with the regions (next to each region).

6 Conclusion and Future Work In this paper we study the problem of simplifying spatiotemporal trip event data into a high level summary, where only the origin and destination information of a trip is used. Such data typically consists of 100,000’s of trips and we wish to find general movement patterns that summarize the data succinctly. The target application in this work is a data set of taxi traces in San Francisco which we preprocess to obtain trip records with start location/time and end location/time. We formulate the movement network problem as a constrained coupled matrix factorization and develop a coordinate descent algorithm to solve it. The resulting factors from the decomposition can be naturally interpreted in our context as pickup and dropoff regions of interest, along with temporal activation patterns for each of them. Strong points of our work over methods built around partitional algorithms such as kmeans include that ours can find arbitrarily shaped regions, arbitrarily shaped trip activation patterns and arbitrary coupling among the regions. In addition, we describe how to employ postprocessing steps, including thresholding and measuring coverage, to allow better interpretation and comparison of qualities to other approaches. Our empirical validation supports our claims above. Our 5.3 Visualizing the Extracted spatio-temporal formulations as a coupled decomposition can naturally Network Here we show a result of our formulation be extended to address a variety of interesting situawith diversity constraints (3.4). The choice of  is more tions with additional matrices coupled in the objective user-oriented, dependent upon how diverse the users to capture behavior. Examples include multi-step trips want in the resulting regions. One simple strategy is to and even finding the commonalities and differences exsolve the unconstrained model first and select  based istent in trip data over a given period. on the extent to which the constraints are violated. Figure 2 shows some partial results of the constrained Acknowledgments model (3.4) with a 10 × 10 core, β = 4 and  = 0.07. The authors gratefully acknowledge support of this Note that within each region, the locations are still research via ONR grant N00014-11-1-0108 and NSF weighted and thus we show the heatmaps instead of just

Migration from pickup factor 7 to dropoff factor 3

Migration from pickup factor 2 to dropoff factor 2

Migration from pickup factor 5 to dropoff factor 1

8

Migration from pickup factor 8 to dropoff factor 9

11

16

20 18

7

16

6

10

14

12

8 7

5

12

10

6 4

10

8 5

8

3

6

6

4 3

2

4

4

2 1

2 0

14

9

200

400

600

800 Minutes

1000

1200

1400

0

2

1 200

400

(a)

600

800 Minutes

1000

1200

1400

0

200

400

(b)

Pickup temporal factor 7

600

800 Minutes

1000

1200

1400

0

200

400

(c)

Pickup temporal factor 2

600

800 Minutes

1000

1200

1400

(d)

Pickup temporal factor 5

Pickup temporal factor 8 4

12

7

3.5 20

6

5

15

10

3

8

2.5

4

2 6 10

3

1.5 4

2

1 5 2

1

0

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

0.5

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

1000

2000

3000

4000

c.

5000 6000 Minutes

7000

8000

9000 10000

8000

9000 10000

d.

b. a.

Dropoff temporal factor 3

Dropoff temporal factor 1

Dropoff temporal factor 2

Dropoff temporal factor 9 4.5

12

12

10

4 10

10

8

3.5 3

8

8 6

2.5

6

6

2

4 4

1.5

4

1

2

2

2 0.5

0

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

1000

2000

3000

4000

5000 6000 Minutes

7000

8000

9000 10000

0

1000

2000

3000

4000

5000 6000 Minutes

7000

Figure 2: (Top: a-d) shows the temporal patterns associated with the correspondingly lettered migrations below; (Bottom) shows 4 pickup (spatio-temporal) factor pairs and 4 dropoff factor pairs; the left 2 correspond to the ones contributing the most to the reconstruction error of S (i.e. ||S − Lp Cs LTd ||2 ) while the right 2 are the ones contributing the least. The arrows in between show the movement patterns as indicated by the nonzero entries in the core; the thickness of the arrows is proportional to the respective weights. The letters next to the arrows are referenced to by the subfigures (a-d).

Grant NSF IIS-1422218. References

[15]

[16] [1] G. Andrienko, N. Andrienko, S. Rinzivillo, M. Nanni, D. Pedreschi, and F. Giannotti. Interactive visual clustering of large collections of trajectories. In Visual Analytics Science and Technology, 2009. VAST 2009. IEEE Symposium on, pages 3–10, 2009. [2] Dimitri P. Bertsekas. Nonlinear Programming. Athena Scientific, 2nd edition, September 1999. [3] James C Bezdek, Robert Ehrlich, and William Full. Fcm: The fuzzy c-means clustering algorithm. Computers & Geosciences, 10(2):191–203, 1984. [4] Chi-Yin Chow and Mohamed F. Mokbel. Trajectory privacy in location-based services and data publication. SIGKDD Explor. Newsl., 13(1):19–29, 2011. [5] Chris HQ Ding, Xiaofeng He, and Horst D Simon. On the equivalence of nonnegative matrix factorization and spectral clustering. In SDM, volume 5, pages 606–610. SIAM, 2005. [6] Michael R. Evans, Dev Oliver, Shashi Shekhar, and Francis Harvey. Summarizing trajectories into kprimary corridors: A summary of results. In Proceedings of the 20th International Conference on Advances in Geographic Information Systems, pages 454– 457, 2012. [7] Alireza Fathi and John Krumm. Detecting road intersections from gps traces. In Proceedings of the 6th International Conference on Geographic Information Science, pages 56–69, 2010. [8] Fosca Giannotti, Mirco Nanni, Dino Pedreschi, Fabio Pinelli, Chiara Renso, Salvatore Rinzivillo, and Roberto Trasarti. Mobility data mining: discovering movement patterns from trajectory data. In Computational Transportation Science, pages 7–10, 2010. [9] Fosca Giannotti, Mirco Nanni, Fabio Pinelli, and Dino Pedreschi. Trajectory pattern mining. In Proceedings of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 330– 339, 2007. [10] Fosca Giannotti and Dino Pedreschi, editors. Mobility, Data Mining and Privacy - Geographic Knowledge Discovery. 2008. [11] Yufei Han and Fabien Moutarde. Analysis of largescale traffic dynamics using non-negative tensor factorization. CoRR, abs/1212.4675, 2012. [12] Tamara G. Kolda and Brett W. Bader. Tensor decompositions and applications. SIAM Review, 51(3):455– 500, September 2009. [13] John Krumm and Eric Horvitz. Predestination: Inferring destinations from partial trajectories. In Proceedings of the 8th International Conference on Ubiquitous Computing, UbiComp’06, pages 243–260, 2006. [14] James MacQueen et al. Some methods for classification and analysis of multivariate observations. In Proceedings of the fifth Berkeley symposium on mathematical

[17]

[18]

[19] [20]

[21]

[22]

[23]

[24]

[25]

[26]

[27]

statistics and probability, volume 1, page 14. California, USA, 1967. Mirco Nanni and Dino Pedreschi. Time-focused clustering of trajectories of moving objects. J. Intell. Inf. Syst., 27(3):267–289, 2006. Nikhil R Pal and James C Bezdek. On cluster validity for the fuzzy c-means model. Fuzzy Systems, IEEE Transactions on, 3(3):370–379, 1995. E.E. Papalexakis, N.D. Sidiropoulos, and R. Bro. From k-means to higher-way co-clustering: Multilinear decomposition with sparse latent factors. Signal Processing, IEEE Transactions on, 61(2):493–506, 2013. Michal Piorkowski, Natasa Sarafijanovic-Djukic, and Matthias Grossglauser. CRAWDAD data set epfl/mobility (v. 2009-02-24). Downloaded from http://crawdad.org/epfl/mobility/, February 2009. Share my route. http://www.sharemyroutes.com, 2012. Blake Shaw, Jon Shea, Siddhartha Sinha, and Andrew Hogue. Learning to rank for spatiotemporal search. In Proceedings of the Sixth ACM International Conference on Web Search and Data Mining, pages 717–726, 2013. Yanan Sun, V.P. Janeja, M.P. Mcguire, and A. Gangopadhyay. Tnet: Tensor-based neighborhood discovery in traffic networks. In Data Engineering Workshops (ICDEW), 2012 IEEE 28th International Conference on, pages 331–336, April 2012. Marcos R. Vieira, Petko Bakalov, and Vassilis J. Tsotras. On-line discovery of flock patterns in spatiotemporal data. In Proceedings of the 17th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems, pages 286–295, 2009. Y. Wang, Y. Zheng and Y. Xue. Travel time estimation of a path using sparse trajectories. In Proceedings of KDD’14, 2014. Yangyang Xu and Wotao Yin. A block coordinate descent method for multi-convex optimization with applications to nonnegative tensor factorization and completion. Technical report, DTIC Document, 2012. Andy Yuan Xue, Rui Zhang, Yu Zheng, Xing Xie, Jin Huang, and Zhenghua Xu. Destination prediction by sub-trajectory synthesis and privacy protection against such prediction. In Proceedings of the 2013 IEEE International Conference on Data Engineering (ICDE 2013), pages 254–265, 2013. Daqing Zhang, Nan Li, Zhi-Hua Zhou, Chao Chen, Lin Sun, and Shijian Li. ibat: Detecting anomalous taxi trajectories from gps traces. In Proceedings of the 13th International Conference on Ubiquitous Computing, pages 99–108, 2011. Yu Zheng, Lizhu Zhang, Xing Xie, and Wei-Ying Ma. Mining interesting locations and travel sequences from gps trajectories. In Proceedings of the 18th International Conference on World Wide Web, pages 791–800, 2009.

A Framework for Simplifying Trip Data into Networks via Coupled ...

simultaneously cluster locations and times based on the associated .... In the context of social media ... arrival-type events (e.g. Foursquare check-in data [20]).

2MB Sizes 0 Downloads 217 Views

Recommend Documents

A Framework for Minimal Clustering Modification via ...
1https://sites.google.com/site/ .... We experiment with two real world data sets (social network ... ten found clustering simply puts most instances in one clus-.

A Scheduling Framework for UWB & Cellular Networks - Springer Link
Dec 9, 2005 - C 2005 Springer Science + Business Media, Inc. Manufactured in The ... The max-min fair scheduling problem in wireless ad-hoc networks is a ...

Scale-Free Networks Provide a Unifying Framework for ...
Aug 26, 2005 - We study the evolution of cooperation in the framework of evolutionary game theory, ... P>S. As a result, in a single round of the PD it is best.

Efficient data structure for representing and simplifying ...
minimal simplices in the set difference Flag(G) \ K. We call these minimal ... bert [GH97] proposed an elegant way of prioritizing edge contractions for surface ...... ings of the 24th annual conference on Computer graphics and interactive ...

A Framework for Access Methods for Versioned Data
3. ,d. 3. > version v. 3 branch b. 2 branch b. 1 time. Key space v. 1 v. 3 k. 1 k. 2 k. 3 now d. 1 ..... (current_version, ∅) (we call restricted-key split). • Pure key splits ...

A Framework for Access Methods for Versioned Data
sentation of a record can be made using start version of the version range ... Many applications such as medical records databases and banking require his-.

Designing with data: A framework for the design professional
Products become tools that deliver a complete experience within a complex system for the user. How can a designer stay relevant in this process, where users have the ... 2. Generative: Create design opportunities. 3. Evaluative: Further development o

SDAFT: A Novel Scalable Data Access Framework for ...
becomes too heavy to move in the network in today's big data era. In this paper, we develop a Scalable Data Access Frame- work (SDAFT) to solve the problem.

a simulation framework for energy efficient data grids
ing a data grid that can conserve energy for data-intensive ... Figure 1: A system architecture for data grids. 1418 .... distributed memory multiprocessors.

A Java Framework for Mobile Data Synchronization
file systems, availability is more important than serializability. .... accumulate a list of newly inserted objects, and listen for completion of the receiving phase to ...

SilkRoute: A Framework for Publishing Relational Data in XML
To implement the SilkRoute framework, this work makes two key technical ... for selecting a good decomposition plan; the algorithm takes as input estimates of query and data ...... else . Fig. ...... nationkey CHAR(10), phone CHAR(10)).

SilkRoute: A Framework for Publishing Relational Data in XML
virtual XML view over the canonical XML view; and an application formulates an ... supported by the NSF CAREER Grant 0092955, a gift from Microsoft, and ... serialization format, a network message format, and most importantly, a uni-.

FEDC: A Framework for Field Ecological Data ...
of these projects use data grid technology to transmit and manage the data, such ... data mining and mathematical methods to do some data analysis, so that the ...

Sailfish: A Framework For Large Scale Data Processing
... data intensive computing has become ubiquitous at Internet companies of all sizes, ... by using parallel dataflow graph frameworks such as Map-Reduce [10], ... Our Sailfish implementation and the other software components developed as ...

A Proposed Framework for Proposed Framework for ...
approach helps to predict QoS ranking of a set of cloud services. ...... Guarantee in Cloud Systems” International Journal of Grid and Distributed Computing Vol.3 ...

An Online Prediction Framework for Sensor Networks
Keywords: Wireless Sensor Networks, Data. Gathering ... These algorithms use in-network data aggregation ..... W. Hong, "TAG: a Tiny AGgregation Service.

Data Mining Using Neural Networks: A Guide for ...
network models and statistical models are related to tackle the data analysis real problem. The book is organized as follows: some basics on artificial neural ...

Synchronization in Electrically Coupled Neural Networks
Department of Electrical and Computer Engineering, ... cessing occurs in real nervous systems. ... of network dynamics is the choice of neural coupling [1].

sla framework for enriched experience networks using ...
between a customer and a service provider that specifies the forwarding service a .... Protocol (BGP) [10] attributes, the Internet Open Trading. Protocol (IOTP) ...