Advertisement

Evolving Better Software Parameters

  • William B. LangdonEmail author
  • Justyna Petke
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11036)

Abstract

Genetic improvement might be widely used to adapt existing numerical values within programs. Applying GI to embedded parameters in computer code can create new functionality. For example, CMA-ES can evolve 1024 real numbers in a GNU C library square root to implement a cube root routine for C.

Keywords

Genetic improvement SBSE GGGP Software maintenance of empirical constants Data transplantation glibc sqrt cbrt 

Notes

Acknowledgements

My thanks to our EuroGP [5] anonymous reviewers.

References

  1. 1.
    Langdon, W.B., Petke, J.: Software is not fragile. In: Parrend, P., Bourgine, P., Collet, P. (eds.) First Complex Systems Digital Campus World E-Conference 2015. SPC, pp. 203–211. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-45901-1_24. http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/langdon_2015_csdc.html
  2. 2.
    Martin, R.J., Osborne, W.M.: Guidance on software maintenance. NBS Special Publication 500–106, National Bureau of Standards, USA (1983). http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nbsspecialpublication500-106.pdf
  3. 3.
    Cao, L., Sihler, H., Platt, U., Gutheil, E.: Numerical analysis of the chemical kinetic mechanisms of ozone depletion and halogen release in the polar troposphere. Atmos. Chem. Phys. 14(7), 3771–3787 (2014).  https://doi.org/10.5194/acp-14-3771-2014CrossRefGoogle Scholar
  4. 4.
    Lorenz, R., et al.: ViennaRNA package 2.0. AMB 6(1) (2011).  https://doi.org/10.1186/1748-7188-6-26
  5. 5.
    Langdon, W.B., Petke, J., Lorenz, R.: Evolving better RNAfold structure prediction. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 220–236. Springer, Cham (2018).  https://doi.org/10.1007/978-3-319-77553-1_14. http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/langdon_2018_EuroGP.html
  6. 6.
    Marounek, P.: Simplified approach to effort estimation in software maintenance. J. Syst. Integr. 3(3) (2012).  https://doi.org/10.20470/jsi.v3i3.123
  7. 7.
    Dehaghani, S.M.H., Hajrahimi, N.: Which factors affect software projects maintenance cost more? Acta Informatica Medica 21(1), 63–66 (2013).  https://doi.org/10.5455/AIM.2012.21.63-66CrossRefGoogle Scholar
  8. 8.
    Mohan, M., Greer, D.: A survey of search-based refactoring for software maintenance. J. Softw. Eng. Res. Dev. 6(1) (2018).  https://doi.org/10.1186/s40411-018-0046-4
  9. 9.
    de Freitas, F.G., de Souza, J.T.: Ten years of search based software engineering: a bibliometric analysis. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 18–32. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-23716-4_5CrossRefGoogle Scholar
  10. 10.
    Butler, S.: Analysing Java Identifier Names. Ph.D. thesis, Open University, UK. http://oro.open.ac.uk/46653/
  11. 11.
    Tiella, R., Ceccato, M.: Automatic generation of opaque constants based on the K-clique problem for resilient data obfuscation. In: SANER 2017, pp. 182–192 (2017).  https://doi.org/10.1109/SANER.2017.7884620
  12. 12.
    Wu, F., Weimer, W., Harman, M., Jia, Y., Krinke, J.: Deep parameter optimisation. In: Silva, S., et al. (eds.) GECCO, pp. 1375–1382. ACM, Madrid (2015). http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/Wu_2015_GECCO.html
  13. 13.
    Marginean, A., Barr, E.T., Harman, M., Jia, Y.: Automated transplantation of call graph and layout features into kate. In: Barros, M., Labiche, Y. (eds.) SSBSE 2015. LNCS, vol. 9275, pp. 262–268. Springer, Cham (2015).  https://doi.org/10.1007/978-3-319-22183-0_21. http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/Marginean_2015_SSBSE.html
  14. 14.
    Langdon, W.B., Harman, M.: Grow and graft a better CUDA pknotsRG for RNA pseudoknot free energy calculation. In: Langdon, W.B., et al. (eds.) Genetic Improvement 2015 Workshop, pp. 805–810. ACM, Madrid (2015). http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/langdon_2015_gi_pknots.html
  15. 15.
    Markstein, P.W.: Computation of elementary functions on the IBM RISC System/6000 processor. IBM J. Res. Dev. 34(1), 111–119 (1990).  https://doi.org/10.1147/rd.341.0111MathSciNetCrossRefGoogle Scholar
  16. 16.
    Hansen, N., Ostermeier, A.: Completely derandomized self-adaptation in evolution strategies. Evol. Comput. 9(2), 159–195 (2001).  https://doi.org/10.1162/106365601750190398CrossRefGoogle Scholar
  17. 17.
    Andronescu, M., Condon, A., Hoos, H.H., Mathews, D.H., Murphy, K.P.: Efficient parameter estimation for RNA secondary structure prediction. Bioinformatics 23(13), i19–i28 (2007).  https://doi.org/10.1093/bioinformatics/btm223CrossRefGoogle Scholar
  18. 18.
    Langdon, W.B.: Evolving square root into binary logarithm. Technical report RN/18/05, University College, London, London, UK (2018). http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/langdon_RN1805.html

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.CREST, Computer Science, UCLLondonUK

Personalised recommendations