BEGIN
t := 0;
inicjalizacja populacji początkowej P(t);
REPEAT
badanie dopasowania P(t);
t := t+1;
P(t) = { };
WHILE (nie zakończona selekcja P(t)) DO
BEGIN
wybór dwóch osobników zgodnie z ich wartością funkcji dopasowania;
rekombinacja osobników w celu utworzenia dwóch potomków;
mutacja potomków;
dodanie potomków do populacji P(t);
END;
UNTIL (spełniony warunek zatrzymania)
END.