This style of problem is probably the most common sort used to demonstrate genetic algorithms. It is also not a very good use for GAs.<p>When GAs are applied in this way--i.e. generating a goal state directly, with a known goal state to which they are compared directly, generating a fitness value that is nothing more than progress towards the goal state--then the GA is no longer a GA. It becomes not much more than an inefficient hill climbing with a smattering of random walk thrown in.<p>These sorts of problems get used in demonstrations because they are simple to understand. We get to spend more effort on the mechanics of annealing, breeding, running generations, etc, without having to spend significant effort on the fitness function. But the fitness function is where most of the real work of applying GA to novel problems actually lies (after figuring out how to model solutions as genes without a linear dependency between alleles). It&#x27;s also a fundamental component of neural networks (the ability to evaluate not just whether a solution is right or wrong, but to give a value for how much right or wrong). So personally, I find such demos to be woefully incomplete.