Differentiable Genetic Programming
This work addresses a long-standing issue in genetic programming for symbolic regression, offering a new method that could improve accuracy in scientific computing applications, though it appears incremental as it builds on existing genetic programming techniques.
The authors tackled the problem of constant representation in genetic programming for symbolic regression by introducing differentiable Cartesian Genetic Programming (dCGP), which uses high-order automatic differentiation to back-propagate errors, and demonstrated its ability to find exact symbolic expressions and constant values on various problems.
We introduce the use of high order automatic differentiation, implemented via the algebra of truncated Taylor polynomials, in genetic programming. Using the Cartesian Genetic Programming encoding we obtain a high-order Taylor representation of the program output that is then used to back-propagate errors during learning. The resulting machine learning framework is called differentiable Cartesian Genetic Programming (dCGP). In the context of symbolic regression, dCGP offers a new approach to the long unsolved problem of constant representation in GP expressions. On several problems of increasing complexity we find that dCGP is able to find the exact form of the symbolic expression as well as the constants values. We also demonstrate the use of dCGP to solve a large class of differential equations and to find prime integrals of dynamical systems, presenting, in both cases, results that confirm the efficacy of our approach.