Búsqueda en árboles de juego

Slides:



Advertisements
Presentaciones similares
INGENIERIA INFORMATICA Y BUSQUEDAS CON ADVERSARIOS
Advertisements

El juego del ajedrez ES BUENO JUGAR PORQUE
Branch-and-bound Search
Búsqueda en un espacio de Estado
UNIVERSIDAD DE SAN MARTIN DE PORRES
Ejemplo 2: Reparto de 3 objetos indivisibles.
Inteligencia Artificial
Inteligencia Artificial
Inteligenica Artificial I Alejandro Permingeat Inteligencia Artificial de Russell y Norving 1° edición 1996 Parte II Capítulo V.
Conclusiones capítulo 5 Cátedra. El diseño de automóviles culmina en las carreras de Fórmula 1 El diseño de programas de la IA culmina en los juegos Dedicarse.
REDES SEMANTICAS Y BUSQUEDAS
LAS PIEZAS.
Técnicas para la elaboración de un instrumento
Tema 3: Juegos bipersonales
“Programas para jugar ajedrez: ¿rivales o aliados
JUEGO DE SALÓN “LA GRAN TORMENTA” Ana Fernández Carolina Navarrete
Grupo 4 Matías Melgar Pablo Carbonell
DOM ( Document Object Model) Prof. Franklin Cedeño.
Investigación de Operaciones II
Inteligencia Artificial
Curso Inteligencia Artificial (30223) Problemas resueltos
Inteligencia Artificial Búsqueda informada y exploración
Inteligencia Artificial Búsqueda entre adversarios
BUSQUEDA EN JUEGOS DE ADVERSARIO Sección 1-4
Solución de problemas por búsqueda inteligente
POLÍTICA DE PRECIOS.
El ajedrez.
Equipo # 1 Norma Pimentel Wendy Hernandez Julisa Javier Mario Tristán.
Inteligencia Artificial Resolver problemas mediante búsqueda
Inteligencia Artificial Resolver problemas mediante búsqueda
Inteligencia Artificial Gonzalo Villarreal Farah
Tema 1: Técnicas heurísticas en juegos
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Optimización Combinatoria usando Algoritmos Evolucionistas Problemas de Optimización. Idea: Encontrar una solución "factible" y "óptima" de acuerdo a algún.
Capítulo 4 BUSQUEDA INFORMADA.
LA DECISIÓN EMPRESARIAL
Dirección General Oscar Moreno
ATON Presentación del diseño del juego de mesa Aton.
Leydy Johanna Hernández
Solución de problemas por Búsqueda
Optimización, Búsqueda Heurística
TEMA 4 JUEGOS SECUENCIALES CON INFORMACIÓN PERFECTA. Manual: cap. 6
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
Métodos de Búsqueda Informada. Búsqueda de la mejor Ruta En esta sección no sólo nos interesa encontrar una posible ruta, sino obtener aquella ruta que.
LOTERIAS Y DOMINÓS.
Diseño y análisis de algoritmos
complejidad de un problema.
Algoritmo Poda Alpha-Beta
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.
TPE 1 - Sistemas de Producción: Rolling Cubes Sistemas de Inteligencia Artifcial Bergez, Brasca y García.
. Juegos.
Inteligencia Artificial Búsqueda entre adversarios Primavera 2008 profesor: Luigi Ceccaroni.
INTRODUCCIÓN A JUEGOS (BÚSQUEDA CON ADVERSARIOS)
Juegos dinámicos con información completa
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.
Taller: Inteligencia Computacional
árbol de problemas y objetivos
Inteligencia Artificial
TEMA: DECISIONES BAJO RIESGO –TEORIA DE JUEGOS Ing. Larry D. Concha B.
 Consiste en la elección del mejor movimiento para cada jugador, es decir la máquina para quien programaremos el sistema tratará de maximizar las oportunidades.
Búsqueda de ascensión de colinas (BLv)
(1) Uno de los jugadores hace Jaque mate y gana. (2) Uno de los jugadores abandona y pierde. (3) Los jugadores empatan o hacen tablas. El final como etapa.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
Capítulo 5 Definición del alcance de la investigación a realizar: exploratoria, descriptiva, correlacional o explicativa.
Búsqueda con Adversarios Capítulo 6 Sección 1 – 4.
Implementación de algoritmo para juegos. Algoritmo Minimax  El algoritmo de minimax en simples palabras consiste en la elección del mejor movimiento.
Transcripción de la presentación:

Búsqueda en árboles de juego La destreza al competir en partidos de Ajedrez, Damas, Othello o go, ha sido por largo tiempo considerado como un rasgo distintivo de inteligencia humana. Es natural que el público en general se muestre interesado en el tipo de programas que pueden competir en estos juegos y que inclusive muchos consideran sus logros como una medida del progreso en IA. Este hecho a ayudado a elevar el STATUS de estos programas al grado de que la investigación en programas de este tipo se desarrolla en muchas universidades de prestigio. Los juegos competitivos, por otro lado constituyen un perfecto laboratorio para experimentar metodologías complejas para la solución de problemas.

Búsqueda en árboles de juego La mayoría de los juegos competitivos jugados por las computadoras, son con dos jugadores y perfectamente informados. Hay dos jugadores adversarios quienes alternativamente van haciendo sus movimientos, cada uno de los cuales ce en la talla de su oponente su propio éxito. A cada turno, las reglas definen perfectamente los movimientos legales así como que efectos tendrá con el juego, no dejando oportunidad al azar. En contraste con juegos de cartas o backgamon, cada jugador tiene completa información acerca de la posición de su oponente.

Búsqueda en árboles de juego Un ARBOL DE JUEGO es una representación explicita de todas las posibles configuraciones del juego. El nodo raíz representa la posición inicial del juego, sus sucesores son las posiciones que el primer jugador puede alcanzar en un movimiento, sus sucesores son las posiciones resultantes de a respuesta del segundo jugador. Los nodos terminales son aquellos que representan GANE, PERDI, EMPATE. Cada ruta del nodo inicial a un nodo terminal representa una partida completa en particular. Por razones que se verán más adelante llammos al primer jugador MAX y al segundo MIN.

Búsqueda Mini-Max Si j es un nodo no terminal MAX entonces: Procedimiento de etiquetamiento: Si j es un nodo no terminal MAX entonces: GANE: si cualquiera de sus sucesores es un GANE. PERDI: si todos sus sucesores son Perdí. EMPATE: si cualquiera de sus sucesores es EMPATE y no hay ningún GANE. Status(j) =

Búsqueda Mini-Max Si j es un nodo no terminal MIN entonces: GANE: si todos los nodos sucesores es un GANE. STATUS(j)= PERDI: si alguno de sus sucesores es un PERDI. EMPATE: si cualquiera de sus sucesores es EMPATE y no hay ningún nodo PERDI.

Búsqueda Mini-Max Así tenemos que la función STATUS(J) debe interpretarse como el mejor status terminal que MAX puede alcanzar en la posición J si juega óptimamente en contra del oponente perfecto. Resolver el árbol de juego significa etiquetar el nodo raíz como G-P-E. Una ESTRATEGIA GANADORA es aquella que garantiza un GANE a MAX sin importar lo que MIN juegue.

Lookahead y función de evaluación En la sección anterior de proceso de etiquetado de los nodos requiere que el arbol de juego sea generado completo, algo poco recomendable para la mayoría de los juegos competitivos: Ej. Un juego completo de Damas requiere 1040 nodos no terminales [ Samuel, 1959 ]. Un árbol de juego completo del ajedrez requiere cerca de 10120 nodos.

Búsqueda en árboles de juego Estos números muestran que es casi absurdo pensar en obtener siempre un árbol de juego completo. Una técnica para poder evaluar el valor de un nodo consiste en utilizar aproximaciones Heurísticas, es decir utilizar una FUNCION DE EVALUACION, que se base en características, estadísticas del juego únicamente. Una generalización obvia consiste en no evaluar el tablero inmediatamente, sino después de extender el juego con algunos movimientos.

Regla del MiniMax 1.- El valor V(J) del nodo J en la frontera de búsqueda es igual al valor de su Función de Evaluación Estática e(J). 2.- Si J es un nodo MAX, V(J) es igual al máximo valor de sus sucesores. 3.- Si J es un nodo MIN, V(J) es igual al mínimo valor de sus sucesores.

Algoritmo de podado alpha-beta El Algoritmo de podado alpha-beta es el más utilizado en aplicaciones a búsquedas en árboles de juego. Este algoritmo incrementa la velocidad de búsqueda del MiniMax mediante el podado de aquellas ramas que no influyen más en el valor del nodo raíz.

Función de evaluación Que podemos evaluar en términos generales: Material, Movilidad y Estructura. Material = Piezas mías – Piezas del oponente Movilidad= #Movs. Míos - #Movs. Oponente Estructura: Asignar valores a casillas buenas y malas. Función de evaluación: Val = K1*Ma+K2*St+Mo en donde: K1= Movimiento y K2= Mov. Prom - K1 10 10

0 5 -3 3 3 -3 0 2 -2 3 5 2 5 -5 0 1 5 1 -3 0 -5 5 -3 3 2 3 -3 0 -1 -2 0 1 4 5 1 -1 -1 3 -3 2 -2