Linear imperative programming with Differential Evolution

Cyril Fonlupt, Denis Robilliard, Virginie Marion-Poty · 2011

Differential Evolution (DE) is an evolutionary approach for optimizing non-linear continuous space functions. This method is known to be robust and easy to use. DE manipulates vectors of floats that are improved over generations by mating with best and random individuals. Recently, DE was successfully applied to the automatic generation of programs by mapping real-valued vectors to full programs trees — Tree Based Differential Evolution (TreeDE). In this paper, we propose to use DE as a method to directly generate linear sequences of imperative instructions, which we call Linear Differential Evolutionary Programming (LDEP). Unlike TreeDE, LDEP incorporates constant management for regression problems and lessens the constraints on the architecture of solutions since the user is no more required to determine the tree depth of solutions. Comparisons with standard Genetic Programming and with the CMA-ES algorithm showed that DE-based approach are well suited to automatic programming, being notably more robust than CMA-ES in this particular context.

Read the paper · More papers on PaperTik