Crafting Data Structures: A Study of Reference Locality in Refinement-Based Pathfinding

  • Robert Niewiadomski
  • José Nelson Amaral
  • Robert C. Holte
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2913)


The widening gap between processor speed and memory latency increases the importance of crafting data structures and algorithms to exploit temporal and spatial locality. Refinement-based pathfinding algorithms, such as Classic Refinement, find near-optimal paths in very large sparse graphs where traditional search techniques fail to generate paths in acceptable time. In this paper we present a performance evaluation study of three simple data structure transformation oriented techniques aimed at improving the data reference locality of Classic Refinement. In our experiments these techniques improved data reference locality resulting in consistently positive performance improvements upwards of 51.2%. In addition, these techniques appear to be orthogonal to compiler optimizations and robust with respect to hardware architecture.


Image Mapping Reference Locality Abstraction Level Input Graph Freight Transport 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Personal correspondence with David C. Pottinger of Ensemble StudiosGoogle Scholar
  2. 2.
    Calder, B., Chandra, K., John, S., Austin, T.: Cache-conscious data placement. In: Proceedings of the Eighth International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 139–149 (1998)Google Scholar
  3. 3.
    Chilimbi, T.M., Hill, M.D., Larus, J.R.: Cache-conscious structure layout. In: SIGPLAN Conference on Programming Language Design and Implementation, pp. 1–12 (1999)Google Scholar
  4. 4.
    Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, 2nd edn. ch. 24, Dijkstra’s algorithm, pp. 598–599. MIT Press, Cambridge (2001)zbMATHGoogle Scholar
  5. 5.
    Díaz, J., Petit, J., Serna, M.: A survey of graph layout problems. ACM Computing Surveys (CSUR) 34(3), 313–356 (2002)CrossRefGoogle Scholar
  6. 6.
    DeLoura, M.: Game Programming Gems, vol. 1. Charles River Media, Hingham (2000)Google Scholar
  7. 7.
    Edelkamp, S., Schrödl, S.: Localizing A*. In: 17th National Conference on Artificial Intelligence (AAAI-2000), pp. 885–890 (2000)Google Scholar
  8. 8.
    Gibbs Jr., N.E., Poole, W.G., Stockmeyer, P.K.: A comparison of several bandwidth and profile reduction algorithms. ACM Transactions on Mathematical Software (TOMS) 2(4), 322–330 (1976)zbMATHCrossRefGoogle Scholar
  9. 9.
    Holte, R.C., Mkadmi, T., Zimmer, R.M., MacDonald, A.J.: Speeding up problem solving by abstraction: A graph oriented approach. Artificial Intelligence 85(1-2), 321–361 (1996)CrossRefGoogle Scholar
  10. 10.
    Holte, R.C., Drummond, C., Perez, M.B., Zimmer, R.M., MacDonald, A.J.: Searching with abstractions: A unifying framework and new high-performance algorithm. In: 10th Canadian Conf. on Artificial Intelligence (AI 1994), pp. 263–270 (1994)Google Scholar
  11. 11.
    Karypis, G., Aggarwal, R., Kumar, V., Shekhar, S.: Multilevel hypergraph partitioning: application in vlsi domain. In: Proc. 34th annual conference on Design automation conference, pp. 526–529. ACM Press, New York (1997)CrossRefGoogle Scholar
  12. 12.
    Meyer, U., Sanders, P., Sibeyn, J.F. (eds.): Algorithms for Memory Hierarchies. LNCS, vol. 2625. Springer, Heidelberg (2003)zbMATHGoogle Scholar
  13. 13.
    Nodine, M.H., Goodrich, M.T., Vitter, J.S.: Blocking for external graph searching. Algorithmica 16(2), 181–214 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Pinar, A., Heath, M.T.: Improving performance of sparse matrix-vector multiplication. In: Proceedings of the 1999 ACM/IEEE conference on Supercomputing (CDROM), p. 30. ACM Press, New York (1999)CrossRefGoogle Scholar
  15. 15.
    Pottinger, D.C.: Terrain analysis in realtime strategy games. In: Game Developers Conference Proceedings (2000)Google Scholar
  16. 16.
    Russell, S.J.: Efficient memory-bounded search methods. In: 10th European Conference on Artificial Intelligence Proceedings (ECAI 1992), August 3-7, pp. 1–5 (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Robert Niewiadomski
    • 1
  • José Nelson Amaral
    • 1
  • Robert C. Holte
    • 1
  1. 1.Department of Computing ScienceUniversity of AlbertaEdmontonCanada

Personalised recommendations