SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Desarrollo de Videojuegos
Jugabilidad
Inteligencia artificial
● La Inteligencia Artificial (IA) en juegos no es
un concepto académico sino un conjunto de
soluciones a problemas muy concretos
● Queremos enriquecer los juegos con:
Inteligencia artificial 2
Motivación
Toma de
decisiones
ACCIONES
(como movimiento,
interacción, navegación
por el entorno…)
Análisis del
entorno
Percepción de
cada agente
● Para lo que, en Unreal Engine, existen
diversos sistemas que ayudan a realizar
cada una de estas tareas
Inteligencia artificial 3
Motivación
● Percepción
● Movimiento y navegación
● Árboles de comportamiento
○ Ejemplo
● Sistema de consulta al entorno
● Herramientas de depuración
Inteligencia artificial 4
Puntos clave
● Los agentes pueden tener sentidos y
percibir daño, ruido, presencia de alguien
(por vista, tacto…), anticiparse al
movimiento de otro…
○ Antiguamente se
usaba una solución
sencilla pero poco
eficiente llamada
Pawn Sensing
Inteligencia artificial 5
Percepción
https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/
AIPerception/index.html
● Añade lo siguiente al controlador del NPC
○ El componente AIPerception, los sentidos que necesites en
SensesConfig y eventos del tipo de OnPerceptionUpdate
● Todos los actores “percibibles” se deben
autoregistrar en el sentido correspondiente,
usando RegisterPerceptionStimuliSource
Inteligencia artificial 6
Percepción
● Tener mallas de navegación en los niveles y
agentes capaces de navegarlas es esencial
○ Parte de la inteligencia está en el mundo, y parte
en la navegación por ruta óptima del propio agente
Inteligencia artificial 7
Navegación
● El espacio potencialmente navegable se
cubrirá con un NavMeshBoundsVolume
○ Pulsando P vemos la malla de navegación
autogenerada en base al suelo y los obstáculos
○ ¡Los controladores de IA ya saben navegar aquí!
● Colocando actores NavLinkProxy es posible
saltar o dejarse caer de un punto a otro
● El componente Nav Modifier puede cambiar
el coste u otras propiedades de una zona
○ Lo normal es que las IAs busquen caminos mínimos
en términos de coste
Inteligencia artificial 8
Navegación
● Para decidir, el paradigma por defecto que
ofrece Unreal son los árboles de
comportamiento (para razonar) junto a las
pizarras (para compartir conocimiento)
Inteligencia artificial 9
Árboles de comportamiento
● Jerarquizan tareas, con este aspecto:
Inteligencia artificial 10
Árboles de comportamiento
BEHAVIOR TREES
● Son árboles dirigidos
○ Tienen un nodo raíz,
nodos de control de flujo
y nodos de ejecución
(las tareas)
* Que pueden estar en ejecución
o terminar con éxito o con fracaso
● Dos nodos principales de control de flujo:
○ Nodo Selector (?), tiene éxito si uno de sus hijos
tiene éxito, probando de izquierda a derecha
○ Nodo Secuencia (→) , tiene éxito si todos sus hijos
tienen éxito, de izquierda a derecha
Inteligencia artificial 11
Árboles de comportamiento
Inteligencia artificial 12
Árboles de comportamiento
La pizarra tiene registros
clave-valor que se usarán en el BT
(son las variables locales)
Nodos de secuencia o selección,
alternan el orden de ejecución
Inteligencia artificial 13
Ejemplo
Inteligencia artificial 14
Árboles de comportamiento
Finalmente se crea un AIController y se lanza el BT
https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/
BehaviorTrees/BehaviorTreesOverview/index.html
Las tareas se programan en respuesta a eventos del BT y pueden usar de todo
● ¿Cuál es la diferencia entre un nodo
selector y un nodo secuencia?
A. El primero es una “Y” lógica y el segundo una “O”
B. El primero evalúa a derechas y el segundo al revés
C. El primero es nodo de flujo y el segundo ejecución
D. El primero es una “O” lógica y el segundo una “Y”
Inteligencia artificial 15
Participación
● Existen otras formas de decidir:
○ Máquinas de estado
○ Teoría de la decisión/utilidad
○ Sistemas de reglas
○ Planificación automática
○ …
● Implementarlas es difícil y se suele recurrir
a herramientas de terceros
Inteligencia artificial 16
Otros paradigmas
● Se basa en dar objetivos a los personajes,
que construirán sus propios planes según las
acciones que pueden realizar
○ ¡Os animo a probarla… y a valorarla!
Inteligencia artificial 17
Ejemplo: GOAP NPC
● El sistema EQS (Environment Query System)
es la interfaz con el mundo y sirve no sólo
para percibir sino para probar condiciones
“tácticas” sobre el entorno
○ ¿Quien domina el campo
de batalla?
○ ¿Dónde hay una buena
cobertura para mi?
○ ...
Inteligencia artificial 18
Sistema de consulta al entorno
https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/
EQS/EQSQuickStart/index.html
● Si usamos BTs o percepción, se activan con
apóstrofe (‘/?)... y luego control numérico
○ ¡Son extremadamente útiles para depurar!
Inteligencia artificial 19
Herramientas de depuración
https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/
AIDebugging/index.html
● Las mallas de navegación son la
infraestructura básica para añadir la IA
● Los árboles de comportamiento sirven
concretar la toma de decisiones
● La interfaz con el mundo se llama “sistema
de consulta al entorno” (EQS) en Unreal
● La percepción son los sentidos subjetivos
que activas en cada uno de los agentes
● Las herramientas de depuración de todos
estos sistemas están integradas
Inteligencia artificial 20
Resumen
Federico Peinado (2019-2021)
www.federicopeinado.es
Críticas, dudas, sugerencias...
* Licencia sólo aplicable al texto original de estas diapositivas

Más contenido relacionado

Similar a DEV 02-04 Inteligencia artificial.pdf

Similar a DEV 02-04 Inteligencia artificial.pdf (20)

Descubriendo la Inteligencia Artificial
Descubriendo la Inteligencia ArtificialDescubriendo la Inteligencia Artificial
Descubriendo la Inteligencia Artificial
 
Intro Inteligencia Artificial (AI)
Intro Inteligencia Artificial (AI)Intro Inteligencia Artificial (AI)
Intro Inteligencia Artificial (AI)
 
Interfaz del mundo
Interfaz del mundoInterfaz del mundo
Interfaz del mundo
 
Optimización del rendimiento
Optimización del rendimientoOptimización del rendimiento
Optimización del rendimiento
 
Inteligencia Artificial introducción
 Inteligencia Artificial introducción Inteligencia Artificial introducción
Inteligencia Artificial introducción
 
Árbol de comportamiento
Árbol de comportamientoÁrbol de comportamiento
Árbol de comportamiento
 
Introducción a Machine Learning
Introducción a Machine LearningIntroducción a Machine Learning
Introducción a Machine Learning
 
Machine Learning: ¿Caminos? A donde vamos, no necesitamos caminos
Machine Learning: ¿Caminos? A donde vamos, no necesitamos caminosMachine Learning: ¿Caminos? A donde vamos, no necesitamos caminos
Machine Learning: ¿Caminos? A donde vamos, no necesitamos caminos
 
Inteligencia Artificial.pdf
Inteligencia Artificial.pdfInteligencia Artificial.pdf
Inteligencia Artificial.pdf
 
DEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdfDEV 04-01 Optimización del rendimiento.pdf
DEV 04-01 Optimización del rendimiento.pdf
 
Export
ExportExport
Export
 
Búsqueda IA
Búsqueda IABúsqueda IA
Búsqueda IA
 
Sesion1 introduccion
Sesion1 introduccionSesion1 introduccion
Sesion1 introduccion
 
Inteligendia artificial
Inteligendia artificialInteligendia artificial
Inteligendia artificial
 
Inteligencia artifial
Inteligencia artifialInteligencia artifial
Inteligencia artifial
 
Presentación conceptos básico de la PC
Presentación conceptos básico de la PCPresentación conceptos básico de la PC
Presentación conceptos básico de la PC
 
10 de abril de 2017
10 de abril de 201710 de abril de 2017
10 de abril de 2017
 
La
LaLa
La
 
Computacion-global-2.pdf
Computacion-global-2.pdfComputacion-global-2.pdf
Computacion-global-2.pdf
 
2DO PRIMARIA LIBRO COMPUTACION.pdf
2DO PRIMARIA LIBRO COMPUTACION.pdf2DO PRIMARIA LIBRO COMPUTACION.pdf
2DO PRIMARIA LIBRO COMPUTACION.pdf
 

Más de Federico Peinado

Más de Federico Peinado (20)

Acción coordinada
Acción coordinadaAcción coordinada
Acción coordinada
 
Comunicación en lenguaje natural
Comunicación en lenguaje naturalComunicación en lenguaje natural
Comunicación en lenguaje natural
 
Puntos de ruta tácticos
Puntos de ruta tácticosPuntos de ruta tácticos
Puntos de ruta tácticos
 
Análisis táctico
Análisis tácticoAnálisis táctico
Análisis táctico
 
Probabilidad y utilidad
Probabilidad y utilidadProbabilidad y utilidad
Probabilidad y utilidad
 
Reglas y planificación
Reglas y planificaciónReglas y planificación
Reglas y planificación
 
Máquina de estados
Máquina de estadosMáquina de estados
Máquina de estados
 
Búsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadasBúsqueda de caminos usando estrategias informadas
Búsqueda de caminos usando estrategias informadas
 
Representación del entorno
Representación del entornoRepresentación del entorno
Representación del entorno
 
Resolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estadosResolución de problemas en el espacio de estados
Resolución de problemas en el espacio de estados
 
Desplazamiento en grupo
Desplazamiento en grupoDesplazamiento en grupo
Desplazamiento en grupo
 
Percepción
PercepciónPercepción
Percepción
 
Comportamiento de dirección
Comportamiento de direcciónComportamiento de dirección
Comportamiento de dirección
 
Física y animación
Física y animaciónFísica y animación
Física y animación
 
Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)Generación procedimental de contenido (+ Pseudocódigo)
Generación procedimental de contenido (+ Pseudocódigo)
 
Aplicación según tipología del juego
Aplicación según tipología del juegoAplicación según tipología del juego
Aplicación según tipología del juego
 
Inteligencia Artificial para Videojuegos
Inteligencia Artificial para VideojuegosInteligencia Artificial para Videojuegos
Inteligencia Artificial para Videojuegos
 
Industria y negocio
Industria y negocioIndustria y negocio
Industria y negocio
 
Postproducción y distribución
Postproducción y distribuciónPostproducción y distribución
Postproducción y distribución
 
Mercadotecnia
MercadotecniaMercadotecnia
Mercadotecnia
 

Último

3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
GustavoAdolfoDiaz3
 

Último (20)

Presentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potablePresentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potable
 
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.pptELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
ELASTICIDAD PRECIO DE LA DEMaaanANDA.ppt
 
entropia y neguentropia en la teoria general de sistemas
entropia y neguentropia en la teoria general de sistemasentropia y neguentropia en la teoria general de sistemas
entropia y neguentropia en la teoria general de sistemas
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
Clasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docxClasificación de Equipos e Instrumentos en Electricidad.docx
Clasificación de Equipos e Instrumentos en Electricidad.docx
 
5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.5. MATERIALES petreos para concreto.pdf.
5. MATERIALES petreos para concreto.pdf.
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECO
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas1. Equipos Primarios de una Subestaciones electricas
1. Equipos Primarios de una Subestaciones electricas
 
libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
3.6.2 Lab - Implement VLANs and Trunking - ILM.pdf
 
ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................ARMADURAS METODO NODOS.pptx......................
ARMADURAS METODO NODOS.pptx......................
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
Manual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdfManual deresolucion de ecuaciones por fracciones parciales.pdf
Manual deresolucion de ecuaciones por fracciones parciales.pdf
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALESCAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
CAPACITACIÓN EN AGUA Y SANEAMIENTO EN ZONAS RURALES
 
docsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbanadocsity-manzaneo-y-lotizacion para habilitacopm urbana
docsity-manzaneo-y-lotizacion para habilitacopm urbana
 
Arquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo LimacheArquitecto cambio de uso de suelo Limache
Arquitecto cambio de uso de suelo Limache
 
Cereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. CerealesCereales tecnología de los alimentos. Cereales
Cereales tecnología de los alimentos. Cereales
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 

DEV 02-04 Inteligencia artificial.pdf

  • 2. ● La Inteligencia Artificial (IA) en juegos no es un concepto académico sino un conjunto de soluciones a problemas muy concretos ● Queremos enriquecer los juegos con: Inteligencia artificial 2 Motivación Toma de decisiones ACCIONES (como movimiento, interacción, navegación por el entorno…) Análisis del entorno Percepción de cada agente
  • 3. ● Para lo que, en Unreal Engine, existen diversos sistemas que ayudan a realizar cada una de estas tareas Inteligencia artificial 3 Motivación
  • 4. ● Percepción ● Movimiento y navegación ● Árboles de comportamiento ○ Ejemplo ● Sistema de consulta al entorno ● Herramientas de depuración Inteligencia artificial 4 Puntos clave
  • 5. ● Los agentes pueden tener sentidos y percibir daño, ruido, presencia de alguien (por vista, tacto…), anticiparse al movimiento de otro… ○ Antiguamente se usaba una solución sencilla pero poco eficiente llamada Pawn Sensing Inteligencia artificial 5 Percepción https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ AIPerception/index.html
  • 6. ● Añade lo siguiente al controlador del NPC ○ El componente AIPerception, los sentidos que necesites en SensesConfig y eventos del tipo de OnPerceptionUpdate ● Todos los actores “percibibles” se deben autoregistrar en el sentido correspondiente, usando RegisterPerceptionStimuliSource Inteligencia artificial 6 Percepción
  • 7. ● Tener mallas de navegación en los niveles y agentes capaces de navegarlas es esencial ○ Parte de la inteligencia está en el mundo, y parte en la navegación por ruta óptima del propio agente Inteligencia artificial 7 Navegación
  • 8. ● El espacio potencialmente navegable se cubrirá con un NavMeshBoundsVolume ○ Pulsando P vemos la malla de navegación autogenerada en base al suelo y los obstáculos ○ ¡Los controladores de IA ya saben navegar aquí! ● Colocando actores NavLinkProxy es posible saltar o dejarse caer de un punto a otro ● El componente Nav Modifier puede cambiar el coste u otras propiedades de una zona ○ Lo normal es que las IAs busquen caminos mínimos en términos de coste Inteligencia artificial 8 Navegación
  • 9. ● Para decidir, el paradigma por defecto que ofrece Unreal son los árboles de comportamiento (para razonar) junto a las pizarras (para compartir conocimiento) Inteligencia artificial 9 Árboles de comportamiento
  • 10. ● Jerarquizan tareas, con este aspecto: Inteligencia artificial 10 Árboles de comportamiento BEHAVIOR TREES
  • 11. ● Son árboles dirigidos ○ Tienen un nodo raíz, nodos de control de flujo y nodos de ejecución (las tareas) * Que pueden estar en ejecución o terminar con éxito o con fracaso ● Dos nodos principales de control de flujo: ○ Nodo Selector (?), tiene éxito si uno de sus hijos tiene éxito, probando de izquierda a derecha ○ Nodo Secuencia (→) , tiene éxito si todos sus hijos tienen éxito, de izquierda a derecha Inteligencia artificial 11 Árboles de comportamiento
  • 12. Inteligencia artificial 12 Árboles de comportamiento La pizarra tiene registros clave-valor que se usarán en el BT (son las variables locales) Nodos de secuencia o selección, alternan el orden de ejecución
  • 14. Inteligencia artificial 14 Árboles de comportamiento Finalmente se crea un AIController y se lanza el BT https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ BehaviorTrees/BehaviorTreesOverview/index.html Las tareas se programan en respuesta a eventos del BT y pueden usar de todo
  • 15. ● ¿Cuál es la diferencia entre un nodo selector y un nodo secuencia? A. El primero es una “Y” lógica y el segundo una “O” B. El primero evalúa a derechas y el segundo al revés C. El primero es nodo de flujo y el segundo ejecución D. El primero es una “O” lógica y el segundo una “Y” Inteligencia artificial 15 Participación
  • 16. ● Existen otras formas de decidir: ○ Máquinas de estado ○ Teoría de la decisión/utilidad ○ Sistemas de reglas ○ Planificación automática ○ … ● Implementarlas es difícil y se suele recurrir a herramientas de terceros Inteligencia artificial 16 Otros paradigmas
  • 17. ● Se basa en dar objetivos a los personajes, que construirán sus propios planes según las acciones que pueden realizar ○ ¡Os animo a probarla… y a valorarla! Inteligencia artificial 17 Ejemplo: GOAP NPC
  • 18. ● El sistema EQS (Environment Query System) es la interfaz con el mundo y sirve no sólo para percibir sino para probar condiciones “tácticas” sobre el entorno ○ ¿Quien domina el campo de batalla? ○ ¿Dónde hay una buena cobertura para mi? ○ ... Inteligencia artificial 18 Sistema de consulta al entorno https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ EQS/EQSQuickStart/index.html
  • 19. ● Si usamos BTs o percepción, se activan con apóstrofe (‘/?)... y luego control numérico ○ ¡Son extremadamente útiles para depurar! Inteligencia artificial 19 Herramientas de depuración https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ AIDebugging/index.html
  • 20. ● Las mallas de navegación son la infraestructura básica para añadir la IA ● Los árboles de comportamiento sirven concretar la toma de decisiones ● La interfaz con el mundo se llama “sistema de consulta al entorno” (EQS) en Unreal ● La percepción son los sentidos subjetivos que activas en cada uno de los agentes ● Las herramientas de depuración de todos estos sistemas están integradas Inteligencia artificial 20 Resumen
  • 21. Federico Peinado (2019-2021) www.federicopeinado.es Críticas, dudas, sugerencias... * Licencia sólo aplicable al texto original de estas diapositivas