Este documento describe el diseño y análisis de un agente autónomo para el juego Super Mario Bros usando la plataforma Infinite Mario Bros. El autor diseña el agente usando algoritmos genéticos con diferentes enfoques como reglas y máquinas de estados finitos, y evalúa su rendimiento en diferentes niveles de dificultad del juego. El documento también discute las limitaciones encontradas en el enfoque, como el tiempo y memoria requeridos para la evolución del agente.
En 1997, el gobierno de Estados Unidos acusó a Microsoft de monopolio por incluir su navegador Internet Explorer de forma predeterminada en Windows y por crear aplicaciones que solo funcionaban con Windows. Tras las presiones del Departamento de Justicia, un juez dictaminó en 1999 que Microsoft tenía un monopolio en el mercado de sistemas operativos.
Este documento presenta un proyecto para visualizar las regiones del Ecuador utilizando diferentes formularios en Visual Basic. Se utilizarán objetos como etiquetas, cuadros de texto, botones y cuadros combinados para diseñar una aplicación que muestre información sobre la región Costa, Sierra, Oriente e Insular a través de imágenes y texto. El proyecto incluye código para una contraseña de acceso, ocultar y mostrar los diferentes formularios.
Este documento proporciona una lista de comandos útiles para la línea de comandos de Windows. Explica brevemente qué hace cada comando y ofrece ejemplos como CD para cambiar de directorio, DIR para mostrar una lista de archivos, COPY para copiar archivos, y START para iniciar programas. El documento concluye que estos comandos internos y externos realizan funciones útiles y hacen más fácil completar tareas en Windows.
El documento describe PCMark, una herramienta de benchmarking que evalúa el rendimiento general de un sistema de PC mediante la ejecución de pruebas que simulan usos comunes. PCMark produce puntajes que permiten comparar sistemas y obtener recomendaciones para mejorar el rendimiento de componentes específicos. Requiere hardware y software mínimos como un procesador de 1.7 GHz y Windows para funcionar correctamente.
Este documento explora los principios y componentes de Windows XP. Explica que XP es un sistema operativo multitarea de 32/64 bits con objetivos de seguridad, fiabilidad, facilidad de uso, compatibilidad y rendimiento. Describe la arquitectura en capas de XP, incluidos el kernel, el sistema ejecutivo y los subsistemas. También analiza el sistema de archivos NTFS y los protocolos de red soportados.
El documento proporciona una descripción general del sistema operativo Mac OS. Explica que Mac OS es el sistema operativo creado por Apple para sus computadoras Macintosh y que fue el primero en tener una interfaz gráfica con ventanas, iconos y menús. También describe las características, fortalezas y debilidades de Mac OS, su evolución a través de las versiones, los requisitos para su instalación y uso, y recomendaciones generales sobre el sistema operativo.
Presentación procedimiento para el encendido de la pc modificadadessi4ever
Este documento describe los procedimientos para encender y apagar una computadora personal (PC). Explica que para encender una PC hay que presionar los botones de encendido en el monitor, la unidad central de procesamiento y el regulador de energía, y esperar a que se inicie correctamente. Para apagarla, se deben cerrar todas las aplicaciones abiertas, hacer clic en el botón de sistema/apagar y seleccionar la opción de apagar en el menú que aparece. También incluye breves secciones sobre la definición de una PC, sus
Evolución histórica a través de las consolas de las diferentes generaciones. Veremos en esta presentación como la jugabilidad ha perdido peso en pro de los gráficos y las animaciones por ordenador
No te pierdas mi curso para aprender a hacer apps para iOS y consigue un 97% de descuento con el siguiente link: https://www.udemy.com/curso-de-desarrollo-de-apps-para-ios-9/?couponCode=SLIDE_SHARE
En 1997, el gobierno de Estados Unidos acusó a Microsoft de monopolio por incluir su navegador Internet Explorer de forma predeterminada en Windows y por crear aplicaciones que solo funcionaban con Windows. Tras las presiones del Departamento de Justicia, un juez dictaminó en 1999 que Microsoft tenía un monopolio en el mercado de sistemas operativos.
Este documento presenta un proyecto para visualizar las regiones del Ecuador utilizando diferentes formularios en Visual Basic. Se utilizarán objetos como etiquetas, cuadros de texto, botones y cuadros combinados para diseñar una aplicación que muestre información sobre la región Costa, Sierra, Oriente e Insular a través de imágenes y texto. El proyecto incluye código para una contraseña de acceso, ocultar y mostrar los diferentes formularios.
Este documento proporciona una lista de comandos útiles para la línea de comandos de Windows. Explica brevemente qué hace cada comando y ofrece ejemplos como CD para cambiar de directorio, DIR para mostrar una lista de archivos, COPY para copiar archivos, y START para iniciar programas. El documento concluye que estos comandos internos y externos realizan funciones útiles y hacen más fácil completar tareas en Windows.
El documento describe PCMark, una herramienta de benchmarking que evalúa el rendimiento general de un sistema de PC mediante la ejecución de pruebas que simulan usos comunes. PCMark produce puntajes que permiten comparar sistemas y obtener recomendaciones para mejorar el rendimiento de componentes específicos. Requiere hardware y software mínimos como un procesador de 1.7 GHz y Windows para funcionar correctamente.
Este documento explora los principios y componentes de Windows XP. Explica que XP es un sistema operativo multitarea de 32/64 bits con objetivos de seguridad, fiabilidad, facilidad de uso, compatibilidad y rendimiento. Describe la arquitectura en capas de XP, incluidos el kernel, el sistema ejecutivo y los subsistemas. También analiza el sistema de archivos NTFS y los protocolos de red soportados.
El documento proporciona una descripción general del sistema operativo Mac OS. Explica que Mac OS es el sistema operativo creado por Apple para sus computadoras Macintosh y que fue el primero en tener una interfaz gráfica con ventanas, iconos y menús. También describe las características, fortalezas y debilidades de Mac OS, su evolución a través de las versiones, los requisitos para su instalación y uso, y recomendaciones generales sobre el sistema operativo.
Presentación procedimiento para el encendido de la pc modificadadessi4ever
Este documento describe los procedimientos para encender y apagar una computadora personal (PC). Explica que para encender una PC hay que presionar los botones de encendido en el monitor, la unidad central de procesamiento y el regulador de energía, y esperar a que se inicie correctamente. Para apagarla, se deben cerrar todas las aplicaciones abiertas, hacer clic en el botón de sistema/apagar y seleccionar la opción de apagar en el menú que aparece. También incluye breves secciones sobre la definición de una PC, sus
Evolución histórica a través de las consolas de las diferentes generaciones. Veremos en esta presentación como la jugabilidad ha perdido peso en pro de los gráficos y las animaciones por ordenador
No te pierdas mi curso para aprender a hacer apps para iOS y consigue un 97% de descuento con el siguiente link: https://www.udemy.com/curso-de-desarrollo-de-apps-para-ios-9/?couponCode=SLIDE_SHARE
Este documento describe el estado del arte en el uso de la inteligencia artificial para tomar decisiones en el juego del póker. Explica que los programas actuales son capaces de ganar a jugadores aficionados mediante técnicas como redes neuronales y clustering. También describe los ganadores recientes de un torneo universitario, incluyendo sus técnicas como perceptrones multicapa, reducción del arrepentimiento contrafáctico y k-medias modificadas. El objetivo general es desarrollar un jugador de IA capaz de igualar o superar el rendimiento de
Este documento discute los juegos y la búsqueda entre adversarios en inteligencia artificial. Explica que los juegos son dominios útiles para explorar la inteligencia computacional y que la teoría de juegos ve cualquier entorno multiagente como un juego. Luego describe el procedimiento minimax y cómo propaga la información de abajo hacia arriba para tomar decisiones óptimas en un juego entre dos jugadores. Finalmente, discute cómo las funciones de evaluación heurística y el corte de la búsqueda permiten tomar decisiones en tiempo real aun
El documento describe la construcción y control de navegación de un vehículo autónomo llamado Quiróptero. Incluye la construcción del robot con motores, encoders y un sensor de ultrasonido, y el desarrollo de algoritmos para mapeo de obstáculos, determinación de rumbo y control de la navegación. También cubre la optimización de la navegación mediante algoritmos genéticos para mejorar el desempeño.
Este documento describe el uso de la tecnología en el deporte de alto rendimiento. Se mencionan varias herramientas tecnológicas como sistemas de captura de movimiento, software de análisis, sistemas de monitoreo ambiental y plataformas de video que permiten almacenar y analizar datos para mejorar el rendimiento deportivo, estudiar oponentes, evaluar actuaciones y facilitar el aprendizaje. La tecnología es útil en todas las etapas del entrenamiento y la competencia.
Los algoritmos genéticos son algoritmos de optimización basados en la selección natural y la genética que encuentran soluciones excelentes a problemas complejos. Funcionan generando una población aleatoria inicial que luego es sometida a operaciones como la selección, el cruce y la mutación para generar nuevas soluciones. Se han aplicado con éxito a problemas de optimización, aprendizaje automático y modelización en diversas áreas como la economía y la ecología.
Este documento describe el uso de programación genética para crear bots competitivos para un juego de estrategia en tiempo real llamado Planet Wars. Se compararon tres funciones de fitness: una basada en victorias y turnos, otra en la pendiente de recursos relativos y otra en el área de recursos relativos. Los resultados mostraron que las funciones basadas en pendiente y área produjeron individuos superiores, pero no de manera consistente, mientras que la función basada en victorias/turnos generó individuos más estables. Se concluye que la programación genética puede cre
Tutorial para el uso del software vargus (Roscas)EverMaunas
Este documento presenta el software Vargus GENius, el cual es utilizado para seleccionar herramientas y calcular parámetros de mecanizado para roscas CNC. Explica detalladamente cada pestaña del software para definir el tipo de rosca, material, herramienta, velocidades de corte, y número y profundidad de pasadas. Al finalizar, el software genera un resumen del proceso de mecanizado de la rosca seleccionada que puede guardarse o enviarse por correo electrónico.
José Luis Jiménez Rodríguez
Junio 2024.
“La pedagogía es la metodología de la educación. Constituye una problemática de medios y fines, y en esa problemática estudia las situaciones educativas, las selecciona y luego organiza y asegura su explotación situacional”. Louis Not. 1993.
Ofrecemos herramientas y metodologías para que las personas con ideas de negocio desarrollen un prototipo que pueda ser probado en un entorno real.
Cada miembro puede crear su perfil de acuerdo a sus intereses, habilidades y así montar sus proyectos de ideas de negocio, para recibir mentorías .
En la ciudad de Pasto, estamos revolucionando el acceso a microcréditos y la formalización de microempresarios informales con nuestra aplicación CrediAvanza. Nuestro objetivo es empoderar a los emprendedores locales proporcionándoles una plataforma integral que facilite el acceso a servicios financieros y asesoría profesional.
Este documento describe el estado del arte en el uso de la inteligencia artificial para tomar decisiones en el juego del póker. Explica que los programas actuales son capaces de ganar a jugadores aficionados mediante técnicas como redes neuronales y clustering. También describe los ganadores recientes de un torneo universitario, incluyendo sus técnicas como perceptrones multicapa, reducción del arrepentimiento contrafáctico y k-medias modificadas. El objetivo general es desarrollar un jugador de IA capaz de igualar o superar el rendimiento de
Este documento discute los juegos y la búsqueda entre adversarios en inteligencia artificial. Explica que los juegos son dominios útiles para explorar la inteligencia computacional y que la teoría de juegos ve cualquier entorno multiagente como un juego. Luego describe el procedimiento minimax y cómo propaga la información de abajo hacia arriba para tomar decisiones óptimas en un juego entre dos jugadores. Finalmente, discute cómo las funciones de evaluación heurística y el corte de la búsqueda permiten tomar decisiones en tiempo real aun
El documento describe la construcción y control de navegación de un vehículo autónomo llamado Quiróptero. Incluye la construcción del robot con motores, encoders y un sensor de ultrasonido, y el desarrollo de algoritmos para mapeo de obstáculos, determinación de rumbo y control de la navegación. También cubre la optimización de la navegación mediante algoritmos genéticos para mejorar el desempeño.
Este documento describe el uso de la tecnología en el deporte de alto rendimiento. Se mencionan varias herramientas tecnológicas como sistemas de captura de movimiento, software de análisis, sistemas de monitoreo ambiental y plataformas de video que permiten almacenar y analizar datos para mejorar el rendimiento deportivo, estudiar oponentes, evaluar actuaciones y facilitar el aprendizaje. La tecnología es útil en todas las etapas del entrenamiento y la competencia.
Los algoritmos genéticos son algoritmos de optimización basados en la selección natural y la genética que encuentran soluciones excelentes a problemas complejos. Funcionan generando una población aleatoria inicial que luego es sometida a operaciones como la selección, el cruce y la mutación para generar nuevas soluciones. Se han aplicado con éxito a problemas de optimización, aprendizaje automático y modelización en diversas áreas como la economía y la ecología.
Este documento describe el uso de programación genética para crear bots competitivos para un juego de estrategia en tiempo real llamado Planet Wars. Se compararon tres funciones de fitness: una basada en victorias y turnos, otra en la pendiente de recursos relativos y otra en el área de recursos relativos. Los resultados mostraron que las funciones basadas en pendiente y área produjeron individuos superiores, pero no de manera consistente, mientras que la función basada en victorias/turnos generó individuos más estables. Se concluye que la programación genética puede cre
Tutorial para el uso del software vargus (Roscas)EverMaunas
Este documento presenta el software Vargus GENius, el cual es utilizado para seleccionar herramientas y calcular parámetros de mecanizado para roscas CNC. Explica detalladamente cada pestaña del software para definir el tipo de rosca, material, herramienta, velocidades de corte, y número y profundidad de pasadas. Al finalizar, el software genera un resumen del proceso de mecanizado de la rosca seleccionada que puede guardarse o enviarse por correo electrónico.
Similar a Diseño y Análisis Agente autónomo videojuego Super Mario Bros (8)
José Luis Jiménez Rodríguez
Junio 2024.
“La pedagogía es la metodología de la educación. Constituye una problemática de medios y fines, y en esa problemática estudia las situaciones educativas, las selecciona y luego organiza y asegura su explotación situacional”. Louis Not. 1993.
Ofrecemos herramientas y metodologías para que las personas con ideas de negocio desarrollen un prototipo que pueda ser probado en un entorno real.
Cada miembro puede crear su perfil de acuerdo a sus intereses, habilidades y así montar sus proyectos de ideas de negocio, para recibir mentorías .
En la ciudad de Pasto, estamos revolucionando el acceso a microcréditos y la formalización de microempresarios informales con nuestra aplicación CrediAvanza. Nuestro objetivo es empoderar a los emprendedores locales proporcionándoles una plataforma integral que facilite el acceso a servicios financieros y asesoría profesional.
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Juan Martín Martín
Criterios de corrección y soluciones al examen de Geografía de Selectividad (EvAU) Junio de 2024 en Castilla La Mancha.
Soluciones al examen.
Convocatoria Ordinaria.
Examen resuelto de Geografía
conocer el examen de geografía de julio 2024 en:
https://blogdegeografiadejuan.blogspot.com/2024/06/soluciones-examen-de-selectividad.html
http://blogdegeografiadejuan.blogspot.com/
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Diseño y Análisis Agente autónomo videojuego Super Mario Bros
1. Diseño y análisis de un agente
autónomo para el juego Super
Mario Bros.
Proyecto Fin de Carrera Ingeniería de Telecomunicación
Rosa Hidalgo Bermúdez
4. INTRODUCCIÓN
¿Por qué la elección de este proyecto?
El juego de Mario Bros es mundialmente
famoso y se tenían previos conocimientos
acerca del juego.
El mercado de los videojuegos tiene futuro
El mundo de los videojuegos nunca
pasará de moda
5. INTRODUCCIÓN
¿Por qué la elección de este proyecto?
Existe una plataforma Infinite Mario Bros que
es una copia modificada de Super Mario Bros
libre y que permite la realización de un
Agente mediante alguna técnica de IA
Existe la competición creada por los
desarrolladores de la plataforma anterior
Mario AI Championship:
Gameplay Turing Test
Learning Level Generation
7. INTRODUCCIÓN
¿Qué técnicas de IA podrían adaptarse
a nuestro objetivo?
Máquinas de Estados Finitos
Búsqueda de Caminos (Pathfinding)
Algorítmos Genéticos y Programación
Genética
Redes Neuronales
Lógica Difusa
9. PLATAFORMA INFINITE MARIO BROS
¿En qué consiste el juego?
El juego consiste en mover al personaje,
Mario, a través de la pista bidimensional
para superar un nivel.
Las acciones permitidas que se pueden
realizar:
Avanzar a la derecha
Avanzar a la izquierda
Saltar
Agacharse
Disparar/Correr
10. PLATAFORMA INFINITE MARIO BROS
¿En qué consiste el juego?
El personaje Mario tiene tres posibles
modos:
Fire: Permite 2 toques por colisión de enemigos
Big: Permite 1 toque por colisión de enemigos
Small: Si recibe un toque de un enemigo muere
La plataforma usada permite obtener
información del entorno a través de dos
matrices de 19x19:
Matriz de Observación
Matriz de Enemigos
17. DISEÑO DEL AGENTE Y RESULTADOS
Introducción a los AGs
Función fitness:
Establece las bases para encontrar una solución óptima a
un determinado problema estableciendo los individuos
más adecuados a un determinado problema.
La función de fitness depende del problema concreto que
se esté abordando.
18. DISEÑO DEL AGENTE Y RESULTADOS
Introducción a los AGs
Operadores Genéticos:
Operador de Selección Cruce
Ruleta Simple o de un punto
Jerárquica De dos puntos (DPX)
Torneo Multipunto
Mutación Uniforme
19. DISEÑO DEL AGENTE Y RESULTADOS
Introducción a los AGs
Pasos de un AG
Inicializar una población de N individuos aleatoriamente
Calcular la función fitness
Crear una nueva población a partir de la existente:
Seleccionando los individuos con fitness más elevado
como padres
Generar nuevos individuos a partir de los operadores
genéticos de cruce y mutación
Evaluar la nueva población para obtener su fitness
Si se satisface la condición de parada se termina sino se
repiten estos últimos tres pasos.
20. DISEÑO DEL AGENTE Y RESULTADOS
Introducción a los AGs
Pasos de un AG
21. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Estructura del programa
Crear la matriz de cromosomas aleatoria
Desde 0 hasta numeroGeneraciones-1
Desde 0 hasta tamañoPoblación-1
Ejecutamos el Agente/s con el cromosoma de la matriz
correspondiente
Evaluamos al Agente aplicando la función fitness
Ordenamos los cromosomas según su fitness de mayor a menor
Aplicamos los operadores de Selección, Cruce y Mutación
Repetir hasta evaluar todos los cromosomas
Sino se ha conseguido convergencia repetir el AG
22. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Codificación del individuo
23. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Función fitness
fItness = estadoMario*1024 + modoMario*32 + monedas*16 +
muertes*42 +distancia*1 +tiempo*8
24. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Cruce
25. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Mutación
26. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Primera versión: Conjunto de reglas elevado.
Evaluación del individuo mediante la función
fitness en cada tick.
Segunda versión: Reducido conjunto de reglas.
Evaluación del individuo mediante la función
fitness tras finalizar la pista o morir.
Tercera versión: Conjunto de reglas algo mayor
que en la segunda versión. Evaluación del
individuo mediante la función fitness tras finalizar
la pista o morir.
27. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Algunos de los problemas encontrados:
En la mayoría de las situaciones el Agente toma la acción de la
regla por defecto
La acción para una determinada regla cambia de un nivel de
dificultad a otro
Estancamiento complejos
Matriz de observación introduce incertidumbre
28. DISEÑO DEL AGENTE Y RESULTADOS
1ª Aprox. AGs basados en Reglas
Resultados para los niveles de dificultad testados:
Dificultad 1
Dificultad 0
Dificultad 2
29. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Las FSM se caracterizan por:
Estar formadas por un conjunto finitos de estados
Las transiciones entre estados las determina una nueva entrada al sistema
El estado de salida depende de la nueva entrada y del estado inicial en el
que nos encontrabamos
Ventajas:
Son intuitivas y simples de implementar y diseñar
La teoría subyacente está formalizada
Han sido probadas para implementar la IA en diversos juegos
Desventajas:
Su diseño no puede modificarse en ejecución
Si hay muchos estados pueden llegar a ser complejas
30. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Estados posibles
31. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Estados posibles
32. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Cruce
33. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Mutación
De granularidad baja
De granularidad elevada
Nueva mutación gen a gen
34. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Función fitness
Valor de fitness acotado
Se da mucha importancia a los individuos que han superado el
nivel
Los individuos que han muerto por time out o precipicios son
penalizados con la peor puntuación
Los individuos que han muerto por colisiones con enemigos
obtendrán fitness negativo. Su grado de negatividad dependerá de
la actuación que hayan tenido
35. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Implementación monosemilla
Cruce: En caso de conflicto en las tablas se elige siempre al
individuo seleccionado previamente como dominante
La mutación que mejor funciona es la mutación de granularidad
elevada
Cada individuo se evalúa en una determinada pista
El Agente evoluciona en subniveles cada vez de mayor tamaño
Posibilidad de repetir un determinado subnivel
El porcentaje de individuos aleatorios es una exponencial
decreciente
Se realiza una selección de individuos en base a la función fitness
genérica
36. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Implementación multisemilla
Cruce: En caso de conflicto en las tablas se elige
equiprobablemente entre cada uno de los dos progenitores
Nueva mutación realizada gen a gen
El Agente evoluciona un único tamaño de pista
Cada individuo es evaluado en un número N de pistas aleatorias
El porcentaje de individuos aleatorios es constante
Se realiza una selección de individuos por torneo evaluando en
cascada tres variables de su fitness:
Porcentaje de escenarios en los que el individuo se ha atascado o caído por
precipicio
Porcentaje de niveles superados
Valor de fitness genérico
37. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Limitaciones encontradas
Tiempo requerido para obtener el Agente evolucionado
38. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Limitaciones encontradas
Memoria requerida para la evolución
39. DISEÑO DEL AGENTE Y RESULTADOS
2ª Aprox. AGs basados en FSM
Limitaciones encontradas
Numero de valores que comprenden la entrada del sistema
El factor delimitante, en monosemilla, para alcanzar convergencia es el
tamaño de población.
El factor delimitante para obtener convergencia en multisemilla es el
número de generaciones
41. CONCLUSIÓN
Se ha conseguido el objetivo de desarrollar un Agente autónomo a través
de dos aproximaciones: AGs basados en Reglas y AGs basados en FSM.
En el proceso se ha observado la problemática que conlleva desarrollar un
Agente inteligente:
Implementación de métodos que proporcionen información sobre el entorno al Agente
Importancia de la implementación de una buena función fitness
Importancia de los operadores genéticos
En el enfoque basado en Reglas se tuvo que llegar a un compromiso entre
el espacio de búsqueda y el tiempo necesario para la convergencia
En el enfoque basado en FSM se tuvo problemas con el espacio en
memoria requerido y el tiempo para obtener la convergencia
Como posible investigación futura se podría realizar un Agente
especializado en un único nivel de dificultad en el cual se evolucionara tan
solo una parte de los métodos que lo controlen, así aunque no se obtuviera
el mejor Agente de todos los tiempos, quedaría reducido el espacio de
búsqueda y el tiempo de ejecución.
42. DEMOS
Nivel de dificultad 1
Nivel de dificultad 2
Nivel de dificultad 3
Nivel de dificultad 12, problema con la seta de vida
Nivel de dificultad 12
44. BIBLIOGRAFÍA
[1] “<<Juego>>
[En línea] http://es.wikipedia.org/wiki/Juego
[2] <<Videojuego>>
[En línea] http://es.wikipedia.org/wiki/Videojuego
[3] <<Historia de los videojuegos>>
[En línea] http://es.wikipedia.org/wiki/Historia_de_los_videojuegos
[4] <<History of video games>>
[En línea] http://en.wikipedia.org/wiki/History_of_video_games
[5] <<Top 10 Most Influential AI Games>>
Article: Alex J. Champandard
[En línea] http://aigamedev.com/open/highlights/top-ai-games/
[6] <<Non Player Characters>>
[En línea] http://redesneuronales.wikispaces.com/NON+PLAYER+CHARACTERS
[7] Alfredo González González; Omar Baqueiro Espinosa, Emmanuel Meza Cota
Universidad Autónoma de Baja California Sur. Departamento de Sistemas Computacionales
<<Metodologías de la I.A. (Agentes autónomos y Redes neuronales Supervisadas) aplicadas a
NPCs (Non player characters)>>
[En línea] http://www.redcientifica.com/doc/doc200401210112.htm
45. BIBLIOGRAFÍA
[8] Stuart J. Russell y Peter Norvig
«Artificial Intelligence: A Modern Approach», Second Edition
Pearson Prentice Hall, 2004
[9] <<Artificial intelligence (video games)>>
[En línea] http://en.wikipedia.org/wiki/Game_artificial_intelligence
[10] <<Apuntes de la Asignatura Inteligencia Artificial>>
4º Curso Ingeniería Informática Universidad de Granada
[11] <<Mario AI Championship: GamePlay track. 2011>>
Julian Togelius, Sergey Karakovskiy and Robin Baumgarten
[En línea] http://www.marioai.com/gameplay-track
[12]<<Mario AI Competition. 2009>>
Sergey Karakovskiy and Julian Togelius
[En línea] http://julian.togelius.com/mariocompetition2009/submitting.php
[13]<<Super Mario Evolution>>
Julian Togelius, Sergey Karakovskiy, Jan Koutn´ik and J¨urgen Schmidhuber
[En línea] http://julian.togelius.com/Togelius2009Super.pdf
[14]<<Super Mario Bros. Del juego, a las competiciones de "científicos" aburridos>>
Antonio Mora
[En línea] http://www.slideshare.net/Slidemora/super-mario-quien-es-y-las-mario-ai-competitions
46. BIBLIOGRAFÍA
[15] <<REALM: A Rule-Based Evolutionary Computation Agent that Learns to Play Mario>>
Slawomir Bojarski and Clare Bates Congdon
2010 IEEE Conference on Computational Intelligence and Games
[En línea] http://www.google.es/url?sa=t&rct=j&q=realm%3A%20a%20rule-
based%20evolutionary%20computation%20agent%20that%20learns%20to%20play%20mario%
20pdf&source=web&cd=1&cad=rja&ved=0CCYQFjAA&url=http%3A%2F%2Fciteseerx.ist.psu.edu
%2Fviewdoc%2Fdownload%3Fdoi%3D10.1.1.173.4586%26rep%3Drep1%26type%3Dpdf&ei=T
HhCUKTWLNG4hAe1t4HoDw&usg=AFQjCNHtRZwwEC3yoa1YWAN_mtGA-USCeg
[16] «Mario AI Benchmark. AI and Machine Learning Experiments based on Super Mario Bros.»
J. Togelius, S. Karakovskiy, T. Schaul y J. Koutnik
[En línea] http://code.google.com/p/marioai/
[17] <<Personal Page: Julian Togelius>>
[En línea] http://julian.togelius.com/
[18]<<Super Mario Bros.>>
[En línea] http://es.wikipedia.org/wiki/Super_Mario_Bros.
[19]<<Miyamoto, el padre de Mario Bros, Premio Príncipe de Asturias de Comunicación>>
[En línea] http://www.rtve.es/noticias/20120523/miyamoto-padre-mario-bros-premio-principe-
asturias-comunicacion/531163.shtml
47. BIBLIOGRAFÍA
[20] <<Infinite Mario AI - Long Level. Algorithm A*>>
[En línea]
http://www.youtube.com/watch?feature=player_detailpage&v=DlkMs4ZHHr8
[21] <<Mario AI - a comparison. Algorithm A*>>
[En línea] http://www.youtube.com/watch?v=j7ckTMLIwpE&feature=related
[22] <<A Field Guide to Genetic Programming>>
Riccardo Poli, William B. Langdon, Nicholas F. McPhee, John R. Koza
March 2008
[23] <<Evolutionary algorithms in theory and practice : evolution strategies, evolutionary
programming, genetic algorithms>>
Back, Thomas
Oxford University Press , 1996
[24]<<Genetic Programming. On the Programming of Computers by Means of Natural Selection>>
John R. Koza
The MIT Press, 1998
[25]<<Tutorial de Informática Evolutiva>>
Juan Julian Merelo Guervos
[En línea] http://geneura.ugr.es/~jmerelo/ie/
48. BIBLIOGRAFÍA
[26]<<Apuntes de la Asignatura Algorítmica>
4º Curso Ingeniería Informática
Universidad de Granada
[27]<<Apuntes de la Asignatura Bioinformática>
5º Curso Ingeniería Informática
Universidad de Granada
[28]<<Introduction To Automata Theory, Languages and Computation>>
John E. Hopcroft, Jeffrey D. Ullman
Addison Wesley, 1979
[29]<<Theory Of Finite Automata With An Introduction To Formal Languages>>
John Carroll, Darrel Long
Prentice-Hall International , 1989
[30]<<Teoría de la Computación. Lenguajes Formales, Autómatas y Complejidad>>
J. Glenn Brookshear
Addison Wesley Iberoamericana , 1993
[31]<<Programming Game AI by Example>>
Mat Buckland
Wordware Publishing, Inc. 2005
49. BIBLIOGRAFÍA
[32]<<Curso de Programacion de Juegos 2D>>
[En línea] http://www.aprenderpython.com
[33]<<Thesis Smaller Footprint for Java Collections>>
Yuval Shimron
[En línea] http://www.cs.technion.ac.il/users/wwwb/cgi-bin/tr-get.cgi/2012/MSC/MSC-2012-
05.pdf
[34]<<JavaTM How to Program>>
H. M. Deitel - Deitel & Associates, Inc., P. J.Deitel - Deitel & Associates
Prentice Hall, 2006
[35] <<Evolving a Mario Agent Using Cuckoo Search and Softmax Heuristics>>
E.R. Speed – 2nd International IEEE Consumer Electronics Society’s Games Innovations
Conference, 210.
[36] <<La historia de Super Mario Bros, los hechos detrás del juego.>>
[En línea] http://www.guayageek.com/2012/09/la-historia-de-super-mario-bros-los.html