Hacker News new | ask | show | jobs
by horyzen 2564 days ago
Genetic algorithms works well when

0) there is not enough data for you to train a NN, and

1) you have a really huge solution space for the problem that you cannot brutal force, and

2) you can encode each solution into a simple ``string'' (chromosome), and

3) the problem you're trying to solve is not very time critical (GA can take seconds to minutes depending on your problem)

Also, GA can actually utilize many CPU or even GPU cores to solve the problem much faster.

1 comments

> the problem you're trying to solve is not very time critical (GA can take seconds to minutes depending on your problem)

Ha. Days or weeks is typical for complex problems.

Yep, I recently worked on an engineering project, where GAs were used to evolve new designs for large steel structures, with the aim of reducing weight (and, ergo, cost).

There were a lot of constraints, and several applications were used at different points (e.g. specialised 3D CAD) - a single generation took around 1 hour, so we had to let it run for days at a time on a cluster to be useful.

Which genetic algorithm were you using?
I wasn't in the AI team (I was the architect for the cloud infrastructure and backend), but my understanding was it was pretty much a "textbook" implementation (I dabbled with GAs, basic neural networks and swarm optimisation several years ago).

I actually kind of surprised, because I didn't realise people still used GAs any more, let alone such a standard implementation.

In the specific area I worked on, minutes are borderline tolerable so I didn't think twice before posting. But now that you said it, I totally see how it can go on for days.
Interesting. What is the application that need ga and can’t tolerate minutes of evaluation?
Let's just say the "customers" are impatient for a good enough solution that is part of a iterative workflow :)