<< Предыдущая

стр. 3
(из 26 стр.)

ОГЛАВЛЕНИЕ

Следующая >>

то есть «очень старческий возраст» равен



Для вывода на нечетких множествах используются специальные отношения и операции над ними (подробнее см. работу [Орловский, 1981]). Одним из первых применений теории НМ стало использование коэффициентов уверенности для вывода рекомендаций медицинской системы MYCIN [Shortliffe, 1976]. Этот метод использует несколько эвристических приемов. Он стал примером обработки нечетких знаний, повлиявших на последующие системы. В настоящее время в большинство инструментальных средств разработки систем, основанных на знаниях, включены элементы работы с НМ, кроме того, разработаны специальные программные средства реализации так называемого нечеткого вывода, например «оболочка» FuzzyCLIPS.

1.5. Прикладные интеллектуальные системы

Центральная парадигма интеллектуальных технологий сегодня — это обработка знаний. Системы, ядром которых является база знаний или модель предметной области, описанная на языке сверхвысокого уровня, приближенном к естественному, называют интеллектуальными. Будем называть такой язык сверхвысокого уровня — языком представления знаний (ЯПЗ). Чаще всего интеллектуальные системы (ИС) применяются для решения сложных задач, где основная сложность решения связана с использованием слабо-формализованных знаний специалистов-практиков и где логическая (или смысловая) обработка информации превалирует над вычислительной. Например, понимание естественного языка, поддержка принятия решения в сложных ситуациях, постановка диагноза и рекомендации по методам лечения, анализ визуальной информации, управление диспетчерскими пультами и др.
Фактически сейчас прикладные интеллектуальные системы используются в десятках тысяч приложений. А годовой доход от продаж программных и аппаратных средств искусственного интеллекта еще в 1989 г. в США составлял 870 млн долларов, а в 1990 г. — 1,1 млрд долларов [Попов, 1996]. В дальнейшем почти тридцатипроцентный прирост дохода сменился более плавным наращиванием темпов (по материалам [Поспелов, 1997; Хорошевский, 1997; Попов, 1996; Walker, Miller, 1987; Tuthill, 1994, Durkin, 1998]).
На рис. 1.9 отражены различные аспекты состояния рынка искусственного интеллекта: инвестиции в разработку в области ИИ (США, Европа, Япония) (рис. 1.9, а); доля систем ИИ в информатике (программном обеспечении) (рис. 1.9, б); доходы от продаж традиционных языков программирования (рис. 1.9, в); инвестиции только в программное обеспечение (США) (рис. 1.9, г); инвестиции в аппаратное обеспечение (США) (рис. 1.9, Э); структура рынка ЭС (США, 1993) (рис. 1.9, е).


Наиболее распространенным видом ИС являются экспертные системы.

ЭС эффективны лишь в специфических «экспертных» областях, где важен эмпирический опыт специалистов.
Только в США ежегодный доход от продаж инструментальных средств разработки ЭС составлял в начале 90-х годов 300-400 млн долларов, а от применения ЭС — 80-90 млн долларов [Попов, 1996]. Ежегодно крупные фирмы разрабатывают десятки ЭС типа «in-house» для внутреннего пользования. Эти системы интегрируют опыт специалистов компании по ключевым и стратегически важным технологиям. В начале 90-х гг. появилась новая наука — «менеджмент знаний» (knowledge management), ориентированная на методы обработки и управления корпоративными знаниями (см. главу 5).
Современные ЭС — это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и распространяющие этот эмпирический опыт для консультирования менее квалифицированных пользователей. Разработка экспертных систем, как активно развивающаяся ветвь информатики, направлена на использование ЭВМ для обработки информации в тех областях науки и техники, где традиционные математические методы моделирования малопригодны. В этих областях важна смысловая и логическая обработка информации, важен опыт экспертов.
Приведем некоторые условия, которые могут свидетельствовать о необходимости разработки и внедрения экспертных систем (частично из [Уотермен, 1989]):
• нехватка специалистов, затрачивающих значительное время для оказания помощи другим;
• выполнение небольшой задачи требует многочисленного коллектива специалистов, поскольку ни один из них не обладает достаточным знанием;
• сниженная производительность, поскольку задача требует полного анализа сложного набора условий, а обычный специалист не в состоянии просмотреть (за отведенное время) все эти условия;
• большое расхождение между решениями самых хороших и самых плохих исполнителей;
• наличие конкурентов, имеющих преимущество в силу того, что они лучше справляются с поставленной задачей.
Подходящие задачи имеют следующие характеристики:
• являются узкоспециализированными;
• не зависят в значительной степени от общечеловеческих знаний или соображений здравого смысла;
• не являются для эксперта ни слишком легкими, ни слишком сложными. (Время, необходимое эксперту для решения проблемы, может составлять от трех часов до трех недель.)
Экспертные системы достаточно молоды — первые системы такого рода, MYCIN [Shortliffe, 1976] и DENDRAL [Buchanan, Feigenbaum, 1978], появились в США в середине 70-х годов. В настоящее время в мире насчитывается несколько тысяч промышленных ЭС, которые дают советы:
• при управлении сложными диспетчерскими пультами, например сети распределения электроэнергии, — Alarm Analyser [Walker, Miller, 1987];
• при постановке медицинских диагнозов — ARAMIS [Shortliffe, Buchanan, Feigenbaum, 1979], NEUREX [Reggia, 1988];
• при поиске неисправностей в электронных приборах, диагностика отказов контрольно-измерительного оборудования — Intelligence Ware [Slagle, Gardiner, Kyungsook, 1990], Plant Diagnostics [Уотермен, 1989], FOREST [Finin, McAdams, Kleinosky, 1984];
• по проектированию интегральных микросхем — DAA [Сойер, Фостер, 1988], NASL [Walker, Miller, 1988], QO [Pega, Sticklen, Bond, 1993];
• по управлению перевозками — AIRPLAN [Masui, McDermott, 1983];
• по прогнозу военных действий — ANALYST [Bonasso, 1984], BATTLE [Slagle, Gaynor, 1983];
• по формированию портфеля инвестиций, оценке финансовых рисков — RAD [Kestelyn,1992], налогообложению - RUNE [Durkin, 1998] и т. д.
Наиболее популярные приложения ИС отображены на рис. 1.10 [Durkin, 1998].


Рис. 1.10. Основные приложения ИС

Сейчас легче назвать области, где еще нет ЭС, чем те, где они уже применяются. Уже в 1987 г. опрос пользователей, проведенный журналом «Intelligent Technologies» (США), показал, что примерно:
• 25 % пользователей используют ЭС;
• 25 % собираются приобрести ЭС в ближайшие 2-3 года;
• 50 % предпочитают провести исследование об эффективности их использования.
Главное отличие ИС и ЭС от других программных средств — это наличие базы знаний (БЗ), в которой знания хранятся в форме, понятной специалистам предметной области, и могут быть изменены и дополнены также в понятной форме. Это и есть языки представления знаний — ЯПЗ.
До последнего времени именно различные ЯПЗ были центральной проблемой при разработке ЭС. Сейчас существуют десятки языков или моделей представления знаний (см. параграф 1.3). Наибольшее распространение получили следующие модели:
• продукции (OPS5 [Forgy, 1981], ROSIE [Fain, Hayes-Roth, Sowizral, Waterman, 1982]);
• семантические сети (SIMER+MIR [Осипов, 1997]; NET [Цейтин, 1985]);
• фреймы (FRL [Байдун, Бунин, 1988; Справочник по ИИ, 1990]);
• логическое программирование (ПРОЛОГ [Макалистер, 1990; Стерлинг, Шапиро, 1990]);
• объектно-ориентированные языки (SMALLTALK [Goldberg, Robson, 1983; Буч, 1993], CLOS [Pega, Sticklen, Bond, 1993]).
Для перечисленных выше моделей существует соответствующая математическая нотация, разработаны системы программирования, реализующие эти ЯПЗ, и имеется большое количество реальных коммерческих ЭС. Подробнее вопросы программной реализации прикладных ИС рассмотрены в главе 6.
Современное состояние разработок в области ЭС в России можно охарактеризовать как стадию все возрастающего интереса среди широких слоев специалистов — финансистов, топ-менеджеров, преподавателей, инженеров, медиков, психологов, программистов, лингвистов. В последние годы этот интерес имеет пока достаточно слабое материальное подкрепление — явная нехватка учебников и специальной литературы, отсутствие символьных процессоров и рабочих станций, ограниченное финансирование исследований в этой области, слабый отечественный рынок программных продуктов для разработки ЭС.
Поэтому появляется возможность распространения «подделок» под экспертные системы в виде многочисленных диалоговых систем и интерактивных пакетов прикладных программ, которые дискредитируют в глазах пользователей это чрезвычайно перспективное направление. Процесс создания экспертной системы требует участия высококвалифицированных специалистов в области искусственного интеллекта, которых пока выпускает небольшое количество высших учебных заведений страны.
Наибольшие трудности в разработке ЭС вызывает сегодня не процесс машинной реализации систем, а домашинный этап анализа знаний и проектирования базы знаний. Этим занимается специальная наука — инженерия знаний [Гаврилова, Червинская, 1992; Adeli, 1994; Scott, Clayton, Gibson, 1994].
Современному состоянию этой науки и посвящены последующие главы этой книги.







Разработка
систем, основанных на знаниях

Ё Введение в экспертные системы. Определение и структура
Ё Классификация систем, основанных на знаниях
Ё Коллектив разработчиков
Ё Технология проектирования и разработки

2.1. Введение в экспертные системы.
Определение и структура

В качестве рабочего определения экспертной системы примем следующее.

Обобщенная структура экспертной системы представлена на рис. 2.1.



Следует учесть, что реальные ЭС могут иметь более сложную структуру, однако блоки, изображенные на рисунке, непременно присутствуют в любой действительно экспертной системе, поскольку представляют собой стандарт de facto структуры современной ЭС.
В целом процесс функционирования ЭС можно представить следующим образом: пользователь, желающий получить необходимую информацию, через пользовательский интерфейс посылает запрос к ЭС; решатель, пользуясь базой знаний, генерирует и выдает пользователю подходящую рекомендацию, объясняя ход своих рассуждений при помощи подсистемы объяснений.
Так как терминология в области разработки ЭС постоянно модифицируется, определим основные термины в рамках данной работы.
Пользователь — специалист предметной области, для которого предназначена система. Обычно его квалификация недостаточно высока, и поэтому он нуждается в помощи и поддержке своей деятельности со стороны ЭС.
Инженер по знаниям — специалист в области искусственного интеллекта, выступающий в роли промежуточного буфера между экспертом и базой знаний. Синонимы: когнитолог, инженер-интерпретатор, аналитик.
Интерфейс пользователя — комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и при получении результатов.
База знаний (БЗ) — ядро ЭС, совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому «человеческому» представлению существует БЗ во внутреннем «машинном» представлении.
Решатель — программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в БЗ. Синонимы: дедуктивная машина, машина вывода, блок логического вывода.
Подсистема объяснений — программа, позволяющая пользователю получить ответы на вопросы: «Как была получена та или иная рекомендация?» и «Почему система приняла такое решение?» Ответ на вопрос «как» — это трассировка всего процесса получения решения с указанием использованных фрагментов БЗ, то есть всех шагов цепи умозаключений. Ответ на вопрос «почему» — ссылка на умозаключение, непосредственно предшествовавшее полученному решению, то есть отход на один шаг назад. Развитые подсистемы объяснений поддерживают и другие типы вопросов.
Интеллектуальный редактор БЗ — программа, представляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме. Включает в себя систему вложенных меню, шаблонов языка представления знаний, подсказок («help» — режим) и других сервисных средств, облегчающих работу с базой.
Еще раз следует подчеркнуть, что представленная на рис. 2.1 структура является минимальной, что означает обязательное присутствие указанных на ней блоков. Если система объявлена разработчиками как экспертная, только наличие всех этих блоков гарантирует реальное использование аппарата обработки знаний. Однако промышленные прикладные ЭС могут быть существенно сложнее и дополнительно включать базы данных, интерфейсы обмена данными с различными пакетами прикладных программ, электронными библиотеками и т. д.

2.2. Классификация систем, основанных на
знаниях

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

Рис. 2.2. Классификация экспертных систем

2.2.1. Классификация по решаемой задаче

Рассмотрим указанные на рисунке типы задач подробнее.
Ё Интерпретация данных. Это одна из традиционных задач для экспертных систем. Под интерпретацией понимается процесс определения смысла данных, результаты которого должны быть согласованными и корректными. Обычно предусматривается многовариантный анализ данных.
• Все примеры далее из работ [Попов и др., (ред.), 1990; Соловьев, Соловьева, 1989; Хейес-Рот и др., 1987].
• Обнаружение и идентификация различных типов океанских судов по результатам аэрокосмического сканирования — SIAP;
• определение основных свойств личности по результатам психодиагностического тестирования в системах АВТАНТЕСТ и МИКРОЛЮШЕР и др.
Ё Диагностика. Под диагностикой понимается процесс соотнесения объекта с некоторым классом объектов и/или обнаружение неисправности в некоторой системе. Неисправность — это отклонение от нормы. Такая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания живых организмов, и всевозможные природные аномалии. Важной спецификой является здесь необходимость понимания функциональной структуры («анатомии») диагностирующей системы.
• Диагностика и терапия сужения коронарных сосудов — ANGY;
• диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ — система CRIB и др.
Ё Мониторинг. Основная задача мониторинга — непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы — «пропуск» тревожной ситуации и инверсная задача «ложного» срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учета временного контекста.
• Контроль за работой электростанций СПРИНТ, помощь диспетчерам атомного реактора — REACTOR;
• контроль аварийных датчиков на химическом заводе — FALCON и др.
Ё Проектирование. Проектирование состоит в подготовке спецификаций на создание «объектов» с заранее определенными свойствами. Под спецификацией понимается весь набор необходимых документов — чертеж, пояснительная записка и т. д. Основные проблемы здесь — получение четкого структурного описания знаний об объекте и проблема «следа». Для организации эффективного проектирования и в еще большей степени перепроектирования необходимо формировать не только сами проектные решения, но и мотивы их принятия. Таким образом, в задачах проектирования тесно связываются два основных процесса, выполняемых в рамках соответствующей ЭС: процесс вывода решения и процесс объяснения.
• Проектирование конфигураций ЭВМ VAX — 11/780 в системе XCON (или R1), проектирование БИС - CADHELP;
• синтез электрических цепей — SYN и др.
Ё Прогнозирование. Прогнозирование позволяет предсказывать последствия некоторых событий или явлений на основании анализа имеющихся данных. Прогнозирующие системы логически выводят вероятные следствия из заданных ситуаций. В прогнозирующей системе обычно используется параметрическая динамическая модель, в которой значения параметров «подгоняются» под заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятностными оценками,
• Предсказание погоды — система WILLARD;
• ценки будущего урожая — PLANT;
• прогнозы в экономике — ECON и др.
Ё Планирование. Под планированием понимается нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности.
• Планирование поведения робота — STRIPS;
• планирование промышленных заказов — ISIS;
• планирование эксперимента — MOLGEN и др.
Ё Обучение. Под обучением понимается использование компьютера для обучения какой-то дисциплине или предмету. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом «ученике» и его характерных ошибках, затем в работе они способны диагностировать слабости в познаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.
• Обучение языку программирования ЛИСП в системе «Учитель ЛИСПа»;
• система PROUST — обучение языку Паскаль и др.
Ё Управление. Под управлением понимается функция организованной системы, поддерживающая определенный режим деятельности. Такого рода ЭС осуществляют управление поведением сложных систем в соответствии с заданными спецификациями.
• Помощь в управлении газовой котельной — GAS;
•управление системой календарного планирования Project Assistant и др.
Ё Поддержка принятия решений. Поддержка принятия решения — это совокупность процедур, обеспечивающая лицо, принимающее решения, необходимой информацией и рекомендациями, облегчающими процесс принятия решения. Эти ЭС помогают специалистам выбрать и/или сформировать нужную альтернативу среди множества выборов при принятии ответственных решений.
• Выбор стратегии выхода фирмы из кризисной ситуации — CRYSIS;
• помощь в выборе страховой компании или инвестора — CHOICE и др.
В общем случае все системы, основанные на знаниях, можно подразделить на системы, решающие задачи анализа, и на системы,решающие задачи синтеза. Основное отличие задач анализа от задач синтеза заключается в том, что если в задачах анализа множество решений может быть перечислено и включено в систему, то в задачах синтеза множество решений потенциально не ограничено и строится из решений компонент или под-проблем. Задачами анализа являются: интерпретация данных, диагностика, поддержка принятия решения; к задачам синтеза относятся проектирование, планирование, управление. Комбинированные: обучение, мониторинг, прогнозирование.

2.2.2. Классификация по связи с реальным
временем

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

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

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

Примеры
Управление гибкими производственными комплексами, мониторинг в реанимационных палатах;
программный инструментарий для разработки динамических систем — G2 [Попов, 1996].

2.2.3. Классификация по типу ЭВМ

На сегодняшний день существуют:
• ЭС для уникальных стратегически важных задач на суперЭВМ (Эльбрус, CRAY, CONVEX и др.);
• ЭС на ЭВМ средней производительности (типа ЕС ЭВМ, mainframe);
• ЭС на символьных процессорах и рабочих станциях (SUN, Silicon Graphics, APOLLO);
• ЭС на мини- и супермин-ЭВМ (VAX, micro-VAX и др.);
• ЭС на персональных компьютерах (IBM PC, MAC II и т. п.).

2.2.4. Классификация по степени интеграции
с другими программами

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

2.3. Коллектив разработчиков

Под коллективом разработчиков (КР) будем понимать группу специалистов, ответственных за создание ЭС.
Как видно из рис. 2.1, в состав КР входят по крайней мере три человека — пользователь, эксперт и инженер по знаниям. На рисунке не видно программиста. Таким образом, минимальный состав КР включает четыре человека; реально же он разрастается до 8-10 человек. Численное увеличение коллектива разработчиков происходит по следующим причинам: необходимость учета мнения нескольких пользователей, помощи нескольких экспертов; потребность как в проблемных, так и системных программистах. На Западе в этот коллектив дополнительно традиционно включают менеджера и одного технического помощника.
Если использовать аналогии из близких областей, то КР более всего схож с группой администратора базы данных при построении интегрированных информационных систем или бригадой программистов, разрабатывающих сложный программный комплекс. При отсутствии профессионального менеджера руководителем КР, участвующим во всех стадиях разработки, является инженер по знаниям, поэтому к его квалификации предъявляются самые высокие требования. В целом уровень и численность группы зависят от характеристик поставленной задачи.
Для обеспечения эффективности сотрудничества любой творческой группы, в том числе и группы КР ЭС, необходимо возникновение атмосферы взаимопонимания и доверия, которое, в свою очередь, обусловлено психологической совместимостью членов группы; следовательно, при формировании КР должны учитываться психологические свойства участников.
В настоящий момент в психологии существует несколько десятков методик по определению свойств личности, широко используемых в вопросах профессиональной ориентации. Эти психодиагностические методики, часть из которых уже автоматизирована, различаются направленностью, глубиной, временем опроса и способами интерпретации. В частности, система АВАНТЕСТ (Автоматический Анализ ТЕСТов) [Гаврилова, 1984] позволяет моделировать рассуждения психолога при анализе результатов тестирования по 16-факторному опроснику Р. Кэттела и выдает связное психологическое заключение на естественном русском языке, характеризующее такие свойства личности, как общительность, аналитичность, добросовестность, самоконтроль и т. п. Модифицированная база знаний системы АВТАНТЕСТ позднее была использована в ЭС «Cattell» (см. параграф 7.3).
Ниже приведены два аспекта характеристик членов КР: 1 — психофизиологический, 2 — профессиональный.
Пользователь
1. К пользователю предъявляются самые слабые требования, поскольку его не выбирают. Он является в некотором роде заказчиком системы. Желательные качества:
а) дружелюбие;
б) умение объяснить, что же он хочет от системы;
в) отсутствие психологического барьера к применению вычислительной техники;
г) интерес к новому. От пользователя зависит, будет ли применяться разработанная ЭС. Замечено, что наиболее ярко качества в) и г) проявляются в молодом возрасте, поэтому иногда такие пользователи охотнее применяют ЭС, не испытывая при этом комплекса неполноценности оттого, что ЭВМ им что-то подсказывает.
2. Необходимо, чтобы пользователь имел некоторый базовый уровень квалификации, который позволит ему правильно истолковать рекомендации ЭС. Кроме того, должна быть полная совместимость в терминологии интерфейса к ЭС с той, которая привычна и удобна для пользователя. Обычно требования к квалификации пользователя не очень велики, иначе он переходит в разряд экспертов и совершенно не нуждается в ЭС.
Эксперт
1. Эксперт — чрезвычайно важная фигура в группе КР. В конечном счете, его подготовка определяет уровень компетенции базы знаний. Желательные качества:
а) доброжелательность;
б) готовность поделиться своим опытом;
в) умение объяснить (педагогические навыки);
г) заинтересованность (моральная, а лучше еще и материальная) в успешности разработки. Возраст эксперта обычно почтенный, что необходимо учитывать всем членам группы. Часто встает вопрос о количестве экспертов. Поскольку проблема совмещения подчас противоречивых знаний остается открытой, обычно с каждым из экспертов работают индивидуально, иногда создавая альтернативные базы.
2. Помимо безусловно высокого профессионализма в выбранной предметной области, желательно знакомство эксперта с популярной литературой по искусственному интеллекту и экспертным системам для того, чтобы эффективнее прошел этап извлечения знаний.
Программист ,
1. Известно, что программисты обладают самой низкой потребностью в общении среди представителей разных профессий. Однако при разработке ЭС необходим тесный контакт членов группы, поэтому желательны следующие его качества:
а) общительность;
б) способность отказаться от традиционных навыков и освоить новые методы;
в) интерес к разработке.
2. Поскольку современные ЭС — сложнейшие и дорогостоящие программные комплексы, программисты в КР должны иметь опыт и навыки разработки программ. Обязательно знакомство с основными структурами представления знаний и механизмами вывода, состоянием отечественного и мирового рынка программных продуктов для разработки ЭС и диалоговых интерфейсов.
Инженер по знаниям
1. Существуют такие профессии и виды деятельности, для которых природные качества личности (направленность, способности, темперамент) могут иметь характер абсолютного показания или противопоказания к занятиям. По-видимому, инженерия знаний принадлежит к таким профессиям. По различным оценкам, это одна из самых малочисленных, высокооплачиваемых и дефицитных в мире специальностей. Попытаемся дать наброски к портрету инженера по знаниям (без претензии на полноту и точность определений).
Пол. Психологи утверждают, что мужчины более склонны к широкому охвату явлений и в среднем у них выше аналитичность, чрезвычайно полезная инженеру по знаниям, которому надо иметь развитое логическое мышление и умение оперировать сложными формальными структурами. Кроме того, при общении с экспертами, которые в большинстве своем настроены скептически по отношению к будущей ЭС, инженер по знаниям - мужчина вызывает более высокую мотивацию успешности со стороны эксперта-женщины. С другой стороны, известно, что у женщин выше наблюдательность к отдельным деталям объектов. Так что пол не является окончательным показанием или противопоказанием к данной профессии.
Интеллект. Это понятие вызывает самые бурные споры психологов; существует до 50 определений интеллекта, но с прагматической точки зрения очевидно, что специалист в области искусственного интеллекта должен стремиться к максимальным оценкам по тестам как вербального, так и невербального интеллекта.
Стиль общения. Инженер по знаниям «задает тон» в общении с экспертом, он ведет диалог, и от него в конечном счете зависит его продуктивность. Можно выделить два стиля общения: деловой (или жесткий) и дружеский (или мягкий, деликатный). Нам кажется, что дружеский будет заведомо более успешным, так как снижает «эффект фасада» у эксперта, раскрепощает его. Деликатность, внимательность, интеллигентйость, ненавязчивость, скромность, умение слушать и задавать вопросы, хорошая коммуникабельность и в то же время уверенность в себе — вот рекомендуемый стиль общения. Безусловно, что это дар и искусство одновременно, однако занятия по психологическому тренингу могут дать полезные навыки.
Портрет инженера по знаниям можно было бы дополнить другими характеристиками — широтой взглядов и интересов, артистичностью, чувством юмора, обаянием и т. д.
2. При определении профессиональных требований к аналитику следует учитывать, что ему необходимы различные навыки и умения для грамотного и эффективного проведения процессов извлечения, концептуализации и формализации знаний.
Инженер по знаниям имеет дело со всеми формами знаний (см. параграф 1.3).
Z1 (знания в памяти) ® Z2 (знания в книгах) ® Z3 (поле знаний) ® Z4 (модель знаний) ® Z5 (база знаний).
Работа на уровне Z1 требует от инженера по знаниям знакомства с элементами когнитивной психологии и способами репрезентации понятий и процессов в памяти человека, с двумя основными механизмами мышления — логическим и ассоциативным, с такими способами активизации мышления как игры, мозговой штурм и др., с различными моделями рассуждений.
Изучение и анализ текстов на уровне Z2 подразумевает широкую общенаучную подготовку инженера; знакомство с методами реферирования и аннотирования текстов; владение навыками быстрого чтения, а также текстологическими методами извлечения знаний.
Разработка поля знаний на уровне Z3 требует квалифицированного знакомства с методологией представления знаний, системным анализом, теорией познания, аппаратом многомерного шкалирования, кластерным и факторным анализом.
Разработка формализованного описания Z4 предусматривает предварительное изучение аппарата математической логики и современных языков представления знаний. Модель знаний разрабатывается на основании результатов глубокого анализа инструментальных средств разработки ЭС и имеющихся «оболочек». Кроме того, инженеру по знаниям необходимо владеть методологией разработки ЭС, включая методы быстрого прототипирования.
И наконец, реализация базы знаний Z5, в которой инженер по знаниям участвует вместе с программистом, подразумевает овладение практическими навыками работы на ЭВМ и, возможно, одним из языков программирования.
Так как инженеров по знаниям «выращивают» из программистов, уровень Z5 обычно не вызывает затруднения, особенно если разработка ведется на традиционных языках типа С или Паскаль. Специализированные языки искусственного интеллекта Лисп и Пролог требуют некоторой перестройки архаично-алгоритмического мышления.
Успешность выбора и подготовки коллектива разработчиков ЭС определяет эффективность и продолжительность всего процесса разработки.

2.4. Технология проектирования и
разработки

2.4.1. Проблемы разработки промышленных ЭС

Разработка программных комплексов экспертных систем как за рубежом, так и в нашей стране находится на уровне скорее искусства, чем науки. Это связано с тем, что долгое время системы искусственного интеллекта внедрялись в основном во время фазы проектирования, а чаще всего разрабатывалось несколько прототип-ных версий программ, и на их основе уже создавался конечный продукт. Такой подход действует хорошо в исследовательских условиях, однако в коммерческих условиях он является слишком дорогим, чтобы оправдать затраты на разработку.
Процесс разработки промышленной экспертной системы, опираясь на традиционные технологии [Николов и др., 1990; Хейес-Рот и др., 1987; Tuthill, 1994], практически для любой предметной области можно разделить на шесть более или менее независимых этапов (рис. 2.3).

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

2.4.2. Выбор подходящей проблемы

Этот этап определяет деятельность, предшествующую решению начать разрабатывать конкретную ЭС. Он включает [Николов и др., 1990]:
• определение проблемной области и задачи;
• нахождение эксперта, желающего сотрудничать при решении проблемы, и назначение коллектива разработчиков;
• определение предварительного подхода к решению проблемы;
• анализ расходов и прибылей от разработки;
• подготовку подробного плана разработки.
Правильный выбор проблемы представляет самую критическую часть разработки в целом. Если выбрать неподходящую проблему, можно очень быстро увязнуть в «болоте» проектирования задач, которые никто не знает, как решать. Неподходящая проблема может также привести к созданию экспертной системы, которая стоит намного больше, чем экономит. Дело будет обстоять еще хуже, если разработать систему, которая работает, но неприемлема для пользователей. Даже если разработка выполняется самой организацией для собственных целей, эта фаза является подходящим моментом для получения рекомендаций извне, чтобы гарантировать удачно выбранный и осуществимый с технической точки зрения первоначальный проект.
При выборе области применения следует учитывать, что если знание, необходимое для решения задач, постоянное, четко формулируемое и связано с вычислительной обработкой, то обычные алгоритмические программы, по всей вероятности, будут самым целесообразным способом решения проблем в этой области.
Экспертная система ни в коем случае не устранит потребность в реляционных базах данных, статистическом программном обеспечении, электронных таблицах и системах текстовой обработки. Но если результативность задачи зависит от знания, которое является субъективным, изменяющимся, символьным или вытекающим частично из соображений здравого смысла, тогда область может обоснованно выступать претендентом на экспертную систему.
Обычно экспертные системы разрабатываются путем получения специфических знаний от эксперта и ввода их в систему. Некоторые системы могут содержать стратегии одного индивида. Следовательно, найти подходящего эксперта — это ключевой шаг в создании экспертных систем.
В процессе разработки и последующего расширения системы инженер по знаниям и эксперт обычно работают вместе. Инженер по знаниям помогает эксперту структурировать знания, определять и формализовать понятия и правила, необходимые для решения проблемы.
Во время первоначальных бесед они должны решить, будет ли их сотрудничество успешным. Это немаловажно, поскольку обе стороны будут работать совместно, по меньшей мере в течение одного года. Кроме них в коллектив разработчиков целесообразно включить потенциальных пользователей и профессиональных программистов. Подробно функции каждого члена коллектива описаны в следующем параграфе.
Предварительный подход к программной реализации задачи определяется, исходя из характеристик задачи и ресурсов, выделенных на ее решение. Инженер по знаниям выдвигает обычно несколько вариантов, связанных с использованием имеющихся на рынке программных средств. Окончательный выбор возможен лишь на этапе разработки прототипа.
После того как задача определена, необходимо подсчитать расходы и прибыль от разработки экспертной системы. В расходы включаются затраты на оплату труда коллектива разработчиков. В дополнительные расходы будет включена стоимость приобретаемого программного инструментария, с помощью которого будет разработана экспертная система.
Прибыль может быть получена за счет снижения цены продукции, повышения производительности труда, расширения номенклатуры продукции или услуг или даже разработки новых видов продукции или услуг в области, в которой будет использоваться ЭС. Соответствующие расходы и прибыль от системы определяются относительно времени, в течение которого возвращаются средства, вложенные в разработку. На современном этапе большая часть фирм, развивающих крупные экспертные системы, предпочли разрабатывать дорогостоящие проекты, приносящие значительную прибыль.
Можно ожидать развития тенденции разработки менее дорогостоящих систем, хотя и с более длительным сроком окупаемости вложенных в них средств, так как программные средства разработки экспертных систем непрерывно совершенствуются. После того как инженер по знаниям убедился, что:
• данная задача может быть решена с помощью экспертной системы;
• экспертную систему можно создать предлагаемыми на рынке средствами;
• имеется подходящий эксперт;
• предложенные критерии производительности являются разумными;
• затраты и срок их окупаемости приемлемы для заказчика,
он составляет план разработки. План определяет шаги процесса разработки и необходимые затраты, а также ожидаемые результаты.

2.4.3. Технология быстрого прототипирования

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




Рис. 2.4. Стадии разработки прототипа ЭС

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

Идентификация проблемы
Уточняется задача, планируется ход разработки прототипа экспертной системы, определяются:
• необходимые ресурсы (время, люди, ЭВМ и т. д.);

<< Предыдущая

стр. 3
(из 26 стр.)

ОГЛАВЛЕНИЕ

Следующая >>