Экспертные системы

Начало сайта

Для учёбы

Личности

 Почти серьёзно

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

Для того чтобы понять, зачем современному компьютеру необходимо быть интеллектуальным, рассмотрим взаимодействие человека, которого называют конечным пользователем (КП), и ЭВМ. Вот «портрет» его знаний (точнее - незнаний):

1. Он НЕ ЗНАЕТ, как устроен компьютер.

2. Он НЕ ЗНАЕТ, как писать программы для работы с компьютером.

3. Он НЕ ЗНАЕТ формальных (математических) методов решения задач в своей области, что необходимо для пользования компьютером.

Чтобы читатель не нарисовал в своём воображении неправильный «портрет» конечного пользователя, заметим, что он - специалист в своей области, решает свою и очень важную конкретную задачу, т. е. проектирует, лечит, ищет неисправность в конструкции, синтезирует нужные вещества, создаёт новую технологию, ищет месторождение и т. д. А ЭВМ нужна ему лишь для повышения эффективности его труда, КП и без неё может решить свою задачу - ведь справлялся же он с ней до изобретения ЭВМ! Поэтому к ЭВМ он обращается для того, чтобы решить свою задачу быстрее и качественней, чем прежде.

Как же быть? Многолетний опыт применения ЭВМ выработал определенную систему взаимодействия пользователя и ЭВМ, в которую входит (а точнее входили), по крайней мере, два промежуточных звена: аналитик и программист.

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

ЭВМ решает задачу. Программист расшифровывает результат, передает аналитику, и тот переводит решение на язык пользователя.

Такая простейшая схема решения задачи конечного пользователя на ЭВМ.

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

Для того чтобы устранить и эту «лишнюю инстанцию», можно пойти одним из двух путей: передать функции ана­литика конечному пользователю, чтобы он сам формализовал и програм­мировал свою задачу, работая непо­средственно на дисплее; или передать эти функции ЭВМ и автоматизировать процесс формализации и программи­рования решения задачи пользователя.

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

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

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

Казалось бы, проблему может решить всеобщая компьютерная грамотность. Однако она подразумевает лишь знакомство с компьютером и одним из алгоритмических языков, между тем от знакомства до профессионального использования языка прог­раммирования дистанция огромного размера. Чтобы использовать все возможности компьютера, надо уметь создавать сложные программы. Здесь необходимы профессиональные знания всех тонкостей программирования, т. е. все пользователи, независимо от специ­альности, должны стать програм­мистами. Таким образом, создавалась почти тупиковая ситуация.

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

Что же такое экспертная система? Это - компьютерная система, пред­назначенная для общения с непрограм­мирующим конечным пользователем. Он ведёт диалог с ЭС на естественном языке. В процессе диалога ЭС «понимает» задачу пользователя, формализует её, составляет программу решения, решает и выдаёт результат пользователю. Причём полученные решения бывают не только не хуже, а очень часто даже лучше рекомендаций, составленных экспертами в этой области. Поэтому такие компьютерные системы и назвали экспертными.

Для своего нормального функционирования экспертная система выпол­няет функции аналитика т. е. она должна:

1. Понимать естественный язык, на котором пользователь излагает свою задачу.

2. Уметь построить формальную модель этой задачи, т. е. формализовать ее с тем, чтобы применить формальные методы решения.

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

4. Запустить программу и получить результат.

5. Интерпретировать результат, т, е. представить его в форме, доступной пользователю.

6. Объяснить (при необходимости), каким образом был получен этот результат.

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

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

При таком общении пользователя с компьютером неизбежны моменты непонимания (как и между людьми). Например, в известной фразе: «Я встретил ее на поле с цветами» совершенно непонятно, где были цветы - на поле, у неё или у меня? Для выяснения такого рода недоразумений собеседник (в данном случае компьютер) должен уметь задавать вопросы с тем, чтобы правильно понимать пользователя. Таким образом, в процессе формулирования задачи между пользователем и ЭС должен происходит оживлённый диалог, во время которого содержание задачи пользователь сообщается компьютеру. Программу, осуществляющую эту сложную операцию, называют лингвистическим процессором, или диалоговым процессором, подчеркивая диалоговый характер процесса взаимодействия с пользователем.

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

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

Но база знаний не только позволяет понимать пользователя, но и отвечать на его вопросы. Для этого она содержит сведения о том, каким образом поступали раньше специалисты в той или иной ситуации и что из этого вышло. Эти знания представлены в ви­де так называемых продукции, т. е. конструкций вида «если ..., то ...».Они дают возможность формализовать за­дачу пользователя, т. е. составить такую цепочку, связанную причинно-следственными связями, что в ее конце будет находиться ответ на заданный пользователем вопрос или поставлен другой вопрос, на который нужно от­ветить пользователю. Например, в ме­дицинской ЭС: «если больной имеет повышенную температуру и насморк, то это возможно грипп», или в геолого­разведочной ЭС: «если тип породы неизвестен, то надо проверять, какой из трех случаев имеет место: 1 - порода рыхлая, сыпучая; 2 - прочно связанная; 3 - легко ломается руками» и т. д.

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

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

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

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

Приведем пример экспертной системы, которая позволила освободить несколько сот экспертов — специалис­тов по комплектации вычислительной системы типа «Вакс». Она работает на базе компьютера «Вакс-11 /780», кото­рый называют супер-мини ЭВМ (так именуют компьютеры, которые в габаритах мини-ЭВМ позволяют реализо­вать некоторые возможности супер­компьютеров (по объему памяти, производительности и т. д.).

Эта экспертная система предназначена для составления из различных блоков вычислительной системы в зависимости от требований и условий рабо­ты заказчика, характера решаемых задач, имеющегося оборудования, персонала и т. д. Всего система может быть укомплектована более чем 400 компонентами, каждый из которых имеет до восьми модификаций. Пол­ный перебор всех возможных конфи­гураций, даже при двух модификациях каждого компонента, потребовал бы посмотреть более чем 10120 вариантов проекта системы (заметим для сравнения, что число атомов во Вселенной равно 1080). Только экспертная система в состоянии выбрать оптимальный ва­риант. Она имеет базу знаний из 850 продукционных правил вида «Если нужно разместить в стойке А узел В типа В и при этом необходимо удовлетворить требованиям Г, то следует проверить...». В результате ЭС позволяет выбрать такую конфигурацию вычислительной системы, которая наиболее полно удовлетворит требования заказчика, определит жизнеспособность полученной конфигурации и выдаст схемы взаимосвязей компонентов системы.

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

Любопытно, что появление ЭС породило на Западе своеобразное луддистское движение среди экспертов, которые отказывались рассекречивать и пе­редавать свой опыт для заполнения банка знаний ЭС - ведь эта ЭС становилась обычно умнее (без кавычек) каждого из экспертов в отдельности. Это хорошо доказала, например, экспертная система «Мицин», которая диагностирует заболевания крови лучше любого врача гематолога.

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

Источники:
  1. Растригин Л. Экспертные системы // Радио №6 1988
 

Последние изменения на странице произошли 08-08-2004

Hosted by uCoz