8 December 2022
Benchmarks
Benchmarking is an important component of many comparison studies, in machine learning and evolutionary algorithms for example. Many of these benchmarks are continuous functions, defined as a landscape of three or more dimensions.
These functions are quite well-known, and have a reputation for being difficult to optimize. But Dante Niewenhuis questioned this premise, and used a technique known as ‘genetic programming’ to create new benchmark functions, by re-parameterizing the known ones.
Genetic programming and evolutionary algorithms
“Genetic programming and evolutionary algorithms are teaching us that solutions exist that are far beyond human comprehension. Examples of these are optimal schedules for factories, industrial design, but apparently also well-known benchmark functions”, says supervisor Daan van den Berg. “But the idea that natural evolution is a good designer of organisms is religously engrained in many minds. For many people and scientists, it is impossible to imagine that machine evolution might do a much better task at designing stuff than natural evolution ever will.”