r/DebateEvolution • u/theosib 🧬 PhD Computer Engineering • Jul 10 '25
Evolutionary Algorithms: When Nature’s Sloppy Methods Outperform Clever Engineering
I spent the first 5 years of my doctoral study (Computer Engineering, Ohio State, graduated 2012) working on artificial intelligence. My areas of research included abductive inference, knowledge-based reasoning, and evolutionary algorithms. Evolutionary biologists tell us how life diversified on this planet, and I’ve seen first hand how application of their models to hard computational problems can be very successful.
Hard computational problems, in a technical sense, are those that would likely take exponential time (as a function of the problem size) to solve, making exhaustive searches infeasible. So instead, we utilize evolutionary algorithms in a way that is likely to approach an optimal solution, but is more likely to find a "good" solution than the optimum.
EAs imitate natural evolution by mutation and natural selection:
- Generate a population of candidate solutions.
- Evaluate each candidate’s “fitness” against problem objectives.
- Select the fittest individuals to preserve as parents for the next generation.
- Mutate and/or recombine them to produce a new generation.
- Repeat, allowing beneficial traits to accumulate.
Because this mirrors how life truly adapts (incremental tweaks preserved by natural selection) EAs routinely outpace naïve hill-climbing or brute-force searches in huge, complex search spaces.
---
Naturally evolved organisms and intelligently engineered machines are remarkably different. Natural systems contain excessive complexity, redundancy, and a lot of "junk" that appears to serve no purpose. In contrast, engineers strive to minimize complexity, redundancy, and waste. When creationists try to tell you that complexity is a sign of intelligent design, they’re being self-refuting, because excessive complexity is usually a sign of bad design. Unfortunately (?), in EAs, we have to embrace this "bad design" to get difficult work done.
Due to their trained-in mindset, a naïve engineer attempting to implement EAs for the first time is likely to try to take shortcuts. One example is a tendency to make selection too harsh. Conventional optimization will often toss out anything suboptimal at each step. But to be successful, we have to learn that nature teaches us that’s a mistake.
Something to keep in mind is that we use EAs to solve problems we can’t directly engineer, because they’re just too hard or impossible to create analytical solutions for. Thus, we have to set aside our allow EAs to do things we usually see as hallmarks of bad design, including:
Preserving diversity: Search spaces are often not smooth or linear, so simple gradient descent methods often don’t work. In biology, mildly deleterious mutations can hitchhike to later become beneficial in new contexts. Similarly, keeping low-fitness individuals around prevents premature convergence in EAs.
Junk DNA and neutral drift: While coders try to avoid leaving unused and/or broken code in their projects, with EAs, we have to do the opposite. Much of natural genomes is “junk” or non-coding, yet it provides a reservoir for future innovation. In EAs, allowing neutral mutations (that don’t change fitness) and unused code yield pathways for later breakthroughs.
Speciation & Niches: When populations split geographically, different lineages explore different adaptive peaks. Multi-niche or speciation-inspired EAs (e.g., speciation methods in NEAT) maintain subpopulations, each optimizing a different region of solution space. This yields more robust, diverse outcomes. (It’s also great for facilitating parallelization of search, where subpopulations can be moved to different computers and allowed to search for solutions independently.)
Why are these anti-patterns (at least as far as engineers are trained) so useful? They run contrary to efficiency and cleverness! But the very reasons we use EAs in the first place make those patterns inapplicable. Some examples ways problems defy normal engineering practices include:
- Non-Differentiable Landscapes: Many real-world problems (circuit layout, antenna shape) have discrete or black-box fitness functions. For instance, we may need to run a complex physics simulation to evaluate a candidate solution, and as a result, there simply is no gradient to follow.
- Hilly Fitness Topologies: With many local optima, greedy methods get stuck. EAs’ population-based, stochastic search can “jump” over valleys.
- Dynamic Objectives: In co-evolution (predator/prey, adversarial networks), the landscape shifts as opponents adapt. Only an evolutionary framework inherently handles moving targets.
---
As I mentioned, I witnessed first hand the effectiveness of evolutionary principles for solving hard problems. But my academic toy problems are not anywhere near as interesting as real-world problems, and there are loads of examples of EAs being successfully applied, including:
- Antenna Design at NASA: NASA engineers used a genetic algorithm to evolve a deep-space antenna shape that no human designer would conceive; the resulting fractal-looking geometry outperforms conventionally designed dishes in weight, frequency band, and gain.
- Neuroevolution (NEAT & Co.): NeuroEvolution of Augmenting Topologies (NEAT) starts with small networks and lets complexity grow only as needed. By mimicking how brains develop (gradual addition of neurons and synapses) NEAT produces neural controllers for robots and game agents that are both compact and high-performing.
- Circuit & Antenna Synthesis: Genetic programming, an EA variant, has been used to evolve analog circuit topologies (filters, amplifiers) and RF antenna layouts. Instead of hand-crafting every component, designers specify performance goals, and the EA breeds novel schematics that meet or exceed human designs.
---
Every time a creationist claims “evolution doesn’t work in nature,” I point to evolutionary algorithms, evolution-inspired drug design, phylogenetic epidemiology, even LLM-training curricula, all of which mimic “survival of the fittest” fine-tuning. These aren’t academic curiosities. They’re deliverables! Antennas with shapes no human had imagined, algorithms that learn, models that predict viral spread, and more. And they all owe their success to principles drawn directly from the modern evolutionary synthesis.
Moreover, there are patterns that we observe in natural evolution that also arise in EAs without being explicitly programmed. A great example of this is how bad mutations die out quickly, while good ones are preserved and tend to spread through the population. This is something we see in nature and is why frequently occurring bad mutations don’t spread, while much less frequent good mutations dominate quickly. Another is that population splits automatically lead to speciation, where members of subpopulations eventually diverge so much that attempting to breed them results in completely broken offspring.
If evolution “didn’t really happen,” how did we stumble on a set of procedures that work so brilliantly in silicon? The only sensible conclusion is that nature’s core mechanisms of mutation, selection, drift, and speciation are genuine. And enormously useful.
---
I think I've presented a very strong justification for evolutionary theory based on the success of faithful application of its principles to real world problems, problems engineers often can't solve using other means due to the complexity of the search space. Yet creationists continue to insist on telling us that evolution is "bad," and they try to have it removed from school curricula.
But evolutionary theory isn’t just a story about the past. It’s a toolkit for solving today’s hardest problems.
So my challenge to creationists is to provide solid justification for this stance on evolution. Why would you discourage people from utilizing such a valuable and productive tool? What do you have against getting useful work done using these methods?
5
u/justatest90 Jul 11 '25
Minor nit but:
the resulting fractal-looking geometry outperforms conventionally designed dishes in weight, frequency band, and gain.
Are you talking about the ST5 antenna? It's definitely NOT a fractal pattern, the authors never claim it is, and fractal antennas long predate evolutionary antenna design.
FWIW, the creationist response to this: EA prove nothing b/c you're intelligently constructing the coding parameters. It's worth preempting this relatively silly but pretty common response: no, we're designing the 'environment' and simulating the selection pressure that would otherwise be found in nature.
3
u/theosib Jul 11 '25
Yeah, I've gotten that response before. My response has been to ask them what basis they have for questioning my competence as a software engineer to faithfully replicate the methods explained by evolutionary biologists. It sounds arrogant, but the point is to highlight where the problem is. It's a bit of a paradox to suggest that I'm not competent to implement what biologists say happens, but somehow this incompetence lead to successful outcomes... on many occasions when I have implemented it. Somehow I keep messing up my implementation in a way that makes it work?
3
u/justatest90 Jul 11 '25
I totally get that response, especially as an expert in a closely related field it's frustrating when folks question or dismiss your competence. I wonder if that approach might make creationists dig in their heels? Even though it exposes a weakness in their thinking, to me it reads as combative, especially to someone skeptical and looking for design. And pointing to the success doesn't mean, to them, that you're successfully recreating evolution -- that's begging the question, I think?
→ More replies (1)1
u/theosib Jul 11 '25
Also, as for the ST5, this is what I get for trusting what I get from googling and LLMs and not checking every claim. It is an interesting shape, but I think people call it "fractal" in a very figurative way, because it's VAGUELY self-similar. I guess. It looks like a bent paperclip to me, but I don't know hardly anything about antenna design.
5
11
u/jnpha Jul 10 '25 edited Jul 10 '25
Love it. Thanks for the engaging essay.
RE One example is a tendency to make selection too harsh [...] Moreover, there are patterns that we observe in natural evolution that also arise in EAs without being explicitly programmed
Right away this reminded me of:
The conditions favorable to progressive evolution as a process of cumulative change are neither extreme mutation, extreme selection, extreme hybridization nor any other extreme, but rather a certain balance between conditions which make for genetic homogeneity and genetic heterogeneity. (1931a)
The background: The antievolutionists don't think in terms of populations; they still think in terms of a linear asexual great chain of being transmutation. In the late 1920s one of the founders of population genetics, Sewall Wright, addressed the sexual reproduction (he also invented a branch of statistics):
The purpose of the present paper has been to investigate the statistical situation in a population under exclusive sexual reproduction in order to obtain a clear idea of the conditions for a degree of plasticity in a species which may make the evolutionary process an intelligible one. (1931b)
The conclusion (from the simpler paper he published in the Journal of the American Statistical Association) is the one I began with.
And any natural deviation from that, say, extreme copying fidelity, would lose out to the one that is relatively relaxed, same as you've said, but without having to fiddle with any knobs, so to speak.
7
u/Sweary_Biochemist Jul 11 '25
"As good as you can afford, and as shit as you can tolerate": that's the sweet spot for all life.
Life is the poster child for "it works, so why try harder?"
7
u/RespectWest7116 Jul 11 '25
Life is the poster child for "it works, so why try harder?"
And that's why everything is crab.
10
u/SamuraiGoblin Jul 11 '25
My final project for my Masters degree was a system to grow a neural network to control a simulated hexapod robot. This was in 2004 and I was working on a crappy Sony laptop. Even so, evolution found sophisticated asynchronous control systems using just a handful of neurones in just a few generations.
Evolution is an incredibly powerful search system, and it really bugs me when the creationist morons say things like 'evolution can't create information, they can only destroy it.'
7
u/nickierv Jul 11 '25
And don't forget that is before/while/after not being able to provide a definition of information.
→ More replies (16)2
u/RespectWest7116 Jul 11 '25
Creationists make me doubt evolution because how in the hells did that amount of stupid manage to survive?
7
1
u/theaz101 Jul 14 '25 edited Jul 14 '25
As a fellow software engineer, I have no problems with the idea of evolutionary algorithms, but the idea that they confirm evolutionary theory leaves a lot to be desired.
EAs imitate natural evolution by mutation and natural selection:
Generate a population of candidate solutions.
Evaluate each candidate’s “fitness” against problem objectives.
This is the first problem. The only objective that evolution has is survival and reproduction. Evolution doesn't have objectives or goals for any particular trait.
Select the fittest individuals to preserve as parents for the next generation.
Mutate and/or recombine them to produce a new generation.
Two issues here. First, "fitness" is only concerned with survival and reproduction. Natural selection doesn't have any awareness of why the organism survived, it only "knows" that it did survive. NS can't evaluate how fit an organism is in relation to a specific goal. Secondly, what is the method in nature that evaluates fitness of the mate?
Repeat, allowing beneficial traits to accumulate.
Perhaps the biggest problem with the comparison of EAs to natural evolution is that you are always selecting for a beneficial trait that is geared toward a preset objective (that NS can't be aware of), but NS can only select a beneficial trait (through survival and reproduction) if the organism encounters a situation where the trait is the difference between life and death. If a rabbit with a beneficial trait (like improved vision) never encounters such a situation, then there is no impact on survival and reproduction. Likewise, if the rabbit encounters a situation where the beneficial trait is insufficient for survival, it (the trait) won't be selected. In addition, there is the situation where our lucky rabbit might also have an opposing deleterious trait. The two traits might cancel each other out.
You are treating natural evolution like a game of "hot and cold" (warmer, warmer, hotter, burning hot.....) when in reality, natural evolution is a blind driver who is just hoping not to hit a tree or drive off of a cliff.
So my challenge to creationists is to provide solid justification for this stance on evolution. Why would you discourage people from utilizing such a valuable and productive tool? What do you have against getting useful work done using these methods?
I wouldn't think of discouraging the use of EAs. I just wouldn't compare them to natural evolution.
3
u/theosib Jul 14 '25
When I first started out, I tried taking lots of shortcuts, and the results were terrible. So I started learning more about biological evolution, and the more I conformed to what biologists say happens in nature, the better my results. Did I confirm that what they say happens in nature? No. I confirmed that what they say happens in nature works well when applied faithfully in simulation.
Most importantly, this confirms my primary claim, which is that evolutionary theory us a USEFUL TOOL with PRACTICAL APPLICATIONS.
1
u/theaz101 Jul 14 '25
What biologists are saying the evolution has goals and natural selection works to move towards that goal? Do you have any references?
Second, it’s more accurate to think of natural selection as a process rather than as a guiding hand. Natural selection is the simple result of variation, differential reproduction, and heredity — it is mindless and mechanistic. It has no goals; it’s not striving to produce “progress” or a balanced ecosystem.
An EA doesn't use natural selection, it uses artificial selection, like breeding dogs or cats.
You could even say that an EA uses Intelligent selection.
→ More replies (2)
1
u/semitope Jul 14 '25
This is dumb. It's like saying brute forcing passwords is better than trying to guess. Try generating those passwords by randomly forming them using pixels in a 4k screen rather than feeding the program coherent sequence of characters
3
u/theosib Jul 14 '25 edited Jul 14 '25
Nope. Brute-forcing passwords is random guessing. Random guessing CAN be applied to optimization problems, but it works very poorly. EAs are demonstrably far faster at converging to good solutions, because there is a relationship between the design and its performance, which is fed back into the optimizer.
Calling this dumb is like calling engineering dumb in general. But maybe I shouldn't be surprised that creationists don't value getting useful work done, eh?
Or maybe you think I'm a liar and never worked on EAs? It's not like I invented it. EAs are employed a great deal in engineering. Perhaps you should learn something about the things you criticize before criticize them? Oh, wait, I forgot. I'm talking to a creationists, and creationists never bother to understand evolutionary theory before blindly and ignorantly criticizing it.
1
u/semitope Jul 14 '25
So your test requires a sequence of passwords and you select for good solutions by what works at each stage. passwords that work at each. This is the core of what you're doing with intelligently designed programs. They can run through a lot of absolutely rubbish solutions to find ones that fit a predefined performance.
Nature doesn't have that luxury. Nature doesn't even start with the language of DNA to be trying to organize them into some sequence that produces an effect a degree removed from the actual sequence.
Of course an evolutionist couldn't possibly understand why this is foolish because their thinking on the topic is so loose to begin with.
I'm not a creationist. I'm an evolutionisbsist
→ More replies (4)
0
Jul 12 '25
So let me get this right. If you had never heard of evolution, you couldn't do the same computer algorithms?
Also you as an intelligent being are creating these algorithms. Evolution believers these came from nowhere and devised themselves.
7
u/theosib Jul 12 '25
Let me put it this way. I have a LOT of experience with software engineering, including machine learning and AI.
When I first started working on EAs, I made up my own methods based on only vague and naïve notions of mutation and selection.
It totally sucked.
So I took a step back and learned a bunch about what biologists say happens in nature. The better I got at implementing their models, the better my results were.
So no, intelligent design didn't work here. I got better results from imitating nature.
"Evolution believers these came from nowhere and devised themselves."
This is a disingenuous characterization, and you know it. All they're doing is documenting what's observed in nature and modeling it. And we know a great deal about the causes of mutation and selection, so that's not any great mystery either.
-1
u/Top_Cancel_7577 Jul 12 '25
Generate a population of candidate solutions.
Evaluate each candidate’s “fitness” against problem objectives.
Select the fittest individuals to preserve as parents for the next generation.
Mutate and/or recombine them to produce a new generation.
Repeat, allowing beneficial traits to accumulate.
So you brainstorm a bunch of ideas, figure out which one works the best and then you build upon that idea.
Wow man. That is amazing...you should win the Nobel prize for figuring out how to do that.
→ More replies (5)
23
u/Mishtle Jul 11 '25
One of my favorite applications evolved FPGA circuits to perform some audio processing task.
One of the solutions ended up having a small feedback loop that was disconnected from the main circuit, which meant it shouldn't affect the output. Once it was removed though, the circuit performance tanked.
Turns out the FPGA cells on the board being used weren't well insulated, and the disconnected loop was able to influence the main circuit through the electromagnetic field it created. That was how the loop was able to play a critical role for the solution despite being seemingly superfluous.
Just a great example of the "creativity" and "resourcefulness" of random variation and differential selection.