Inteligencia Artificial

Slides:



Advertisements
Presentaciones similares
Capítulo 2 Algoritmos.
Advertisements

INGENIERIA INFORMATICA Y BUSQUEDAS CON ADVERSARIOS
El juego del ajedrez ES BUENO JUGAR PORQUE
Una amenaza es una jugada premeditada que conduce hacia la victoria. Amenazas de captura; le toca jugar al blanco, el negro amenaza ganar una pieza, ya.
Búsqueda en árboles de juego
Búsqueda en un espacio de Estado
INTELIGENCIA ARTIFICIAL
UNIVERSIDAD DE SAN MARTIN DE PORRES
Universidad San Martín de Porres
(información perfecta)
PARTE I: JUEGOS SIMULTANEOS.
Ejemplo 2: Reparto de 3 objetos indivisibles.
Inteligencia Artificial
Inteligenica Artificial I Alejandro Permingeat Inteligencia Artificial de Russell y Norving 1° edición 1996 Parte II Capítulo V.
REDES SEMANTICAS Y BUSQUEDAS
INTRODUCCION Análisis de decisiones: Es una herramienta cuyo objetivo es ayudar en el estudio de la toma de decisiones en escenarios bajo incertidumbre.
TEORIA DE JUEGOS Trata del comportamiento estratégico, del comportamiento en interacción. Esto es fundamental en la gerencia política. En teoría de juegos.
Tema 3: Juegos bipersonales
BENEMERITA UNIVERSIDAD AUTONOMA DE PUEBLA
“Programas para jugar ajedrez: ¿rivales o aliados
PARTE II: ALGORÍTMICA Tema 7. Ramificación y poda.
Movimientos Especiales
Inteligencia Artificial Búsqueda informada y exploración
UNIDAD II ANALISIS DE DECISIONES Diapositivas Unidad II M.A. Erika Straffon Del Castillo.
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

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
Teoría de Grafos.
Ana Lilia Laureano Cruces UAM-A
Tema 1: Técnicas heurísticas en juegos
Decisiones bajo Incertidumbre Teoría de Juegos
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Capítulo 4 BUSQUEDA INFORMADA.
El proceso general de la técnica de ataque radica en el ataque doble. Un ataque simultaneo sobre dos unidades hostiles o sobre dos puntos, es con toda.
Dirección General Oscar Moreno
Leydy Johanna Hernández
Estas combinaciones implican, a menudo, la coronación de un Peón o un mate en la última fila. A veces los dos incidentes aparecen en la misma combinación,
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
Parte I. Estructuras de Datos.
Diseño y análisis de algoritmos
Algoritmo Poda Alpha-Beta
METODOS DE BUSQUEDA INFORMADOS CAPITULO 5
Parte II. Algorítmica. 5. Backtracking. 1. Análisis de algoritmos.
. Juegos.
Inteligencia Artificial Búsqueda entre adversarios Primavera 2008 profesor: Luigi Ceccaroni.
INTRODUCCIÓN A JUEGOS (BÚSQUEDA CON ADVERSARIOS)
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.
Ajedrez.
BUSQUEDA EN UN ESPACIO DE ESTADOS.
Taller: Inteligencia Computacional
ANALISIS DE REDES Problema de Transporte Método de la esquina Noroeste
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)
Trabajo de Investigación del software Deep Blue
Equipo # 1 Norma Pimentel Wendy Hernandez Julisa Javier Mario Tristán.
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:

Inteligencia Artificial Búsqueda de Soluciones: Algoritmo miniMAX

Que es? En teoría de juegos, Minimax es un método de decisión para minimizar la perdida máxima esperada en juegos con adversario con información completa.

Esta diseñado para dos jugadores.(Max y Min). Que es? Esta diseñado para dos jugadores.(Max y Min). Es un procedimiento recursivo, hasta que se cumple alguna de las condiciones siguientes: Gana algún jugador. Se han explorado N capas, siendo N el limite establecido. Se ha agotado el tiempo de exploración. Se ha llegado a una situación estática donde no hay grandes cambios de un nivel a otro.

Representación de los juegos. Posición inicial. Conjunto de operadores o reglas del juego. Estado terminal. Función de utilidad.

Representación de los juegos. Heurística: No garantiza el éxito. El camino seleccionado es “razonablemente” un camino hacia la victoria o empate. Imita el comportamiento humano al examinar por anticipado un pequeño numero de jugadas antes de decidirse por una.

Estructuras utilizadas. El algoritmo Minimax utiliza la estructura de un árbol. En estructuras de datos un árbol esta formado por: Nodos. Nodo raíz A B C D E Hojas

El espacio de estados se presenta mediante árboles alternados. Que es? El espacio de estados se presenta mediante árboles alternados. NODO SUCESORES DE UN NODO NIVEL

Ejemplo: MAX x x x MIN o o o x x o o o x x x x MAX MAX 1 MIN 1 -2 -1 2 -1 MAX

Principales exponentes de la teoría de juegos: Historia La teoría de juegos. ¿Qué es un juego? Principales exponentes de la teoría de juegos: Emile Borel John Von Neumman Oskar Morgenster

¿Quién fue John Von Neumman? El teorema minimax. Ejemplo: c1 c2 c3 r1 -2,2 1,-1 10,-10 r2 -1,1 2,-2 0,0 r3 -8,8 -15,15

La suma de los valores maximin de los dos jugadores es igual a cero. Teorema Minimax La suma de los valores maximin de los dos jugadores es igual a cero. La solución maximin es la misma que el la teoría del equilibrio de Nash El punto de equilibrio de Nash.

Un ejemplo: Crisis 1914 Rusia-Francia Mínimo de las filas No apoyar a Serbia Apoyar a Serbia Comprometerse con Serbia. Poca influencia Rusa es conservada en Serbia. (2) C. Serbia es salvado; la influencia Rusa en los Balcanes es preservada; continua la agitación Serbia; el imperio Austriaco comienza a desintegrarse. (1) B. Rusia humillada y pierde influencia en los Balcanes; Austria gana el control de Serbia y preserva el imperios. (4) D. Guerra (3) Comprometerse 1 Doble Alianza (Austria-Alemania ) Atacar 3 Máximo de las columnas 4 3

¿Quién fue Claude Shannon? Historia ¿Quién fue Claude Shannon? “Programando una Computadora para que Juegue Ajedrez” artículo que describe la aplicación de MINIMAX en el procedimiento para que una computadora juegue ajedrez. 1 punto para los peones, 3 puntos para los caballos o alfiles, 5 puntos para las torres y 9 puntos para la reina. 200 puntos para jaque mate.

Funcionamiento de Minimax Planteamiento general: 2 jugadores: MAX y MIN (MAX mueve primero) Estado inicial Función sucesora Función objetivo Función de utilidad (función u)

Funcionamiento de Minimax Algoritmo minimax Tiene por objetivo decidir un movimiento para MAX. HIPÓTESIS Jugador MAX trata de maximizar su beneficio (función de utilidad). Jugador MIN trata de minimizar su pérdida.

Funcionamiento de Minimax Aplicación algoritmo: 1) Generar árbol entero hasta nodos terminales 2) Aplicar función de utilidad a nodos terminales 3) Propagar hacia arriba para generar nuevos valores de utilidad para todos los nodos 4) Elección jugada con máximo valor de utilidad

Decisiones imperfectas Dada una función de evaluación f, se puede aplicar una búsqueda minimax con límite de profundidad Uso de valores heurísticos para juegos con un espacio de estados extremadamente grande

Ejemplo: Juego imaginario 5 5 5 5 5 5 3 3 3 1 1 1 7 7 7 5 5 5 8 8 8 3 3 4 4 9 9 9 2 2 2 1 1 1 5 5 5 2 2 2 1 1 1 9 9 9 5 5 8 8 9 9 9 2 2 2 9 9 9 1 1 1

Funcionamiento: Pseudo código MINIMAX(posicion, nivel) /* casos base */ if (esGanador(posicion)) then devolver +∞ else if (esPerdedor(posicion)) then devolver −∞ else if (esEmpate(posicion)) then devolver 0 else if (nivel = limite) then devolver evaluacion(posicion) else /* caso recursivo */ for all sucesor i de posicion do valores[i] := MINIMAX(sucesor i, nivel+1) if (esNodoMAX(nivel)) then devolver maximo(valores) end if if (esNodoMIN(nivel)) then devolver minimo(valores) end for

Ejemplos de juegos Gato Conecta cuatro 9! = 362880 partidas Nim

Ejemplos de juegos Damas Ajedrez 1031 partidas 10123 partidas

Ejemplos de juegos Go Othello 10360 partidas

Bridge, Solitario, Backgammon Ejemplos de juegos Juegos que no aplica Bridge, Solitario, Backgammon

Ejemplo: Rock Piles Dos jugadores Los jugadores toman piedras de la pila Reglas Inicialmente hay 2 piedras en una pila y 1 en otra MAX empieza y se alternan movimientos MAX gana si MIN saca la última piedra MIN gana si MAX saca la última piedra

Ejemplo: Rock Piles MAX MIN MAX Jugador 2 Pierde Jugador 2 Pierde

Ejemplo: Rock Piles 1 MAX 1 MIN 1 1 MAX MAX MIN MAX Jugador 2 Pierde 1 MIN 1 1 MAX