- •Введение в экспертные системы
- •1.Что такое экспертная система?
- •2.Экспертные системы как один из видов программ искусственного интеллекта
- •3. Ориентированный на человека диалог
- •4. Структура экспертных систем
- •5. Представление знаний
- •6. Методы вывода
- •7. Система пользовательского интерфейса
- •8. Экспертные системы, базирующиеся на правилах
- •9. Рекомендации по разработке экспертных систем
- •10. База знаний для определения вида животного
- •11. Проектирование и реализация системы, базирующейся на правилах
- •12. Варианты заданий
3. Ориентированный на человека диалог
Экспертные системы, как правило, работают в интерактивном (диалоговом) режиме, т.е. обмениваются информацией и выводами с пользователем в форме диалога. Интеллектуальная программа может принимать вводимые данные в свободной форме - в виде простых предложений на английском языке. Считается, что такая программа ведет диалог на естественном языке: она осуществляет общение, подобное коммуникации на естественном языке.
В исследованиях по ИИ системы на естественном языке подвергались интенсивному изучению. Это сложная проблема. Очень трудно заставить машину понимать не ограниченную никакими условиями речь на естественном языке. Фактически в настоящее время никто не знает ее практического решения. Однако подобная технология находит некоторое применение. Если мы определим темы, на которые будем разговаривать с компьютером, условимся обмениваться данными только в форме простых предложений и ограничим структуру таких предложений до нескольких несложных конструкций, задача окажется выполнимой.
Способность восприятия на естественном языке не является необходимой для процессов рассуждения, составляющих ядро большинства ЭС. Но экспертные системы столь часто имеют это свойство, что оно почти всегда входит как составная часть в определение ЭС.
Чтобы машинный диалог был интеллектуальным, он должен обладать некоторыми другими свойствами. Например, когда ЭС вовлекает пользователя в диалог для получения базовой информации, задаваемые ему вопросы должны соответствовать скорее ситуации, чем одному из вариантов вопроса из проверочного списка. Пролог предлагает ряд несложных методов программирования, которые гарантируют соответствие задаваемых вопросов реальной ситуации.
Отметим еще один необходимый атрибут диалога. Когда выдается какое-то заключение или задается вопрос, пользователь имеет право спросить: "Как получено такое решение?" или "Зачем это нужно знать?". Система должна быть способна ответить на подобные вопросы таким образом, чтобы создавалось впечатление интеллектуального характера рассуждений. В зависимости от того, насколько хорошо справится система со своей задачей, пользователь поверит или не поверит тому, что говорит компьютер.
Итак, характерные черты ориентированного на пользователя диалога:
1) способность программы понимать предложения на естественном (английском, русском и т.п.) языке, заданные в свободной форме;
2) способность программы задавать вопросы, соответствующие ситуации;
3) способность программы по запросу объяснять свои заключения.
4. Структура экспертных систем
Чтобы проводить эспертизу, компьютерная программа, претендующая на роль эксперта, должна быть способной решать задачи посредством логического вывода и получать при этом достаточно надежные результаты. Программа должна иметь доступ к системе фактов, называемой базой знаний. Во время консультации программа должна выводить заключения из информации, имеющейся в базе знаний. Ряд экспертных систем обязан уметь использовать ту информацию, которая возникает уже в ходе консультации. Таким образом, экспертную систему можно представить состоящей из трех частей:
База знаний (БЗ).
Механизм вывода (MB).
Система пользовательского интерфейса (СПИ). Взаимное расположение этих трех частей показано на рис. 2.
Рис. 2. Общая структура экспертной системы.
База знаний - центральная часть экспертной системы. Она содержит правила, описывающие явления и взаимосвязи между ними, методы и знания для решения задач из области применения системы. Базу знаний можно представлять состоящей из фактических знаний и знаний, которые используются для вывода других знаний. Утверждение "Джон Ф. Кеннеди был 35-м президентом Соединенных Штатов" - пример фактических знаний. "Если у вас болит голова, то примите две таблетки цитрамона" - пример знания для вывода. Сама база знаний обычно располагается на диске или другом носителе.
Механизм вывода содержит принципы и правила работы. Механизм вывода "знает", как использовать базу знаний так, чтобы можно было получать разумно согласующиеся заключения (выводы) из информации, находящейся в ней.
Когда экспертной системе задан вопрос, механизм вывода выбирает способ применения правил базы знаний для решения задачи, поставленной в вопросе. Фактически механизм вывода запускает экспертную систему в работу, определяя, какие правила базы знаний нужно вызвать и организовать к ним доступ. Механизм вывода выполняет правила, определяет, когда найдено приемлемое решение, и передает результаты программе интерфейса с пользователем. Если вопрос требует предварительной обработки, то доступ к базе знаний осуществляется через интерфейс с пользователем. Интерфейс - это часть экспертной системы, которая взаимодействует с пользователем.
Как правило, пользователи имеют смутное представление об организации базы знаний, и поэтому интерфейс призван помочь им в работе с экспертной системой, даже если они не знают, как она организована. Интерфейс может также дать объяснение пользователю, каким образом экспертная система выводит результат.
Система интерфейса с пользователем принимает информацию от пользователя и передает ему информацию. Другими словами, система интерфейса должна убедиться, что после того как пользователь описал задачу, вся необходимая информация получена. Интерфейс, основываясь на виде и природе информации, введенной пользователем, передает необходимую информацию механизму вывода. Когда механизм вывода возвращает знания, выведенные из базы знаний, интерфейс передает их обратно пользователю в удобной форме. Интерфейс с пользователем и механизм вывода могут рассматриваться как "приложение" к базе знаний. Они совместно составляют оболочку экспертной системы (см. рис. 2). Для базы знаний, которая содержит обширную и разнообразную информацию, могут быть разработаны и реализованы несколько разных оболочек. Хорошо разработанные оболочки экспертных систем обычно содержат механизм для добавления и обновления информации в базе знаний.
Как видим, экспертная система состоит из трех основных частей. Взаимосвязь между частями может быть сложной, зависящей от природы и организации знаний, а также от методов и целей вывода. Следующие разделы описывают эти аспекты экспертных систем. Сначала описывается представление знаний вместе с некоторыми простыми примерами. Затем рассматриваются методы вывода. Далее следует описание систем интерфейса с пользователем вместе с примерами обработки ввода и вывода. После этого предполагается, что читатель готов к рассмотрению конкретных методик проектирования экспертных систем: систем, базирующихся на правилах.
