Skip to main content

Parallel Algorithms for Encoding and Decoding Blob Code

  • Conference paper
  • 813 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,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.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  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. Brent, R.P.: The Parallel Evaluation of General Arithmetic Expressions. J. of ACM 21(2), 201–206 (1974)

    Article  MATH  MathSciNet  Google Scholar 

  3. Caminiti, S.: On Coding Labeled Trees. PhD thesis, Sapienza University of Rome (December 2007)

    Google Scholar 

  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)

    MATH  Google Scholar 

  5. Caminiti, S., Finocchi, I., Petreschi, R.: On Coding Labeled Trees. TCS 382(2), 97–108 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  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)

    Chapter  Google Scholar 

  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)

    Chapter  Google Scholar 

  8. Cayley, A.: A Theorem on Trees. Quart. J. of Math. 23, 376–378 (1889)

    Google Scholar 

  9. Chen, W.Y.C.: A General Bijective Algorithm for Trees. Proc. of NAS 87, 9635–9639 (1990)

    Article  MATH  Google Scholar 

  10. Deo, N., Kumar, N., Kumar, V.: Parallel Generation of Random Trees and Connected Graphs. Congr. Num. 130, 7–18 (1998)

    MATH  MathSciNet  Google Scholar 

  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)

    MATH  Google Scholar 

  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)

    Article  Google Scholar 

  13. Fischer, M.J., Ladner, R.E.: Parallel Prefix Computation. J. of ACM 27(4), 831–838 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  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. Greenlaw, R., Petreschi, R.: Computing Prüfer Codes Efficiently in Parallel. DAM 102(3), 205–222 (2000)

    MATH  MathSciNet  Google Scholar 

  16. Jájá, J.: An Introduction to Parallel Algorithms. Addison-Wesley, Reading (1992)

    MATH  Google Scholar 

  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. 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. Kreweras, G., Moszkowski, P.: Tree Codes that Preserve Increases and Degree Sequences. J. of Disc. Math. 87(3), 291–296 (1991)

    Article  MATH  MathSciNet  Google Scholar 

  20. Mitchell, M.: An Introduction to Genetic Algorithms. MIT Press, Cambridge (1996)

    Google Scholar 

  21. Moon, J.W.: Counting Labeled Trees. William Clowes and Sons, London (1970)

    Google Scholar 

  22. Neville, E.H.: The Codifying of Tree-Structure. Proc. of Cambridge Phil. Soc. 49, 381–385 (1953)

    Article  MATH  MathSciNet  Google Scholar 

  23. Orlin, J.B.: Line-Digraphs, Arborescences, and Theorems of Tutte and Knuth. J. of Comb. Th. 25, 187–198 (1978)

    Article  MATH  MathSciNet  Google Scholar 

  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. 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. Picciotto, S.: How to Encode a Tree. PhD thesis, University of California, San Diego (1999)

    Google Scholar 

  27. Prüfer, H.: Neuer Beweis eines Satzes über Permutationen. Archiv der Mathematik und Physik 27, 142–144 (1918)

    Google Scholar 

  28. Reeves, C.R., Rowe, J.E.: Genetic Algorithms: A Guide to GA Theory. Springer, Heidelberg (2003)

    MATH  Google Scholar 

  29. Reif, J.H.: Synthesis of Parallel Algorithms. Morgan Kaufmann, San Francisco (1993)

    Google Scholar 

  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. Wen, X., Vishkin, U.: PRAM-on-Chip: First Commitment to Silicon. In: Proc. of SPAA, pp. 301–302 (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Caminiti, S., Petreschi, R. (2010). Parallel Algorithms for Encoding and Decoding Blob Code . In: Rahman, M.S., Fujita, S. (eds) WALCOM: Algorithms and Computation. WALCOM 2010. Lecture Notes in Computer Science, vol 5942. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11440-3_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11440-3_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11439-7

  • Online ISBN: 978-3-642-11440-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics