News for hackers. Stuff that matters.
Re:The Genetic Algorithm Explained by verdverm on Wednesday February 18, 2015 @09:07AM (#9068527)
I hope this doesn't come off as flamey or troll-like. I've been researching Symbolic Regrssion for 5 years, currently writing a dissertation on the subject.

My second paper has the better comparison between GP and PGE. Both papers compare to the most "state-of-the-art" implementations, per Korns. The only domain-specific knowledge PGE uses is the associativity and commutativity of addition and multiplication. Add partial ordering on the node types, non-linear regression of parameters, and techniques for memoization. All of the above is applicable to, and should be a part of, a GP implementation. They are separate from the actual search method, GP, GGGP, Cartesian GP, (insert more GP variants), and PGE.

PGE uses a priority queue to progress the search with local exploration functions. You basically end up with a variation best-fit search. One could use PGE on circuit board optimization or "atomic-regression" by observing that associativity and commutativity can be likened to symmetry and rotations in these spaces. The vast majority of my work has been in Symbolic Regression because it is the most useful of the GP application domains outside of research. Imagine scientists having a microscope for their data!

Fundamentally, the application problems you listed are all graph search problems. They all have domain-specific solutions which outperform a more general problems solving technique such as GP. We have many graph search algorithms (Prim,Djikstra,best-first,A* and variants) which are widely used outside of the academic research environment. Why omit the structural information about the problem, that is embedded within the problem definition and partial solutions, only to perform a randomized search? This is a question I have yet to hear a good answer to.

One of the main problems in the GP field is the difficulty in making legitimate comparisons, for several reasons. 1) Reference implementations, data, and code are scarce or don't work as well as the papers claim. 2) Benchmarks and metrics for comparison vary widely, see the GECCO 2012 paper titled "GP needs better benchmarks" 3) The reproducibility of GP literature is largely impossible, because of point 1&2, but more inherently because it is a randomized search.

I am skeptical that any randomized search method, such as GP/GA/EC, will find wide acceptance outside the research community due to reproducibility concerns and that it doesn't have a solid theoretical foundation on which to stand.

Re:The Genetic Algorithm Explained by randomsearch on Wednesday February 18, 2015 @10:39AM (#9069022)
> I hope this doesn't come off as flamey or troll-like.

Not at all, don't worry! I hope mine didn't either.

I don't think I listed any application problems -- I guess you mean the GECCO awards --- but I don't think they are all graph problems in the conventional CS sense, i.e. A* and similar algorithms do not apply.

I don't think we're in much disagreement. I'm not a cheerleader for GP, I just disagreed with your claim that your algorithm simply "outperformed" it.

GAs and GP have been used widely outside of the research community, particularly GAs. They're used for problems where there isn't an obvious approach, human intuition fails, the maths is intractable, etc. There are toolboxes for major applications like Matlab. Sometimes it's not obvious that this is the case. It's been a few years since I've been to GECCO (I was there when the benchmarks paper was presented), but they used to have a lot of industrial applications presented each year.

There are plenty of stochastic algorithms that are more effective by some measure than their non-stochastic counterparts. No rationale for bias there.

Anyway, this is probably a little too detailed a discussion for HN, ha!