Advertisement

Parallel Algorithms for Encoding and Decoding Blob Code

  • Saverio Caminiti
  • Rossella Petreschi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5942)

Abstract

A bijective code is a method for associating labeled n-trees to (n − 2)-strings of node labels in such a way that different trees yield different strings and vice versa. For all known bijective codes, optimal sequential encoding and decoding algorithms are presented in literature, while parallel algorithms are investigated only for some of these codes. In this paper we focus our attention on the Blob code: a code particularly considered in the field of Genetic Algorithms. To the best of our knowledge, here we present the first parallel encoding and decoding algorithms for this code. The encoding algorithm implementation is optimal on an EREW PRAM, while the decoding algorithm requires O(logn) time and O(n) processors on CREW PRAM.

Keywords

Parallel Algorithm Decode Algorithm Stable Node Cayley Tree Unstable Node 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Boppana, V., Hartanto, I., Fuchs, W.K.: Full Fault Dictionary Storage Based on Labeled Tree Encoding. In: Proc. of IEEE VTS, pp. 174–179 (1996)Google Scholar
  2. 2.
    Brent, R.P.: The Parallel Evaluation of General Arithmetic Expressions. J. of ACM 21(2), 201–206 (1974)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Caminiti, S.: On Coding Labeled Trees. PhD thesis, Sapienza University of Rome (December 2007)Google Scholar
  4. 4.
    Caminiti, S., Deo, N., Micikevičius, P.: Linear-time Algorithms for Encoding Trees as Sequences of Node Labels. Congr. Num. 183, 65–75 (2006)zbMATHGoogle Scholar
  5. 5.
    Caminiti, S., Finocchi, I., Petreschi, R.: On Coding Labeled Trees. TCS 382(2), 97–108 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Caminiti, S., Petreschi, R.: String Coding of Trees with Locality and Heritability. In: Wang, L. (ed.) COCOON 2005. LNCS, vol. 3595, pp. 251–262. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Caminiti, S., Petreschi, R.: Parallel Algorithms for Dandelion-Like Codes. In: Allen, G., et al. (eds.) ICCS 2009, Part I. LNCS, vol. 5544, pp. 611–620. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  8. 8.
    Cayley, A.: A Theorem on Trees. Quart. J. of Math. 23, 376–378 (1889)Google Scholar
  9. 9.
    Chen, W.Y.C.: A General Bijective Algorithm for Trees. Proc. of NAS 87, 9635–9639 (1990)zbMATHCrossRefGoogle Scholar
  10. 10.
    Deo, N., Kumar, N., Kumar, V.: Parallel Generation of Random Trees and Connected Graphs. Congr. Num. 130, 7–18 (1998)zbMATHMathSciNetGoogle Scholar
  11. 11.
    Deo, N., Micikevičius, P.: A New Encoding for Labeled Trees Employing a Stack and a Queue. Bull. of ICA 34, 77–85 (2002)zbMATHGoogle Scholar
  12. 12.
    Eğecioğlu, Ö., Remmel, J.B.: Bijections for Cayley Trees, Spanning Trees, and Their q-Analogues. J. of Comb. Th. 42A(1), 15–30 (1986)CrossRefGoogle Scholar
  13. 13.
    Fischer, M.J., Ladner, R.E.: Parallel Prefix Computation. J. of ACM 27(4), 831–838 (1980)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Garg, V.K., Agarwal, A.: Distributed Maintenance of a Spanning Tree Using Labeled Tree Encoding. In: Cunha, J.C., Medeiros, P.D. (eds.) Euro-Par 2005. LNCS, vol. 3648, pp. 606–616. Springer, Heidelberg (2005)Google Scholar
  15. 15.
    Greenlaw, R., Petreschi, R.: Computing Prüfer Codes Efficiently in Parallel. DAM 102(3), 205–222 (2000)zbMATHMathSciNetGoogle Scholar
  16. 16.
    Jájá, J.: An Introduction to Parallel Algorithms. Addison-Wesley, Reading (1992)zbMATHGoogle Scholar
  17. 17.
    Julstrom, B.A.: The Blob Code: A Better String Coding of Spanning Trees for Evolutionary Search. In: Proc. of ROPNET, pp. 256–261 (2001)Google Scholar
  18. 18.
    Julstrom, B.A.: The Blob Code is Competitive with Edge-Sets in Genetic Algorithms for the Minimum Routing Cost Spanning Tree Problem. In: Proc. of GECCO, pp. 585–590 (2005)Google Scholar
  19. 19.
    Kreweras, G., Moszkowski, P.: Tree Codes that Preserve Increases and Degree Sequences. J. of Disc. Math. 87(3), 291–296 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Mitchell, M.: An Introduction to Genetic Algorithms. MIT Press, Cambridge (1996)Google Scholar
  21. 21.
    Moon, J.W.: Counting Labeled Trees. William Clowes and Sons, London (1970)Google Scholar
  22. 22.
    Neville, E.H.: The Codifying of Tree-Structure. Proc. of Cambridge Phil. Soc. 49, 381–385 (1953)zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Orlin, J.B.: Line-Digraphs, Arborescences, and Theorems of Tutte and Knuth. J. of Comb. Th. 25, 187–198 (1978)zbMATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Paulden, T., Smith, D.K.: Recent Advances in the Study of the Dandelion Code, Happy Code, and Blob Code Spanning Tree Representations. In: Proc. of CEC, pp. 2111–2118 (2006)Google Scholar
  25. 25.
    Paulden, T., Smith, D.K.: Some Novel Locality Results for the Blob Code Spanning Tree Representation. In: Proc. of GECCO, pp. 1320–1327 (2007)Google Scholar
  26. 26.
    Picciotto, S.: How to Encode a Tree. PhD thesis, University of California, San Diego (1999)Google Scholar
  27. 27.
    Prüfer, H.: Neuer Beweis eines Satzes über Permutationen. Archiv der Mathematik und Physik 27, 142–144 (1918)Google Scholar
  28. 28.
    Reeves, C.R., Rowe, J.E.: Genetic Algorithms: A Guide to GA Theory. Springer, Heidelberg (2003)zbMATHGoogle Scholar
  29. 29.
    Reif, J.H.: Synthesis of Parallel Algorithms. Morgan Kaufmann, San Francisco (1993)Google Scholar
  30. 30.
    Vishkin, U., Caragea, G.C., Lee, B.: Models for Advancing PRAM and other Algorithms into Parallel Programs for a PRAM-On-Chip Platform. In: Handbook of Parallel Computing: Models, Algorithms and Applications, ch. 5. CRC Press, Boca Raton (2008)Google Scholar
  31. 31.
    Wen, X., Vishkin, U.: PRAM-on-Chip: First Commitment to Silicon. In: Proc. of SPAA, pp. 301–302 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Saverio Caminiti
    • 1
  • Rossella Petreschi
    • 1
  1. 1.Computer Science DepartmentSapienza University of RomeRomeItaly

Personalised recommendations