Genetic programming is a systematic method for getting computers to automatically solve problems. Genetic programming uses the Darwinian principle of natural selection and analogs of recombination (crossover), mutation, gene duplication, gene deletion, and certain mechanisms of developmental biology to progressively breed, over a series of many generations, an improved population of candidate solutions to a problem. This paper makes the points that genetic programming now routinely delivers human-competitive machine intelligence for problems of automated design and can serve as an automated invention machine.