¿Cómo resolver un sudoku utilizando un algoritmo genético?

19 Sep
2009

Una de las excusas por las que creé este blog fue la de tener algún sitio donde poder publicar documentos. Quería escribir, dejar un tangible por escrito de algo que yo supiese para que otra persona pudiese leerlo tranquilamente y, con suerte, despertar su curiosidad y lograr que se interesase por el tema.

No quería escribir documentos largos, ni teóricos, sino algo que permita una lectura rápida (y quizá hasta amena) y que dé una visión a vista de pájaro de un problema, de alguna técnica, o de alguna tecnología en concreto.

Tenía pensado utilizar los algoritmos genéticos como punto de partida y escribir un documento acerca de cómo funciona este mecanismo copiado de la naturaleza, con la misma idea que subyace de este video de Redes:
Innovar copiando a la naturaleza

Pero, ¿qué problema resolver? No encontraba ninguno que me llamase la atención hasta que vi esta entrada en el blog de Jorge Rubira. Decidí resolver un sudoku con un algoritmo genético, ya que es un pasatiempo muy popular cuyas reglas conoce prácticamente todo el mundo, y lo hice.

Así es que si queréis saber cómo resolver un problema de este tipo utilizando esta técnica deberéis pinchar en el siguiente enlace, el cual contiene un PDF con todas las explicaciones y el código fuente en java por si queréis jugar con ello.

¿Cómo resolver un sudoku utilizando un algoritmo genético?

Print

12 respuestas a ¿Cómo resolver un sudoku utilizando un algoritmo genético?

Avatar

Merche

19 de Septiembre de 2009 a las 19:08

Hola Raúl.

Me ha parecido muy interesante esto que cuentas de los sudokus a pesar de que no soy una entendida en la materia.
Sigo tu blog a menudo asi que hasta la próxima, un saludo!!!

Avatar

Raúl Expósito

19 de Septiembre de 2009 a las 19:27

Hola Merche,

Muchas gracias por el comentario y por seguir el blog. Siempre es un placer saber que alguien te lee.

Saludos

Avatar

Javi

19 de Septiembre de 2009 a las 20:03

Muy bien tío!

Un abrazo

Avatar

Jackie

25 de Noviembre de 2009 a las 0:31

Muchas Gracias por este post. REalmente me ha ayudado mucho para una de mis clases de Sistemas Inteligentes.

REalmente tienes talento para transmitir conocimiento ademas de ejecutarlo.

Gracias.

Avatar

Raúl Expósito

25 de Noviembre de 2009 a las 9:00

Gracias a tí por el comentario. Me alegro de que te haya sido de utilidad.

Saludos

Avatar

Claudia

4 de Enero de 2010 a las 20:49

super interesante.! me atrae mucho la atencion los blogs q ud publica! :D son muy buenos

Avatar

Vicente Daniel

24 de Junio de 2010 a las 13:14

Entonces la representación que haces de esto es una matriz 9×9 donde vas comprobando los elementos bien colocados por filas y por columnas si lo he entendido más o menos bien no?

Avatar

Raúl Expósito

24 de Junio de 2010 a las 21:49

Bueno, nosotros lo vemos como una matriz de 9×9, pero el programa realmente lo almacena como un array de 81 posiciones y realiza las comprobaciones sobre dicho array. Puedes verlo en la página 6 del PDF.

Saludos

Avatar

Lord Nahojx

25 de Octubre de 2011 a las 6:18

Guauu esta muy interesante tu post
me ha servido bastante ahora que estoy comensando en el tema
de la pogramacion inteligente y avanzada

Avatar

Raúl Expósito

25 de Octubre de 2011 a las 8:29

Gracias por el comentario, me alegro de que te haya sido de ayuda.

Saludos

Avatar

Ramon

17 de Noviembre de 2011 a las 18:36

Me ha encantado este post ….
mas que nada por poder ver las cosas desde un punto
de vista mas natural…
ese el camino que debemos seguir

Avatar

Raúl Expósito

17 de Noviembre de 2011 a las 20:06

Muchas gracias Ramón,

Hay más técnicas que emulan a la naturaleza para resolver problemas de forma computacional. Ahora mismo me vienen a la cabeza las redes de neuronas y las técnicas de razonamiento con incertidumbre. Quitando su parte formal y analítica, que indudablemente existe y es grande, puedes ver que tienen un comportamiento que a nosotros nos resulta natural y que nos permite ver muy fácilmente que las cosas no son, de por si, ni buenas ni malas. Entre el blanco y el negro hay una enorme escala de grises.

Saludos

Deja tu comentario


subir