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