SlideShare una empresa de Scribd logo
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
ÍNDICE

1. INTRODUCCIÓN
2. PLATAFORMA INFINITE MARIO
  BROS
3. DISEÑO DEL AGENTE Y
  RESULTADOS
4. CONCLUSIÓN Y DEMOS
ÍNDICE

1. INTRODUCCIÓN
2. PLATAFORMA INFINITE MARIO
  BROS
3. DISEÑO DEL AGENTE Y
  RESULTADOS
4. CONCLUSIÓN Y DEMOS
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
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
INTRODUCCIÓN

¿Qué características debe cumplir
       nuestro Agente?
Autonomía          Razonamiento
Reactividad        Aprendizaje
Proactividad       Planificación
Persistencia       Inteligencia
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
ÍNDICE

1. INTRODUCCIÓN
2. PLATAFORMA INFINITE MARIO
  BROS
3. DISEÑO DEL AGENTE Y
  RESULTADOS
4. CONCLUSIÓN Y DEMOS
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
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
PLATAFORMA INFINITE MARIO BROS
   ¿En qué consiste el juego?
PLATAFORMA INFINITE MARIO BROS

   ¿A qué se enfrentará el Agente?

Posibles tipos de obstáculos con los que
se enfrenta el agente:
PLATAFORMA INFINITE MARIO BROS

  ¿A qué se enfrentará el Agente?


Objetos beneficiosos para el Agente.
PLATAFORMA INFINITE MARIO BROS

   ¿A qué se enfrentará el Agente?

Posibles tipos de enemigos:
PLATAFORMA INFINITE MARIO BROS

   ¿A qué se enfrentará el Agente?

Precipicios y Estancamientos
ÍNDICE

1. INTRODUCCIÓN
2. PLATAFORMA INFITE MARIO
  BROS
3. DISEÑO DEL AGENTE Y
  RESULTADOS
4. CONCLUSIÓN Y DEMOS
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.
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
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.
DISEÑO DEL AGENTE Y RESULTADOS

        Introducción a los AGs
Pasos de un AG
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
DISEÑO DEL AGENTE Y RESULTADOS

   1ª Aprox. AGs basados en Reglas
Codificación del individuo
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
DISEÑO DEL AGENTE Y RESULTADOS

   1ª Aprox. AGs basados en Reglas
Cruce
DISEÑO DEL AGENTE Y RESULTADOS

   1ª Aprox. AGs basados en Reglas
Mutación
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.
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
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
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
DISEÑO DEL AGENTE Y RESULTADOS

      2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Estados posibles
DISEÑO DEL AGENTE Y RESULTADOS

      2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Estados posibles
DISEÑO DEL AGENTE Y RESULTADOS

     2ª Aprox. AGs basados en FSM
Estructura de la FSM implementada: Cruce
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
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
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
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
DISEÑO DEL AGENTE Y RESULTADOS

     2ª Aprox. AGs basados en FSM
Limitaciones encontradas
  Tiempo requerido para obtener el Agente evolucionado
DISEÑO DEL AGENTE Y RESULTADOS

     2ª Aprox. AGs basados en FSM
Limitaciones encontradas
  Memoria requerida para la evolución
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
ÍNDICE

1. INTRODUCCIÓN
2. ESTRUCTURA DEL PROYECTO
3. HERRAMIENTAS UTILIZADAS
4. INTERACTIVIDAD
5. CONCLUSIÓN Y DEMOS
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.
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
Saltar la Bibliografía y terminar
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
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
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
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/
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
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
Gracias por la atención!

Más contenido relacionado

Similar a Diseño y Análisis Agente autónomo videojuego Super Mario Bros

Memoria intermedia
Memoria intermediaMemoria intermedia
Memoria intermedia
sinchan607
 
Sistema de Estadísticas para Golf - AG Golf
Sistema de Estadísticas para Golf - AG GolfSistema de Estadísticas para Golf - AG Golf
Sistema de Estadísticas para Golf - AG Golf
Andres Gotta
 
Exp BúSqueda Entre Adversarios
Exp BúSqueda Entre AdversariosExp BúSqueda Entre Adversarios
Exp BúSqueda Entre Adversarios
Diana
 
Quiroptero
QuiropteroQuiroptero
Tarea 4
Tarea 4Tarea 4
Tarea 4
ildearaque
 
A G's
A G'sA G's
A G's
Maritza
 
Maeb2015 - GPBot
Maeb2015   - GPBotMaeb2015   - GPBot
Maeb2015 - GPBot
Antonio Fernández Ares
 
Tutorial para el uso del software vargus (Roscas)
Tutorial para el uso del software vargus (Roscas)Tutorial para el uso del software vargus (Roscas)
Tutorial para el uso del software vargus (Roscas)
EverMaunas
 

Similar a Diseño y Análisis Agente autónomo videojuego Super Mario Bros (8)

Memoria intermedia
Memoria intermediaMemoria intermedia
Memoria intermedia
 
Sistema de Estadísticas para Golf - AG Golf
Sistema de Estadísticas para Golf - AG GolfSistema de Estadísticas para Golf - AG Golf
Sistema de Estadísticas para Golf - AG Golf
 
Exp BúSqueda Entre Adversarios
Exp BúSqueda Entre AdversariosExp BúSqueda Entre Adversarios
Exp BúSqueda Entre Adversarios
 
Quiroptero
QuiropteroQuiroptero
Quiroptero
 
Tarea 4
Tarea 4Tarea 4
Tarea 4
 
A G's
A G'sA G's
A G's
 
Maeb2015 - GPBot
Maeb2015   - GPBotMaeb2015   - GPBot
Maeb2015 - GPBot
 
Tutorial para el uso del software vargus (Roscas)
Tutorial para el uso del software vargus (Roscas)Tutorial para el uso del software vargus (Roscas)
Tutorial para el uso del software vargus (Roscas)
 

Último

Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdfEvaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
EfranMartnez8
 
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdfAPUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
VeronicaCabrera50
 
2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx
WILLIAMPATRICIOSANTA2
 
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptxREGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
RiosMartin
 
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdfFEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
Jose Luis Jimenez Rodriguez
 
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍACINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
Fernández Gorka
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
EricaCouly1
 
Clase Prensencial, Actividad 2.pdf.......
Clase Prensencial, Actividad 2.pdf.......Clase Prensencial, Actividad 2.pdf.......
Clase Prensencial, Actividad 2.pdf.......
LuanaJaime1
 
Power Point: El conflicto inminente (Bosquejo)
Power Point: El conflicto inminente (Bosquejo)Power Point: El conflicto inminente (Bosquejo)
Power Point: El conflicto inminente (Bosquejo)
https://gramadal.wordpress.com/
 
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdfDESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
JonathanCovena1
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
DavidCamiloMosquera
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
JimmyDeveloperWebAnd
 
La necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdfLa necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdf
JonathanCovena1
 
Eureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de CienciasEureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de Ciencias
arianet3011
 
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
MiNeyi1
 
La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
DobbieElfo
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
https://gramadal.wordpress.com/
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
Ana Fernandez
 
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdfGracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Ani Ann
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Juan Martín Martín
 

Último (20)

Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdfEvaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
Evaluacion-Formativa-Nueva Escuela Mexicana NEM-ok.pdf
 
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdfAPUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
 
2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx
 
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptxREGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
REGLAMENTO DE FALTAS Y SANCIONES DEL MAGISTERIO 2024.pptx
 
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdfFEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
FEEDBACK DE LA ESTRUCTURA CURRICULAR- 2024.pdf
 
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍACINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
 
Clase Prensencial, Actividad 2.pdf.......
Clase Prensencial, Actividad 2.pdf.......Clase Prensencial, Actividad 2.pdf.......
Clase Prensencial, Actividad 2.pdf.......
 
Power Point: El conflicto inminente (Bosquejo)
Power Point: El conflicto inminente (Bosquejo)Power Point: El conflicto inminente (Bosquejo)
Power Point: El conflicto inminente (Bosquejo)
 
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdfDESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
DESARROLLO DE LAS RELACIONES CON LOS STAKEHOLDERS.pdf
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
 
La necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdfLa necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdf
 
Eureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de CienciasEureka 2024 ideas y dudas para la feria de Ciencias
Eureka 2024 ideas y dudas para la feria de Ciencias
 
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
 
La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
 
Gracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdfGracias papá voz mujer_letra y acordes de guitarra.pdf
Gracias papá voz mujer_letra y acordes de guitarra.pdf
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
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
  • 2. ÍNDICE 1. INTRODUCCIÓN 2. PLATAFORMA INFINITE MARIO BROS 3. DISEÑO DEL AGENTE Y RESULTADOS 4. CONCLUSIÓN Y DEMOS
  • 3. ÍNDICE 1. INTRODUCCIÓN 2. PLATAFORMA INFINITE MARIO BROS 3. DISEÑO DEL AGENTE Y RESULTADOS 4. CONCLUSIÓN Y DEMOS
  • 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
  • 6. INTRODUCCIÓN ¿Qué características debe cumplir nuestro Agente? Autonomía Razonamiento Reactividad Aprendizaje Proactividad Planificación Persistencia Inteligencia
  • 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
  • 8. ÍNDICE 1. INTRODUCCIÓN 2. PLATAFORMA INFINITE MARIO BROS 3. DISEÑO DEL AGENTE Y RESULTADOS 4. CONCLUSIÓN Y DEMOS
  • 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
  • 11. PLATAFORMA INFINITE MARIO BROS ¿En qué consiste el juego?
  • 12. PLATAFORMA INFINITE MARIO BROS ¿A qué se enfrentará el Agente? Posibles tipos de obstáculos con los que se enfrenta el agente:
  • 13. PLATAFORMA INFINITE MARIO BROS ¿A qué se enfrentará el Agente? Objetos beneficiosos para el Agente.
  • 14. PLATAFORMA INFINITE MARIO BROS ¿A qué se enfrentará el Agente? Posibles tipos de enemigos:
  • 15. PLATAFORMA INFINITE MARIO BROS ¿A qué se enfrentará el Agente? Precipicios y Estancamientos
  • 16. ÍNDICE 1. INTRODUCCIÓN 2. PLATAFORMA INFITE MARIO BROS 3. DISEÑO DEL AGENTE Y RESULTADOS 4. CONCLUSIÓN Y DEMOS
  • 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
  • 40. ÍNDICE 1. INTRODUCCIÓN 2. ESTRUCTURA DEL PROYECTO 3. HERRAMIENTAS UTILIZADAS 4. INTERACTIVIDAD 5. CONCLUSIÓN Y DEMOS
  • 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
  • 50. Gracias por la atención!