stringtranslate.com

Planificación reactiva

En inteligencia artificial , la planificación reactiva denota un grupo de técnicas para la selección de acciones por parte de agentes autónomos . Estas técnicas difieren de la planificación clásica en dos aspectos. En primer lugar, operan de manera oportuna y, por lo tanto, pueden hacer frente a entornos altamente dinámicos e impredecibles . En segundo lugar, calculan solo una acción siguiente en cada instante, en función del contexto actual. Los planificadores reactivos a menudo (pero no siempre) explotan los planes reactivos , que son estructuras almacenadas que describen las prioridades y el comportamiento del agente. El término planificación reactiva se remonta al menos a 1988 y es sinónimo del término más moderno planificación dinámica .

Representación del plan reactivo

Existen varias formas de representar un plan reactivo. Todas ellas requieren una unidad de representación básica y un medio para componer estas unidades en planes.

Reglas de condición-acción (producciones)

Una regla de acción condicional, o regla si-entonces, es una regla con la forma: si condición entonces acción . Estas reglas se denominan producciones . El significado de la regla es el siguiente: si la condición se cumple, se realiza la acción. La acción puede ser externa (por ejemplo, tomar algo y moverlo) o interna (por ejemplo, escribir un hecho en la memoria interna o evaluar un nuevo conjunto de reglas). Las condiciones normalmente son booleanas y la acción puede realizarse o no.

Las reglas de producción pueden organizarse en estructuras relativamente planas, pero más a menudo se organizan en una jerarquía de algún tipo. Por ejemplo, la arquitectura de subsunción consiste en capas de comportamientos interconectados , cada uno en realidad una máquina de estados finitos que actúa en respuesta a una entrada apropiada. Estas capas se organizan luego en una pila simple, con capas superiores que subsumen los objetivos de las inferiores. Otros sistemas pueden usar árboles , o pueden incluir mecanismos especiales para cambiar qué subconjunto de objetivo/regla es actualmente más importante. Las estructuras planas son relativamente fáciles de construir, pero solo permiten la descripción de un comportamiento simple, o requieren condiciones inmensamente complicadas para compensar la estructura faltante.

Una parte importante de cualquier algoritmo de selección de acciones distribuidas es un mecanismo de resolución de conflictos. Se trata de un mecanismo para resolver conflictos entre acciones propuestas cuando se cumple la condición de más de una regla en un instante determinado. El conflicto se puede resolver, por ejemplo, mediante

Los sistemas expertos a menudo utilizan otras heurísticas más simples, como la actualidad, para seleccionar reglas, pero es difícil garantizar un buen comportamiento en un sistema grande con enfoques simples.

La resolución de conflictos sólo es necesaria para las reglas que quieren tomar acciones mutuamente excluyentes (cf Blumberg 1996).

Algunas limitaciones de este tipo de planificación reactiva se pueden encontrar en Brom (2005).

Máquinas de estados finitos

La máquina de estados finitos (FSM) es un modelo de comportamiento de un sistema. Las FSM se utilizan ampliamente en informática. Modelar el comportamiento de los agentes es solo una de sus posibles aplicaciones. Una FSM típica, cuando se utiliza para describir el comportamiento de un agente, consta de un conjunto de estados y transiciones entre estos estados. Las transiciones son en realidad reglas de acción de condición. En cada instante, solo un estado de la FSM está activo y se evalúan sus transiciones. Si se toma una transición, se activa otro estado. Esto significa que, en general, las transiciones son las reglas en la siguiente forma: si condición entonces activar-nuevo-estado . Pero las transiciones también pueden conectarse al estado "propio" en algunos sistemas, para permitir la ejecución de acciones de transición sin cambiar realmente el estado.

Hay dos maneras de producir comportamiento mediante una FSM. Dependen de lo que el diseñador asocie con los estados: pueden ser "actos" o scripts. Un "acto" es una acción atómica que debe realizar el agente si su FSM es el estado dado. Esta acción se realiza en cada paso de tiempo, pero lo más frecuente es que se dé el segundo caso. Aquí, cada estado está asociado con un script, que describe una secuencia de acciones que el agente debe realizar si su FSM está en un estado dado. Si una transición activa un nuevo estado, el script anterior simplemente se interrumpe y se inicia el nuevo.

Si un script es más complicado, se puede dividir en varios scripts y se puede explotar un FSM jerárquico. En un autómata de este tipo, cada estado puede contener subestados. Solo los estados a nivel atómico están asociados con un script (que no es complicado) o una acción atómica.

En términos computacionales, las FSM jerárquicas son equivalentes a las FSM. Esto significa que cada FSM jerárquica se puede convertir en una FSM clásica. Sin embargo, los enfoques jerárquicos facilitan mejor los diseños. Consulte el artículo de Damian Isla (2005) para ver un ejemplo de ASM de robots de juegos de computadora , que utiliza FSM jerárquicas.

Enfoques difusos

Tanto las reglas if-then como las FSM se pueden combinar con lógica difusa . Las condiciones, los estados y las acciones ya no son booleanas o "sí/no" respectivamente, sino que son aproximadas y suaves. En consecuencia, el comportamiento resultante tendrá una transición más suave, especialmente en el caso de transiciones entre dos tareas. Sin embargo, la evaluación de las condiciones difusas es mucho más lenta que la evaluación de sus contrapartes precisas.

Vea la arquitectura de Alex Champandard.

Enfoques conexionistas

Los planes reactivos también pueden expresarse mediante redes conexionistas como redes neuronales artificiales o jerarquías de flujo libre. La unidad de representación básica es una unidad con varios enlaces de entrada que alimentan a la unidad con "una actividad abstracta" y enlaces de salida que propagan la actividad a las unidades siguientes. Cada unidad funciona a su vez como transductor de actividad. Normalmente, las unidades están conectadas en una estructura en capas.

Las ventajas de las redes conexionistas son, en primer lugar, que el comportamiento resultante es más fluido que el comportamiento producido por reglas de tipo "si-entonces" y FSMs nítidas; en segundo lugar, las redes suelen ser adaptativas y, en tercer lugar, se puede utilizar un mecanismo de inhibición y, por lo tanto, el comportamiento también se puede describir de forma prescriptiva (mediante reglas, uno puede describir el comportamiento solo de forma prescriptiva). Sin embargo, los métodos también tienen varios defectos. En primer lugar, para un diseñador, es mucho más complicado describir el comportamiento mediante una red en comparación con las reglas de tipo "si-entonces". En segundo lugar, solo se puede describir un comportamiento relativamente simple, especialmente si se quiere explotar la característica adaptativa.

Algoritmos de planificación reactiva

El algoritmo típico de planificación reactiva solo evalúa reglas de tipo "si-entonces" o calcula el estado de una red conexionista. Sin embargo, algunos algoritmos tienen características especiales.

Gobierno

La dirección es una técnica reactiva especial que se utiliza en la navegación de agentes. La forma más simple de dirección reactiva se emplea en los vehículos Braitenberg , que asignan las entradas de los sensores directamente a las salidas de los efectores y pueden seguir o evitar. Los sistemas más complejos se basan en una superposición de fuerzas atractivas o repulsivas que afectan al agente. Este tipo de dirección se basa en el trabajo original sobre los boids de Craig Reynolds. Mediante la dirección, se puede lograr una forma simple de:

La ventaja de la dirección es que es computacionalmente muy eficiente. En los juegos de computadora , cientos de NPC pueden ser manejados por esta técnica. Sin embargo, en casos de terrenos más complicados (por ejemplo, un edificio), la dirección debe combinarse con la búsqueda de rutas (como por ejemplo en Milani [1]), que es una forma de planificación .

Véase también

Referencias


Enlaces externos