TPE 1 - Sistemas de Producción: Rolling Cubes Sistemas de Inteligencia Artifcial Bergez, Brasca y García.

Slides:



Advertisements
Presentaciones similares
INGENIERIA INFORMATICA Y BUSQUEDAS CON ADVERSARIOS
Advertisements

Solución de Problemas en AI
Búsqueda en árboles de juego
¿Por que estudiar búsquedas?
Búsqueda en un espacio de Estado
INTELIGENCIA ARTIFICIAL
INTELIGENCIA ARTIFICIAL
INTEGRANTES Aguilar Pastor, Sara Blancas Tunqui, Alicia
Inteligencia Artificial
Diseño y análisis de algoritmos
Inteligencia Artificial
Estructura de Datos Unidad 4. Recursividad Dra. María Lucía Barrón Estrada Enero-Junio 2007.
Investigación de Operaciones
Logística (Manejo de la cadena de abastecimiento)
TÉCNICA DE DISEÑO BACKTRACKING
La maquina de Turing La máquina de Turing es una caja negra (tan simple como una máquina de escribir y tan compleja como un ser humano) capaz no sólo de.
Grupo 4 Matías Melgar Pablo Carbonell
Inteligencia Artificial Búsqueda informada y exploración
Métodos básicos de Búsqueda
Algoritmo A*.
Investigación Algorítmica
Computación Raúl Espejel-Morales Laboratorio Interdisciplinario (326)
PROGRAMACION DE ESTRUCTURAS DE DATOS
Cap 4 Búsqueda Heurística
Búsqueda Informada Heurísticas.
Inteligencia Artificial Búsqueda informada y exploración
Problema: Viajante de Comercio
BUSQUEDA EN JUEGOS DE ADVERSARIO Sección 1-4
Inteligencia Artificial Resolver problemas mediante búsqueda
Inteligencia Artificial Resolver problemas mediante búsqueda
Inteligencia Artificial Gonzalo Villarreal Farah
Algoritmos de búsqueda para problemas de optimización discreta
PROGRAMACIÓN LÓGICA.
1 Algoritmos Elementales de Grafos Agustín J. González ELO-320: Estructura de Datos Y Algoritmos 1er.Sem
Temas importantes para el desarrollo de la segunda parte del TPE
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Capítulo 4 BUSQUEDA INFORMADA.
Solución de problemas por Búsqueda
Optimización, Búsqueda Heurística
Agentes de resoluciones d problemas Parte I. Un agente puede adoptar una meta o un propósito para satisfacer.

Diseño y análisis de algoritmos
Raúl Heiras Andazola Edgar A. Robles Reyes Luis Alonso Ramos Fdez Diseño de Robots Dr. Carlos F. Pfeiffer Octubre 22, 2003.
complejidad de un problema.
INSTITUTO TECNOLÓGICO DE VILLAHERMOSA. CATEDRATICO:
¿Por que estudiar búsquedas? Recordemos que la mayoría de los problemas en inteligencia artificial, involucran como tema central un proceso de búsqueda.
Barbara Martina Rodeker Universidad Nacional del Centro de la Pcia. de Buenos Aires El problema del viajante Una implementación.
METODOS DE BUSQUEDA INFORMADOS CAPITULO 5
INTELIGENCIA ARTIFICIAL FISI – UNMSM II. Representación de problemas como búsqueda en un espacio de estados Definición de problemas de la I.A.
Parte II. Algorítmica. 5. Backtracking. 1. Análisis de algoritmos.
1 Introducción a la Computación para Biólogos, Bioquímicos, Médicos, etc.
Algoritmos genéticos Introducción Esquema básico Codificación
Problema de inclusión en una Curva Digital Por Orellana Muñoz, Alfonso Paz Vicente, Rafael Pérez Medina, Gerardo Rodríguez Naranjo.
Una aproximación a la visión
La Frontera de Posibilidades de la Producción
PROBLEMAS DE SATISFACCIÓN DE RESTRICCIONES
AJEDREZ Carlos A. Alsina.
Toribio Sarmiento Miguel Sesarego Cruz Rosmery. Desde la aparición de las civilizaciones, los juegos han ocupado la atención de las facultades intelectuales.
BUSQUEDA EN UN ESPACIO DE ESTADOS.
Investigación Algorítmica
El Poder de la Sonrisa.
Solver complemento de excel
Introducción a los TADs
Inteligencia Artificial
La clase P juega un papel importante en la teoría de la complejidad computacional debido a que: 1. P es invariante para todos los modelos de cómputo que.
TEMA I Teoría de Circuitos
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Non-guillotine 2D bin packing problem Eduardo Pérez Mederos Miguel Monterrey Varela Jaime González Valdés Óscar Mateos López.
Algoritmos voraces Códigos de Huffman. Descripción del problema Tenemos un archivo de entrada. Asumiremos que el archivo está compuesto de bytes (enteros.
Algoritmo Genético para la solución del problema SAT René Clemente Juárez Angel Felipe Lara Valladares Junio 2012.
Transcripción de la presentación:

TPE 1 - Sistemas de Producción: Rolling Cubes Sistemas de Inteligencia Artifcial Bergez, Brasca y García

Introducción - Representación Tablero 3x3 – Matriz 3x3 Tablero 3x3 – Matriz 3x3 Cubos mitad negros mitad blancos y vacío en el centro – Distintas fichas. Cubos mitad negros mitad blancos y vacío en el centro – Distintas fichas.

Introducción - Reglas Rotar los cubos si es posible en las 4 direcciones. (8 cubos * 4 movimientos = 32 reglas/estado) Rotar los cubos si es posible en las 4 direcciones. (8 cubos * 4 movimientos = 32 reglas/estado) Mover el espacio blanco y cambiar la ficha por al correspondiente (1 blanco * 4 movimientos = 4 reglas/turno). Se utiliza tabla de transformación de ficha. Mover el espacio blanco y cambiar la ficha por al correspondiente (1 blanco * 4 movimientos = 4 reglas/turno). Se utiliza tabla de transformación de ficha.

Introducción - Estados Estado Inicial: Estado Inicial: Estado Objetivo: Estado Objetivo: Aleatorio: Aleatorio:

Función de Costo La función de costo siempre suma 1 a cada regla aplicada, ya que en este tipo de juegos, todas las reglas demandas el mismo costo. La función de costo siempre suma 1 a cada regla aplicada, ya que en este tipo de juegos, todas las reglas demandas el mismo costo.

Simetrías Simetrías en las 4 direcciones. Se implementó en el método equals. Simetrías en las 4 direcciones. Se implementó en el método equals. Reduce el factor de ramificación pero aumenta el procesamiento. Reduce el factor de ramificación pero aumenta el procesamiento. Ejemplo de primeros nodos: Ejemplo de primeros nodos:

Heurísticas 3 heurísticas desarrolladas: 3 heurísticas desarrolladas: - Nula: Caso para no utilizar ninguna. - Nula: Caso para no utilizar ninguna. - Posiciones incorrectas. - Posiciones incorrectas. - Manhattan mejorada. - Manhattan mejorada.

Heurísticas – Posiciones Incorrectas Cada posición que no está en blanco o si el blanco está en el centro o si el vacío no está en el medio suma 1 al costo de la solución. Cada posición que no está en blanco o si el blanco está en el centro o si el vacío no está en el medio suma 1 al costo de la solución. Ejemplos: Ejemplos: H = 6 H = 8

Heurísticas – Manhattan mejorada Cuando una ficha horizontal o vertical se encuentra en el borde del tablero y es imposible obtener un blanco con un movimiento se le asigna el costo de 5 movimientos. Cuando una ficha horizontal o vertical se encuentra en el borde del tablero y es imposible obtener un blanco con un movimiento se le asigna el costo de 5 movimientos. Cuando hay una negra en el centro se le asigna el costo de 6 movimientos y en otro lugar del tablero 4. Cuando hay una negra en el centro se le asigna el costo de 6 movimientos y en otro lugar del tablero 4.

Heurísticas – Manhattan mejorada Cuando hay una blanca en el centro, se le asigna el costo de 6 movimientos ya que debe moverse varias veces para volver a ser blanco en otra posición. Cuando hay una blanca en el centro, se le asigna el costo de 6 movimientos ya que debe moverse varias veces para volver a ser blanco en otra posición. Al vacío se le asigna 0 y a las blancas en posición distinta del centro también. Al vacío se le asigna 0 y a las blancas en posición distinta del centro también.

Motor Motor de inferencia genérico. Motor de inferencia genérico. Entrada: Problema y método de resolución. Entrada: Problema y método de resolución. Salida: Respuesta según problema (Solución si es hay alguna). Salida: Respuesta según problema (Solución si es hay alguna). Utiliza el algoritmo de listas de nodos abiertos y cerrados. Utiliza el algoritmo de listas de nodos abiertos y cerrados.

Motor – Estructura de Nodo Nodo ancestro: Una referencia al padre, para poder rastrear y reconstruir el camino de ser necesario. Nodo ancestro: Una referencia al padre, para poder rastrear y reconstruir el camino de ser necesario. Regla: La regla que se utilizó para transformar al padre en este nodo. Regla: La regla que se utilizó para transformar al padre en este nodo. Estado: El estado del tablero generado. Estado: El estado del tablero generado.

Motor – Estructura de Nodo Nivel: El nivel de profundidad. Nivel: El nivel de profundidad. Costo: El costo hasta ese nodo. Costo: El costo hasta ese nodo. Heurística: El resultado de la función heurística de haber una. Heurística: El resultado de la función heurística de haber una. Función f: La suma entre la heurística y el costo, utilizada en los métodos A*. Función f: La suma entre la heurística y el costo, utilizada en los métodos A*.

Motor - Configuración El motor se configura mediante un archivo con los siguientes parámetros: El motor se configura mediante un archivo con los siguientes parámetros: - lookCloseNodes: Para realizar la búsqueda como si fuese un grafo. - lookCloseNodes: Para realizar la búsqueda como si fuese un grafo. - lookOpenNodes: Para dejar los nodos de menor costo en la lista de abiertos. - lookOpenNodes: Para dejar los nodos de menor costo en la lista de abiertos.

Motor - Configuración - problem: Se ingresa el problema a resolver siempre que esté soportado. - problem: Se ingresa el problema a resolver siempre que esté soportado. - method: El método de búsqueda. - method: El método de búsqueda.

Motor – Métodos de Búsqueda DFS DFS DFS informado DFS informado Costo uniforme Costo uniforme A* A* IDA* IDA*

Resultados

Resultados

Resultados

Resultados La solución óptima se encontró con el método A* y la heurística manhattan en 68 minutos aproximadamente y se utilizaron un total de nodos exploradores. La solución óptima se encontró con el método A* y la heurística manhattan en 68 minutos aproximadamente y se utilizaron un total de nodos exploradores. IDA* tardó medio minuto menos y usó la misma cantidad de nodos. IDA* tardó medio minuto menos y usó la misma cantidad de nodos.

Conclusiones Los métodos más complejos reducen drásticamente el tiempo de computación. Los métodos más complejos reducen drásticamente el tiempo de computación. De acuerdo a la complejidad del problema, la heurística incrementa su importancia y es determinante en la búsqueda del camino óptimo. De acuerdo a la complejidad del problema, la heurística incrementa su importancia y es determinante en la búsqueda del camino óptimo.

Bibliografía Juego de Rolling Cubes URL: gos/jugar.php?id=3416 Juego de Rolling Cubes URL: gos/jugar.php?id=3416 URL: gos/jugar.php?id=3416 URL: gos/jugar.php?id=3416 Juego y solución óptima URL: ingcubes.html Juego y solución óptima URL: ingcubes.htmlhttp:// ingcubes.htmlhttp:// ingcubes.html

¿Preguntas?