Московский государственный открытый университет им. В.С. Черномырдина
Опубликован: 21.01.2011 | Доступ: свободный | Студентов: 976 / 254 | Оценка: 3.86 / 3.63 | Длительность: 14:33:00
Специальности: Разработчик аппаратуры
Лекция 3:

Экспертные системы в технологии как класс интеллектуальных систем

< Лекция 2 || Лекция 3: 12 || Лекция 4 >
Аннотация: Даются общая характеристика, структура и режимы использования экспертных систем. Показана организация знаний в экспертных системах.
Ключевые слова: экспертная система, особенности экспертной системы, пользователь, предметной области, функция, человеко-машинная система, интерфейс, база знаний, сценарий, правила, тупик, путь, запрос, ПО, база данных, точность, класс, активность, совместная работа, диагностика, имитационное моделирование, деятельность, ПРОЛОГ, работ, конечный пользователь, типы задач, решатель, БД, БЗ, компонент приобретения знаний, диалоговый компонент, СУБД, очередь, объяснительный компонент, доверие, режим консультации, режим использования ЭС, интерпретатор, информация, коэффициент уверенности ЭС, поиск, оптимальное решение задачи, эвристический метод, программа, принятия решений, диспетчер, значение, язык программирования, Lisp, язык высокого уровня, семантические сети, фрейм, представление, ветвление, норма, исключение, сеть

Дается разъяснение конкретных путей, которые существуют в настоящее время для повышения интеллектуальности систем проектирования в любой из отраслей производства промышленной продукции и пояснении роли ЭС в современном проектировании.

3.1. Особенности экспертных систем

Экспертная система - наиболее известный и распространенный вид интеллектуальных систем. Хотя этот термин употребляется весьма широко, но его точного определения пока нет. Можно лишь указать ряд особенностей, которые присущи только экспертным системам.

Первая особенность экспертных систем состоит в том, что они предназначены для пользователей, сфера деятельности которых далека от искусственного интеллекта, программирования, математики, логики. Для таких пользователей экспертная система выступает как некая система, помогающая им в повседневной работе. Общение с экспертными системами, работа с ними должны быть так же просты, как просты, например, управление телевизором, стиральной машиной или автомобилем.

Что же дают пользователю экспертные системы? Во многих видах человеческой деятельности используемые знания далеко не всегда могут быть четко формализованы. Точнее, наряду со знаниями как бы отделенными, отобранными у специалистов (они зафиксированы в учебниках, инструкциях, учебных фильмах и т. п.), существуют так называемые профессиональные навыки и умения, овладеть которыми можно, только работая вместе с тем, кто уже овладел ими.

Само название этих систем указывает на то, что они должны хранить в себе знания профессионалов-экспертов в некоторой предметной области .И не просто хранить, но и передавать их тем, у кого таких знаний нет. Для этого в экспертной системе предусмотрены не только простые средства общения между системой и специалистами, но и средства доведения хранимых в системе знаний до специалиста вместе с необходимыми пояснениями и разъяснениями. В этом заключается третья особенность экспертных систем. Ни в каких других интеллектуальных системах, кроме систем, предназначенных для обучения, объяснительная функция (т. е. способность давать при необходимости пояснения и разъяснения) не встречается.

Экспертная система является типичной человеко-машинной системой, поэтому в ее состав должен быть включен блок, названный "интеллектуальный интерфейс". Его задача - обеспечить диалог с пользователем на привычном ему языке. В состав интеллектуального интерфейса могут входить средства визуализации, с помощью которых на экране дисплея формируются необходимые образы, используемые в процессе общения пользователя с системой (чертежи, схемы, рисунки и т. п.). Общение с пользователем происходит в режиме "вопрос-ответ", причем вопросы могут задавать как пользователь, так и система.

Поддерживать диалог с пользователем экспертной системе помогает схема управления диалогом. Она хранится в логическом блоке, и именно он осуществляет все необходимые манипуляции с репликами пользователя, информацией из базы знаний и выдаваемыми ответными репликами.

Специфическим именно для экспертных систем является наличие блока объяснений. Дело в том, что после консультации с экспертной системой решение, полученное пользователем, может показаться ему либо неприемлемым, либо не лучшим. Происходит это потому, что часть рассуждений экспертная система делает самостоятельно, используя свой сценарий и те знания, которыми она располагает. Пользователю же кажется, что в логике получения решения имеются "провалы", "перескоки", не обоснованные шагами диалога.

Во всех подобных случаях пользователь может обратиться к блоку объяснений. Последний на вопрос: "Как получилось именно это решение?" - дает все необходимые объяснения, используя информацию, которая в процессе выработки решения накапливается в логическом блоке. Как правило, сценарий предусматривает несколько путей; среди них возможны тупиковые пути, не ведущие к нужной цели. Оказавшись на дороге в тупик, система может автоматически вернуться к той "развилке", где она сделала неверный выбор. Неудачные попытки в памяти логического блока не сохраняются, и в результате к концу поиска решения в нем запоминается лишь результативный путь - трек, ведущий от начальной ситуации к решению. Этот трек и используется блоком объяснения для ответа на запрос пользователя.

На практике экспертные системы используются, прежде всего, как системы-советчики в тех ситуациях, где специалист сомневается в выборе правильного решения. Экспертные знания, хранящиеся в памяти системы, более глубокие и полные, чем соответствующие знания пользователя. При работе в оперативном режиме, когда времени для обдумывания и выбора решений у человека очень мало (например, при возникновении аварийной ситуации в энергосистеме или в летящем самолете), неправильное решение принимается не потому, что человек не смог найти лучшего, а в силу его психических особенностей. Стресс приводит к тому, что даже очевидные решения бывает найти не так-то просто. В этих случаях можно использовать системы-подсказчики. По сложившейся ситуации такая система начинает давать советы в темпе, достаточном для того, чтобы человек на них прореагировал.

Системы оперативного управления могут обладать и меньшими знаниями (хранящимися в базе данных ), чем специалист, работающий в паре с системой. Но зато быстрота и точность реакции системы значительно выше, чем у человека.

Есть и еще один класс систем, не имеющих собственного названия и поэтому часто называемых экспертными. В отличие от классических экспертных систем они рассчитаны не на пользователя, являющегося новичком или средним специалистом в некоторой области деятельности, а на самих экспертов-профессионалов. Для таких специалистов нужна не консультирующая или советующая система, а система, способная помочь им в научной работе. Системы такого рода называют системами автоматизации научных исследований. Примером могут быть системы, способные на основании частных знаний эксперта обнаружить в эмпирическом материале скрытые связи и закономерности.

Специалисты собирают априорные знания о влиянии структуры соединения на биологическую активность. Эти знания закладываются в базу знаний ,и система на новом материале пытается обобщить их в виде закономерности. Найденные зависимости выдаются специалисту, который пытается их осознать и интерпретировать. Свои новые соображения он вводит в систему, и совместная работа продолжается.

При создании экспертных систем наиболее трудоемким этапом является заполнение базы знаний сведениями, нужными для функционирования будущей системы. Эту работу выполняет особый специалист - инженер по знаниям.

Исходя из вышеизложенного, рассмотрим одно из наиболее устойчиво используемых в специальной литературе определений экспертной системы.

Экспертной системой называют вычислительную систему использования знаний эксперта и процедур логического вывода для решения проблем, которые требуют проведения экспертизы и позволяют дать объяснение полученным результатам.

ЭС обладает способностями к накоплению знаний, выдаче рекомендаций и объяснению полученных результатов, возможностями модификации правил, подсказки пропущенных экспертом условий, управления целью или данными. ЭС отличают следующие характеристики:

  • интеллектуальность;
  • простота общения с компьютером;
  • возможность наращивания модулей;
  • интеграция неоднородных данных;
  • способность разрешения многокритериальных задач при учете предпочтений лиц, принимающих решения (ЛПР);
  • работа в реальном времени;
  • документальность;
  • конфиденциальность;
  • унифицированная форма знаний;
  • независимость механизма логического вывода;
  • способность объяснения результатов.

В настоящее время можно выделить следующие основные сферы применения ЭС: диагностика, планирование, имитационное моделирование, предпроектное обследование предприятий, офисная деятельность, а также некоторые другие.

В ЭС часто отсутствует возможность общения с системой на близком к естественному языке либо с использованием визуальных средств, поскольку взаимодействие с такой системой осуществляется с применением языка типа ПРОЛОГ или с применением ПРОЛОГ-идей.

В задачу этого направления входят исследование и разработка программ (устройств), которые используют знания и процедуры вывода для решения задач, являющихся трудными для людей-экспертов. ЭС могут быть отнесены к системам ИИ общего назначения - системам, которые не только исполняют заданные процедуры, но на основе метапроцедур поиска генерируют и применяют процедуры решения новых конкретных задач.

Огромный интерес к ЭС со стороны пользователей вызван, по крайней мере, тремя причинами. Во-первых, системы ориентированы на решение широкого круга задач в неформализованных областях, на приложения, которые до недавнего времени считались малодоступными для вычислительной техники.

Во-вторых, с помощью ЭС специалисты, не знающие программирования, могут самостоятельно разрабатывать интересующие их приложения, что позволяет резко расширить сферу использования вычислительной техники.

В-третьих, ЭС при решении практических задач достигают результатов, не уступающих, а иногда и превосходящих возможности людей-экспертов, не оснащенных ЭС.

В настоящее время ЭС применяются в различных областях человеческой деятельности. Наибольшее распространение при производстве РЭС ЭС получили в проектировании интегральных микросхем, в поиске неисправностей и автоматизации программирования.

3.2. Характеристики ЭС

Выделяют следующие характеристики ЭС: назначение, проблемная область, глубина анализа проблемной области, тип используемых методов и знаний, класс системы, стадия существования, инструментальные средства.

Назначение определяется следующей совокупностью параметров: цель создания экспертной системы - для обучения специалистов, для решения задач, для автоматизации рутинных работ, для тиражирования знаний экспертов и т. п.; основной пользователь - неспециалист в области экспертизы, специалист, учащийся.

Проблемная область может быть определена совокупностью параметров предметной области и задач, решаемых в ней. Каждый из параметров можно рассматривать с точки зрения как конечного пользователя, так и разработчика экспертной системы.

С точки зрения пользователя предметную область можно характеризовать ее описанием в терминах пользователя, включающим наименование области, перечень и взаимоотношения подобластей и т. п., а задачи, решаемые существующими экспертными системами, - их типом. Обычно выделяют следующие типы задач:

  • интерпретация символов или сигналов - составление смыслового описания по входным данным;
  • диагностика - определение неисправностей;
  • предсказание - определение последствий наблюдаемых ситуаций;
  • конструирование - разработка объекта с заданными свойствами при соблюдении установленных ограничений;
  • планирование - определение последовательности действий, приводящих к желаемому состоянию объекта;
  • слежение - наблюдение за изменяющимся состоянием объекта и сравнение его показателей с установленными или желаемыми;
  • управление - воздействие на объект для достижения желаемого поведения.

3.3. Структура и режимы использования ЭС

Типичная ЭС состоит из следующих основных компонентов: решателя (интерпретатора), рабочей памяти (РП), называемой также базой данных (БД), базы знаний (БЗ), компонентов приобретения знаний, объяснительного и диалогового компонентов (рис. 3.1).

Типовая структура экспертной системы

Рис. 3.1. Типовая структура экспертной системы

База данных предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином, применяемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (и в первую очередь - не текущих, а долгосрочных), хранимых в системе.

База знаний в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.

Решатель, используя исходные данные из РП и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи.

Объяснительный компонент объясняет, как система получила решение задачи (или почему она не получила решения) и какие знания она при этом использовала, - это облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.

Диалоговый компонент ориентирован на организацию дружелюбного общения со всеми категориями пользователей как в ходе решения задач, так и приобретения знаний, объяснения результатов работы.

В разработке ЭС участвуют представители следующих специальностей:

  • эксперт в той проблемной области, задачи которой будет решать ЭС;
  • инженер по знаниям - специалист по разработке ЭС;
  • программист - специалист по разработке инструментальных средств.

Необходимо отметить, что отсутствие среди участников разработки инженера по знаниям (т. е. его замена программистом) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его. Эксперт определяет знания (данные и правила ), характеризующие проблемную область, обеспечивает полноту и правильность введения в ЭС знаний.

Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС. Он осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ того представления знаний в этом ИС, выделяет и программирует (традиционными средствами) те стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.

Программист разрабатывает ИС, содержащее в пределе все основные компоненты ЭС, осуществляет сопряжение ИС с той средой, в которой оно будет использовано.

Экспертная система работает в двух режимах: приобретения знаний и решения задач (называемым также режимом консультации или режимом использования ЭС ).

В режиме приобретения знаний общение с ЭС осуществляется через посредничество инженера по знаниям. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют способы манипулирования данными, характерные для рассматриваемой проблемной области. Эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области.

Важную роль в режиме приобретения знаний играет объяснительный компонент. Именно благодаря ему эксперт на этапе тестирования локализует причины неудачной работы ЭС, что позволяет эксперту целенаправленно модифицировать старые или вводить новые знания. Обычно объяснительный компонент сообщает следующее: как правильно используют информацию пользователя, почему использовались или не использовались данные или правила, какие были сделаны выводы и т. д. Все объяснения делаются, как правило, на ограниченном естественном языке или языке графики.

Режиму приобретения знаний при традиционном подходе к разработке программ соответствуют этапы алгоритмизации, программирования и отладки, выполняемые программистом. В отличие от традиционного подхода разработку программ осуществляет эксперт (с помощью ЭС), не владеющий программированием, а не программист.

В режиме консультации общение с ЭС осуществляет конечный пользователь, которого интересует результат и (или) способ получения решения. Пользователь в зависимости от назначения ЭС может не быть специалистом в данной проблемной области - в этом случае он обращается к ЭС за советом, не умея получить ответ сам; либо пользователь является специалистом - тогда он обращается к ЭС, чтобы либо ускорить процесс получения результата, либо возложить на ЭС рутинную работу. Термин " пользователь " подразумевает, что таковым может быть и эксперт, и инженер по знаниям, и программист.Поэтому, когда хотят подчеркнуть, что речь идет о том, для кого делалась ЭС, используют термин " конечный пользователь ".

В режиме консультации данные о задаче пользователя обрабатываются диалоговым компонентом, который выполняет следующие действия:

  • распределяет роли участников ( пользователя и ЭС) и организует их взаимодействие в процессе кооперативного решения задачи;
  • преобразует данные пользователя о задаче, представленные на привычном для пользователя языке, на внутренний язык системы;
  • преобразует сообщения системы, представленные на внутреннем языке, в сообщения на языке, привычном для пользователя (обычно это ограниченный естественный язык или язык графики).

После обработки данные поступают в РП. На основе входных данных в РП, общих данных о проблемной области и правил из БЗ решатель (интерпретатор) формирует решение задачи.

В отличие от традиционных программ ЭС в режиме решения задачи не только исполняет предписанную последовательность операций, но и предварительно формирует ее. Если ответ ЭС непонятен пользователю, то он может потребовать объяснения того, как ответ получен.

< Лекция 2 || Лекция 3: 12 || Лекция 4 >
Роман Пархоменко
Роман Пархоменко
Россия, Sankt Piterburg, 182, 1997
Олег Корсак
Олег Корсак
Латвия, Рига