En el pasado, he usado sistemas simples como máquinas de estados finitos (FSM) y FSM jerárquicos para controlar el comportamiento de la IA. Este patrón se desmorona muy rápidamente o cualquier sistema complejo.
He escuchado sobre árboles de comportamiento . Parecen el siguiente paso obvio, pero aún no he visto una implementación que funcione o realmente lo he intentado.
¿Qué otros patrones pueden hacer manejables los complejos comportamientos de IA?
architecture
ai
behavior
Tétrada
fuente
fuente
Respuestas:
Los árboles de comportamiento son una excelente forma de administrar la IA, ¡y Ai Game dev es el mejor lugar para aprender sobre ellos! Hay toneladas de implementaciones de ejemplo en lugares como Codeplex, o incluso la propia implementación de motores Sandbox de AIGD (lo que sin duda es bastante complejo y puede ser difícil de seguir).
El año pasado, en el juego de la IA, hubo mucha emoción sobre los planificadores , pero este año se había desvanecido. El mejor consejo parecía ser simplemente comenzar de manera simple. Todo el 20% del trabajo para obtener el 80% de lo que parece ser totalmente cierto en la mayoría de los casos
fuente
Una cosa que creo que es importante es separar por qué un agente quiere lograr algo de cómo lo hace. Planificadores de acción orientados a objetivos hacen bien, pero también hay otras soluciones. Esto le brinda una gran flexibilidad para construir agentes, ya que puede elegir entre un grupo de objetivos y un grupo de acciones.
Los árboles de comportamiento están diseñados para abarcar toda la solución, tanto la toma de decisiones como las acciones, y como tal puede ser difícil de mantener.
fuente
Una técnica con la que debería estar familiarizado en cualquier caso es el enfoque de la lista de acciones. En el nivel más simple, es solo una lista de objetos de acción, que cada objeto de acción tiene su método update () llamado cada cuadro. Sin embargo, puede ampliar rápidamente esto para permitir acciones de bloqueo, múltiples líneas de acciones, grupos secundarios, etc. Casi cualquier cosa que pueda construir con un FSM de alto nivel se puede implementar de una manera más modular, flexible y depurable con una acción lista usando acciones de comportamiento.
Además de ser una técnica útil para administrar todas las animaciones, la búsqueda de caminos y otras "cosas" misceláneas que pueden hacer sus personajes, hace que sea trivial implementar un sistema de toma de decisiones basado en prioridades al crear acciones de comportamiento.
Se pueden encontrar algunas notas sobre cómo usarlas en esta presentación de diapositivas: http://sonargame.com/2011/11/01/new-game-slides/
Estoy bastante seguro de que también ha habido artículos al respecto en la serie AI Programming Wisdom.
fuente