Genetic Programming
- You can also use this mechanism to learn programs.
- Typically you represent a program with a functional language
like lisp. (It's a tree.)
- You breed the programs by replacing branches.
- Typically you penalise bloat (big programs) in the evaluation
function.
- The evaluation function is typically based on a program you're searching
for.
- As far as I'm aware, it's not very well used industrially.
- I'm not worried about being replaced soon.