Статей на хабре довольно много по применению методики генетических алгоритмов.
Но суть очень простая - есть набор решений, есть критерий отбора и методы создания новых решений. Мы отбрасываем часть "плохих" решений, а на базе оставшихся строим новые решения. Снова отбрасываем и строим.
Есть и
длинная версия изложенного выше :)
Есть и пример на Deplhi для решения задачи коммивояжера этим методом. На JS тоже скоро будет свежий примерчик для более простой задачи.