TY - GEN

T1 - Genetic improvement of data for maths functions

AU - Langdon, William B.

AU - Krauss, Oliver

N1 - Publisher Copyright:
© 2021 Owner/Author.

PY - 2021/7/7

Y1 - 2021/7/7

N2 - Genetic Improvement (GI) can be used to give better quality software and to create new functionality. We show that GI can evolve the PowerPC open source GNU C runtime library square root function into cube root, binary logarithm log2 and reciprocal square root. The GI cbrt is competitive in run-time performance and our inverted square root x-1/2 is far more accurate than the approximation used in the Quake video game. We use CMA-ES to adapt constants in a Newton-Raphson table, originally from glibc's sqrt, for other double precision mathematics functions. Such automatically customised math libraries might be used for mobile or low resource, IoT, mote, smart dust, bespoke cyber-physical systems. Evolutionary Computing (EC) can be used to not only adapt source code but also data, such as numerical constants, and could enable a new way to conduct software data maintenance. This is an exciting opportunity for the GECCO and optimisation communities.

AB - Genetic Improvement (GI) can be used to give better quality software and to create new functionality. We show that GI can evolve the PowerPC open source GNU C runtime library square root function into cube root, binary logarithm log2 and reciprocal square root. The GI cbrt is competitive in run-time performance and our inverted square root x-1/2 is far more accurate than the approximation used in the Quake video game. We use CMA-ES to adapt constants in a Newton-Raphson table, originally from glibc's sqrt, for other double precision mathematics functions. Such automatically customised math libraries might be used for mobile or low resource, IoT, mote, smart dust, bespoke cyber-physical systems. Evolutionary Computing (EC) can be used to not only adapt source code but also data, such as numerical constants, and could enable a new way to conduct software data maintenance. This is an exciting opportunity for the GECCO and optimisation communities.

KW - autorepair

KW - CASE

KW - computer-aided software engineering

KW - data transplantation

KW - evolutionary computing

KW - glibc

KW - Newton's method

KW - SBSE

KW - search based software engineering

KW - software engineering

KW - software maintenance of empirical constants

KW - vector normalisation

UR - http://www.scopus.com/inward/record.url?scp=85111046333&partnerID=8YFLogxK

U2 - 10.1145/3449726.3462730

DO - 10.1145/3449726.3462730

M3 - Conference contribution

AN - SCOPUS:85111046333

T3 - GECCO 2021 Companion - Proceedings of the 2021 Genetic and Evolutionary Computation Conference Companion

SP - 31

EP - 32

BT - GECCO 2021 Companion - Proceedings of the 2021 Genetic and Evolutionary Computation Conference Companion

PB - Association for Computing Machinery, Inc

T2 - 2021 Genetic and Evolutionary Computation Conference, GECCO 2021

Y2 - 10 July 2021 through 14 July 2021

ER -