ВЫВОД ПЛАНОВ И ОБНАРУЖЕНИЕ ПРЕПЯТСТВИИ
Прежде чем описывать процесс вывода плана, следует рассмотреть некоторые вопросы представления информации. В разделе 3.1 обсуждается представление убеждений, знаний и желаний, в разделе 3.2 рассматриваются действия и планы.
Затем дается описание процессов вывода плана, которое распадается на три части: мы рассматриваем правила вывода плана в разделе 3.3, оценочные эвристики в разделе 3.4 и управление процессом в разделе 3.5. Последний раздел посвящен тому, как обнаруживаются препятствия в выводимых планах.3.1. Убеждения, знания и желания. Адекватному описанию моделирования убеждений[137] следовало бы посвятить отдельную статью. Здесь мы можем лишь наметить несколько важных вопросов. Наш подход к убеждениям, в сущности, идентичен подходу Хинтикки (Hintikka 1963). Читатели, интересующиеся данным представлением, должны обратиться к работе Коэна (Cohen 1976).
Важнейшим свойством убеждения является отсутствие логической связи между тем, в чем, по мнению субъекта S, убежден субъект А, и тем, в чем убежден сам S. Так, S может считать, что А убежден, что земля плоская, в то время как сам S будет считать, что земля круглая.
На интуитивном уровне оператор убеждения дает нам возможность рассматривать действия и планы с точки зрения другого лица. Огрубленно это может быть представлено следующим аксиоматическим выражением (здесь «В» — от слова believe):
(АВ (P->-Q) & АВ (Р))->АВ (Q).
Так, S может вывести умозаключение о том, что А вывел некоторое суждение Q, если, по мнению S, А убежден, что для вывода Q имеется достаточно оснований. Нам также необходима аксиома, утверждающая, что конъюнкция может «проходить через» оператор убеждения. Так, если, по мнению S, А считает, что Р истинно, и А считает, что Q истинно, то верно и следующее высказывание: по мнению S, А считает, что Р и Q истинны, и наоборот. Запишем это более формально:
АВ(Р) & АВ (Q) Ч-+-АВ(P&Q).
Аналогичная аксиома для дизъюнкции недействительна.
Заметим, что для полной адекватности оператор убеждения В должен быть снабжен временным индексом, указывающим на время, в течение которого убеждение было действительно. Однако в целях простоты в данной статье мы будем игнорировать параметр времени.
Некоторые формулы, касающиеся убеждений, встречаются довольно часто и заслуживают специального упоминания. В частности, имеются три конструкта, ассоциируемых со словом know ‘знать’ и встречающихся очень часто.
Первый связан с представлением того, что, по мнению S, некоторое лицо А знает, что Р истинно. Это не только выражает тот факт, что S считает, что А убежден в Р, но и то, что S также убежден в Р, то есть:
SB(P & АВ(Р)).
Введем соответствующую сокращенную запись:
А ЗНАТЬ Р=Р & АВ(Р).
Другими словами, если SB (А ЗНАТЬ Р), то S считает, что S и А оба согласны, что Р истинно. Конечно, из этого не следует, что Р «действительно» истинно.
Следующая структура касается употреблений know в контекстах типа John knows whether Р is true ‘Джон знает, истинно ли Р'. Этот тип убеждения S должен был бы иметь, если бы S считал, что Джон в состоянии ответить на вопрос “Истинно ли Р”. Для представления данного типа убеждения используется дизъюнкция:
ЗНАТЬ-ВЕРНО-ЛИ Р=(Р & АВ(Р)) V (не-Р & АВ(не-Р)).
И наконец, еще одно употребление know демонстрируется предложением John knows where the box is ‘Джон знает, где находится коробка’. Этот случай представляется с помощью квантора, применяемого вне области действия оператора В:
А ЗНАТЬ-0 /)=(Яу) (определенный х: D(x) = у)&АВ (определенный х : D (х) = у), где определенный x:D(x)’ является любой дескрипцией. В вышеприведенном примере это будет ‘такой х, что местонахождение коробки есть у\ Более подробно об этих представлениях jknow см. работу Аллена (Allen 1979).
Цели и планы действующих лиц обозначаются с использованием оператора желания (W), то есть:
AW(P) =А имеет цель достичь Р.
При этом имеется в виду, что лицо А действительно имеет намерение достичь Р, а не просто то, что А считал бы Р желательным положением вещей. В этой работе свойства W полностью определяются посредством правил планирования и правил вывода планов.
3.2. Действия и планы. Как и операторы в STRIPS (см. F і - kes — Nilsson 1971), действия могут быть сгруппированы в семьи, представляемые посредством схем действий. Схема действия состоит из имени, набора параметров и набора формул (может быть, и пустых) следующих классов:
Предварительные условия (preconditions): условия, которые должны быть истинными перед началом выполнения действия.
Следствия (effects): условия, которые должны стать истинными после выполнения действия.
Состав (body): спецификация действия на более детальном уровне. Состав может специфицировать последовательность действий, которые следует выполнить, или может быть множеством новых целей, которые должны быть достигнуты.
Дефиниция каждого действия может также отмечать условия применимости по определенным параметрам: условия, которые должны быть истинными для того, чтобы действие было правильно дефинировано. Каждое действие имеет, по крайней мере, один параметр, а именно действующее лицо (agent), или побудитель (instigator) действия.
Отдельное действие (action instance) является предикатом, состоящим из имени схемы действия с множеством параметрических данных и с временной спецификацией. Этот предикат является истинным только в том случае, если описываемое действие есть (было или будет) исполненным в указанное время. Например:
АКТ (S) — предикат, который является истинным, только если действие АКТ с действующим лицом S было/будет выполнено во время t.
Мы будем говорить, что действие является намеренным, если всякий раз, когда действие выполнялось, деятель хотел, чтобы оно имело место в то время. Так, если АКТ — намеренное действие, А — некоторое лицо, t — некоторое время, то
АКТ (А) -► AW (АКТ (А) SBAW(Y)
означает, что если S считает, что план А содержит X, то S может сделать умозаключение о том, что план А также содержит У.
Имеющиеся правила можно подразделить на три широкие категории: те, которые касаются действий, те, которые касаются знаний, и те, которые касаются планирования, проводимого другими лицами.3. 3. 1. Правила, касающиеся действий. Эти правила возникают из модели построения планов. Всюду в данном разделе S обозначает то действующее лицо, которое выводит план другого лица А. (Символ «і» — от слова inference ‘вывод’.)
SBAW(P) =f-^SBAW(AKT), если Р есть предварительное условие действия АКТ. [Правило «предварительное условие — действие».]
То есть если А хочет достичь некоторой цели Р, то А может хотеть выполнить действие АКТ, которое Р делает возможным.
SBAW(B) =t->-SBAW(AKT), если В является частью состава действия АКТ. [Правило «состав — действие».]
То есть, если А хочет выполнить действие В, которое является частью выполнения другого действия АКТ, А может хотеть выполнить АКТ.
SBAW(AKT) =t->SBAW(£), если Е есть следствие действия АКТ. [Правило «действие — следствие».]
Правило гласит, что если А хочет выполнить некоторое действие, то А хочет иметь следствия этого действия.
SBAW(raW(AKT)) = t-»-SBAW(AKT), если п является действующим лицом намеренного действия АКТ. [Правило «желание — действие».]
Это правило основано на предварительном условии желания для намеренных действий. С интуитивной точки зрения это значит, что если А хочет, чтобы п хотел совершить некоторое действие АКТ, то А может хотеть, чтобы п совершил АКТ.
3.3.2. Правила, касающиеся знаний. Эти правила вывода указывают, как цели получения знаний соотносятся с целями и действиями, которые используют эти знания. Первые два правила отражают тот факт, что если А хочет знать, является ли суждение Р истинным, то возможно, что А хочет достичь цели, которая требует, чтобы Р было истинным (или требует, чтобы Р было ложным). Третье правило означает, что А хочет знать, истинно ли Р, чтобы идентифицировать одну из единиц в Р.
SBAW (А ЗНАТЬ-ВЕРНО-ЛИ Р) =i-»SBAW(P);
[Правило «положительного знания»]
SBAW (А ЗНАТЬ-ВЕРНО-ЛИ Р) =i-*SBAW(He-P);
[Правило «отрицательного знания»]
SBAW (А ЗНАТЬ-ВЕРНО-ЛИ Р{а)) =i-*-SBAW(A ЗНАТЬ-0 определенный х: Р (х)).
[Правило «знания значения переменной»]
Конечно, в любом плане максимум одно из этих правил может быть верным. Решение о том, какое из них верно или что ни одно из них неверно, определяется на основе эвристической оценки планов, получаемой в ходе их применения.
Последнее правило вывода, касающееся знаний, затрагивает цели, связанные с нахождением референтов дескрипций. Оно подразумевает, что такая цель означает, что А имеет другую цель, которая и связана с данным референтом.
SBAW(A ЗНАТЬ-0 определенный x:D(x)) =t-»-SBAW (Р (определенный x:D(x))). [Правило «знания единицы»], где Р(определенный x:D(x)) есть цель или действие, связанное с дескрипцией (или с ее референтом).
Из-за неясности конечной цели это правило не порождает разумных планов, если только конкретная цель или действие в виде P(D) уже не существует в имеющихся ожиданиях.
3.3.3. Правила, касающиеся планирования, проводимого другими лицами. Процесс построения плана может описываться тем же самым способом, что и процесс вывода плана, а именно как набор правил, которые описывают возможные построения, и набор эвристик для оценки получаемых планов. Правила построения плана обратны по отношению к правилам вывода плана. Некоторые примеры даны ниже. X — это имя действующего лица, строящего план. (Символ «с» — от слова construction ‘построение’.)
AW(AKT) =c-*-XW(P), если Р — предварительное условие действия АКТ. [Правило «действие — предварительное условие»] То есть, если X хочет выполнить АКТ, X должен быть уверен, что соответствующие предварительные условия истинны.
XW(AKT) =c-»-XW(B), если В является частью состава действия АКТ. [Правило «действие — состав»]
XW(£) =c->AW(AKT), если Е — следствие действия АКТ. [Правило «следствие — действие»]
XW(P)=c^>-XW(X ЗНАТЬ-ВЕРНО-ЛИ Р). [Правило о знании]
То есть, если X хочет добиться Р, но не знает, истинно ли Р, X должен выяснить, истинно ли Р.
Когда X строит некоторый план, требующий взаимодействия с другим лицом Y, X может рассчитывать на то, что У также будет строить некоторый план.
Так, X мог бы побудить У выполнить некоторое действие АКТ посредством побуждения У иметь целью достижение следствий действия АКТ. Например, предположим. что X хочет в виде сюрприза устроить празднование дня рождения своего товарища по комнате У, и для этого ему надо, чтобы У на время вышел из дома. X говорит:“Нам надо пива”, ожидая, что У примет на себя цель достать пива и затем построит план достижения данной цели. А это связано с отлучкой из дома, что и было целью X с самого начала. Таким образом, X провел рассуждения о процессе планирования У-a. Огрубленно это новое правило вывода планирования может быть описано в виде
AW(УШ(‘выйти из дома’)) = c->XW (YW (‘достать пива’)), так как
ХБ (yw (‘купить пива’)) =c-*-YW (‘выйти из дома’)). Итак, если X хочет, чтобы У хотел совершить АКТ, он может добиться этого посредством побуждения У к желанию достичь Е, где процесс планирования У будет выводить АКТ как путь достижения Е. В общем случае мы имеем набор правил построения плана
XW(FW(P)) =c-»-XW(yW(Q)), если XB(YW(Q)) =o-*yW(P)) [Правило «вставленного планирования»].
Эти правила представляют интерес в том случае, когда, по допущению, действующие лица не обманывают друг друга и оба
сознают, что слушающий осуществлял планирование намеренно. Так, король мог бы сказать слуге:
“Здесь холодно”, ожидая, что слуга построит некоторый план для того, чтобы сделать комнату теплее.
Но для того, чтобы слуга понял намерение короля в приведенном выше примере, он должен распознать тот факт, что план короля включал планирование, проводимое слугой. Мы можем охарактеризовать умозаключения, с помощью которых строятся эти новые планы, следующим образом (если мы вернемся к обозначению через S — распознающего, а через А — наблюдаемого действующего лица):
SBAW(SW(Р)) =/->SBAW(SW(Q)), если SBAB(SW(P) -^SW(Q)). [Правило «распознавания вставленного плана»].
3.4. Эвристики оценки. Кик уже упоминалось выше, процесс вывода плана осуществляется путем просмотра набора спецификаций частичных планов, которые состоят из двух частей. Одна часть создается с использованием правил вывода плана из наблюдаемого действия (и называется альтернативой), другая создается с использованием правил построения плана на основе ожидаемой цели (и называется ожиданием). (В процессе применения этой стратегии частичные планы могут содержать много ожиданий, разделяя одну общую альтернативу.)
Каждому частичному плану приписывается оценка, которая определяется с использованием эвристик, описываемых в настоящем разделе, и отражает, с какой вероятностью этот частичный план может быть частью «правильного» плана. Эти эвристики основываются исключительно на предметно-независимых отношениях между действиями, их составами, предварительными условиями и следствиями. Исходные частичные планы получают оценку 1. Эвристики выражаются здесь только в терминах увеличения и уменьшения оценок. Применяемые формулы очень просты и даны в Таблице 1 в конце данного раздела. Мы подаем информацию таким способом, чтобы подчеркнуть тот факт, что, хотя изменения оценок в указанном направлении очень важны для нашей модели, мы считаем, что в конкретных цифрах возможно некоторое варьирование.
Наконец, перед тем как приводить сами эвристики, мы должны провести разграничение между действиями, которые выполняются в данный момент, которые предполагается выполнить (ожидающие выполнения) и которые уже выполнены. В частности, наблюдаемое действие считается выполняемым в настоящий момент, и любое действие, которое содержит выполняемое действие в своем составе, также рассматривается как выполняемое в настоящий момент.
(А) Эвристики, основанные на действиях. Вообще считается,
что действующие лица строят такие планы, которые они, по их мнению, способны выполнить, и они выполняют свои планы, имея в виду достижение только таких целей, которые в настоящий момент еще не достигнуты. Это дает нам два правила:
(Н1) Уменьшить оценку частичного плана, если он содержит такое действие, предварительные условия которого не удовлетворяются в момент, когда это действие начинает выполняться.
(Н2) Уменьшить оценку частичного плана, если он содержит ожидаемое или исполняемое в настоящий момент действие, следствия которого удовлетворены в тот момент, когда действие начинается.
Эвристика (Н1) утверждает, что если данное действие выполняется в настоящий момент, то предварительные условия не должны были быть неудовлетворенными, когда это действие начиналось. С другой стороны, если действие ожидается, то его предварительные условия должны быть достигнуты в рамках данного плана или должны быть достижимы с помощью некоторого простого плана. В первом приближении мы определяем простой план как гипотетический план, состоящий из одного действия, предварительные условия которого уже удовлетворены.
(B) Эвристики, основанные на ожиданиях. Эти эвристики отдают предпочтение тем частичным планам, альтернативы которых кажутся наиболее подходящими к слиянию с соответствующим ожиданием.
(НЗ) Увеличить оценку частичного плана, если он содержит такие описания объектов и отношений в его альтернативе, которые совместимы с объектами и отношениями в его ожидании.
Термин «совместимые» (unifiable) употребляется здесь в смысле существования алгоритма объединения, применяемого в интеллектуальных системах доказательства теорем (см. Nilsson 1971). Так, если альтернатива касается описания поездов, то будут предпочитаться такие ожидания, которые касаются (совместимых с этой альтернативой) поездов. Аналогично, если некоторое ожидание касается некоторого отношения, например времени прибытия, то его альтернатива будет более предпочтительной, если она также касается отношения времени прибытия.
(C) Эвристики, основанные на поиске. Оставшиеся эвристики предусматривают оценку того, какие именно частичные планы должны предпочитаться нами далее (с точки зрения эффективности поиска). Они оценивают, насколько определенным становится данный фрагмент плана. Две эвристики относятся к событиям, которые вводят в план важные спецификации, то есть идентификацию референтов дескрипций и идентификацию речевого акта.
(Н4) Увеличить оценку частичного плана, если референт одной из его дескрипций идентифицирован с абсолютной точностью. Уменьшить оценку, если план содержит дескрипцию, которая, видимо, не имеет возможных референтов.
(Н5) Увеличить оценку частичного плана, если имеется пересечение между его альтернативой и ожиданием, то есть они содержат олно и то же действие или цель.
Последняя эвристика отдает предпочтение альтернативам, приведшим к таким умозаключениям, которые оценены достаточно высоко для того, чтобы быть примененными.
(Н6) Увеличивать оценку частичного плана каждый раз, когда применяется правило вывода.
Конкретный частичный план будет развертываться до тех пор, пока он не раздробится на такие части, которые снизят его оценку, или пока эвристики оценки не начнут пренебрегать им.
Каждый частичный план имеет вес, который используется для вычисления его оценки. Эвристика (НЗ) вводит фиксированный коэффициент 5 для каждого обнаруженного сходства. (Само по себе значение 5 не оказывает влияния на поиск, за исключением, может быть, принципов округления при вычислении оценок.) Все другие эвристики оказывают влияние на вес через посредство некоторого константного множителя.
Общий вес всех частичных планов используется в вычислении оценки каждого плана. Оценка плана Р — это просто процентное выражение его общего веса. Используемые нами значения коэффициентов приведены в Таблице 1.
Таблица 1. Коэффициенты для эвристик
Эвристика | Описание | Коэффици ент |
(Н1) | Предварительные условия не удовлетворяются | 0,5 |
(Н2) | Следствия удовлетворяются | 0,5 |
(НЗ) | Референт идентифицирован | 1,5 |
(Н4) | Референт отсутствует | 0,2 |
(Н5) | Пересечение найдено | 1,5 |
(Н6) | Правило вывода применено | 1,25 |
3.5. Управление процессом вывода плана. Как уже упоминалось ранее, частичные планы модифицируются и уточняются с помощью набора программ (задач), которые им приписываются. Когда некоторая задача вводится в список, она получает оценку, сильно зависящую от частичного плана, который она должна обрабатывать, и помещается в список по принципу приоритета, в соответствии с этой оценкой. Задача с наивысшей оценкой всегда выбирается для исполнения и убирается из списка. В этом разделе статьи описываются различные типы задач.
С точки зрения эффективности поиска важное значение имеет широкое взаимодействие между ожиданиями и альтернативами. Информация, содержащаяся в некотором ожидании, может задавать ограничения на альтернативу, которая определяет, какие возможные умозаключения могут быть сделаны из него, и наоборот. Например, если и ожидание, и альтернатива соотносятся с некоторым поездом, то поезда, по предположению, будут идентичными (если их описания не вступают в противоречие друг с другом).
Начальный набор частичных планов состоит из всех пар, содержащих (1) некоторую альтернативу, включающую только само наблюдаемое действие, и (2) одно из первоначальных ожиданий. Для того чтобы допустить возможность высказывания, которое не соответствует ожиданию, должно быть предусмотрено также построение частичного плана с нулевым ожиданием.
Существующие задачи, которые выполняют процесс вывода плана, можно подразделить на три класса: те, которые определяют (specify) структуру планов, те, которые идентифицируют объекты в планах, и те, которые управляют поиском.
(А) Задачи, связанные с определением структуры плана. Задачи, определяющие структуру плана, делают дополнения к гипотезе о плане в соответствии с рассмотренными выше правилами вывода. Альтернативы развертываются с использованием правил вывода планов, а ожидания развертываются с использованием правил планирования. Во многих случаях могут быть применимы взаимоисключающие правила, и тогда делаются копии данного частичного плана и к каждой из них применяется одно правило. При таком делении оценка данного частичного плана делится между его преемниками.
Это выполняется посредством двух задач: «Вывести» (Infer) и «Развернуть» (Expand). Задача «Вывести» исследует локальную область плана и предлагает (вызывает) возможные правила вывода, которые могут быть применены в данном случае. Задача «Развернуть» как раз и осуществляет применение этих правил для модификации данного частичного плана. Разграничение этих этапов обеспечивает возможность эксплицитного управления процессом «ветвления поиска»: когда на основе «Выведения» вызывается некоторое «Развертывание», его оценка определяется оценкой затрагиваемого им частичного плана и числом делений, которое будет сделано. Чем больше число делений, тем ниже оценка (см. Таблицу 2). Отношение между этими двумя величинами устанавливается так, что копирование (то есть деление) не будет осуществлено до тех пор, пока вновь создаваемые частичные планы не будут оценены достаточно хорошо для того, чтобы выдви-
Таблица 2. Оценка задач через оценку (R) затрагиваемых ими частичных планов
Задача | Формула оценки |
«Вывести» | 0,75 * R |
«Развернуть» | 0,75 * R * f(n) где f(n)=\,25/n где п — число новых частичных планов, которые должны быть созданы с помощью задачи «Развернуть» |
«Идентифицировать» | R |
«Принять» | R |
нуть конкурентоспособные в рамках текущей ситуации задачи.
(В) Задача типа «Идентифицировать». Выводимый план обычно содержит много дескрипций объектов, референты которых должны быть идентифицированы. Некоторые из этих дескрипций «были введены посредством высказывания, в то время как другие •были введены с помощью умозаключений. Примером второго типа, скажем, в случае применения правила «предварительное условие— действие», может служить некоторый параметр в дефиниции действия, который не является частью предварительного условия. Этот параметр не будет конкретизирован при включении данного действия в план, хотя в дефиниции действия и могут существовать ограничения на референт.
Аналогичным образом существующие дескрипции могут приобрести дополнительные ограничения по мере того, как выводятся умозаключения. Некоторое действие, включаемое в гипотезу, может конкретизировать ограничения на один из параметров данного плана, если он совпадает с каким-то из параметров этого действия.
Итак, по мере вывода умозаключений могут вводиться новые дескрипции и конкретизироваться старые. Каждый раз, когда происходит такое изменение, вызывается задача типа «Идентифицировать», которая будет пытаться найти референт.
Отметим, что, поскольку у нас некоторое действующее лицо S выводит план другого лица А, всякая оценка дескрипций должна делаться относительно убеждений S, касающихся убеждений А. В общем случае, если S считает, что существует только один объект, который, по мнению А, мог бы соответствовать данным ограничениям, то это и есть тот самый референт. Это в действительности недостаточное условие, но здесь оно считается удовлетворительным для наших целей. Перро и Коэн исследуют проблемы референции более детально (Perrault — Cohen (to appear)).
Идентификация референтов может потребовать использования предметно-ориентированных (domain specific) умозаключений. Например, в области железнодорожного движения есть необходимость в следующем правиле вывода: «Если поезд описан без конкретизации времени, то, вероятно, это ближайший поезд, соответствующий данной дескрипции». Остается вопрос о том, может ли данная эвристика выводиться из общей структуры планов или же она действительно полностью зависит от предметной области.
(С) Задачи управления поиском. Большинство механизмов управления встроены в схему оценки и в монитор вывода планов. Например, всякий раз, когда делается дополненние к альтернативе, соответствующие ожидания исследуются с целью поиска новых сходств, вызванных этим дополнением. Это может вызвать изменение в оценках в соответствии с оценочными эвристиками, основанными на ожиданиях.
Некоторый механизм должен останавливать процесс вывода планов. Это делается с помощью задачи «Принять» (Accept), которая вызывается посредством монитора всякий раз, когда пересечение альтернативы и ожидания представляется возможным на том основании, что они содержат совместимые спецификации очередного шага (то есть действия или цели) в данном плане, или когда план с нулевым ожиданием оценивается вдвое предпочтительнее, чем другие частичные планы. Задача «Принять» должна решить, остановить процесс вывода плана или нет. В настоящее время используется очень простое условие прекращенния вывода: если рассматриваемый план оценивается вдвое предпочтительнее, чем любой другой частичный план, то он принимается. Это осуществляется путем вызова фиктивной задачи, которой приписывается оценка, вдвое меньшая, чем оценка текущей задачи. Фиктивная задача будет входить в список до тех пор, пока все выше оцененные задачи не будут выполнены. Когда она займет первое место в списке (и если никакая другая задача типа «Принять» не была выполнена), первоначальная альтернатива получает статус плана говорящего, и процесс вывода плана прекращается. Если же была выполнена другая задача типа «Принять», то возникает неопределенность (см. раздел 6).
3.6. Обнаружение препятствий. Как только S вывел план говорящего, следующим шагом, если S руководствуется принципами предупредительного поведения, должна быть идентификация препятствий в этом плане.
Препятствием считается любая конкретизация (specification) цели, которая не является изначально истинной или не получена в рамках данного плана. Некоторые препятствия, касающиеся знаний, содержатся в плане только имплицитно. Так, если некоторое суждение Р является целью в плане А, и S считает, что
А не знает, верно ли Р, то есть S В (А не ЗНАТЬ-ВЕРНО-ЛИ Р), то А ЗНАТЬ-ВЕРНО-ЛИ Р является имплицитным препятствием. Аналогично, если план связан с некоторой дескрипцией, скажем ‘определенный x:D(x)’, референт которой, как полагает S, не известен А, то ‘А ЗНАТЬ-0 определенный x:D(x)’ является имплицитным препятствием. Эти имплицитные препятствия могут быть установлены путем применения правил вывода планов, касающихся знаний, к каждому шагу плана. Трудности возникают из того факта, что полный план говорящего может быть и не выведен, поскольку процесс вывода планов порождает только ту часть плана, которая достаточна для того, чтобы связать наблюдаемое высказывание с ожиданием. Поэтому могут появляться препятствия, очевидные с точки зрения частичного плана, которые не были бы препятствиями в рамках полного плана. Одна из стратегий для игнорирования подобных препятствий заключается в том, что не следует рассматривать препятствия, которые могут быть легко преодолены посредством некоторого простого плана говорящего.
Существуют и другие методики для отбраковки возможных препятствий. Препятствия могут быть частично упорядочены путем использования ограничений на упорядочение, накладываемых отношениями планов. В подобных случаях S знает, что если он должен обратиться к некоторому данному препятствию О, то он должен прежде обратиться к любым препятствиям, предшествующим О. Например, если А, несущему в обеих руках сумки и свертки, необходимо пройти через две двери, то со стороны S будет глупо открыть вторую дверь, если он не открыл также первую.
Другой эффективный фильтр препятствий может опираться на выявление тех, и только тех, препятствий, о которых говорящий намеревался сообщить с помощью своего высказывания. В частности, цели, которые, по мнению S, А считает находящимися в пределах компетенции S, скорее всего ставились со стороны А намеренно. Например, в ситуации железнодорожного вокзала сотрудник справочного бюро не только не продает билетов, но и полагает, что пассажиры знают об этом. Вследствие этого (хотя не иметь билета — это препятствие в плане посадки на поезд) служащий не ожидает, что пассажир будет спрашивать у него билет (поскольку он не может предложить его).
Выше речь шла о полезных стратегиях для тех случаев, когда, по мнению S, и S и А оба сходятся в оценке препятствий, имеющихся в данном плане. Однако, если S и А в чем-то не согласны, мы имеем дело с особыми препятствиями, которые требуют особой обработки. Например, если А думает, что состояние X уже имеет место и основывается на X в своем плане, но S считает, что X не имеет места, то S обязан упомянуть этот факт А. В противном случае план А потерпит неудачу, a S будет рассматриваться как нарушитель принципа кооперации. В обратном случае, если А считает, что положение X не имеет места, но S убежден, что в действительности оно уже имеет место, то должен сказать об этом А, потому что иначе А не выполнит намеченный план, так как он думает, что этот план не удастся реализовать.
Существует один класс препятствий, которые действительно очень трудно обнаруживать, но все же их следует рассмотреть. Если в плане имеются две цели, и одна представляет собой только шаг к достижению другой, то вышеописанные эвристики укажут нам, что единственным препятствием будет первая из них. Однако в некоторых случаях достижение второй полностью исключает необходимость достижения первой, пусть даже в качестве промежуточного шага. Например, если А и S находятся в запертой комнате и А спрашивает у S, где находится ключ от двери, S может вывести следующие цели:
“А хочет знать, где находится ключ" для того, чтобы “Открыть дверь". Если же S откроет дверь сам, скажем, с помощью другого средства, без использования ключа, то цель узнать местонахождение ключа становится нерелевантной. Однако обнаружение подобных ситуаций связано с большими трудностями и находится за пределами данной статьи, потому что оно может повлечь за собой вывод плана говорящего применительно к произвольному отрезку времени в будущем при отсутствии четко определенного условия прекращения нашего вывода.
Алгоритм, использованный в системе, предусматривает тестирование каждого целевого утверждения в плане. Препятствия выбираются с использованием следующих предпочтений:
(1) те цели, о которых у S и А нет единой точки зрения, имеют ли они место или нет;
(2) те цели, которые эксплицитнно указаны как препятствия в высказывании, то есть когда цепочка вывода от поверхностного речевого акта до ожидаемой цели включает эту цель;
(3) те цели, которые требуются для выполнения действий, частично обеспеченных целями класса 2, но которые не достигаются в рамках данного плана; и
(4) те цели, которым не предшествуют другие цели при частичном упорядочении препятствий и которые не достигаются в рамках данного плана.
Наш алгоритм формирует набор препятствий, относящихся к классу наибольшего предпочтения, который не является пустым.
4.