Evolving solutions rather than computing them certainly represents an unconventional programming approach. The general methodology of evolutionary computation has already been known in computer science since more than 40 years, but their utilization to program other algorithms is a more recent invention. In this paper, we outline the approach by giving an example where evolutionary algorithms serve to program cellular automata by designing rules for their iteration. Three different goals of the cellular automata designed by the evolutionary algorithm are outlined, and the evolutionary algorithm indeed discovers rules for the CA which solve these problems efficiently.
['Thomas Bäck', 'Ron Breukelaar', 'Lars Willmes']
Inverse design of cellular automata by genetic algorithms : An unconventional programming paradigm