Abstract
Various mobile devices have been used to collect, store and transmit tremendous trajectory data, and it is known that raw trajectory data seriously wastes the storage, network bandwidth and computing resource. To attack this issue, one-pass line simplification (\(\textsf {LS} \)) algorithms have been developed, by compressing data points in a trajectory to a set of continuous line segments. However, these algorithms adopt the perpendicular Euclidean distance, and none of them uses the synchronous Euclidean distance (\(\textsf {SED} \)), and cannot support spatiotemporal queries. To do this, we develop two one-pass error bounded trajectory simplification algorithms (\(\textsf {CISED} \)-\(\textsf {S} \) and \(\textsf {CISED} \)-\(\textsf {W} \)) using \(\textsf {SED} \), based on a novel spatiotemporal cone intersection technique. Using four real-life trajectory datasets, we experimentally show that our approaches are both efficient and effective. In terms of running time, algorithms \(\textsf {CISED} \)-\(\textsf {S} \) and \(\textsf {CISED} \)-\(\textsf {W} \) are on average 3 times faster than \(\textsf {SQUISH} \)-\(\textsf {E} \) (the fastest existing \(\textsf {LS} \) algorithm using \(\textsf {SED} \)). In terms of compression ratios, \(\textsf {CISED} \)-\(\textsf {S} \) is close to and \(\textsf {CISED} \)-\(\textsf {W} \) is on average \(19.6\%\) better than \(\textsf {DPSED} \) (the existing sub-optimal \(\textsf {LS} \) algorithm using \(\textsf {SED} \) and having the best compression ratios), and they are \(21.1\%\) and \(42.4\%\) better than \(\textsf {SQUISH} \)-\(\textsf {E} \) on average, respectively.
Similar content being viewed by others
References
Cao, H., Wolfson, O., Trajcevski, G.: Spatio-temporal data reduction with deterministic error bounds. VLDBJ 15(3), 211–228 (2006)
Chan, W., Chin, F.: Approximation of polygonal curves with minimum number of line segments or minimal error. Int. J. Comput. Geom. Appl. 6(1), 378–387 (1996)
Chen, Y., Jiang, K., Zheng, Y., Li, C., Yu, N.: Trajectory simplification method for location-based social networking services. In: LBSN, pp. 33–40 (2009)
Chen, M., Xu, M., Fränti, P.: A fast multiresolution polygonal approximation algorithm for GPS trajectory simplification. IEEE Trans. Image Process. 21(5), 2770–2785 (2012)
Civilis, A., Jensen, C.S., Pakalnis, S.: Techniques for efficient road-network-based tracking of moving objects. TKDE 17(5), 698–712 (2005)
Douglas, D.H., Peucker, T.K.: Algorithms for the reduction of the number of points required to represent a digitized line or its caricature. Can. Cartogr. 10(2), 112–122 (1973)
Dunham, J.G.: Piecewise linear approximation of planar curves. PAMI 8, 9–67 (1986)
Gotsman, R., Kanza, Y.: A dilution-matching-encoding compaction of trajectories over road networks. GeoInformatica 19(2), 331–3364 (2015)
Han, Y., Sun, W., Zheng, B.: Compress: a comprehensive framework of trajectory compression in road networks. TODS 42(2), 11:1–11:9 (2017)
Heckbert, P.S., Garland, M.: Survey of polygonal surface simplification algorithms. In: SIGGRAPH (1997)
Hershberger, J., Snoeyink, J.: Speeding up the Douglas–Peucker line-simplification algorithm. Technical Report, University of British Columbia (1992)
Hung, C.C., Peng, W., Lee, W.: Clustering and aggregating clues of trajectories for mining trajectory patterns and routes. VLDBJ 24(2), 169–192 (2015)
Imai, H., Iri, M.: Computational-geometric methods for polygonal approximations of a curve. Comput. Vis. Graph. Image Process. 36, 31–41 (1986)
Lin, X., Ma, S., Zhang, H., Wo, T., Huai, J.: One-pass error bounded trajectory simplification. PVLDB 10(7), 841–852 (2017)
Liu, J., Zhao, K., Sommer, P., Shang, S., Kusy, B., Jurdak, R.: Bounded quadrant system: Error-bounded trajectory compression on the go. In: ICDE (2015)
Liu, J., Zhao, K., Sommer, P., Shang, S., Kusy, B., Lee, J.-G., Jurdak, R.: A novel framework for online amnesic trajectory compression in resource-constrained environments. IEEE Trans. Knowl. Data Eng. 28(11), 2827–2841 (2016)
Long, C., Wong, R.C.-W., Jagadish, H.: Direction-preserving trajectory simplification. PVLDB 6(10), 949–960 (2013)
Melkman, A., O’Rourke, J.: On polygonal chain approximation. Mach. Intell. Pattern Recognit. 6, 87–95 (1988)
Meratnia, N., de By, R.A.: Spatiotemporal compression techniques for moving point objects. In: EDBT (2004)
Metha, R., Mehta, V.K.: The Principles of Physics. S Chand, New Delhi (1999)
Mopsi routes 2014. http://cs.uef.fi/mopsi/routes/dataset/. Accessed 29 Nov 2017
Muckell, J., Hwang, J.-H., Lawson, C.T., Ravi, S.S.: Algorithms for compressing gps trajectory data: an empirical evaluation. In: ACM-GIS (2010)
Muckell, J., Olsen, P.W., Hwang, J.-H., Lawson, C.T., Ravi, S.S.: Compression of trajectory data: a comprehensive evaluation and new approach. GeoInformatica 18(3), 435–460 (2014)
Nibali, A., He, Z.: Trajic: an effective compression system for trajectory data. TKDE 27(11), 3138–3151 (2015)
O’Rourke, J., Chien, C.B., Olson, T., Naddor, D.: A new linear algorithm for intersecting convex polygons. Comput. Graph. Image Process. 19(4), 384–391 (1982)
Pavlidis, T., Horowitz, S.L.: Segmentation of plane curves. IEEE Trans. Comput. 23(8), 860–870 (1974)
Pfoser, D., Jensen, C.S.: Capturing the uncertainty of moving-object representations. In: SSD (1999)
Popa, I.S., Zeitouni, K., Oria, V., Kharrat, A.: Spatio-temporal compression of trajectories in road networks. GeoInformatica 19(1), 117–145 (2014)
Potamias, M., Patroumpas, K., Sellis, T.K.: Sampling trajectory streams with spatiotemporal criteria. In: SSDBM (2006)
Ramer, U.: An iterative procedure for the polygonal approximation of plane curves. Comput. Graph. Image Process. 1, 244–256 (1972)
Reumann, K., Witkam, A.: Optimizing curve segmentation in computer graphics. In: International Computing Symposium (1974)
Richter, K.-F., Schmid, F., Laube, P.: Semantic trajectory compression: representing urban movement in a nutshell. J. Spat. Inf. Sci. 4(1), 3–30 (2012)
Schmid, F., Richter, K., Laube, P.: Semantic trajectory compression. In: SSTD, pp. 411–416 (2009)
Shamos, M.I., Dan, H.: Geometric intersection problems. In: Symposium on Foundations of Computer Science, pp. 208–215 (1976)
Shi, W., Cheung, C.: Performance evaluation of line simplification algorithms for vector generalization. Cartogr. J. 43(1), 27–44 (2006)
Sklansky, J., Gonzalez, V.: Fast polygonal approximation of digitized curves. Pattern Recognit. 12, 327–331 (1980)
Song, R., Sun, W., Zheng, B., Zheng, Y.: Press: a novel framework of trajectory compression in road networks. PVLDB 7(9), 661–672 (2014)
Toussaint, G.T.: On the complexity of approximating polygonal curves in the plane. In: International Symposium on Robotics and Automation (IASTED) (1985)
Trajcevski, G., Cao, H., Scheuermanny, P., Wolfsonz, O., Vaccaro, D.: On-line data reduction and the quality of history in moving objects databases. In: MobiDE (2006)
Williams, C.M.: An efficient algorithm for the piecewise linear approximation of planar curves. Comput. Graph. Image Process. 8, 286–293 (1978)
Zhang, D., Ding, M., Yang, D., Liu, Y., Fan, J., Shen, H.T.: Trajectory simplification: an experimental study and quality analysis. PVLDB 9(11), 934–946 (2018)
Zhao, Z., Saalfeld, A.: Linear-time sleeve-fitting polyline simplification algorithms. In: Proceedings of AutoCarto, pp. 214–223 (1997)
Zheng, Y., Xie, X., Ma, W.: GeoLife: a collaborative social networking service among user, location and trajectory. IEEE Data Eng. Bull. 33(2), 32–39 (2010)
Züfle, A., Trajcevski, G., Pfoser, D., Renz, M., Rice, M.T., Leslie, T., Delamater, P.L., Emrich, T.: Handling uncertainty in geo-spatial data. In: ICDE (2017)
Acknowledgements
This work is supported in part by National Key R&D Program of China 2018YFB1700403, NSFC U1636210&61421003, Shenzhen Institute of Computing Sciences, and the Fundamental Research Funds for the Central Universities. Funding was provided by National Natural Science Foundation of China (Grant No. U1636210), 973 program (Grant No. 2014CB340300), Beijing Advanced Innovation Center for Big Data and Brain Computing.
Author information
Authors and Affiliations
Corresponding authors
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix: Proofs
Appendix: Proofs
Proof of Proposition 1
Let \(P'_{s+i}\) (\(i\in [1, k]\)) be the intersection point of line segment \(\overrightarrow{{ P_sQ}}\) and the plane \(P.t - P_{s+i}.t\) = 0. It suffices to show that the intersection point \(P'_{s+i}\) satisfies that (1) \(P'_{s+i}.t = P_{s+i}.t\), (2) \(P'_{s+i}.x\) = \(P_s.x + w\cdot (Q.x - P_s.x)\), and (3) \(P'_{s+i}.y\) = \(P_s.y + w\cdot (Q.y - P_s.y)\), where \(w= \frac{P'_{s+i}.t - P_{s}.t}{Q.t - P_{s}.t}= \frac{P_{s+i}.t-P_s.t}{Q.t-P_s.t}\). Hence, \(P'_{s+i}\) is indeed a synchronized point of \(P_{s+i}\)w.r.t.\(\overrightarrow{{ P_sQ}}\), and the distance \(|\overrightarrow{{ P_{s+i}P'_{s+i}}}|\) from \(P_{s+i}\) to \(P'_{s+i}\) is the synchronous distance of \(P_{s+i}\) to \(\overrightarrow{{ P_sQ}}\).
We assume first that \(\sqcap _{i=1}^{k}\)\(\mathcal {C}{(P_s, {\mathcal {O}}(P_{s+i}, \epsilon ))}\)\(\ne \{P_s\}\). Then, there must exist a point Q in the area of the synchronous circle \(\mathcal {O}{(P_{s+k}, \epsilon )}\) such that \(\overrightarrow{{ P_sQ}}\) passes through all the cones \(\mathcal {C}{(P_s, {\mathcal {O}}(P_{s+i}, \epsilon ))}\)\(i\in [1, k]\). Hence, \(Q.t = P_{s+k}.t\). We also have \(sed(P_{s+i}, \overrightarrow{{ P_sQ}}) = |\overrightarrow{{ P'_{s+i}P_{s+i}}}| \le \epsilon \) for each \(i \in [1, k]\) since \(P'_{s+i}\) is in the area of circle \(\mathcal {O}{(P_{s+i}, \epsilon )}\).
Conversely, assume that there exists a point Q such that \(Q.t = P_{s+k}.t\) and \(sed(P_{s+i}, \overrightarrow{{ P_sQ}})\le \epsilon \) for all \(P_{s+i}\) (\(i \in [1,k]\)). Then, \(|\overrightarrow{{ P'_{s+i}P_{s+i}}}| \le \epsilon \) for all \(i \in [1, k]\). Hence, we have \(\sqcap _{i=1}^{k}\)\(\mathcal {C}{(P_s, {\mathcal {O}}(P_{s+i}, \epsilon ))}\)\(\ne \{P_s\}\). \(\square \)
Proof of Proposition 2
By Proposition 1, it suffices to show that \(\sqcap _{i=1}^{k}\)\(\mathcal {O}^c{(P^c_{s+i}, r^c_{s+i})}\)\(\ne \emptyset \) if and only if \(\sqcap _{i=1}^{k}\)\(\mathcal {C}{(P_s, {\mathcal {O}}(P_{s+i}, \epsilon ))}\)\(\ne \{P_s\}\), which is obvious. Hence, we have the conclusion. \(\square \)
Proof of Proposition 3
We shall prove this by contradiction. Assume first that \({\mathcal {R}}^*_{l} \sqcap {\mathcal {R}}_{s+l+1}\) has more than m edges. Then, it must have two distinct edges \(\overrightarrow{{ A_i}}\) and \(\overrightarrow{{ A_{i'}}}\) with the same label j\((1\le j \le m)\), originally from \({\mathcal {R}}_{s+i}\) and \({\mathcal {R}}_{s+i'}\) (\(1\le i< i' \le l+1\)). Note that here \({\mathcal {R}}_{s+i} \sqcap {\mathcal {R}}_{s+i'} \ne \emptyset \) since \({\mathcal {R}}^*_l \sqcap {\mathcal {R}}_{s+l+1} \ne \emptyset \). However, when \({\mathcal {R}}_{s+i} \sqcap {\mathcal {R}}_{s+i'} \ne \emptyset \), the intersection \({\mathcal {R}}_{s+i} \sqcap {\mathcal {R}}_{s+i'}\) cannot have both edge \(\overrightarrow{{ A_i}}\) and edge \(\overrightarrow{{ A_{i'}}}\), as all edges with the same label are in parallel (or overlapping) with each other by the above definition of inscribed regular polygons. This contradicts with the assumption. \(\square \)
Proof of Proposition 4
The inscribed regular polygon \({\mathcal {R}}_{s+l+1}\) has m edges, and intersection polygon \({\mathcal {R}}^*_l\) has at most m edges by Proposition 3. As the intersection of two m-edges convex polygons can be computed in O(m) time [25], the intersection of polygons \({\mathcal {R}}^*_l\) and \({\mathcal {R}}_{s+l+1}\) can be done in O(1) time for a fixed m. \(\square \)
Proof of Proposition 5
If (\(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} \ne \emptyset \)and\(\overrightarrow{{ A}} \times \overrightarrow{{ B}} < 0\)and\(P_{e_A} \not \in {\mathcal {H}}(\overrightarrow{{ B}})\)) or (\(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} \ne \emptyset \)and\(\overrightarrow{{ A}} \times \overrightarrow{{ B}} \ge 0\)and\(P_{e_B} \in {\mathcal {H}}(\overrightarrow{{ A}})\)), then as all edges in the same edge group \(E^j\) (\(1\le j\le m\)) are in parallel with each other and by the geometric properties of regular polygon \({\mathcal {R}}_{s+k+1}\), it is easy to find that, for each position of \(\overrightarrow{{ A}}\) between its original to its opposite positions, we have (1) \(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} = \emptyset \), and (2) either \(P_{e_A} \not \in {\mathcal {H}}(\overrightarrow{{ B}})\) or \(P_{e_B} \in {\mathcal {H}}(\overrightarrow{{ A}})\). Hence, by the advance rule (1) of algorithm \(\textsf {CPolyInter} \) in Sect. 2.4, edge \(\overrightarrow{{ A}}\) is always moved forward until it reaches the opposite position of its original one. From this, we have the conclusion. \(\square \)
Proof of Proposition 6
If (\(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} \ne \emptyset \)and\(\overrightarrow{{ A}} \times \overrightarrow{{ B}} \ge 0\)and\(P_{e_B} \not \in {\mathcal {H}}(\overrightarrow{{ A}})\)) or (\(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} \ne \emptyset \)and\(\overrightarrow{{ A}} \times \overrightarrow{{ B}} < 0\)and\(P_{e_A} \in {\mathcal {H}}(\overrightarrow{{ B}})\)), then it is also easy to find that, for each position of \(\overrightarrow{{ B}}\) between its original to its target positions (i.e., the edge after the one having the same edge group as \(\overrightarrow{{ A}}\)), we have (1) \(\overrightarrow{{ A}} \sqcap \overrightarrow{{ B}} = \emptyset \), and (2) either \(P_{e_B} \not \in {\mathcal {H}}(\overrightarrow{{ A}})\) or \(P_{e_A} \in {\mathcal {H}}(\overrightarrow{{ B}})\). Hence, by the advance rule (2) of algorithm \(\textsf {CPolyInter} \) in Sect. 2.4, edge \(\overrightarrow{{ B}}\) is always moved forward until it reaches the target position. From this, we have the conclusion. \(\square \)
Proof of Proposition 8
If \(\sqcap _{i=s+1}^{e}{{\mathcal {C}}(P_s, P_{s+i}, \epsilon /2)} \ne \{P_s\}\), then by Proposition 1, there exists a point Q, \(Q.t = P_{s+k}.t\), such that \(sed(P_{s+i}, \overrightarrow{{ P_sQ}})\le \epsilon /2\) for all \(i \in [1,k]\). By the triangle inequality essentially, \(sed(P_{s+i}, \overrightarrow{{ P_sP_{s+k}}})\le sed(P_{s+i}, \overrightarrow{{ P_sQ}}) + |\overrightarrow{{ QP_{s+k}}}| \le \epsilon /2+\epsilon /2 = \epsilon \). \(\square \)
Proof of Proposition 9
By Proposition 2 and the nature of inscribed regular polygon, it is easy to find that for any point \(Q \in {\mathcal {R}}^*_k\)w.r.t. plane \(t_c=P_{s+k}.t\), there is \(sed(P_{s+i}, \overrightarrow{{ P_sQ}})\le \epsilon \) for all points \(P_{s+i}\) (\(i \in [1,k]\)). From this, we have the conclusion. \(\square \)
Rights and permissions
About this article
Cite this article
Lin, X., Jiang, J., Ma, S. et al. One-pass trajectory simplification using the synchronous Euclidean distance. The VLDB Journal 28, 897–921 (2019). https://doi.org/10.1007/s00778-019-00575-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00778-019-00575-8