Algorithmica

, Volume 57, Issue 1, pp 62–73 | Cite as

A Universal Online Caching Algorithm Based on Pattern Matching

Article

Abstract

We present a universal algorithm for the classical online problem of caching or demand paging. We consider the caching problem when the page request sequence is drawn from an unknown probability distribution and the goal is to devise an efficient algorithm whose performance is close to the optimal online algorithm which has full knowledge of the underlying distribution. Most previous works have devised such algorithms for specific classes of distributions with the assumption that the algorithm has full knowledge of the source. In this paper, we present a universal and simple algorithm based on pattern matching for mixing sources (includes Markov sources). The expected performance of our algorithm is within 4+o(1) times the optimal online algorithm (which has full knowledge of the input model and can use unbounded resources).

Keywords

Online computation Caching Universal algorithm Stochastic model 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aho, A., Denning, P., Ullman, J.D.: Principles of optimal page replacement. J. Assoc. Comput. Mach. 18(1), 80–93 (1971) MATHMathSciNetGoogle Scholar
  2. 2.
    Algoet, P.: Universal schemes for prediction, gambling and portfolio selection. Ann. Probab. 20(2), 901–941 (1992) MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Cover, T.M., Thomas, J.A.: Elements of Information Theory. Wiley, New York (1991) MATHCrossRefGoogle Scholar
  4. 4.
    Curewitz, K., Krishnan, P., Vitter, J.S.: Practical prefetching via data compression. In: Proceedings of the ACM SIGMOD International Conference on Management of Data, pp. 257–266 (1993) Google Scholar
  5. 5.
    El Yaniv, R., Borodin, A.: Online Computation and Competitive Analysis. Cambridge University Press, Cambridge (1998) MATHGoogle Scholar
  6. 6.
    Feder, M., Merhav, N., Gutman, M.: Universal prediction of individual sequences. IEEE Trans. Inf. Theory 38, 1258–1270 (1992) MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Fiat, A., Karp, R.M., Luby, M., McGeoch, L.A., Sleator, D.D., Young, N.E.: On competitive algorithms for paging problems. J. Algorithms 12, 685–699 (1991) MATHCrossRefGoogle Scholar
  8. 8.
    Franaszek, P.A., Wagner, T.J.: Some distribution-free aspects of paging performance. J. Assoc. Comput. Mach. 21, 31–39 (1974) MATHMathSciNetGoogle Scholar
  9. 9.
    Gusfield, D.: Algorithms on Strings, Trees, and Sequences. Cambridge University Press, Cambridge (1997) MATHGoogle Scholar
  10. 10.
    Hannan, J.F.: Approximation to Bayes risk in repeated plays. In: Contributions to the Theory of Games. Annals of Mathematics Studies, vol. 3, pp. 97–139. Princeton Univ. Press, Princeton (1957) Google Scholar
  11. 11.
    Jacquet, P., Szpankowski, W., Apostol, I.: A universal predictor based on pattern matching. IEEE Trans. Inf. Theory 48(6), 1462–1472 (2002) MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Karlin, A.R., Phillips, S.J., Raghavan, P.: Markov paging. SIAM J. Comput. 30(3), 906–922 (2000) MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Lund, C., Phillips, S., Reingold, N.: Paging against a distribution and IP networking. J. Comput. Syst. Sci. 58, 222–231 (1999) MATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Merhav, N., Feder, M.: Universal prediction. IEEE Trans. Inf. Theory 44, 2124–2147 (1998) MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Merhav, N., Ordentlich, E., Seroussi, G., Weinberger, M.J.: On sequential strategies for loss functions with memory. IEEE Trans. Inf. Theory 48(7), 1947–1958 (2002) MATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Mitzenmacher, M., Upfal, E.: Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press, Cambridge (2005) MATHGoogle Scholar
  17. 17.
    Motwani, R., Raghavan, P.: Randomized Algorithms. Cambridge University Press, Cambridge (1995) MATHGoogle Scholar
  18. 18.
    Pandurangan, G., Upfal, E.: Entropy-based bounds for online algorithms. ACM Trans. Algorithms 3(1) (2007) Google Scholar
  19. 19.
    Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update and paging rules. Commun. ACM 28(2), 202–208 (1985) CrossRefMathSciNetGoogle Scholar
  20. 20.
    Szpankowski, W.: Average Case Analysis of Algorithms on Sequences. Wiley, New York (2001) MATHGoogle Scholar
  21. 21.
    Vitter, J.S., Krishnan, P.: Optimal prefetching via data compression. J. Assoc. Comput. Mach. 43(5), 771–793 (1996) MATHMathSciNetGoogle Scholar
  22. 22.
    Weinberger, M., Ordentlich, E.: On-line decision making for a class of loss functions via Lempel-Ziv parsing. In: Proc. of the IEEE Data Compression Conference, pp. 163–172 (2000) Google Scholar
  23. 23.
    Ziv, J., Lempel, A.: A universal algorithms for sequential data compression. IEEE Trans. Inf. Theory 23(3), 337–343 (1977) MATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Ziv, J., Lempel, A.: Compression of individual sequences via variable rate coding. IEEE Trans. Inf. Theory 24(5), 530–536 (1978) MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2008

Authors and Affiliations

  1. 1.Department of Computer SciencePurdue UniversityW. LafayetteUSA

Personalised recommendations