Skip to main content
Log in

One-pass trajectory simplification using the synchronous Euclidean distance

  • Regular Paper
  • Published:
The VLDB Journal Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27
Fig. 28
Fig. 29

Similar content being viewed by others

References

  1. Cao, H., Wolfson, O., Trajcevski, G.: Spatio-temporal data reduction with deterministic error bounds. VLDBJ 15(3), 211–228 (2006)

    Article  Google Scholar 

  2. 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)

    Article  Google Scholar 

  3. 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)

  4. 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)

    Article  MathSciNet  Google Scholar 

  5. Civilis, A., Jensen, C.S., Pakalnis, S.: Techniques for efficient road-network-based tracking of moving objects. TKDE 17(5), 698–712 (2005)

    Google Scholar 

  6. 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)

    Article  Google Scholar 

  7. Dunham, J.G.: Piecewise linear approximation of planar curves. PAMI 8, 9–67 (1986)

    Google Scholar 

  8. Gotsman, R., Kanza, Y.: A dilution-matching-encoding compaction of trajectories over road networks. GeoInformatica 19(2), 331–3364 (2015)

    Article  Google Scholar 

  9. Han, Y., Sun, W., Zheng, B.: Compress: a comprehensive framework of trajectory compression in road networks. TODS 42(2), 11:1–11:9 (2017)

    Article  MathSciNet  Google Scholar 

  10. Heckbert, P.S., Garland, M.: Survey of polygonal surface simplification algorithms. In: SIGGRAPH (1997)

  11. Hershberger, J., Snoeyink, J.: Speeding up the Douglas–Peucker line-simplification algorithm. Technical Report, University of British Columbia (1992)

  12. 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)

    Article  Google Scholar 

  13. Imai, H., Iri, M.: Computational-geometric methods for polygonal approximations of a curve. Comput. Vis. Graph. Image Process. 36, 31–41 (1986)

    Article  Google Scholar 

  14. Lin, X., Ma, S., Zhang, H., Wo, T., Huai, J.: One-pass error bounded trajectory simplification. PVLDB 10(7), 841–852 (2017)

    Google Scholar 

  15. 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)

  16. 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)

    Article  Google Scholar 

  17. Long, C., Wong, R.C.-W., Jagadish, H.: Direction-preserving trajectory simplification. PVLDB 6(10), 949–960 (2013)

    Google Scholar 

  18. Melkman, A., O’Rourke, J.: On polygonal chain approximation. Mach. Intell. Pattern Recognit. 6, 87–95 (1988)

    Article  MathSciNet  Google Scholar 

  19. Meratnia, N., de By, R.A.: Spatiotemporal compression techniques for moving point objects. In: EDBT (2004)

    Chapter  Google Scholar 

  20. Metha, R., Mehta, V.K.: The Principles of Physics. S Chand, New Delhi (1999)

    Google Scholar 

  21. Mopsi routes 2014. http://cs.uef.fi/mopsi/routes/dataset/. Accessed 29 Nov 2017

  22. Muckell, J., Hwang, J.-H., Lawson, C.T., Ravi, S.S.: Algorithms for compressing gps trajectory data: an empirical evaluation. In: ACM-GIS (2010)

  23. 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)

    Article  Google Scholar 

  24. Nibali, A., He, Z.: Trajic: an effective compression system for trajectory data. TKDE 27(11), 3138–3151 (2015)

    Google Scholar 

  25. 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)

    Article  Google Scholar 

  26. Pavlidis, T., Horowitz, S.L.: Segmentation of plane curves. IEEE Trans. Comput. 23(8), 860–870 (1974)

    Article  MathSciNet  Google Scholar 

  27. Pfoser, D., Jensen, C.S.: Capturing the uncertainty of moving-object representations. In: SSD (1999)

    Chapter  Google Scholar 

  28. Popa, I.S., Zeitouni, K., Oria, V., Kharrat, A.: Spatio-temporal compression of trajectories in road networks. GeoInformatica 19(1), 117–145 (2014)

    Article  Google Scholar 

  29. Potamias, M., Patroumpas, K., Sellis, T.K.: Sampling trajectory streams with spatiotemporal criteria. In: SSDBM (2006)

  30. Ramer, U.: An iterative procedure for the polygonal approximation of plane curves. Comput. Graph. Image Process. 1, 244–256 (1972)

    Article  Google Scholar 

  31. Reumann, K., Witkam, A.: Optimizing curve segmentation in computer graphics. In: International Computing Symposium (1974)

  32. 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)

    Google Scholar 

  33. Schmid, F., Richter, K., Laube, P.: Semantic trajectory compression. In: SSTD, pp. 411–416 (2009)

  34. Shamos, M.I., Dan, H.: Geometric intersection problems. In: Symposium on Foundations of Computer Science, pp. 208–215 (1976)

  35. Shi, W., Cheung, C.: Performance evaluation of line simplification algorithms for vector generalization. Cartogr. J. 43(1), 27–44 (2006)

    Article  Google Scholar 

  36. Sklansky, J., Gonzalez, V.: Fast polygonal approximation of digitized curves. Pattern Recognit. 12, 327–331 (1980)

    Article  Google Scholar 

  37. Song, R., Sun, W., Zheng, B., Zheng, Y.: Press: a novel framework of trajectory compression in road networks. PVLDB 7(9), 661–672 (2014)

    Google Scholar 

  38. Toussaint, G.T.: On the complexity of approximating polygonal curves in the plane. In: International Symposium on Robotics and Automation (IASTED) (1985)

  39. 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)

  40. Williams, C.M.: An efficient algorithm for the piecewise linear approximation of planar curves. Comput. Graph. Image Process. 8, 286–293 (1978)

    Article  Google Scholar 

  41. 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)

    Google Scholar 

  42. Zhao, Z., Saalfeld, A.: Linear-time sleeve-fitting polyline simplification algorithms. In: Proceedings of AutoCarto, pp. 214–223 (1997)

  43. 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)

    Google Scholar 

  44. 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)

Download references

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

Authors

Corresponding authors

Correspondence to Shuai Ma or Chunming Hu.

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

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00778-019-00575-8

Keywords

Navigation