Sudoku
Un algoritmo genético se basa en la evolución biológica para su funcionamiento.
La idea es partir de una población inicial para crear nuevas generaciones. Como en la naturaleza, los individuos pueden reproducirse y crear nuevos individuos. Se parte de la selección natural para escoger a los individuos más aptos que sobreviven y descartar a los menos aptos.
Para implementar un algoritmo genético se debe escoger una característica llamada aptitud que irá mejorando en los individuos conforme se ejecuta el programa.
El algoritmo genético se aplica de la siguiente manera:
- Se genera una población inicial partiendo del sudoku a resolver.
- Se calcula la aptitud de la población. Para el sudoku, la aptitud será la menor cantidad de números repetidos por filas, columnas y cuadros de 3 x 3.
- Se escogen los individuos más aptos y se cruzan entre sí.
- Se calcula la aptitud de los nuevos individuos.
- Se descartan los individuos con menos aptitud.
- Se realizan los pasos del 2 al 5 cierta cantidad de iteraciones.
- Se obtiene el individuo más apto, es decir, la solución óptima al sudoku.

Sudoku
El proyecto fue desarrollado en Java y fue realizado por:
- Laura Viviana Álvarez Carvajal
- Andrés Felipe López Becerra