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 -