skip to main content
10.1145/2576768.2598343acmconferencesArticle/Chapter ViewAbstractPublication PagesgeccoConference Proceedingsconference-collections
research-article

Towards highly optimized cartesian genetic programming: from sequential via SIMD and thread to massive parallel implementation

Published:12 July 2014Publication History

ABSTRACT

Most implementations of Cartesian genetic programming (CGP) which can be found in the literature are sequential. However, solving complex design problems by means of genetic programming requires parallel implementations of search methods and fitness functions. This paper deals with the design of highly optimized implementations of CGP and their detailed evaluation in the task of evolutionary circuit design. Several sequential implementations of CGP have been analyzed and the effect of various additional optimizations has been investigated. Furthermore, the parallelism at the instruction, data, thread and process level has been applied in order to take advantage of modern processor architectures and computer clusters. Combinational adders and multipliers have been chosen to give a performance comparison with state of the art methods.

References

  1. T. Aoki, N. Homma, and T. Higuchi. Evolutionary synthesis of arithmetic circuit structures. Artif. Intell. Rev., 20(3-4):199--232, Dec. 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. E. Cantu-Paz. Efficient and Accurate Parallel Genetic Algorithms. Kluwer Academic Publishers, Norwell, MA, USA, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Clegg, J. A. Walker, and J. F. Miller. A new crossover technique for cartesian genetic programming. In GECCO '07: Proceedings of the 9th annual conference on Genetic and evolutionary computation, volume 2, pages 1580--1587, London, 7-11 July 2007. ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. A. Fox. Instruction tables: Lists of instruction latencies, throughputs and micro-operation breakdowns for intel, amd and via cpus. http://agner.org/optimize/instruction_tables.pdf, 2013.Google ScholarGoogle Scholar
  5. B. W. Goldman and W. F. Punch. Reducing wasted evaluations in cartesian genetic programming. In Proceedings of the 16th European Conference on Genetic Programming, EuroGP'13, pages 61--72, Berlin, Heidelberg, 2013. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Harding and W. Banzhaf. Implementing cartesian genetic programming classifiers on graphics processing units using gpu.net. In 13th Annual Genetic and Evolutionary Computation Conference, GECCO 2011, Companion Material Proceedings, Dublin, Ireland, July 12-16, 2011, pages 463--470. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Harding, J. F. Miller, and W. Banzhaf. Self modifying cartesian genetic programming: Parity. In 2009 IEEE Congress on Evolutionary Computation, pages 285--292. IEEE Press, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. J. Hennessy and D. Patterson. Computer Architecture: A Quantitative Approach. The Morgan Kaufmann Series in Computer Architecture and Design. Elsevier Science, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. R. Hrbacek and M. Sikulova. Coevolutionary cartesian genetic programming in fpga. In Advances in Artificial Life, ECAL 2013, Proceedings of the Twelfth European Conference on the Synthesis and Simulation of Living Systems, pages 431--438. MIT Press, 2013.Google ScholarGoogle Scholar
  10. J. R. Koza, M. A. Keane, M. J. Streeter, W. Mydlowec, J. Yu, and G. Lanza. Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Kluwer Academic Publishers, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. J. Miller and S. Smith. Redundancy and computational efficiency in cartesian genetic programming. Evolutionary Computation, IEEE Transactions on, 10(2):167--174, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Miller and P. Thomson. Cartesian genetic programming. In Genetic Programming, volume 1802 of Lecture Notes in Computer Science, pages 121--132. Springer Berlin Heidelberg, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. F. Miller, editor. Cartesian Genetic Programming. Natural Computing Series. Springer Verlag, 2011.Google ScholarGoogle Scholar
  14. R. Poli and J. Page. Solving high-order boolean parity problems with smooth uniform crossover, sub-machine code gp and demes. Genetic Programming and Evolvable Machines, 1(1-2):37--56, Apr. 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. R. Seyfarth. Introduction to 64 Bit Intel Assembly Language Programming for Linux. CreateSpace Independent Publishing Platform, 2012.Google ScholarGoogle Scholar
  16. A. P. Shanthi and R. Parthasarathi. Practical and scalable evolution of digital circuits. Appl. Soft Comput., 9(2):618--624, Mar. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. D. Sherry, K. Veeramachaneni, J. McDermott, and U.-M. O'Reilly. Flex-gp: Genetic programming on the cloud. In Applications of Evolutionary Computation - EvoApplications 2012, volume 7248 of LNCS, pages 477--486. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. E. Stomeo, T. Kalganova, and C. Lambert. Generalized disjunction decomposition for evolvable hardware. Trans. Sys. Man Cyber. Part B, 36(5):1024--1043, Oct. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. M. Tomassini. Spatially Structured Evolutionary Algorithms: Artificial Evolution in Space and Time (Natural Computing Series). Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Z. Vasicek and L. Sekanina. Hardware accelerator of cartesian genetic programming with multiple fitness units. Computing and Informatics, 29(6):1359--1371, 2010.Google ScholarGoogle Scholar
  21. Z. Vasicek and L. Sekanina. Formal verification of candidate solutions for post-synthesis evolutionary optimization in evolvable hardware. Genetic Programming and Evolvable Machines, 12(3):305--327, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Z. Vasicek and K. Slany. Efficient phenotype evaluation in cartesian genetic programming. In Proc. of the 15th European Conference on Genetic Programming, LNCS 7244, pages 266--278. Springer Verlag, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. V. K. Vassilev, D. Job, and J. F. Miller. Towards the automatic design of more efficient digital circuits. Evolvable Hardware, NASA/DoD Conference on, 0:151, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. T. Yu and J. Miller. Finding needles in haystacks is not hard with neutrality. In Genetic Programming, volume 2278 of Lecture Notes in Computer Science, pages 13--25. Springer Berlin Heidelberg, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Towards highly optimized cartesian genetic programming: from sequential via SIMD and thread to massive parallel implementation

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            GECCO '14: Proceedings of the 2014 Annual Conference on Genetic and Evolutionary Computation
            July 2014
            1478 pages
            ISBN:9781450326629
            DOI:10.1145/2576768

            Copyright © 2014 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 12 July 2014

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            GECCO '14 Paper Acceptance Rate180of544submissions,33%Overall Acceptance Rate1,669of4,410submissions,38%

            Upcoming Conference

            GECCO '24
            Genetic and Evolutionary Computation Conference
            July 14 - 18, 2024
            Melbourne , VIC , Australia

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader