Программные продукты и системы /Software & Systems
№ 3 (111), 2015
УДК: 004.832.3 Дата подачи статьи: 13.05.15
DOI: 10.15827/0236-235X.111.042-048
АКТИВНАЯ ЛОГИКА И ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ: ОБЪЕДИНЕНИЕ ДВУХ КОНЦЕПЦИЙ
(Работа выполнена при финансовой поддержке РФФИ, проекты №№ 15-07-02320, 14-07-00913, 13-07-00396)
И.Б. Фоминых, д.т.н., профессор, [email protected] (Национальный исследовательский университет «Московский энергетический институт», ул. Красноказарменная, 14, г. Москва, 111250, Е-250, Россия);
М.М. Виньков, к.т.н., доцент, [email protected] (Московский государственный технический университет им. Н.Э. Баумана, ул. 2-я Бауманская, 5, г. Москва, 105005, Россия);
А.К. Пожидаев, аспирант, [email protected] (Национальный исследовательский университет «Московский энергетический институт», ул. Красноказарменная, 14, г. Москва, 111250, Е-250, Россия)
В статье рассмотрено объединение концепций активной логики и логического программирование. Активная логика объединяет в себе несколько формализмов так называемых рассуждений во времени, которые рассматриваются не как статичная последовательность утверждений, а как протекающий во времени процесс. Принципы, заложенные в таких логических системах, актуальны при решении сложных задач управления в режиме жесткого реального времени. Для этих задач характерно наличие ситуаций, когда превышение допустимого времени реакции на происходящие во внешней среде события чревато катастрофическими последствиями, а не плавным ухудшением качества функционирования.
В основе концепции логического программирования лежит определение семантики немонотонных формализмов в терминах множеств литер, а не более сложных структур в стиле Крипке, как это имеет место в других немонотонных системах. Данное обстоятельство благотворно сказывается на вычислительной сложности логических программ. В результате объединения принципов, лежащих в основе указанных концепций, получен немонотонный формализм, отвечающий концепции активной логики и, как представляется, более простой в реализации, а также имеющий лучшие характеристики вычислительной сложности по сравнению с другими системами активной логики, существующими в настоящее время. Для предложенного формализма описана процедурная и аргументационная семантика, в которой в отличие от других систем аргументации взаимоотношения между аргументами развиваются во времени.
Ключевые слова: жесткое реальное время, немонотонный вывод, аргументационная семантика, активная логика, процедурная семантика.
Дедуктивные способности реальных людей (необязательно агентов) могут быть самыми разными, от вполне совершенных до весьма посредственных. Но вне зависимости от этих способностей люди не являются логически всеведущими. Одна из достаточных причин очевидна: для осознания следствий из известных фактов человеку необходимы ментальные усилия, приложение которых приводит к расходу имеющихся ресурсов и прежде всего располагаемого времени. Если этих ресурсов не хватит, человек не сможет (не успеет к определенному сроку) должным образом осознать некоторые, быть может, важные для него факты, хотя они и составляют часть его имплицитных знаний. Этого не случилось бы, если бы человек действительно был логически всеведущим. Эти же соображения остаются в силе и для искусственных рациональных агентов [1], о моделировании ментальных свойств которых идет речь.
Как правило, в существующих эпистемических логиках (модальных, динамических эпистимиче-ских и др.) состояние знаний агента рассматривается как неизменное, пребывающее в статике. При этом, если знания замкнуты относительно всех логических законов (аксиом и правил вывода) дан-
ной логики, то, за исключением тривиальных случаев, мы имели бы дело или с логически всеведущим агентом, или с агентом, чьи дедуктивные способности искусственно ослаблены. Видимо, ключевым моментом здесь является статичность знаний, о которых способен рассуждать агент. Эта статичность не позволяет установить связь между знаниями агента и располагаемым ресурсом времени. Чтобы выйти за эти рамки, необходимо расширить дедуктивные возможности агента таким образом, чтобы он был способен рассуждать не только о состоянии знаний (своем и других агентов), но и о том, как это состояние изменяется во времени в результате рассуждений. Обобщая, можно сказать, что рациональный и реалистичный агент должен обладать способностью к метарассуждению определенного рода. Далее будет рассмотрена логическая система, дающая агентам такую способность.
Как правило, эпистемические логики дают возможность рассуждать о процессе рассуждения агента в целом после его фактического осуществления. Представленная в данной статье логическая система позволяет наблюдать за процессом рассуждения агента во время его осуществления. Сохраняя возможность рассуждать об агентах, как
42
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
бы «глядя на них со стороны» (как это имеет место, например, в случае динамической эпистеми-ческой логики), данная система позволяет самому агенту соотносить процесс своего рассуждения с событиями, происходящими во внешней среде в результате деятельности этого агента или помимо нее. Последнее свойство получило название «темпоральная чувствительность» [2].
Общая концепция активной логики изложена в работе [2] . Как модель дедукции, активная логика характеризуется языком, множеством дедуктивных правил, а также множеством «наблюдений». Если предположить, что агент рассуждает, находясь в статической среде, множество наблюдений может рассматриваться как часть исходной базы знаний дедуктивной системы, то есть как множество утверждений, поддерживающих дедуктивный процесс, в результате которого порождаются новые знания. Однако использование функции наблюдения позволяет моделировать динамическую среду, информация о которой поступает к агенту по мере происходящих в этой среде изменений.
Рассуждение во времени характеризуется выполнением циклов дедукции, называемых шагами [3]. Так как в основе активной логики лежит дискретная модель времени, эти шаги играют роль временного эталона - время измеряется в шагах. Знания агента ассоциируются с индексом шага, на котором они были впервые получены. Принципиальное отличие активной логики от других темпоральных эпистемических логик в том, что темпоральные аргументы введены в язык собственных теорий агентов. Таким образом, временной параметр связывается не только с каждым утверждением (формулой), которое эксплицитно знает агент, но и с дедуктивными правилами вывода. То, что узнал агент на шаге t (t-знания), используется для вывода новых знаний на шаге (t + 1). Согласно [4, 5], дедуктивные правила вывода в активной логике имеют следующий вид: t: ф, ш
-----------конъюнкция,
t +1: флш
t: ф лш
--------отсоединение,
t +1: ф
t: ф
--------наследование,
t +1: ф
t: ф, ф^ш ,
——--------— modus ponens.
t +1: ш
Наблюдения могут осуществляться на любом шаге дедуктивного процесса. Результатом наблюдения является формула, выражающая некоторое утверждение и ассоциированная с соответствующим шагом. Для иллюстрации осуществляемого по шагам процесса рассуждений предположим, что агент изначально знает (на шаге t), что ф^ш и Ф^Х и на шаге (t + 1) он наблюдает ф. В приве-
денных далее формулах показано, какие новые знания появляются на каждом шаге при использовании агентом дедуктивных правил наследования и modus ponens:
t : ... ф ^ ш , ш ^ Х -
t + 1 : ... ф ... t + 2 : ... ш ••• t + 3 : ... х •••
Формально активная логика определяется следующим образом. Пусть L - стандартный язык первого порядка; W с L - множество формул; N -множество натуральных чисел.
Тогда формально могут быть определены функция наблюдения, история и функция вывода (см. [6]).
Определение 1. Функция наблюдения есть отображение OBS: N ^P(W ), где P(W ) - множество всех подмножеств W и для любого teN OBS(t) есть конечное множество.
Определение 2. История есть конечный кортеж, компонентами которого являются пары подмножеств множества W. H- есть множество историй.
Определение 3. Функция вывода есть отображение INF: (W), где для любого heH
INF(h) есть конечное множество.
Содержательно история - это хронологическая последовательность пар множеств выведенных теорем/наблюдений агента, циклически порождавшихся (по шагам рассуждений) вплоть до некоторого момента времени. Функция вывода расширяет историю, являющуюся ее аргументом, реализуя новый шаг рассуждения и порождая множество новых теорем, выведенных агентом к следующему моменту времени. Формализация этих соображений в терминах активной логики SLn выглядит следующим образом [5].
Определение 4. Шаговая теория для языка L есть тройка <L, OBS, INF>, где L есть язык первого порядка; OBS - функция наблюдения; INF -функция вывода. Будем использовать нотацию SLn(OBS, INF) для обозначения такой теории (L имплицируется определениями OBS и INF).
Определение 5. Пусть trm0 - пустое множество. Для всех i > 0 множеством теорем i-го шага trmi (i-теорем) назовем INF (<<trm0, OBS(0)>, <trmb OBS(1)>, ..., <trmi_1, OBS(i-1)>>. Мы пишем SLn
(OBS, INF) h i9, имея в виду, что ф является i-теоремой теории (OBS, INF).
Определение 6. Для данной шаговой теории (OBS, INF) соответствующей метатеорией (обозначаемой как SLn(OBS, INF)) является теория первого порядка, включающая числа, имена формул из SLn(OBS, INF), двухместный предикатный
символ K, такая, что SLn(OBS, INF) h K (i, ф), если и только если (OBS, INF) ь,- ф.
43
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
Сегодня известно множество различных темпоральных логик, назначение которых, как принято считать, состоит в формализации рассуждений о времени (reasoning about time). Но сам процесс рассуждения при этом происходит вне времени: мир как бы замирает, пока система «думает».
В некоторых случаях такая идеализация не всегда приемлема, особенно это касается интеллектуальных систем «жесткого» реального времени. Для этих систем характерно наличие ситуаций, когда превышение времени реакции на происходящие во внешней среде события чревато катастрофическими последствиями, а не плавным ухудшением качества функционирования, как это имеет место для задач (систем) «мягкого» реального времени. Для систем этого типа важно уметь соотносить по времени шаги проводимых рассуждений с событиями, происходящими во внешней среде. Рассуждения такого типа получили название рассуждений во времени (reasoning in time). С их посредством решаются задачи, предельный срок выполнения которых выражен в абсолютных временных единицах.
Для решения данных задач необходимым условием является темпоральная чувствительность проводимых рассуждений. Далее будет рассмотрена система активной логики, формализующая рассуждения такого рода. Для этой системы определена процедурная семантика и представлены аргументационная семантика и фундированная семантика расширенных логических программ. Модели метарассуждений во времени, проводимых при решении задач второго и третьего типов, более естественно представляются, соответственно, в формализме аргументационной системы в [7] и в системе с фундированной семантикой в [5].
Процедурная семантика активной логики
Процесс рассуждений в данной системе активной (шаговой) логики может быть представлен как последовательность шагов (далее - шагов вывода), на каждом из которых формируется так называемое множество мнений (belief set), представляющее собой множество формул на языке, близком к языку логики первого порядка, и представленное эксплицитно [7]. Каждому шагу вывода соответствует номер, который трактуется как момент времени на линейных дискретных часах. Этот номер вводится при помощи специального литерала, имеющего вид now(i), где i - номер шага вывода. На этот номер могут делаться ссылки в формулах, что позволяет соотносить во времени шаги вывода с другими событиями, происходящими в системе и вокруг нее. Это свойство активной логики и получило название темпоральной чувствительности. В любой известной версии активной логики шаг вывода представляет собой применение всех вы-
полнимых на данный момент правил вывода (это полностью определяется текущим множеством мнений). Состав и структура правил вывода отличаются в различных версиях активной логики, но немонотонный характер проводимых рассуждений всегда определяется использованием двух принципов: обнаружение и исправление противоречий и негативная интроспекция. Первый принцип состоит в выявлении и по возможности устранении в текущем множестве мнений прямых противоречий, то есть литералов, образующих контрарную пару (в дальнейшем для любого литерала, например q, будем обозначать его дополнение до контрарной пары как -q).
Второй принцип состоит в использовании проблемно-зависимых правдоподобных правил вывода, позволяющих делать заключения на основе утверждений, интерпретируемых как «на момент выполнения данного шага вывода неизвестно, что Ф» (где ф - некоторая формула, обычно литерал).
Примером реализации указанных принципов может служить система, представленная ниже. В ней при обнаружении прямых противоречий между литералами q и -q эти литералы, а также все формулы, выведенные «при участии» этих литералов, помечаются как «утратившие веру». В дальнейшем доверие к некоторым из утративших его формул может быть восстановлено, если для этого появятся основания.
База знаний (БЗ) системы состоит из двух частей. Одна часть (строгая) является множеством поименованных формул логики первого порядка. Эта часть БЗ представляет строгие, надежные знания. Новые строгие знания могут получаться в результате применения к формулам из этой части БЗ правила резолюции. Вторая часть БЗ (правдоподобная) состоит из поименованных правил вида N : ф ^ q, где N - имя; ф - конъюнкция литералов; q - литерал. Правила этого вида выражают означенный выше принцип негативной интроспекции. Для разрешения прямых противоречий на множестве правдоподобных правил может быть задано отношение предпочтения >.
Систему активной логики образуют шаговые теории, представляющие собой множества правил с заданным на них бинарным отношением предпочтения. Множества правил разбиты на два подмножества - строгих и правдоподобных правил. Первые представляют надежные знания и могут рассматриваться как монотонная часть шаговой теории. Строгие правила - это формулы вида
N : aj л a2 ...Aam ^ b, (1)
где a1, ..., am - пропозициональные литералы или литералы языка логики первого порядка вида now(j), где j - натуральное число; b - пропозициональный литерал; N - строка символов, обозначающая имя. Правдоподобные правила имеют вид
N : a1 л a2 ...Nam ^ b. (2)
44
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
Правила этого вида выражают описанный выше принцип негативной интроспекции в следующей интерпретации: если выполняется формула ajAa2A.. ,лат и на данном шаге вывода неизвестно, выполняется ли формула (которая является литералом) -Ъ, допустимо предположить, что выполняется формула b. В дальнейшем для простоты антецеденты строгих и правдоподобных правил будем рассматривать как множества литералов. Если это множество пусто, то такие правила будем рассматривать как эквивалентные правилам с такими же консеквентами, но в антецедентах которых имеется единственный литерал now(0). Таким образом, данная система может рассматриваться как вариант активной логики, полностью основанный на правилах и отвечающий основной концепции логического программирования (моделями формул являются множества литералов).
Шаговой теорией называют пару T = (R, >), где R - конечное множество строгих правил вида (1) и правдоподобных правил вида (2); > -ациклическое отношение предпочтения, заданное на множестве R. При этом полагается, что все строгие правила имеют один и тот же приоритет, превосходящий приоритет любого правдоподобного правила. Для любой шаговой теории T=(R, >) будем обозначать R[q] и Rs[q], соответственно, множество всех правил и множество всех строгих правил, консеквентом которых является q. Множество литералов, образующих антецедент правила r, обозначается A(r). Пусть LT - множество помеченных литералов следующих трех типов: str q, pla q, dis q, где q - пропозициональный литерал, такое, что str q, pla q, dis q e LT тогда и только тогда, когда q является консеквентом каких-либо правил из множества R. Эти типы интерпретируются, соответственно, как «литерал, выводимый строго (strict)», «литерал, выводимый правдоподобно (plausible)», «литерал, к которому утрачено доверие (distrusted)». Множеством мнений шаговой теории T = (R, >) называется множество вида {now(i)}]uLT', где i - натуральное число или 0, LT'cLT. Рассмотрим оператор &T, преобразующий множества мнений во множества мнений таким образом, что, если B - множество мнений, такое, что now(i)eB, то now(i+\) e &t(B) и существуют достаточные условия принадлежности помеченных литералов str q, pla q, dis q множеству мнений &t(B), а именно:
pla q: Если pla qeQT(B), то (str q<£B и str -q<£B и 3 reR[q] V aeA(r): (pla aeB или str aeB или a=now(j) и (i-1)>j)) и (неверно, что pla -qeB) или (неверно, что 3 seR[-q] V aeA(s):
(pla aeB или str aeB или a=now(j) и (i-1)>j) и неверно, что r>s))
dis q: Если dis qeQT(B), то str q<£B и (pla qeB или dis qeB и неверно, что 3 reR[q] V aeA(r):
(pla aeB или str aeB или a=now(j) и (i-1)>j)) и ((pla -qgB или dis -q<£H) или (3 seR[-q] V aeA(s): (pla aeB или str aeB или a=now(j) и (i-1)>j) и неверно, что r>s))
str q: Если str qeQT(B), то str qeB или 3 reRs[q] V aeA(r): str aeB или a=now(j) и (i-1)>j.
Пусть В - множество мнений теории T, такое, что литерал now(i)eB. Выводом (доказательством) в теории T называют конечную последовательность В множеств мнений. При этом B(i) обозначает i-й элемент в выводе, B(0)={now(0)}, для любого i B(i+1)=QT(B(i)). Последним элементом вывода является множество мнений, обозначаемое Bfin (финальное). Шагом вывода шаговой теории T=(R, >) называют всякую пару вида (B(i), B(i+1)), при этом номером шага вывода называют число, равное (i+1). Следствием (i-следствием) шаговой теории T называют литерал, помеченный как str, или pla, принадлежащий множеству мнений Bfin (B(i)). При этом, если литерал помечен как str, он является строгим следствием (строгим i-следствием) теории T, иначе - правдоподобным следствием (правдоподобным i-следствием).
Шаговые теории T и T' называют эквивалентными тогда и только тогда, когда всякое строгое или правдоподобное следствие теории T является, соответственно, строгим или правдоподобным следствием теории T ' . Приведенный ниже пример иллюстрирует «темпоральную чувствительность» данного варианта активной логики.
Пример 1. Пусть множество R1 шаговой теории T1 = (R1, >) состоит из следующих элементов:
N1: ^ p N2: p ^ q N3: q ^ r
N4: now (2) ^ — задача_решена
N5: — задача_решена ^ — задача_решена
N6: r ^ задача_решена
Допустим, что N5>N6, N6 > N4. Доказательство для данной теории:
B(0)={now(0),}, B(1)={now(1), str p}, B(2)={now(2), strp,pla q,},
B(3)={now(3), str p, pla q, pla — задача_решена, pla r},
B(4)={now(4), str p, pla q, pla — задача_решена, pla r, pla задача_решена},
B(5)=Bfn={now(5), str p, pla q, pla — задача_ре-шена, pla r, dis задача_решена}.
Содержательно этот пример можно интерпретировать так: задача не была решена, так как решение найдено слишком поздно. Если бы литерал r был выведен раньше, чем на шаге 3, задача была бы решена. Представленная выше модель метарассуждений подходит для задач, предельный срок решения которых выражен в абсолютных временных единицах.
45
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
Модель метарассуждений во времени,
отвечающая аргументационной семантике
Теория аргументации [8] оказалась весьма плодотворной при представлении немонотонных рассуждений [9]. Установлено, что некоторые хорошо известные немонотонные формализмы соответствуют различным частным случаям аргументационной структуры. В терминах теории аргументации для них удалось получить весьма элегантные определения отношения логического следования. В статье рассматривается подход к построению аргументационной семантики для шаговых теорий, отвечающих концепции активной логики [5]. Логические системы, отвечающие данной концепции (например [10]), одной из которых является система шаговых теорий, предназначены для формализации рассуждений во времени (reasoning situated in time), относящихся к классу (мета) рассуждений рационального агента, временной ресурс которого ограничен и который способен это осознать. Далее на примере системы шаговых теорий показано, как теория аргументации может быть использована для построения семантики немонотонных формализмов, отвечающих общим принципам активной логики.
Аргументационные системы обычно в качестве базовых элементов имеют некоторый логический язык и определения аргумента, конфликта между аргументами и статуса аргументов [11]. Последние три элемента часто используются для определения отношения логического следования. Ниже представлена аргументационная система, состоящая из указанных элементов, построенных с учетом специфики шаговых теорий активной логики.
Определение 7. Пусть T=(R, >) - некоторая шаговая теория. Аргументом для T назовем всякий литерал (логики первого порядка) n вида now(i), где i>0, для которого существует правило reR, такое, что neA(r), или последовательность правил Arg=[r1, ..., rn], где rb ..., rneR, такую, что для любого 1>i>n, если peA(ri), где p - пропозициональный литерал, найдется такое j<i, что rjeR[p].
Для данной шаговой теории T=(R, >) множество всех ее аргументов будем обозначать ArgsT. Если аргументом является литерал логики первого порядка вида now(i), будем называть такой аргумент ограничивающим (действие других аргументов снизу по времени). Иначе аргумент называется поддерживающим. Если все правила, используемые в поддерживающем аргументе, являются строгими, такой аргумент называется строгим. Иначе поддерживающий аргумент называется правдоподобным. Заключением поддерживающего аргумента Arg=[r1, ..., rn] называется пропозициональный литерал q тогда и только тогда, когда rneR[q].
Поддерживающим подаргументом аргумента Arg=[ri, ..., rn] называется всякая подпоследова-
тельность последовательности [rb ..., rn], удовлетворяющая определению 7. Ограничивающий аргумент является подаргументом аргумента Arg= =[r\, ..., rn], если соответствующий литерал входит в антецедент какого-либо из правил r1, ., rn.
Всякий поддерживающий подаргумент аргумента Arg=[rj, ..., rn] называется его максимальным подаргументом, если литерал, являющийся заключением этого подаргумента, входит в антецедент правила rn. Ограничивающий аргумент является максимальным подаргументом аргумента Arg=[rj, ..., rn], если соответствующий литерал входит в антецедент правила rn.
Пример 1 (продолжение). Аргументами теории Tj = (Rj, >) являются Argi = [N1, N2, N3, N6], Arg2 = [N4, N5] и все их подаргументы. Аргументы Arg3 = [N1, N2, N3], Arg4 = [N4] являются максимальными (поддерживающими) подаргументами, соответственно, аргументов Arg1 и Arg2. Единственным ограничивающим аргументом теории T1 (и соответствующим подаргументом аргументов Arg2 и Arg4 ) является Arg5 = now(2).
Переходя к определению статуса аргумента и конфликта между аргументами шаговых теорий, следует учесть, что в отличие от других систем аргументации, где взаимоотношения различных аргументов изучаются «в статике», здесь необходимо рассматривать развитие этих взаимоотношений во времени, то есть по шагам вывода шаговой теории. На некотором шаге вывода конкретный аргумент может быть еще не построен, то есть не успеть войти в действие, а после введения в действие он может действовать до момента (шага вывода) выведения из действия. Последнее означает, что данный аргумент (на данном шаге) отклонен (=опровергнут) из-за последствий конфликта с другими аргументами. Таким образом, понятие «введение аргумента в действие» играет ключевую роль при определении статуса аргументов и конфликта между ними. В дальнейшем для простоты на шаг вывода с номером i будем ссылаться просто как на шаг i.
Определение 8. Введение в действие аргументов шаговых теорий осуществляется по следующим правилам.
1. Всякий ограничивающий аргумент вида now(i) вводится в действие на шаге i.
2. Если поддерживающий аргумент не имеет подаргументов, он вводится в действие на шаге 1.
3. Всякий поддерживающий аргумент вводится в действие на шаге i, если все его подаргументы введены в действие на предыдущих шагах и существует его максимальный подаргумент, введенный в действие на шаге (i-1).
После введения аргумента в действие на последующих шагах, если не оговорено иное, считается, что он имеет статус действующего.
Понятие атаки аргументами друг друга, присутствующее практически во всех аргументацион-
46
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
ных системах, в активной логике имеет свою специфику.
Определение 9. Всякие поддерживающие аргументы Arg1 и Arg2 атакуют друг друга начиная с шага i тогда и только тогда, когда пропозициональные литералы, являющиеся их заключениями, образуют контрарную пару, оба аргумента являются действующими и хотя бы один из них введен в действие на шаге i.
Пусть поддерживающие аргументы Argj и Arg2 имеют в качестве заключения литералы q и -q соответственно. Будем говорить, что Argj сильнее Arg2, если существует правило reR[q], reArgb такое, что для любого правила seR[-q], seArg2, имеет место r>s.
Определение 10. Поддерживающий аргумент Argj поражает поддерживающий аргумент Arg2 начиная с шага i тогда и только тогда, когда Argj и Arg2 атакуют друг друга начиная с шага i, и неверно, что Arg2 сильнее Argj.
Поддерживающий аргумент Argj подрезает поддерживающий аргумент Arg2 начиная с шага i тогда и только тогда, когда Argj поражает какой-либо поддерживающий подаргумент аргумента Arg2 начиная с шага i.
Определение 11. Поддерживающий аргумент опровергнут (выведен из действия) на шаге i тогда и только тогда, когда существует некоторый аргумент, который его поражает начиная с шага i, или один из его максимальных подаргументов опровергнут на шаге (i-J).
Таким образом, аргумент, пораженный на шаге i, перестает быть действующим, его «жизнь» заканчивается. Но аргумент, подрезанный на шаге i, в соответствии с концепцией активной логики еще живет некоторое время, которое требуется на «осознание» данного факта агентом, чье поведение моделируется соответствующей шаговой теорией. Заметим также, что, разумеется, «смерть» аргумента не означает «смерти» всех его подаргументов.
Пример 2. Пусть множество R2 шаговой теории T2=(R2, >) состоит из следующих элементов:
NJ: ^ p
N2: p ^ q
N3: q ^ r
N4: now(2)^ —p
N5: now(4)^q
N6: r^s
Допустим, что отношение > = 0. Аргументами теории T2 являются ArgJ = [NJ, N2, N3, N6], Arg2 = = [N4], Arg3 = [N5, N2, N3] и все их подаргументы. Аргументы Arg2 и Arg4 = [N1] атакуют и поражают друг друга на шаге 3. Аргумент ArgJ подрезан на шаге 3 и опровергнут на шаге 6. Аргумент Arg3 введен в действие на шаге 7, который является финальным.
На основании изложенного можно сделать следующие выводы. Как правило, в существую-
щих эпистемических логиках состояние знаний агента рассматривается как статическое. Эта статичность не позволяет установить связь между знаниями агента и располагаемым ресурсом времени. Чтобы выйти за эти рамки, необходимо расширить дедуктивные возможности агента таким образом, чтобы он был способен рассуждать не только о состоянии знаний, но и о том, как это состояние изменяется во времени в результате рассуждений. В статье рассмотрен один из возможных подходов - использование активной (шаговой) логики.
Представленная аргументационная семантика для шаговых теорий активной логики оригинальна. В то время как в других системах аргументации аргументы конфликтуют друг с другом одновременно все, в предложенной системе в соответствии с концепцией активной логики взаимоотношения между аргументами развиваются во времени. Это обстоятельство отразилось на определениях конфликта и статуса аргументов, которые существенно отличаются от определений указанных элементов других аргументационных систем.
Рассмотренная система шаговых теорий, как и другие существующие варианты активной логики, опирается на модель времени, в основе которой лежит понятие «внутренние часы». Смысл его в том, что мерой времени здесь является продолжительность шагов доказательства, которая может меняться в зависимости от разных условий. Представляет интерес разработка варианта активной логики, для которой мерой времени будет какой-либо внешний источник, не зависящий от «внутреннего устройства» рассуждающего агента.
Литература
J. Ho D.N., Logical omniscience vs. logical ignorance. On a dilemma of epistemic logic, Progress in Artificial Intelligence. Proc. of EPIA’95, LNAI, vol. 990, Springer Verlag, 1995, pp. 237-248.
2. Elgot-Drapkin. Step Logic: Reasoning situated in time. PhD thesis. Department of computer science, University of Maryland Publ., Colledge-Park, Maryland, 1988, p. 134.
3. Purang K., Purushothaman D., Traum D., Andersen C., Traum D., Perlis D. Practical Reasoning and Plan Executing with Active Logic. 1999. Proc. of the IJCAI'99 Workshop on Practical Reasoning and Rationality, 1999, pp. 74-91.
4. Фоминых И.Б. Об одном классе синергических интеллектуальных систем: некоторые итоги и перспективы // Информационно-измерительные и управляющие системы. 2013. № 5. С. 20-28.
5. Виньков М.М. Активная логика с точки зрения фундированной семантики логических программ с приоритетами // КИИ-2004: сб. науч. тр. IX национ. конф. с междунар. участ. М.: Физматлит, 2004. Т. 1. С. 86-94.
6. Виньков М.М., Фоминых И.Б. Рассуждения о знаниях и проблема логического всеведения. Ч. 2: Введение темпорального параметра в метаязык // Искусственный интеллект и принятие решений. 2014. N° 1. С. 3-10.
7. Виньков М.М. Аргументационная семантика для шаговых теорий активной логики // КИИ-2006: сб. науч. тр. X национ. конф. с междунар. участ. 2006. Т. J. С. 64-72.
8. Dung P.M. Negation as hypothesis: an abduction
47
Программные продукты и системы /Software & Systems
№ 3 (111), 2015
foundation for logic programming. Proc. 8th Intern. on Logic Programming. Paris, France, MIT Press, 1991, pp. 63-78.
9. Вагин В.Н., Загорянская А.А. Аргументация в правдоподобном выводе // КИИ-2000: сб. науч. тр. VII национ. конф. с междунар. участ. М.: Физматлит, 2000. Т. 1. С. 28-34.
10. Bhatia M., Chi P., Chong W., Josyula D.P., Okamoto Y.,
Perlis D., Purang K. Handling uncertainty with active logic. AAAI Fall Symposium on Uncertainty of Communication, 2001, pp. 84-107.
11. Моросин О.Л., Вагин В.Н. Программная реализация системы аргументации со степенями обоснования // Программные продукты и системы. 2015. № 1. С. 21-27.
DOI: 10.15827/0236-235X. 111.042-048 Received 13.05.15
ACTIVE LOGIC AND LOGIC PROGRAMMING: INTEGRATION OF THE CONCEPTS
(The work has been done with financial support from RFBR, projects no. 15-07-02320, 14-07-00913, 13-07-00396) Fominykh I.B., Dr.Sc. (Engineering), Professor, [email protected]
(NationalResearch University “MPEI”, Krasnokazarmennaya St. 14, Moscow, 111250, Russian Federation);
Vinkov M.M., Ph.D. (Engineering), Associate Professor, [email protected]
(Bauman Moscow State Technical University, 2nd Baumanskaya St. 5, Moscow, 105005, Russian Federation);
Pozhidaev A.K., Postgraduate Student, [email protected]
(NationalResearch University “MPEI”, Krasnokazarmennaya St. 14, Moscow, 111250, Russian Federation)
Abstract. The article discusses the integration of active logic and logic programming concepts. Active logic combines several formalisms of so-called reasoning in time, that are considered not as a static sequence of statements, but as a process taking place in time. The principles in such logical systems are relevant in solving complex management tasks in a hard real-time mode. These tasks can be characterized by existing situations when exceeding allowed response time to what is happening in the external environment event can lead to catastrophic consequences, not a performance gradual deterioration.
The concept of logic programming is to define the semantics of non-monotonic formalisms in terms of sets of liters, rather than more complex structures like Kripke as in other non-monotonic systems. This fact has a beneficial effect on the computational complexity of logic programs. As a result of combining the principles from these concepts, the authors obtained non-monotonic formalism that meets the concept of active logic. It seems simpler to implement and has the best characteristics of computational complexity comparing to other currently existing systems of active logic. The paper describes procedural and argumentation semantics for the proposed formalism. Unlike other systems of argumentation, in this semantics the relationships between the arguments are developing in time.
Keywords: hard real-time, non-monotonic output, argumentation semantics, active logic, procedural semantics.
References
1. Ho D.N. Logical omniscience vs. logical ignorance. On a dilemma of epistemic logic. Progress in Artificial Intelligence. Proc. of EPIA ’95. LNAI, vol. 990, Springer Verlag Publ., 1995, pp. 237-248.
2. Elgot-Drapkin. Step Logic: Reasoning situated in time. PhD thesis. Univ. of Maryland, Colledge-Park, Maryland, 1988, 134 p.
3. Purang K., Purushothaman D., Traum D., Andersen C., Traum D., Perlis D. Practical Reasoning and Plan Executing with Active Logic. Proc. of the UCAI'99 Workshop on Practical Reasoning and Rationality. 1999, pp. 74-91.
4. Fominykh I.B. On one class of synergic intelligent systems: some results and prospects. Informatsionno-izmeritelnye i upravlyayushchie sistemy [Information-measuring and Control Systems]. Moscow, Radiotekhnika Publ., 2013, no. 5, pp. 20-28 (in Russ.).
5. Vinkov M.M. Active logic in the context of funded semantics of logical programs with priorities. Sb. nauch. tr. IXnats. konf. s mezhdunar. uchastiem “KII-2004” [Proc. of the 9th National Conf. with Int. Participation “KII-2004”]. Moscow, Fizmatlit Publ., 2004, vol. 1, pp. 86-94 (in Russ.).
6. Vinkov M.M., Fominykh I.B. Reasonings on knowledge and the omniscience problem. A part 2: introduction temporal parameter in a meta language. Iskusstvenny intellekt i prinyatie resheny [Artificial intelligence and decisionmaking]. Moscow, URSS Publ., no. 1, 2014, pp. 3-10 (in Russ.).
7. Vinkov M.M. Argumentation semantics for active logic step theories. Sb. nauch. tr. Xnats. konf. s mezhdunar. uchastiem “KII-2006” [Proc. of the 10th National Conf. with Int. Participation “KII-2006”]. Obninsk, 2006, vol. 1, pp. 64-72 (in Russ.).
8. Dung P.M. Negation as hypothesis: an abduction foundation for logic programming. Proc. of the 8th Int. Conf. on Logic Programming. Paris, France, MIT Press, 1991, pp. 63-78.
9. Vagin V.N., Zagoryanskaya A.A. Argumentatsiya v pravdopodobnom vyvode. Sb. nauch. tr. VII nats. konf. s mezhdunar. uchastiem “KII-2000” [Proc. of the 9th National Conf. with Int. Participation “KII-2000”]. Moscow, Fizmatlit Publ., 2000, vol. 1, pp. 28-34 (in Russ.).
10. Bhatia M., Chi P., Chong W., Josyula D. P., Okamoto Y., Perlis D., Purang K. Handling uncertainty with active logic. AAAI Fall Symp. on Uncertainty of Communication. 2001, pp. 84-107.
11. Morosin O.L., Vagin V.N. Software implementation of an argumentation system with justification degrees. Programmnyeprodukty i sistemy [Software & Systems]. 2015, no. 1, pp. 21-27 (in Russ.).
48