Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диссертация.doc
Скачиваний:
20
Добавлен:
20.11.2018
Размер:
3.34 Mб
Скачать

3.8. Логические модели рефлексии агентов

Для решения проблемы моделирования рефлексивных рассуждений существует три подхода. Первый основан на принципах алгоритмической рекурсии. Агент, производя рассуждения относительно поведения другого агента, ставит себя на место этого агента и повторно запускает алгоритм рассуждения и принятия решений. Скорость вычисления и результат здесь во многом зависят от глубины рекурсии (количества вложенных рассуждений о том, как поведет себя другой агент). Такой подход применим только при наличии двух условий: во-первых, МАС должна быть однородной, т.е. состоять из агентов, одинаковых по своей природе, а во-вторых, рассуждения агента должны моделироваться функциональной алгоритмической моделью. Второй подход применим для неоднородной МАС, состоящей из неодинаковых агентов. Здесь используются знания первого агента о поведении второго, моделируемого агента. Наконец третий подход – моделирование «знаний о знаниях» другого агента. Этот подход сочетает преимущества обоих предыдущих подходов и может использоваться как в гомогенной, так и гетерогенной системе для моделирования рефлексивных рассуждений. Именно в рамках данного подхода в случае использования логических систем представления знаний возникает необходимость в логике, способной моделировать рефлексивные рассуждения о возможных действиях. Действия агента, являющегося субъектом рефлексии, или того, кто рассуждает, являются внутренними, эндогенными. Действия же агента – объекта рефлексии, или того, о ком рассуждают, являются внешними, экзогенными по отношению к субъекту рефлексии. Агента, являющегося субъектом рефлексии, будем называть эндоагентом, а агента – объекта рефлексии, – экзоагентом. Ясно, что в случае самоанализа агент одновременно является и эндо– и экзоагентом.

При моделировании рассуждений как экзоагента, так и эндоагента, чтобы иметь возможность работать с не-факторами знаний или с различными модальностями, необходимо использование многозначной логики. Для обоих агентов мы будем использовать с этой целью четырёхзначную логику Белнапа [122]; ее можно представить в виде логической решётки (рис.3.13).

T

F

A

N

f

a

n

t

(a)

(b)

Рис 3.13. Диаграммы Хассе для логик (а) – эндоагента, (b) – экзоагента.

На рис. 3.12 изображены диаграммы Хассе для логик экзо– и эндоагентов. Здесь T, F, N и A можно интерпретировать как «внутреннюю истину», «внутреннюю ложь», «внутреннюю неопределённость» и «внутреннюю противоречивость» соответственно, а t, f, n и a – как «внешнюю истину», «внешнюю ложь», «внешнюю неопределённость» и «внешнюю противоречивость». Возможны и другие интерпретации перечисленных значений, например: T, F, N, A соответствуют модальностям «уверен», «не уверен», «сомневается» и «предполагает», а t, f, n, a – как «принять», «отвергнуть», «сделать встречное предложение» и «игнорировать». Такая интерпретация может использоваться, например, в переговорах между агентами. Рассмотрим типичные примеры таких переговоров.

Пусть некоторая фирма (эндоагент) a ведет переговоры со своим партнером (экзоагентом) b, по поводу выполнения заказа (запроса) x. Иными словами, здесь берётся режим переговоров B2B (business to business). Рассмотрим стандартный ACL-протокол коммуникации request [140]. Эндоагент – инициатор переговоров. При выполнении запроса возможны следующие варианты действий со стороны b: Действия (b) = {«принять запрос и выполнить его», «принять запрос и не выполнить», «не принять запрос и не выполнить его» и «выполнить запрос, не посылая официального согласия»}. Агент a по поводу любого действия b может «предполагать», «сомневаться», «быть уверенным» или «быть уверенным, что не».

Таким образом, возможны шестнадцать (=42) ситуаций:

Мнения (а) = {

Уверен [ Действие(b) есть «принять и выполнить»(x)] ,

Уверен [ Действие(b) не есть «принять и выполнить»(x)],

Предполагает [ Действие(b) есть «принять и выполнить»(x)],

Сомневается [ Действие(b) есть «принять и выполнить»(x)],

Уверен [ Действие(b) есть «принять и не выполнить»(x)] ,

Уверен [ Действие(b) не есть «принять и не выполнить»(x)],

Предполагает [ Действие(b) есть «принять и не выполнить»(x)],

Сомневается [ Действие(b) есть «принять и не выполнить»(x)],

Уверен [ Действие(b) есть «не принять и выполнить»(x)] ,

Уверен [ Действие(b) не есть «не принять и выполнить»(x)],

Предполагает [ Действие(b) есть «не принять и выполнить»(x)],

Сомневается [ Действие(b) есть «не принять и выполнить»(x)],

Уверен [ Действие(b) есть «принять и не выполнить»(x)] ,

Уверен [ Действие(b) не есть «не принять и не выполнить»(x)],

Предполагает [ Действие(b) есть «не принять и не выполнить»(x)],

Сомневается [ Действие(b) есть «не принять и не выполнить»(x)],

}

Пусть теперь эндоагент – это торговая фирма, а экзоагент – клиент этой фирмы. Этому случаю соответствует режим коммуникации C2B (client to business). Здесь переговоры начинает клиент, причём его запросы можно классифицировать на четыре группы.

К первой группе относятся чётко направленные запросы. Назовем их «корректными». Это запросы вида Уверен(X есть «желаемое», Y есть «желаемое»), т.е. М(X ecть E), где M – степень уверенности, X – класс запрашиваемых продуктов, E – экземпляр данного класса.

Ко второй группе относятся «недоопределёные» запросы, т.е. высказывания вида Предполагаю(X есть «желаемое», Y есть «желаемое»). Здесь клиент не уверен в том, что он хочет, но знает что ему определенно что-то нужно.

В третью группу отнесём «противоречивые» запросы, т.е. высказывания вида Сомневаюсь(X есть «желаемое»,Y есть «желаемое»). От клиента поступает противоречивая информация о том, что он хочет, клиент не способен сформулировать релевантный запрос.

В четвёртой группе останутся заведомо «некорректные» запросы вида: Уверен(X не есть «желаемое», Y не есть «желаемое»). Клиент попал не по адресу или намеренно вводит фирму в заблуждение относительно своих намерений.

Ответы фирмы также можно классифицировать как «релевантные», «нерелевантные», «контрпредложения», и «отказы». Например, «Релевантные» = Уверен (X есть «то, что Вам надо», Y есть «то, что Вам надо»), «Отказ» = Уверен (X не есть «то, что Вам надо», Y не есть «то, что Вам надо»), «Контрпредложение» = Предполагаю (X есть «то, что Вам надо», Y есть «то, что Вам надо»), «Нерелевантный» = Сомневаюсь (X есть «то, что Вам надо», Y есть «то, что Вам надо»).

В приведённых терминах можно построить вопросно-ответную систему, каждый вариант диалога которой описывается парой значений. Например («корректный», «релевантный») или («корректный», «отказ») или («амбивалентный», «контрпредложение»). Очевидно, что всего возможно шестнадцать пар значений.

Для работы со знаниями в подобных случаях рефлексии построим LREF16 – шестнадцатизначную немонотонную логику на базе декартова произведения логик экзо и эндоагентов. Эта логика имеет в качестве истинностных значений пары, составленные из истинностных значений базовых логик [86]. При этом будем называть первый компонент пары значений внутренним значением, а второй компонент – внешним.

Введем следующие обозначения: эндоагент – а, экзоагент – b. Для внешнего значения X и внутреннего значения Y, соответствующих логическому значению v = <X,y> логики LREF16, которое приписано некоторой формуле Z, варианты интерпретация приведены в табл.1.

Определим на множестве значений построенной решётки логики LREF16 отношения частичного порядка. Для этого введем сначала отношения порядка на множествах Vint ={T, F, N, A} и Vext ={t , f , n , a}.

Таблица.3.17 Интерпретация истинностных значений <X,y> логики LREF16, если эндоагент есть a, а экзоагент – b

Значение

Интерпретация

<T, t>

«a уверен в том, что b уверен в Z»

<T, f>

«a уверен в том, что b уверен что не Z»

<T, n>

«a уверен в том, что b ничего не знает о Z»

<T, a>

«a уверен в том, что b считает Z противоречивым»

<F, t>

«a уверен, что неправда, что b уверен в Z»

<F, f>

«a уверен, что неправда, что b уверен что не Z»

<F, n>

«a уверен что неправда, что b ничего не знает о Z»

<F, a>

«a уверен что неправда, что b считает Z противоречивым»

<N, t>

«a ничего не знает о том, что b уверен в Z»

<N, f>

«a ничего не знает о том, что b уверен, что не Z»

<N, n>

«a ничего не знает о том, что b ничего не знает о Z»

<N, a>

«a ничего не знает о том, что b считает Z противоречивым»

<A, t>

«a считает противоречивым то, что b уверен в Z»

<A, f>

«a считает противоречивым то, что b уверен, что не Z»

<A, n>

«a считает противоречивым то, что b ничего не знает о Z»

<A, a>

«a считает противоречивым то, что b считает Z противоречивым»

Пусть intT – отношение внутренней истинности:

v1 intT v2  (v1 = v2) или (v2 = T) или (v1 = F), где v1,v2  Vint

Пусть extT – отношение внешней истинности:

v1 extT v2  (v1 = v2) или (v2 = t) или (v1 = f) , где v1,v2  Vext

Пусть extI – отношение внутренней информативности:

v1 intI v2  (v1 = v2) или (v2 = A) или (v1 = N) , где v1,v2  Vint

Пусть extI – отношение внешней информативности:

v1 extI v2  (v1 = v2) или (v2 = a) или (v1 = n) , где v1,v2  Vext

Тогда T – отношение истинности: T =  intT   extT; I – отношение информативности: I =  intI   extI; int – отношение внутреннего порядка int =  intI   extT; ext – отношение внешнего порядка ext =  intT x  extI. Здесь  – операция декартова произведения графиков отношений (если рассматривать график отношения порядка как множество пар значений, удовлетворяющих отношению). Таким образом, отношения T, I, int, ext определены уже на множестве Vint  Vext, тождественном множеству значений LREF16.

Рис. 3.14 Решётка логики LREF16 в отношении истинности (a), информативности (b), внешнего порядка (c) и внутреннего порядка (d).

На базе всех четырёх порядков можно построить операции «и» и «или» как операции взятия верхней и нижней грани [115,116,176]. Но логические операции будем строить только на базе двух последних отношений.

Множество L логических связок разделим на три подмножества: L = Lint  Lext  Lcomb, где Lint – множество внутренних (эндогенных) логических связок, Lext – множество внешних (экзогенных) логических связок, Lcomb – множество комбинированных логических связок. Комбинированные операции являются специальными операциями по изменению статуса знаний (их переводу из внешних во внутренние и наоборот). Имеем Lint = {, ‘, , } – для вывода на внутренних знаниях;

Lext = {~, “,&, | }– для вывода на внешних знаниях; Lcomb={*} – для изменения статуса знаний.

Пусть  – функция приписывания значений пропозициональным переменным. Тогда A будет означать результат приписывания значений всем пропозициональным переменным в формуле A.

Пусть |A| означает «значение формулы A при приписывании ». |A|  V. Теперь можно задать правила приписывания значений сложным формулам.

Внутреннее отрицание :

|A| = <not(X),y>  |A| = <X,y>,

not(X)=T еcли X=F, not(X)=F если X=T и not(X)=X если X{A,N}.

Внешнее отрицание ~:

| ~A| = <X,not(y)>  |A| = <X,y>,

not(y) = t еcли y=f, not(y)=f если y=t и not(y)=y если y{a,n}.

Для внутренней инверсии определенности ‘:

|‘A| = <inv(X),y>  |A| = <X,y>,

inv(X)=A еcли X=N, inv(X)=N если X=A и not(X)=X если X{T,F}.

Для внешней инверсии определённости “:

|“A| = <X,inv(y)>  |A| = <X,y>,

inv(y)=a еcли y=n, inv(y)=n если y=A и not(y)=y если y{t,f}.

Для внутреннего «и»  :

|AB| = v  |A| = va, |B| = vb и v наименьшая верхняя грань va и vb для решетки в отношении int

Для внешнего «и» &:

|A&B| = v  |A| = va, |B| = vb и v наименьшая верхняя грань va и vb для решетки в отношении ext

Для внутреннего «или» :

|AB| = v  |A| = va, |B| = vb и v наименьшая нижняя грань va и vb для решетки в отношении int

Для внешнего «или» |:

|A|B| = v  |A| = va, |B| = vb и v наименьшая верхняя грань va и vb для решетки в отношении ext

Для операции рефлексивного перехода *:

|^A| = <X,y>  |A| = <T,x>, x  X.

Здесь x  X означает, что x и X это аналогичные значения в своих проекциях, т.е. x  X  (x = t и X = T) или (x = f и X = F) или (x = a и X = A) или (x = n и X = N).

Построенное множество логических операций и их интерпретация позволяют осуществлять логический вывод на множестве истинностных значений логики LREF16 и, в конечном итоге, работать с рефлексивными знаниями на уровне исчисления рефлексивных высказываний.