Keywords: expert system, structure expert system, classification of expert systems.
Экспертная система (ЭС, англ.expertsystem) — компьютерная система, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Современные экспертные системы взяли свое начало в 1970-х годах с трудов исследователей искусственного интеллекта, а в 1980-х получили коммерческое подкрепление. Первые подобия экспертных систем были предложены в 1832 году С. Н. Корсаковым, создавшим механические устройства, так называемые «интеллектуальные машины», позволявшие отыскать решения по некоторым условиям. Примером такой системы является система, позволяющая подбирать необходимые медицинские препараты по симптомам заболевания пациента.
В сфере информационных технологий экспертные системы рассматриваются в совокупности с базами знаний как модели поведения экспертов в определенной области знаний с использованием процедур логического вывода и принятия решений, а базы знаний — как совокупность фактов и правил логического вывода в выбранной предметной области деятельности.
Подобные задачи выполняет программный продукт, называемый «Мастер» (англ. Wizard). Мастера применяются в прикладных и системных программах для упрощения интерактивного общения с пользователем. Основным отличием данных программ — это отсутствие базы знаний — все действия запрограммированы.
Другие подобные программы — поисковые или справочные (энциклопедические) системы. Они предоставляют релевантные, т. е. подходящие запросу пользователя, разделы базы статей.
В настоящее время «классическая» концепция экспертных систем 70–80 годов переживает серьезный кризис, связанный с её сильной ориентацией на текстовый человеко-машинный интерфейс, почти полностью вытесненный графическим интерфейсом (GUI). Помимо этого, «классическая» концепция экспертных систем плохо согласуется с реляционной моделью данных, что создает сложности в работе с современными промышленными системами управления базами данных (СУБД). Время от времени энтузиастами предпринимаются попытки объединить «классический» и современный подход к построению пользовательского интерфейса, но они не находят поддержки среди крупных компаний-производителей.
Структура ЭС
В состав ЭС входят следующие элементы:
‒ Интерфейс пользователя
‒ Пользователь
‒ Интеллектуальный редактор базы знаний
‒ Эксперт
‒ Инженер по знаниям
‒ Рабочая (оперативная) память
‒ База знаний
‒ Решатель (механизм вывода)
‒ Подсистема объяснений
База знаний содержит в себе правила анализа информации по проблеме, полученной от пользователя. ЭС анализирует эту информацию и дает рекомендации по разрешению конкретной проблемы.
База знаний состоит из двух составляющих:
факты — статические сведения о предметной области;
правила — набор инструкций, который позволяет выводить новые факты, исходя из уже известных.
В рамках логической модели базы знаний формируются на языке Пролог с помощью предикатов для описания фактов и правил логического вывода.
Обычно факты в базе знаний описывают те явления, которые являются постоянными для данной предметной области. Данные, зависящие от условий конкретной задачи, ЭС получает от пользователя в процессе работы и сохраняет в рабочей памяти.
База знаний ЭС создается при помощи трех групп людей:
- эксперты той проблемной области, к которой относятся задачи, решаемые ЭС;
- инженеры по знаниям, являющиеся специалистами по разработке ИИС;
- программисты, осуществляющие реализацию ЭС.
Режимы функционирования
ЭС может функционировать в 2-х режимах:
- Режим ввода знаний — эксперт с помощью инженера по знаниям вводит сведения о предметной области посредством редактора базы знаний.
- Режим консультации — пользователь ведет диалог с ЭС, сообщая ей о текущей задаче, и получает рекомендации.
Классификация ЭС
По решаемой задаче:
‒ Интерпретация данных;
‒ Диагностирование;
‒ Мониторинг;
‒ Проектирование;
‒ Прогнозирование;
‒ Сводное планирование;
‒ Оптимизация;
‒ Обучение;
‒ Управление;
‒ Ремонт;
‒ Отладка.
По связи среальным временем:
Статические — решающие задачи в условиях, не изменяющихся во времени исходных данных и знаний.
Квазидинамические — интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени.
Динамические — решающие задачи в условиях изменяющихся во времени исходных данных и знаний.
Этапы разработки ЭС
‒ Этап идентификации проблем — определяются задачи, которые подлежат решению, выявляются цели разработки, определяются эксперты и типы пользователей.
‒ Этап извлечения знаний — проводится содержательный анализ проблемной области, выявляются используемые понятия и их взаимосвязи, определяются методы решения задач.
‒ Этап структурирования знаний — выбираются ИС и определяются способы представления всех видов знаний, формализуются основные понятия, определяются способы интерпретации знаний, моделируется работа системы, оценивается адекватность целям системы зафиксированных понятий, методов решений, средств представления и манипулирования знаниями.
‒ Этап формализации — осуществляется наполнение экспертом базы знаний. В связи с тем, что основой ЭС являются знания, данный этап является наиболее важным и наиболее трудоемким этапом разработки ЭС. Процесс приобретения знаний разделяют на извлечение знаний из эксперта, организацию знаний, обеспечивающую эффективную работу системы, и представление знаний в виде, понятном ЭС. Процесс приобретения знаний осуществляется инженером по знаниям на основе анализа деятельности эксперта по решению реальных задач.
‒ Реализация ЭС — создается один или несколько прототипов ЭС, решающие требуемые задачи.
‒ Этап тестирования — производится оценка выбранного способа представления знаний в ЭС в целом.
Наиболее известные ЭС
CLIPS — весьма популярная оболочка для построения ЭС. CLIPS является продукционной системой. Реализация вывода использует алгоритм Rete. CLIPS является одной из наиболее широко используемых инструментальных сред для разработки экспертных систем благодаря своей скорости, эффективности и бесплатности.CLIPS разработан для применения в качестве языка прямогологического вывода(forward chaining) и в своей оригинальной версии не поддерживает обратного вывода (backward chaining). Как и другие экспертные системы, CLIPS имеет дело с правилами и фактами.
OpenCyc — мощная динамическая ЭС с глобальной онтологической моделью и поддержкой независимых контекстов. OpenCyc является сокращенным открытый вариантомбазы знаний Cyc. В БД OpenCyc содержится 47000 понятий и 300000 фактов.
WolframAlpha — база знаний и набор вычислительных алгоритмов, интеллектуальный «вычислительный движок знаний». Wolfram Alpha вычисляет ответы на большое количество разнообразных вопросов. Для подбора ответов механизм использует встроенные модели из разных областей знаний, заполненные данными и алгоритмами, которые и представляют собой реальные познания.
MYCIN — наиболее известная диагностическая система, которая предназначена для диагностики и наблюдения за состоянием больного при менингите и бактериальных инфекциях. Также Mycin использовалась для диагностики заболеваний свертываемости крови. MYCIN оперировала с помощью довольно простоймашины вывода, и базы знаний из ~600 правил.
HASP/SIAP — интерпретирующая система, которая определяет местоположение и типы судов в Тихом океане по данным акустических систем слежения. Данные имеют вид сонограмм, являющихся аналоговыми записями спектров принятой датчиками звуковой энергии. Для их интерпретации система применяет знания о характерных особенностях сонограмм различных типов кораблей.
Акинатор — интернет-игра. Игрок должен загадать любого персонажа, а Акинатор должен его отгадать, задавая вопросы. База знаний автоматически пополняется, поэтому программа может отгадать практически любого известного персонажа. На каждом вопросе Акинатор пытается выбрать такой вопрос, который отсеет наибольшее количество вариантов. Каждый раз после вашего ответа у Акинатора «в голове» остаётся список персонажей, которые соответствуют вашим ответам.
IBMWatson — суперкомпьютер фирмы IBM, способный понимать вопросы, сформулированные на естественном языке, и находить на них ответы в базе данных. В первую очередь Watson стали учить медицине, а конкретно, онкологии. Архитектура Watson такова, что позволяет осуществлять параллельные и распределенные вычисления, т. е. сразу работать с множеством задач в параллельном режиме. Watson способен работать с супербольшими данными, т. е. структурированной и неструктурированной информацией.
Вывод
В настоящее время экспертные системы используются во многих областях нашей жизни: банковское дело, бухгалтерский учет, медицинские обследования и т. д. Но использование экспертных систем неоднозначно. Наряду с тем, что они облегчают работу, при неумелом и не спланированном использовании экспертные системы могут только усложнить ситуацию. Это обусловлено тем, что универсальная экспертная система, не включающая в себя спецификации определенных компаний, не может дать гарантированно правильный ответ.
Несмотря на некоторые недостатки, за экспертными системами будущее. Постоянное совершенствование подобных систем неизбежно приведет к активному их использованию во всех сферах человеческой жизни. Конечно, компьютер не сможет полностью заменить человека, потому что только человек способен находить творческие, нестандартные решения, но сможет сильно облегчить работу эксперта.
Литература:
- Сложносистемное мышление: Материя, разум, человечество. Майнцер, Клаус. Серия:Синергетика: от прошлого к будущему
- 2009 г.; Изд-во: М.: Книжный дом «Либроком»
- Интеллектуальные системы управления организационно-техническими системами. Антамошин, А.Н.; Близнова, О.В.; Большаков, А.А. и др. 2016 г.; Изд-во: М.: Горячая линия — Телеком.
- Принятие решений. Интегрированные интеллектуальные системы. Арсеньев, Ю.Н.; Шелобаев, С.И.; Давыдова, Т.Ю. 2003 г.; Изд-во: М.: Юнити-Дана
- Искусственный интеллект. Стратегии и методы решения сложных проблем. Люгер, Джордж Ф. 2003 г.; Изд-во: М.: Вильямс.
- Масленникова, О.Е.; Попова, И. В. Основы искусственного интеллекта. 2008 г.; Изд-во: Магнитогорск: Магнитогорский государственный университет