Genetic programming
Koza applied evolutionary selection not to the parameters of a solution but to programs themselves, represented as expression trees.
Why it matters
Search moved up a level: what changes is not an algorithm's settings but its structure.
Programs cross over by exchanging subtrees and mutate by replacing nodes; fitness is measured by running them. The method demands enormous computation and produces results that are hard to read, but it needs no shape of the solution specified in advance. Koza later showed cases where genetic programming reproduced patented circuits, and called that evidence of machine inventiveness.