Язык действий
В информатике — язык действий это язык для определения систем перехода состояний и обычно используется для создания формальных моделей воздействия действий на мир. [1] Языки действий обычно используются в областях искусственного интеллекта и робототехники , где они описывают, как действия влияют на состояния систем с течением времени, и могут использоваться для автоматического планирования .
Языки действий делятся на два класса: языки описания действий и языки запросов действий. Примеры первого включают STRIPS , PDDL Педно , язык A (обобщение STRIPS; пропозициональная часть ADL ), язык B (расширение A, добавляющее косвенные эффекты , различающие статические и динамические законы) и язык C (который добавляет косвенные эффекты). также и не предполагает, что каждый бегло говорящий автоматически является «инерционным»). Существуют также языки запросов действий P, Q и R. Существует несколько различных алгоритмов преобразования языков действий, в частности языка действий C, для ответа на заданные программы . [2] [3] Поскольку современные решатели набора ответов используют логические алгоритмы SAT для очень быстрого определения выполнимости , это означает, что языки действий также могут пользоваться прогрессом, достигнутым в области логических решений SAT.
Формальное определение [ править ]
Все языки действий дополняют определение системы перехода состояний набором F флюентов S , набором V значений, которые флюенты могут принимать, и функцией, отображающей × F в V , где S — набор состояний системы перехода состояний. .
См. также [ править ]
Ссылки [ править ]
- ^ Майкл Гельфонд , Владимир Лифшиц (1998) « Языки действия », Электронные статьи Linköping в области компьютерных и информационных наук , том 3 , номер 16 .
- ^ Владимир Лифшиц и Хадсон Тернер, (1998) « Представление переходных систем с помощью логических программ ».
- ^ Гебсер, Мартин; Большой, Торстен; Шауб, Торстен (2010), Coala: компилятор из языков действий в ASP , CiteSeerX 10.1.1.185.4622