Системы искусственного интеллекта Бондаренко Иван Юрьевич,
Системы искусственного интеллекта Бондаренко Иван Юрьевич, ассистент каф. ПМИ
Структура продукционной ЭС Подсистема объяснений База знаний Средства Механизм База Поль- общения вывода правил зова- тель Рабочая приобретение память знаний
База правил Основной элемент базы правил – продукционное правило «Если – то» Например: Если двигатель – не заводится Анте- и стартер – не работает цедент то неполадки – в системе Консек- электропитания. вент
База фактов (рабочая память) Хранит множество фактов и все пары «атрибут-значение» , которые установлены на текущий момент. Она динамична, т. е. меняется в процессе работы ЭС (консультации). При монотонном выводе результата факты в БФ статичны, т. е. не изменяются в процессе консультации.
В системах с немонотонным выводом допускается в процессе консультации с ЭС изменение или удаление фактов, модификация значений атрибутов в составе фактов БФ.
Механизм логического вывода (интерпретатор правил) Функции МЛВ: 1)Просмотр существующих фактов в рабочей памяти (БФ) и правил в БП; добавление в БФ новых фактов. 2) Определение порядка просмотра и применения правил. 3) Логический вывод результатов (целей). МЛВ реализуется небольшой программой!
Существуют 2 основные стратегии логического вывода: - Прямой порядок вывода; - Обратный порядок вывода. цель Прямой Обратный вывод поле вывод (восходящий) знаний (нисходящий) факты
Выбор рациональной стратегии управления выводом зависит от решения 2 -х вопросов: 1) Какую точку в пространстве состояний принять в качестве исходной? 2) Как повысить эффективность поиска решения? В системе диагностики чаще применяется прямой вывод, в планирующих системах более эффективным оказывается обратный вывод.
Обратный логический вывод Вывод, при котором поиск доказательства начинается с глобального целевого утверждения. Выясняются условия, при которых целевое утверждение является выводимым. Эти условия принимаются за новые текущие целевые утверждения, и процесс поиска (вывода) продолжается. Вывод заканчивается, когда все очередные условия оказываются аксиомами или процесс обрывается неудачей.
Для упрощения иллюстрации МЛВ с обратным выводом рассмотрим одну из моделей реализации МЛВ на основе индексных карточек. Карточка представляет собой какой- нибудь элемент БЗ: - правило продукционное; - атрибут и его параметры. Карточка атрибута содержит его имя и подсказку, если она есть. В качестве примера рассмотрим БЗ.
Правила ботанической ЭС 1. Если Класс = голосемянные и Форма_листа = чешуеобразная, то Семейство = кипарисовые. 2. Если Класс = голосемянные и Форма_листа = иглоподобная и Конфигурация = хаотическая, то Семейство = сосновые.
3. Если Класс = голосемянные и Форма_листа = иглопдобная и Конфигурация = 2_новых_ряда и Серебристые_полосы = да, то Семейство = сосновые. 4. Если Класс = голосемянные и Форма_листа = иглопдобная и Конфигурация = 2_новых_ряда и Серебристые_полосы = нет, то Семейство = болотный_кипарис.
5. Если Тип = дерево и Форма_листьев = широкая, то Класс = покрытосемянные. 6. Если Тип = дерево и Форма_листьев = узкая, то Класс = голосемянные. 7. Если Стебель = зелёный, то Тип = травянистые.
8. Если Стебель = древесный и Положение = стелется, то Тип = лиановые. 9. Если Стебель = древесный и Положение = растёт_прямо и Один_основной_ствол = да, то Тип = дерево. 10. Если Стебель = древесный и Положение = растёт_прямо и Один_основной_ствол = нет, то Тип = кустарниковые.
Карточка атрибута может содержать Подсказки и Переводы. Подсказка – это вопрос, который выводится на экран монитора для получения от пользователя информации о некотором атрибуте, значение которого неизвестно. Например: Имеется атрибут «Форма_листьев» . Подсказка: «Какую форму имеют листья (широкую/узкую)? »
Перевод – это строка, раскрывающая смысл атрибута. Например: для атрибутов «Стебель» и «Тип» Переводы: стебель растения, тип растения. Переводы используются для улучшения диалога путём замены атрибута его переводом.
Примеры карточек для атрибутов с переводами и подсказками Карточка 1 Стебель растения Какой стебель у растения (древесный или зелёный)? Карточка 2 Класс дерева
Динамические структуры МЛВ Стек целей – хранит текущие цели в виде карточек атрибутов. Атрибут Правило В начале работы МЛВ в вершину стека кладётся карточка с глобальной целью – Семейство. Стек контекстов (база фактов) – накапливает последовательность всех установленных фактов (Атрибут=значение). Атрибут Значение № правила
3. Правило считается истинным, когда каждое утверждение условной части текущего правила согласуется с одним из фактов стека контекста (БФ). Текущая цель становится доказанной, поэтому из истинности условной части правила делается вывод об истинности его заключения , т. е. порождается новый факт, который записывается в БФ. Для этого карточка с атрибутом текущей цели извлекается из вершины стека целей и переносится в стек контекста с выведенным значением.
Кроме того, из стека целей извлекается карточка с правилом, соответствующим удалённой текущей цели, и возвращается в вершину колоды правил (БП) для переоценки. Этап 3. Опрос пользователя. Если на этапе 1 не найдено правило для доказательства текущей цели (не хватает знаний в БЗ), то можно попросить помощь у пользователя, организовав с ним диалог с помощью подсказки для получения значения атрибута текущей цели.
Алгоритм обратного вывода на основе индексных карточек. Начало 1. Поместить глобальную цель в стек целей. 2. Выбрать правило для оценки. 3. Если правило выбрано то 4. Если правило истинно то 5. Поместить карточку с атрибутом из стека целей и карточку с текущим правилом в стек контекста (порождение нового факта).
6. Если стек целей содержал правило то 7. Вернуть из стека целей карточку с правилом в вершину колоды с правилами всё 8. Если стек целей пуст то задача решена (цель доказана) иначе перейти к пункту 2 всё иначе 9. Если правило ложно
то 10. Отложить карточку с правилом в колоду сброса иначе 11. Значение правила неизвестно. Поместить карточку с первым неизвестным атрибутом в стек целей вместе с карточкой текущего правила (нов подцель). всё Перейти к пункту 2. всё
иначе 12. Если есть подсказка для текущей цели то 13. Выдать подсказку на экран 14. Поместить ответ польз-ля вместе с карточкой цели в стек контекста 15. Перейти к пункту 6. иначе 16. Если это глобальная цель то
17. Ответ для глобальной цели не может быть найден иначе 18. Удалить из стека целей текущую цель, а карточку с правилом отложить в колоду сброса. 19. Перейти к пункту 2. всё всё Конец
Пример динамики обратного вывода Анал Знач Ответ Стек Контекстный Отл Шаг изир ение на оже уемо прав подсказ целей стек (БФ) нны е ила ку е прав Атрибут № Атрибут Значение № прав ило пра ила вил а 1 2 3 4 5 6 7 8 9 10 1 Семейство 2 1 Н Класс 1 3 5 Н Тип 5 4 7 Н Стебель 7 5 Нет Древесн Тип 5 Стебель Древесны ый й
1 2 3 4 5 6 7 8 9 10 6 7 Л 7 7 8 Н Положе 8 ние 8 Нет Прямой Тип 5 Положен Растёт ие прямо 9 8 Л 8 10 9 Н Один 9 осн. ствол 11 Нет Да Тип 5 Один Да осн. ствол 12 9 И Класс 1 Тип Дерево 9
1 2 3 4 5 6 7 8 9 10 13 5 Н Форма 5 листьев 14 Нет Узкая Класс 1 Форма Узкая листьев 15 5 Л 5 16 6 И Семейст Класс Голосемя 6 во нные 17 1 Н Форма 1 листа 18 Нет Чешуеоб Семейст Форма Чешуеобр разная во листа азная 19 1 И Пусто Семейств Кипарисо 1 (Стоп) о вые
Лекция 03 (новая) Обратный логический вывод.ppt
- Количество слайдов: 28

