La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Generación de Crucigramas

Presentaciones similares


Presentación del tema: "Generación de Crucigramas"— Transcripción de la presentación:

1 Generación de Crucigramas
Integrantes Franco Huertas, Joel A García Moncada, Marco Antonio J Vera Olivera, David Carlos ª Canchucaja Vílchez, José del Carmen K

2 1. Planteamiento del Problema 2. Objetivos 3. Marco Teórico
Temas 1. Planteamiento del Problema 2. Objetivos 3. Marco Teórico 4. Modelo de la Solución 5. Diseño del Prototipo 6. Experimentación 7. Análisis de Resultados 8. Conclusiones 9. Recomendaciones 10. Agradecimientos

3 1. Planteamiento del Problema
Los crucigramas generados contienen la rejilla de palabras y no de las definiciones de las palabras. Las características lingüísticas propias de la lengua española no se utilizan en el proyecto. El problema de llenar una rejilla de palabras significativas es un problema de la búsqueda heurística. El espacio de la búsqueda es extremadamente grande. Cada vez que una palabra debe ser colocada en la rejilla una decisión tiene que ser tomada para seleccionar entre, digamos, aproximadamente palabras que seria el posible tamaño de nuestro diccionario, así que el factor de ramificación es muy grande en cada paso de la decisión. Hay también muchos apremios implicados al poner palabras. Esta explosión exponencial de la ramificación y de las restricciones impuestas hace que la generación del crucigrama sea un problema de la inteligencia artificial.

4 El problema consiste en ubicar palabras que estén contenidas en un diccionario dado por válido, de tal manera que se puedan leer de izquierda a derecha en cada fila y de arriba abajo en cada columna. Factores que pueden limitar el encontrar una o más soluciones: Tiempo: Puede demorar demasiado tiempo el hallar un primera solución eso está ligado al tamaño del crucigrama Tamaño del crucigrama, a más tamaño mayor es el árbol de búsqueda. Las ramificaciones pueden ser muy numerosas. Insuficientes palabras en el diccionario: Podría ser que no se halle ninguna solución en el caso de que no se cuente con las suficientes palabras, ya que éstas deben estar cruzadas entre filas y columnas de manera entrelazada.

5 2. Objetivos El objetivo general a cumplir en nuestro trabajo de investigación es: Realizar una manera sencilla de generar un crucigrama de ciertas dimensiones y variado grado de dificultad, que solucione los problemas de pérdida de tiempo en su elaboración. Los objetivos particulares a cumplir en nuestro trabajo de investigación son: 1.- El primer objetivo es brindar una herramienta que permita la generación de crucigramas para distintos escenarios que demanden su elaboración. 2.- El segundo objetivo es dar las bases para una generalización de este trabajo, con el objetivo de construir crucigramas de tamaño variable.

6 3. Marco Teórico En diciembre de 1913, el primer crucigrama fue publicado en el suplemento de domingo del New York World por Arturo Wayne. Aunque se han desarrollado muchas variaciones, el crucigrama tradicional sigue siendo la clase más popular. La generación del crucigrama se ve mayormente como un problema que requiere mucha agudeza. Se pretende crear un generador de crucigramas, que sea capaz de producir crucigramas de 10x10 que sean similares a los publicados en revistas y diarios. En las secciones siguientes, una descripción del problema, los acercamientos posibles para solucionarlo, y nuestro acercamiento con los detalles del algoritmo se presentan.

7 Como soluciones posibles, los autores priorizan las siguientes:
Colocación al azar Divide y conquistarás Rellenado circular Llenado de fila-columna Llenando la rejilla

8 4. Modelo de la Solución

9 5. Diseño del Prototipo Planteamiento de la solución. Para resolver el problema se va a utilizar una heurística que evite tener un árbol de búsqueda muy extenso y disminuya así la demora en hallar una solución válida. Se probará con todas las palabras del diccionario, iniciando con la primera y terminando con la última. Búsqueda. Para cada palabra del diccionario se sigue la siguiente lógica: Crear una lista que no incluya a dicha palabra. Y así de manera recursiva se irá colocando cada palabra iniciando en la primera fila y luego la siguiente palabra en la primera columna. Luego la tercera palabra irá en la segunda fila y la cuarta palabra en la segunda columna, etc. Cada vez que se elija una fila o columna se evaluará una heurística para cada palabra lo que permitirá saber que palabra es la que va a ir en esa ubicación, será la que tenga un más alto valor para dicha heurística.

10 Heurística. Estará formada por dos valores: Valor Vertical g Valor Horizontal h Luego la heurística es la siguiente: f = g + h Donde g es el número de palabras que inician con las letras de las palabras que ya se han colocado en la columna actual. Donde h es el número de palabras que inician con las letras de las palabras que ya se han colocado en la fila actual. Al final se elegirá la palabra que presente un mayor valor de heurística para la fila y columna actual. Al inicio se coloca un palabra del diccionario iniciando por la primera, luego se le aplica el algoritmo de búsqueda y se sigue con la siguiente hasta recorrer todas las demás.

11 6. Experimentación

12 6. Experimentación

13 7. Análisis de Resultados
Obtuvimos los resultados esperados. Sin embargo las limitaciones de nuestro trabajo son las siguientes: 1. No resuelve crucigramas rectangulares sólo de N x N de forma cuadrada, es decir número de filas es igual al número de columnas. Cambiarlo no debe ser muy complicado. 2. No se han incluido obstáculos para que se simplifique el problema, mejorar el código es de dificultad moderada.

14 8. Conclusiones Como conclusiones del trabajo podemos decir que: 1.- El trabajo propuesto permite la construcción de crucigramas de forma cuadrada (n x n) y a su vez, permite una implementación futura de crucigramas de tamaño variable. 2.- La heurística para la generación del crucigrama en el caso específico de este trabajo es posible generalizarla para otra fase del mismo, correspondiente a construir el crucigrama de tamaño m x n. 3.- El diccionario de las palabras que se van a usar en la generación del crucigrama es muy importante y útil para poder hacer las comparaciones respectivas del algoritmo. En caso contrario, el programa no arrojará resultados.

15 9. Recomendaciones 1.- La principal recomendación que el grupo hace es tomar el algoritmo de búsqueda ya resuelto para n x n, y generalizarlo para un crucigrama de tamaño variable. 2.- Además, se debe considerar siempre en las pruebas un n>=4 para que el crucigrama generado sea coherente con lo que se desea solucionar. 3.- Finalmente, de ser posible, crear varios tipos de diccionarios de palabras de acuerdo al tema que quiera tratar el crucigrama.

16 10. Agradecimientos Agradecemos por la oportunidad brindada para desarrollar el presente proyecto de investigación, que es parte de la evaluación del curso de Inteligencia Artificial ST 414 Esperamos que el mismo haya satisfecho las expectativas puestas en éste trabajo y les invitamos a mejorar el presente trabajo, estaremos siempre a su mayor disposición. Ante cualquier inquietud, sírvanse hacérnosla llegar.

17 Bibliografía Inteligencia Artificial: Un Enfoque Moderno – Stuart Russell Inteligencia Artificial: Una Nueva Síntesis – Nils J. Nilsson "Crossword Puzzle Generation", Berker, I. -Bogazici University, (Historia de los desarrolladores de crucigramas, métodos de creación y solución, etc.) Otras referencias Web


Descargar ppt "Generación de Crucigramas"

Presentaciones similares


Anuncios Google