Экспертные системы: концепция, архитектура и автоматизированное рабочее место эксперта
Экспертные системы являются частью широкого класса интеллектуальных прикладных систем, которые популярны сегодня в различных предметных областях деятельности. Чаще всего интеллектуальные системы применяются для решения сложных концептуальных задач, в которых основная сложность заключается в использовании слабо формализованных знаний специалистов – как теоретиков, так и практиков. Это, например: оценка ситуации в чрезвычайных техногенных происшествиях, интерпретация естественных языков с глубокими смысловыми пластами, постановка сложного диагноза в медицине, долгосрочные прогнозы в метеорологии и экономике и т.д. Интеллектуальные системы образовали обширный класс информационных систем, реализующих интеллектуальные технологии в бизнесе (Business Intelligence – BI). На рис. 12.6 показана общая схема такой системы.
Способность выполнить экспертный анализ – это не только вопрос наличия определенных знаний и уровня квалификации специалиста. Для этого нужно обладать и очень специфическими навыками, интуицией и умением разобраться в конкретной ситуации в данной предметной области. Формализовать все это, перенести на уровень исполняемой логики и реализовать программными средствами – сложная и многоаспектная задача. В последнее время она решается на базе методов искусственного интеллекта (Artificial Intelligence – AI) и создания самообучающихся систем. Исследования в этой области сконцентрированы на разработке и внедрении сложных компьютерных комплексов, способных эмулировать (имитировать, воспроизводить) те области деятельности человека, которые требуют мышления, интуиции, определенного мастерства и накопленного опыта. К ним относятся такие задачи, как принятие решений, распознавание образов и понимание человеческого языка и многие другие.
Рис. 12.6. Общая схема интеллектуальной информационной системы
Самообучающиеся информационные системы – это класс систем, архитектура которых аналогична структуре нервной ткани, состоящей из нейронов. На нейроны самого нижнего слоя подаются значения входных параметров, на основе которых нужно принимать какие-то решения, прогнозировать развитие ситуации и т.д. Эти значения рассматриваются как сигналы, передающиеся в следующий слой, ослабевая или усиливаясь в зависимости от числовых значений (весов), приписываемых межнейронным связям. В результате на выходе нейрона самого верхнего слоя вырабатывается некоторое значение, которое рассматривается как ответ – реакция всей сети на введенные значения входных параметров.
Чтобы сеть можно было применять в дальнейшем, ее прежде надо "натренировать" на полученных ранее данных, для которых известны и значения входных параметров, и правильные ответы на них (рис. 12.7). Тренировка состоит в подборе весов межнейронных связей, обеспечивающих наибольшую близость ответов сети к известным правильным ответам. Примеры используемых нейросетевых систем – BrainMaker (CSS), NeuroShell (Ward Systems Group), OWL (HyperLogic).
Puc. 12.7. Схема самообучающейся информационной подсистемы
Экспертная система – это сложный программный комплекс, который аккумулирует знания специалистов в конкретных предметных областях и оперирует ими с целью выработки рекомендаций или решения проблем. В некоторых случаях экспертная система может полностью взять на себя функции, выполнение которых обычно требует привлечения опыта человека-эксперта, или играть роль ассистента для человека, принимающего решение [1].
Экспертная система отличается от прочих прикладных программ наличием следующих признаков [256bit. ru/Expert/].
• Моделирует не столько физическую (или иную) природу определенной проблемной области, сколько механизм мышления человека применительно к решению задач в этой проблемной области. Это существенно отличает экспертные системы от систем математического моделирования или компьютерной анимации. Нельзя, конечно, сказать, что программа полностью воспроизводит модель поведения специалиста в этой предметной области (эксперта), но важно, что основное внимание все-таки уделяется воспроизведению компьютерными средствами методики решения проблем, которая применяется экспертом.
• Система, помимо выполнения вычислительных операций, формирует определенные соображения и выводы, основываясь на тех знаниях, которыми она располагает. Знания в системе представлены, как правило, на некото – ром специальном языке и хранятся отдельно от программного кода, который и формирует выводы и умозаключения. Этот компонент программы принято называть базой знаний.
• При решении задач основными являются эвристические и приближенные методы, которые в отличие от алгоритмических не всегда гарантируют успех. Эвристика, по существу, является правилом влияния (Rule of Thumb), которое в машинном виде представляет некоторое знание, приобретенное человеком по мере накопления практического опыта решения аналогичных проблем. Такие методы являются приблизительными в том смысле, что, во-первых, они не требуют исчерпывающей исходной информации и, во-вторых, характеризуются определенной степенью уверенности (или неуверенности) в том, что предлагаемое решение является верным.
Класс экспертных систем образует несколько тысяч различных программных продуктов, предназначенных для работы в достаточно узких профессиональных предметных областях, поэтому классификации таких систем могут быть достаточно разнообразными. На рис. 12.8 показана одна из возможных общих классификаций.
Рис. 12.8. Классификация экспертных систем
Структура экспертной системы, помимо программных и коммуникационных средств, включает, как правило, специалистов – инженера по знаниям и эксперта, которые проверяют и дополняют заключение, сформированное экспертной системой (рис. 12.9 и 12.10).
Рис. 12.9. Структура экспертной системы
Рис. 12.10. Общая схема экспертной информационной подсистемы
Ответ может быть известен заранее по результатам отзывов специалистов-экспертов. Этот ответ сопоставляется с ответом системы, после чего параметры изменяются и проводится второй "прогон". В результате выдается экспертное заключение с вероятностной оценкой его надежности. Интерфейс допускает работу сразу нескольких пользователей.
Экспертные системы широко применяются в бизнесе и часто работают независимо: они могут работать в виде веб-сервисов в портальных решениях крупных консалтинговых компаний, но могут включаться и в виде подсистем в корпоративные информационные системы и локальные сети. Как правило, они являются узкоспециализированными – транспортными, медицинскими, банковскими, торговыми, юридическими и т.д.
Рабочее место инженера знаний и эксперта представляет собой выделенное автоматизированное рабочее место в составе программно-аппаратной реализации экспертной системы. В общем случае автоматизированное рабочее место (АРМ, Workstation) – это компьютеризированное и механизированное рабочее место оператора, диспетчера, конструктора, технолога и др., оснащенное средствами для автоматизации процессов переработки и отображения информации, необходимой для выполнения задания в заданной предметной области.
Существует ряд общих требований к АРМ, которые должны обеспечиваться при его создании, а именно [ fooder.ru/page2/arm_main.html]:
• наличие средств обработки информации;
• возможность работы в диалоговом (интерактивном) режиме;
• выполнение основных требований эргономики: рациональное распределение функций между оператором, элементами комплекса АРМ и окружающей средой, создание комфортных условий работы, удобство конструкций АРМ, учет психологических факторов человека-оператора, привлекательность форм и цвета элементов АРМ и др.;
• достаточно высокая производительность и надежность ПК, работающего в системе АРМ;
• адекватное характеру решаемых задач программное обеспечение;
• максимальная степень автоматизации рутинных процессов;
• оптимальные условия для самообслуживания специалистов как операторов АРМ;
• другие факторы, обеспечивающие максимальную комфортность и удовлетворенность специалиста использованием АРМ как рабочего инструмента.
В состав АРМ обязательно входят различные программные компоненты, обеспечивающие основные расчетные функции и организацию диалога, а также система управления базой данных, трансляторы, справочные системы, базы данных предметных областей и база метаданных, содержащая, например, описания данных, сценарии диалогов, инструкции, управляющие параметры, перечни ошибок и др.
АРМ экспертной системы относится к классу интеллектуальных АРМ и полностью отвечает этим требованиям и объединяет программно-аппаратные средства, обеспечивающие взаимодействие инженера и эксперта с компьютером, предоставляет возможность ввода информации (через клавиатуру, сканер и пр.), обработку, анализ и вывод результатов в требуемой форме на экран монитора, принтер, графопостроитель или иные устройства вывода. Отличительная особенность АРМ некоторых экспертных систем – это подключение модулей Data Mining, способных осуществлять поиск нетривиальной информации и формировать в режиме реального времени виртуальные базы данных, необходимые для создания конкретного экспертного заключения.