I'd love to hear from anyone who's used genetic programming for... well, anything really.
- GPs are normally used in problems where you don't know what the answer looks like, but you know it when you see it, and it is a Global Search algorithm. The biggest problem is the search space of which GPs are used is enormous, so it takes a long time to find a solution. In the practical world this isn't very practical because there are many other good enough approaches that give you approximately the same answer, but there are obviously edge cases (see point 3).
- Tuning GPs is also very difficult, there are simply too many control parameters such as population size, crossover rate, mutation rate, crossover method, mutation method, selection method, do you adjust the parameters on the fly or make it fixed from the beginning etc... you get the idea. These parameters play a role into how fast you might find the answer but there are no guarantees because of the randomness nature of the algorithm, example, one set of optimal parameters might be really bad the next run.
- In terms of application GP is actually being used in the industry, but you probably don't hear about it because it is either a trade secret or people want a more deterministic solution. One example is testing, a particular company uses it to test their compiler technology, instead of just having humans write test code to test every possible bug, GP can be used to create valid* programs that intentionally make the compiler fail. Others include the great work done at Nutonian (http://www.nutonian.com/), where they use GP to evolve equations out of data (aka Symbolic Regression).
Lastly, a shameless plug but if you want to play around with GPs I have written my own GP framework here: http://chutsu.github.io/playground/ (very much a work in progress)
Using Artificial Intelligence to Write Self-Modifying/Improving Programs
Have you seen Clojush? It's "the Push programming language and the PushGP genetic programming system implemented in Clojure." I haven't had a chance to play with it yet, but it seems to be in active development. https://github.com/lspector/Clojush
Part time scientists is a Lunar X Prize team, the software lead of that group has used Cartesian Genetic Programming to evolve programs to filter images. (https://www.youtube.com/watch?v=xQDazGrKsuM) and network protocols (https://www.youtube.com/watch?v=zoOOpiMJQ8s).
Agreed that Evolutionary Algorithms are taking a backseat at the moment, but you can argue that Neural Networks also was very dormant until some thing like Deep Neural Networks came out, which is essentially the same idea but with a new learning method (http://www.newyorker.com/news/news-desk/is-deep-learning-a-r...). I believe there will be a break through at some point, just don't think it is dead yet ;)
https://www.quora.com/Whats-the-difference-between-Genetic-A...