Remix.run Logo
bob1029 3 hours ago

When trying to apply these ideas to other problems, the advantages offered by biological concepts almost always seem to be more than compensated by the computational difficulty of implementing them. Gathering 100x more bits per iteration is great, but not if it takes 1000x longer to run each iteration.

Population-based methods tend to perform poorly on practical hardware due to the IO and latency constraints around managing the candidate genomes. The moment you rely on populations you also become dependent on new problems like genetic diversity which is best solved by having... an unlimited population size. Pure mutation might converge more slowly on paper, but you can hill climb a single candidate at a ludicrous rate if it fits entirely within L1/L2. Biology being permitted virtually infinite population sizes with zero performance impact is the only reason this stuff works.

I'll always start with the technique that can do a million iterations per second over the one that does maybe a ten thousand. Even if the first is slower in terms of my end goal, it gives me more information to work with experimentally. I have a higher resolution time domain to play inside of. The dream would be to find something that provides most of the benefits of crossover and larger gene pools without the severe performance hit. The best I could come up with is a delta encoding scheme which made me realize this is a compression / information theoretical iron triangle type of thing. There is no way we can recover all that performance.

Matumio 2 hours ago | parent [-]

Sure, if you're working on problems that are trivial to evaluate. If your goal is to find good algorithms or parameters then you can pick a problem that evaluates fast.

But for many interesting problems evaluation will be the bottleneck, and it doesn't matter if the evolution algorithm fits into L2. It is more important to make use of distributed computing, e.g. it shouldn't have to stop all evaluations to make progress, or alternatively it should work well with very large population sizes.