Имя материала: Информационные системы в экономике

Автор: Балдин К. В

4.3. этапы проектирования экспертных систем

4.3.1. Структура и назначение экспертных систем

В настоящее время среди всех систем искусственного интеллекта (ИИ) наибольшее распространение (по некоторым оценкам до 90\%) получили экспертные системы (ЭС) различных типов. Объяснение этому находится в самой истории развития технологии искусственного интеллекта. Если условно проследить начало этой истории по десятилетиям [38], увидим, что в 60-х гг. XX в. специалисты в области ИИ пытались моделировать сложный процесс мышления, отыскивая общие методы решения широкого класса задач и реализуя их в универсальных программах. Как уже отмечалось, большая часть таких попыток была неудачной.

Дальнейшие исследования в 70-е гг. были сконцентрированы на разработке двух групп методов:

методов представления задач (в стремлении сформулировать решаемую проблему так, чтобы ее было легче решить);

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

Однако и эта стратегия не принесла реальных успехов.

Только в конце 70-х гг. был сделан принципиальный вывод: эффективность программы при решении интеллектуальных задач в большей степени зависит от знаний, которыми она обладает, а не только от используемых формализмов и схем вывода. Чтобы сделать систему интеллектуальной, ее нужно снабдить множеством высококачественных знаний о некоторой предметной области. Это послужило основой новой концепции развития систем ИИ — создания специализированных программных систем, каждая из которых является как бы экспертом в некоторой узкой предметной области. Такие программы в дальнейшем и стали называть экспертными системами.

Огромный интерес к ЭС обусловлен тремя основными обстоятельствами [22]:

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

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

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

Свое название ЭС получили по двум причинам:

информацию (знания) для них поставляют эксперты;

ЭС выдает решения, аналогичные тем, которые формулируют эксперты.

Понятие "эксперт" заслуживает отдельного обсуждения.

По Д. Уотермену эксперт (англ. domain expert — знаток, специалист в области, сфере деятельности) — человек, который за годы обучения и практики научился чрезвычайно эффективно решать задачи, относящиеся к конкретной предметной области [54]. Главным в этом определении является требование к эксперту, которое предъявляются и к ЭС: эффективность решения конкретных задач из узкой предметной области.

В соответствии с определением П. Джонса [54] "эксперт — это человек, который благодаря обучению и опыту может делать то, что мы все, остальные люди, делать не умеем; эксперты работают не просто профессионально, но к тому же уверенно и эффективно. Эксперты обладают огромными познаниями и пользуются различными приемами и уловками для применения своих знаний к проблемам и заданиям; они также умеют быстро переворошить массу несущественной информации, чтобы добраться до главного, и хорошо умеют распознавать в ситуациях, с которыми сталкиваются, примеры тех типовых проблем, с которыми они уже знакомы. В основе поведения экспертов лежит совокупность практически применимых знаний, которую мы будем называть компетентностью. Поэтому разумно предположить, что эксперты — это те люди, к которым надо обратиться, когда мы желаем проявить компетентность, делающую возможным такое поведение, как у них".

Отметим, что в обоих определениях подчеркиваются источники знаний экспертов — обучение и практика (опыт).

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

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

Структура типовой ЭС представлена на рис. 4.3.1.

На рисунке обозначены: СОЗ — система, основанная на знаниях; ЛП — лингвистический процессор; РП (БД) — рабочая память (база данных); БЗн — база знаний; МЛВ — механизм (машина) логического вывода; КПЗн — компонент приобретения знаний; Коб — компонент объяснений.

Дадим краткую характеристику структурных элементов ЭС.

СОЗ представляет собой программную систему, состоящую из трех элементов: БЗн, МЛВ и РП (БД).

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

МЛВ — часть ЭС (СОЗ), реализующая анализ поступающей в ЭС и имеющейся в ней информации и формирование (вывод) на ее основе новых заключений (суждений) в ответ на запрос к системе.

РП (БД) — часть ЭС (СОЗ), предназначенная для информационного обеспечения работы МЛВ, прежде всего в части хранения и обработки поступивших (новых) фактов (суждений) и промежуточных результатов логического вывода.

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

 

 

 

лп

1 1

РП(БД)

Г

і і

 

 

 

КОб

 

эс

 

Рис. 4.3.1. Структура экспертной системы

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

Компонент приобретения знаний предназначен для обеспечения работы инженера знаний по поддержанию модели знаний, адекватной реальной предметной области (генерации БЗн, ее тестирования, пополнения новыми знаниями, исключения неверных (ставших таковыми) знаний и т. п).

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

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

Важным классом СОЗ является класс интеллектуальных пакетов прикладных программ (ППП). Структура такого пакета приведена на рис. 4.3.2.

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

 

КОб

МЛВ

 

КПЗн

Подпись: XX

 

Результаті

 

4.3.2. Классификация, этапы и средства разработки экспертных систем

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

Масштабы разработки ЭС предопределили создание спе-циальных инструментальных (аппаратных и программных) средств, систематизированное представление которых составляет содержание рис. 4.3.4.

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

По стадиям разработки

 

Демонстрационный прототип

 

Исследовательский прототип

 

Действующий прототип

 

Промышленный образец

 

Коммерческий образец

База знаний содержит: 10—200 правил;

200—500 правил;

500—1000 правил;

1000—1500 правил;

1500—3000 правил.

Рис. 4.3.3. Классификация экспертных систем по стадиям разработки

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

 

Инструментальные средства разработки ЭС

I

1

Аппаратные

Программные

 

Интеллектуальные рабочие станции

Алгоритмические языки

программирования (С, Паскаль, Фортран,...)

Последовательные символьные ЭВМ (ЛИСП-машины; ПРОЛОГ-машины)

 

Символьные языки программирования (ЛИСП, SmallTalk,...)

Параллельные символьные ЭВМ

 

Языки инженерии знаний (ПРОЛОГ, OPS-5, LOOPS)

 

Системы автоматизированной разработки ЭС (КЕЕ, ART, AGE,...)

 

Оболочки ЭС (EMYSIN, EXPERT,...)

 

Рис. 4.3.4. Инструментальные средства разработки экспертных систем

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

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

Разработка ЭС включает нескольких этапов [38], основное содержание которых применительно к продукционным системам отражено на рис. 4.3.6.

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

Формализа-ция знаний

БЗн I

 

Рис. 4.3.5. Соотношение формальных и неформальных процедур при разработке ЭС

Перепроектирование

Как охарактеризовать важные аспекты знания?

Идентификация

Требования

 

Какие понятия необходимы для решения?

Концептуация

 

Понятия

 

Как формально представить знания?

 

Формализация

 

Структура

Какие правила воплощают знания?

Уточнение

 

Правила

 

Как подтвердить правила?

Реализация

Тестирование

 

Рис. 4.3.6. Этапы разработки экспертной системы

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

Очевидно, что разработка ЭС является коллективным трудом, в котором принимают участие различные специалисты. Центральное место в схеме взаимодействия участников создания ЭС занимает инженер знаний (англ. knowledge engineer). Именно он организует все важнейшие работы и осуществляет их координацию. Ему принадлежит право выбора типовых или — при необходимости и наличии соответствующих ресурсов — заказа новых инструментальных средств разработки ЭС. Он работает с предметными экспертами, генерирует, тестирует, уточняет и пополняет базу знаний и т. д. Направления взамодействия создателей ЭС (этот процесс иногда называют игрой [38]) представлены на рис. 4.3.7.

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

Рис. 4.3.7. Схема взаимодействия создателей экспертной системы

 

Время человеко-лет

4—6 человек

Подпись:
30 --25 --20

15 + 10

5

0

 

2—4 человека

 

3—5 человек

умеренно трудная

трудная Проблемная область

очень трудная

Рис. 4.3.8. Затраты времени на создание экспертной системы

обстоятельство иллюстрируется рис. 4.3.8, на котором приведены условные затраты времени на создание систем для решения проблем различной сложности [38].

Существует ряд подходов к оценке того, когда же разработка ЭС является рациональной [21, 22, 26]. На наш взгляд, наиболее конструктивен подход Д. Уотермена, который основан на проверке возможности, оправданности и разумности построения системы.

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

задача не требует общедоступных знаний;

решение задачи требует только интеллектуальных действий;

существуют подлинные (компетентные) эксперты;

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

эксперты единодушны в своих решениях (или, по крайней мере, их мнения "хорошо" согласованы);

♦          задача понятна и "не слишком" трудна. Разработка ЭС оправданна, если выполняется хотя бы

одно из следующих основных условий:

получение решения задачи высокорентабельно;

человеческий опыт решения задачи по различным причинам утрачивается;

число экспертов в рассматриваемой предметной области мало;

опыт решения задачи востребован во многих местах;

опыт нужно применять во враждебных человеку условиях.

Наконец, разработка ЭС разумна, если совместно выполняются следующие основные условия:

задача требует эвристических решений;

задача требует оперирования символами;

задача "не слишком" проста;

задача представляет практический интерес;

задача имеет размерность, допускающую реализацию.

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

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

 

Страница: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |