inteligencia artificial en videojuegos - flas · pdf filedefinición de inteligencia...
TRANSCRIPT
Inteligencia Artificial en Inteligencia Artificial en VideojuegosVideojuegos
Javier AlcaláJavier Alcalá
Ciclo de conferencias Game Spirit 2 Ciclo de conferencias Game Spirit 2
Inteligencia Artificial en Videojuegos – Javier Alcalá
2
Definición de Inteligencia ArtificialDefinición de Inteligencia Artificial
► La Inteligencia Artificial (IA) intenta simular la inteligencia La Inteligencia Artificial (IA) intenta simular la inteligencia naturalnatural
► ¿Qué es la inteligencia natural?¿Qué es la inteligencia natural? Según la RAE:Según la RAE:
inteligenciainteligencia(Del lat. (Del lat. intelligentĭaintelligentĭa))
1. 1. f. Capacidad de entender o comprenderf. Capacidad de entender o comprender2. 2. f. Capacidad de resolver problemasf. Capacidad de resolver problemas3. 3. f. Conocimiento, comprensión, acto de entenderf. Conocimiento, comprensión, acto de entender4. 4. f. Sentido en que se puede tomar una sentencia, un dicho o una f. Sentido en que se puede tomar una sentencia, un dicho o una expresiónexpresión5. 5. f. Habilidad, destreza y experienciaf. Habilidad, destreza y experiencia6. 6. f. Trato y correspondencia secreta de dos o más personas o f. Trato y correspondencia secreta de dos o más personas o naciones entre sínaciones entre sí7. 7. f. Sustancia puramente espiritualf. Sustancia puramente espiritual
Falta mencionar el aprendizaje y la memoriaFalta mencionar el aprendizaje y la memoria
Inteligencia Artificial en Videojuegos – Javier Alcalá
3
Definición de Inteligencia ArtificialDefinición de Inteligencia Artificial
►Entonces… ¿qué es la IA?Entonces… ¿qué es la IA? Según la RAE:Según la RAE:
inteligencia artificialinteligencia artificial
1. 1. f.f. Inform. Inform. Desarrollo y utilización de ordenadores Desarrollo y utilización de ordenadores con los que se intenta reproducir los procesos de la con los que se intenta reproducir los procesos de la inteligencia humanainteligencia humana
Definición empírica: Definición empírica: Test de TuringTest de Turing
??
Inteligencia Artificial en Videojuegos – Javier Alcalá
4
Definición de Inteligencia ArtificialDefinición de Inteligencia Artificial
►Test de Turing para humanos: Test de Turing para humanos: captchacaptcha
Inteligencia Artificial en Videojuegos – Javier Alcalá
5
Definición de Inteligencia ArtificialDefinición de Inteligencia Artificial
► IA en videojuegos:IA en videojuegos: Es la simulación de comportamientos de los Es la simulación de comportamientos de los
personajes no manejados por el jugador: NPCs, personajes no manejados por el jugador: NPCs, enemigos, jefes finales, animales…enemigos, jefes finales, animales…
Inteligencia Artificial en Videojuegos – Javier Alcalá
6
Orígenes de la IA en videojuegosOrígenes de la IA en videojuegos
► Los primeros sistemas de Los primeros sistemas de IA (años 50) se aplicaron a IA (años 50) se aplicaron a juegos de mesa: juegos de mesa: damas (Arthur Samuel) y damas (Arthur Samuel) y ajedrez (Claude Shannon)ajedrez (Claude Shannon)
► En los años 60 se En los años 60 se desarrollaron juegos como desarrollaron juegos como el Pong o Spacewar! el Pong o Spacewar! basados en la lógicabasados en la lógica
Inteligencia Artificial en Videojuegos – Javier Alcalá
7
Orígenes de la IA en videojuegosOrígenes de la IA en videojuegos
► En los 70 surgieron En los 70 surgieron juegos de 1 jugador juegos de 1 jugador contra enemigos que contra enemigos que se movían mediante se movían mediante patrones almacenadospatrones almacenados
► Space Invaders (1978) Space Invaders (1978) añadió dificultad añadió dificultad creciente y respondía creciente y respondía a las acciones del a las acciones del jugadorjugador
Inteligencia Artificial en Videojuegos – Javier Alcalá
8
Orígenes de la IA en videojuegosOrígenes de la IA en videojuegos
► Pac-Man (1980) Pac-Man (1980) incorporó algoritmos incorporó algoritmos de búsqueda en de búsqueda en laberintoslaberintos
► Dragon Warrior (1990) Dragon Warrior (1990) fue el primer RPG. fue el primer RPG. Permitía variar las Permitía variar las rutinas de la IA de los rutinas de la IA de los enemigos durante las enemigos durante las batallasbatallas
Inteligencia Artificial en Videojuegos – Javier Alcalá
9
Orígenes de la IA en videojuegosOrígenes de la IA en videojuegos
►En los años 90 se produjo un boom de En los años 90 se produjo un boom de nuevos géneros y nuevas técnicas de IAnuevos géneros y nuevas técnicas de IA Máquinas de estados finitosMáquinas de estados finitos Redes de neuronasRedes de neuronas Computación evolutivaComputación evolutiva Lógica difusaLógica difusa ……
Inteligencia Artificial en Videojuegos – Javier Alcalá
10
Orígenes de la IA en videojuegosOrígenes de la IA en videojuegos
►Battelcruiser 3000AD (1996) incorpora Battelcruiser 3000AD (1996) incorpora redes de neuronasredes de neuronas
Inteligencia Artificial en Videojuegos – Javier Alcalá
11
Técnicas de IA empleadasTécnicas de IA empleadas
►Juegos de suma cero: MinimaxJuegos de suma cero: Minimax►Búsqueda de caminos: A*Búsqueda de caminos: A*►Agentes inteligentesAgentes inteligentes►Maquina de estados finitosMaquina de estados finitos►Redes de neuronasRedes de neuronas►Algoritmos genéticosAlgoritmos genéticos►Redes evolutivas: rtNeatRedes evolutivas: rtNeat
Inteligencia Artificial en Videojuegos – Javier Alcalá
12
Juegos de suma ceroJuegos de suma cero
► Son juegos entre 2 adversarios en los que los Son juegos entre 2 adversarios en los que los intereses de los jugadores son contrarios:intereses de los jugadores son contrarios: Si uno gana, el otro pierde, aunque puede haber tablasSi uno gana, el otro pierde, aunque puede haber tablas
► Cada jugador conoce las posibles jugadas del Cada jugador conoce las posibles jugadas del contrariocontrario
► No interviene el azar en la elección de la mejor No interviene el azar en la elección de la mejor jugadajugada
► Se genera un árbol finitoSe genera un árbol finito► Ejemplo: damas, ajedrez, goEjemplo: damas, ajedrez, go
Inteligencia Artificial en Videojuegos – Javier Alcalá
13
Juegos de suma ceroJuegos de suma cero
► Algoritmo MinimaxAlgoritmo Minimax Se basa en probar todas las posibles jugadas y sus respuestas Se basa en probar todas las posibles jugadas y sus respuestas
hasta un nivel máximohasta un nivel máximo
Inteligencia Artificial en Videojuegos – Javier Alcalá
14
Juegos de suma ceroJuegos de suma cero
Llegado a ese nivel se evalúa el tablero y se da un valor positivo, Llegado a ese nivel se evalúa el tablero y se da un valor positivo, si es buena la jugada, si es buena la jugada, o negativo, si es malao negativo, si es mala
1 0 -1 00 0
Inteligencia Artificial en Videojuegos – Javier Alcalá
15
Juegos de suma ceroJuegos de suma cero
Se propaga el valor hasta el nivel 0Se propaga el valor hasta el nivel 0
1 0 -1 00 0
Min
Max
0 0 -1
0
Inteligencia Artificial en Videojuegos – Javier Alcalá
16
Juegos de suma ceroJuegos de suma cero
►Algoritmo MinimaxAlgoritmo Minimax El algoritmo responde con la mejor jugada El algoritmo responde con la mejor jugada
posible suponiendo que el adversario también posible suponiendo que el adversario también elige su mejor jugadaelige su mejor jugada
►Optimización con poda alfa-betaOptimización con poda alfa-beta
Inteligencia Artificial en Videojuegos – Javier Alcalá
17
Juegos de suma ceroJuegos de suma cero
►Partidas históricas de ajedrez:Partidas históricas de ajedrez:
Kasparov Kasparov 44 Deep Thought Deep Thought 2 2 (1996)(1996) Kasparov Kasparov 2.52.5 DEEP BLUE DEEP BLUE 3.53.5 (1997)(1997) Kasparov Kasparov 44 Deep Fritz Deep Fritz 4 4 (2002)(2002) Kasparov Kasparov 33 Deep Junior Deep Junior 3 3 (2003)(2003)
Inteligencia Artificial en Videojuegos – Javier Alcalá
18
Juegos de suma ceroJuegos de suma cero
► Árbol inicial del ajedrez:Árbol inicial del ajedrez: Juega blancas:Juega blancas:
► Peón 1 escaquePeón 1 escaque x8x8► Peón 2 escaquesPeón 2 escaques x8x8► Caballo Caballo x4x4► 20 movimientos posibles20 movimientos posibles
Juega negras:Juega negras:► Las mismas posibilidadesLas mismas posibilidades
A nivel 2 hay 400 posibilidadesA nivel 2 hay 400 posibilidades A nivel 4 hay unas 20.000 posibilidadesA nivel 4 hay unas 20.000 posibilidades Crecimiento exponencial Crecimiento exponencial ⇒⇒ Desarrollar el árbol completo genera Desarrollar el árbol completo genera
más posibilidades que átomos hay en la galaxiamás posibilidades que átomos hay en la galaxia
► Nuevos retos: Go, a nivel 2 hay unas 130.000 posibilidadesNuevos retos: Go, a nivel 2 hay unas 130.000 posibilidades
Inteligencia Artificial en Videojuegos – Javier Alcalá
19
Búsqueda de caminosBúsqueda de caminos
►También llamado También llamado pathfindingpathfinding►Son algoritmos que buscan un camino Son algoritmos que buscan un camino
existente entre un nodo inicial y un nodo existente entre un nodo inicial y un nodo final de un grafofinal de un grafo
►Se tiene en cuenta un coste entre nodos Se tiene en cuenta un coste entre nodos (distancia, dificultad del terreno…)(distancia, dificultad del terreno…)
►Algoritmos típicos: Algoritmos típicos: Dijkstra, escalada, primero el mejor, A*Dijkstra, escalada, primero el mejor, A*
►El A* nos garantiza el camino óptimoEl A* nos garantiza el camino óptimo
Inteligencia Artificial en Videojuegos – Javier Alcalá
20
Búsqueda de caminosBúsqueda de caminos
3
4
2
4
32
7
5
3
8
3
2
7
2
1
5
4
2
43
5
Inteligencia Artificial en Videojuegos – Javier Alcalá
21
Búsqueda de caminosBúsqueda de caminos
►El nivel de un juego se debe diseñar con un El nivel de un juego se debe diseñar con un grid grid o rejilla y ésta se convierte en un grafoo rejilla y ésta se convierte en un grafo
Inteligencia Artificial en Videojuegos – Javier Alcalá
22
Búsqueda de caminosBúsqueda de caminos
DijkstraDijkstra A*A*
Comparativa de métodosComparativa de métodos
Inteligencia Artificial en Videojuegos – Javier Alcalá
23
Agentes InteligentesAgentes Inteligentes
►Un agente inteligente es una entidad que Un agente inteligente es una entidad que percibe y actúa sobre un entorno de forma percibe y actúa sobre un entorno de forma razonadarazonada
Inteligencia Artificial en Videojuegos – Javier Alcalá
24
Agentes InteligentesAgentes Inteligentes
►Tipos de agentes inteligentesTipos de agentes inteligentes
AgentesBiológicos
AgentesHardware
AgentesInteligentes
AgentesSoftware
Inteligencia Artificial en Videojuegos – Javier Alcalá
25
Agentes InteligentesAgentes Inteligentes
►¿Qué es un agente software?¿Qué es un agente software? Es una entidad que percibe su entorno a través Es una entidad que percibe su entorno a través
de de sensoressensores y actúa de forma autónoma y y actúa de forma autónoma y razonada con la mejor acción posible sobre ese razonada con la mejor acción posible sobre ese entorno mediante entorno mediante actuadoresactuadores
Utiliza el bucle:Utiliza el bucle:PPA (Percepción – Planificación – Actuación)PPA (Percepción – Planificación – Actuación)
Percepción Planificación Actuación
Inteligencia Artificial en Videojuegos – Javier Alcalá
26
Agentes InteligentesAgentes Inteligentes
► Sensores:Sensores: Detectores de Detectores de
obstáculosobstáculos MicrófonosMicrófonos
► Actuadores:Actuadores: PiernasPiernas BrazosBrazos RuedasRuedas
01111100
Detecta rincónDecide girara la izquierda
Realizael
giro
Inteligencia Artificial en Videojuegos – Javier Alcalá
27
Agentes InteligentesAgentes Inteligentes
► Propiedades:Propiedades: Autonomía: actúa por cuenta propiaAutonomía: actúa por cuenta propia Inteligencia: cerrada o adaptable (aprendizaje)Inteligencia: cerrada o adaptable (aprendizaje) Actividad:Actividad:
► Reactivo: actúa después de algún suceso producido en el Reactivo: actúa después de algún suceso producido en el entornoentorno
► Proactivo: decide actuar antes de que se dé un sucesoProactivo: decide actuar antes de que se dé un suceso
Sociabilidad: se comunican con el usuario u otros Sociabilidad: se comunican con el usuario u otros agentesagentes
Cooperación: coopera con otros agentes para realizar Cooperación: coopera con otros agentes para realizar tareas más complejastareas más complejas
Inteligencia Artificial en Videojuegos – Javier Alcalá
28
Agentes InteligentesAgentes Inteligentes
►Aplicaciones en los videojuegos:Aplicaciones en los videojuegos: Comportamientos inteligentesComportamientos inteligentes
►Agente reactivo: guardián de un castilloAgente reactivo: guardián de un castillo►Agente proactivo: exploradores, atacantesAgente proactivo: exploradores, atacantes
Simulación de personalidadesSimulación de personalidades Exploración de mapas desconocidosExploración de mapas desconocidos Simulación de multitudesSimulación de multitudes
Inteligencia Artificial en Videojuegos – Javier Alcalá
29
Máquinas de Estados FinitosMáquinas de Estados Finitos
►Una máquina de estados finitos es una entidad abstracta formada por estados y transiciones entre dichos estados
►Las transiciones se producen por eventos sucedidos en el entorno
►A su vez, la máquina genera una serie de acciones según el estado actual en el que se encuentre
Inteligencia Artificial en Videojuegos – Javier Alcalá
30
Máquinas de Estados FinitosMáquinas de Estados Finitos
► Cada estado representa una acción: moverse, Cada estado representa una acción: moverse, disparar, perseguir, etc.disparar, perseguir, etc.
► Cuando se produce un evento, hay una transición Cuando se produce un evento, hay una transición de un estado a otro: no hay enemigos, enemigo a de un estado a otro: no hay enemigos, enemigo a la vista, poca munición, etc.la vista, poca munición, etc.
PatrullarNo hay
enemigos DispararEnemigoa la vista
Enemigoa la vista
No hayenemigos
Inteligencia Artificial en Videojuegos – Javier Alcalá
31
Máquinas de Estados FinitosMáquinas de Estados Finitos
►MEF para un fantasma de Pac-ManMEF para un fantasma de Pac-Man
Inicio Modo comibleactivado
Perseguir
Pac-Mancerca
Pac-Manlejos
Pac-Mancerca
Buscar
Comer
Huir
Pac-Manlejos
Pac-Manalcanzado
Pac-Man alcanzaal fantasma
Modo comibleactivadoModo comible
desactivado
Time out
Modo comibleactivado
Inteligencia Artificial en Videojuegos – Javier Alcalá
32
Redes de NeuronasRedes de Neuronas► Una Red de Neuronas Artificiales (RNA) es un Una Red de Neuronas Artificiales (RNA) es un
sistema computacional que imita las capacidades sistema computacional que imita las capacidades de los sistemas biológicos utilizando muchos de los sistemas biológicos utilizando muchos elementos simples interconectadoselementos simples interconectados
► Neurona formalNeurona formal
Inteligencia Artificial en Videojuegos – Javier Alcalá
33
Redes de NeuronasRedes de Neuronas
►Características:Características: Clasifican patrones de entradaClasifican patrones de entrada Necesitan entrenamiento supervisado con Necesitan entrenamiento supervisado con
muchos ejemplosmuchos ejemplos Son capaces de generalizar el reconocimiento Son capaces de generalizar el reconocimiento
de patronesde patrones Ante una entrada desconocida devuelve la Ante una entrada desconocida devuelve la
clase más parecidaclase más parecida Una vez entrenadas, funcionan en tiempo realUna vez entrenadas, funcionan en tiempo real
Inteligencia Artificial en Videojuegos – Javier Alcalá
34
Redes de NeuronasRedes de Neuronas
► Percetrón simplePercetrón simple
► Perceptrón multicapaPerceptrón multicapa
Entrada Salida
Entrada Oculta Salida
Inteligencia Artificial en Videojuegos – Javier Alcalá
35
Redes de NeuronasRedes de Neuronas
►Uso en videojuegosUso en videojuegos
Izquierda
Frontal
Derecha
Girar a laizquierda
Girar a laderecha
Seguir defrente
Inteligencia Artificial en Videojuegos – Javier Alcalá
36
Algoritmos GenéticosAlgoritmos Genéticos
► Si no disponemos de ejemplos para realizar el Si no disponemos de ejemplos para realizar el aprendizaje, tenemos que emplear mecanismos aprendizaje, tenemos que emplear mecanismos basados en aprendizaje por basados en aprendizaje por ensayo y errorensayo y error
► Los Algoritmos Genéticos (AG) se utilizan en Los Algoritmos Genéticos (AG) se utilizan en aquellos casos en los que no existe un algoritmo aquellos casos en los que no existe un algoritmo convencionalconvencional
► Resuelven problemas de optimizaciónResuelven problemas de optimización► Se basan en la Teoría de la Evolución de Darwin Se basan en la Teoría de la Evolución de Darwin
((El origen de las especiesEl origen de las especies, 1859), 1859)► Son sistemas muy robustosSon sistemas muy robustos
Inteligencia Artificial en Videojuegos – Javier Alcalá
37
Algoritmos GenéticosAlgoritmos Genéticos
► Principios de la evolución por Principios de la evolución por Selección NaturalSelección Natural::1.1. Cada individuo tiende a transmitir sus rasgos a su Cada individuo tiende a transmitir sus rasgos a su
progenieprogenie
2.2. La naturaleza produce individuos con rasgos La naturaleza produce individuos con rasgos diferentes, debido a mutacionesdiferentes, debido a mutaciones
3.3. Los individuos más adaptados, cuyos rasgos son más Los individuos más adaptados, cuyos rasgos son más favorables para desenvolverse en el medio, tienden a favorables para desenvolverse en el medio, tienden a producir más progenie (sobreviven los más adaptados)producir más progenie (sobreviven los más adaptados)
4.4. Durante Durante largos períodos de tiempolargos períodos de tiempo se puede acumular se puede acumular la variación produciendo nuevas especies la variación produciendo nuevas especies completamente adaptadas a nichos particularescompletamente adaptadas a nichos particulares
Inteligencia Artificial en Videojuegos – Javier Alcalá
38
Algoritmos GenéticosAlgoritmos Genéticos
► Componentes de un AG:Componentes de un AG: IndividuoIndividuo: representado por un cromosoma con la : representado por un cromosoma con la
información que queremos optimizarinformación que queremos optimizar Calidad o Calidad o fitnessfitness: da una medida del grado de : da una medida del grado de
adaptación al medio (objetivo, principio 4)adaptación al medio (objetivo, principio 4) Operador selecciónOperador selección: : con probabilidad de selección de con probabilidad de selección de
cada individuo cada individuo proporcionalproporcional a la calidad (principio 3) a la calidad (principio 3) Operador emparejamiento o reproducciónOperador emparejamiento o reproducción: que : que
producirá nuevos individuos en la siguiente generación producirá nuevos individuos en la siguiente generación (principio 1)(principio 1)
Operador mutaciónOperador mutación: capaz de alterar el código de los : capaz de alterar el código de los nuevos individuos, incrementando la riqueza genética nuevos individuos, incrementando la riqueza genética de la población (principio 2)de la población (principio 2)
Inteligencia Artificial en Videojuegos – Javier Alcalá
39
Algoritmos GenéticosAlgoritmos Genéticos
► Algoritmo:Algoritmo: Generar una Población aleatoria de NI individuosGenerar una Población aleatoria de NI individuos Repetir hasta haber realizado N generacionesRepetir hasta haber realizado N generaciones
►Repetir hasta alcanzar NI individuos Repetir hasta alcanzar NI individuos Aplicar operador SELECCIÓN: extrae 2 individuosAplicar operador SELECCIÓN: extrae 2 individuos Aplicar operador EMPAREJAMIENTO: cruza su información Aplicar operador EMPAREJAMIENTO: cruza su información
genética. Esto genera 2 nuevos individuosgenética. Esto genera 2 nuevos individuos Aplicar operador MUTACION a cada individuo generadoAplicar operador MUTACION a cada individuo generado
Devolver el individuo con mayor calidad de la poblaciónDevolver el individuo con mayor calidad de la población
Inteligencia Artificial en Videojuegos – Javier Alcalá
40
Redes Neuronales EvolutivasRedes Neuronales Evolutivas
► Se combinan las redes neuronales con los Se combinan las redes neuronales con los algoritmos genéticosalgoritmos genéticos
► Consiste en definir la entrada y la salida de una Consiste en definir la entrada y la salida de una red neuronal y los algoritmos genéticos se red neuronal y los algoritmos genéticos se encargan de definir la topología interna y los encargan de definir la topología interna y los pesos de cada neuronapesos de cada neurona NEAT (NeuroEvolution of Augmenting Topologies)NEAT (NeuroEvolution of Augmenting Topologies) rtNEAT (real time NeuroEvolution of Augmenting rtNEAT (real time NeuroEvolution of Augmenting
Topologies)Topologies)
Inteligencia Artificial en Videojuegos – Javier Alcalá
41
Redes Neuronales EvolutivasRedes Neuronales Evolutivas
►Los personajes entrenados con este Los personajes entrenados con este sistema se adaptan fácilmente durante el sistema se adaptan fácilmente durante el juego a los cambios en el entornojuego a los cambios en el entorno Juego NERO (nerogame.org)Juego NERO (nerogame.org)
Inteligencia Artificial en Videojuegos – Javier Alcalá
42
I+D en IA para VideojuegosI+D en IA para Videojuegos
►Un campo de investigación muy abiertoUn campo de investigación muy abierto►Normalmente se basa en combinar varias Normalmente se basa en combinar varias
técnicastécnicas Por ejemplo, máquinas de estados finitos con Por ejemplo, máquinas de estados finitos con
algoritmos genéticosalgoritmos genéticos Se conseguirían comportamientos Se conseguirían comportamientos
desconocidos, absurdos, divertidos, que desconocidos, absurdos, divertidos, que mejoran la experiencia de juegomejoran la experiencia de juego
Se trata de evitar esto:Se trata de evitar esto:
Inteligencia Artificial en Videojuegos – Javier Alcalá
43
I+D en IA para VideojuegosI+D en IA para Videojuegos
► Hay que procurar que el jugador esté inmerso en Hay que procurar que el jugador esté inmerso en el juego sin aburrirse, adaptando el nivel de los el juego sin aburrirse, adaptando el nivel de los enemigos al nivel del jugador enemigos al nivel del jugador ⇒⇒ Concepto de flujo Concepto de flujo
► Flujo Flujo (Mihaly Csikszenmihali)(Mihaly Csikszenmihali) Es el estado mental operativo en el cual la persona está Es el estado mental operativo en el cual la persona está
completamente inmersa en la actividad que está completamente inmersa en la actividad que está ejecutandoejecutando
Se caracteriza por un sentimiento de enfocar la energía, Se caracteriza por un sentimiento de enfocar la energía, de total implicación con la tarea y de éxito en la de total implicación con la tarea y de éxito en la realización de la actividad realización de la actividad
Inteligencia Artificial en Videojuegos – Javier Alcalá
44
I+D en IA para VideojuegosI+D en IA para Videojuegos
►Canal de flujoCanal de flujo
0(Poca)
∞(Mucha)
Habilidades
(Poco)0
∞(Mucho)
Aburrimiento
Ansiedad
Canal de flujo
De
sa
fí
os
Inteligencia Artificial en Videojuegos – Javier Alcalá
45
ConsultasConsultas
►Contacto: Contacto: [email protected]@eui.upm.es
► http://aigamedev.com/http://aigamedev.com/► theory.stanford.edu/~amitp/GameProgramming/theory.stanford.edu/~amitp/GameProgramming/► http://nerogame.org/http://nerogame.org/► ““Fluir (Flow). Una psicología de la felicidad”. Fluir (Flow). Una psicología de la felicidad”.
Mihaly CsikszenmihaliMihaly Csikszenmihali► interactive.usc.edu/projects/cloud/flowing/interactive.usc.edu/projects/cloud/flowing/
Inteligencia Artificial en Inteligencia Artificial en VideojuegosVideojuegos
Javier AlcaláJavier Alcalá
GRACIASGRACIASCiclo de conferencias Game Spirit 2Ciclo de conferencias Game Spirit 2