Вывод на знаниях. Сценарии

Лекция № 6

Вопросы и упражнения

1. Представьте на языке логики предикатов следующие предложения русского языка:

а) не все студенты любят математику и физику;

б) только один студент любит историю;

в) только один студент любит как историю, так и электронику;

г) отставание по истории легче устранить, чем отставание по электронике;

д) любой охотник, не употребляющий дичь в пищу, вызывает удивление;

е) известны женщины, которые любят мужчин, не являющихся охотниками;

ж) живет в городе охотник, который знаком со всеми мужчинами-охотниками этого города;

з) никто не любит охотника, который убивает дичь ради'развлечения.

2. Запишите следующие условные предложения русского языка в виде правил логики предикатов:

а) если вы любите детективы, то сегодня вечером можете посмотреть прекрасный фильм из этой серии;

б) по утрам подают кофе и бутерброды с ветчиной;

в) может быть я заскочу к вам вечером, если успею;

г) я ее одновременно люблю и ненавижу;

д) если бы вы вовремя ушли с работы, вы бы успели к ужину. Если бы вы успели к ужину, то попробовали бы прекрасное мороженое. Если бы вы попробовали это мороженое, то всегда бы уходили с работы вовремя.

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

4. Имеем среду, состоящую из стола и кубиков на нем. Каждый из кубиков может лежать либо непосредственно на столе, либо на одном из других кубиков, образуя с кубиками, лежащими под ним, столбик. Столбики могут быть любой высоты. Сформулируйте на языке логики предикатов постановку задачи, исходя из следующих условий:

а) кубик А лежит на кубике В, кубик В на кубике С, а кубик С на столе;

б) единственное действие, которое можно совершать в среде кубиков — это перемещать один кубик, на котором ничего не лежит, на стол или на другой кубик, если он свободен от кубиков сверху;

в) необходимо перевернуть столбик из кубиков, используя это действие;

г) покажите формально, как получается решение в вашей постановке задачи.

5. Дополните постановку задачи, рассмотренную в настоящей главе для среды чудовища, аксиомами, учитывающими возможность совершения агентом выстрела из лука и поражения чудовища, если агент стоит к нему лицом в соседней ячейке и в ней нет сквозняка. Объясните, как в этом случае может измениться стратегия движения агента при условии, что после поражения чудовища зловоние, исходящее от него, исчезает.


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

4.1 Машина вывода. Автоматическое доказательство теорем

Машина вывода (интерпретатор правил) выполняет две функции: во-первых, просмотр существующих фактов из рабочей памяти (базы данных) и правил из базы знаний и добавление (по мере возможности) в рабочую память новых фактов и, во-вторых, определение порядка просмотра и применения правил. Этот механизм управляет процессом консультации, сохраняя для пользователя информацию о полученных заключениях, и запрашивает у него информацию, когда для срабатывания очередного правила в рабочей памяти оказывается недостаточно данных [Осуга, Саэки, 1990].

В подавляющем большинстве систем, основанных на знаниях, механизм вывода представляет собой небольшую по объему программу и включает два компонента — один реализует собственно вывод, другой управляет этим процессом.

Действие компонента вывода основано на применении правила, называемого modus ponens.

Правило modus ponens. Если известно, что истинно утверждение А и существует правило вида «ЕСЛИ А, ТО В», тогда утверждение В также истинно.

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

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

Управляющий компонент определяет порядок применения правил и выполняет четыре функции:

1. Сопоставление — образец правила сопоставляется с имеющимися фактами.

2. Выбор — если в конкретной ситуации может быть применено сразу несколько правил, то из них выбирается одно, наиболее подходящее по заданному критерию (разрешение конфликта).

3. Срабатывание — если образец правила при сопоставлении совпал с какими-либо фактами из рабочей памяти, то правило срабатывает.

4. Действие — рабочая память подвергается изменению путем добавления в нее заключения сработавшего правила. если в правой части правила содержится указание на какое-либо действие, то оно выполняется (как, например, в системах обеспечения безопасности информации).

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

В одном цикле может сработать только одно правило. Если несколько правил успешно сопоставлены с фактами, то интерпретатор производит выбор по определенному критерию единственного правила, которое срабатывает в данном цикле. Цикл работы интерпретатора схематически представлен на рис. 4.

Информация из рабочей памяти последовательно сопоставляется с посылками правил для выявления успешного сопоставления. Совокупность отобранных правил составляется так называемое конфликтное множество. Для разрешения конфликта интерпретатор имеет критерий, с помощью которого он выбирает единственное правило, после чего оно срабатывает. Это выражается в занесении критерия выбора конфликтующих правил. Если же в заключение правила входит название какого-нибудь действия, то оно выполняется.

Работа машины вывод зависит только от состояния рабочей памяти и от состава базы знаний. На практике обычно учитывается история работы, то есть поведение механизма вывода в предшествующих циклах. Информация о поведении механизма вывода запоминается в памяти состояний (рис. 48). Обычно память состояний содержит протокол системы.


    Интерпретатор (механизм вывода)    
         
      Память состояний      
             
             
Данные   Образцы
     
    …………           ………......    
             
            ………......    
           
             
Рабочая память (база данных)   Модули (база знаний)
             
             
                         

Рис. 5. Схема функционирования интерпретатора.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: