4 ms·
> There's no formal science behind them. I'm not sure what that means. Science is empiricism, and genetic algorithms are a wide field of research with a lot of
by TelmoMenezes 11y ago
> There's no formal science behind them.
I'm not sure what that means. Science is empiricism, and genetic algorithms are a wide field of research with a lot of experimentation behind them. There are many hypothesis about how they work, why they work and what their limitations are. These hypothesis are tested through experimentation, just like in other scientific fields.
> Smart heuristics beat these hybrid-genetic-memetic-algorithms all the time.
Sure, this is almost guaranteed by the "no free-lunch theorem":
https://en.wikipedia.org/wiki/No_free_lunch_theorem https://en.wikipedia.org/wiki/No_free_lunch_theorem
There might be some exotic cases where genetic algorithms are actually the best solution, but nobody knows that.
But that's not the point of genetic algorithms. The point is having a generic solution that can be applied with some success when you don't have the time or the resources to find those "smart heuristics". And there might be cases where we are just not smart enough to find them. Some of these cases might be related to the effort towards developing generic AI. You can also claim that it is always possible to write a more efficient computer program directly in machine code, if you ignore time and resources.
Another interesting property of evolutionary computation is enabling some form of artificial creativity. Check out this antenna, created by NASA using evolutionary computation:
https://en.wikipedia.org/wiki/Evolved_antenna https://en.wikipedia.org/wiki/Evolved_antenna
Also, if you will forgive me a bit of self promotion, check out my own work on the discovery of complex network generators:
http://www.nature.com/articles/srep06284 http://www.nature.com/articles/srep06284
- chriswarbo 11y ago>The point is having a generic solution that can be applied with some success when you don't have the time or the resources to find those "smart heuristics". And there might be cases where we are just not smart enough to find them. Indeed, the same could be said of any "smart heuristics" too: > Exact solutions beat these smart heuristics all the time. ;)
- spooningtamarin 11y agoMost of the time, heuristics are faster than operators in genetic algorithms. Same goes for heuristics being faster than exact solutions for harder problems.
- howeman 11y ago> There might be some exotic cases where genetic algorithms are actually the best solution, but nobody knows that. Actually, No Free Lunch guarantees that such cases exist.
- TelmoMenezes 11y agoGood point. What I had in mind was "problems that someone actually cares about". My bad.
- spooningtamarin 11y agoI wouldn't say genetic algorithms are generic solutions. I have to try really hard to implement efficient operators that would allow me fast optimization. Scientific contributions are mostly in operators, I guess. I can't think what else can someone working with genetic algorithms contribute because adding elitism, or 3-way crossover isn't really the solution to a problem, it's just metaheuristics jibber-jabber.
- TelmoMenezes 11y agoI find the situation a bit similar to neural networks. It's a bio-inspired model, and we know from nature that it can work spectacularly well. The actual algorithms that became popular (both in neural networks and evolutionary computation) are extreme simplifications of the biological reality. So a lot of the research goes in the direction of finding the "missing ingredients". On the evolutionary computation front, one of the topics I find the most interesting is the genotype-phenotype mapping. Naive genetic algorithms have genotypes that map directly to phenotypes (e.g you are evolving some vector which is a direct solution to a problem). More complex mapping (like what we see in nature) encode a generator for a solution. On this note, exciting stuff happens on the genetic programming front (where you are evolving computer programs, commonly Lisp-like trees). It really is a vast field, ranging from direct engineering applications to artificial life simulations aimed at theoretical biology. Like everything else, you have to be familiar with the literature.
- spooningtamarin 11y agoI'm familiar with the literature. I do not like the research. It is bad, it's rarely reproducible, source code is almost never public thus time/convergence measurements are meaningless.