- •Предисловие
- •Глава1. Логика классическая
- •1.1. Логика высказываний
- •1.1.1. Алгебра высказываний
- •1.1.1.2. Правила записи сложных формул
- •1.1.1.3. Законы алгебры высказываний
- •1.1.1.4. Эквивалентные преобразования формул
- •1.1.1.5. Нормальные формы формул
- •1.1.2. Исчисление высказываний
- •1.1.2.1. Интерпретация формул
- •1.1.2.2. Аксиомы исчисления высказываний
- •1.1.2.3. Метод дедуктивного вывода
- •1.1.2.4. Метод резолюции
- •Вопросы и задачи
- •Расчетно-графическая работа
- •1. 2. Логика предикатов
- •1.2.1. Алгебра предикатов
- •1.2.1.1. Логические операции
- •1.2.1.2. Правила записи сложных формул
- •1.2.1.3. Законы алгебры предикатов
- •1.2.1.4. Эквивалентные преобразования формул
- •1.2.1.2. Предварённая нормальная форма
- •1.2.1.3. Сколемовская стандартная форма
- •1.2.2. Исчисление предикатов
- •1.2.2.1. Интерпретация формул
- •1.2.2.2. Аксиомы исчисления предикатов
- •1.2.2.3. Правила унификации предикатов
- •1.2.2.4. Метод дедуктивного вывода
- •1.2.2.5. Метод резолюции
- •1.2.3. Логическое программирование
- •1.2.3.1. Основы логического программирования*
- •1.2.3.2. Подготовка среды Visual Prolog для работы
- •1.2.3.3. Описание логических задач на языке Prolog
- •Вопросы и задачи
- •Расчетно-графическая работа
- •Формула
- •1.3. Логика реляционная
- •1.3.1. Реляционная алгебра*
- •1.3.1.1. Унарные операции
- •1.3.1.2. Бинарные операции
- •1.3.2. Реляционное исчисление*
- •1.3.3. Языки реляционной логики
- •Вопросы и задачи
- •Расчетно-графическая работа
- •Глава 2. Неклассическая логика
- •2.1. Нечёткая логика
- •2.1.1. Нечёткие множества
- •2.1.2. Нечёткая алгебра
- •2.1.2.1. Операции над нечёткими множествами
- •2.1.2.2. Законы нечёткой алгебры
- •2.1.2.3. Свойства нечётких отношений
- •4.4.2. Экспертные системы
- •Вопросы и задачи
- •Расчетно-графическая работа
- •2.2. Модальная логика
- •2.2.1. Темпоральная (или временнáя) логика*.
- •Ответы и решения
- •Литература
- •Предметный указатель
2.1. Нечёткая логика |
193 |
|
|
|
|
В этом случае степень истинности высказывания B’
есть
ρ(B’)= ρ(A’)°ρ(A’→В’)=max{min{ρ(A’), ρ(A’→В’)}}.
Пример. Пусть ρ(A’→В’) задано предыдущей таблицей, а
ρ(A’)={0,36/u1, 0,16/u2, 0,64/u3, 0,04/u4, 1,0/u5, 0,09/u6}.
Тогда истинность заключения:
ρ(B’)=ρ(A’)•ρ(A’→В’)={maxv1 {min{0,36/u1, 0,6/(u1,v1)}, min{0,16/u2, 0,6/(u2,v1)}, min{0,64/u3, 0,8/(u3,v1)}, min{0,04/u4, 0,8/(u4,v1)}, min{1,0/u5, 0,9/(u5,v1)}, min{0,09/u6, 0,7/(u6,v1)}}, maxv2{min{0,36/u1, 0,4/(u1,v2)}, min{0,16/u2, 0,6/(u2,v2)}, min{0,64/u3, 0,4/(u3,v2)}, min{0,04/u4, 0,8/(u4,v2)}, min{1,0/u5, 0,4/(u5,v2)}, min{0,09/u6, 0,7/(u6,v2)}}, maxv3{min{0,36/u1, 0,6/(u1,v3)}, min{0,16/u2, o,6/(u2,v3)}, min{0,64/u3, 0,8/(u3,v3)}, min{0,04/u4, 0,8/(u4,v3)}, min{1,0/u5, 1,0/(u5,v3)}, min{0,09/u6, 0,7/(u6,v3)}}...=maxv1{0,36, 0,16, 0,64, 0,04, 0,9, 0,09}, maxv2{0,36, 0,16, 0,4, 0,04, 0,4, 0,09}, maxv3{0,36, 0,16, 0,64, 0,04, 1,0, 0,09},..= {0,9/v1, 0,4/v2, 0,64/v3, 0,7/v4, 0,64/v5, 0,5/v6}.
4.4.2. Экспертные системы
Экспертные системы относятся к категории интеллектуальных вычислительных систем, которые используют знания специалистов о некоторой специализированной предметной области, хранят и накапливают эти знания, предлагают и объясняют решения конкретных задач или консультируют на уровне профессионала.
Существует много экспертных систем различного назначения, построенных на различных платформах. На-
194 |
Математическая логика |
пример, экспертная система PROSPECT EXPLORER использует нечёткую логику и семантические сети для консультации геологов при обнаружении горных аномалий. Система INTERNIST предназначена для врачебной диагностики и лечения заболеваний внутренних органов. Система FLEX нашла применение в различных финансовых системах, так как использует прямой и обратный методы при нечётких формулировках вопросов и нечётких правилах вывода. Система реального времени COMDALE/C обрабатывает неточные данные в условиях производства и консультирует в условиях непрерывного производста. Экспертная система MYCIN использует систему нечётких продукций для консультации врачей при диагностике и лечении инфекционных заболеваний. Оболочка экспертной системы МИКРОЭКСПЕРТ нашла широкое применение в различных сферах человеческой деятельности.
Идеализированная экспертная система содержит пять основных компонент (см. рис. 2.2): базу знаний (факты и правила вывода), интерфейс пользователя, подсистему логического вывода, блок извлечения и пополнения знаний и блок объяснения.
2.1. Нечёткая логика |
195 |
|
|
|
|
База знаний хранит и накапливает информацию о фактах, явлениях, событиях предметной области и о правилах, используемых экспертом-профессионалом при принятии решений. Интерфейс служит для взаимодействия пользователя или эксперта-профессионала с компьютером на проблемно-ориентированном языке. В интерфейсе происходит трансляция предложений этого языка на внутренний язык компьютера.
Подсистема логического вывода - это высокоуровне-
вый интерпретатор знаний. Знания могут быть пред-
ставлены в виде правил продукций (например, в системе MYCIN), деревьев решений (например, в системе ACLS), семантических сетей (например, в системе PROSPECTOR), исчисления предикатов и т.п.
В большинстве экспертных систем формируется упорядоченный список правил (продукций) и, в простейшем варианте, управление логическим выводом начинается с начала списка этих правил. Последовательно проверяются правила, пока не будет найдено то, для которого соответствуют условия, предусмотренные знаниями о фактах. За-
196 |
Математическая логика |
тем система пытается найти следующее правило, вернувшись к началу списка или продолжив поиск с того места, где он был прерван.
Блок объяснения служит для аргументации причинноследственных связей и используемых правил решений. Поэтому все истинные правила и необходимые условия группируются в стеки контекстов и представляются пользователю.
Блок пополнения и корректировки базы знаний предназначен только для эксперта-профессионала, так как знания имеют слабо формализуемый характер по причинноследственным связям. Поэтому самым узким местом экспертной системы является наполнение и корректировка правил базы знаний.
Одной из первых экспертных систем была «Микроэксперт», которая представляет собой систему с открытой архитектурой.
При создании системы для какой-либо предметной области, прежде всего, формируют базу данных и знаний, содержащую описание фактов и соответствующие им значения атрибутов, описание правил и условий для истинности заключения. Каждое правило и необходимые атрибуты имеют индексированные карточки, которые облегчают сборку стека контекста для вынесения суждения о цели консультации. Первым этапом любой консультации является выбор цели. В процессе консультации необходимо собрать и запомнить последовательность всех известных фактов данной цели. Так формируется стек контекста данной цели. Затем формируется стек целей. Атрибуты цели, находящейся в последней вершине стека, представляют
2.1. Нечёткая логика |
197 |
|
|
|
|
текущую цель. Сначала система пытается найти карточку с правилом, которое в своем заключении содержит атрибуты текущей цели. Если правило найдено, то следует перейти к оценке этого правила по условной части. Все утверждения, стоящие в условной части, сравниваются с атрибутами описываемых фактов.
В процессе сравнения может возникнуть одна из трех ситуаций:
•если в текущем правиле один или несколько атрибутов отсутствуют в стеке контекста, то формируется новая цель поиска неизвестного атрибута и она направляется в стек целей,
•если текущее правило является ложным, т. е. условия противоречат фактам в стеке контекста, то данное правило удаляется и выбирается следующее правило,
•если текущее правило отвечает текущей цели, т. е. все атрибуты условной части соответствуют элементам стека контекста, то заключительная часть истинна.
198 |
Математическая логика |
Рис. 2.3. Схема алгоритма ЭС «Микроэкс-
перт».
Правило, которое было определено, как истинное, для текущей цели, помещается вместе с атрибутами в стек контекста решения для показа необходимых значений атрибутов. Далее следует переход к очередной цели. Если в стеке целей не осталось других целей, то задача решена.
На рис. 2.3 приведена укрупненная схема алгоритма логического вывода заключения экспертной системы «Микроэксперт», где
y1 – поместить цель в стек целей,
y2 – выбрать правило для оценки атрибутов цели,
y3 – поместить подсказку вместе с карточкой цели в стек контекста,
y4 – подсказка не найдена,
y5 – отложить карточку неиспользуемого правила,
y6 – поместить карточку неизвестного атрибута в стек целей вместе с карточкой правила,
2.1. Нечёткая логика |
199 |
|
|
|
|
y7 – поместить карточки атрибутов из стека целей и карточку правила в стек контекста,
p1 – правило выбрано?
p2 – правило соответствует цели?
p3 – есть ли подсказка в выборе правила?
p4 – правило или подсказка содержит все атрибуты цели? p5 – стек целей пуст?
Другая экспертная система – MYCIN: диагностика и лечение инфекционных заболеваний - интересна правилом формирования заключения. База знаний содержит все свидетельства о заболевании пациента - Fi и правила диагностики. Данные о пациенте образуют так называемое контекстное дерево, структура которого унифицирована для всех больных. Для вывода заключения - гипотезы о заболевании B’ - используют так называемый коэффициент уверенности КУ. Коэффициент уверенности – это раз-
ность между мерой доверия - МД и мерой недоверия -
МНД в оценке истинности гипотезы:
КУ [(F’→В’): F'] = МД [(F’→В’): F’] - МНД [(F’→В’):
F'],
где КУ [(F’→В’): F’] – коэффициент уверенности гипотезы (F’→В’) при истинности свидетельства F’,
МД[(F’→В’): F’] - мера доверия гипотезе (F’→В’) при заданной истинности свидетельства F’,
МНД [(F’→В’): F’] - мера недоверия гипотезе (F’→В’) при заданной истинности свидетельства F’.
Меры доверия и недоверия определяются в диапазоне [0, 1]. Тогда КУ будет измеряться в диапазоне от - 1 (абсолютная ложь) до +1 (абсолютная истина).
При наличии двух или нескольких свидетельств (F'1 и
200 |
Математическая логика |
F'2) в системе MYCIN происходит уточнение мер доверия и недоверия гипотезе (F’→В’) при заданных значениях истинности двух свидетельств F'1 и F'2 по следующему правилу:
МД[(F’→В’): F'1, F'2]=МД[F’1→В’: F'1]+МД[F’→В’: F'2] (1 - МД[F’→В’: F'1]),
МНД[(F’→В’): F’1, F'2]=МНД[(F’→В’): F’1]+МНД[(F’→В’): F'2] (1 – МНД [(F’→В’): F’1]). Смысл формулы состоит в том, что эффект второго свидетельства (F'2) на гипотезу (F’→В’) при заданном свидетельстве F'1 уточняет истинность гипотезы. По мере накопления свидетельств МД и МНД происходит постепенное уточнение гипотезы (F’→В’) до 1.