Síntesis del artículo “Real-Time Monte Carlo Tree Search in Ms Pac-Man”

5
Síntesis del artículo “Real-Time Monte Carlo Tree Search in Ms Pac-Man” Equipo nº 9: Daniel Ceballos Monsalve c.c 1152215229 Camila Mantilla Rojas c.c 1090466094 Nicolás Villegas Echavarría c.c 1037625350 Primera parte: Descripción de las partes del artículo Numeral I. Introducción: Se hace una pequeña reseña histórica del juego, y se habla acerca de sus objetivos básicos. Se enuncia el objetivo del artículo, a saber: “Este artículo discute mejoras al algoritmo MCTS, para permitir su uso en dominios estocásticos y de tiempo real tales como Ms. Pac-Man”. También se habla someramente de otras aplicaciones del algoritmo MCTS, así como también se habla de las competencias de inteligencia artificial (AI) en torno al juego y del éxito que han tenido los agentes que utilizan el algoritmo MCTS. Numeral II. Ms Pac-Man: se hace una contextualización de las reglas y mecánicas del juego. Numeral III. Monte Carlo Tree Search: Se da una explicación del algoritmo MCTS y se describen cada uno de sus pasos básicos. Además, se expone el motivo por el cual MCTS resulta especialmente útil en dominios de tiempo real. Numeral IV. MCTS para Ms Pac-Man: Se discuten las mejoras al algoritmo MCTS aplicado a Ms. Pac-Man. Primero, se provee una descripción del árbol de búsqueda. Luego, se da la estructura de las recompensas y las mejoras a los pasos estratégicos del algoritmo MCTS. El objetivo es presentar las técnicas que son específicas a Ms Pac-Man pero que también pueden ser extendidas o adaptadas a otros dominios de tiempo real. Esta sección se divide en varios literales: En el literal A. Árbol de búsqueda y altura variable, se explica la representación del laberinto de juego como un grafo (árbol) en donde los corredores son aristas y los cruces son nodos, y la manera en la que se asignan pesos a las aristas. En el literal B. Tácticas, se describen los tres estados, o tácticas, posibles en el juego y las posibles acciones tomadas bajo alguna de estas. El literal C. Reutilización del árbol de búsqueda, argumenta la reutilización de dicho árbol y las reglas y mecanismos usados para esto, tales como la reutilización con base en reglas y el decaimiento continuo de los pesos de los objetivos. En D. Selección y expansión, se exponen los criterios de selección de un nodo del árbol como camino a seguir, basado en un índice de riesgo/beneficio. Los literales E. Simulación y F. Estrategia de simulación, describen las reglas y el proceso de simulación de jugadas que preceden a

description

Se hace una pequeña reseña histórica del juego, y se habla acerca de sus objetivos básicos. Se enuncia el objetivo del artículo, a saber: “Este artículo discute mejoras al algoritmo MCTS, para permitir su uso en dominios estocásticos y de tiempo real tales como Ms. Pac-Man”. También se habla someramente de otras aplicaciones del algoritmo MCTS, así como también se habla de las competencias de inteligencia artificial (AI) en torno al juego y del éxito que han tenido los agentes que utilizan el algoritmo MCTS.

Transcript of Síntesis del artículo “Real-Time Monte Carlo Tree Search in Ms Pac-Man”

Sntesis del artculo Real-Time Monte Carlo Tree Search in Ms Pac-Man

Equipo n 9:Daniel Ceballos Monsalve c.c 1152215229 Camila Mantilla Rojas c.c 1090466094Nicols Villegas Echavarra c.c 1037625350

Primera parte: Descripcin de las partes del artculo

Numeral I. Introduccin: Se hace una pequea resea histrica del juego, y se habla acerca de sus objetivos bsicos. Se enuncia el objetivo del artculo, a saber: Este artculo discute mejoras al algoritmo MCTS, para permitir su uso en dominios estocsticos y de tiempo real tales como Ms. Pac-Man. Tambin se habla someramente de otras aplicaciones del algoritmo MCTS, as como tambin se habla de las competencias de inteligencia artificial (AI) en torno al juego y del xito que han tenido los agentes que utilizan el algoritmo MCTS.

Numeral II. Ms Pac-Man: se hace una contextualizacin de las reglas y mecnicas del juego.

Numeral III. Monte Carlo Tree Search: Se da una explicacin del algoritmo MCTS y se describen cada uno de sus pasos bsicos. Adems, se expone el motivo por el cual MCTS resulta especialmente til en dominios de tiempo real.

Numeral IV. MCTS para Ms Pac-Man: Se discuten las mejoras al algoritmo MCTS aplicado a Ms. Pac-Man. Primero, se provee una descripcin del rbol de bsqueda. Luego, se da la estructura de las recompensas y las mejoras a los pasos estratgicos del algoritmo MCTS. El objetivo es presentar las tcnicas que son especficas a Ms Pac-Man pero que tambin pueden ser extendidas o adaptadas a otros dominios de tiempo real. Esta seccin se divide en varios literales:En el literal A. rbol de bsqueda y altura variable, se explica la representacin del laberinto de juego como un grafo (rbol) en donde los corredores son aristas y los cruces son nodos, y la manera en la que se asignan pesos a las aristas. En el literal B. Tcticas, se describen los tres estados, o tcticas, posibles en el juego y las posibles acciones tomadas bajo alguna de estas. El literal C. Reutilizacin del rbol de bsqueda, argumenta la reutilizacin de dicho rbol y las reglas y mecanismos usados para esto, tales como la reutilizacin con base en reglas y el decaimiento continuo de los pesos de los objetivos. En D. Seleccin y expansin, se exponen los criterios de seleccin de un nodo del rbol como camino a seguir, basado en un ndice de riesgo/beneficio. Los literales E. Simulacin y F. Estrategia de simulacin, describen las reglas y el proceso de simulacin de jugadas que preceden a una retropropagacin. En G, Metas a largo plazo, se explican los mecanismos de planeacin de un recorrido. El literal H. Retropropagacin y seleccin de movimiento, describe el proceso de ajuste de los pesos de los nodos y aristas de manera recursiva para as lograr una bsqueda que resulte en el mejor camino en trminos de recompensas y seguridad. Finalmente, en I. Pseudocdigo, se ejemplifica y explica la implementacin del algoritmo en pseudocdigo.

Numeral V. Experimentos: En este numeral se describen detalladamente los experimentos llevados a cabo con el algoritmo MCTS. Tambin se habla de su desempeo en algunas competencias de AI.

Numeral VI. Conclusiones: Se muestra que la aplicacin del algoritmo MCTS es satisfactorio incluso en escenarios de alta dificultad y se destaca la importancia que tiene la simulacin en su desempeo. Se deja abierta la pregunta de qu tan efectivo puede ser en dominios variables de tiempo y, adems, se dan algunas ideas para mejorarlo.

Numeral VII. Referencias: Se presenta un listado de 39 referencias, de las cuales una gran parte tienen que ver con otras aplicaciones del algoritmo MCTS.

Segunda parte: Sntesis del contenido desde el punto de vista del estudiante

El MCST, rbol de bsqueda Monte Carlo, es un algoritmo de bsqueda heurstico empleado para la toma de decisiones. Es ampliamente empleado en el campo de los videojuegos, como un componente importante en el desarrollo de inteligencia artificial (AI). Es utilizado en su mayora para juegos de combinatoria, los cuales generalmente estn basados en turnos y tienen un gran componente determinstico, tales como el ajedrez, damas, Go, etc. El objetivo de este artculo es dar cuenta de la utilizacin de este algoritmo en dominios de gran componente aleatorio y de tiempo real.

En este caso, se aplica el MCST al juego llamado Ms. Pac-Man, donde el jugador controla un personaje que escapa de unos fantasmas a travs de una serie de laberintos, y acumula puntos recolectando pldoras y comiendo a los fantasmas despus de haber conseguido una pldora de poder. Inicialmente Ms. Pac-Man tiene tres vidas, las cuales pierde al contacto con los fantasmas. Al perder una vida se vuelve a las condiciones iniciales. Al aplicar MTSC, se busca controlar este personaje usando un agente de AI en lugar de la interaccin humana.

El juego se desarrolla en unidades de tiempo de 40 milisegundos. Un movimiento corresponde a una accin tomada en este intervalo de tiempo. El rbol Monte Carlo se construye a partir de los posibles movimientos disponibles, en donde los corredores del laberinto son representados por aristas de un grafo y las intersecciones por nodos. A cada arista le son asignados pesos los cuales corresponden a un indicador de costo/beneficio en trminos de puntaje ganado, el riesgo adquirido y la longitud del camino. Este rbol crece a medida que se hacen simulaciones de las jugadas con sus posibles resultados, y los pesos de cada arista son actualizados entre cada simulacin, con criterios como decaimiento temporal, resultados inesperados, etc. Los cuatro pasos bsicos de la construccin del rbol son los siguientes:

1. Seleccin: Se inicia en el nodo raz, el cual corresponde a la ubicacin actual de Ms. Pac-Man, y se seleccionan los nodos hijos de acuerdo con un criterio de seleccin, estos nodos corresponden a posibles movimientos a ejecutar. Cuando se encuentra un nodo hoja (aquel que se encuentra al final de una rama y que no tiene hijos), ste es seleccionado para ser expandido.2. Expansin: Al nodo hoja alcanzado se le aaden hijos que corresponden a posibles jugadas subsecuentes.3. Simulacin: Una partida simulada se ejecuta, a partir de la estado del nodo o los nodos aadidos. Los movimientos se realizan al azar hasta que se alcanza un estado terminal.4. Retropropagacin. El resultado de la simulacin se propaga desde el nodo seleccionado hacia arriba hasta encontrar el nodo raz. Las estadsticas se actualizan a lo largo del rbol por cada nodo seleccionado.

Con base en observaciones se calcula que se pueden hacer entre 200 y 400 simulaciones por cada bsqueda, y en cada turno se selecciona al que provea el mejor resultado.

Vale la pena destacar la importancia de los mecanismos de actualizacin de pesos de las aristas, pues estos constituyen, a nuestro parecer, la parte ms interesante del algoritmo, pues estos permiten la reutilizacin del rbol lo cual se traduce en beneficios en trminos del costo computacional, permitiendo hacer mayor nmero de simulaciones. Si se construyera un nuevo rbol por cada turno, se restringira la planeacin a largo plazo de los movimientos. Si por el contrario, los pesos de las aristas permanecieran sin cambios durante toda la simulacin, el comportamiento del agente puede tornarse muy terco y la simulacin puede volverse no confiable pues se hara con base en informacin desactualizada. Ejemplo de esto es que el comportamiento de los fantasmas tiene un gran componente aleatorio, adems de que existe un mecanismo en el juego que invierte la direccin de movimiento de los fantasmas con una pequea probabilidad de 0.0015 por cada unidad de tiempo. Se busca entonces un factor (0, 1) que proporcione el decaimiento ptimo para el peso de las aristas. Otros mecanismos de actualizacin implican el descarte completo del rbol y la construccin de uno nuevo, lo cual se da cuando la tctica a seguir cambia completamente, por ejemplo, cuando se consume una pldora de poder.

En cuanto a las simulaciones, su objetivo es representar las mecnicas del juego de la manera ms fiel posible, para que las decisiones tomadas puedan ser confiables. Para esto es necesario predecir el comportamiento parcialmente aleatorio de los fantasmas. En cada turno existe una probabilidad de = 0.2 de que el movimiento ejecutado por el fantasma sea aleatorio. Con probabilidad de (1 - ), los fantasmas se mueven con base en unas reglas establecidas separadas en tres casos: (1) si un fantasma se encuentra en estado normal, se escoge el camino ms corto a su objetivo, (2) si se encuentra en estado comestible, se escoge siempre el camino que lo aleje ms de Ms. Pac-Man, y (3) si el fantasma se mueve hacia una arista ya ocupada por otro fantasma, se cambia de rumbo y se selecciona otra movida aleatoriamente. Esto ltimo garantiza que los fantasmas estn uniformemente repartidos por el laberinto. La simulacin de Ms. Pac-Man sigue las siguientes reglas en orden jerrquico: (1) si hay fantasmas comestibles alcanzables, se selecciona el movimiento seguro que minimice la distancia al fantasma. (2) Si un movimiento encamina a una arista que no est despejada (tenga pldoras disponibles), sta se selecciona. (3) Si todas las aristas seguras estn despejadas, se hace un movimiento aleatorio hacia alguna de estas. (4) Si no hay movimientos seguros disponibles, se selecciona uno al azar. Las simulaciones se detienen cuando se alcanza algn estado terminal, entre las siguientes dos posibilidades: (i) Ms. Pac-Man es atrapado por un fantasma, tras lo cual el movimiento se descarta, o (ii) se alcanza el lmite de distancia recorrida permitida por cada movida en la simulacin, tras lo cual se pondera el peso de la simulacin.

Cuando el tiempo de 40ms que se tienen para seleccionar una jugada se agota, se procede a la retropropagacin, en donde se selecciona el movimiento con mayor beneficio ponderado entre todas las posibilidades evaluadas y simuladas.

Conclumos entonces que el MCTS es un algoritmo tanto eficiente como efectivo en dominios no determinsticos y en tiempo real, y que aunque la aplicacin expuesta en este artculo est dada a la inteligencia artificial en videojuegos, presumimos que la aplicacin de esta clase de algoritmos podra extenderse a otros mbitos de la ingeniera tales como robtica, algoritmos de bsquedas, enrutamiento de paquetes a travs de internet, aplicaciones navegacin en tiempo real para dispositivos mviles, problemas de optimizacin, etctera, o incluso como posible reemplazo en algunos contextos para algoritmos evolutivos y redes neuronales, respecto a los cuales en algunos casos ha mostrado ser ms eficiente.

Bibliografa:

Pepels, T., Winands, M. H. M., & Lanctot, M. (2014). Real-Time Monte Carlo Tree Search in Ms. Pac-Man, IEEE Transactions on Computational Intelligence and AI in Games, Vol 6, no. 3, September 2014. 245257.