Ciencia y videojuegos

3,009 views

Published on

Presentación de la charla impartida durante el pasado Curso de Verano del Centro Mediterráneo de Almuñécar, titulado "Animación y Videojuegos".
En la charla se habla de diversos aspectos que relacionan ciencia y videojuegos, desde las posibilidades de los sistemas de juego en relación a la ciencia, hasta la investigación científica en el campo de los videojuegos.

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,009
On SlideShare
0
From Embeds
0
Number of Embeds
1,265
Actions
Shares
0
Downloads
31
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Ciencia y videojuegos

  1. 1. CIENCIA Y VIDEOJUEGOSPLAYER 1 – ANTONIO M. MORA GARCÍA - Press START - © Curso Almuñécar 2012
  2. 2. • Introducción crecimiento del mercado de videojuegos, taxonomía de jugadores, sistemas de juego actuales. Videojuegos en la Universidad.• Aplicaciones de los videojuegos a la ciencia uso de sistemas de videojuegos en campos de la ciencia.• Ciencia en los videojuegos consideraciones científicas en el mundo de los videojuegos.• Investigación en videojuegos principales campos de investigación dentro del ámbito de los videojuegos.• Ejemplos
  3. 3. INTRODUCCIÓN
  4. 4. • Recientemente ha habido un crecimiento enorme del consumo de videojuegos en el mundo, debido a su acercamiento a grupos antes ajenos a ellos: usuarios mayores de 25 años y menores de 10 incluyendo padres, 10, madres y abuelos, así como el sector femenino femenino.• Este crecimiento se ha debido al cambio en la filosofía de los videojuegos, ofreciendo contenidos más ‘adultos’ o por el contrario, más asequibles e ‘infantiles’, así como juegos de acción directa y breve.• CIENCIA! ¡Hay mercado para vender CIENCIA
  5. 5. • El crecimiento del mercado de los videojuegos ha hecho que aparezcan los gamers. llamados casual gamers Son jugadores esporádicos y centrados en juegos de acción directa y breve (arcade, deportivos, mini-juegos), o de los llamados no-juegos (juegos de no- entrenamiento, dibujo, etc).• Los jugadores de toda la vida se han autodenominado hardcore gamers gamers. Éstos disfrutan y exprimen los videojuegos están informados, les gustan la videojuegos, mayoría de géneros y juegan largos periodos (si pueden).
  6. 6. • Aparte del PC y de los sistemas móviles (iOS, Android, etc), existen varios sistemas muy extendidos:• Consolas de sobremesa Wii Xbox 360 Playstation 3• Consolas portátiles Nintendo Playstation 3DS Vita
  7. 7. • Y muchos más (consolas de filosofía abierta poco conocidos por el gran público. consolas abierta), GP2X Wiz Caanoo Dingoo Pandora
  8. 8. • Otra de las repercusiones es que desde hace unos años se están adaptando los planes de estudios al desarrollo de estas aplicaciones.• Existen asignaturas Grados e incluso Másteres dedicados: asignaturas, – Asignatura “Diseño de Videojuegos Universidad de Cádiz Diseño Videojuegos”, – “Grado en Diseño y Desarrollo de Videojuegos - Universidad Camilo José Grado Videojuegos” Cela – “Diseño y Desarrollo de Videojuegos y Sistemas Interactivos - Universitat Diseño Interactivos” Jaume I – “Máster en Creación de Videojuegos – Universitat Pompeu Fabra Máster Videojuegos” – “Máster en Programación de Videojuegos – U-tad Máster Videojuegos”• Aún así, distamos mucho de Europa y América: – Ejemplo: Center for Computer Game Research (Copenhagen)
  9. 9. APLICACIONESA LA CIENCIA
  10. 10. Su novedoso mando (Wiimote ha tenido muchas aplicaciones en el Wiimote) Wiimote ámbito científico (y no tan científico): • control de robots, paneles/monitores reactivos, reconocimiento y seguimiento de formas y sujetos.http://www.youtube.com/watch?v=v1AJ_OBJUpY http://www.youtube.com/watch?v=TkmxhVtvLoM http://www.youtube.com/watch?v=0awjPUkBXOU
  11. 11. Hay incluso un proyecto, WiiLab que ha creado una utilidad en Matlab WiiLab,para interaccionar con el Wiimote… …y otra con Game Maker!!! http://code.google.com/p/giimote/ http://www.youtube.com/watch?v=EeBAYeoX7-8
  12. 12. • Inicialmente se utilizó para crear clusters de consolas (super computadores), debido a la potencia de su chip Cell y su precio no muy elevado.• Contaba con un S.O. Linux adicional (Yellow Dog) muy flexible.• Posteriormente, la consola fue actualizada por Sony para no admitir la instalación de otro S.O., S.O. con lo que se perdió esta posibilidad.
  13. 13. Gracias a su controlador sin mandos Kinect Kinect:• control de robots por movimiento y por voz, reconocimiento de formas y personas, etc. http://www.youtube.com/watch?v=Sw4RvwhQ73E http://www.youtube.com/watch?v=c6jZjpvIio4
  14. 14. CIENCIA EN LOS VIDEOJUEGOS
  15. 15. • Los videojuegos, desde siempre, cumplen con reglas de la física física, incluso los más simples (en apariencia) como Super Mario Bros. (saltos, trayectorias, inercia,…).• En la actualidad se está tendiendo a hacerlos completamente fieles a la realidad, creando motores específicos para modelado de físicas. físicas http://www.youtube.com/watch?v=B7_rPDwSKe8
  16. 16. Los principios científicos de funcionamiento del primer mandobasado en movimiento y usado como controlador principal de unaconsola (Wiimote son: Wiimote) Wiimote http://www.youtube.com/watch?v=ETAKfSkec6A
  17. 17. INVESTIGACIÓNEN VIDEOJUEGOS
  18. 18. • Aparte del realismo visual y físico se quiere modelar enemigos y físico, compañeros cuyo comportamiento sea ‘inteligente’ (humano).• IA. Es decir, los recursos se están invirtiendo en la IA
  19. 19. • Se llama IA a la rama de la informática dedicada a la implementación de agentes racionales (o aparentemente racionales) no vivos vivos.• Dentro de un videojuego se trata de definir técnicas de videojuego, comportamiento para los personajes no manejables (NPCs en inglés) que ‘simulen’ ser racionales. Estos personajes podrán ser enemigos o colaboradores.• En principio no se trata de obtener comportamiento estrictamente humano, dado que esto conllevaría la inclusión ‘forzosa’ de errores (los humanos nos equivocamos mucho).
  20. 20. • En los inicios de los videojuegos, los NPCs seguían habitualmente unas pautas o patrones predefinidos que el predefinidos, programador establecía al crear el juego y que eran invariables invariables.• Las IAs reactivas proponían acciones de los NPCs en respuesta a las de los jugadores.• Las IAs dedicadas establecían ‘personalidades’ diferentes a los NPCs.
  21. 21. • Posteriormente se empezó a utilizar las llamadas máquinas de estados finitos las cuales definen una serie de estados finitos, posibles para el NPC y las transiciones entre ellos (basadas en percepciones sobre el juego o sobre el jugador). By Fergu
  22. 22. • También son bastante utilizados los sistemas de reglas y los árboles de decisión En ambos casos se tienen un conjunto de decisión. reglas que el NPC seguirá para actuar en función de las condiciones (entradas o percepciones) que se den en su entorno.
  23. 23. • En la actualidad, lo más habitual es aplicar una mezcla de estas técnicas. Así en la gran mayoría de juegos los NPCs utilizan variantes de comportamientos predefinidos (scripts en función de las acciones del jugador scripts), scripts jugador.• Su ventaja es que es relativamente sencillo definirlos basándose en la definirlos, experiencia del programador/jugador en el juego (o juegos similares).• Su problema es la poca flexibilidad que tienen para adaptarse a situaciones cambiantes. cambiantes• Además, los NPCs cuentan por lo general con ventajas adicionales al jugador humano, como puntería perfecta basada en coordenadas exactas, navigation points (puntos de paso prefijados que siguen rutas hacia zonas ventajosas o items), etc.• Comercialmente se ha hecho poco uso de otras técnicas ‘más científicas’, como las redes neuronales, los algoritmos evolutivos…
  24. 24. • Tradicionalmente en el entorno científico se consideraba la llamada Teoría de Juegos una rama de las matemáticas aplicadas en la que Juegos, se ofrecen incentivos en base a la toma de decisiones Dentro de ella decisiones. se incluían juegos sencillos en su planteamiento, pero costosos en su resolución: torres de Hanoi, dilema del prisionero, juego de la vida anoi, vida.• Estos juegos planteaban problemas a resolver mediante técnicas exactas, heurísticas o metaheurísticas búsqueda en árboles, A*, metaheurísticas: algoritmos genéticos, algoritmos basados en colonias de hormigas,…• Además, la resolución de juegos tradicionales (típicamente puzles) también ha sido objeto de estudio desde los inicios de la investigación científica: ajedrez, backgammon, mastermind, sudoku ackgammon, mastermind,
  25. 25. • La aparición de los videojuegos propició un nuevo entorno de problemas. problemas• El primero y más directo que se propuso resolver fue el de los aspectos relativos a la IA Este problema aún es el más relevante. IA.• Posteriormente, con el avance de la tecnología, los videojuegos se fueron haciendo cada vez más complejos con lo que se añadieron complejos, nuevos componentes que era posible investigar: investigar – Búsqueda en mapas, predicción de combates, simulación, etc• En la actualidad, las posibilidades son tan grandes, que los temas de estudio han aumentado exponencialmente y del mismo modo la investigación científica (y publicaciones).
  26. 26. • Rama de la IA que aplica metaheurísticas y mecanismos bioinspirados para la resolución de problemas complejos complejos, generalmente modelando sistemas adaptativos o cambiantes cambiantes.• Hay que modelar el juego (o una parte del mismo) como un problema de optimización, búsqueda o aprendizaje.• Ejemplos: – Búsqueda de camino mínimo en un mapa – Predicción de resultado de combates – Definición automática de reglas de comportamiento – Ajuste de parámetros de comportamiento – Decisión de objetivos
  27. 27. • Entre las Metaheurísticas más utilizadas están: Algoritmos Genéticos (AG), Algoritmos de Optimización basada en Colonias de Hormigas (OCH), Monte-Carlo Tree Search Monte- (MCTS), A* Programación Genética (PG), Lógica Difusa A*, Difusa, Neuronales… Redes Neuronales• Y suelen aplicarse sobre máquinas de estados finitos (MEF), scripts, scripts sistemas de reglas (SR) o sistemas expertos (SE), etc.
  28. 28. • NPC’s AI se trata de modelar la IA o AI: aspectos de ella para rivales o compañeros dentro de cualquier juego. Habitualmente se aplican AGs para evolucionar parámetros o comportamientos.• Rule system generation se trata de definir generation: automáticamente el conjunto de reglas que determinen la forma de actuar de los NPCs. Se suele aplicar PG.• Human- Human-like behaviour analysis and modelling: el modelling objetivo es modelar NPCs que sean capaces de actúar como lo haría un jugador humano. Para ello se pueden usar técnicas de extracción de datos (data mining) sobre conjuntos de datos relativos a partidas de humanos.
  29. 29. • Cheating detection se aplican técnicas de detection: detección de ‘trampas’ en partidas, en base a un estudio de las estadísticas obtenidas por los jugadores.• Move and battle prediction se entrenan prediction: métodos de predicción (como redes neuronales) en base a datos de partidas grabadas, para que sean capaces de anticipar futuros movimientos o acciones de los rivales.• Learning in games usando métodos de games: aprendizaje por refuerzo (reinforcement learning), se consiguen agentes adaptativos.
  30. 30. • Game mechanics and features analysis se analizan analysis: los componentes del juego y se parametrizan a fin de conseguir evaluaciones numéricas de los elementos que conforman un juego.• Exploration and search in games se aplican games: algoritmos de búsqueda para encontrar caminos a objetivos en mapas de juegos, o para explorar determinadas zonas maximizando el área cubierta, por ejemplo.• haracters, generation: Content, characters, levels and story generation se aplican algoritmos de optimización para distribuir generar contenidos o formas en un nivel. Se crean funciones matemáticas que valoran de forma objetiva estos contenidos o niveles generados, o se hacen algoritmos interactivos que cuentan con un feedback por parte de usuarios humanos.
  31. 31. EJEMPLOS
  32. 32. i población inicial f función de evaluación ? condición de parada Se selección Cr cruce Mu mutación Re reemplazoby Johann Dréo
  33. 33. http://www.youtube.com/watch?v=ejxfTy4lI6I
  34. 34. Unreal es un juego de disparos en primera persona (FPS) (FPS).Muy famoso por la excelente IA de los enemigos (bots), que lo convierten enun excelente juego multijugador.Tiene un editor sencillo con el que se puede cambiar o crear cualquier cosaen el juego (con el lenguaje UnrealScript UnrealScript).
  35. 35. • Analizamos MEF• Determinamos parámetros• Optimizamos Bot basado en AG EVALUACIÓN DEL FITNESS (GA-Bot GA- GA Bot) población Std AI Std Std AI AI Proceso Evolutivo del AG
  36. 36. • Analizamos MEF• Determinamos parámetros de equipo• Optimizamos Equipo de bots basados en AGs EVALUACIÓN DEL FITNESS (GT-Bot GT- GT Bot) Std Std AI AI Std AI población vs Proceso Evolutivo del AG O
  37. 37. • Ejemplos de NPCs/Bots/Agentes:http://www.youtube.com/watch?v=EiAWYGNpu9M http://www.youtube.com/watch?v=0Khtp2tEU1k
  38. 38. Una buena forma de empezar:• 2K BotPrize bots de Unreal que deben ser lo más humanos posible. BotPrize:• Starcraft: Starcraft combates en el famoso RTS.• Planet Wars: RTS de lucha interplanetaria simple. Wars (Google AI Challenge 2010).• ANTS: ANTS RTS de pelea entre hormigas. (Google AI Challenge 2011).• Pac-Man: Pac-Man Famoso comecocos. Puedes implementar a Pac-man o a los fantasmas.• Simulated Car Racing Carreras de coches. Racing:• Mario AI Agente, aprendizaje, generación de niveles. AI: http://geneura.ugr.es/cig2012/competitions.html
  39. 39. • Congresos: Congresos – IEEE CIG (2012 en Granada) – CGAMES – GAME-ON – CGAT – Special Sessions: IWANN, MAEB, EVO*, GECCO, WCCI• Revistas: Revistas – Transactions on Computational Intelligence and AI in Games (IEEE) – Entertainment Computing (Springer) … – Cualquiera en la que cuele

×