Представление знаний в интеллектуальных системах
Методическое пособие - Компьютеры, программирование
Другие методички по предмету Компьютеры, программирование
°ключение В с уверенностью F
Правила, содержащиеся в базе знаний, имеют вид
ИмяПравила : если Условие то Заключение
где Заключение - это простое утверждение, а Условие - это набор простых утверждений, соединенных между собой операторами и и или. Мы также разрешим в части условия использовать оператор не, хотя и с некоторыми оговорками. Заметим, что оператор и связывает операнды сильнее, чем или, что соответствует обычным соглашениям.
Рассмотрим еще одну небольшую базу знаний, которая может помочь локализовать неисправности в простой электрической схеме, состоящей из электрических приборов и предохранителей. Электрическая схема показана на рис. 14.6. Вот одно из возможных правил:
Если
лампа1 включена и
лампа1 не работает и
предохранитель1 заведомо цел
то
лампа1 заведомо неисправна.
Вот другой пример правила:
Если
радиатор работает
то
предохранитель1 заведомо цел.
Эти два правила опираются на некоторые факты (относящиеся к нашей конкретной схеме), а именно что лампа1 соединена с предохранитель1 и что лампа1 и радиатор имеют общий предохранитель. Для другой схемы нам понадобится еще один набор правил. Поэтому было бы лучше сформулировать правила в более общем виде (используя прологовские переменные) так, чтобы они были применимы к любой схеме, а затем уже дополнять их информацией о конкретной схеме. Например, вот одно из полезных правил: если прибор включен, но не работает, а соответствующий предохранитель цел, то прибор неисправен.
Рис. 14. 6. Соединения между предохранителями и приборами в простой электрической схеме.
На наш формальный язык это транслируется так:
правило_поломки:
если
Прибор включен и
не (Прибор работает) и
Прибор соединен с Предохранитель и
Предохранитель заведомо цел
То
Прибор заведомо неисправен.
База знаний такого рода показана на рис. 14. 7.
13.Трехзначная семантика для модальной логики предикатов. Пример
Семантику для модальной логики предикатов можно определить, как для классической. Проиллюстрируем модальную семантику, введя аппроксимацию (замена одних объектов другими, в том или ином смысле близкими к исходным, но более простыми) некоторых форм логики возможного с помощью трехзначной логики. Бинарная логика с двумя значениями {Л или 0, и И или 1} самая элементарная. Истина и ложь - это два множества высказываний, и законы (классической) логики утверждают, что любое высказывание есть элемент хотя бы одного из этих множеств (закон исключения третьего) и что никакое высказывание не является элементом сразу двух этих множеств (закон противоречия).
Какие изменения надо внести в эту теорию, если вводятся модальности возможно и необходимо? Надо рассмотреть несколько классов высказываний. Обозначим через N класс необходимых высказываний, через Р - возможных, через I -невозможных (или абсурдных) и через С - нейтральных (или возможно (случайно) ложных). Никакое высказывание не принадлежит одновременно N и С или I и Р. Далее, класс N содержится в Р, а класс I - в С. Это отражено в законах следования возможного из необходимого и нейтрального из абсурдного:
любое необходимое высказывание возможно;
любое абсурдное высказывание не является необходимым.
Существуют высказывания, которые являются возможными и нейтральными одновременно. Их называют проблематичными. Множество таких высказываний обозначим через U. Имеет место закон исключения четвертого:
любое высказывание принадлежит либо N, либо U, либо I.
Посмотрим, как эту теорию модальности можно перевести в алгебраическую форму. Каждому из классов N, U, I соответствует своя интерпретация: необходимо, проблематично, невозможно. Возьмем три символа 2, 1, 0. Эти логические значения сопоставляем указанным интерпретациям. Каждому высказыванию можно приписать логическое значение. Эта трехзначная логика предложена Лукасевичем.
В логике Лукасевича каждое высказывание обладает одним из значений 0, 1 или 2 (интерпретируемых как семантическое значение высказывания). Семантические значения можно находить, используя таблицы, приведенные ниже. Они задают семантику для аппроксимации модальной логики возможного с помощью трехзначной логики. Иное описание этой семантики возможно, но мы не будем его рассматривать.
FGFGFGFGFFF\G012012012012020000012222210111011122122121202012222012012
F?F?F000120222
14.Экспертные системы. Разработка оболочки
Если мы посмотрим на правила наших двух маленьких баз знаний рис. 14.5 и 14.7, мы сразу увидим, что они по своему смыслу эквивалентны правилам Пролога. Однако, с точки зрения синтаксиса Пролога, эти правила в том виде, как они написаны, соответствуют всего лишь фактам. Для того, чтобы заставить их работать, самое простое, что может прийти в голову, это переписать их в виде настоящих прологовских правил. Например:
Животное это млекопитающее :-
Животное имеет шерсть;
Животное кормит детенышей молоком.
Животное это хищник :-
Животное это млекопитающее,
Животное ест мясо.
. . .
Теперь эта программа сможет подтвердить, что тигр по имени Питер - это действительно тигр, если мы добавим в нее некоторые из свойств Питера (в виде прологовских фактов):
питер имеет шерсть.
питер ленив.
питер большой.
питер имеет рыжевато-коричневый цвет.
питер имеет черные полосы.
питер ест мясо.
Тогда мы можем с