Вопрос 7: Система приобретения знаний. Подсистемы объяснения ЭС. Организация интерфейса в ЭС. Жизненный цикл ЭС.
ЭС - экспертная система
Система приобретения знаний
Cистема приобретения знаний предназначена для добавления в базу знаний новых правил и модификации имеющихся. В ее задачу входит приведение правила к виду, позволяющему подсистеме вывода применять это правило в процессе работы. В более сложных системах предусмотрены еще и средства для проверки вводимых или модифицируемых правил на непротиворечивость с имеющимися правилами.
База знаний - важная компонента экспертной системы, она предназначена для хранения долгосрочных , знаний, описывающих рассматриваемую предметную область (а не текущих данных), и правил, описывающих целесообразные преобразования знаний этой области. В качестве предметной области выбирается узкая (специальная) прикладная область. Далее для создания ЭС в выбранной области собираются факты и правила, которые помещаются в базу знаний вместе с механизмами вывода и упрощения. В отличие от всех остальных компонент ЭС, база знаний - "переменная " часть системы, которая может пополняться и модифицироваться инженерами знаний и опыта использование ЭС, между консультациями (а в некоторых системах и в процессе консультации).
Существует несколько способов представления знаний в ЭС, однако общим для всех них является то, что знания представлены в символьной форме (элементарными компонентами представления знаний являются тексты, списки и другие символьные структуры). Тем самым, в ЭС реализуется принцип символьной природы рассуждений, который заключается в том, что процесс рассуждения представляется как последовательность символьных преобразований.
Существуют динамические и статические базы знаний.
- Динамическая база знаний изменяется со временем. Ее содержимое зависит и от состояния окружающей. Новые факты, добавляемые в базу знаний, являются результатом вывода, который состоит в применении правил к имеющимся фактам.
- В системах с монотонным выводом факты, хранимые в базе знаний, статичны, то есть не изменяются в процессе решения задачи. В системах с немонотонным выводом допускается изменение или удаление фактов из базы знаний.
Подсистемы объяснения ЭС
Объяснительный компонент ЭС объясняет, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование и повышает доверие пользователя к полученному результату. Поскольку системы, основанные на знаниях, реализуются на компьютерах, то и входная информация воспринимается или в виде, понятном компьютеру, т.е. в битах и байтах. Однако для того чтобы мог взаимодействовать неподготовленный пользователь, в нее требуется включить средства общения на естественном языке. Подавляющее большинство систем, основанных на знаниях, обладают достаточно примитивным интерфейсом на естественном языке - допустимые входные сообщения пользователя ограничены набором понятий, содержащихся в базе знаний. Итак, на примере простой ЭС и базы знаний диалог пользователя с системой можно представить себе следующим образом:
Система: Вы хотите узнать, нужно ли взять с собой зонтик? Пользователь: Да. Система: Верно ли, что небо покрыто тучами? Пользователь: Да. Система: Верно ли, что барометр падает? Пользователь: Да. Система: (после некоторого "размышления") Нужно взять с собой зонтик.
Организация интерфейса в ЭС
Интерфейс пользователя - это система программных и аппаратных средств, обеспечивающих для конечного пользователя использование компьютера для решения задач, которые возникают в среде его профессиональной деятельности либо без посредников либо с незначительной их помощью. Это совокупность средств интеллектуального интерфейса, имеющих гибкую структуру, которая обеспечивает возможность адаптации в широком спектре интересов конечных пользователей.
Жизненный цикл ЭС
Системный анализ
- Формирование требований Заказчика к ЭС.
- Обследование объекта и обоснование необходимости создания системы. Выполнение идентификации проблемы, т.е. определяются:
- необходимые ресурсы (время, люди, оборудование и т.п.);
- источники знаний (книги, приказы, ГОСТы, эксперты и т.п.);
- имеющиеся аналогичные ЭС;
- цели (обучение, управление, диагностика и т.п.);
- классы решаемых задач и т.д.
- Оформление договора между Разработчиком и Заказчиком.
Анализ требований
- Поиск путей удовлетворения требований Заказчика на уровне концепции создаваемой системы (структура, функции, программно-техническая платформа, режимы).
- Рассмотрение альтернативных вариантов концепции системы, их анализ и выбор лучшей концепции.
Проектирование
- Разработка, согласование и утверждение технического задания на создание ЭС.
- Извлечение знаний.
- Структурирование (концептуализация) знаний.
- Формализация знаний.
- Разработка документации на ЭС и ее части.
Кодирование (реализация)
Разработка программного продукта с использованием: - традиционных языков программирования (Pascal, C++, Java и т.д.);
- специальных языков программирования, ориентированные на обработку символьной информации (LISP, SMALLTALK, РЕФАЛ);
- языков логического программирования (Prolog);
- языков представления знаний (OPS 5, KRL, FRL);
- интегрированных программных сред (КЕ, ARTS, GURU, G2);
- оболочек экспертных систем (BUILD, EMYCIN, EXSYS Professional, ЭКСПЕРТ), которые позволяют создавать прикладные ЭС, не прибегая к программированию.
Тестирование
Проверка: - удобства и адекватности интерфейсов ввода/вывода;
- эффективности стратегии управления (порядка перебора, использование нечеткого вывода и др.);
- качества тестовых примеров;
- корректности базы знаний (полнота и непротиворечивость правил).
Внедрение и сопровождение
- Подготовка объекта автоматизации к вводу ЭС в действие.
- Подготовка персонала.
- Проведение испытаний.
- Передача ЭС в опытную и, далее, в постоянную (промышленную) эксплуатацию.
- Консультации пользователей.
- Устранение недостатков (ошибок).
- Корректировка и дополнение БЗ.