Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Inteligencia artificial

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 20 Anzeige

Inteligencia artificial

Herunterladen, um offline zu lesen

Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.

Curso teórico-práctico sobre Desarrollo de Videojuegos (DEV) orientado hacia la creación de contenido y desarrollo de jugabilidad mediante un lenguaje de programación visual como Blueprints en Unreal Engine. Impartido en el Máster en Ingeniería Informática de la Universidad Complutense de Madrid.

Anzeige
Anzeige

Weitere Verwandte Inhalte

Ähnlich wie Inteligencia artificial (20)

Weitere von Federico Peinado (20)

Anzeige

Aktuellste (20)

Inteligencia artificial

  1. 1. Desarrollo de Videojuegos Jugabilidad Inteligencia artificial
  2. 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. 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. 4. ● Recuerda que tus NPCs necesitarán un peón y un controlador de IA que lo “posea” ● Ambos actores deben existir en el mundo, así que o usamos Spawn Actor (o el específico Spawn AI from Class) o permitimos que el peón cree y sea poseído por un controlador de manera automática ○ Si generamos enemigos en tiempo real, Placed in World or Spawned Inteligencia artificial 4 Requisitos
  5. 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. 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. 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. 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. 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. 10. ● Jerarquizan tareas, con este aspecto: Inteligencia artificial 10 Árboles de comportamiento BEHAVIOR TREES
  11. 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. 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
  13. 13. Inteligencia artificial 13 Ejemplo
  14. 14. Inteligencia artificial 14 Árboles de comportamiento Como dijimos, tendremos un AIController y este 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. 15. ● 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 15 Otros paradigmas
  16. 16. ● 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 16 Ejemplo: GOAP NPC
  17. 17. ● 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 17 Sistema de consulta al entorno https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ EQS/EQSQuickStart/index.html
  18. 18. ● Si usamos BTs o percepción, se activan con apóstrofe (‘/?)... y luego control numérico ○ ¡Son extremadamente útiles para depurar! Inteligencia artificial 18 Herramientas de depuración https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/ AIDebugging/index.html
  19. 19. ● ¿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 19 Participación
  20. 20. Federico Peinado (2019-2022) www.federicopeinado.es Críticas, dudas, sugerencias... * Licencia sólo aplicable al texto original de estas diapositivas

×