Abstract
Define a static algorithm as an algorithm that computes some combinatorial property of its input consisting of static, i.e., non-moving, objects. In this paper, we describe a technique for syntactically transforming static algorithms into kinetic algorithms, which compute properties of moving objects. The technique offers capabilities for composing kinetic algorithms, for integrating dynamic and kinetic changes, and for ensuring robustness even with fixed-precision floating-point arithmetic. To evaluate the effectiveness of the approach, we implement a library for performing the transformation, transform a number of algorithms, and give an experimental evaluation. The results show that the technique performs well in practice.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Acar, U.A.: Self-Adjusting Computation. PhD thesis, Department of Computer Science, Carnegie Mellon University (May 2005)
Acar, U.A., Blelloch, G.E., Blume, M., Harper, R., Tangwongsan, K.: A library for self-adjusting computation. In: ACM SIGPLAN Workshop on ML (2005)
Acar, U.A., Blelloch, G.E., Blume, M., Tangwongsan, K.: An experimental analysis of self-adjusting computation. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (2006)
Acar, U.A., Blelloch, G.E., Harper, R.: Adaptive functional programming. In: Proceedings of the 29th Annual ACM Symposium on Principles of Programming Languages, pp. 247–259 (2002)
Acar, U.A., Blelloch, G.E., Harper, R.: Selective memoization. In: Proceedings of the 30th Annual ACM Symposium on Principles of Programming Languages (2003)
Acar, U.A., Blelloch, G.E., Harper, R., Vittes, J.L., Woo, M.: Dynamizing static algorithms with applications to dynamic trees and history independence. In: ACM-SIAM Symposium on Discrete Algorithms (SODA) (2004)
Acar, U.A., Blelloch, G.E., Tangwongsan, K., Vittes, J.L.: Kinetic algorithms via self-adjusting computation. Technical Report CMU-CS-06-115, Department of Computer Science, Carnegie Mellon University (March 2006)
Agarwal, P.K., Eppstein, D., Guibas, L.J., Henzinger, M.R.: Parametric and kinetic minimum spanning trees. In: Proceedings of the 39th Annual IEEE Symposium on Foundations of Computer Science, pp. 596–605 (1998)
Agarwal, P.K., Guibas, L.J., Hershberger, J., Veach, E.: Maintaining the extent of a moving set of points. Discrete and Computational Geometry 26(3), 353–374 (2001)
Alexandron, G., Kaplan, H., Sharir, M.: Kinetic and dynamic data structures for convex hulls and upper envelopes. In: Dehne, F., López-Ortiz, A., Sack, J.-R. (eds.) WADS 2005. LNCS, vol. 3608, pp. 269–281. Springer, Heidelberg (2005)
Barber, C.B., Dobkin, D.P., Huhdanpaa, H.: The quickhull algorithm for convex hulls. ACM Trans. Math. Softw. 22(4), 469–483 (1996)
Basch, J.: Kinetic Data Structures. PhD thesis, Department of Computer Science, Stanford University (June 1999)
Basch, J., Guibas, L.J., Hershberger, J.: Data structures for mobile data. Journal of Algorithms 31(1), 1–28 (1999)
Basch, J., Guibas, L.J., Silverstein, C.D., Zhang, L.: A practical evaluation of kinetic data structures. In: SCG 1997: Proceedings of the Thirteenth Annual Symposium on Computational Geometry, pp. 388–390. ACM Press, New York (1997)
Chan, T.M.: Optimal output-sensitive convex hull algorithms in two and three dimensions. Discrete and Computational Geometry 16, 361–368 (1996)
Graham, R.L.: An efficient algorithm for determining the convex hull of a finete planar set. Information Processing Letters 1, 132–133 (1972)
Guibas, L., Karaveles, M., Russel, D.: A computational framework for handling motion. In: Proceedings of teh Sixth Workshop on Algorithm Engineering and Experiments, pp. 129–141 (2004)
Guibas, L., Russel, D.: An empirical comparison of techniques for updating delaunay triangulations. In: SCG 2004: Proceedings of the Twentieth Annual Symposium on Computational Geometry, pp. 170–179. ACM Press, New York (2004)
Guibas, L.J., Karavelas, M.I.: Interval methods for kinetic simulations. In: SCG 1999: Proceedings of the Fifteenth Annual Symposium on Computational Geometry, pp. 255–264. ACM Press, New York (1999)
Preparata, F.P., Shamos, M.I.: Computational Geometry. Springer, Heidelberg (1985)
Shamos, M.I.: Computational Geometry. PhD thesis, Department of Computer Science, Yale University (1978)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Acar, U.A., Blelloch, G.E., Tangwongsan, K., Vittes, J.L. (2006). Kinetic Algorithms Via Self-adjusting Computation. In: Azar, Y., Erlebach, T. (eds) Algorithms – ESA 2006. ESA 2006. Lecture Notes in Computer Science, vol 4168. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11841036_57
Download citation
DOI: https://doi.org/10.1007/11841036_57
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-38875-3
Online ISBN: 978-3-540-38876-0
eBook Packages: Computer ScienceComputer Science (R0)