Búsqueda con adversario
|
|
|
- Gonzalo Rico Parra
- hace 9 años
- Vistas:
Transcripción
1 Búsqueda con adversario José Luis Ruiz Reina José Antonio Alonso Jiménez Franciso J. Martín Mateos María José Hidalgo Doblado Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Ampliación de Inteligencia Artificial, 202
2 Índice Juegos: representación Decisión con minimax Poda alfa-beta
3 Juegos: introducción Programación de las máquinas para juegos de estrategia Basados en búsqueda (enormes espacios de búsqueda) La existencia de un oponente introduce incertidumbre Existen limitaciones en el tiempo de respuesta Pueden competir contra la inteligencia humana En general, se trata de construir sistemas que sean capaces de tomar decisiones en un entorno adverso Tipos de juegos: Información completa, deterministas: ajedrez, damas Información completa, con azar: backgammon Información incompleta, con azar: juegos de cartas
4 Juegos: características y ejemplos Características de los juegos que vamos a estudiar en este tema: Juegos bipersonales Los jugadores mueven alternativamente La ventaja para un jugador es desventaja para el otro Los jugadores poseen toda la información sobre el estado del juego Hay un número finito de estados y decisiones No interviene el azar Ejemplos de juegos de ese tipo: Ajedrez, damas, go, otelo, 3 en raya, nim,... Ejemplos de juegos que no son de ese tipo: Backgammon, poker, bridge,...
5 Elementos de un juego Jugadores: Máquina (al que llamaremos MAX) Humano (al que llamaremos MIN) Estados: situaciones por las que puede pasar el juego Estado inicial (comienzo del juego) Estados finales (final del juego) En los estados finales, especificaremos qué jugador gana Movimientos: operadores que se aplican a los estados, cambiando las situaciones de juego Función de utilidad: valoración (respecto de MAX) basada en las reglas del juego, que se asigna a un estado final y a un turno
6 Juegos: Nim El juego Nim: Situación inicial: una pila con N fichas Jugadas: tomar, 2 ó 3 fichas de la pila Objetivo: obligar al adversario a coger la última ficha Ejemplo de jugada en el Nim, comenzando con 9 fichas Jugador coge 3 fichas (quedan 6) Jugador 2 coge ficha (quedan 5) Jugador coge 2 fichas (quedan 3) Jugador 2 coge 2 fichas (queda ) Jugador coge ficha (no quedan fichas) Por tanto, jugador 2 gana
7 Juegos: Nim Estados: Número fichas que quedan en la mesa Estado inicial: número de fichas al comienzo Un único estado final: 0 El estado final es ganador para un jugador si es su turno Movimientos: Tomar, 2 ó 3 fichas Función de utilidad: si le toca a MAX y - si le toca a MIN
8 Juegos: 3 en raya En un tablero 3x3, un jugador posee fichas X y otro fichas O. En cada turno el jugador coloca una ficha en el tablero. Gana el que consigue colocar tres de sus fichas en línea X O X O X X O X O X O X X O
9 Juegos: 3 en raya Estados: tablero + ficha que se pondrá a continuación Estado inicial: tablero vacío + ficha de salida Estados finales: tableros completos o con línea ganadora Estados ganadores para un jugador: estados finales con línea ganadora en los que no le toca poner
10 Juegos: 3 en raya Movimientos: 9 movimientos posibles, uno por casilla Colocar ficha en i (i = 0,...,8) Aplicación de movimientos: Aplicable si la casilla no está ocupada Estado resultante: colocar la ficha que toca en la casilla especificada Función de utilidad: si es ganador para MAX 0 si es tablas - si es ganador para MIN
11 Implementación de la representación de un juego Estructuras de datos para estados y movimientos Funciones y variables: Una variable * estado-inicial* Una función es-estado-final(estado) Una función es-estado-ganador(estado,turno,jugador) Una lista * movimientos* Una función aplica-movimiento(movimiento,estado) Una función f-utilidad(estado,turno) aplica-movimiento(movimiento,estado): devuelve no-aplicable si movimiento no es aplicable a estado, o el estado resultante en otro caso es-estado-ganador(estado,turno,jugador): Devuelve verdad si y sólo si jugador gana el juego en el estado final estado cuando le toca al jugador turno
12 Árboles de juego Representación de todas las posibles situaciones que se pueden dar en el juego, a partir de un estado dado Cada nivel corresponde a un jugador (el primero para MAX) Un árbol de juego en el Nim:
13 El problema de decidir el movimiento adecuado En su turno, la máquina debe decidir qué movimiento hacer En cada turno, construir el árbol de juego completo cuyo nodo raíz sea la situación actual, desarrollándolo hasta los estados finales Valorar los finales según la función de utilidad Propagar hacia arriba los valores de la función Elegir el movimiento que lleve al estado sucesor del actual con mejor valoración La propagación de valores se hace según el principio minimax: MAX siempre escogerá lo mejor para MAX y MIN lo peor para MAX Un nodo de MAX toma el valor del sucesor con mayor valor Un nodo de MIN toma el valor del sucesor con menor valor
14 Un arbol minimax y completo para el Nim (4 de inicio)
15 Complejidad de los árboles de prueba y heurística Problema: en la mayoría de los juegos, un árbol de juego completo es enorme Complejidad exponencial y tiempo limitado para decidir En la práctica es imposible generar todo el árbol Complejidad en el ajedrez Número medio de posibles movimientos en un turno: 35 Número medio de movimientos de una partida: 00 Árbol con nodos!!! Idea: No expandir el árbol hasta los estados finales sino sólo hasta un determinado nivel de profundidad Valorar los estados que sean hojas del árbol usando una función heurística Propagar valores usando el principio minimax
16 Ejemplo: árbol minimax con evaluación estática Evaluación estática Valor minimax A B 3 C 2 D 3 E 5 F 2 G 9 5 H I 0 J 2 K 9 L M 5 N 0 Profundidad máxima O 6 P 2 R 0 4 S
17 Heurística: función de evaluación estática Función de evaluación estática: Dado un estado del juego y un turno, es una estimación de la bondad de tal situación respecto de MAX En los estados finales, debería coincidir con la de utilidad Esta función heurística codifica todo el conocimiento que poseemos acerca del juego Cuanto mayor el valor, mejor el estado para MAX Lo importante es la comparación del valor entre los estados Implementación: En lo que sigue, asumiremos que en lugar de una función f-utilidad(estado,turno), disponemos de una función f-e-estatica(estado,turno), definida sobre todos los estados También necesitaremos dos variables: * maximo-valor* y *minimo-valor* almacenando, respectivamente, cotas para el mayor y el menor valor que puede tomar la función de evaluación estática
18 Ejemplos de función de evaluación estática en el Nim * MAXIMO-VALOR* = y * MINIMO-VALOR* = - Primera función de evaluación estática (muy poco informada): FUNCION F-E-ESTATICA(ESTADO,TURNO) Si ES-ESTADO-FINAL(ESTADO) Si TURNO = MAX, devolver *MAXIMO-VALOR* en otro caso, devolver *MINIMO-VALOR* en otro caso, devolver 0 Segunda función de evaluación estática, estrategia ganadora (comenzando): FUNCION F-E-ESTATICA(ESTADO,TURNO) Si TURNO = MAX, Si REM(ESTADO,4) =, devolver *MINIMO-VALOR* en otro caso, devolver *MAXIMO-VALOR* en otro caso, Si REM(ESTADO,4) =, devolver *MAXIMO-VALOR* en otro caso, devolver *MINIMO-VALOR*
19 Una función de evaluación estática en el 3 en raya Función de evaluación estática: Una línea potencialmente ganadora para un jugador es aquella que el jugador podría completar para ganar *MAXIMO-VALOR* = y *MINIMO-VALOR* = FUNCION F-E-ESTATICA(ESTADO,TURNO) Si ES-ESTADO-GANADOR(ESTADO,TURNO,MAX), devolver *MAXIMO-VALOR* si no, si ES-ESTADO-GANADOR(ESTADO,TURNO,MIN), devolver *MINIMO-VALOR* si no, si ES-ESTADO-FINAL(ESTADO), devolver 0 si no, devolver la diferencia entre el número de posibles líneas ganadoras para MAX y el número de posibles líneas ganadoras para MIN Ejemplos (suponiendo que MAX juega con X ): X O X O X X X O O O 6 5= 5 5=0 4 5= 6 5= 5 5=0
20 Una función de evaluación estática en el 3 en raya X X 2 X X O X O X X X O O O 6 5= 5 5=0 4 5= 6 5= 5 5=0 O X O X 5 4= 6 4=2 O X X O X O O O 5 6= 6 6=0 4 6= 2 5 6= 6 6=0 X X
21 Implementación de minimax Nodo de juego: estado + jugador turno Funciones de acceso: ESTADO(NODO) y JUGADOR(NODO) Sucesores de un nodo: FUNCION SUCESOR(NODO,MOVIMIENTO) Hacer ESTADO-SUCESOR igual a APLICA-MOVIMIENTO(MOVIMIENTO,ESTADO(NODO)) 2 Si ESTADO-SUCESOR = NO-APLICABLE devolver NO-APLICABLE en otro caso, devolver un nodo cuyo estado es ESTADO-SUCESOR, y cuyo jugador es el contrario de JUGADOR(NODO) FUNCION SUCESORES(NODO) Hacer SUCESORES vacío 2 Para cada MOVIMIENTO en *MOVIMIENTO*, si SUCESOR(NODO,MOVIMIENTO)!= NO-APLICABLE, incluir SUCESOR(NODO,OPERADOR) en SUCESORES 3 Devolver SUCESORES
22 Implementación de minimax Decisión minimax: FUNCION DECISION-MINIMAX(ACTUAL,PROFUNDIDAD) Hacer MAX-VAL igual a *MINIMO-VALOR* 2 Por cada NODO en SUCESORES(ACTUAL), 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX(NODO,PROFUNDIDAD-) 2.2 Si VALOR-ACTUAL >= MAX-VAL, hacer MAX-VAL igual a VALOR-ACTUAL y hacer MAX-NODO igual a NODO 3 Devolver MAX-NODO Cálculo del valor minimax: FUNCION VALOR-MINIMAX(NODO,PROFUNDIDAD) Si ES-ESTADO-FINAL(ESTADO(NODO)) o PROFUNDIDAD = 0 o SUCESORES(NODO) igual a vacío, devolver F-E-ESTATICA(ESTADO(NODO),JUGADOR(NODO)) si no, si JUGADOR(NODO) = MAX, devolver MAXIMIZADOR(SUCESORES(NODO),PROFUNDIDAD-) si no, devolver MINIMIZADOR(SUCESORES(NODO),PROFUNDIDAD-)
23 Implementación de minimax Cálculo de máximos y mínimos: FUNCION MAXIMIZADOR(SUCESORES,PROFUNDIDAD) Hacer MAX-VAL igual a *MINIMO-VALOR* 2 Por cada NODO en SUCESORES, 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX(NODO,PROFUNDIDAD) 2.2 Si VALOR-ACTUAL >= MAX-VAL, hacer MAX-VAL igual a VALOR-ACTUAL 3 Devolver MAX-VAL FUNCION MINIMIZADOR(SUCESORES,PROFUNDIDAD) Hacer MIN-VAL igual a *MAXIMO-VALOR* 2 Por cada NODO en SUCESORES, 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX(NODO,PROFUNDIDAD) 2.2 Si VALOR-ACTUAL <= MIN-VAL, hacer MIN-VAL igual a VALOR-ACTUAL 3 Devolver MIN-VAL Importante: el proceso recursivo descrito implementa una generación en profundidad de los nodos del árbol de juego
24 Recorrido en profundidad del árbol de juego Evaluación estática Valor minimax A Orden de análisis B 3 4 C 2 2 D 3 3 E 5 5 F 2 0 G H 6 7 I 0 J K 9 L M 5 5 N 0 Profundidad máxima 8 O 6 9 P R S
25 Complejidad de minimax Complejidad: Sea r es el factor de ramificación y m el nivel de profundidad. Complejidad en tiempo: O(r m ). Complejidad en espacio: O(rm). Aún es ineficiente en la práctica: En el ajedrez, con 50 segundos por turno, sólo será posible analizar nodos, luego sólo se podrá generar un árbol de profundidad menor que 4 Por tanto, la calidad del juego de la máquina sería muy baja (un jugador humano medio puede planificar al menos 6 jugadas por adelantado) La poda alfa-beta mejora: En algunos casos, es posible podar el árbol sin que afecte a la decisión que se toma finalmente
26 Ejemplo de poda alfa-beta Situación justo después de analizar el subárbol de raíz F: Evaluación estática Valor minimax >3 A Orden de análisis B 3 4 C <2 2 D 3 3 E 5 5 F I 0 J 2 G No es necesario analizar los restantes sucesores del nodo C H Profundidad máxima 8 O 6 9 P 2
27 Ejemplo de poda alfa-beta Poda alfa-beta para el juego Nim con N= α α 0
28 Ejemplo de poda alfa-beta Poda alfa-beta para el juego Nim con N= α 0 β 0 β α α α 0 0 0
29 Minimax con poda alfa-beta Idea: Cada nodo se analiza teniendo en cuenta el valor actual que tiene y el valor actual que tiene su padre Esto determina en cada momento un intervalo (α,β) de posibles valores que podría tomar el nodo Significado intuitivo de α y β en cada momento: Nodos MAX: α es el valor actual del nodo (que tendrá eso o más) y β es el valor actual del padre (que tendrá eso o menos) Nodos MIN: β es el valor actual del nodo (que tendrá eso o menos) y α es el valor actual del padre (que tendrá eso o más) La poda se produce si en algún momento α β: Y no hace falta analizar los restantes sucesores del nodo En nodos MIN, se denomina poda β y en los nodos MAX, poda α
30 Implementación de minimax con poda alfa-beta Decisión minimax con poda alfa-beta: FUNCION DECISION-MINIMAX-A-B(ACTUAL,PROFUNDIDAD) Hacer ALFA igual a *MINIMO-VALOR* 2 Por cada NODO en SUCESORES(ACTUAL), 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX-A-B(NODO,PROFUNDIDAD-,ALFA,*MAXIMO-VALOR*) 2.2 Si VALOR-ACTUAL > ALFA, hacer ALFA igual a VALOR-ACTUAL y hacer MAX-NODO igual a NODO 2.3 Si ALFA >= *MAXIMO-VALOR*, salir del bucle <--- poda alfa 3 Devolver MAX-NODO Cálculo del valor minimax con poda alfa-beta: FUNCION VALOR-MINIMAX-A-B(NODO,PROFUNDIDAD,ALFA,BETA) Si ES-ESTADO-FINAL(ESTADO(NODO)) o PROFUNDIDAD=0 o SUCESORES(NODO) igual a vacío, devolver F-E-ESTATICA(ESTADO(NODO),JUGADOR(NODO)) si no, si JUGADOR(NODO) = MAX, devolver MAXIMIZADOR-A-B(SUCESORES(NODO),PROFUNDIDAD-,ALFA,BETA) si no, devolver MINIMIZADOR-A-B(SUCESORES(NODO),PROFUNDIDAD-,ALFA,BETA)
31 Implementación de minimax con poda alfa-beta Cálculo del máximos y mínimos: FUNCION MAXIMIZADOR-A-B(SUCESORES,PROFUNDIDAD,ALFA,BETA) 2 Por cada NODO en SUCESORES, 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX-A-B(NODO,PROFUNDIDAD,ALFA,BETA) 2.2 Si VALOR-ACTUAL > ALFA, hacer ALFA igual a VALOR-ACTUAL 2.3 Si ALFA >= BETA, salir del bucle <--- poda alfa 3 Devolver ALFA FUNCION MINIMIZADOR-A-B(SUCESORES,PROFUNDIDAD,ALFA,BETA) 2 Por cada NODO en SUCESORES, 2. Hacer VALOR-ACTUAL igual a VALOR-MINIMAX-A-B(NODO,PROFUNDIDAD,ALFA,BETA) 2.2 Si VALOR-ACTUAL < BETA, hacer BETA igual a VALOR-ACTUAL 2.3 Si ALFA >= BETA, salir del bucle <--- poda beta 3 Devolver BETA
32 Complejidad de alfa-beta Complejidad: Sea r es el factor de ramificación y m el nivel de profundidad Complejidad en tiempo: O(r 3m 4 ) Complejidad en espacio: O(rm) En la práctica, si los sucesores se exploran en orden de valor minimax (creciente o decreciente dependiendo de si es un nodo MIN o MAX, resp.), se produce la máxima poda, y en ese caso la complejidad temporal es O(r m 2 )
33 Eficiencia y heurística de la poda alfa-beta Según lo anterior, en el mismo tiempo se pueden considerar hasta el doble de jugadas por adelantado que sin poda (haciendo a la máquina más competitiva) Sin perder precisión Se pueden introducir heurísticas para intentar obtener la máxima poda Métodos heurísticos para generar los sucesores en el orden adecuado: Usar el valor de la función de evaluación estática para ordenar Usar búsqueda en profundidad iterativa y guardar los valores minimax calculados en cada iteración
34 Cuestiones técnicas Existen numerosas mejoras a las técnicas descritas, que permiten crear máquinas que juegan a nivel competitivo Decisiones sobre la profundidad de búsqueda: Efecto horizonte Búsqueda de posiciones quiescentes Diseño de funciones de evaluación estática: Combinación lineal de características Pesos para ponderar la importancia de cada característica Aprendizaje automático: Aprendizaje de los pesos, tras una serie de partidas consigo misma Redes neuronales Biblioteca de movimientos (aperturas, finales,... )
35 3 en raya: ejemplo de juego > inicializa-3-en-raya() Estado : Jugador : MAX Mi turno. Estado : X
36 3 en raya: ejemplo de juego Jugador : MIN Los movimientos permitidos son: (PON-FICHA-EN 0) (0) (PON-FICHA-EN ) () (PON-FICHA-EN 2) (2) (PON-FICHA-EN 3) (3) (PON-FICHA-EN 5) (4) (PON-FICHA-EN 6) (5) (PON-FICHA-EN 7) (6) (PON-FICHA-EN 8) (7) Tu turno: Estado :. O X Jugador : MAX Mi turno. Estado : X O X
37 3 en raya: ejemplo de juego Jugador : MIN Los movimientos permitidos son: (PON-FICHA-EN 2) (0) (PON-FICHA-EN 3) () (PON-FICHA-EN 5) (2) (PON-FICHA-EN 6) (3) (PON-FICHA-EN 7) (4) (PON-FICHA-EN 8) (5) Tu turno: 5 Estado : X O X O Jugador : MAX Mi turno. Estado : X O X X. O 6 7 8
38 3 en raya: ejemplo de juego Jugador : MIN Los movimientos permitidos son: (PON-FICHA-EN 2) (0) (PON-FICHA-EN 3) () (PON-FICHA-EN 5) (2) (PON-FICHA-EN 7) (3) Tu turno: Estado : X O. 0 2 O X X. O Jugador : MAX Mi turno. Estado : X O X 0 2 O X X. O Jugador : MIN La maquina ha ganado NIL
39 Bibliografía Russell, S. y Norvig, P. Inteligencia Artificial (un enfoque moderno) (Pearson Educación, 2004). Segunda edición Cap. 6: Búsqueda con adversario Russell, S. y Norvig, P. Artificial Intelligence (A Modern Approach) (Prentice Hall, 200). Third Edition Cap. 5: Adversarial search Winston, P.R. Inteligencia artificial (3a. ed.) (Add Wesley, 994). Cap. 6: Arboles y búsqueda con adversario. Cap. 4.7.: Juegos: la estrategia minimax y sus modificaciones. Rich, E. y Knight, K. Inteligencia artificial (segunda edición) (McGraw Hill Interamericana, 994). Cap. 2: Los juegos.
Tema 7: Búsqueda con adversario (juegos)
Tema 7: Búsqueda con adversario (juegos) José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos María José Hidalgo Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad
Tema 4: Técnicas heurísticas en juegos
Tema 4: Técnicas heurísticas en juegos José A. Alonso Jiménez Carmen Graciani Díaz Francisco Jesús Martín Mateos José Luis Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia Artificial UNIVERSIDAD
Búsqueda con adversario
Búsqueda con adversario José Luis Ruiz Reina José Antonio Alonso Jiménez Franciso J. Martín Mateos María José Hidalgo Doblado Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla
Tema 6: Técnicas heurísticas en juegos
Inteligencia Artificial I Curso 2005 2006 Tema 6: Técnicas heurísticas en juegos José A. Alonso Jiménez Francisco J. Martín Mateos José L. Ruiz Reina Dpto. de Ciencias de la Computación e Inteligencia
Tema 6: Técnicas heurísticas en juegos
Inteligencia Artificial I Curso 2007 2008 Tema 6: Técnicas heurísticas en juegos José A. Alonso Jiménez Carmen Graciani Díaz Francisco J. Martín Mateos José L. Ruiz Reina Dpto. de Ciencias de la Computación
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial
Inteligencia Artificial
I.T. en Informática de Sistemas, 3º Curso académico: 2009/2010 Profesores: Sascha Ossowski y Ramón Hermoso 1 Tema 2: Búsqueda Resumen: 2. Búsqueda 2.1. Agentes de resolución de problemas 2.2. Búsqueda
Búsqueda en línea y Búsqueda multiagente
Búsqueda en línea y Búsqueda multiagente Ingeniería Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani 1 Tema 2: Agentes basados en Búsqueda Resumen: 2. Agentes basados
Para definir en formalmente el juego se deberá establecer:
INTRODUCCION A LA INTELIGENCIA ARTIFICIAL MÓDULO 5- JUEGOS COMO PROBLEMA DE BÚSQUEDA Referencias: Inteligencia Artificial Russell and Norvig Cap.5. Artificial Intellingence Nils Nilsson Ch.3 Se trata el
4ta. Práctica. Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta. Inteligencia Artificial Prácticas 2004/2005
4ta. Práctica Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta Inteligencia Artificial Prácticas 2004/2005 Decisiones Perfectas en Juegos de DOS Participantes Definición de Juego Estado Inicial:
JUEGOS. Área de aplicación de los algoritmos heurísticos Juegos bi-personales: oponente hostil
JUEGOS Área de aplicación de los algoritmos heurísticos Juegos bi-personales: oponente hostil I Oponente: Jugador: intenta mover a un estado que es el peor para Etiquetar cada nivel del espacio de búsqueda
(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos
Especialización en Creación y Programación de Videojuegos CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos Agenda de hoy Juegos Combinatorios Información en un Juego La suma de un Juego s
(d) Puede haber estrategias que funcionan mejor que Minimax si el contrincante es
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
Tema 4: Búsqueda informada mediante técnicas heurísticas
Tema 4: Búsqueda informada mediante técnicas heurísticas José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos 1 Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad
INTELIGENCIA EN REDES DE COMUNICACIONES
INTELIGENCIA EN REDES DE COMUNICACIONES JUEGOS CON ADVERSARIO ALGORITMO MINIMAX PODA ALFA BETA OTRAS MEJORAS ANA BEATRIZ SOLANA SÁNCHEZ JUEGOS BIPERSONALES Este tipo de juegos los podemos definir como:
4. En el algoritmo de minimax con poda alfa-beta es posible podar TODOS los sucesores de un nodo de juego que se está analizando? Por qué?
Inteligencia Artificial (Curso 2013 2014) Máster en Matemática Avanzada Tema 3: Búsqueda con adversario 1. Influye el orden en el que se analizan los sucesores de un nodo en la eficiencia del algoritmo
(e) Con la poda alfa-beta se eliminan nodos que nunca serán alcanzados
Universidad Rey Juan Carlos Curso 2014 2015 Hoja de Problemas Tema 5 1. Cuáles de las siguientes afirmaciones acerca del algoritmo Minimax son ciertas (a) El algoritmo Minimax realiza una exploración primero
Búsqueda en espacio de estados
Búsqueda en espacio de estados Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Abstracción Problema Representación como espacio de estados Implementación del
Búsqueda con adversario
Introducción Búsqueda con adversario Uso: Decidir mejor jugada en cada momento para cierto tipo de juegos Hay diferentes tipos de juegos según sus características: Numero de jugadores, toda la información
Inteligencia Artificial. Integrantes Equipo # 1:
INSTITUTO TECNOLÓGICO De Nuevo Laredo Especialidad: Ingeniería en Sistemas Computacionales Catedrático: Ing. Bruno López Takeyas. Asignatura: Inteligencia Artificial. Integrantes Equipo # 1: Javier Alonso
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes
Sistemas Inteligentes I Tema 3. Juegos José A. Montenegro Montes [email protected] Resumen! Juegos! Algoritmo Minimax! Poda Alfa-Beta! Funciones de Evaluación Juegos! Entornos multiagente, donde cada agente
ALGORITMO MINIMAX. o Nodo: Representa una situación del juego. o Sucesores de un nodo: Situaciones del juego a las que se
ALGORITMO MINIMAX Algoritmo de decisión para minimizar la pérdida máxima aplicada en juegos de adversarios Información completa (cada jugador conoce el estado del otro) Elección del mejor movimiento para
A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO
E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y Ciencias de la Computación RELACIÓN DE PROBLEMAS. TEMA IV. PROBLEMAS DE JUEGOS.
Apellidos:... Nombre:... Ejercicio 1 (Cuestiones) [2 puntos] Responder a las siguientes cuestiones de manera clara y concisa:
Inteligencia Artificial I (5 Febrero 2008) Apellidos:... Nombre:... Ejercicio 1 (Cuestiones) [2 puntos] Responder a las siguientes cuestiones de manera clara y concisa: 1. Consideremos el siguiente puzle:
Problemas de búsqueda entre adversarios
Introducción, I Problemas de búsqueda entre adversarios Juegos For IA researchers, the abstract nature of games makes them an appealing subject for study (Russell & Norvig, 2003). Juegos» Origen, 1928:
Tema 2: Representación de problemas como espacios de estados
Tema 2: Representación de problemas como espacios de estados José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad
No se permiten libros ni apuntes. Ejercicio 1 Ejercicio 2 Ejercicio 3 Ejercicio 4 TOTAL NOTA
Junio Duración: h Ejercicio Ejercicio Ejercicio Ejercicio TOTAL NOTA Ejercicio : [ puntos: respuesta acertada = +., respuesta incorrecta =.] Complete las siguientes frases y conteste a cada una con verdadero
Juegos deterministas. Ajedrez, damas, Go, Othello. barquitos
Búsqueda con adversario: Juegos Fernando Berzal, [email protected] Tipos de juegos Juegos deterministas Juegos de azar Con información perfecta Con información imperfecta Ajedrez, damas, Go, Othello barquitos
Métodos de Búsqueda para juegos humano-maquina. PROF: Lic. Ana María Huayna D.
Métodos de Búsqueda para juegos humano-maquina PROF: Lic. Ana María Huayna D. Tópicos 1. Introducción 2. Juegos 3. Estrategias de Juego 4. Algoritmo Minimax 5. Algoritmo Poda Alfa-Beta 1.- Introducción
Juegos deterministas. Ajedrez, damas, Go, Othello. barquitos
Árboles de juegos Análisis y Diseño de Algoritmos Tipos de juegos Juegos deterministas Juegos de azar Con información perfecta Con información imperfecta Ajedrez, damas, Go, Othello barquitos Backgammon,
El Juego como Problema de Búsqueda
El Juego como Problema de Búsqueda En este algoritmo identificamos dos jugadores: max y min. El objetivo es encontrar la mejor movida para max. Supondremos que max mueve inicialmente y que luego se turnan
Inteligencia Artificial
Inteligencia Artificial Grupo PLG Universidad Carlos III de Madrid IA. 2008 Grupo PLG (UC3M) Inteligencia Artificial Inteligencia Artificial 1 / 70 Indice 1 Introducción 2 Búsqueda sin información Búsqueda
Búsqueda en espacio de estados
Búsqueda en espacio de estados Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Inteligencia Artificial CCIA, US Búsqueda en espacio de estados IA 1 / 35 Metodología
Problemas de búsqueda entre adversarios
Problemas de búsqueda entre adversarios Juegos For IA researchers, the abstract nature of games makes them an appealing subject for study (Russell & Norvig, 2003). 1 Introducción Juegos» Origen, 1928:
Búsqueda con adversario. Representación del juego. Búsqueda con adversario. Notas. Uso: Decidir mejor jugada en cada momento para cierto tipo de
úsqueda con adversario ntroducción Uso: ecidir mejor jugada en cada momento para cierto tipo de juegos Hay diferentes tipos de juegos según sus características: umero de jugadores, toda la información
Estado 3.2 (coste = 9)
Búsqueda heurística Fernando Berzal, [email protected] Búsqueda heurística Búsqueda primero el mejor p.ej. búsqueda de coste uniforme [UCS] Heurísticas Búsqueda greedy El algoritmo A* Heurísticas admisibles
Hoja de Ejercicios. Temas 1 y 2
Hoja de Ejercicios Temas 1 y 2 Ejercicio 1: Complete las siguientes frases con las alternativas especificadas. Si existen varias alternativas verdaderas, márquelas todas. 1.1. Cuál(es) de las siguientes
Problemas de. adversarios. Juegos
Problemas de búsqueda entre adversarios Juegos 1 Juegos Introducción, I» Origen, 1928: John Von Newmann Teorema fundamental de los juegos bipersonales de suma nula.» Desarrollo, 1944: Von Newmann, J. Morgernsten,
Tema 3: Técnicas básicas de
Inteligencia Artificial Curso 999 2000 Tema 3: Técnicas básicas de búsqueda José A. Alonso Jiménez Francisco J. Martín Mateos Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de
Inteligencia Artificial II Unidad Plan 2010-Ingeniería en Sistemas Computacionales
Inteligencia Artificial II Unidad Plan 2010-Ingeniería en Sistemas Computacionales Rafael Vázquez Pérez Unidad II:Técnicas de Búsqueda. 2.1. Solución de problemas con búsqueda. 2.2. Espacios de estados.
Tema 1: Representación de problemas como espacio de estados
Tema 1: Representación de problemas como espacio de estados José A. Alonso Jiménez Carmen Graciani Díaz Francisco Jesús Martín Mateos José Luis Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia
Semana 4: Métodos de Búsqueda No informados. Prof. Oscar Benito Pacheco.
Semana 4: Métodos de Búsqueda No informados Prof. Oscar Benito Pacheco. Estrategias de Búsqueda Búsqueda No Informada Búsqueda Informada (Ciega) (Heurística) 1. Búsqueda preferente por amplitud 2. Búsqueda
BÚSQUEDA. Vicente Martínez Orga
BÚSQUEDA Vicente Martínez Orga [email protected] Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid Campus de Montegancedo sn, 28660 Boadilla del Monte,
Hoja de Problemas Tema 2 Búsqueda no-informada
Ejercicio 1: 1.1. El enfoque de los Agentes Inteligentes concibe el objetivo de la Inteligencia Artificial como el intento de construir sistemas (a) (b) (c) (d) que actúen como las personas (tipo Eliza).
Fundamentos de Inteligencia Artificial
Fundamentos de Inteligencia Artificial Búsqueda con Adversario Hugo Vega Huerta En esta sección Conoceremos métodos que permiten practicar juegos de tablero. una opción conduce a otra, pero se trata de
PROYECTO DOCENTE ASIGNATURA: "Inteligencia Artificial"
PROYECTO DOCENTE ASIGNATURA: "Inteligencia Artificial" Grupo: Clases Teór. Inteligencia Artificial Grupo 1 ING. COMPUTADORES(961083) Titulacion: Grado en Ingeniería Informática-Ingeniería de Computadores
PROYECTO DOCENTE ASIGNATURA: "Inteligencia Artificial"
PROYECTO DOCENTE ASIGNATURA: "Inteligencia Artificial" Grupo: Clases Teór. Inteligencia Artificial Grupo 1 ING. COMPUTADORES(961083) Titulacion: Grado en Ingeniería Informática-Ingeniería de Computadores
INTELIGECIA EN REDES DE COMUNICACIONES 5º ING TELECOMUNICACIÓN TRABAJO FINAL DE LA ASIGNATURA EL DOMINÓ AUTORES
INTELIGECIA EN REDES DE COMUNICACIONES 5º ING TELECOMUNICACIÓN 2006-2007 TRABAJO FINAL DE LA ASIGNATURA EL DOMINÓ AUTORES DANIEL F. TAVEIRA MONTEIRO RODRIGO GÓMEZ RODRIGUEZ DAVID TOLEDO NAVARRO 1. Índice
Inteligencia Artificial. Oscar Bedoya
Inteligencia Artificial Oscar Bedoya [email protected] * Algoritmo minimax * Poda alfa-beta * Juegos con decisiones imperfectas * Juegos con elemento aleatorio * Aplicaciones Tipos de contrincantes
Agentes que resuelven problemas
Agentes que resuelven problemas 1. Formulación de meta (decidir que estados son objetivo) y del problema (decidir que acciones y estados se van a considerar) 2. Buscar una solución (examinar posibles acciones
Espacios de estados Técnicas básicas de búsqueda en espacios de estados Búsqueda informada mediante técnicas heurísticas.
Tema 3: Búsqueda José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Miguel A. Gutiérrez Naranjo Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla
Algoritmos de búsqueda con espacio de memoria limitado
Algoritmos de búsqueda con espacio de memoria limitado Los métodos de búsqueda por primero el mejor, tales como A, no escalan bien a grandes problemas de búsqueda debido a su consumo de memoria, mientras
Curso 2012-2013 15/10/12. Inteligencia Artificial (30223) Lección 5. Juegos. Índice. Juegos. Los juegos son una forma de entorno multiagente
Inteligencia Artificial (30223) Lección 5. Juegos Curso 2012-2013 José Ángel Bañares 15/10/2013. Dpto. Informática e Ingeniería de Sistemas. Índice Juegos Decisiones optimas Poda α-β Juegos con información
Algoritmo Poda Alpha-Beta
Algoritmo Poda Alpha-Beta Información imperfecta. i JUEGO DE INSPECCION - Me imagino aquí a mi exalumno y ahora colega, el Dr. Heinecken, actualmente Inspector de Instalaciones Nucleares de la ONU. i Los
Tema 1: Introducción a la Inteligencia Artificial
Introducción a la Inteligencia Artificial Curso 2002 2003 Tema : Introducción a la Inteligencia Artificial José A. Alonso Jiménez Francisco J. Martín Mateos Dpto. de Ciencias de la Computación e Inteligencia
Algoritmos de búsqueda
Capítulo 3 Algoritmos de búsqueda 3.1. Introducción Para realizar una búsqueda en el juego del ajedrez, éste, puede ser representado mediante un árbol, en el cual los nodos representan posiciones del tablero
TP de Programación Funcional: Reversi
TP de Programación Funcional: Reversi Fecha de entrega: 20 de septiembre 6 de septiembre de 2007 Índice 1. Módulo Reversi 1 1.1. Reglas del juego........................... 1 1.2. Tipos de datos............................
Curso !"#$%#$!& Inteligencia Artificial (30223) Problemas resueltos. Índice. Problema del laberinto. ! Problema del laberinto
Inteligencia rtificial (303) Problemas resueltos urso 01-013 José Ángel añares 1//013. Dpto. Informática e Ingeniería de Sistemas. Índice! Problema del laberinto! Puzzle de dos dimensiones! Misioneros
ALGORITMOS DE BÚSQUEDA. Ing. Ronald A. Rentería Ayquipa
ALGORITMOS DE BÚSQUEDA Algoritmos de Búsqueda Tipos Tipos de algoritmos de búsqueda ALGORITMOS DE BÚSQUEDA NO INFORMADA ALGORITMOS DE BÚSQUEDA HEURÍSTICA Búsqueda no informada Introducción Búsqueda no
EJEMPLO DE PARTIDA. Pongo en la casilla: 4 El tablero queda como: X
El objetivo de este ejercicio es crear un programa que juegue a tres en raya contra un oponente humano. Tras cada movimiento el programa debe mostrar el tablero y permitir mover al humano. El programa
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA)
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS (Universidad del Perú, DECANA DE AMÉRICA) FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS 1. ESPECIFICACIONES GENERALES
INTELIGENCIA ARTIFICIAL 1
Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ciencias y Sistemas Programa del curso INTELIGENCIA ARTIFICIAL 1 INFORMACIÓN DE CURSO Código: 972 Créditos: 4 Área: Categoría: Ciencias
Ejercicio 1: [20 puntos: respuesta acertada = +1, respuesta incorrecta = 1]
Ejercicio 1: [20 puntos: respuesta acertada = +1, respuesta incorrecta = 1] Complete las frases que se muestran a continuación con las alternativas especificadas. En la siguiente tabla, indique "V" o "F"
25/09/2014 BÚSQUEDA NO INFORMADA / BÚSQUEDA CIEGA INTRODUCCIÓN BÚSQUEDA SUPOSICIONES DEL ENTORNO FORMULAR-BUSCAR-EJECUTAR
BÚSQUEDA NO INFORMADA / BÚSQUEDA CIEGA M. en C. Arturo Rodríguez García INTRODUCCIÓN BÚSQUEDA Proceso en el cual un agente construye una secuencia de acciones para alcanzar un objetivo. SUPOSICIONES DEL
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso)
Universidad Nacional de Educación a Distancia Ingeniería Técnica en Informática de Sistemas Introducción a la Inteligencia Artificial (2º curso) Soluciones exámenes junio 2010 Semana 1. Ejercicio 1. (Valoración:
Búsqueda Heurística IV
Búsqueda Heurística IV Pedro Meseguer IIIA-CSIC Bellaterra, Spain [email protected] 2 jugadores Búsqueda para juegos Perfecta información: cada jugador conoce toda la información del contrario no hay
Tema 7: Aprendizaje de árboles de decisión
Inteligencia Artificial 2 Curso 2002 03 Tema 7: Aprendizaje de árboles de decisión José A. Alonso Jiménez Miguel A. Gutiérrez Naranjo Francisco J. Martín Mateos José L. Ruiz Reina Dpto. de Ciencias de
IV Taller de Olimpiadas Matemáticas para Profesores 2014
IV Taller de Olimpiadas Matemáticas para Profesores 2014 Problemas de Estrategias Juan Neyra Faustino Introducción Los problemas de estrategia están relacionados con juegos en los que participan dos jugadores,
Algoritmos: Exploración de grafos
Algoritmos: Exploración de grafos Alberto Valderruten LFCIA - Departamento de Computación Facultad de Informática Universidad de A Coruña, España www.lfcia.org/alg www.fi.udc.es Contenido Juegos de estrategia
INTELIGENCIA ARTIFICIAL 1
Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ciencias y Sistemas Programa del curso INFORMACIÓN DE CURSO INTELIGENCIA ARTIFICIAL 1 Código: 972 Créditos: 4 Área: Ciencias de
Resolución de problemas de búsqueda
Resolución de problemas de búsqueda Memoria de Prácticas de Segunda Entrega 26 de noviembre de 2007 Autores: Mariano Cabrero Canosa [email protected] Elena Hernández Pereira [email protected] Directorio de entrega:
(Ficha 2, CASILLA) i. FE(1, A1) = = 1 ii. FE(1, A2) = = 2 iii. FE(5, A3) = = 1
onsidérese la siguiente posición del tablero de parchís con la situación de fichas descrita en el mismo. La posición se describe en la siguiente tabla: Jugador (Ficha 1, SILL) (Ficha 2, SILL) (Ficha 3,
Apellidos:... Nombre:...
Apellidos:....................................... Nombre:........................................ Introducción a la Inteligencia Artificial 1 er Parcial de Teoría 12 Noviembre 2004 Ejercicio 1: Responder
Tema 2: Inteligencia computacional y conocimiento
Razonamiento Automático Curso 999 2000 Tema 2: Inteligencia computacional y conocimiento José A. Alonso Jiménez Miguel A. Gutiérrez Naranjo Dpto. de Ciencias de la Computación e Inteligencia Artificial
3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS.
3.0.-ARBOLES ABARCADORES Y COMPONENTES CONEXOS 3.1.- CONCEPTO DE ARBOL ABARCADOR Y SU RELACION CON LOS RECORRIDOS. 3.2.- BOSQUES Y COMPONENTES CONEXOS. NEXON LENIN CEFERINO POMPOSO Los árboles son particularmente
Curso Extraordinario INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS
Curso Extraordinario INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS Contenidos del Curso Introducción a la I.A. Cómo razonamos?. Algunas experiencias con el razonamiento automático Procedimientos de solución
Anexo 3: Implementaciones en Lisp
Anexo 3: Implementaciones en Lisp José A. Alonso Jiménez Carmen Graciani Díaz Francisco Jesús Martín Mateos José Luis Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia Artificial UNIVERSIDAD DE
