Исчисление времени и событий

Ситуационное исчисление вполне себя оправдывает, если существует единственный агент, выполняющий мгновенные, дискретные действия, а если действия имеют продолжительность и могут накладываться друг на друга, то ситуационное исчисление становится довольно громоздким. Поэтому мы будем рассматривать данные темы с помощью альтернативной формальной системы, известной под названием исчисление событий (event calculus), которая основана на точках во времени, а не на ситуациях. (Термины "событие" и "действие" могут использоваться как взаимозаменяемые. Неформально выражаясь, "событие" обозначает более широкий класс действий, включая те, в которых нет явного агента. С описанием такого класса проще справиться с помощью исчисления событий, а не ситуационного исчисления.)
В исчислении событий флюентные высказывания становятся истинными или ложными в определенных точках во времени, а не в ситуациях, притом что само исчисление предназначено для того, чтобы с его помощью можно было формировать рассуждения, касающиеся интервалов времени. В аксиоме исчисления событий указано, что флюентное высказывание является истинным в какой-то момент времени, если действие, описываемое этим высказыванием, было инициировано некоторым событием в некоторый момент времени в прошлом и еще не закончено под влиянием какого-либо промежуточного события. Отношения Initiates и Terminates играют примерно такую же роль, как и отношение Result в ситуационном исчислении; отношение Initiates(е, f, t) означает, что возникновение события е во время t вызвало то, что флюентное высказывание f стало истинным, а отношение Terminates(w, f, t) означает, что высказывание f перестало быть истинным. Мы будем использовать предикат Happens(е, t) для обозначения того, что событие е произошло во время t, и предикат Clipped(f, t,t2) для обозначения того, что высказывание f перестало быть истинным под влиянием некоторого события, происшедшего в какое-то время между t и t2. Формально эта аксиома записывается следующим образом:
Аксиома исчисления событий:
Т(?, t2) <=$ 3e,t Happens(e, t) A Initiates{e, f, t) A (t < t2)
л -iClippedi?, t, t2) Clipped(f, t, t2) <=$ 3e, ti Happens(e, ti) л Terminates (e, f, ti)
л (t < ti) л (ti < t2)
Это позволяет нам получить такие же функциональные возможности, как и с использованием ситуационного исчисления, в сочетании с возможностями формировать утверждения о точках и интервалах времени, что позволяет, например, сформулировать высказывание Happens(TurnOff (LightSwitch , 1:00), чтобы сообщить о выключении света точно,в 1:00.
Было разработано много дополнений к исчислению событий, чтобы можно было решать задачи с опосредованными событиями; событиями, имеющими продолжительность; событиями, происходящими одновременно; непрерывно изменяющимися событиями; недетерминированными результатами; причинно-следственными ограничениями и другими осложнениями. Мы вернемся к рассмотрению этих тем в следующем подразделе. Следует откровенно сказать, что в данный момент для большинства таких задач еще отсутствуют полностью удовлетворительные решения, но на пути к достижению этих решений не обнаружено каких-либо непреодолимых препятствий.







Материалы

Яндекс.Метрика