En informática , un lenguaje de acción es un lenguaje para especificar sistemas de transición de estados y se usa comúnmente para crear modelos formales de los efectos de las acciones en el mundo. [1] Los lenguajes de acción se usan comúnmente en los dominios de la inteligencia artificial y la robótica , donde describen cómo las acciones afectan los estados de los sistemas a lo largo del tiempo y pueden usarse para la planificación automatizada .
Los lenguajes de acción se dividen en dos clases: lenguajes de descripción de acciones y lenguajes de consulta de acciones. Ejemplos de los primeros incluyen STRIPS , PDDL , Lenguaje A (una generalización de STRIPS; la parte proposicional de la ADL de Pednault ), Lenguaje B (una extensión de A que agrega efectos indirectos , distinguiendo leyes estáticas y dinámicas) y Lenguaje C (que agrega efectos indirectos). también, y no asume que cada fluido es automáticamente "inercial"). También existen los lenguajes de consulta de acción P, Q y R. Existen varios algoritmos diferentes para convertir lenguajes de acción y, en particular, el lenguaje de acción C, para responder a programas establecidos . [2] [3]Dado que los solucionadores de conjuntos de respuestas modernos utilizan algoritmos SAT booleanos para determinar muy rápidamente la satisfacibilidad , esto implica que los lenguajes de acción también pueden disfrutar del progreso que se está realizando en el dominio de la resolución SAT booleana.
Definicion formal
Todos los lenguajes de acción complementan la definición de un sistema de transición de estados con un conjunto F de fluidos , un conjunto V de valores que pueden tomar los fluidos y una función que mapea S × F a V , donde S es el conjunto de estados de un sistema de transición de estados. .
Ver también
Referencias
- ^ Michael Gelfond, Vladimir Lifschitz (1998) " Lenguajes de acción ", artículos electrónicos de Linköping en informática y ciencias de la información , vol 3 , nr 16 .
- ^ Vladimir Lifschitz y Hudson Turner, (1998) " Representación de sistemas de transición mediante programas lógicos ".
- ^ Gebser, Martin; Grote, Torsten; Schaub, Torsten (2010). "Coala: un compilador de lenguajes de acción a ASP". CiteSeerX 10.1.1.185.4622 . Cite journal requiere
|journal=
( ayuda )