Экспертные системы
Современные экспертные системы (ЭС) широко используются для тиражирования опыта и знаний ведущих специалистов практически во всех сферах экономики. Это связано с тем, что экономика представляет собой сферу человеческой деятельности, в которой большая часть знаний является личным опытом специалистов (экспертов). А именно для таких областей и разрабатываются ЭС.
Экспертные системы (ЭС) — это класс интеллектуальных программных систем, способных решать задачи, для которых отсутствуют алгоритмы или же недоступна вся информация, необходимая, чтобы применить известные алгоритмы и методы решения.
Для работы экспертных систем необходим большой объем знаний. Совокупность знаний (надо чётко различать знаний и данные), обязательных и достаточных для работы ЭС при решении задач какого-либо класса, называется предметной областью. Знания одной предметной области связанные между собой; это могут быть описания различных объектов, процессов, явлений, а также отношений между ними.
Базы знаний отличаются от баз данных наличием встроенных механизмов логического вывода. Благодаря этому знания во время работы ЭС ведут себя активно: изменение тех или иных знаний может вызвать обращение к программам их обработки. Встроенные процедуры позволяют не только делать иными имеющиеся знания, но и получать из них новые. Таким образом, база знаний пополняется как знаниями, полученными от экспертов, так и знаниями, вырабатываемыми самой экспертной системой в процессе работы.
Очень важно, что в ЭС реализуются не одни механизмы логического вывода, опирающиеся на классическую логику (дедуктивные). В них используются и так называемые правдоподобные рассуждения(нечёткий вывод, основанный на нечёткой логике), и элементы рассуждений по аналогии и по ассоциации, которые человек обычно применяет при решении задач в условиях неопределённости.
В состав любой экспертной системы входят:
1) Инженер по знаниям – специалист по искусственному интеллекту, выступающий промежуточным звеном между экспертом и базой знаний.
2) База знаний – ядро ЭС, представляет собой совокупность знаний предметной области, записанная на машинный носитель.
3) Интерфейс ЭС – комплекс программных средств, реализующих диалог пользователя с ЭС.
4) Решатель – программа, моделирующая ход рассуждений эксперта на основании имеющихся знаний в БЗ.
5) Подсистема объяснений – программа, поясняющая полученный результат. Данная подсистема позволяет получать ответы на такие вопросы как: «Почему система приняло данное решение?», «Как было получено данное решение?».
6) Интеллектуальный редактор – программа, позволяющая инженеру по знаниям создавать и редактировать БЗ.
7) Пользователь, использующий ЭС в своей профессиональной деятельности.
Экспертные системы разделяются на следующие виды:
1. ЭС интерпретации данных, которые позволяют вникнуть и понять смысл имеющихся данных.
2. ЭС диагностики, которые позволяют обнаружить неисправности в некоторой системе.
3. ЭС мониторинга, задачей которых является непрерывная интерпретация данных в реальном масштабе времени и сигнализация об отклонение параметров за допустимые значения.
4. ЭС проектирования – позволяют создавать проекты объектов и моделей с заранее определенными свойствами.
5. ЭС прогнозирования, – позволяют составить прогноз возможных ситуаций с вероятностными оценками.
6. ЭС планирования – позволяют разработать план достижения требуемой цели.
7. ЭС обучения – позволяют настраивать на уровень любового обучающегося.
Для разработки ЭС используются следующие инструментальные средства, рассмотренные ниже.
Языки программирования. В эту группу инструментальных средств входят традиционные языки программирования (С, C++, Basic, Fortran и т.д.), ориентированные в основном на численные алгоритмы и слабо подходящие для работы с символьными и логическими данными. Поэтому создание систем искусственного интеллекта на основе этих языков требует большой работы программистов. Однако большим достоинством этих языков является высокая эффективность, связанная с их близостью к традиционной машинной архитектуре. Кроме того, использование традиционных языков программирования позволяет включать интеллектуальные подсистемы (например, интегрированные экспертные системы) в крупные программные комплексы общего назначения.
Языки искусственного интеллекта. Это прежде всего Лисп (LISP) и Пролог (Prolog) — наиболее распространенные языки, предназначенные для решения задач искусственного интеллекта. Универсальность этих языков меньшая, нежели традиционных языков, но ее потерю языки искусственного интеллекта компенсируют богатыми возможностями по работе с символьными и логическими данными.
Специальный программный инструментарий. В эту группу программных средств искусственного интеллекта входят специальные инструментарии общего назначения. Как правило, это библиотеки и надстройки над языком искусственного интеллекта Лисп: КЕЕ (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Representation Language), ARTS и др., позволяющие пользователям работать с заготовками экспертных систем на более высоком уровне, нежели это возможно в обычных языках искусственного интеллекта.
Оболочки. Под оболочками (shells) понимают "пустые" версии существующих экспертных систем, т.е. готовые экспертные системы без базы знаний. Достоинство оболочек в том, что они вообще не требуют работы программистов для создания готовой экспертной системы. Требуется только специалисты в предметной области для заполнения базы знаний.