Un algoritm Genetic este o metoda de cautare si optimizare bazata pe principiile evolutiei biologice. Se incepe cu o populatie de solutii posibile si apoi se folosesc diverse operatori (cum ar fi selectia, incrucisarea si mutatia) pentru a evolua si imbunatati populatia de-a lungul mai multor generatii, pana cand se gaseste solutia optima sau o solutie acceptabila.