Характеристика экспертных систем
Экспертные системы (ЭС), или инженерия знаний - самостоятельное направление в рамках исследований по искусственному интеллекту, представляющее собой сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях н тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей.
Огромный интерес к ЭС со стороны пользователей вызван, по крайней мере, тремя причинами.
- Во-первых, они ориентированы на решение широкого круга задач в неформализованных областях, на приложения, которые до недавнего времени считались малодоступными для вычислительной техники.
- Во- вторых, с помощью ЭС специалисты, не знающие программирования, могут самостоятельно разрабатывать интересующие их приложения, что позволяет резко расширить сферу использования вычислительной техники.
- В-третьих, ЭС при решении практических задач достигают результатов, не уступающих, а иногда и превосходящих возможности людей-экспертов, не оснащенных ЭС.
Что дают пользователю экспертные системы? Во многих видах человеческой деятельности используемые знания далеко не всегда могут быть четко формализованы. Наряду со знаниями как бы отделенными, отобранными у специалистов (они зафиксированы в учебниках, инструкциях, учебных фильмах и т.п.), существуют так называемые навыки и умения, овладеть которыми можно, только работая вместе с теми, кто уже овладел ими.
Профессионал высокого уровня отличается от новичка, овладевшего знаниями в объеме учебных программ института или университета, именно этими навыками и умениями. Повышение профессионального мастерства — огромная социальная задача. Чтобы ее решить, надо научиться извлекать из профессионалов-экспертов те знания, которые не зафиксированы в форме, пригодной для массового распространения — в книгах, кинофильмах, наглядных пособиях. ЭС должны хранить в себе знания профессионалов-экспертов, в некоторой предметной области, и передавать их тем, у кого таких знаний нет. Для этого в экспертной системе предусмотрены не только простые средства общения между системой и специалистами, но и средства доведения хранимых в системе знаний до специалиста вместе с необходимыми пояснениями и разъяснениями.
Традиционно знания существуют в двух видах - коллективный опыт и личный опыт.
Если большая часть знаний в предметной области представлена в виде коллективного опыта (например, высшая математика), эта предметная область не нуждается в экспертных системах.
Если в предметной области большая часть знаний является личным опытом специалистов высокого уровня (экспертов), если эти знания по каким-либо причинам слабо структурированы, такая предметная область, скорее всего, нуждается в экспертной системе.
Главная идея использования технологии экспертных систем заключается в том, чтобы получить от эксперта его знания и, загрузив их в память компьютера, использовать всякий раз, когда в этом возникнет необходимость. Это не гарантирует получения оптимального результата с такой же уверенностью, как обычные алгоритмы, используемые для решения задач в рамках технологии поддержки принятия решений. Однако часто получают в достаточной степени приемлемые решения для их практического использования. Это делает возможным использовать технологию экспертных систем в качестве советующих систем.
Экспертные системы дают возможность менеджеру или специалисту получать консультации экспертов по любым проблемам, о которых этими системами накоплены знания.
Рисунок 1 - Предметная область, не пригодная для создания экспертной системы
Рисунок 2 - Предметная область, пригодная для создания экспертной системы
И еще один класс систем, не имеющих собственного названия и часто называемых экспертными. Они рассчитаны не на пользователя, являющегося новичком или средним специалистом в некоторой области деятельности, а на самих экспертов-специалистов, которым нужна не консультирующая или советующая система, а система, способная помочь им в научной работе. Системы такого рода называют системами автоматизации научных исследований (АСНИ).
4.1 Основные понятия и определения
Обобщенная структура экспертной системы представлена на рисунке. Реальные экспертные системы могут иметь более сложную структуру, однако блоки, изображенные на рисунке 3, непременно присутствуют в любой действительно экспертной системе.
Рисунок 3- Структура экспертной системы
Определим основные термины.
Пользователь- специалист предметной области, для которого предназначена система, Обычно его квалификация недостаточно высока, и поэтому он нуждается в помощи и поддержке своей деятельности со стороны ЭС.
Инженер по знаниям - специалист по искусственному интеллекту, выступающий в роли промежуточного буфера между экспертом и базой знаний. Синонимы: когнитолог, инженер-интерпретатор, аналитик.
Интерфейс пользователя - комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и получения результатов.
База знаний (БЗ) - ядро ЭС, совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому "человеческому" представлению существует БЗ во внутреннем "машинном" представлении.
Решатель- программа, моделирующая ход рассуждения эксперта на основании знаний, имеющихся в БЗ. Синонимы: дедуктивная машина, блок логического вывода.
Подсистема объяснений - программа, позволяющая пользователю получить ответы на вопросы; "Как была получена та или иная рекомендация?" и "Почему система приняла такое решение?" Ответ на вопрос "как" - это трассировка всего процесса получения решения с указанием использованных фрагментов БЗ, т.е. всех шагов цепи умозаключений. Ответ на вопрос "почему"- ссылка на умозаключение, непосредственно предшествовавшее полученному решению, т.е. отход на один шаг назад.
Интеллектуальный редактор БЗ- программа, представляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме- Включает в себя систему вложенных меню, шаблонов языка представления знаний, подсказок ("help" - режим) и других сервисных средств, облегчающих работу с базой.
В коллектив разработчиков ЭС входят как минимум четыре человека:
- эксперт в той проблемной области, задачи которой будет решать ЭС;
- инженер по знаниям— специалист по разработке ЭС;
- программист- специалист по разработке инструментальных средств (ИС).;
- пользователь.
Возглавляет коллектив инженер по знаниям, это ключевая фигура при разработке систем, основанных на знаниях. Необходимо отметить, что отсутствие среди участников разработки инженера по знаниям (т.е. его замена программистом) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его. Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введения в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС. Осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области. Определяет способ того представления знаний в этом ИС, которое выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает ИС, содержащее в пределе все основные компоненты ЭС, осуществляет сопряжение ИС с той средой, в которой оно будет использовано.