Evolving sqrt into 1/x via software data maintenance

William B. Langdon, Oliver Krauss

Research output: Chapter in Book/Report/Conference proceedingsConference contributionpeer-review

6 Citations (Scopus)

Abstract

While most software automation research concentrates on programs' code, we have started investigating if Genetic Improvement (GI) of data can assist developers by automating aspects of the maintenance of parameters embedded in source code. We extend recent GI work on optimising compile time constants to give new functionality and describe the transformation of a GNU C library square root function into the double precision reciprocal function, drcp. Multiplying by 1/x (drcp) allows division free division without requiring the hardware to support division. The evolution (6 seconds) and indeed the GI dp division (7.14 ± 0.012 nS) are both surprisingly fast.

Original languageEnglish
Title of host publicationGECCO 2020 Companion - Proceedings of the 2020 Genetic and Evolutionary Computation Conference Companion
PublisherAssociation for Computing Machinery, Inc
Pages1928-1936
Number of pages9
ISBN (Electronic)9781450371278
DOIs
Publication statusPublished - 8 Jul 2020
Event2020 Genetic and Evolutionary Computation Conference, GECCO 2020 - Cancun, Mexico
Duration: 8 Jul 202012 Jul 2020

Publication series

NameGECCO 2020 Companion - Proceedings of the 2020 Genetic and Evolutionary Computation Conference Companion

Conference

Conference2020 Genetic and Evolutionary Computation Conference, GECCO 2020
Country/TerritoryMexico
CityCancun
Period08.07.202012.07.2020

Keywords

  • Covariance matrix adaption - evolution strategy (CMA-ES)
  • Data transplantation
  • Double precision (dp)
  • Drcp
  • Evolution strategies
  • Genetic improvement
  • Genetic programming
  • Glibc
  • Inv
  • Invert
  • IoT
  • Rcp
  • Reciprocal
  • SBSE
  • Search based software engineering

Fingerprint

Dive into the research topics of 'Evolving sqrt into 1/x via software data maintenance'. Together they form a unique fingerprint.

Cite this