Kaizen Programming

This paper presents Kaizen Programming, an evolutionary tool based on the concepts of Continuous Improvement from Kaizen Japanese methodology. One may see Kaizen Programming as a new paradigm since, as opposed to classical evolutionary algorithms where individuals are complete solutions, in Kaizen Programming each expert proposes an idea to solve part of the problem, thus a solution is composed of all ideas together. Consequently, evolution becomes a collaborative approach instead of an egocentric one. An idea’s quality (analog to an individual’s fitness) is not how good it fits the data, but a measurement of its contribution to the solution, which improves the knowledge about the problem. Differently from evolutionary algorithms that simply perform trial-and-error search, one can determine, exactly, parts of the solution that should be removed or improved. That property results in the reduction in bloat, number of function evaluations, and computing time. Even more important, the Kaizen Programming tool, proposed to solve symbolic regression problems, builds the solutions as linear regression models – not linear in the variables, but linear in the parameters, thus all properties and characteristics of such statistical tool are valid. Experiments on benchmark functions proposed in the literature show that Kaizen Programming easily outperforms Genetic Programming and other methods, providing high quality solutions for both training and testing sets while requiring a small number of function evaluations.



  • It is a new methodology to solve problems
  • Solved symbolic regression problems (nguyen and keijzer)
  • Ordinary Least Squares to build a multiple linear
  • Uses small population
  • Bloat control
  • Can be used to solve other problems


Vinícius Veloso De Melo. 2014. Kaizen programming. In Proceedings of the 2014 conference on Genetic and evolutionary computation (GECCO ’14). ACM, New York, NY, USA, 895-902. DOI=10.1145/2576768.2598264 http://doi.acm.org/10.1145/2576768.2598264


 author = {De Melo, Vin\'{\i}cius Veloso},
 title = {Kaizen Programming},
 booktitle = {Proceedings of the 2014 Conference on Genetic and Evolutionary Computation},
 series = {GECCO '14},
 year = {2014},
 isbn = {978-1-4503-2662-9},
 location = {Vancouver, BC, Canada},
 pages = {895--902},
 numpages = {8},
 url = {http://doi.acm.org/10.1145/2576768.2598264},
 doi = {10.1145/2576768.2598264},
 acmid = {2598264},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords = {collaborative problem solving, curve-fitting, evolutionary algorithm, genetic programming, linear regression, symbolic regression},


kollaborative Problemlösung, Kurvenanpassung, evolutionären Algorithmus, genetische Programmierung, lineare Regression, symbolische Regression.
सहयोगी समस्या को हल करने, वक्र ढाले, विकासवादी एल्गोरिथ्म, आनुवंशिक प्रोग्रामिंग, रेखीय प्रतिगमन, प्रतीकात्मक प्रतिगमन।
penyelesaian masalah bersama, keluk-pemasangan, algoritma evolusi, pengaturcaraan genetik, regresi linear, regresi simbolik.
la résolution collaborative de problèmes, ajustement de courbe, algorithme évolutionnaire, la programmation génétique, la régression linéaire, la régression symbolique.