Экспе́ртная систе́ма (ЭС, expert system) — компьютерная программа, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Современные ЭС начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление. Предтечи экспертных систем были предложены в 1832 году С. Н. Корсаковым, создавшим механические устройства, так называемые «интеллектуальные машины», позволявшие находить решения по заданным условиям, например определять наиболее подходящие лекарства по наблюдаемым у пациента симптомам заболевания
В информатике экспертные системы рассматриваются совместно с базами знаний как модели поведения экспертов в определенной области знаний с использованием процедур логического вывода и принятия решений, а базы знаний — как совокупность фактов и правил логического вывода в выбранной предметной области деятельности.
Похожие действия выполняет программа-мастер(wizard). Мастера применяются как в системных программах так и в прикладных для интерактивного общения с пользователем (например, при установке ПО). Главное отличие мастеров от ЭС — отсутствие базы знаний; все действия жестко запрограммированы. Это просто набор форм для заполнения пользователем.
Другие подобные программы — поисковые или справочные (энциклопедические) системы. По запросу пользователя они предоставляют наиболее подходящие (релевантные) разделы базы статей (представления об объектах областей знаний, их виртуальную модель)
представляет следующую структуру ЭС:
База знаний состоит из правил анализа информации от пользователя по конкретной проблеме. ЭС анализирует ситуацию и, в зависимости от направленности ЭС, дает рекомендации по разрешению проблемы.
Как правило, база знаний экспертная система содержит факты (статические сведения о предметной области) и правила — набор инструкций, применяя которые к известным фактам можно получать новые факты.
В рамках логической модели баз данных и базы знаний записываются на языке Пролог с помощью языка предикатов для описания фактов и правил логического вывода, выражающих правила определения понятий, для описания обобщенных и конкретных сведений, а также конкретных и обобщенных запросов к базам данных и базам знаний.
Конкретные и обобщенные запросы к базам знаний на языке Пролог записываются с помощью языка предикатов, выражающих правила логического вывода и определения понятий над процедурами логического вывода, имеющихся в базе знаний, выражающих обобщенные и конкретные сведения и знания в выбранной предметной области деятельности и сфере знаний.
Обычно факты в базе знаний описывают те явления, которые являются постоянными для данной предметной области. Характеристики, значения которых зависят от условий конкретной задачи, ЭС получает от пользователя в процессе работы, и сохраняет их в рабочей памяти. Например, в медицинской ЭС факт «У здорового человека 2 ноги» хранится в базе знаний, а факт «У пациента одна нога» — в рабочей памяти.
База знаний ЭС создается при помощи трех групп людей:
1. эксперты той проблемной области, к которой относятся задачи, решаемые ЭС;
2. инженеры по знаниям, являющиеся специалистами по разработке ИИС;
3. программисты, осуществляющие реализацию ЭС.
ЭС может функционировать в 2-х режимах.
1. Режим ввода знаний — в этом режиме эксперт с помощью инженера по знаниям посредством редактора базы знаний вводит известные ему сведения о предметной области в базу знаний ЭС.
2. Режим консультации — пользователь ведет диалог с ЭС, сообщая ей сведения о текущей задаче и получая рекомендации ЭС. Например, на основе сведений о физическом состоянии больного ЭС ставит диагноз в виде перечня заболеваний, наиболее вероятных при данных симптомах.
Классификация ЭС по решаемой задаче
Общепринятая классификация экспертных систем отсутствует, однако наиболее часто экспертные системы различают по назначению, предметной области, методам представления знаний, динамичности и сложности:
По назначению классификацию экспертных систем можно провести следующим образом:
По предметной области наибольшее количество экспертных систем используется в военном деле, геологии, инженерном деле, информатике, космической технике, математике, медицине, метеорологии, промышленности, сельском хозяйстве, управлении процессами, физике, филологии, химии, электронике, юриспруденции.
Классификация экспертных систем по методам представления знаний делит их на традиционные и гибридные. Традиционные экспертные системы используют, в основном, эмпирические модели представления знаний и исчисление предикатов первого порядка. Гибридные экспертные системы используют все доступные методы, в том числе оптимизационные алгоритмы и концепции баз данных.
По степени сложности экспертные системы делят на поверхностные и глубинные. Поверхностные экспертные системы представляют знания в виде правил «ЕСЛИ-ТО». Условием выводимости решения является безобрывность цепочки правил. Глубинные экспертные системы обладают способностью при обрыве цепочки правил определять (на основе метазнаний) какие действия следует предпринять для продолжения решения задачи. Кроме того, к сложным относятся предметные области в которых текст записи одного правила на естественном языке занимает более 1/3 страницы.
Классификация экспертных систем по динамичности делит экспертные системы на статические и динамические. Предметная область называется статической, если описывающие ее исходные данные не изменяются во времени. Статичность области означает неизменность описывающих ее исходных данных. При этом производные данные (выводимые из исходных) могут и появляться заново, и изменяться (не изменяя, однако, исходных данных).
Если исходные данные, описывающие предметную область, изменяются за время решения задачи, то предметную область называют динамической. В архитектуру динамической экспертной системы, по сравнению со статической, вводятся два компонента:
Последняя осуществляет связи с внешним миром через систему датчиков и контроллеров. Кроме того, традиционные компоненты статической экспертной системы (база знаний и механизм логического вывода) претерпевают существенные изменения, чтобы отразить временную логику происходящих в реальном мире событий.