Рассел С., Норвиг П. Искусственный интеллект. Современный подход (2-е изд., 2006) (1245267), страница 84
Текст из файла (страница 84)
В малом мире вампуса алгоритм РЬ-Нитриз-Адепп действует весьма неплохо. Тем не менее некоторые особенности базы знаний агента остаются крайне неудовлетворительными. База знаний кц содержит "буквш)ьные" высказывания в обшей форме, приведенной в уравнениях 7.! и 7.2, для каждого отдельного квадрата. Чем больше среда, тем крупнее должна быть такая начальная база знаний. Было бы горазло лучше иметь только два высказывания, которые сообщают, из-за чего возникают ветерки и неприятные запахи в любых квадратах. Но такие выразительные возможности выходят за рамки пропозициональной логики. В следую(цей главе будет показан более выразительный логический язык, в котором можно легко представить подобные высказывания. Слежение за местонахождением н ориентацией Программа агента, приведенная в листинге 7.9, немного "жульничает", поскольку в ней слежение за местонахождением осуществляется за пределами базы знаний, тогда как вместо этого следует использовать логические рассуждения".
Для выполнения этих функции "должным образом" потребуются высказывания, касающиеся местонахождения. Одна из первых попыток решения этой задачи может состоять в использовании некоторого символа наподобие ь,, д)и обозначения того, что агент находится в квадрате [1, 1] . В таком случае начальная база знаний могла бы включать высказывания, подобные следующим: 'з Наблюдательный читатель должен был заметить, что это позволило бы нам определить связь между чистыми восприятиями, такими как вгееве, и высказываниями, касаюшимися местонахождения, такими как вгп 325 Глава 7.
Логические агенты Ьг,г Л Раододдддгге Л РппгУапг] '=> Ъг,г Однако сразу же обнаруживается, что такой способ является неприменимым. Если агент начинает движение с квадрата [1, 1], глядя вправо, и передвигается вперед, то из базы знаний будут следовать высказывания и ьг г (о его первоначальном местонахождении), и ьг г (о его новом местонахождении). Тем не менее эти высказывания не могут одновременно быть истинными! Проблема состоит в том, что эти два высказывания, касаюшиеся местонахождения, должны ссылаться на два различных пРомежУтка вРемени.
Нам тРебУетсЯ ввести обозначение наподобие Ьгг ь которое означало бы, что агент находился в квадрате [1, 1] в момент времени 1, д',,— для обозначения того, что агент находился в квадрате [2, 1] в момент времени 2, и т.д. Высказывания, касающиеся ориентации и действий, также должны зависеть от времени. Поэтому правильными высказываниями являются следуюгцие: Ь .,г л Расдпдяддгге л Роугуаус] =г Ъ г,г 1» г 1 г Еасдпдяддье л тиуплеЕС =У уасгпдцр и тому подобные высказывания. Как оказалось, задача создания полной и правильной базы знаний, которая позволяла бы следить за всем, что происходит в мире вампуса, является весьма сложной; отложим полное обсуждение этой темы до главы ]О.
А в данном разделе достаточно лишь подчеркнуть такую мысль, что начальная база знаний должна содержать высказывания, подобные приведенным в двух предылуших примерах, для каждого момента времени с, а также для каждого местонахождения. Это означает, что для каждого момента времени с и местонахождения [х, у] база знаний содержит некоторое высказывание примерно в такой форме: у' у л Растпдлтд]г с' л Роуууауб' ~ г г у ]7.3] Но даже если мы установим верхний предел количества допустимых интервалов времени (допустим, 100), в конечном итоге база знаний заполнится десятками тысяч высказываний. Та же самая проблема возникает, если для каждого нового интервала времени добавление высказываний происходит "по мере необходимости". Из-за такого стремительного увеличения количества высказываний база знаний становится неудобной для чтения людьми, но быстрые пропозициональные алгоритмы — решатели задач все еще способны легко справляться с задачами в мире вампуса с размерами 4х4 (они достигают предела своих возможностей в мире, размеры которого составляют приблизительно 100х100).
Агенты, основанные на логических схемах, которые описаны в следующем подразделе, предоставляют частичное решение этой проблемы стремительного увеличения количества высказываний, но нам придется подождать полного решения до того, как будет разработана логика первого порядка в главе 8. Агенты на основе логических схем ъ Агент на основе логической схемы представляет собой особую разновидность рефлексных агентов с поддержкой состояния, которые определены в главе 2.
В этом агенте результаты восприятия становятся входными данными для 'ск последовательной логической схемы — сети из Ъ, логических элементов, каждый из которых реализует какую-то лопзческую связку, и Ъ, регистров, каждый из который хранит истинностное значение одного высказывания. Выходами этой логической схемы являются регистры, соответствующие действиям, например, выход ОпаЬ принимает значение спие, если агент 326 Часть !11. Знания и рассуждения хочет что-то схватить. Если вход с1зссех (блеск) связан непосредственно с выходом Оха2з, то агент хватает свою цель, где бы он ее не обнаружил (рис. 7.9). Вычисления значений с помощью логических схем осуществляются по принципу Ъ.
обработки потока данных: на каждом временном интервале устанавливаются значения входных данных и по логической схеме распространяются сигналы. Каждый раз, ко~да некоторый логический элемент получает на входе все необходимые данные, он вырабатывает на выходе некоторое значение. Этот процесс весьма напоминает процесс прямого логического вывода в таком графе АХР— ОК, какой приведен парис. 7.7, б. Вгееге П ропгага 5генсй П Титйе)г СПггег гйглл ты [ бгаЬ ] Ритр 5сгеаы Рнс.
7лй сгасть сгирукпгурггой схемы агента ни основе логической схемы для люра вампуса, на которои показаны входы, выходы, схеми для захаита золоти а схема для определения того, зкив ли вампус. Региспгры показаны в виде прялгоугольггиков, а задеряски на один шаг обозначаются небольшими треугольниками В предыдущем разделе было указано, что агенты на основе логической схемы позволяют учитывать временные соотношения намного более успешно, чем пропозициональные агенты на основе логического вывода. Это связано с тем, что значение, хранящееся в каждом регистре, показывает истинностное значение соответствующего пропозиционального символа в текущий момент времени с, поэтому регистр не хранит отдельные копии этого значения для каждого отдельного интервала времени. Например, можно предусмотреть регистр л21ие, который должен содержать значение схое, если вампус жив, и ба1ве, если он мертв.
Этот регистр соответствует пропозициональному символу л1зие', поэтому в каждом временном интервале он ссылается на разные высказывания. Внутреннее состояние этого агента (т.е. его память) поддерживается путем обратного подключения выхода некоторого регистра к той же схеме через сьх линию задержки. Это позволяет доставить в схему информацию о состоянии регистра в предыдущем интервале времени.
Один из примеров такой конструкции приведен на рис. 7.9. Значение регистра л1ззге формируется с помощью конъюнкции отрицания восприятия ~охват и пропущенного через линию задержки значения самого регистра л1ззге. Действие, выполняемое этой схемой применительно к регистру А2зие, можно представить в форме высказывания как следующую двухстороннюю импликацию: 327 Глава 7. Логические агенты А1хчге в» Яахеам~ п Азхчге~ (7.4) Это высказывание означает, что вампус в момент времени с жив тогда и только тогда, когда в момент времени с не был слышен его жалобный предсмертный крик (такое состояние нельзя определить по крику в момент времени с-1), и он был жив в момент времени с-1.
Предполагается, что при инициализации этой логической схемы значение регистра А13 ие устанавливается равным ся це. Поэтому значение регистра А11чге остается истинным до тех пор, пока не раздается жалобный крик вампуса, после чего это значение становится ложным и остается таковым. Это— именно то, что требуется. За местонахождением агента можно следить в основном с использованием такого же способа, с помощью которого мы следим за здоровьем вампуса.