Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/CEC48606.2020.9185771guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
research-article

Genetic Improvement of Genetic Programming

Published: 19 July 2020 Publication History

Abstract

GISMOE BNF grammar based GI is applied to optimise run time of the tree interpreter in the fastest single computer floating point genetic programming system, GPavx. Up to two fold speed up is obtained. Performance varies with tree size. The GI version of Singleton’s C++ GPquick is demonstrated on random trees of up to 79 million opcodes on Intel AVX512 SIMD parallel compute servers.

References

[1]
W. B. Langdon, “Parallel GPQUICK,” in GECCO 2019 Companion, pp. 63–64. https://doi.org/10.1145/3319619.3326770
[2]
N. Alshahwan et al., “Deploying search based software engineering with Sapienz at Facebook,” in SSBSE 2018, pp. 3–45. https://doi.org/10.1007/978-3-319-99241-91
[3]
A. Singleton, “Genetic programming with C++,” BYTE, pp. 171–176, Feb. 1994. http://www.assembla.com/wiki/show/andysgp/GPQuickArticle
[4]
R. E. Lenski et al., “Sustained fitness gains and variability in fitness trajectories in the long-term evolution experiment with Escherichia coli,” Proceedings of the Royal Society B, vol. 282, no. 1821, 2015. https://doi.org/10.1098/rspb.2015.2292
[5]
W. B. Langdon and W. Banzhaf, “Continuous long-term evolution of genetic programming,” in ALIFE 2019. MIT Press, pp. 388–395. https://doi.org/10.1162/isala00191
[6]
W. B. Langdon, “Large scale bioinformatics data mining with parallel genetic programming on graphics processing units,” in Massively Parallel Evolutionary Computation on GPGPUs, S. Tsutsui and P. Collet, Eds., 2013, pp. 311–347. https://doi.org/10.1007/978-3-642-37959-815
[7]
[8]
M. J. Keith and M. C. Martin, “Genetic programming in C++: Implementation issues,” in AiGP. MIT Press, 1994, pp. 285–310. http://cognet.mit.edu/sites/default/files/books/9780262277181/pdfs/9780262277181chap13.pdf
[9]
W. B. Langdon and W. Banzhaf, “A SIMD interpreter for genetic programming on GPU graphics cards,” in EuroGP 2008, pp. 73–85. https://doi.org/10.1007/978-3-540-78671-97
[10]
W. B. Langdon and M. Harman, “Optimising existing software with genetic programming,” IEEE TEVC, vol. 19, no. 1, pp. 118–135, 2015. https://doi.org/10.1109/TEVC.2013.2281544
[11]
M. Harman and J. Petke, “GI4GI: Improving genetic improvement fitness functions,” in GI 2015 Workshop, pp. 793–794. http: //dx.doi.org/10.1145/2739482.2768415
[12]
J. Petke et al., “Using genetic improvement and code transplants to specialise a C++ program to a problem class,” in EuroGP 2014, pp. 137–149. https://doi.org/10.1007/978-3-662-44303-312
[13]
J. Petke, “Constraints: The future of combinatorial interaction testing,” in SBST 2015, pp. 17–18. http://dx.doi.org/doi:10.1109/SBST.2015.11
[14]
J. Petke et al., “Genetic improvement of software: a comprehensive survey,” IEEE TEVC, vol. 22, no. 3, pp. 415–432, 2018. http: //dx.doi.org/doi:10.1109/TEVC.2017.2693219
[15]
J. Petke et al., “Specialising software for different downstream applications using genetic improvement and code transplantation,” IEEE TSE, vol. 44, no. 6, pp. 574–594, 2018. https://doi.org/10.1109/TSE.2017.2702606
[16]
W. B. Langdon et al., “Genetic improvement of GPU software,” GP & EM, vol. 18, no. 1, pp. 5–44, 2017. https://doi.org/10.1007/s10710-016-9273-9
[17]
C. Le Goues et al., “Automated program repair,” Comm. of the ACM, vol. 62, no. 12, pp. 56–65, 2019. https://doi.org/10.1145/3318162
[18]
N. Alshahwan, “Industrial experience of genetic improvement in Facebook,” in GI-2019, ICSE workshops proceedings, p. 1, keynote. https://doi.org/10.1109/GI.2019.00010
[19]
E. Schulte et al., “Post-compiler software optimization for reducing energy,” in ASPLOS 2014, pp. 639–652. https://doi.org/10.1145/2541940.2541980
[20]
W. B. Langdon et al., “Evolving better RNAfold structure prediction,” in EuroGP 2018, pp. 220–236. https://doi.org/10.1007/978-3-319-77553-114
[21]
Z. A. Kocsis et al., “Automatic improvement of Apache Spark queries using semantics-preserving program reduction,” in GI 2016 Workshop, pp. 1141–1146. https://doi.org/10.1145/2908961.2931692
[22]
V. R. Lopez-Lopez et al., “Applying genetic improvement to a genetic programming library in C++,” Soft Computing, vol. 23, no. 22, pp. 11 593–11 609, 2019. https://doi.org/10.1007/s00500-018-03705-6
[23]
C. Gagné and M. Parizeau, “Genericity in evolutionary computation software tools: Principles and case study,” IJAIT, vol. 15, no. 2, pp. 173–194, 2006. https://doi.org/10.1142/S021821300600262X
[24]
W. B. Langdon and R. Lorenz, “Evolving AVX512 parallel C code using GP,” in EuroGP 2019, pp. 245–261. https://doi.org/10.1007/978-3-030-16670-016
[25]
A. E. I. Brownlee et al., “Gin: genetic improvement research made easy,” in GECCO ‘19, M. Lopez-Ibanez et al., Eds., Prague, Czech Republic, 2019, pp. 985–993. https://doi.org/10.1145/3321707.3321841
[26]
Gabin An et al., “PyGGI 2.0: Language independent genetic improvement framework,” in ESEC/FSE 2019, pp. 1100–1104. https://doi.org/10.1145/3338906.3341184
[27]
E. Schulte et al., “Software mutational robustness,” GP & EM, vol. 15, no. 3, pp. 281–312, 2014. https://doi.org/10.1007/s10710-013-9195-8
[28]
D. Andre and J. R. Koza, “Parallel genetic programming: A scalable implementation using the transputer network architecture,” in AiGP 2. MIT Press, 1996, pp. 317–337. http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6277532
[29]
W. Banzhaf, “Genetic programming for pedestrians,” in ICGA 1993. Morgan Kaufmann, p. 628. http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/ftp.io.com/papers/GenProg forPed.ps.Z
[30]
J. F. Miller, “Cartesian genetic programming: its status and future,” GP & EM. https://doi.org/10.1007/s10710-019-09360-6
[31]
A. Fukunaga et al., “A genome compiler for high performance genetic programming,” in GP 1998. Morgan Kaufmann, pp. 86–94. http://metahack.org/gp98-compiler.pdf
[32]
P. Nordin et al., “Efficient evolution of machine code for CISC architectures using instruction blocks and homologous crossover,” in AiGP 3. MIT Press, 1999, pp. 275–299. http://www.cs.ucl.ac.uk/staff/W.Langdon/aigp3/ch12.pdf
[33]
S. Handley, “On the use of a directed acyclic graph to represent a population of computer programs,” in WCCI 1994, pp. 154–159. https://doi.org/10.1109/ICEC.1994.350024
[34]
N. F. McPhee et al., “Sutherland: An extensible objectoriented software framework for evolutionary computation,” in GP 1998. Morgan Kaufmann, p. 241. http://facultypages.morris.umn.edu/_mcphee/Research/Sutherland/sutherlandgp98announcement.ps.gz
[35]
W. B. Langdon et al., “The evolution of size and shape,” in AiGP 3. MIT Press, 1999, pp. 163–190. http://www.cs.ucl.ac.uk/staff/W.Langdon/aigp3/ch08.pdf
[36]
Yue Jia et al., “Learning combinatorial interaction test generation strategies using hyperheuristic search,” in ICSE 2015. IEEE, pp. 540–550. https://doi.org/10.1109/ICSE.2015.71
[37]
L. Spector and A. Robinson, “Genetic programming and autoconstructive evolution with the push programming language,” GP & EM, vol. 3, no. 1, pp. 7–40, 2002. https://doi.org/10.1023/A:1014538503543

Cited By

View all

Index Terms

  1. Genetic Improvement of Genetic Programming
        Index terms have been assigned to the content through auto-classification.

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image Guide Proceedings
        2020 IEEE Congress on Evolutionary Computation (CEC)
        Jul 2020
        3280 pages

        Publisher

        IEEE Press

        Publication History

        Published: 19 July 2020

        Qualifiers

        • Research-article

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)0
        • Downloads (Last 6 weeks)0
        Reflects downloads up to 06 Jan 2025

        Other Metrics

        Citations

        Cited By

        View all
        • (2025)Deep imperative mutations have less impactAutomated Software Engineering10.1007/s10515-024-00475-432:1Online publication date: 1-Jun-2025
        • (2023)Genetically Improved Software with fewer Data Cache MissesProceedings of the Companion Conference on Genetic and Evolutionary Computation10.1145/3583133.3590542(799-802)Online publication date: 15-Jul-2023
        • (2023)Genetic Improvement of LLVM Intermediate RepresentationGenetic Programming10.1007/978-3-031-29573-7_16(244-259)Online publication date: 12-Apr-2023
        • (2022)Genetic programming convergenceProceedings of the Genetic and Evolutionary Computation Conference Companion10.1145/3520304.3534063(27-28)Online publication date: 9-Jul-2022
        • (2022)Evaluation of genetic improvement tools for improvement of non-functional properties of softwareProceedings of the Genetic and Evolutionary Computation Conference Companion10.1145/3520304.3534004(1956-1965)Online publication date: 9-Jul-2022

        View Options

        View options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media