Книга
Книга
ШЫ ЗНАНИЙ
ШТЕЛЛЕКТУАЛЬНЫХСШЕШ
ББКЗг973.23-018я7
УДК681Л016(075)
П2
Рецензенты:
Калосов О. С„ доктор технических нэук. профессор, декэн факультета «Автоматика и вычислительная техни-ка! Мостовского энергетического института (технического университета)
Кутепов В. И, доктор технических наук, профессор, заведующий кафедрой «Прикладная математика»Московского энергетического института (технического университета)
Кумунжиев К 8・,доктор технических наук, профессор, заведующий кафедрой «Информационные системы»Ульяновского государственного университета
Сулейманов Д UJ- канд^ат технических наук, заведующий совместной научно-исследовательскойлабораторией «Проблемы искусственного интеллекта» Академии наук Татарстанаи Казанского государственного университета
Г12 Базы знаний интеллектуальных систем / Т. А, Гаврилова, В.①.Хорошевский.—— СПб; Питер, 2001. — 384 мл,
ISBN 5-272-00071^1
Учебник для технических вузов по входящим в различные дисциплины вопросам разработки Iгнте-тлектуальных систем — развнвагощсйся области информатики. Актуальность предмета определяется растущим применением инженерии знаний и системного анализа в различных областях деятельности-
Особенностью изложения является его практическая направленность: освоения имеющегося материала достаточно хпя начала самостоятельной работы над созданием интеллектуальной систе^ мы, остюванной на знаниях.
В учебнике учтена все возрастающая роль Интернета, и потому подробно рассматривается применение инженерш! знаний в Сети.
SSK32.973.23-018я7
УДК 6813016(075)
ISBN 5-272-00071^1
夕/期"
© Т. А. Гаврилова, В. Ф- Хорошевский, 2001
© Издательский дом «Питер», 2001
Содержание
Предисловие с
о
Об авторах От издательства
Введение в интеллектуальные системы9
Краткая история искусственного интеллектаg
Основные направления исследований в области искусственного интеллекта
Представление знаний и вывод на знаниях19
Нечеткие знания31
Разработка систем, основанных на знаниях 39
Введение в экспертные системы. Определение и структура39
Классификация систем, основанных на знаниях41
Коллектив разработчиков45
Технология проектирования и разработки49
Теоретические аспекты инженерии знаний59
31 Поле знаний 59
Стратегии получения знаний67
Теоретические аспекты извлечения знаний71
Теоретические аспекты структурирования знаний90
Технологии инженерии знаний99
Классификация методов практического извлечения знаний99
Коммуникативные методы
Текстологические методы 124
Простейшие методы структурирования
Состояние и перспективы автоматизированного приобретения знаний “
j145
Примеры методов и систем приобретения знании
Новые тенденции и прикладные аспекты инженерии знаний
Латентные структуры знаний и психосемантика
Метод репертуарных решеток 176
Управление знаниями 183
Визуальное проектирование баз знаний как инструмент познания 190
Проектирование гипермедиа БД и адаптивныхобучающихсистем 195
Программный инструментарий разработки систем, основанных на знаниях 2°3
Технологии разработки программного обеспечения — цели, принципы, парадигмы203
Методологии создания и модели жизненного цикла
интеллектуальных систем214
Языки программирования дляИИ и языки представления знаний218
Инструментальные пакеты дляИИ 224
WorkBench-системы231
Пример разработки системы, основанной на знаниях .... 237
Продукционно-фреймовый ЯПЗ PILOT/2 237
Психодиагностика — пример предметной области для построения экспертных систем 252
Разработка и реализация психодиагностической ЭС «Cattell» 256
Представление данных и знаний в Интернете 271
Язык HTML и представление знаний 271
Онтологии и онтологические системы 284
83 Системы и средства представления онтологических знаний301
Интеллектуальные Интернет-технологии 317
Программные агенты и мультиагентные системы317
92 Проектирование и реализация агентов и мультиагентных систем323
Информационный поиск в среде Интернет335
Заключение ООО
358358Литература
358
358
С любовью, учителю Д. А. Поспелову, друзьям 〃 близким, всем, кто помог созданию этой версии учебника, и, надеемся, будет сотрудничать с нами дальше
Предисловие
Вы открываете необычный учебник - учебник, предназначенный для студентов технических университетов и их преподавателей, для аспирантов, магистров, бакалавров и практиков-разработчиков. Этот учебник написан для тех, кто хочет вступить в мир науки с интригующим названием — ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ.
Несмотря на обилие книг с аналогичным названием (см. список основной литературы), на сегодняшний день нет вузовского учебника по предметам «Интеллектуальные системы», «Экспертные системы», «Базы знаний» и т. д. Тем не менее практически все технические университеты совершенно справедливо включили такого рода дисциплины в свои программы. Поскольку бум в этой науке пришелся на конец 70-х и 80-е, большинство книг на русском языке издано в эти годы. И авторы приносят благодарность создателям первых отечественных мо~ нографнй и справочников, а также переводчикам классических книг в этой обла- сти — Д. А. Поспелову, Э. В. Попову, В. Л. Стефа шоку, Г. С. Осипову и другим пионерам, без работ которых создание этого учебника было бы невозможно.
Необычность этого учебника связана также с подчеркнутой междисциплинарностью выбранного подхода, отказом от «клановости» отдельных научных школ н направлений. Этот учебник могут читать инженеры и математики, экономисты и биологи, программисты и медики. Он практически не требует предварительной подготовки в данной области знаний и рассчитан на широкий круг читателей, заинтересованных разработкой интеллектуальных систем, основанных на знаниях.
N4bl отказались от излишней специализации в пользу широты изложения, нам хотелось представить горизонты этой науки, а не прокопать в ней глубоки% но узкий тунпель.
Другой особенностью учебника является его практическая направленность. Ос- вонв изложенный материал, студент или другой заинтересованный читатель смо- жет самостоятельно приступить к разработке инте л лектуа льной системы в роли инженера по знаниям. Акцент в учебнике сделан именно на работу с。знаниями. Фактически он ориентирован на подготовку уникальных специалистов, спрос на которых на современном рынке высоких информационных технологии многократно превышает спрос на программистов. Этих специалистов называют по-раз- ному — системные аналитики, постановщики задач, инженеры по знаниям, инже- неры-когнитологи. По знглийски это — knowledge engineers
Рассмотренные в учебнике вопросы представляют лишь вершину айсбеога спад нительно молодой наУки - ИНЖЕНЕРИИ ЗНАНИЙ. И, надейся, по^Е ее новые горизонты в мире информационных технологий.
Учитывая значительное число достижений и публикаций в этой области за пубе- жом, авторы сознательно будут приводить терминологию, используемую в ориги- налах, что существенно облегчит изучение проблемы желающим повыситьсвою квалификацию через Интернет и другие источники англоязычной информации. Материал учебника основан на курсах лекций, прочитанных авторами для студентов Санкт-Петербургского государственного технического университета (бывший Политех) и Московского физико-технического института (Технического университета). Объем курса от 32 до 64 лекционных часов плюс столько же практических занятии. По сути дела здесь в одном учебнике собрано несколько курсов лекций, ориентированных на разные специализации и разную базовую подготовку, В целом же данный учебник, по опыту авторов, содержит материал для двухгодовых курсов с общим названием «Искусственный интеллект».
!Разные категории читателей могут читать учебник по различным «сценариям».
Сценарий 1 — для студентов-«сачков^ технических вузов перед сессией. Пометить в оглавлении параграфы, вошедшие в список вопросов для экзамена, р читать на максимальной скорости.
Сценарий 2 — для студентов-отличников. Внимательно прочесть весь уч ебни I последовательно, затем перейти к сценарию 1.
Сценарий 3 — для студентов-непрограммистов и всех, кто просто интересует ся проблемой для расширения кругозора. Главы 1, 2, 4, 9.
Сценарий 4 — для преподавателей вузов и тех, кто хочет овладеть инженерие1 знаний. Использовать учебник как готовый конспект, расширив или сократи: материал по своему усмотренню. Варианты:
минимальный курс: параграфы 1.1-1.4, 2.1-2.4, 3.2, 3.4, 4.1-4.3, 4.4, 6.W 82 9.1;”
главы 1-2 могут составить основу вводного курса в проблематику искус ственного интеллекта и систем, основанных на знаниях;
аналогичный вводный курс по тематике программных средств искусствен ного интеллекта может дать материал главы 6, параграфа 7.1 и, при нал и чни времени, 9.1, 9.2;
семестровый курс по базам знании экспертных систем может быть проч и тан на основе глав 2-4, 7;
базовый курс по инженерии знаний составляют главы 3, 4;
наконец, главы 8, 9 дают основу для курса по тематике интеллектуальны: Интернет-технологип.
Сценарий 5 — для системных аналитиков. Главы 3-6.
Сценарий 6 — для программистов и разработчиков. Главы 2-4, 6-9.
Материал, набранный более мелким шрифтом, носит иллюстративный характер
В заключение авторы благодарят заведующую редакцпеГг технической литературы издательства «Питер» Екатерину Строганову за энергию и энтузиазм при убеждении авторов принять решение о начале работы над учебником и поддержку в ее завершении.
В параграфе 4.6 четверто ii главы использованы матер иа,71ы моно графи и «Приобретение знании пнтеллектугьльиымп системами», любезно предоставленные ее автором Г. С. Осиповым.
Глубокую признательность авторы выражают Александру Волкову. Он является разработчиком программных систем, описанных в пятой главе. Параграф 5.1 написан совместно с А. В. Волковым, работа с которым существенно повлияла па формирование взглядов одного из авторов.
На подготовку материалов, представленных в параграфах 8.2 и 8.3 восьмой главы, а также в параграфах 9.1 и 9.3 девято!! главы, в значительной мере повлияла работа по мультиагситпым системам и интеллектуальным Иитерлет-ориснтпро- ванным системам поиска ппформацпи, проведенная Н. В. Манкевич. По сути дела именно еп один из авторов данной книги обязан своей «миграцией» в зту новую область интеллектуальных информационных технологий из проблематики программного обеспечения систем искусственного интеллекта.
Отдельная благодарность должна быть высказана Е. Васильево/!, Н. Нулгсровон н Н. Сташ, сотрудницам Института высокопроизводительных вычислений п баз данных Миннауки РФ, за техническую помощь при работе над рукописью, без которой книга могла бы так н не дойти до читателей.
Главы 1-5 написаны д. т. н., проф. Т. А. Гавриловой, главы 6—9 — 〃. т. п., проф. В. Ф. Хорошевским. Предисловие “ заключение — результат совместной работы авторов, которые с надеж;1О11 на aa.nbiieiimee сотрудничество выражают глубокую признательность всем, кто помог выходу зтоН книги.
Об авторах
Т* А. Гаврилова — д> т. п., профессор кафедры компьютерных интеллектуальных технологий Санкт-Петербургского「осуиарственного технического университета, председатель Петербурге кого отделения Ассоциации искз^сствсппого интеллекта. В ①.Хорошевскш! — д. т. п., профессор М①ТН, заведуюпцп! сектором вычис- лительыого центра РАН, член Научного Совета Российскот! Ассоциации пскусст- венного интеллекта. ”
От издательства
Ваши замечания, предложемпя, вопросы отправляете по адресу электрош-юй по- чты comP@piter.com (издательство «Питер», компьютерная редакция).
Мы будем рады узнать наше мнение!
Подробную информацию о наших книгах вы на/щете па Wcb-caine издательства nttp://www.piter.com.
Введение в интеллектуальные системы
口 Краткая история искусственного интеллекта
口 Основные направления исследований в области искусственного интеллекта
口 Представление знаний и вывод на знаниях
□ Нечеткие знания
口 Прикладные интеллектуальные системы
-1 - Краткая история искусственного интеллекта
1-1.1. Предыстория
Идея создания искусственного подобия человека для решения сложных задач и моделирования человеческого разума витала в воздухе еще в древнейшие времена. Так, в древнем Египте была создана «оживающая» механическая статуя бога Амона. У Гомера в ^Илиаде» бог Гефест ковал человекоподобные существа-автоматы. В литературе эта идея обыгрывапась многократно: от Галатеи Пигмалиона до Буратино папы Карло. Однако родоначальником искусственного интеллекта считается средневековый nciiaHcwiii философ, математик и поэт РаймондЛуллий, которып еще в XIII веке попытался создать механическую машину для решения различных задач, на основе разработанной нм всеобщей классификации понятий, В XVIII веке Лейбниц и Декарт независимо друг от друга продолжили эту идею, предложив универсальные языки каасспфлкашш всех наук. Эти работы можно считать первыми теоретическими работами в области искусственного интеллекта. Окончательное рождение искусственного интеллекта как научного направления произошло только после создания ЭВМ в 40-х годах XX века. В это же время Норберт Винер создал свои основополагающие работы по новон науке — кибернетике.
Термин «искусственный интеллект» - ИИ - (AI - artificial intelligence) был предложен в 1956 г. на семинаре с аналогичным названием в Дартсмутском колледже (США). Семинар был посвящен разработке методов решения логических, а не вычислительных задач. В английском языке данное словосочетание не ИМеет той слегка фантастической антропоморфной окраски, которую оно приобрело в довольно неудачном русском переводе. Слово intelligence означает :уме- нне рассуждать разумно», а вовсе не <tинтеллекта, для которого есть термин intellect.
Вскоре после признания искусственного интеллекта отдельной областью науки произошло разделение его на два направления: нейрокибернетика и ^кибернетика черного ящикам. Эти направления развиваются практически независимо, существенно различаясь как в методологии, так и в технологии. И только в настоящее время стали заметны тенденции к объединению этих частей вновь в единое целое.
Зарождение нейрокибернетики
Основную идею этого направления можно сформулировать следующим образом: Единственный объект, способный мыслить, — это человеческий мозг. Поэтому любое «мыслящее» устройство должно каким-то образом воспроизводить его структуру.
Таким образом, нейрокибернетика ориентирована на программно-аппаратное моделирование структур, подобных структуре мозга. Физиологами давно установлено, что основой человеческого мозга является большое количество (до 1021) связанных между собой и взаимодействующих нервных клеток — нейронов. Поэтому усилия нейрокибернетики были сосредоточены на создании элементов, аналогичных нейронам, и их объединении в функционирующие системы. Эти системы принято называть нейронными сетями, или нейросетями.
Первые нейросети были созданы Розенблаттом и Мак-Каллоком в 1956-1965 гг. Зт。были попытки создать системы, моделирующие человеческий глаз и его взаи* модействие с мозгом. Устройство, созданное ими тогда, получило название персептрона (perceptron). Оно умело различать буквы алфавита, но было чувствительно к их написанию. Например, букв ы Л, А и Л для этого устройства был и тремя разными знаками. Постепенно в 70—80 годах количество работ по этому направлению искусственного интеллекта стало снижаться. Слишком неутешительны были первые результаты. Авторы объясняли неудачи малой памятью и низким оыстродеиствием существующих в то время компьютеров.
Однако в 1980-х в Японии в рамках проекта «ЭВМ V поколения» был создан первый нейрокомпьютер, или компьютер VI поколения. К этому времени ограни- чення по памяти н быстродействию были практически сняты. Появились транспьютеры —параллельные компьютеры с большим количеством процессоров.
Транспьютерная технология — это только один из десятка новых подходов к аппаратной реализации нейросетей, которые моделируют иерархическую структуру мозга человека. Основная область применения нейрокомпьютеров сегодня —
это задачи Распознавания образов, например идентификация объектов по пез* татам аэрофотосъемки из космоса.*
Можно выделить 3 подхода к созданию нейросетей:
L Аппаратный — создание специальных компьютеров, нейрочипов, плат расширения, наборов микросхем, реализующих все необходимые алгоритмы.
Программный - создание программ и инструментариев, рассчитанных иа высокопроизводительные компьютеры. Сети создаются в памяти компьютера. всю работу выполняют его собственные процессоры.
Гибридный 一 комбинация первых двух. Часть вычислений выполняют спе- циальные платы расширения (сопроцессоры), часть — программные средства.
Более глубокое рассмотрение этого чрезвычайно перспективного и интересного направления исследований искусственного интеллекта выходит за рамки данной книги. Подробнее см. работы [Соколов, Вейпсявичус, 1989; Амамия, Танака, 1993].
1-1.3. От кибернетики «черного ящика» к ИИ
В основу этого подхода был положен принцип, противоположный нейрокибернетике.
Не имеет значения, как устроено смыслящееустройство. Главное, чтобы на заданные входные воздействия оно реагировало так же, как человеческий мозг. Сторонники этого направления мотивировали свой подход тем, что человек не должен слепо следовать природе в своих научных и технологических поисках. Так, например, очевиден успех колеса, которого не существует в природе, или самолета, не машущего крыльями, подражая птице. К тому же пограничные науки о человеке не смогли внести существенного теоретического вклада, объясняющего хотя бы приблизительно, как протекают интеллектуальные процессы у человека, как устроена память и как человек познает окружающий мир.
Это направление искусственного интеллекта было ориентировано на поиски алгоритмов решения интеллектуальных задач на существующих моделях компьютеров. Существенный вклад в становление новой науки внесли ее ^пионеры*: Маккарти (автор первого языка программирования для задач ИИ — ЛИСПа), Минский (автор идеи фрейма п фреймовой модели пред ставления знаний), Ньюэлл, Саймон, Шоу, Хант п другие.
В 1956-1963 гг. велись интенсивные поиски моделей и алгоритмов человеческого мышления и разработка первых программ на их основе. Представители существующих гуманитарных наук — философы, психологи, лингвисты — ни тогда, ни сейчас не в состоянии были предложить таких алгоритмов. Тогда кибернетики начали создавать собственные модели. Так последовательно были созданы и опробованы различные подходы.
В конце 50-х годов родилась модель лабиринтного поиска. Этот подход представляет задачу как некоторое пространство состояний в форме графа, и в этом графе проводится поиск оптимального л}ти от входных данных к результиру-
ЮЩим. Была проделана большая работа по разработке этой модели, но для решения практических задач эта идея не нашла широкого применения. В первых учебниках по искусственному интеллекту [Хант, 1986; Эндрю, 1985] описаны ЭТи программы — они играют в игру《15», собирают «Ханойскую башню», играют в шашки п шахматы.
Начало 60-х — это эпоха эвристического программирования. Эвристика — правило, теоретически не обоснованное, которое позволяет сократить количество переборов в пространстве поиска. Эвристическое программирование — разработка стратеги и действий на основе известных, заранее заданных эвристик [Александров, 1975].
в 1963-1970 гг. к решению задач стали подключать методы математической логики. Робинсон разработал метод резолюций, который позволяет автоматически доказывать теоремы при наличии набора исходных аксиом. Примерно в это же время выдающийся отечественный математик 10. С. Маслов предложил так называемый обратный вывод, впоследствии названный его именем, решающий аналогичную задачу другим способом [Маслов, 1983]. На основе метода резолюций француз Альбер Кольмероэ в 1973 г. создает язык логического программирования Пролог. Большой резонанс имела программа ^Логик-теоре- тик^, созданная Ньюэлом, Саймоном и Шоу, которая доказывала школьные теоремы. Однако большинство реальных задач не сводится к набору аксиом, и человек, решая производственные задачи, не нспользует классическую логику, поэтому логические модели при всех своих преимуществах имеют существен- пые ограничения по классам решаемых задач.
История искусственного интеллекта полна драматических событий, одним из которых стал в 1973 г. так называемый «доклад Ла11тхилла», который был подготовлен в Великобритании по заказу Британского совета научных исследований. Известный математик Д. Лайтхилл, никак с 14 И профессионально не св я- заиный, подготовил обзор состояния дел в области ИИ. В докладе были признаны определенные достижения в области ИИ, однако уровень их определялся как разочаровывающий, и общая оценка была отрицательная с позп- ии" практической значимости. Этот отчет отбросил европейских исследова- телен примерно на 5 лет назад, так как ф и и анс иров ан ие ИИ существенно сократилось.
Примерно в это же время существенный прорыв в развитии практических приложений искусственного интеллекта произошел в США, когда к с ере ди не 1970-х на смену поискам универсального алгоритма мышлслия пришла идея моделировать конкретные знания специалистов-экспертов. В США появились первые коммерческие системы, основанные на знаниях, или экспертные систе- Mbi(JL入применяться новый подход к решению задач искусственного
интеллекта 一 представление знаний, Созданы MYCIN и DENDRAL [Shortliffe, 1976, Buchanan, Feigenbaum, 1978], ставшие уже классическими, две первые экспертные системы для медицины и химии. Существенный финансовый вклад вносит Пентагон, предлагая базировать новую программу министерства обо- роиы。山厶(Strategic Computer Initiative - SCI) на принципах ИИ. Уже вдо-
гонку упущенных возможностей в начале 80-х объявлена глобальная прогоам- ма развития новых технологий ESPRIT (Европейский Союз), в которуювадю- чена проблематика искусственного интеллекта.・
В ответ на успехи США в конце 70-х в гонку включается Яп^шя, объявив о паиале проекта машин V поколения, основанных на знаниях. Проект был рас- считаи на 10 лет и объединял лучших молодых специалистов (в возрасте до 35 лет) крупнейших японских компьютерных корпораций. Для этих специ- алистов^был создан специально новый институт ICOT, и они получили полную свободу действий, правда, без права публикации предварительных результатов. В результате они создали достаточно громоздкий и дорогой символьный процессор, программно реализующий ПРОЛОГо-подобный язык, не получивший широкого признания. Однако положительный эффект этого проекта был очевиден. В Японии появилась значительная группа высококвалифицированных специалистов в области ИИ, которая добилась существенных результатов в различных прикладных задачах. К середине 90-х японская ассоциация ИИ насчитывает 40 тыс. человек.
Начиная с середины 1980-х годов, повсеместно происходит коммерциализация искусственного интеллекта. Растут ежегодные капиталовложения, создаются промышленные экспертные системы. Растет интерес к самообучающимся системам. Издаются десятки научных журналов, ежегодно собираются международные и национальные конференции по различным направлениям ИИ.
Искусствеinibiii интеллект становится одной из наиболее перспективных и престижных областей информатики (computer science).
История искусственного интеллекта в России
В 1954 г. в МГУ пачсП свою работу семинар << Автоматы и мьшыенпе» под руководством академика Ляпунова А. А. (1911 — 1973). одного из основателен российской кибернетики. В этом семинаре прииима-чи участие физиологи, лингвисты, психолош, математики. Принято считать, что именно в это время родился искусственный интеллект в России. Как и за рубежом, выделились два основных направ^пения — ней- рокпберпетикп и кибернетики «черного ящика».
В 1954-1964 гг. создаются отдельные программы и проводятся исследования в области поиска решения логических задач. В Ленинграде (ЛОМИ -Ленинградское отделение математического института им. Стеклова) создается программа АЛ ПЕВ ЛОМИ, автоматически докрывающая теоремы. Она основана на оригинальном обратном выводе Маслова, ама.чогпчиом методу резолюций Рооинсона. Среди наиболее значимых результатов, полученных отечественными ученым» в 60-е годы, следует отмстить алгоритм «Кора» М. М- Бонгард^моделирующир деятельность человеческого мозга при распознавании образов. Большои вклад в становление российской школы ПИ внесли вндаю皿忙ся ученн呼еу囁?, Пушкин В. Н., Гаврилов М. 4 чьи ученики и явились пионерами зтон на\к сии (например, знаменитая Гавр^човская школа).
В 1965—1980 гг. происходит рождение нового направления — ситуационного управления (соответствует представлению знаний, в западной терминологии). Основателем этой научной школы стал проф. Поспелов Д. 4. Были разработаны специальные модели представления ситуаций — представления знаний [Поспе- лов, [986]. В ИПМ АН СССР был создан язык символьной обработки данных РЕФАЛ [Тургин, 1968].
При том что отношение к новым наукам в советской России всегда было настороженное, наука с тэким ^вызывающим» названием тоже нс избежала этом учисти и 6blла встречена в Академии наук в штыки [Поспелов, 1997]. К счастью, даже среди членов Академии наук СССР нашлись люди, не испугавшиеся столь необычного словосочетания в качестве названия научного направления. Двое из них сыграли огромную роль в борьбе за признание ИИ в нашей стране. Это были академики А И. Берг и Г. С Поспелов.
Только в 1974 году при Комитете по системному анализу при президиуме АН СССР был создан Научный совет по проблеме «Искусственный интеллект», его возглавил Г. С. Поспелов, его заместителями были избраны Д. А. Поспелов и Л. И. Микулич. В состав совета входили на разных этапах М. Г. Гаазе-Рапопорт, Ю. И. Журавлев, Л. Т. Кузин, А. С. Нариньяни, Д. Е. Охсщнмскн访,А. И. Половинкин, О. К. Тихомиров, В. В. Чавчанидзе.
По инициативе Совета было организовано пять комплексных научных проектов, которые были возглавлены ведущими специалистами в данной области. Проекты объединяли исследования в различных коллективах страны: «Диалог» (работы по пониманию естественного языка, руководители А. П. Ершов, А. С. Наринь- яни), «Ситуация» (ситуационное управление, Д. А. Поспелов), «Банк» (банки данных, Л. Т. Кузин), «Конструктор» (поисковое конструирование, А. И. Половинкин), «Интеллект робота» (Д. Е. Охоцимскнн).
В 1980-1990 гг. проводятся активные исследования в области представления знаний, разрабатываются языки представления знаний, экспертные системы (более 300).
В 1988 г. создается АИИ — Ассоциация искусственного интеллекта. Ее членами являются более 300 и селедователей. Президентом Ассоциации единогласно избирается Д. А. Поспелов, выдающийся ученый, чей вклад в развитие ИИ в России трудно переоценить. Крупнейшие центры — в Москве, Петербурге, Пе- реславле-Залесском, Новосибирске, В научный совет Ассоциации входят веду- Щ11е исследователи в области ИИ 一 В. П. Гладун, В. И. Городецкий, Г. С. Оси- пов- 3. В. Попов, В. Л. Стефанюк, В. Ф. Хорошевский, В. К. Финн, Г. С. Центин, А, С. Эрлих и другие ученые. В рамках Ассоциации проводится большое колн”е- ство исследований, организуются школы для молодых специалистов, семинары, симпозиумы, раз в два года собираются объединенные конференции издается научный журнал.
Уровень теоретических исследований по искусственному интеллекту в России нмиуть не ниже мирового. К сожалению, начиная с 80-х гг. на прикладных рабо- тах начинает сказываться постепенное отставание в технологии. На данный мо- мент отставание в области разработки промышленных интеллектуальных систем составляет порядка 3-5 лет. , •
1 ・2・ Основные направления исследований в области искусственного интеллекта
Синтезируя десятки определений ИИ из различных источников, в данной книге в качестве рабочего определения можно предложить следующее.
Искусственный интеллект 一 это одно из направлений информатики, целью которого яв- пяется разработка аппаратно-программных средств, позволяющих пользователю-не
программисту ставить и решать свои, традиционно считающиеся интеллектуальными задачи, общаясь с ЭВМ на ограниченном подмножестве естественного языка.
Среди множества направлений искусственного интеллекта есть несколько ведущих, которые в настоящее время вызывают наибольший интерес у исследователей и практиков. Опишем их чуть подробнее.
1- Представление знаний и разработка систем, основанных на знаниях (knowledge-based systems)
Это основное направление в области разработки систем искусственного интеллекта. Оно связано с разработкой моделей представления знаний, созданием баз зпашпи образующих ядро экспертных систем. В последнее время включает в себя моде/in и методы извлечения н структурирования знаний и сливается с инжене- piieit знани;!. Именно исследованиям в этой области посвящена данная книга. Подробнее см, главы 2-5.
2- Программное обеспечение систем ИИ (software engineering for Al)
В рамках этого направления разрабатываются специальные языки для решения 11 и те л ле ктуадьных задач, в которых традиционно упор делается на преобладание логической и символьной обработки над вычислительными процедурами. Эти языки ориентированы на символьную обработку информации — LISP, PROLOG, SMALLTALK, РЕФАЛ п др. Помимо этого создаются пакеты прикладных программ, ориентированные на промышленн\'ю разработку интеллектуа-пьных систем, или программные инструментарии искусственного интеллекта, напри、? КЕЕ, ART, G2 [Хейес-Рот н др., 1987; Попов, Фоминых, Кисель, Шалот, 1996]. Достаточно популярно также создание так называемых пустых экспертных систем или «оболочек» - КАРРА, EXSYS, Ml, ЭКО и др., базы знаний которых можно наполнять конкретными знаниями, создавая различные прикладные системы. Подробно эти технологии рассмотрены в главе 6.
[.2-3- Разработка естественно-языковых интерфейсов и машинный перевод (natural language processing)
Начиная с 50*х годов одной из популярных тем исследований в области ИИ является компьютерная лингвистика, и, в частности, машинный перевод (МП). Идея маши иного перевода оказалась совсем нс так проста, как казалось первым исследователям н разработчикам.
Уже первая программа в области естественно-языковых (ЕЯ) интерфейсов - переводчик с английского на русский язык — продемонстрировала неэффективность первоначального подхода, основанного на пословном переводе. Однако еще долго разработчики пытались создать программы на основе морфологического анализа. Неплодотворность такого подхода связана с очевидным фактом: человек может перевести текст только на основе понимания его смысла и в контексте предшествующей информации, или контекста. Иначе появляются переводы в стиле «Моя дорогая Маша — my expensive Masha》.В дальнейшем системы МП усложнялись и в настоящее время использ\7ется несколько более сложных моделей:
применение так называемых ^языков-посредников^ или языков смысла, в результате происходит дополнительная трансляция «исходный язык оригинала —язык смысла — язык перевода»;
ассоциативный поиск аналогичных фрагментов текста и их переводов в специальных текстовых репозиториях или базах данных;
структурный подход, включающий последовательный анализ и синтез естественно-языковых сообщений. Традиционно такой подход предполагает наличие нескольких фаз анализа:
Морфологический анализ — анализ слов в тексте.
Синтаксический анализ — разбор состава предложений и грамматических связей между словами.
Семантический анализ ——анализ смысла составных частей каждого предло- жения на основе некоторой предметно-ориентированной базы знаний.
Прагматический анализ — анализ смысла предложений в реальном контексте на основе собственной базы знаний.
Синтез ЕЯ г сообщений включает аналогия ные этапы, но несколько в другом по- рядке. Подробнее см. работы [Попов, 1982; Малысовский, 1985].
1・2・4・ И нтел л ектуа л ьн ые роботы (robotics)
Идея создания роботов далеко не нова, Само слово «робот» появилось в 20-х годах, как производное от чешского «робота» — тяжелой грязной работы. Его а*ор — чешский писатель Карел Чапек, описавший роботов в своем рассказе
:認統北嚣 WexHW""呻而Е предназначенные для автоматизации че-
Можно условно выделить несколько поколений в истории создания и развития робототехники:尸
I поколение. Роботы с жесткой схемой управления. Практически все современ- нне промышленные роботы принадлежат к первому поколению Фактически программируемые манипуляторы.*Т°
И поколение. Адаптивные роботы с сенсорными устройствами. Есть образцы таких роботов, но в промышленности они пока используются мало.
Ш поколение. Самоорганизующиеся или интеллектуальные роботы. Это — конечная цель развития робототехники. Основные нерешенные проблемы при создании интеллектуальных роботов — проблема машинного зрения и адекватного хранения и обработки трехмерной визуальной информации.
В настоящее время в мире изготавливается более 60 000 роботов в год. Фактически робототехника сегодня — это инженерная наука, не отвергающая технологий ИИ, но не готовая пока к их внедрению в силу различных причин.
1.2.5. Обучение и самообучение (machine learning)
Активно развивающаяся область искусственного интеллекта. Включает модели, методы и алгоритмы, ориентированные на автоматическое накопление и формирование знаний на основе анализа и обобщения данных [Гаек, Гавранек, 1983; Гладу и, 1994; Финн, 1991]. Включает обучение по примерам (или индуктивное), а также традиционные подходы из теории распознавания образов.
В последние годы к этому направлению тесно примыкают стремительно развивающиеся системы data mining — анализа данных и knowledge discover}' — поиска закономерностей в базах данных.
・2・6・ Распознавание образов (pattern recognition)
Традиционно — одно из направлешп'! искусственного интеллекта, берущее начало у самых его истоков, но в настоящее время практически выделившееся в самостоятельную науку. Ее основной подход — описание классов объектов через определенные значения значимых признаков. Каждому обьекту ставнтся в соот
ветствие матрица признаков, по которой происходит его распознавание. Процедура распознавания использует чаще всего специальные математические процедуры и функции, разделяющие объекты на классы. Это направление близко к машинному обучению и тесно связано с нейрокпбернетикои [Справочник по ИИ, 1990]. ” ”
[27・ Новые архитектуры компьютеров (new hardware platforms and architectures)
Самые современные процессоры сегодня основаны на традиционной последова- тельной архитектуре фон Неймана, используемой еще в компьютерах первых поколений. Эта архитектура крайне неэффективна для символьной обработки. Поэтому усилия многих научных коллективов и фирм уже десятки лет нацелены на разработку аппаратных архитектур, предназначенных для обработки символьных и логических данных. Создаются Пролог- и Лисп-машины, компьютеры V и VI поколений. Последние разработки посвящены компьютерам баз данных, параллельным и векторным компьютерам [Амамия, Танака, 1993].
И хотя удачные промышленные решения существуют, высокая стоимость, недостаточное программное оснащение и аппаратная несовместимость с традиционными компьютерами существенно тормозят широкое использование новых архи- тектур.
Игры и машинное творчество
Это, ставшее скорее историческим, направление связано с тем, что на заре исследований ИИ традиционно включал в себя игровые и нтеллектуальные задачи — шахматы, шашки, го. В основе первых программ лежит один из ранних подходов —лабиринтная модель мышления плюс эвристики. Сейчас это скорее коммерческое направление, так как в научном плане эти идеи считаются тупиковыми.
Кроме того, это направление охватывает сочинение компьютером музыки [Зарипов, 1983], стихов, сказок [Справочник по ИИ, 1986] и даже афоризмов [Любич, 1998]. Основным методом подобного «творчества» является метод пермутаций (перестановок) плюс использование некоторых баз знаний и данных, содержащих результаты исследований по структурам текстов, рифм, сценариям и т. п.
-2-9. Другие направления
ИМ — меж ди сци пл инар ная наука, которая, как мощная река по дороге к морю, вбирает в себя ручейки н речки смежных наук. Выше перечислены лишь те на- правления, которые прямо или косвенно связаны с основной тематикой учебни- ка — инженерией знаний. Стоит лишь взглянуть на основные рубрикаторы конференций по ИИ, чтооы понять, насколько широко простирается область исследован nii по ИИ:
генетические алгоритмы;
когнитивное моделирование;
интеллектуальные интерфейсы;
распознавание и синтез речи;
Дедуктивные модели;
многоагентные системы;
онтологии;
менеджмент знаний;
логический вывод;
формальные модели;
мягкие вычисления и многое другое.
Конечно, невозможно в рамках одного учебника рассмотреть все многообразие подходов и идей в области ИИ, Однако некоторые новые направления будут подробнее описаны в главах 5, 8, 9.
1.3. Представление знаний и вывод
на знаниях
1 -3-1. Данные и знания
При изучении интеллектуальных систем традиционно возникает вопрос — что же такое знания и чем они отличаются от обычных данных, десятилетиями обрабатываемых ЭВМ. Можно предложить несколько рабочих определений, в рамках которых это становится очевидным.
Данные ——это отдельные факты, характеризующие объекты, процессы и явления предметной области, а также их свойства.
При обработке на ЭВМ данные трансформируются, условно проходя следующие этапы:
D1 — данные как результат измерений п наблюдении;
D2 — данные на материальных носителях информации (таблицы, протоколы, справочники):
D3 — модели (структуры) данных в виде диаграмм, графиков, функций;
D4 — данные в компьютере на языке описания данных;
D5 — базы данных на машинных носителях информации.
Знания основаны на данных, полученных эмпирическим путем. Они представляют собой результат мыслительной деятельности человека, направленной на обоо- щение его опыта, полученного в результате практическом деятельности.
Знания — это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области.
При обработке на ЭВМ знания трансформируются аналогично данным.
Z1 — знания в памяти человека как результат мышления;
Z2 — материальные носители знаний (учебники, методические пособия);
Z3 — поле знаний - условное описание основных объектов предметной области, их атрибутов и закономерности", “х связывающих;
Z4 — знания, описанные на языках представления знаний (продукционные языки, семантические сети, фреймы — см. далее);
. Z5 — база знаний на машинных носителях информации.
Часто используется такое определение знаний.
Знания — это хорошо структурированные данные, или данные о данных, или метаданные,
Существует множество способов определять понятия. Один из широко применяемых способов основан на идее пнтенсионала. Интенсыонал понятия — это определение его через соотнесение с понятием более высокого уровня абстракции с указанном специфических свойств. Интеиспопалы формулируют знания об объектах. Другой способ определяет понятие через соотнесение с понятиями более низкого уровня абстракции или перечисление фактов, относящихся к определяемому объекту. Это есть определение через данные, или экстенсиопал понятия.
Пример 1.1
Понятие «лерсональнып компьютер». Его шггснснопа.п: ^Персональный компьютер — это дружественная ЭВМ, которую можно лоставшпь 〃门 стол и купить менее, ием j« $2000-3000^
Экстспсионал этого понятия: ^Персональный компьютер 一 это Mac. IBM PC, Sinkler..^ Аля хранения данных используются базы данных (для них характерны большой объем и относительно небольшая удельная стоимость информации), для хра- непня знаний — базы aiiainiii (неболыпого объема, по исключительно дорогие информационные массивы). База знаний — основа любой интеллектуальной системы.
Знания могут быть класснфи цпрова! n)i по с л едую i.i ui м катсго [)и ям:
Поверхностные — знания о видимых взаимосвязях между отдельными событиями и фактами в ирелметно!! области.
Глубинные — аостракции, аналогии, схемы, отображающие структуру и пр про- “у процессов, протекающих в предметно!! области. Эти знания объясняют яв- “сния и могут использоваться для прогнозирования поведения объектов.
Пример 1.2
Поверхностные знания: «Если пажить ?ш кнопку звонка, раздастся звук. Если 6о,7“т ?0лоиа, то следует принять аспирина.
Глубинтяе знания: ^Принципиальная электрическая схема зввонка и проводки Знания физиологов w врачей высокой квалификации о причинах, видах головных болей и методах их лечения».
Современные экспертные системы работают в основном с поверхностными зна- ннямн. Это связано с тем, что на данный момент нет универсальных методик, позволяющих выявлять глубинные структуры знаний и работать с ними. , Кроме того, в учебниках по ИИ знания традиционно делят на процедурные и декларативные. Исторически первичными были процедурные знания, то есть знания, «растворенные» в алгоритмах. Они управляли данными. Для их изменения требовалось изменять программы. Однако с развитием искусственного интеллекта приоритет данных постепенно изменялся, и все большая часть знаний сосредоточивалась в структурах данных (таблицы, списки, абстрактные типы данных), то есть увеличивалась роль декларативных знаний.
Сегодня знания приобрели чисто декларативную форму, то есть знаниями считаются предложения, записанные на языках представления знаний, приближенных к естественному и понятных неспециалистам.
1.3.2. Модели представления знаний
Существуют десятки моделей (или языков) представления знаний для различных предметных облаете!!. Большинство из них может быть сведено к следую-
uiiiM классам:
продукционные модели;
семантические сети;
фреймы;
формальные логические модели.
Продукционная модель
Продукционная модель или модель, основанная на правилах, позволяет представить знания в виде предложений типа «Если (условие), то (действие)».
Под «условием» (антецедентом) понимается некоторое предложение-образец, по которому осуществляется поиск в базе знаний, а под «действием» (консе^ен- том) - действия, выполняемые при успешном исходе поиска (они могут быть промежуточными, выступающими далее как условия и терминальными пли целевыми, завершающими работу системы).
Чаще всего вывод на такой базе знаний бывает прямой (от данных к поиску пели) „ли обратный (от цели для ее подтверждения — к данным). Данные - это исходные факты, хранящиеся в базе фактов, на основании которых зап?скается маш: на вывода или интерпретатор правил, перебпраюшин правила из продукционной базы знаний (см. давнее).
Продукционная модель чаще всего применяется в промышленных экспертных системах. Она привлекает разработчиков своей наглядностью, высокой модульностью, легкостью внесения дополнений и изменений и простотой механизма логического вывода.
Имеется большое число программных средств, реализующих продукционный подход (язык OPS 5; <! оболочки > ил и ^пустые» ЭС — EXSYS Professional, Карра, ЭКСПЕРТ; ЭКО, инструментальные системы ПИЭС [Хорошевский, 1993] и СПЭИС [Ковригин, Перфильев, 1988] и др.)г атакже промышленных ЭС на его основе (например, ЭС, созданных средствами G2 [Попов, 1996]) и др.
Семантические сети
Термин семантическая означает «смысловая», а сама семантика — это наука, устанавливающая отношения между символами и объектами, которые они обозначают, то есть наука, определяющая смысл знаков.
Семантическая сеть — это ориентированный граф, вершины которого — понятия, а дуги —отношения между ними.
В качестве понятий обычно выступают абстрактные или конкретные объекты, а отношения — это связи типа: «зто» («АКО — А-Kind-Of», «is»), «имеет частью» («has part»), «принадлежит», «любит». Характерной особенностью семантических сетей является обязательное наличие трех типов отношений:
класс — элемент класса (цветок — роза);
свойство — значение (цвет — желтый);
пример элемента класса (роза — иа自ная).
Можно предложить несколько классификаций семантических сетей, связанных с типами отношений между понятиями.
По количеству типов отношений;
Однородные (с единственным типом отношений).
Неоднородные (с различными типами отношений).
По типам отношений:
Бинарные (в которых отношения связывают два объекта).
№арнь【е (в которых есть сиециальныс отношения, связывающие более двух noHHTiiii).
На11бо;1ее 'зет。в семантических сетях используются следующие отношения:
св'З" типа «пасть — 4е〃ое» {<класс - подкласса, «элемент -множеством
и т. н.);'
* “Ункниональнме связи (определяемые обычно глаголами «производит» «влияет^...);'
количественные (больше, меньше, равно...);
пространственные (далеко от , близко от, за, под, над...);
временные (раньше, позже, в течение...);
атрибутивные связи (иметь свойство, иметь значение);
логические связи (И, ИЛИ, НЕ);
лингвистические связи и др.
Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, отражающей поставленный запрос к базе.
Пример 1.3
На рис. 1.1 изображена семантическая сеть. В качестве вершин тут выступают понятия «человек», «т. Иванов», «Волга», «автомобиль», «вид транспорта» и 4двигатедь>.
Рис. 1.1. Семантическая сеть
Данная модель представления знаний была предложена американским пенх0Ho- г°м Куиллианом. Основным ее преимуществом является то, что она более других соответствует современным представлениям об организации долговременной памяти человека [Скрэгг, 1983].
Недостатком этой модели является сложность организации процедуры поиска вывода на семантической сети.
Для реализации семантических сетей существуют специальные сетевые языки, например NET [Цейтин, 1985], язык реализации систем SIMER+MIR [Осипов, 1997] н др. Широко известны экспертные системы, использующие семант!гчес- кие сети в качестве языка представления знании — PROSPECTOR, CASNET, TORUS [Хейес-Рот и др., 1987; Durkin, 1998].
Фреймы
Термин фрейм (от английского frame, что означает «каркас» или «рамка») был предложен Марвином Минским [Mihickih'l 1979], одним из пионеров ИИ, в 70-е годы для обозначения структуры знаний для восприятия пространственных сцен. Эта модель, как и семантическая сеть, имеет глубокое психологическое обоснование.
фрейм - это абстрактный образ для представления некоего стереотипа восприятия.
В психологи» II философии известно понятие абстрактного образа. Напрнмср, произнесение вслух слова «комната» порождает у слушающих образ комнаты: «жилое помещение с четырьмя стенами, полом, потолком, окнами н дверью, пло- щадью 6-20、*»• Из этого описания ничего нельзя убрать (например, убрав окна, мы получим уже чулан, а не комнату), но в нем есть «дырки» или «слоты» — это незаполненные значения некоторых атрибутов — например, количество окоп, цвет стен, высота потолка, покрытие пола и др.
В теории фреймов такой образ комнаты называется фреймом компаты. Фреймом также называется и формализованная модель для отображения образа.
Различают фреймы-образу, или прототипы, хранящиеся в базе знаш山,л фреймы-экземпляры, которые создаются для отображения реальных фактических си- туаций на основе поступающих данных. Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:
ф^мы-структуры, использующиеся для обозначения объектов и -понятий (заем, залог, вексель);
фреймы-/?олм (менеджер, кассир, клиент);
фреймы-сг^/^uw (банкротство, собрание акционеров, празднование именин);
中pefh【H-c〃mya4"〃 (тревога, авария, рабочий режим устройства) н др. Традиционно структура фрейма может быть представлена как список свойств: (ИМЯ ФРЕЙМА:
(имя 1-го слота: значение 1-го слота),
(гшя 2-го слота: значение 2-го слота),
(имя N-ro слота: значение N-ro слота)).
Ту же запись можно представать в виде таблицы, дополнив ее двумя столбцами
Таблица 1.1. Структура фрейма
Имя фрейма
имя слота
Значение слота
Способ получения значения
Присоединенная процедура
В таблице дополнительные столбцы предназначены для описания способа получения слотом ei о значения и возможного присоединения к тому или иному слоту специальных процедур, что допускается в теории фреймов. В качестве значения слота может выступать имя другого фрейма, так образуются сети фреймов. Существует несколько способов получения слотом значений во фрейме-экземпляре:,
по умолчанию от фрейма-образца (Default-значение);
через наследование свойств от фрейма, указанного в слоте АКО;
но формуле, указанной в слоте;
через присоединенную процедуру;
явно из диалога с пользователем;
из базы данных.
Важнейшим свойством теории фреймов является заимствование из теории семантических сетей — так называемое наследование свойств. И во фреймах, и в семантических сетях наследование происходит по АКО-связям (А-КМ-О/ = это). Слот АКО указывает иа фрейм более высокого уровня иерархии, откуда неявно наследуются, то есть переносятся, значения апа^чогичных слотов.
Пример 1.4
Например, в сети фреймов на рис. 1.2 понятие «у“сш【к» наследует свойства фреймов «рсбенок»> и <<чсловск», которые находятся на более высоком уровне иерархии. Так, на вопрос влюбят ли ученики сладкое» следует ответ «на», так как этим свойством обладают все дети, что указано во([)pcihic «ребенок». Наследование свойств может быть час- тичлы м, так как возраст дня учеников ие наследуется из фрейма * ребенок», поскольку указан явно в свосм собственном(|)рсйме.
Рис. 1.2. Сеть фреймов
Основным преимуществом фреймов как модели представления знании я:;;;:; то, что опа отражает концептуальную основу организации намят человека [Шенк, Хантер, 1987], а также ес гибкость н наглядность.
Специальные языки представления знаний в сетях фреймов FRL (Frame Representation Language) [Байдун, Бунин, 1990], KRL (Knowledge Representatmn Language) [Уотермен, 1989], фреймовая «оболочка» Карра [Стрельников, Ьори- сов( 1997] и другие программные средства позволяют эффективно строить промышленные ЭС. Широко известны такие фрейм -ориентирован ньге экспертные системы, как ANALYST, МОДИС, TRISTAN, ALTERID [Ковригин, Перфильев, 1988; Николов, 1988; Sisodia, Warkentin, 1992].
Формальные логические модели
Традиционно в представлении знаний выделяют формальные логические модели, основанные на классическом исчислении предикатов 1-го порядка, когда предметная область или задача описывается в виде набора аксиом. Мы же опустим описание этих моделей по следующим причинам. Исчисление предикатов 1-го порядка в промышленных экспертных системах практически не используется. Эта логическая модель применима в основном в исследовательских «игрушечных» системах, так как предъявляет очень высокие требования и ограничения к предметной области.
В промышленных же экспертных системах используются различные ее модификации и расширения, изложение которых вьгходит за рамки этого учебника.
1.3.3. Вывод на знаниях
Несмотря на все недостатки, наибольшее распространение получила продукционная модель представления знаний. При использовании продукционной модели база знаний состоит из набора правил. Программа, управляющая перебором правил, называется машиной вывода.
Машина вывода
Машина вывода (иитерпретатор правил) выполняет две функции: во-первых, просмотр существующих фактов из рабочей памяти (базы данных) и правил из базь】 знаний и добавление (по мере возможности) в рабочую память новых фак- тов % во-вторых, определение порядка просмотра н пр именем ия правил. Этот механизм управляет процессом консультации, сохраняя для пользователя информацию о полученных заключениях, и запрашивает у него информацию, когда для срабатывания очередного правила в рабочей памяти оказывается недостаточно данных [Осуга, Саэки, 1990].
В подавляющем большинстве систем, основанных на знаниях, механизм вывода представляет собой небольшую по объему программу н включает два компонен- та - один реализует собственно вывод, другой управляет этим процессом.
Действие компонента вывода основано на применении правила, называемого modus ponens.
Правило modusponens. Если известно, что истинно утверждениеА и существует правило вида «ЕСЛИ А, ТО В», тогда утверждение В также истинно.
Правила срабатывают, когда находятся факты, удовлетворяющие их левой части: если истинна посылка, то должно быть истинно и заключение.*
Компонент вывода должен функционировать даже при недостатке информации. Полученное решение может и не быть точным, однако система ие должна останавливаться из-за того, что отсутствует какая-либо часть входной информации.
Управляющий компонент определяет порядок применения правил и выполняет четыре функции.
Сопоставление — образец правила сопоставляется с имеющимися фактами.
Выбор — если в конкретной ситуации может быть применено сразу несколько правил, то из них выбирается одно, наиболее подходящее по заданному критерию (разрешение конфликта).
Срабатывание — если образец правила при сопоставлении совпал с какими- либо фактами из рабочей памяти, то правило срабатывает.
Действие — рабочая память подвергается изменению путем добавления в нее заключения сработавшего правила. Если в правой части правила содержится указание на какое-либо действие, то оно выполняется (как, например, в системах обеспечения безопасности информации).
Интерпретатор продукций работает циклически. В каждом цикле он просматривает вес правила, чтобы выявить те, посылки которых совпадают с известными на данный момент фактами из рабочей памяти. После выбора правило срабатывает, его заключение заносится в рабочую память, и затем цикл повторяется сначала. В одном цикле может сработать только одно правило. Если несколько правил успешно сопоставлены с фактами, то интерпретатор производит выбор по опреде- леннО1Му критерию единственного правила, которое срабатывает в данном цикле. Цикл работы интерпретатора схематически представлен на рис. 1.3.
Рис. 1.3. Цикл работы интерпретатора
Информация из рабочей памяти последовательно сопоставится с посылки правил для выявления успешного сопоставления. Совокупно р
вил составляет так называемое конфликтное множество. Для разрешения конфликта интерпретатор имеет критерий, с помощью которого он выбирает единственное правило, после чего оно срабатывает. Это выражается в замесе- нин фактов, образующих заключение правила, в рабочую память млн в изменении критерия выбора конфликтующих правил. Если же в заключение правила входит название какого-нибудь действия, то оно выполняется.
Работа машины вывода зависит только от состояния рабочей памяти и от состава базы знаний. На практике обычно учитывается история работы, то есть поведение механизма вывода в предшествующих циклах. Информация о поведении механизма вывода запоминается в памяти состояний (рис. 1.4). Обычно память состояний содержит протокол системы.
Рис. 1.4. Схема функционирования интерпретатора
Стратегии управления выводом
От выбранного метода поиска, то есть стратегии вывода, будет зависеть порядок применения и срабатывания правил. Процедура выбора сводится к определению направления поиска и способа его осуществления. Процедуры, реализующие по- иск, обычно «зашиты» в механизм вывода, поэтому в большинстве систем ннхе неры знаний не имеют к ним доступа и, следовательно, не могут в них ничего изменять по своему желанию.
При разработке стратегии управления выводом важно определить два вопроса:
Какую точку в пространстве состояний принять в качестве исходной? От вы- бора этой точки зависит и метод осуществления поиска — в прямом или об- ратном направлении.
Какими методами можно повысить эффективность поиска решения? Эти ме- тодн определяются выбранной стратегией перебора — глубину, в ширину, по подзадачам или иначе.''
Прямой и обратный вывод
При обратном порядке вывода вначале выдвигается некоторая гипотеза, а затем механизм вывода как бы возвращается назад, переходя к фактам, пытаясь найти
те, которые подтверждают гипотезу (рис. 1.5, правая часть)! Если она оказалась правильной, то выбирается следующая гипотеза, детализирующая первую и являющаяся по отношению к ней подцелью. Далее отыскиваются факты подтверждающие истинность подчиненной гипотезы. Вывод такого типа называется управляемым целями, или управляемым консеквентами. Обратный поиск применяется в тех случаях, когда цели известны и их сравнительно немного.
Обратный выводОбратный выводПоиск в гпубинуПоиск в гпубинуПрямой выводПрямой выводНачало поискаНачало поискаПоиск в ширинуПоиск в ширинуРис. 1.5. Стратегии выводаРис. 1.5. Стратегии вывода
Обратный вывод
Обратный вывод
Поиск в гпубину
Поиск в гпубину
Прямой вывод
Прямой вывод
Начало поиска
Начало поиска
Поиск в ширину
Поиск в ширину
Рис. 1.5. Стратегии вывода
Рис. 1.5. Стратегии вывода
В системах с прямым выводом по известным фактам отыскивается заключение, которое из этих фактов следует (см. рис. 1.5, левая часть). Если такое заключение удастся naiiTii, то оно заносится в рабочую память. Прямой вывод часто называют выводом, управляемым данными, или выводом, управляемым антецедентами. Существуют системы, в которых вывод основывается на сочетании упомянутых выше методов — обратного и ограниченного прямого. Такой комбинированный метод получи.'! название циклического.
Пример 1.5
Имеется фрагмент базы зиаииИ из двух нравм*
П1. Если «отдых - летом» и «человек 一 активный», то «ехать в горы».
П2. Если «сюбнт солнце», то «отдых летом^.
Предно.-южим( в систему поступили <|)акты - «человек активны!!* л «любит со.ишс*. ПРЯМОЙ ВЫВОД - исходя из фактических ааилых. получить рекомендацию.
1-й проход.、
Шаг 力 Пробуем ПЛ не работает (не хватает данных *отдых - летом»).
Шаг 2 Пробуем П2, работает, в базу поступает факт <отдых — летом».
2-й проход.
山砒 3. Пробуем Я/, работает, активируется цель *ехать в горн», которая и выступает как совет, который дает ЭС.
ОБРАТНЫЙ ВЫВОД — подтвердить выбранную цель при помощи нмеюи(ихся правил
И данных.
1-й проход.
ц]аг /. Цель — «ехать в горн»: пробуем П1 — данных «отдых — летом» нет, они становятся новой целью 11 ищется правило, где цель в левой части.
IZ/az 2. Цель «отдых — летом»: правило П2 подтверждает цель и активирует се.
2-й проход.
Шаг 3. Пробуем П1, подтверждается искомая цель.
Методы поиска в глубину и ширину
в системах, база знании которых насчитывает сотни правил, желательным является использование стратегии управления выводом, позволяющей минимизировать время поиска решения и тем самым повысить эффективность вывода. К числу таких стратегий относятся: поиск в глубину, поиск в ширину, разбиение на подзадачи и альфа-бета алгоритм [Таунсенд, Фохт, 1991; Уэно, Исидзука, 1989; Справочник по ИИ, 1990].
При поиске в глубину в качестве очередной подцели выбирается та, кото优я соответствует следующему, более детальному уровню описания задачи. Например, диагностирующая система, сделав на основе известных симптомов предположение о наличии определенного заболевания, будет продолжать запрашивать уточняющие признаки и симптолгы этой болезни до тех пор, пока полностью не опровергнет выдвинутую гипотезу.
При поиске в ширину, напротив, система вначале проанализирует все симптомы, находящиеся на одном уровне пространства состояний, даже если они относятся к разным заболеваниям, и лишь затем перейдет к симптомам следующего уровня детальности.
Разбиение на подзадачи — подразумевает выделение подзадач, решение которых рассматривается как достижение промежуточных целей на пути к конечной цел и. Примером, подтверждающим эффективность разбиения на подзадачи, является понск неисправностей в компьютере — сначала выявляется отказавшая подснсте- va (питание, память п т. д.), что значительно сужает пространство поиска. Если удается правильно понять сущность задачи и оптимально разбить ее на систему иерархически связанных целей-подцелей, то можно добиться того, что путь к ее решению в пространстве поиска будет минимален.
Альфа-оета алгоритм позволяет уменьшить пространство состояний путем удаления ветвей, неперспективных для успешного поиска. Поэтому просматривают- ся только те вершины, в которые можно попасть в результате следующего шага,
после чего неперспективные направления исключаются. Альфа-бега алгоритм нашел широкое применение в основном в системах, ориентированных на различные игры, например в шахматных программах.
-4. Нечеткие знания
При попытке формализовать человеческие знания исследователи вскоре столкнулись с проблемой, затруднявшей использование традиционного математического аппарата для их описания. Существует целый класс описаний, оперирующих качественными характеристиками объектов (много, мало, сильный, очень сильный и т. п.). Эти характеристики обычно размыты и не могут быть однозначно интерпретированы, однако содержат важную информацию (например, <Одним из возможных признаков гриппа является высокая температура*).
Кроме того, в задачах, решаемых интеллектуальными системами, часто приходится пользоваться неточными знаниями, которые не могут быть интерпретированы как полностью истинные или ложные (логические true/false или 0/1). Существуют знания, достоверность которых выражается некоторой промежуточной цифрой, например 0.7.
Как, не разрушая свойства размытости и неточности, представлять подобные знания формально? Для разрешения таких проблем в начале 70-х американский математик Лотфи 3〃0е предложил формальный аппарат нечеткой (fuzzy) алгебры и нечсткой логики [Заде, 1972]. Позднее это направление получило широкое распространение [Орловски11,1981; Аверкин и др., 1986: Яшин, 1990] и положило начало од noil из ветве(1 ИИ под названием — мягкие вычисления (soft computing).
Л. Заде ввел одно из главных понятий в нечеткой логике — понятие лингвисти- ческо" переменной.
Лингвистическая переменная (ЛП)——это переменная, значение которой определяется набором вербальных (то есть словесных) характеристик некоторого свойства.
Например, ЛП《рост» определяется через набор {карликовый, низкий» средний, высокий, очень высокий}.
1- Основы теории нечетких множеств
Значения лингвистической переменной (ЛП) определяются через так называемые нечеткие множества (НМ), которые в свою очередь определены на некотором базовом наборе значений или базовой чнеловок шкале, имеющей размер ность. Каждое значение ЛП определяется как нечеткое множество (например, НМ «низкий рост»).
Нечеткое множество определяется через некоторую базовую шкалу В и Функцию принадлежности НМ - Ц(х). хе В, принимающую значения на интерв^те R [ Таким образом, нечеткое множество В - это совокупность лар вида (х,心)),「Д хе В. Часто встречается и такая запись:
где X; — i-e значение базовой шкалы.
Функция принадлежности определяет субъективную степень уверенности эксперта в том, что данное конкретное значение базовой шкалы соответствует 0npe- деляемому НМ. Эту функцию не стоит путать с вероятностью, носящей объективный характер и подчиняющейся другим математическим зависимостям.
Например, для двух экспертов определение НМ «высокая» для ЛП «цена автомобиля» в условных единицах может существенно отличаться в зависимости от их социального и финансового положения.
«Высокая_цена_автомобиля_1» = {50000/1 + 25000/0.8 + 10000/0.6 + 5000/0.4).
«Высокая_цена_автомобиля_2» = {25000/1 十 10000/0.8 + 5000/0.7 + 3000/0.4}
Пример 1.6
Пусть перед нами стоит задача интерпретации значений ЛП «возраст», таких как «молодой» возраст, «преклонный» возраст или «переходный» возраст. Определим «воз- раст» как ЛП (рис. 1.6). Тогда «молодой», «преклонньви, «переходный» будут значениями этой лингвистической переменной. Более полно, базовый набор зиачешп! ЛП «возраст» следующий:
В = {младенческий, детский, юный, мотюпо", зрелым, преклонный, старческий}.
Рис. 1.6. Лингвистическая переменная «возраст» и нечеткие множества, определяющие ее значения
А" Л П «возраст» базовая шкала — это числовая шкала от 0 до 120, обозпичаютая количество прожитых лет, а функция принадлежности определяет, насколько мы унсрс- нм в том, что данное количество лет можно отмести к данной категории возраста. На рис 1.7 отражено, как одни и тс же значения базовой шкалы могут участвовать в определении различных НМ. '
Рис. 1.7. Формирование нечетких множеств
Например, определить значение НМ ^младенческий возраст» можно так
«младенческий^«младенческий^竺小23,45 101
«младенческий^
«младенческий^
1 0.9源而诵+位十石卜
Рисунок 1.8 иллюстрирует оценку НМ неким усредненным экспертом, который ребен- ка до полугола с высокой степенью уверенности относит к младенцам (m - 1) Дети до четырех лет причисляются к младенцам тоже, но с меньшей степенью уверенности (05< ni <0,9), а в десять лет ребенка называют так только в очень редких случаях — к примеру, 〃ля левяностолетпей бабушки и 15 лет может считаться младенчеством. Таким образом, нечеткие множества позволяют при определении понятия учитывать субъективные мнения отдельных индивидуумов.
Рис. 1.8. График функции принадлежности нечеткому множеству «младенческий возраст»Рис. 1.8. График функции принадлежности нечеткому множеству «младенческий возраст»
Рис. 1.8. График функции принадлежности нечеткому множеству «младенческий возраст»
Рис. 1.8. График функции принадлежности нечеткому множеству «младенческий возраст»
Операции с нечеткими знаниями
Для операций с нечеткими знаниями, выраженными при помощи лингвистических переменных, существует много различных способов. Эти способы являются в основном эвристиками. Мы не будем останавливаться назтом вопросе подробно, укажем лишь для примера определение нескольких onepamrii. К примеру, операция «ИЛИ» часто задается так [Аверкин н др., 1986; Яшин, 1990]:
〃(工)=шах(〃1(х),〃2(л:))
(так называемая логика Заде) пли так:
〃(工)=41(工)+ 以2(工)一"1(工)*〃2(工) (вероятностный подход).
Усиление или ослабление лингвистических понятии достигается введением специальных квантификаторов. Например, если понятие «старческий возраст» определяется как
60 70 80 , 90、
0.6 0.8 0.9 1
то понятие «очень старческий возраст» определится как
соп^А) = А' = У—т,
то есть «очень старческий возраст» равен
f 607080 90
[о.Зб 0.64 0.811
Для вывода на нечетких множествах используются специальные отношения и операции над ними (подробнее см. работу [Орловский, 1981]).
Одним из первых применений теории НМ стало использование коэффициентов уверенности для вывода рекомендаций медицннскоГ! системы MYCIN [Shorllifle, 1976]. Этот метод использует несколько эвристических приемов. Он стал примером обработки нечетких знаний, повлиявших иа последующие системы.
В настоящее время в большинство инструментальных средств разработки систем, основанных на знаниях, включены элементы работы с НМ, кроме того, разработаны специальные программные средства реализации так называемого нечеткого вывода, например «оболочка» Fuzzy CLIPS.
1«5. Прикладные интеллектуальные системы
Центральная парадигма интеллектуальных технологии сегодня — это обработка знаний. Системы, ядром которых является база знаний нли модель предметно!! области, описанная на языке сверхвысокого уровня, приближенном к естественному, называют интеллектуальными. Будем называть такой язык сверхвысокого уровня — языком представления знаний (ЯПЗ). .аще всего интеллектуальиые системы (ИС) применяются для решения сложных задач, где основная сложность решения связана с использованием слабо-формализованных зпаинй специалистов-практиков и где логическая (пли смысловая) обработка информации превалирует над вычислительно!!. Например, понимание естественного языicat поддержка принятия решения в сложных ситуациях, иостпновка диагноза п рекомендации по методам лечения, анализ визугыьнон информации, управление диспетчерскими пультами н др.
Фактически сейчас прикладные 11 нтел лекту а льные системы используются в десятках тысяч приложени!!. А годовoii доход от продаж программных п аппаратных средств искусственного интеллекта еще в 1989 г. в США составлял 870 млн долларов, а в 1990 г. — 1,1 млрд долларов [Попов, 1996]. В нальнеПшем почти тридцатипроцентньп'! прирост дохода сменился более плавным наращиванием темпов (по материалам [Поспелов, 1997; Хорошевский, 1997; Попов, 1996; Walker, Miller, 1987; Tuthill, 1994, Durkin, 1998]).
На рис. 1.9 отражены различные аспекты состояния рынка искусственного интеллекта. инвестиции в разработку в области И14 (США, Европа, Япония) (рис. 1.9, а); доля систем ИИ в информатике (программном обеспечении) (рис. L9, 6); доходы от пР°аа* традиционных языков программирования (рис. 1.9, з); инвестиции
:黑當黑眼様С;寛爲歌器擲龈鵬澀當е
Рис.1.9. Состояние и перспективы рынка ИИ
Наиболее распространенным видом IIC являются экспертные системы.
Экспертные системы (ЭС)——это наиболее распространенный класс ИС, ориентированный на тиражирование опыта высококвалифицированных специалистов в областях, где качество принятия решений традиционно зависит от уровня экспертизы, например, медицина, юриспруденция, геология, экономика, военное дело и др.
ЭС эффективны лишь в специфических «экспертных» областях, где важен эмпирический опыт специалистов.
Только в США ежегодный доход от продаж инструментальных средств разработки ЭС составлял в начале 90-х годов 300-400 млн долларов, а от применения ЭС ~ 80-90 млн долларов [Попов, 1996]. Ежегодно крупные фирмы разрабатывают десятки ЭС типа <<in-house» для внутреннего пользования. Эти системы интегрируют опыт специалистов компании по ключевым и стратегически важным технологиям. В начале 90-х гг, появилась новая наука — «менеджмент знаний^
(knowledge management), ориентированная на методы обработки н управления корпоративными знаниями (см. главу 5).
Современные ЭС - это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях п распространяющие этот эмпирический опыт для консультирования менее квалифицированных пользователей. Разработка экспертных систем, как активно развивающаяся ветвь информатики, направлена на использование ЭВМ для обработки информации в тех областях науки и техники, где традиционные математические методы моделирования малопригодны. В этих областях важна смысловая и логическая обработка информации, важен опыт экспертов.
Приведем некоторые условия, которые могут свидетельствовать о необходимости разработки и внедрения экспертных систем (частично из [Уотермеи, 1989]):
нехватка специалистов, затрачивающих значительное время для оказания помощи другим;
выполнение небольшой задачи требует многочисленного коллектива специалистов, поскольку ни один из них не обладает достаточным знанием;
сниженная производительность, поскольку задача требует полного анализа сложного набора условий, а обычный специалист не в состоянии просмотреть (за отведенное время) все эти условия;
большое расхождение между решениями самых хороших и самых плохих исполнителей;
наличие конкурентов, имеющих преимущество в силу того, что они лучше справляются с поставленной задачей.
Подходящие задачи имеют следующие характеристики:
являются узкоспециализированными;
не зависят в значительной степени от общечеловеческих знаний или соображений здравого смысла;
не являются для эксперта ни слишком легкими, пи слишком сложными. (Время, необходимое эксперту для решения проблемы, может составлять от трех часов до трех недель.)
Экспертные системы достаточно молоды - первые системы такого рода, МУС IN [Shortliffe, 1976] и DENDRAL [Buchanan, Feigenbaum, 1978], появились в США в середине 70-х годов. В настоящее время в мире насчитывается несколько тысяч промышленных ЭС, которые дают советы:
"рн управления сложными диспетчерскими пультами, например сети распре- деления электроэнергии, 一 Alarm Analyser [Walker, Miller, 1987];
"PM постановке медицинских диагнозов - ARAMIS [Shortliffe, Buchanan Feigenbaum, 1979], NEUREX [Reggia, 1988];'
nP" понске неисправностей в электронных приборах, диагностика отказов контрольно-измерительного оборудования - Intelligence Ware [Slagle, Gardi- fyungsook, 1990], Plant Diagnostics [Уотермен, 1989], FOREST |Finin
McAdams, Kleinosky, 1984];'
по проектированию интегральных микросхем 一 DAA ГСойео Фостеп 1аяя1 NASL [Walker, Miller, 1988], QO [Pega, Sticklen, Bond, 1993];• L
г】。управлению перевозками — AIRPLAN [Masui, McDermott, 1983];
по прогнозу военных действий — ANALYST [Bonasso, 19841, BATTLE [Slacle
Gaynor, 1983];'й ‘
по формированию портфеля инвестиций, оценке финансовых рисков — RAD [Kestelyn,1992], налогообложению — RUNE [Durkin, 1998] и т. д.
Наиболее популярные приложения ИС отображены на рис. 1.10 [Durkin, 1998]
Транспортные системы Космонавтика Наука Системы управления Горная промышленностьВоенное дело МетеорологияМедицинаМатематикаПроизводство ЮриспруденцияУправление информацией Обработка изображенийГеологияОкружающая среда ИнженерияЭлектроникаОбразованиеКомпьютерные системы Коммуникации Химия Бизнес Сельское хозяйствоТранспортные системы Космонавтика Наука Системы управления Горная промышленностьВоенное дело МетеорологияМедицинаМатематикаПроизводство ЮриспруденцияУправление информацией Обработка изображенийГеологияОкружающая среда ИнженерияЭлектроникаОбразованиеКомпьютерные системы Коммуникации Химия Бизнес Сельское хозяйство您額匕笏芻彩孩您窓絞綴欢犯寃,毙:#本"您額匕笏芻彩孩您窓絞綴欢犯寃,毙:#本"I滋缀Ж能:滋密%缀笈纥纱痂后7石
Транспортные системы Космонавтика Наука Системы управления Горная промышленность
Военное дело Метеорология
Медицина
Математика
Производство Юриспруденция
Управление информацией Обработка изображений
Геология
Окружающая среда Инженерия
Электроника
Образование
Компьютерные системы Коммуникации Химия Бизнес Сельское хозяйство
Транспортные системы Космонавтика Наука Системы управления Горная промышленность
Военное дело Метеорология
Медицина
Математика
Производство Юриспруденция
Управление информацией Обработка изображений
Геология
Окружающая среда Инженерия
Электроника
Образование
Компьютерные системы Коммуникации Химия Бизнес Сельское хозяйство
您額匕笏芻彩孩您窓絞綴欢犯寃,毙:#本"
您額匕笏芻彩孩您窓絞綴欢犯寃,毙:#本"
砂驟雜經侬继做蹴懒绳尊举密生缪遜您令尊統,了:弋
;2 w 、>五號二匚:;;2 w 、>五號二匚:;О 50100150200250300350
;2 w 、>五號二
匚:;
;2 w 、>五號二
匚:;
Рис. 1.10. Основные приложения ИС
Сейчас легче назвать области, где еще нет ЭС, чем те. где они уже применяются. Уже в 1987 г. опрос пользователей, проведенньп! журналом «Intelligent Technologies» (США), показал, что примерно:
25 % пользователей используют ЭС;
25 % собираются приобрести ЭС в ближайшие 2-3 года;
семантические сети (SIMER+MIR [Осипов, 1997]; NET [Цейтин, 1985]);
фреймы (FRL [Байдун, Бунин, 1988; Справочник по ИИ, 1990]);
логическое программирование (ПРОЛОГ [Макалнстер, 1990; Стерлинг, Шапиро, 1990]);
объектно-ориентированныс языки (SMALLTALK [Goldberg, Robson, 1983, Буч, 1993], CLOS [Pega, Sticklen, Bond, 1993]).
Для перечисленных выше моделей существует соответствующая математическая нотация, разработаны системы программирования, реализующие эти ЯПЗ, и имеется большое количество реальных коммерческих ЭС. Подробнее вопросы программной реализации прикладных ИС рассмотрены в главе 6.
Современное состояние разработок в области ЭС в России можно охарактеризовать как стадию все возрастающего интереса среди широких слоев специалистов —финансистов, топ-менеджеров, преподавателе!!, инженеров, медиков, психологов, программистов, лингвистов. В последние годы эгот интерес имеет пока достаточно слабое материальное подкрепление — явная нехватка учебников и специальной Л1гтературы, отсутствие символьных процессоров н рабочих станций, ограниченное финансирование исследований в этой области, слабый отечественный рынок программных продуктов для разработки ЭС.
Поэтому появляется возможность распространения «подделок» под экспертные системы в виде многочисленных диалоговых систем и интерактивных пакетов прикладных программ, которые дискредитируют в глазах пользователе!} dto чрезвычайно перспективное направление. Процесс создания экспертной системы требует участия высо коквал i тфи m i рован ш)1 х специалистов в области искусственного интеллекта, которых пока выпускает небольшое количество высигпх \гчебиых заведешн! страны.
Наибольшие трудности в разработке ЭС вызывает сегодня нс процесс Maiiiiiiiiioii реализации систем, а домашинный этап анализа знаний и проектирования базы знаний. Этим занимается специальная наука — ныженерпм auaiiiiii [Гаврилова, Червинская. 1992; Adeli, 1994; Scott, Clayton, Gibson, 1994].
Современному состоянию этой пауки и посвящены последующие гл а в ы зтоН книги.'
Разработка систем, основанных на знаниях
Введбние в экспертные системы. Определбни© и структура
Классификация систем, основанных на знаниях
Коллектив разработчиков
Технология проектирования и разработки
Введение в экспертные системы. Определение и структура
В качестве рабочего определения экспертной системы примем следующее.
Экспертные системы (ЭС) — это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей.
Обобщенная структура экспертной системы представлена на pic 2.1. Следует учесть, что ре^ъпьные ЭС могут иметь более сложную структуру, однако блоки, изображенные на рисунке, непременно присутствуют в любо!! действительно экспертной системе, поскольку представляют собой стандарт de facto структуры современной ЭС.
В целом процесс функционирования ЭС можно представить следующим образом: пользователь, желающий получить необходимую информацию, через поль- 3OBaie.Tibci<iiii интерфейс посылает запрос к ЭС; решатель, пользуясь базой зна- iiiii'i, генерирует и выдает пользователю подходящую рекомендацию, ооъясняя ход своих рассуждений при помощи подсистемы объяснении.
семантические сети (SIMER+MIR [Осипов, 1997]; NET [Цеитин, 1985]),
фреймы (FRL [Байдун, Бунин, 1988; Справочник по ИИ, 1990]);
лошческое программирование (ПРОЛОГ [Макалнстер, 1990; Стерлинг, Шапиро, 1990]);
объектно-ориентированные языки (SMALLTALK [Goldberg, Robson, 1983; Буч, 1993], CLOS [Pega, Sticklen, Bond, 1993]).
Для перечисленных выше моделей существует соответствующая математическая нотация, разработаны системы программирования, реализующие эти ЯПЗ, и имеется большое колнчсство реальных коммерческих ЭС. Подробнее вопросы программной реализации прикладных ИС рассмотрены в главе 6.
Современное состояние разработок в области ЭС в России можно охарактеризовать как стадию все возрастающего интереса среди широких слоев специалистов —финансистов, топ-менеджеров, преподавателей, инженеров, медиков, психологов, программистов, лингвистов. В последние годы этот интерес имеет пока достаточно слабое материальное подкрепление — явная нехватка учебников п специальной литературы, отсутствие символьных процессоров и рабочих станций, ограниченное финансирование исследований в этой области, слабый отечественный рынок программных продуктов для разработки ЭС.
Поэтом)^ появляется возможность распространения < поддел ок» мод экспертные системы в виде лгногочисленных диалоговых систем п интерактивных пакетов пршечадных программ, которые дискредитируют в глазах пользователе!! зто ч[)сз- вычайно перспективное направление. Процесс создания экспертио11 системы трс- б\гет участия высококвалифицированных специалистов в области пскусс/гисппо- го интеллекта, которых пока выпускает небольшое количество высших \?чсбпых эаведегШ11 страны.'
Наибольшие трудности в разработке ЭС вызывает сегодня не процесс Majiiiiinioii реализации систем, а домашинные! этап анализа знаний и проектирования &⑶>i знаний. Этим занимается специальная наука — инженерия Birainiii [Гаврилова, Червинская, 1992; Adeli, 1994; Scott, Clayton. Gibson, 1994].
Современному состояппю этой науки и посвящены иоследуютис главы aroii книги.”
Разработка систем, 2 J основанных
на знаниях
Введение в экспертные системы. Определение и структура
口 Классификация систем, основанных на знаниях
Коллектив разработчиков
Технология проектирования и разработки
2-1. Введение в экспертные системы. Определение и структура
В качестве рабочего определения экспертной системы примем следующее.
Экспертные системы (ЭС) — это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей.
Обобщенная структура экспертной системы представлена на рис. 2.1. Следует учесть, что реальные ЭС могут иметь более сложную структуру, однако блоки, изображенные на рнсунке, непременно присутствуют в любой действительно эк- cnepiiioii системе, поскольку представляют собой стандарт de facto структуры современной ЭС.
В целом процесс функционирования ЭС можно представить следующим образом: пользователь, желающий получить необходимую информацию, через пользовательский интерфейс посылает запрос к ЭС; решатель, пользуясь оазой зна- iinii, генерирует и выдает пользователю подходящую рекомендацию, объясняя ход своих рассуждений при иомоши подсистемы объяснении.
ПользовательИнженер Эксперт
по знаниям
Рис. 2.1. Структура экспертной системы
Так как терминология в области разработки ЭС постоянно модифицируется, определим основные термины в рамках данной работы.
Пользователь — специалист предметной области, для которого предназначена система. Обычно его квалификация недостаточно высока, и поэтому он нуждается в помощи и поддержке своей деятельности со стороны ЭС.
Инженер по знаниям — специалист в области искусственного интеллекта, выступающий в роли промежуточного буфера между экспертом и базой знаний. Синонимы: когнитолог, инженер-интерпретатор, аналитик.
Интерфейс пользователя 一 комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так м при получении результатов.
База знаний (БЗ) — ядро ЭС, совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту п пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому «человеческому» представлению существует БЗ во внутреннем «машишюм» представлении.
Решатель — программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в БЗ. Синонимы: дедуктивная машина, машина вывода, блок логического вывода.
Подсистема объяснений — программа, позволяющая пользователю получить ответы на вопросы: «Как была получена та или иная рекомендация?» и <<Почему система приняла такое решение?» Ответ па вопрос «как» — это трассировка всего процесса получения решения с указанием использованных фрагментов БЗ, то есть всех шагов цепи умозаключений, Ответ на вопрос «почему» — ссылка на умозаключение, непосредственно предшествовавшее полученному решению, то есть отход на один шаг назад. Развитые подсистемы объяснений поддерживают и другие типы вопросов.”
Интеллектуальный редактор БЗ — программа, представляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме. Включает в себя систему вложенных меню, шаблонов языка представления знаний, подсказок («help» — режим) и других сервисных средств, облегчающих работу с базой.
Еще раз следует подчеркнуть, что представленная на рис. 2.1 структура является минимальной, что означает обязательное присутствие указанных на ней блоков. Если система объявлена разработчиками как экспертная, только наличие всех этих блоков гарантирует реальное использование аппарата обработки знаний. Однако промышленные прикладные ЭС могут быть существенно сложнее н дополнительно включать базы данных, интерфейсы обмена данными с различными пакетами прикладных программ, электронными библиотеками и т. д.
Классификация систем, основанных на знаниях
Класс ЭС сегодня объединяет несколько тысяч различных программных комплексов, которые можно классифицировать по различным критериям. Полезными могут оказаться классификации, представленные на рис. 2.2.
Рис. 2.2. Классификация экспертных систем
Классификация по решаемой задаче
Рассмотрим указанные на рисунке типы задач подробнее.
• Интерпре^ия данных. Это одна из традиционных задач для экспертных систем. Под интерпретацией понимается процесс определения смысла д ^ результаты которого должны быть согласованными и корректными. Обычно предусматривается многоварпантный анализ данных.
Все примеры далее из работ [Попов и др” (ред-), 1990; Соловьев, Соловьева, 1989; Хейес-Рот и др., 1987].
Обнаружение и идентификация различных типов океанских судов по результатам аэрокосмического сканирования — SIAP;
определение основных свойств личности по результатам психодиагностического тестирования в системах АВТАНТЕСТ и МИКРОЛЮШЕР и др.
Диагностика. Под диагностикой понимается процесс соотнесения объекта с некоторым классом объектов н/нли обнаружение неисправности в некоторой системе. Неисправность — это отклонение от нормы. Такая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания живых организмов, и всевозможные природные аномалии. Важной спецификой является здесь необходимость понимания функциональной структуры («анатомии») диагностирующей системы.
Диагностика н терапия сужения коронарных сосудов — ANGY;
* диагностика ошибок в аппаратуре и математическом обеспечении ЭВМ — система CRIB и др.
NfoHUtnopuHi. Основная задача мониторинга — непрерывная нитсрпретсщпя даннмх в реальном масштабе времени и сигнализация о выходе тех или иных параметров за доп^^стимые пределы. Главные проблемы — «пропуск» тревож- но" ситуаннн и инверсная задача «ложного-> срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учета временного контекста. 一
помощь диспетчерам атомпомощь диспетчерам атом* Контроль за работой электростаищп! СПРИНТ,
помощь диспетчерам атом
помощь диспетчерам атом
ного реактора — REACTOR;
заводе - FALCON и 叩.заводе - FALCON и 叩.* контроль аварийных датчиков на химическом
заводе - FALCON и 叩.
заводе - FALCON и 叩.
Проектирование. Проектирование состоит в подготовке спецификации на со- ЗДЙНИе «ооьектов» с заранее определенными свойствами. Под специфшсацнен понимается весь набор необходимых документов - чертеж, пояснительная за- писка и т. д, сновные проблемы здесь — получение четкого структурного описана знаний об объекте и проблема «следа», Для оргашшшш эффекгив- ^°еКТНР°Вания “ в еще большей степени перепроектирования необхо-
3Г"1Poв'" НС ©“в w проектные решения, но н мотивы их ириня-
ооразом, в задачах проектирования тесно связываются два основ- Sв Рамм соответствующей ЭС: процесс вывода решения w процесс объяснения.
♦ Проектирование конфигураций ЭВМ VAX - 11/780 в системе XCON (или проектирование БИС — CADHELP^'
* еннтез электрлческих испей - SYN и др.
Прогнозирование. Прогнозирование позволяет предсказывать последотйш^ которых событий ИЛИ явлений на основании анализа имеющихся д^юшх.「 Прогнозирующие системы логически выводят вероятные следствия из эадан- нмх ситуаций. В прогнозирующей системе обычно используется параметра ческая динамическая модель, в которой значения параметров «подгоняются» П°Д заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятностными оценками.
Предсказание погоды — система WILLARD;广
оценки будущего урожая — PLANT;•
прогнозы в экономике — ECON и др.
Планирование. Под планированием понимается нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемо!! деятельности.
Планирование поведения робота — STRIPS;
планирование промышленных заказов — ISIS;
планирование эксперимента — MOLGEN и др.
Обучение. Под обучением понимается нспользован^ге компьютера для обучения какой-то дпсциплнпе или предмету. Системы обучения диагностируют ошибки при изучении какоИ-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гппотеп1ческом мученике» и его характерных ошибках, затем в работе они способны диагностировать слабости в познаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.
♦ Обучение языку программирования ЛИСП в системе «Учитель ЛНСПа》; ♦ система PROUST — об\тченпе языку Паскаль п 口р、
Управление. Под управлением понимается функция организованной системы, поддерживающая определенный режим деятельности. Такого рола ЗС осуществляют управление поведением сложных систем в соответствии с заданными спецификациями.
Помощь в управлении газовой котельной — GAS;
управление системой календарного планирования Project Assistant н up.
• Поддержка принятия решений. Поддержка принятия решения — это совокул^ нот процедур, обеспечивающая лицо, принимающее решения, необходимо)! информацией и рекомендациями, облегчающими процесс принятия решения. Эти ЭС помогают специалистам выбрать и/пли сс^юрмировать нужную &: ‘ тернативу среди множества выборов прн принятии ответственных решении.
.Выбор стратепш выхода фирмы из кризисной ситуации — CRYSIS;
♦ помощь в выборе страховой компании или инвестора — CHOICE и др.
В общем случае все системы, основанные на знаниях, можно подраздел ить наем- стсмы,решающие задачи анализа, и на системы^решающие задачи синтеза. Основ- ное отличие задач анализа от задач синтеза заключается в том, что если в задачах анализа множество решений может быть перечислено и включено в систему, то в задачах синтеза множество решений потенциально не ограничено и строится из решений компонент или под-проблем. Задачами анализа являются: интерпретация данных, диагностика, поддержка принятия решения; к задачам синтеза относятся проектирование, планирование, управление. Комбинированные: обучение, мониторинг, прогнозирование.
2・2・2・ Классификация по связи с реальным временем
Статические ЭС разрабатываются в предметных областях, в которых база знаний и интерпретируемые данные не меняются во времешь Они стабильны.
Пример
Диагностика uencnpaBiiocTCii в автомобиле,
Квазидинамические ЭС интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени.
Пример
Микробиологические ЭС, в которых снимаются лабораторные измерение с технологического процесса один раз в 4-5 часов (лроизводство лизина, например) и аиалпзиру- ется динамика полученных показателен по опютсшно к предыдущему измерению.
Диетические ЭС работают в сопряжении с датчиками объектов в режиме ре- ального времени с непрерывно!! интерпретацией поступающих в систему данных.
Примеры
Управление гибкими производственными комплексами, мониторинг в [icaiiHMauiroii- iibix палатах;
программный инструментарий для разработки динамических систем - G2 [Попов. 1996],'
2-2.3- Классификация по типу ЭВМ
На сегодняшний день существуют:
гр^Я^Дх^ИЬ1Х стРатег^ескн важных задач на суперЭВМ (Эльбрус, LKAY, CONVEX и др.);
2.3. Коллектив раз ра ботч и ков
ЭС на символьных процессорах и рабочих станциях (SUN, Silicon Graphics, APOLLO);,
ЭС на мини- и супермин-ЭВМ (VAX, micro-VAX и др.);
ЭС на персональных компьютерах (IBM PC, MAC II и т. п.).
2-2.4- Классификация по степени интеграции с другими программами
Автономные ЭС работают непосредственно в режиме консультаций с пользователем для специфически «экспертных» задач, для решения которых не требуется привлекать традиционные методы обработки данных (расчеты, моделирование и т. д.).
Гибридные ЭС представляют программный комплекс, агрешрующин стандартные пакеты прикладных программ (например, математическую статистику, линейное программирование пли системы управления базами данных) и средства манипулирования знаниями. Это может быть интеллектуальная надстройка над ППП (пакетами прикладных программ) или интегрированная среда для решения сложной задачи с элементами экспертных знаний.
Несмотря на внешнюю привлекательность гибридного подхода, следует отметить, что разработка таких систем являет собой задачу на порядок более сложную, чем разработка автономной ЭС. Стыковка не просто разных пакетов, а разных методологий (что происходит в гибридных системах) порождает целый комплекс теоретических 】【практических трудностей.
Коллектив разработчиков
Под коллективом разработчиков (КР) будем понимать группу специалистов, ответственных за создание ЭС.
Как видно из рис. 2.1, в состав КР входят по крайнем мере три человека — пользователь, эксперт if инженер по знаниям. На рисунке не видно программиста. Таким образом, минимальный состав КР включает четыре человека; реально же он разрастается до 8—10 человек. Численное увеличение коллектива разработчиков происходит по следующим причинам: необходимость учета мнения нескольких пользователей, помощи нескольких экспертов; потребность как в проблемных, так и системных программистах. На Западе в этот коллектив дополнительно тра* днционно включают менеджера н одного технического помощника.
Если использовать аналогии из близких областей, то КР более всего схож с группой администратора базы данных при построении интегрированных ин формационных систем или брнга口oii программистов, разрабатывающих сложный программный комплекс. При отсутствии профессионального менеджера руководителем КР, участвующим во всех стадиях разработки, является инженер по знаниям, поэтому к его квалнфнкащи】 предъявляются самые высокие требования. В целом уровень “ численность группы зависят от характеристик поставленной задачи.
для обеспечения эффективности сотрудничества любой творческой группы, в том ЧИСЛе и группы КР ЭС, необходимо возникновение атмосферы взаимопонимания и доверия, которое, в свою очередь, обусловлено психологической совместимостью членов группы; следовательно, при формировании КР должны учитываться психологические свойства участников.
В настоящий момент в психологии существует несколько десятков методик по определению свойств личности, широко используемых в вопросах профессиональной ориентации. Эти психодиагностические методики, часть из которых уже автоматизирована, различаются направленностью, глубиной, временем опроса и способами ннтерпретацшг В частности, система А ВАНТЕСТ (АВТоматическш! Анализ ТЕСТов) [Гаврилова, 1984] позволяет моделировать рассуждения психолога при анализе результатов тестирования по 16-факторному опроснику Р. Кэт- тела и выдает связное психологическое заключение на естественном русском языке, характеризующее такие свойства личности, как общительность, аналитичность, добросовестность, самоконтроль if т. н. Модифицированная база знаний системы АВТАНТЕСТ позднее была использована в ЭС «Cattell» (см. параграф 73).
Ниже приведены два аспекта характеристик членов КР: 1 — психофизиологический, 2 — профессиональный.
Пользователь
К пользователю предъявляются самые слабые требования, поскольку его не выбирают. Он является в некотором роде заказчиком системы. Желательные качества:
дружелюбие;
умение объяснить, что же он хочет от системы;
отсутствие психологического барьера к применению вычислительной тех- IIHKII;
интерес к новому. От пользователя зависит, будет лп ирпмепятьот разработанная ЭС, Замечено, что наиболее ярко качества в) п г) проявляются н молодом возрасте, поэтому иногда такие пользователи охотнее применяют ЭС, не испытывая при этом комплекса пенолпоценностм оттого, что ЭВМ им что-то подсказывает.
Необходимо, чтобы пользователь имел некоторый базовый уровень квалифн- каинн,который позволит ему правильно истолковать рекомендации ЭС. Кро- ме того, должна быть полная совместимость в термпнолопш интерфейса к ЭС с той, которая привычна н удобна для пользовгггеля. Обычно требонаипя к квалификации пользователя не очепь велики, иначе он переходит в разряд зке- пеРтов и совершенно не нуждается в ЭС.
Эксперт
L Эксперт — чрезвычайно важная фн「урп в группе КР. В конечном счете, его под- 「отовка определяет уровень компетенции базы знаний. Желательные качества: а) доброжелательность;
готовность поделиться своим опытом;
Коллектив разработчиков
умение объяснить (педагогические навыки);
заинтересованность (моральная, а лучше еще и материальная) в успёпШос- ти разработки. Возраст эксперта обычно почтенный, что иеобходиАГо учи- ть1вать всем членам группы. Часто встает вопрос о количестве экспертов Поскольку проблема совмещения подчас противоречивых знаний остается открытой, обычно с каждым из экспертов работают индивидуально, иногда создавая альтернативные базы.'
2・ Помимо безусловно высокого профессионализма в выбранной предметной об- ласт〃,желательно знакомство эксперта с популярной литературой по искусственному интеллекту н экспертным системам для того, чтобы эффективнее прошел этап извлечения знаний.
Программист
Известно, что программисты обладают самой низкой потребностью в общении среди представителей разных профессий. Однако при разработке ЭС необходим тесный контакт членов группы, поэтому желательны следующие его качества:
общительность;
способность отказаться от традиционных навыков и освоить новые методы;
интерес к разработке.
Поскольку современные ЭС — сло/кпейшне и дорогостоящие программные комплексы, программисты в КР должны иметь опыт и навыки разработки про- Г])амм. Обязательно знакомство с основными структура'^" представления знании н механизмами вывода, состоянием отечественного и мирового рынка программных продуктов зля разработки ЭС п диалоговых интерфейсов.
Инженер “о знаниям
Существуют такие профессии н виды деятельности, для которых природные качества личности (направленность, способности, темперамент) мопт иметь характер абсолютного показания или противопоказания к занятиям, По-ви- днмому, инженерия знаний принадлежит к таким профессиям. По различным оценкам, это одна из самых малоинспеннкх,высокооплачиваемых и дефицитных в мире специальностей. Попытае*\[ся дать наброски к портрету инженера по знаниям (без претензии на по/шоту н точность определений).
/То.». Психологи утверждают, что мужчннн более склонны к широкому охвату явленш'! и в среднем у них выше аналитичность, чрезвычаяшо полезная инженеру по знаниям, которому надо иметь развитое л отчее кое мышление и )、~ нпе оперировать сложными формальными структл^рами. Кроме того, при щен ни с экспертами, которые в большинстве своем настроены скептически по отношению к будущей ЭС, инженер по знампям-м^чпна вызывает оолее высокую л(отпвацшо успешности со стороны эксперта-женшины. С пругои стороны, известно, что у женщин выше наблюдательность к отдельным Деталям объектов. Так что пол не является окончательным показанием или противопоказанием к данной профессии.
Интеллект. Это понятие вызывает самые бурные споры психологов; суще- ствует до 50 определении интеллекта, но с прагматической точки зрения оче- видно, что специалист в области искусственного интеллекта должен стремиться к максимальным оценкам по тестам как вербального, так н невербального интеллекта.
Стиль общения. Инженер по знаниям «задает тон» в общении с экспертом, он ведет диалог, и от него в конечном счете зависит его продуктивность. Можно выделить два стиля общения: деловой (или жесткий) и дружеский (или мягкий, деликатный). Нам кажется, что дружеский будет заведомо более успешным, так как снижает «эффект фасада» у эксперта, раскрепощает его. Деликатность, внимательность, интеллигентность, ненавязчивость, скромность, умение слушать и задавать вопросы, хорошая коммуникабельность п в то же время уверенность в себе — вот рекомендуемый стиль общения. Безусловно, что это дар и искусство одновременно, однако занятия по психологическому тренингу могут дать полезные навыки.
Портрет инженера по знаниям можно было бы дополнить другими характеристиками —широтой взглядов и интересов, артистичностью, чувством юмора, обаянием н т. д.
При определении профессиональных требований к аналитику следует учитывать, что ему необходимы различные навыки и умения для грамотного н эффективного проведения процессов извлечения, концептуализации и формализации знаний.
Инженер по знаниям имеет дело со всеми формами знаний (см. параграф 1.3).
Z1 (знания в памяти) т Z2 (знания в книгах) т Z3 (поле знаний) т Z4 (модель знаний) т Z5 (база знаний).
Работа на уровне Z1 требует от инженера по знаниям знакомства с элементами когнитивной психологии и способами репрезентации понятий “ процессов в памяти человека, с двумя основными механизмами мышления — логическим и ассоциативным, с такими способами активизации мышления как игры, мозговой штурм и др., с различными моделями рассуждений.
Изучение и анализ текстов на уровне Z2 подразумевает широкую общенаучную подготовку инженера; знакомство с методами реферирования и аннотирования текстов; владение навыками быстрого чтения, а также текстологическими методами извлечения знаний.
Разработка поля знаний на уровне Z3 требует квалнфицлрованного знакомства с методологией представления знаний, системным апализом, теорией позиаиия, аппаратом многомерного шкалирования, кластерным и факторным анализом.
Разработка формализованного описания Z4 предусматривает предварительное изучение аппарата математической логики л современных языков представле- н”я знаний. Модель знаний разрабатывается на основании результатов глубоко- го анализа инструментальных средств разработки ЭС и имеющихся «оболочек». Кроме того, инженеру по знаниям необходимо владеть методологией разработки ЭС,включая методы быстрого прототипирования.
И наконец, реализация базы знаний Z5, в которой инженер по знаниям участвует вместе с программистом, подразумевает овладение практическими навыками работы на ЭВМ и, возможно, одним из языков программирования.
Так как инженеров по знаниям «выращивают*» из программистов, уровень Z5 обычно не вызывает затруднения, особенно если разработка ведется на тр^дици- 01 in ых язы Kdx типа С ил и И аскал ь. Специализированные языки искусственного интеллекта Лисп и Пролог требуют некоторой перестройки архаично-алгоритмического мышления.
Успешность выбора и подготовки коллектива разработчиков ЭС определяет эффективность и продолжительность всего процесса разработки.
2.4. Технология проектирования и разработки
1. Проблемы разработки промышленных ЭС
Разработка программных комплексов экспертных систем как за рубежом, так и в nameii стране находится на уровне скорее искусства, чем науки. Это связано с тем, нто долгое время системы искусственного интеллекта внедрялись в основном во время фазы проектирования, а чаше всего разрабатывалось несколько прототпп- иых вереи!! программ, и на их основе уже создавайся конечный продукт. Taeii подход действует хорошо в исследовательских условиях, однако в коммерческих условиях он яв.'Шется слишком дорогим, чтобы оправдать затраты на разраоотку. Процесс разработки промышленной экспертной системы, опираясь на традиционные технологии [Николов и др., 1990; Хеиес-Рот и др,, 1987; Tuthill. 1994], практически для любой предметной области можно разделить на шесть оолее или менее независимых этапов (рис. 2.3).
I 3 Доработка AO-npoMbi山пенно〃 ЗС[
I 4 IОценка ЭС
Рис. 2.3. Этапы разработки ЭСРис. 2.3. Этапы разработки ЭС
Рис. 2.3. Этапы разработки ЭС
Рис. 2.3. Этапы разработки ЭС
Последовательность этапов дана только с целью получения общего представления о процессе создания идеального upoeicra. Конечно, последовательность эта не ВПолне фиксированная. В действительности каждый последующий этап разработки может принести новые идеи, которые могут повлиять па предыдущие решения и даже привести к их переработке. Именно поэтому многие сиецналнс- ты по Информатике весьма критично относятся к методологии экспертных систем. Они считают, что расходы на разработку таких систем очень большие, время разработки слишком велико, а полученные в результате программы накладывают тяжелое бремя на вычислительпые ресурсы.
В целом за разработку экспертных систем целесообразно браться организации, где накоплен опыт по автоматизации рутинных процедур обработки информации, таких как:
(рормироваипе корпоративных ннформацноиных систем;
организация сложных расчетов;
работа с компьютерной графикой;
обработка текстов н автоматизированный документооборот.
Решение таких задач, во-первых, подготавливает высококваднфицированных снс- циа.г1 истов по информатике, необходимых для создания тштеллеюусгльных систем, во-вторых, позволяет отдалить от экспертных систем цсэксиертные задачи.
Выбор подходящей проблемы
Этот этап определяет деятельность, преднюствуютую решсшнс начать разрабатывать конкретную ЭС. Он включает [Николов и др., 1990]:
определение проблемной области п задачи;
нахождение эксперта, желающего сотр\^ишчать при решении нро6〃смь【,и па- зпаченпс коллектива разработчиков;
or[редслепне предварительного подхода к решению П])облемы;
;ша〃нз расходов и прибылей от разработки;
подготовку подробного плана разработки.
Правильныii выбор проблемы представляет сам^чо крптлчсскул) часть разрпбет- кн в целом. Если выбрать iicno;ixo;uiuiyio проблему, можно очень быстро увяз- “уть в «иолотс» проектирования задач, кото])ые ншего не знас г, как ])ешать. Неподходящая проблема может также привести к со:以ан ню зк смертно ii системы, ко гора” ст опт намного оольшс, чем экономит. Де.гн)будет обстоять еще хуже, если р<1лрабогать систему, кото])ая работает, но неприемлема д.1 я н()льзовате/1е11'. "сжс если разработка выполняется сам oii оргащсзацнен для собствен пых целен, зта 小 аза является под ходя 1ц и м \( ом е 1 гг ом для получения рекам ендацш"! н.яше, чтобы гарантировать удачно выбранный и осущссгвихгыи с техшеюског! точкк прения первопачалъньй! проект.“
Прн выборе области применения следует учитывать, что если знание, необходи- м°с д.пя решения задач, постояппос, четко формулируемое и связано с вычисли- обработкой, то обычные адгоритмические программы, по всЗ ве])оятпо- ст11, удут самым целесообразным способом решения проблем в зто『1 области.
Экспертная система ни в коем случае не устранит потребность в реляционных : базах данных, статистическом программном обеспечении, электронных таблицах н системах текстовой обработки. Но. если результативность задачи зависит от знания, которое является субъективным, изменяющимся, символьным или виг® кающим частично из соображений здравого смысла, тогда область может обоснованно выступать претендентом на экспертную систему.
06м呼 экспертные системы разрабатываются путем получения специфических знаннн от эксперта и ввода их в систему. Некоторые системы могут содержать стратегии одного индивида. Следовательно, найти подходящего эксперта — это ключевой шаг в создании экспертных систем.
В процессе разработки и последующего расширения системы инженер по знаниям 11 эксперт обычно работают вместе. Инженер по знаниям помогает эксперту структурировать знания, определять и формализовать понятия и правила, необходимые для решения проблемы.
Во время первоначальных бесед они должны решить, будет ли их сотрудничество успешным. Это немаловажно, поскольку обе стороны будут работать совместно, по меньшей мере в течение одного года. Кроме ннх в коллектив разработчиков целесообразно включить потенциальных пользователей и профессиональных программистов. Подробно фун кции каждого члена коллектива описаны в следующем параграфе.
Предварительный подход к программ ной реализации задачи определяется, исходя из характеристик задачи п ресурсов, выделенных на ее решение. Инженер по знаниям выдвигает обычно несколько вариантов, связанных с использованием имеющихся на рынке программных средств. Окончательный выбор возможен лишь на этапе разработки прототипа.
После того как задача определена, необходимо подсчитать расходы н прибыль от разработки экспсртно|к системы. В расходы включаются затраты на оплату труда коллектива разработчиков. В допо.иштельные расходы будет включена стоимость приобретаемого программного инструментария, с помощью которого будет разработана экспертная система.
Прибыль может быть получена за счет снижения цены продукции, повышения производительности труда, расширения номенклат\7ры проекции плп услуг или даже разработки новых видов продукции плн услуг в ооластп, в которой оудет использоваться ЭС. Соответствующие расходы и прибыль от системы определяются относительно времени, в течение которого возвращаются средства, вложенные в разработку. На современном этапе большая часть фирм, развивающих крупные экспертные системы, предпочли разраоатывать дорогостоящие проекты, приносящие значительную прибыль.
Можно ожидать развития тенденции разработки менее дорогостоящих систем, хотя “ с более длительным сроком окупаемости вложенных в них средств, так как программные средства разработки экспертных систем непрерывно совершенствуются.
После того как инженер по знаниям убедился» что.
данная задача может быть решена с помощью экспертной системы:
экспертную систему можно создать предлагаемыми на рынке средствами,
имеется подходящий эксперт;
предложенные критерии производительности являются разумными;
затраты н срок их окупаемости приемлемы для заказчика, он составляет план разработки. План определяет шаги процесса разработки и необходимые затраты, а также ожидаемые результаты.
2.4・3・ Технология быстрого прототипирования
Прототипная система является усеченной версией экспертной системы, спроектированной для проверки правильности кодирования фактов, связей и стратегий рассуждения эксперта. Она также дает возможность инженеру по знаниям привлечь эксперта к активному участию в процессе разработки экспертной системы, и, следовательно, к принятию hn( обязательства приложить все усилия к созданию системы в полном объеме.
Объем прототипа — несколько десятков правил, фреймов или примеров. На рис. 2.4 изображено шесть стадий разработки прототипа н минимальный коллектив разработчиков, занятых на каждой кз стадий (пять стадий заимствовано из работы [Хейес-Рот и др„ 1987]). Приведем краткую характеристику каждой из стадий, хотя эта схема представляет собой грубое приближение к сложному, итеративному процессу.
ПользовательПользовательИнженер лознаниямИнженер лознаниямЭкспертЭксперт©Программист©Программист
Пользователь
Пользователь
Инженер лознаниям
Инженер лознаниям
Эксперт
Эксперт
©
Программист
©
Программист
Хотя любое теоретическое разделение бывает часто условным, осознание коллективом разработчиков четких задач каждой стадии представляется целесооб- Разнь1м- Р°"н разработчиков (эксперт, программист, пользователь и аналитик) являются постоянными на протяжении всей разработки. Совмещение ролей не- жел ательно.
Сроки приведены условно, так как зависят от квалификации специалистов и особенностей задачи.
Идентификация проблемы
Уточняется задача, планируется ход разработки прототипа экспертной системы, определяются:
необходимые ресурсы (время, люди, ЭВМ н т. д.);
источники знаний (книги, дополнительные эксперты, методики);
имеющиеся аналогичные экспертные системы;
цели (распространение опыта, автоматизация рутинных действий и др.);
классы решаемых задач и т. д.
Идентификация проблемы — знакомство и обучение членов коллектива разработчиков, а также создание неформальной формулировки проблемы.
Средняя продолжительность 1-2 недели.
Извлечение знаний
На атоН стадии происходит перенос компетентности от эксперта к инженеру по знаниях^ с использованием различных методов (см. главу 4):
анализ текстов;
диалоги;
экспертные игры;
лекции;
дискуссии;
интервью;
наблюдение н другие.
Извлечение знаний- получение инженером по знаниям наиболее полного из возможных представлений о предметной области н способах принята решения в ней.
Средняя продолжительность 1-3 месяца.
Структурирование или концептуализация знаний
Выявляется структ)'Ра полученных знанн" о предметной области, то есть определяются:
терминология;
список основных noHHTffii if нх атриоутов,
отношения между понятиями;
структура входной н выходной информации,
стратегия принятия решений;
ограничения стратегий и т. д.
Структурирование (или концептуализация) знаний 一 разработка неформального описания знаний о предметной области в виде графа, таблицы, диаграммы или текста, которое отражает основные концепции и взаимосвязи между понятиями предметной области. .
Такое описание называется полем знаний. Средняя продолжительность этапа 2-4 недели. Подробно стадия структурирования описана в главе 3.
Формализация
Строится формализованное представление кон цеп ций предметногг области на основе выбранного языка представления знаний (ЯПЗ). Традиционно на этом этапе используются:
логические методы (исчисления предикатов I-го порядка н др,);
продукционные модели (с прямым и обратным выводом);
семантические сети;
фреймы;
объектно-ориентироваппьге языки, осиоваппые па иерархии классов, объектов.
Формализация знаний — разработка базы знаний на языке представления знаний, который, с одной стороны, соответствует структуре поля знаний, а с другой ——позволяет реализовать прототип системы на следующей стадии программной реализации.
Все чаще на этой стадии используется симбиоз языков п рслста в л еш i я знаний, например, в системе ОМЕГА [Справоиннк по ИИ, 1990] — фре]"[мы + семантические сети + полный набор возлюжностс11 языка исчисления предикатов. Сре/【- нях продолжительность 1—2 месяца. Подробно см. в главах 3, 4.
Реализация
Создается прототип экспертной системы, включающш'г базу знаннН и остальные 6”ск1], при помощи одного из следующих способов:
программирование на традиционных языках типа Pascal, C + + и др.;
программирование на специалнзированных языках, применяемых в задачах искусственного интеллекта: LISP [Хювянеи, Сеппянеи, 1991], FRL fBaiViyu, Бунин, 1990]r SMALLTALK [Справочник по ИИ, 1990] и др.;
использование инструментальных средств разработки ЭС типа СПЭИС [Ков- ршшг, Перфильев, 1988], ПИЭС [Хорошевский, 1993], G2 [Попов, Фоминых, Кисель, 1996];
ЭКСПЕРТ [Кирсанов, По-ЭКСПЕРТ [Кирсанов, По-использование «пустых» ЭС нли «оболочек* типа
ЭКСПЕРТ [Кирсанов, По-
ЭКСПЕРТ [Кирсанов, По-
и др.и др.нов, 1990], ФИАКР [Соловьев, Соловьева, 1989]
и др.
и др.
Реализация - разработка программного комплекса, демонстрирующего жизнеспособ- 北器篇践^Л°м・ЧЭЩе ВСеГ° первый прототип отбрасывается на этале реализации
Средняя продолжительность 1-2 месяца. Более подробно эти вопросы рассматриваются в главе 6.
Тестирование
Оценивается и проверяется работа программ прототипа с целью приведения в соответствие с реальными запросами пользователей. Прототип проверяется на:
удобство и адекватность интерфейсов ввода/вывода (характер вопросов в диалоге, связность выводимого текста результата и др.);
эффективность стратегии управления (порядок перебора, использование нечеткого вывода и др.);
качество проверочных примеров;
корректность базы знаний (полнота и непротиворечивость правил).
Тестирование — выявление ошибок в подходе и реализации прототипа и выработка рекомендаций по доводке системы до-промышленного варианта.
Средняя продолжительность 1-2 недели.
2.4.4. Развитие прототипа до промышленной ЭС
При неудовлетворительном функционировании прототипа эксперт и инженер по знаниям имеют возможность оценить, что именно будет включено в разработку окончательного варианта системы.
Если первоначально выбранные объекты или свойства оказываются неподходящими, их необходимо изменить. Можно сделать оценку общего числа эвристических правил, необходимых для создания окончательного варианта экспертной системы. Иногда [Хювянен, Сеппянен, 1991] прп разработке промышленной и/ IU п комлЕерческой системы выделяют до пол ннтельные этапы ня перехода (табл. 2.1).
демонстрационный прототип т ^е/стну<?4簿 прототип т 叩омзменна^ система т коммерческая система
Однако чаще реализуется плавный переход от демонстрационного прототипа к промышленной системе, при этом, если программный инструментарий оыл выбран удачно, не обязательно даже переписывать окончательный вариант другими программными средствами.
Понятие же коммерческой системы в нашей стране входит в понятие <промыш- леннь由 программный продукту или промышленная ЗС» (в этои раооте).
Основная работа на данном этапе заключается в существенном расширении базы знаний, то есть в добавлении большого числа дополнительных правил, фреймов, узлов семантической сети илн других элементов знаний. Эти элементы знаний обычно увеличивают глубину системы, обеспечивая большее число правил для трудно уловн.мых аспектов отдельных случаев. В то же время эксперт и инженер по знанПя.м могут увеличить базу знаний системы, включая правила, управляющие дополнительными подзадачами нлн дополнительными аспектами экспертной задачи (метазнания).
Таблица 2.1. Переход от прототипа к промышленной экспертной системе
Система
Описание
Демонстрационный прототип ЭС
Система решает часть задач, демонстрируя жизнеспособность подхода (несколько десятков правил или понятий)
Исследовательский прототип ЭС
Система решает большинство задач, но неустойчива в работе и не полностью проверена (несколько сотен правил или понятий)
Действующий прототип ЭС
Система надежно решает все задачи на реальных ‘ примерах, но для сложной задачи требует много времени и памяти
Промышленная система
Система обеспечивает высокое качество решений лри минимизации требуемого времени и памяти; переписывается с использованием более эффективных средств представления знаний
Коммерческая система
Промышленная система, пригодная к продаже, то есть хорошо документирована и снабжена сервисом
После установления основной структуры ЭС знаний инженер по знаниям прп- ступает к разработке и адаптации интерфейсов, с помощью которых система 6у- 〃ет общаться с пользователем и экспертом. Необходимо обратить особое внимание на языковые возможности интерфейсов, нх простоту и удобство для управ- ленн兄 работой ЭС. Система должна обеспечивать пользователю возможность лег- кнм и естественным образом уточнять непонятные моменты, приостанавливать работу II т. д. В частности, могут оказаться полезными графические представления.
На этом этапе разработки большинство экспертов узнают достаточно о вводе пра* внл н могут сами вводить в систему новые правн/а. Таким образом, начинается процесс, во время которого инженер по знаниям передает право собственности и контроля за системой эксперту для уточнения, детально辻 разработки и обслуживания. -
2-4.5- Оценка системы
После завершения этапа разработки промышленной экспертной снстемн необ- ходнмо провести ее тестирование в отношении критериев эффективности. К тестированию широко привлекаются другие эксперты с целью апробирования ра-
ботоспособности системы на различных примерах. Экспертные системы опени- ваются главным образом для того, чтобы проверить точность работы программы н ее полезность. Оценку можно проводить, исходя из различных критер^в которые сгруппируем следующим образом:,
критерии пользователей (понятность и «прозрачность» работы системы, удобство интерфейсов и др.);'」
критерии приглашенных экспертов (оценка советов-решений, предлагаемых системой, сравнение ее с собственными решениями, оценка подсистемы объяснений и др.);
критерии коллектива разработчиков (эффективность реализации, производительность, время отклика, дизайн, широта охвата предметной области, непротиворечивость БЗ, количество тупиковых ситуаций, когда система не может принять решение, анализ чувствительности программы к незначительным изменениям в представлении знаний, весовых коэффициентах, применяемых в механизмах логического вывода, данных и т. п.).
2.4.6. Стыковка системы
На этом этапе осуществляется стыковка экспертной системы с другими программными средствами в среде, в которой она будет работать, и обучение людей, которых она будет обслуживать. Иногда это означает внесение существенных измене и и й. Такие изменения требуют непременного вмешательства инженера по знаниям или какого-либо другого специалиста, который сможет модифицировать систему. Под стыковкой подразумевается также разработка связей между экспертной системой и средой, в которой она действует.
Когда экспертная система уже готова, инженер по знаниям должен убедиться в том, что эксперты, пользователи и персона.'! знают, как эксплуатировать и обепу- живать ее. После передачи им своего опыта в области информашюнноп технологии инженер познаниям может полностью предоставить ее в распоряжение пользователей.
Для подтверждения полезности системы важно предоставить каждому из пользователей возможность поставить перед ЭС реальные задачи, а затем проследить, как она выполняет эти задачи. Для того чтобы система оыла одоорена, необходимо представить ее как помощника, освобождающего пользователей от обременительных задач, а не как средство их замещения.
Стыковка включает обеспечение связи ЭС с существующими базами Данных н другими системами на предприятии, а также улучшение системных факторов, зависящих от времени, чтобы можно было обеспечить ее более эффективную работу и улучшить характеристики ее технических средств, если система работает в необычной среде (например, связь с измерительными устройствами).
Пример 2.1
Успешно состыкована со своим окружением система PUFF-экспертная ^;:^:;:* диапюствки заболеваний легких [Хейес-Рот п др.. 1987]. После того как PLFF была
закончена и все были удовлетворены ее работой, систему перекодировали с LISP на Бейсик. Затем систему перенесли на ПЭВМ, которая уже работала в больнице. В свою очередь, эта ПЭВМ была связана с измерительными приборами. Данные с измерительных приборов сразу поступают в ПЭВМ. PUFF обрабатывает эти Данные и печатает рекомендации для врача. Врач в принципе ие взаимодействует с PUFF. Система полностью интегрирована со своим окружением 一 она представляет собой(П1теллектуаль- ное расширение аппарата исследования легких, кото])ый врачи давно используют.
Пример 2.2
Другой системой, которая хорошо функционирует в своем окружении, является СЛТ-1 [Уотермен, 1990] — зкспертпгш система для диагностики неисправностей /и«елей локомотивов.
Эта система была разработана также на LISP, а затем была переведена на FORTH с тем, чтобы ее можно было более эффективно использовать в различных локомотивных цехах. Мастер по ремонту запрашивает систему о возможммх причинах неисправности дизеля. Система связана с видеодиском, с помощью которого мастеру тгоказывагот визуальные объяснения н подсказки, касающиеся более подробтях проверок, которые он должен сделать.
Кроме того, если оператор пс уверен в том, как устранить неисправность, система предоставляет ему обучающие материалы, которые фирма подготовила предварительно, и показывает ему их на видеотерминале. Таким образом, мастер по ремонту может с по- 5го[цью экспертной системы диагностировать проблему, лайтв тестовую процедуру, которую он должен иеггользовать, получнп» ма дисплее объяснение, как провести тест, или получить инструкции о том, как справиться с возни кию и проблемой.
2-4.7. Поддержка системы
При перекодировании системы на язык, подобный С, повышается ее быстродействие и увеличивается переносимость, однако гибкость при этом уменьшается. Это приемлемо лишь в том случае, если система сохраняет все знание проблем- Hoii области и это знание не будет изменяться в ближайшем будущем. Однако если экспертная система создана именно нз-за того, что проблемная область изменяется, то необходимо поддерживать систему в ее инструментальной среде разработки.
Пример 2.3
Удачным нртгером ЭС, вмспреннсЗ таким образом, является XCON (R1) - ЭС, «ото- ру【0 фирма DEC псио.чьзустдля комплектацш! ЭВМ семейства VAX. Одной из клю- исвих ироолем, с которой стоакпулась фпрма DEC, является необходимость постоян- ?сио внесения изменений для новых Bcpciiii оборудовалия, новых спсцлфлкали!! п т. д. 厶ля зто『1 Лели XCON поддерживается и 1【ро「рам\июС среде 0PS5. '
Теоретические аспекты инженерии знаний
□ Поле знаний
D Стратегии получения знаний
口 Теоретические аспекты извлечения знаний
О Теоретические аспекты структурирования знаний
Поле знаний
Инженерия знания — достаточно молодое направление искусственного интеллекта, появившееся тогда, когда практические разработчики столкнулись с весь- \【а пегрнвнальшямп проблемами трудности «добычи» и(|х)рмализац11н знаний. В первых книгах по ИИ зтн факты обычно только постулировались, в дальнейшем начались серьезные исследования по выявлению оптимальных стратегий выявления знаний [Boose, 1990; Wiclinga, Schreiber, Breuker, 1992; Tuthill, 1994; Adeli, 1994].
Данная глава целиком посвящена теоретическим проблемам инженерии знаний, другимн словами — проектированию баз знании — получению и структурированию знаний специалистов для последующей разработки баз знапи!!. Центральным понятием на стадиях получения и структурирования является так называе- мое поле знаний, уже упоминавшееся в параграфе 1.3.
Поле знаний — это условное неформальное описание основных понятий и взаимосвязей между понятиями предметной области, выявленных из системы знаний эксперта, в виде графа, диа「раммн, таблицы или текста.
-1 - О языке описания поля знаний
Поле знаний Pz формируется на третьей стадии разработки ЭС (см. и. 2.4) — ста- дни структурирования.
Поле знаний, как первый шаг к форхюизацни, представляет модель знанн" о предметной области, в том виде, в каком ее суме* выразить аналитик на некою-
ром «воем» языке. Что это за язык? Известно, что словарь языка конкретной на- ;ки Формируется путем пополнения общеупотребительного языка специальными терминами и знаками, которые либо заимствуются из повседневного языка, лнб。изобретаются [Кузичева, 1987]. Назовем этот язык L н рассмотрим его желаемые свойства, учитывая, что стандарта этого языка пока не существует, а ка* днй инженер по знаниям вынужден сам его изобретать.
Во-первых, как н в языке любой науки, в нем должно быть как можно меньше неточностей, присущих обыденным языкам. Частично точность достигается более строгим определением понятий. Идеалом точности, конечно, является язык ма- тематики. Язык L, видимо, занимает промежуточное положение между естественным языком я языком математики.
Во-вторнх, желательно не использовать в пем терминов иных наук в другом, то есть новом, смысле. Это вызывает недоразумения.
В-третьих, язык L, видимо, будет либо символьным языком, либо языком графическим (схемы, рисунки, пиктограммы).
При выборе языка описания поля знаний не следует забывать, что на стадии форма.чпзацип необходимо его заменить на машинно-реализуемы!! язык представления знаний (ЯПЗ), выбор которого зависит от структуры поля знаний.
Существует ряд языков, достаточно универсальных, чтобы претендовать на роль языка инженерии знаний, — это структурно-логический язык SLL, включаюиипЧ аппарат лямбда-конверепп [Вольфенгаген “ др., 1979], язык К-спстем [Кузнецов, 1989], УСК [Мартынов, 1977] п др. Однако они не нашли широкого применения. В некотором смысле создание языка L очень близко к идеям разработки универсальных языков науки [Кузнчсва, 1987]. К XVII веку сложились два подхода в разработке 541иверсальных язы ков: создание языков-классификаций w логика- конструктивных языков. К первому примыкают проекты, восходящие к идее Ф. Бэкона, — это языки Вилкинса и Далгарпо. Второй подход связан с исследованиями в рамках поиска универсального метода познания, наиболее четко высказанного Р. Декартом, а затем в проекте универсалbiioii характеристики Г. Леиб- ннна. Именно JIeiioHim наметил основные контуры учения о символах, котор)яе в соответствии с его замыслами в XVIII веке развивал Г. Ламберт, который дал нмя науке «семиотика». Семиотика в основном нашла своих адептов в сфере гуманитарных наук. В последнее время сложилась также лопая ветвь семиотики — прикладная семиотика [Pospelov, 1995].
Представители естественных наук еще не до конца осознали достоинства семиотики только из-за того, что имеют дело с достаточно простыми и «жесткими» предметными областями. Им хватает аппарата традиционнон матсматнкн. В инженерии зиапи11, однако, мы имеем дело с «мягкими» предметными областями, гае явно не хватает выразительной адекватности классического математлчес- кого аппарата и где большое значение имеет эффективность нотации (ее ком- Ш1ктность, простота модификации, ясность интерпретации, наглядность и т. д.). В главе 8 рассматриваются современные тенденции в этой области и вводится понятие онотологического инжиниринга, как одного из подходов к семиотическому моделированию предметной области.
6161Поле знаний
61
61
Языки семиотического моделирования [Осипов, 1988; Поспелов, 1986] как естественное развитие языков ситуационного управления являются, как нам кажется, первым приближением к языку инженерии знаний. Именно изменчивость и условность знаков делают семиотическую модель применимой к сложным сферам реальной человеческой деятельности. Поэтому главное на стадии концептуа- лнзамни - сохранение естественной структуры поля знаний, а не выразительные возможности языка.
Традиционно семиотика включает (рис. 3.1):
синтаксис (совокупность правил построения языка или отношения между знаками);
семантику (связь между элементами языка и их значениями или отношения между знаками и реальностью);
прагматику (отношения между знаками и их пользователями).
Семиотическая модель поля знаний
Поле знаний Pz является ncKoTopoii семпотнческо!! моделью, которая м。乐ет быть представлена как граф, рисунок, таблица, диаграмма, формула или :си в зависимости от вкуса инженера по знаниям и особешюстеп прелметноп оо.ънт Особенности ПО могут оказать существенное влияние на форму и содержание компонентов структуры Pz.
62
Рассмотрим соответствующие компоненты Pz (рис. 3.2).
Рис. 3.2. Структура поля знаний
Синтаксис. Обобщенно синтаксическую структуру поля знаний можно представить как
П = (1,0;М),
где I — структура исходных данных, подлежащих обработке и интерпретации в экспертной системе;
О — структура выходных данных, то есть результата работы системы;
М — операциональная модель предметной области, на основании которой происходит модификация I в О.
Включение компонентов I и О в Р обусловлено тем, что составляющие и структура этих интерфейсных компонентов имплицитно (то есть неявно) присутствуют в модели репрезентации в памяти эксперта. Операц|ю1пшьная модель М может быть представлена как совокупность концептуальной структурь】Sk, отражающей понятийную структуру предметной области, и функциональной структуры Sf, мо- делирующе{| схему рассуждений эксперта:
Sk выступает как статическая, неизменная составляющая Р, в то время как Sf представляет пннамниескую, изменяемую составляющую.
Формирование Sk основано на выявлении понятийной структуры предметной области. Параграф 3.4. описывает достаточно универсальный алгоритм проведения концептуального анализа на основе лгодп фи нации парадигмы структурного анализа [Yourdon, 1989] и построения иерархии понятий (так называемая «пира- мила знаний»). Пример Sk и Sf представлен на рис. 3.3 и 3.4.
3・1・ Поле знаний
* МИОпг
>—ПоиОС
「J VJCONf- [HEDOSTAIVCO]
[Пордженх* 寓名п^доиьцнц!电онсзго тракт.
I'「」'
* (Оуо^мр* по,р»бно^Г
Причины
адостеток белнаво。пищи носы
рр 白才 печени
фонический DJV3口П4н
1….(^WICT.唄一
J七千『即…^^g
Поражение д*я
k-Сухость и блелность г рЗритен^/
U-Гнпер^ретоэ / 1—Пигн^нтаиии/ I—Ш8nq 也 дни®'
Нервные болеэнм
Глазные бале»ни
II
МЧервно-мwшеикыв боли
П^1^^^^£^£^£^^!
—Рвздрл^итепьнссть
—Бе;с0мм14ца
—Подавленность
—ЗаторнаА,е^нос1^
|Лоре>еине слн^истмг
Сом*хмпсй.
rr;r
、•:.士y二f:
\^Внутрьг X ■
[в теге nw< спудоюс] ^Йё^ё^Т^ё^^кл 5* раствора шкотнмагшда ■ w«
―夕口配 ОбЛОМбмный 01 очный
—5^3ыг Су:*Ой ярко-мросной
—Яэык болеэнвннькй с. трекинони
Рис. 3.3. Концептуальная составляющая поля знаний
Рис. 3,4. Функциональная составляющая поля знаний
Структура Sf включает понятия предметной области А и моделирует основные функциональные связи ИЛ или отношения между понятиями, образующими S^ Эти связи отражают модель или стратегию принятия решения в выбранной ПО, Таким образом Sf образует стратегическую составляющую М.
Семантика. Семантика, придающая определенное значение предложениям любого формального языка, определяется на некоторой области. Фактически это набор правил интерпретации предложений и формул языка. Семантика L должна быть композиционной, то есть значение предложения определяется как функция значений его составляющих.
Семантика языка L зависит от особенностей предметной области» она обладает свойством полиморфизма, то есть одни п те же операторы языка в разных зала- чах могут иметь свои особенности.
Семантику поля знании Pz можно рассматривать на двух уровнях. На первом уровне P'Zg есть семантическая модель знаний эксперта i о некоторой предметной области Og. На втором уровне любое поле знаний Pz является моделью некоторых знаний, и, следовательно, можно говорить о смысле его как некоторого зеркала действительности. Рассматривать первый уровень в отрыве от конкретной области нецелесообразно, поэтому остановимся подробнее на втором.
Схему, отображающую отношения между реальной действительностью и полем знаний, можно представить так, как показано на рис. 3.5.
Рис, 3.5. “Испорченны话 телефон» при формировании поля знаний
Как следует из рисунка, поле Р% — это результат, полученный «после 4-й трансляции» (если говорить ла языке информатики),
* трапопшу (Ij) - это восприятие н интерпретация действительности О прсдметнои ооласти gi-м экспертом, В результате /, в памяти эксперта образуется модель ЛГ как семантическая репрезентация де11ствнтелыюсти и его тш+ ного опыта по работе с пей.
* 2f трансляция (Vf) - это вербализация опыта i-ro эксперта, когда он пытает- ся обь^сннть свои рассуждения & и передать свои знания % инженеру по зна- ннлм,В результате V; образуется либо текст Т^ либо речевое сообщение С-
* Зт трансляция (^) 一 это восприятие й интерпретация сообщейий Т,или С j-м инженером по знаниям. В результате в памяти инженера по знаниям образуется модель мира %.
• 4-я трансляция (К〉一 это кодирование и вербализация модели М . в форме поля знаний Р%・®
Более всего эта схема напоминает детскую игру в «испорченный телефон»; перед инженером по знаниям стоит труднейшая задача - добиться максимального соответствия Mgj “ Р%# У читателей не должно возникать иллюзий, что Pzgoro6pa・ жает Og Нив коем случае, ведь знания — вещь сугубо авторизованная, следовало бы на каждой ЭС ставить четкий ярлык i-j,TO есть «база знаний эксперта i в понимании инженера по знаниям]». Стоит заменить, например, инженера по знаниям j на h, и получится совсем другая картина.
Пример 3.1
Приведем пример тзлияиия субъективных взглядов эксперта на % и V「Реальность (О J два человека прибегают на вокзал за 2 минуты до отхода имзда. В кассы — очередь. В автоматических кассах свободно, но пи у того, ни у другого нет мелочи. Следующий поезд через 40 минут. Оба опаздывают на важную встречу. ■
Интерпретация 1-го эксперта (1): нельзя приходить на вокзал менее чем за 10 минут.
Интерпретация 2-го эксперта (IJ: надо всегда иметь мелочь в кармане.
Вербализация 1-го эксперта (V;): опоздал к нужному поезду, так как не рассчитал время,
Вербгишзация 2-го эксперта (\\): опоздал, так как на вокза-ie неразбериха, в кассах тол па.
Последующие трансляции еще больше будут искажать и видоизменять модель, по теперь уже с учетом субъективного восприятия инженеров по знаниям.
Таким образом, если считать поле знаний смыслово([ (ссмаитпчсско|1)моделью предметной области, то эта моле.чь дважды субъективна. VI если модель Л/^ (см. рис, 3.5)— это усеченное отображение Og. то само Pz — лишь отблеск A/戸 “срез призму V\ и Л〃
Прагматика. В качестве прагматнческот! составляющей семиотпческои модели следует рассматривать технологии проведения структурного анализа ПО, пользуясь которым инженер по знаниям может сформировать Pz по результатам стадии извлечения зианпп.
Таким образом, под прагматико!! б\гдем понимать практические аспекты разработки и использования ноля, то есть как от хаоса черновиков и стенограмм сеансов извлечения знаний перейти к cTpoimoii или хотя бы ясной модели.
Подробнее эти вопросы освещены в параграфах 3.4. и 4.4. Однако поле знании, несмотря на все старания инженера по знаниям и эксперта, всегда будут лишь бледным отпечатком реально существующей предметной области, ведь окружающий нас мир так изменчив, сложен и многообразен, а то, что хранится в нашем сознании, так плохо поддается вербализации. Тем не менее с точки зрения науч-
ной методологии без продуманного, четкого и красивого поля знаний не может идти и речи о создании базы знан и и промышленной ЗС*
«Пирамида» знаний
Ркрархнчность понятийной структуры сознания подчеркивается в работах мио- ЕХ психологов [Брунер, 1971; Беккер, 1976]. Поле знаний можно стратифицировать, то есть рассматривать на различных уровнях абстракции понятий. В «““pa- МИДе знаний» каждый следующий уровень служит для восхождения на новую ступень обобщения и углубления знаний в предметной области. Таким образом, возможно наличие нескольких уровней понятийной структуры Sk
Представляется целесообразным связать это с глубиной профессионального опыта (например, как в системе АВТАНТЕСТ [Гаврилова, Червинская, 1992]) или с уровнем иерархии в структурной лестнице организации (рлс. 4.12 главы 4).
Естественно, что и стратегии принятия решений, то есть функциональные структуры Sf, на различных уровнях будут существенно отличаться.
Если попытаться дать математическую интерпретацию уровне" пирамиды знаний U н (Uj, U?, U3 ,..., Un), то наиболее прозрачным является понятие гомоморфизма —отображения некоторой системы Е, сохраняющего основные операции и основные отношения этой систем ы.
Пусть
Е = (Eg : i EI),(】j :j e J))
некоторая система с основными понятиями о;, i е I н основными отношениями г;
Гомоморфизмом системы Е в однотипную cii систему Е':
E,= (E;(o;:i£ I),(r;j£ J)), называется отображение
①:Е Е', удовлетворяющее следующим двум условиям:
①9(J%)) = о:(①(c)…,Ф (efl|));
(J,…'Rg) * r. => (Ф(C]Ф (eul)) G r'j.
Для всех элементов e;, еП1 из E и всех i G I, jE J.
Согласно введенным обозначениям уровни пирамиды суть гомоморфизмы моде- "е访(то есть понятиг'[ и отиошени!!) предметно!] области
①:m n m;
где М = (A, R, S); М' = (A; R; S'), А* — мета-поиятпя, пли понятия более высокого уровне абстракции; Rf - мета-отпошения; S' - мета-страте门hl
Восходя по ступеням пирамиды, мы получаем систему гомоморфизмов, что соответствует результатам, полученным в когнитивной психологии об уменьтс- 11ИИ Размерности семантического пространства памяти с увеличением опыта экспертов.'
3.2. Стратегии получения знаний
Прн формировании поля знаний ключевым вопросом является сам процесс по-, лучения знаний, когда происходит перенос компетентности экспертов на. инженеров по знаниям. Для названия этого процесса в литературе по ЭС получило распространение несколько терминов: приобретение, добыч% извлечение, получение, выявление, формирование знаний. В англоязычной специальной литературе в основном используются два: acquisition (приобретение) и eliciution (выявление, извлечение, установление).
Термин «лриобретехие» трактуется либо очень широко— тогдэ он включает весь процесс передачи знаний от эксперта к базе знаний ЭС, либо уж^ как способ автоматизированного построения базы знаний посредством диалога эксперта и специальной программы (при этом структура поля знаний заранее закладывается в программу). В обоих случаях термин «приобретение» не касается самого та- li нет в а экстрагирования структуры знаний из потока информации о предметной области. Этот процесс описывается понятием «извлечение».
Авторы склонны использовать этот термин как более емкий и более точно выра- жающи!1 см ысл процедуры переноса компетентности эксперта через инженера по знаниям в базу знапий ЭС.
Извлечение знаний (knowledge eUcitation) — это процедура взаимодействия эксперта с источником знаний, в результате которой становятся явными процесс рассуждений специалистов при принятии решения и структура их представлений о предметной области.
В настоящее время большинство разработчиков ЭС отмечает, что процесс изоле- иеми* знаний остается самым «узким» местом при построении промышленных ЭС. При этом им приходится практически самостоятельно разрабатывать методы из- в/течепия, ста.чкиваясь со следующими трудностями [Gaines, 1989]:
организационные неувязки;
неудачный метод извлечения, не совпадающий со структур。" знаний в данной области;
неадекватная модель (язык) для представления знаний.
Можно добавить к этому [Гаврилова, Червинская, 1992]:
неумение наладить контакт с экспертом;
термшю/югическиИ разнобой;
отсутствие целостной системы знаний в результате извлечения только «фраг ментов»;
упрощение «картины мира» эксперта и Др.
Процесс извлечения знаний - это длительная и трудоемкая 叩。цезура, в которой инженеру по знаниям, вооруженному специа.1ьными знаниями
Иой психологии, системному анализу, математической логике ii пр., воссоздать модель предметной области, которой пользуются эксперты для Р
нятия решения. Часто начинающие разработчики ЭС, желая упростить эту про- цедуру, пытаются подменить инженера по знаниям самим экспертом. По многим причинам это нежелательно.
Во-первых, большая часть знаний эксперта - это результат многочисленных на- слоений, ступеней опыта. И часто, зная, что из А следует В, эксперт пе отдает себе отчета, что цепочка его рассуждений была гораздо длиннее, например А т D т С —»В или А т Q т R т В.
Во-вторых, как было известно еще Платону, мышление диалогично. И поэтому диалог инженера по знаниям и эксперта - наиболее естественная форма изучения лабиринтов памяти эксперта, в которых хранятся знания, частью носящие невербальный характер, то есть выраженные не в форме слов, а в форме нагляд- ных образов, например. И именно в процессе объяснения инженеру по знаниям эксперт на эти размытые ассоциативные образы надевает четкие словесные ярлыки, то есть вербализует знания.
В-третьих, эксперту труднее создать модель предметной области вследствие глубины и объема информации, которой он владеет. Еще в ситуационном управлении [Поспелов, 1986] было выявлено: объекты реального мира связаны более чем 200 типами отношений (временные, пространственные, причинно-следственные, типа «часть—целое» п др.). Эти отношения и связи предметной области образуют сложную систему, из которой выделить «скелет» или главную структуру иногда доступнее аналитику, владеющему к тому же системной методологией.
Термин ^приобретение» в рамках данного учебника оставлен за автоматизированными системами прямого общения с экспертом. Они действительно непосредственно приобретают уже готовые фрагменты знаний в соответствии со структурами, заложенными разработчиками систем. Большинство этих инструментальных средств специально ориентировано на конкретные ЭС с жестко обозначенной предметной областью и моделью представления знании, то есть не являются универсальными.
Приобретение знаний (knowledge acquisition) — процесс наполнения базы знаний экспертом с использованием специализированных программных средств.
Например, система TEIRESIAS [Davis, 1982], ставшая прародительницей всех инструментариев для приобретения знаш-пт, предназначена для пополнения базы знаний системы MYCIN или ее дочерних ветвей, построенных на «оболбчке» EMYCIN [Shortliffe, 1976] в области медицинеicoii диагностики с использованием продукьцюннсш модели представления знаний. Три поколейия и основные тенденции СПЗ будут подробно описаны в параграфе 4.5, Более современные конкретные системы описаны далее в параграфе 4.6,
Термин формирование знаний традиционно закрепился за чрезвычайно псрспек- тнвно「1 и активно развивающейся областью инженерии знании, которая занимается разработкой моделей, методов п алгоритмов обучения. Она включает индуктивные модели формирования знаний и автоматического порождения гипотез, например ДСМ-метод [Ллшаков, Скворцов, Финн, 1986] па основе обучающих выборок, обучение по аналогии и другие методы. Эти модели позволяют выявить
причинно-следственные эмпирические зависимости в базах данных с неполной' информацией, содержащих структурированные числовые и символьные объекты (часто в условиях неполноты информации).
Формирование знаний (machine learning)— процесс анализа данных и выявление скрытых закономерностей с использованием специального математического вппаратв и программных средств.
Традиционно к задачам формирования знаний или машинного обучения относятся задачи прогнозирования, идентификация (синтеза) функций, расшифровки языков, индуктивного вывода и синтеза с дополнительной информацией [Епифанов, 1984]. В широком смысле к обучению по примерам можно отнесши методы обучения распознаванию образов [Аткинсон, 1989; Schwartz, 1988].
Индуктивный вывод правил из фактов применен также в системах AQ, AQUINAS, KSSI, INSTIL и некоторых других.
Наиболее продвппутымп среди методов машинного обучения являются, по-ви- днмому, методы распознавания образов, в частности, алгебраический подход, в котором предусматривается обогащение исходных эвристических алгоритмов с помощью алгебраических операций и построение семейства алгоритмов, гарантирующего получение корректного алгоритма для решения изучаемого класса задач, то есть алгоритма, правильно класслфицпрующего конечную выборку по всем классам [Берков, 1972]. Однако применение методов формирования зна- iiuii пока не стало промышленной технологией разработка баз знаний.
Для того чтобы эти методы стали элементами технолопш интеллектуальных систем, необходимо решить ряд задач [Осипов, 1997]:
обеспечить механизм сопряжения независимо созданных баз данных, имею* шпх различные схемы, с базами знангп! интеллектуальных систем;
установить соответствие между набором no.neii базы данных п множеством элементов декларативной компоненты базы знании;
выполнить преобразование результата работы алгоритма обучения в способ представления, поддерживаемый программными средствами пнтеллектлгаль- noii системы.
Помимо перечисленных существуют также п другие стратегии получения знаний, например, в случае обучения на примерах (case-based reasoning), когда источник знаний — это множество примеров пред.метноп области [Осипов, 1997; Попов, Фоминых, Кисель, 1996]. Обучение на основе примеров (прецедентов) включает настройку а-чгорпт.ма распознавания на задачу посредством предъявления примеров, классификация которых известна [Ибер ла, 1980].
Обучение на примерах тесно связано с машинным общением. Различие заключается в том, что результат обучения в рассматриваемолг здесь случае должен быть интерпретирован в некоторой модели, в которой, возможно, уже содержатся факты и закономерности пpeд^IeтIIoи области, и преобразован в способ представ-
ления, который допускает использование результата обучения в базе знаний, для моделирования рассуждений, для работы механизма объяснения и т. д.,】о есть делает результат обучения элементом соответствующей технологии.
Например, в системе INDUCE [Коов и др„ 1988] порождается непротиворечивое описание некоторого класса объектов по множествам примеров и контр-примеров данного класса. В качестве языка представления используется язык перемен- но-значной логики первого порядка (вариант языка многозначной логики первого порядка).
Следует отметить также появление двух новых «флагов» в стане сторонников методов машинного обучения - это data mining и knowledge discovery. Оба подхода базируются на анализе данных и поиске закономерностей.
Таким образом, можно выделить три основные стратегии проведения стадии получения знаний при разработке ЭС (рис. 3.6).
С использованием ЭВМ при наличии подходящего программного инструментария, иначе приобретение знаний.
С использованием программ общения при наличии репрезентативной (то есть достаточно представительной) выборки примеров принятия решений в предметной области и соответствующих пакетов прикладных программ, иначе формирование знаний.
Без использования вычислительной техники путем непосредственного контакта инженера по знаниям и источника зналпн (будь то эксперт, с пениальная литература или другие источники), иначе извлечете знаиий.
Рис.3.6. Стратегии получения знанийРис.3.6. Стратегии получения знаний
Рис.3.6. Стратегии получения знаний
Рис.3.6. Стратегии получения знаний
В учебнике подробно будут рассматриваться процессы извлечения н приобрете- нмя знаний, так как на современном этапе разработки ЭС эти стратегии являются наиболее эффективными и перспективными. Формирование знаний, тяготеющее в большей степени к области machine learning, то есть индуктивному обучению, основываясь на хорошо исследованном аппарате распознавания образов [Гаек, Гавранек, 1983] и обнаружения сходства объектов [Гусакова, Фшш, 1987], выхо- днт за Рамки данного учебника. Также вне этой кннгн остались вопросы формирования знаний из данных (data mining, knowledge discovery) н др.
3・3・ Теоретические эспокты извлечения знаний
Поскольку основной проблемой инженерии знаний является процесс извлечения знании, инженеру по знаниям необходимо четко понимать природу и особеннос- тн этих процессов. Для того чтобы разобраться в природе извлечения знаний выделим три основных аспекта этой процедуры (рис. 3 7)- , А = {Al, А2, АЗ} = {психологический, лингвистический, гносеологический).
Рис. 3.7. Теоретические аспекты инженерии знаний
Психологический аспект
Из трех аспектов извлечения знаний психологический — А1 — является ведущим, поскольку он определяет успешность и эффективность взаимодействия инженера по знаниям (аналитика) с основным источником знаний — экспертом-профессионалом. Психологический аспект выделяется еще и потому, что извлечение знаний происходит чаще всего в процессе непосредственного общения разработчиков системы. А в общении психология является доминантной.
Общение, или коммуникация (от лат. communicatio — связь), — это междисциплинарное понятие, обозначающее все формы непосредственных контактов между людьми — от дружеских до деловых. Оно широко исследуется в психологии, философии, социологии, этологии, лингвистике, семиотике и других науках. Сутие- ствуст несколько десятков теории общения, и единственное, в чем сходятся все авторы, — это сложность, многоплановость процедуры общения. Подчеркивается, что общение — не просто однонаправленный процесс передачи сообщений и не двухтактный обмен порциями сведешп!, а нерасчлененныи процесс циркуляции информации, то есть совместный поиск истины [Каган, 1988] (рпс. 3.8).
Итак, общение есть процесс выработки новой информации, обшей」'* общающихся люден и рождающей их общность, И хотя общение — первый вид деятельности, которым овладевает человек в онтогенезе, по-настоящему владеют культурой и наукой общения единицы.
Неправильная Эксперт | Послание схема
Инженер по знаниямИнженер по знаниямПрввильная Эксперт.閣胱从
Инженер по знаниям
Инженер по знаниям
схема
Рис. 3.8. Структура процесса общения
Можно выделить четыре основных уровня общения [Сагатовскигь 1980].
Уровень манипулирования, когда один субъект рассматривает другого как средство пли помеху по отношению к проекту своей деятельности.
Уровень «рефлексивной игры», когда в процессе своей деятельности человек учитывает «контрпроект» другого субъекта, ио не признает за ним самоценность и стремится к «выигрышу», к реализации своего проекта.
Уровень правового общения, когда субъекты признают право на существование проектов деятельности друг друга и пытаются согласовать их хотя бы внешне.
Уровень нравственного общения, когда субъекты внутрснне принимают общий проект взаимной деятельности.
Стремление и умение общаться на высшем, четвертом, уровне может характеризовать степень профессионализма инженера но знаниям. Извлечение знаний —это особый вид общения, который можно отнести к духовно-информационному типу. Согласно работе [Каган, 1988] общение делится на материально-практическое; духовно-информационное; практнчески-духовпое. При атом информационный аспект общения для инженера по знаниям с прагматической точки зрения важнейший.
Известно, что потери информации при разговорном общении вели к и [Мицнч, 1987] (рис. 3.9).'
SHTCSrac mл-ooqrabo
Oh-HHOU
OHErnA8qco
ОНЕеЕХОзсо
Awdo-e- 2^IO®mo5 OLradgoHdu
Рис. 3.9. Потери информации при разговорном общении
В СВЯЗИ с этим рассмотрим проблему увеличения информативности общения аналитика и эксперта за счет использования психологических знаний.
Можно выделить такие структурные компоненты модели общения при извлечении знании:尸
участники общения (партнеры);
средства общения (процедура);
предмет общения (знания).
В соответствии с этой структурой выделим три «слоя» педологических проблем возникающих при извлечении знаний (рис. 3.10):*
Al = {Sil, S12, S13 } = {контактный, процедурный, когнитивный}.
Контактный слой (S11)
Практически все психологи отмечают, что на любоИ коллективный процесс влияет атмосфера, возникающая в группе участников. Существуют эксперихгенты, результаты которых неоспоримо говорят, что часто дружеская атмосфера в коллективе больше влияет на результат, чем индивидуальные способности отдель- пых членов группы [Немов, 1984]. Особенно важно, чтобы в коллективе раз- работников складывались кооперативные, а не конкурентные отношения. Для кооперации характерна атмосфера сотрудничества, вэапмопомоши, залнтересо- ванностп в успехах друг друга, то есть уровень нравственного общения, а для от- пошениП конкурентного типа — атмосфера индивидуализма и межличностного соперничества (более низкий уровень общения).
В настоящее время прогнозировать совместимость в общении со 100%-н гаран- тней невозможно. Однако можно выделить ряд факторов и черт личности, характера и других особенностей участников общения, несомненно, оказывающих влияние и а эффективность процедуры.
Разработка проблематики контактного слоя позволила выявить следующие параметры партнеров, влияющие на результаты процедуры извлечения знаний.
SH m (sll i) »" {пол, возраст, личность, темперамент, мотивация и др.}, часть из которых впоследствии вошли в формирование мод ел и пользователя. Значения параметров пола (sll_l) и возраста (sll_2) хотя и влияют на эффективность контакта, но не являются критическими. В литературе [Иванов, 1986] отмечается, что хорошие результаты дают гетерогенные пары (мужчина/женщи- на) и соотношение:
20>(В“-В口 >5,
где Вэ — возраст эксперта; Ва — возраст аналитика.
Под личностью (si 1_3) обычно понимается устойчивая система психологичесг кнх черт, характеризующая индивидуальность человека. Рекомендуемые компоненты sll_3 исследованы в работе [Гаврилова, 1990] и дополнены качествами из руководства для журналистов в работе [Schouksmith G., 1978]. si 1_3 = (доброже- лательность, аналитичность, хорошая память, внимание, наблюдательность, воображение, впечатлительность, большая собранность, настойчивость, общительность, находчивость).
Со времен Галена и Гиппократа, выделивших четыре классических типа темперамента (sll_4), вошли в научную терминологию понятия
sll_4= (холернк, сангвиник, меланхолик, флегматик).
Известно, что флегматики и меланхолики медленнее усваивают информацию [Лунева, Хорошилова, 1987]. И для обеспечения психологического контакта с ними не следует задавать беседе слишком быстрый темп, торопить их с ответом. Зато они гораздо лучше усваивают повое, в отличие от холериков, для которых свойственно поверхностное усваивание информации. Последних следует с пени- ально наводить на размышление и рефлексию. У меланхоликов часто занижена самооценка, они застенчивы н в беседе их надо подбадривать. Таким образом, наиболее успешными в рамках слоя SI 1 являются сангвиники и холерики.
На эффективность коллективного решения задач влияет также и мотивация (si 1_5), то есть стремление к успеху. Инженер по знаниям в зависимости от ус- "°вгш разработки должен изыскивать разнообразные стпмулы для экспертов (включая, разумеется, и материальные). Эксперт передает аналитику один из самых дорогих в мире продуктов — знания, И если одни люди делятся опытом добровольно и с удовольствием, то другие весьма неохотно приоткрывают свои пр。- фессиональные тайны, Иногда полезно оказывается возбудить в зксперте дух соперничества, конкуренции (нс нарушая, естественно, обстановки кооперативности в коллективе).
Процедурный слой (S12)
Параметры процедурного слоя S12 описывают непосредственно процесс прове- дения процедуры извлечения знаний. Фактически это профессиональные параметры: f
S12 尸2_。- {ситуация общения (место, время, продолжительность); обор}7 до- вание (вспомогательные средства, освещенность, мебель); профессиональные приемы (темп, стиль, методы н др,)}.
Инженер по знаниям, успешно овладевший наукой установления атмосферы до- верня и взаимопонимания с экспертом (контактный слой - S11), должен emecw меть воспользоваться благоприятным воздействием этой атмосферы. Проблема процедурного слоя касается проведения самой процедуры извлечения знаний Здесь мало проницательности и обаяния, полезных для решения проблемы контакта, тут необходимы профессиональные знания.
Остановимся па общих закономерностях проведения процедуры.
sl2_l — ситуация общения определяется следующими компонентами:
sl2_l_l — место проведения сеансов;
sl2_l_2 — продолжительность проведения сеансов;
sl2_l_3 — время проведения сеансов.
Беседу с экспертом лучше всего проводить в небольшом помещении наедине (sl2_l_l: место), поскольку посторонние люд» нарушают доверительность беседы и могут породить эффект «фасада». Рабочее место эксперта является не самым оптимальным вариантом, так как его могут отвлекать телефонные звонки, сотрудники л пр. Атмосфера замкнутого пространства и уединенности положительно влияет на эффективность.
Американский психолог И. Атватер считает, что для делового общения наиболее благоприятная дистанция от 1,2 до 3 метров [Schouksmith, 1978]. Минимальным «комфортным» расстоянием можно считать 0,7-0,8 метра.
Реконструкция собственных рассуждений — трудоемкий процесс, и поэтому длительность одного сеанса (s!2_l_2: продолжительность) обычно не превышает 1,5 -2 иаса. Эти два часа лучше выбрать в первой половине дня, например с 10 до 12 часов, если эксперт типа «жаворонок» (s!2_l_3: время). Известно, что взаимная утомляемость партнеров при беседе наступает обычно через 20-25 минут [Ноэль. 1978], поэтому в сеансе нужны паузы.
sl2_2 — оборудование включает:
si2_2」一вспомогательные средства;
sl2_2_2 — освещенность;
sl2_2_3 — мебель.
Вспомогательные средства (sl2_2_l):
средства для увеличения эффективности самого процесса извлечения знаний;
средства для протоколирования результатов.
К средствам для увеличения эффективности процесса извлечения знаний прежде всего относится наглядный материал. Независимо от метода извлечения (см. главу 4), выбранного в конкретной ситуации, его реализация возможна разными способами. Например, можно учитывать следующий фактор: широко известно, что люден, занимающихся интеллект\тальной деятельностью, можно о;н:::;;
жсствеиному либотипу. Термины тут условны ”™™;
шенпя к той деятельности, которую традиционно называют художественной или
мыслительной Важно, что, определив тип эксперта, инженер по знаниям может плодотворнее использовать любо)! из методов извлечения, зная, что люди художественного типа легче воспринимают зрительную информацию в форме рнсуг ков, графиков, диаграмм, так как эта информация воспринимается через первую сигнальную систему. Напротив, эксперты мыслительного типа лучше понимают язык формул и текстовую информацию. При этом учитывается 力акт, что боль- ШуЮ Часть информации человек получает от зрения. Совет пользоваться актив- нее наглядным материалом из раооты [Xсiiес—Рот, Уотермена, "енат, 198/ j можно считать универсальным. Такие методы, как свободный диалог и игры, предоставляют богатые возможности использовать слайды, чертежи, рисунки.
Для протоколирования результатов в настоящее время используются следующие способы:
запись на бумагу непосредственно по ходу беседы (недостатки — это часто мешает беседе, кроме того, трудно успеть записать все, даже при наличии навыков стенографии);
магнитофонная запись (диктофон), помогающая аналитику проанализировать весь ход сеанса и свои ошибки (недостаток — может сковывать эксперта);
запоминание с последующей записью после беседы (недостаток — годится только для аналитиков с блестящей памятью).
Наиболее распространенным способом на сегодня является первый. При этом наибольшая опасность тут — потеря знаний, поскольку любая запись ответов — это уже интерпретация, то есть привнесение субъективного понимания предмета. Значения параметров освещенности (sl2_2_2) и мебели (sl2_2_3) очевидны и связаны с влиянием внешних факторов па эксперта.
sl2_3 — профессиональные приемы аналитика, включают, в частности:
s!2_3_l — темп;
sl2_3_2 — стиль;
s!2_3_3 — методы.
Учет индивидуального темпа (sl2_3_l) и стиля (sl2_3_2) эксперта позволяет аналитику снизить напряженность процеду])ы извлечения знашпь Типичной ошибкой является навязывание собственных тем па и стиля.
На успешность также влияет длина фраз, которые произносит инженер по зна- ниям. Этот факт был установлен американскими учеными — лингвистом Ингве и психологом Миллером при проведении исследования о причинах низкой усвояемости команд на Военно-морском флоте США [Gammack, Young, 1985].
Причина была в длине команд. Оказалось, ито человек лучше всего воспринимает предложения глубиной (или дли ной) 7+2(-2) слова. Это число (7±2) получило название число Ингве—Миллера. Можно считать его мерой «разговорности» речи. Опытные лекторы используют в лекции в основном короткие фразы, умепь- шая ПОтеРю информации с 20-30 % (у плохих лекторов) до 3-4 % [Горелов, 1987]. Большая часть информации поступает к инженеру по знаниям в форме предло- жени^ на естественном языке. Однако внешняя речь эксперта есть воспроизведе- ние его внУтренней речи (мышления), которая гораздо богаче и многообразнее.
При этом для передачи этой внутренней речи эксперт использует и невербаль* ные средства, такие как интонация, мимика, жесты. Опытный инженер познани- ям старается записывать по возможности в протоколы (в форме ремарок) эту дополнительную интонацию. 丿
В целом, невербальная компонента стиля общения важна н для проблем контакт
немо слоя при установлении контакта, когда по отдельным жестам и выражению
установить границу возможной <дру-установить границу возможной <дру-лица эксперта инженер по знаниям может жественности» общения.
установить границу возможной <дру-
установить границу возможной <дру-
Значсние параметра методов (s 12—3—3) подробно рассмотрено в следующей главе, исходя из позиции, что метод должен подходить к эксперту как «ключ к замку».
Когнитивный слой (S13)
Когнитивные (от англ, cognition — познание) науки исследуют познавательные процессы человека с позиций возможности их моделирования (психолопья, нейрофизиология, эргономика, инженерия знаний)- Наименее исследованы насегод- нянзниИ день проблемы когнитивного слоя S13, связанные с изучением семантического пространства памяти эксперта н реконструкцией его понятийной структуры и модели рассуждений.
Основными факторами, влияющими на когнитивную адекватность, будут:
S13 = {sl3_i} = {когнитивный стиль, семантическая репрезентативность поля знании н концептуальной модели}.
Под когнитивным стилем (sl3_l) человека понимается совокупность критериев предпочтения при решении задач и познашш мира, специфическая для каждого человека, Когнитивный стиль определяет не столько эффективность деятельности, сколько способ достижения результата [Алахвердов, 1986]. Это способ по- знания, который позволяет людям с разными способностями добиваться одинаковых результатов в деятельности. Это система средств и пндпвилуальных приемов, к которым прибегает человек для организации своей деятельности.
Инженер)7 по знаниям полезно изучить и прогнозировать свои когнитивньш стиль, а также стиль эксперта. Особенно важны такие характеристики когнитивного стиля, как:
sl3_l_l — (полезависпмость — поленезавпсимость);
sl3_l_2 - (импульсивность - рефлективность (рефлексивность);
s!3_l_3 — (ригидность — гибкость):
sl3_l_4 — (когнитивная эквивалентность).
S13 1_1. Поленезависимость позволяет человеку акцентировать внимание лишь па тех аспектах проблемы, которые пеооходпмы для решения конкретной зада чп и уметь отбрасывать все лишнее, то есть не зависеть от фона или окружающего задачу шумового поля. Эта характеристика коррелирует с такими ^^; личности как невербальный интеллект, аналитичность мышления, способность
к пониманию сути. Очевидно, что помимо того, что самому аналитику необходимо иметь высокое значение параметра sl3J_l, поленезависимый эксперт — это тоже желательный фактор. Однако приходится учитывать, что больше нуждают- сх в общении полезависнмые люди, а потому они и более контактны [Орехов, 1985].
Особенно полезны для общения гетерогенные (смешанные) пары, например «полезависимый -поленезависимый» [Иванов, 1986]. В литературе описаны раз- личные эксперименты; моделир^пощпе общение, требующее понимания и совместной деятельности. Наиболее успешным в понимании оказались поленезависимые испытуемые (92 % успеха), для сравнения полезависимые давали 56 % успеха [Кулюткин, Сухобская, 1971].
Для совместной профессиональной деятельности важна также гибкость когнитивной организации, которая связана с поленезависимостыо. Итак, большую способность к адекватному пониманию партнера демонстрируют субъекты с высокой психологической дифференциацией, то есть поленезависимостью.
Поленезавпсимость является одной из характерных профессиональных черт ког- нитивного стиля наиболее квалифицированных инженеров по знаниям. По некоторым результатам [Алахвердов, 1986] мужчины более поленезависимы, чем женщины.
s!3_l_2. Под илгпульсивностыо понимается быстрое принятие решения (часто без его достаточного обоснования), а под рефлексивностью — склонность к рассудительности. Рефлексивность по экспериментальным данным коррелирует со способностью к формирования понятий и продуктивностью стратегий решения логических задач [Кулюткин, Сухобская, 1971]. Таким образом, л инженеру по знаниям, и эксперту желательно быть рефлексивным, хотя собственный стиль изменяется лишь частично н с большим напряжением.
sl3_l_3. Ригидность — гибкость характеризует способность человека к изменению установок и точек зрения в соответствии с изменяющейся снтуаине/. Ригидные люди не склонны менять свои представления н структуру восприятия, напротив, гибкие легко приспосабливаются к новой обстановке. Очевидно, что если эксперт еще может себе позволить ригидность (что характерно для долго работающих над одной проблемой специалистов, особенно старшего возраста), то для инженера по знаниям эта характеристика когнитивного стиля явно противопоказана. Увеличение ригидности с возрастом отмечается многими психологами [Кулюткин, Сухобская, 1971; Орехов, 1985],
sl3」_4. Когнитивная эквивалентность характеризует способность человека к различению понятии и разбиению их на классы и подклассы. Чем уже диапазон когнитивной эквивалентности, тем более тонкую классификацию способен про- вести индивид, тем большее количество признаков понятий он может выделить. Обычно у женщин диапазон когнитивной эквивалентности Уже, чем у мужчин. Семантическая репрезентативность (s!3_2) подразумевает подход, исоючающий традиционное навязывание эксперту некой модели представлений (например, продукционной или фреймовой), и заставляет инженера по знаниям последова- тельно воссоздавать модель мира эксперта, используя как неформальные методы,
так н математический аппарат, например многомерное шкалирование (сьс главу 4). Проблема семантической репрезентативности ориентирована на достижение когнитивной адекватности поля знаний и концептуальной модели. В настоящий момент она может быть сформулирована как проблема «испорченного телефона» [Гаврилова, Червинская, 1992] (см. рис. 3.5) — возможные трансформации и потери в цени передачи информации:
(О/ предметная область или реальный мир)—>
/4: интерпретация i-го эксперта]
(Mg,: модель мира эксперта)—>
/V,: вербализация модели мира эксперта] т
(Ti & Ci: вербальные и невербальные сообщения i-го эксперта j・ му аналитику)—>
/4: их интерпретация j-ым аналитиком]—>
(Mgj: модель мира j-го аналитика) т
阳:кодирование при формировании поля знаний с последующей структуризацией G концептуальную модель/.
Круглые скобки определяют понятия, квадратные — процессы.
3・3・2・ Лингвистический аспект
Лингвистический (А2) аспект касается исследований языковых проблем, так как язык — это основное средство общения в процессе извлечения знаний.
Сразу же следует оговорить, что поскольку тема данной книш ограничена изложенном теории и технологии инженерии знаний, то область разработки есте- ствешю-языковых интерфейсов п весь спектр проблем, связанных с ней - лекси- ческих, синтаксических, семантических, прагматических и т. д. [Виноград, 1976; Мальковскин, 1985; Попов, 1982], — не рассматривается.
В инженерии знаний можно выделить три слоя лингвистических проблем (рис. 3.11 ):
А2 = {S21, S22, S23} = {«общий код», понятийная структура, словарь пользователя}.
«Общий код» (S21)
«Общин код» решает проблему языковых ножниц между профессиональной терминологией эксперта и обыден но п литературной речью инженера по знаниям м включает следующие компоненты:
S21 = {s21 i} = {общенаучная терминология; специальные понятия из профессиональной литературы; элементы бытового языка; неологизмы, сформированные за время совместной работы; профессиональный жаргон и др }-
Детализация схемы общения (см. рис. 3.8) па рис. 3.11 позволяет представить средства общения как два потока [Горелов, 1987], в которых нас интересуют компоненты VI и V2 — языки, на которых говорят аналнтнк н эксперт (VT, V2'— невербальные компоненты). Различие языков VI и V2 и обусловливает «языковый барьер» пли «языковые ножницы» в общении инженера по знаниям и эксперта.
Эти два языка являются отражением «внутренней речи» эксперта и аналитика, поскольку большинство психологов и лингвистов считают, что язык — это основное средство мышления наряду с другими знаковыми системами «внутреннего пользования» (универсальный семантически!! код — У СК [Мартынов, 1977], языки «смысла» [Мельчук, 1974], концептуальные языки [Шенк, 1980] и др.).
Язык аналитика VI состоит из трех компонентов:
s21_l — общенаучной терминологии из его «теоретического багажа»;
s21_2 — терминов предметной области, которые он почерпнул из спениалыюй литературы в период подготовки;
s21_3 — бытового разговорного языка, которым пользуется аналитик.
Язык эксперта V2 включает:
s21_l — общенаучную терминологию;
s21_2 — специальную терминологшо, принятую в предметной области;
s21_3 — бытовой язык;
s2i_4 — неологизмы, созданные экспертом за время работы, то есть его профессиональный жаргон.
Еслн считать, что бытовой и общенаучный языки у “вук участников общения примерно совпадают (хотя реально объем второго компонента у эксперта существенно больше), то некоторый общий язык или код, кото])ьп'1 необходимо выработать партнерам для успешного зза 11 мод ей ст в и я, будет складываться из потоков, представленных на рис. 3.12.
В дальнейшем этот общий код преобразуется в некоторую понятийную (семантическую) сеть, которая является прообразом поля знаний предметной области. Выработка общего кода начинается с выписыванием апалнтнком всех терминов, употреоляемых экспертом, н уточнения их смысла. Фактически это составление словаря предметной области. Затем следует группирование терминов н выбор синонимов (слов, означающих одно и то же). Разработка общего кода заканчн-
вается составлением словаря терминов предметной области с предварительной группировкой их по смыслу, то есть по понятийной близости (это уже первый шаг структурирования знаний).
ЭкспертЭкспертs21_4 Специальная терминология экспертаs21_4 Специальная терминология экспертаНа этом зтапс аналитик должен с большим вниманием отнестись ко всем специальным терминам, пытаясь максимально вникнуть в суть решаемых проблем н терминологию. Освоение аналнтнком языка предметной области - первый рубеж па подступах к созданию адекватной базы знаний.
Эксперт
Эксперт
s21_4 Специальная терминология эксперта
s21_4 Специальная терминология эксперта
s21_2
Специальныетерминыиз литературы
Инженер по знаниям
s21 1
Общенаучныетермины
Рис. 3.12. Структура общего кода
Рисунок 3.12 дает представление о процессе неоднозначнекти интерпретации терминов двумя сиециаллетами. В семиотике, науке о знаковых системах, проблема интерпретации является одной из центральных. Интерпретация свя- зывает «знак» п «означаемый предмет». Только в интерпретации знак получает смысл. Так, на рис. 3.13 слова «прибор X» для эксперта означает некоторую конкретную схему, которая соответствует схеме оригинала прпоора, а в голове начинающего ан ал нтн к а слова «прибор X» вызывают пусто!! оораз или нскоторьп! черный ящик с ручками.
Рис. 3.13. Неоднозначность интерпретацииРис. 3.13. Неоднозначность интерпретации
Рис. 3.13. Неоднозначность интерпретации
Рис. 3.13. Неоднозначность интерпретации
Внимание к лингвистическому аспекту проблемы извлечения знаний способствует сближению образа 1с образом 2 и интерпретации И с интерпретацией 12, а слова «прибор X» перейдут в действительно «общий» код..
Такнм образом, слой S21 включает изучение и управление процессом разработки специального промежуточного языка, необходимого для взаимодействия инженера по знаниям и эксперта.
Понятийная структура (S22)
Проблемы формирования понятийной структуры представляют следующий сло^ S22 лингвистического аспекта проблемы извлечения знаний. Особенности формирования понятийной структуры обусловлены установленным постулатом когнитивной психолопш о взаимосвязи понятии в памяти человека и наличии семантической сети, объединяющей отдельные термины во фрагменты, фрагменты в сценарии и т. д. Построение иерархической сети понятий, так называемой «пирамиды зиаиин», — важнейшее звено в проектировании интеллектуальных систем.
Большинство специалистов по искусственному интеллекту и когнитивной психологии считают, что основная особенность естественного интеллекта и памяти в частности — это связанность всех понятий в некоторую сеть. Поэтому для разработки базы знаний и нужен ие словарь, а «энциклопедия» [Шенк, Бирнбаум, Мей, 1989], в которой все термины объяснены в словарных статьях со ссылками на другие термины.
Таким образом, лингвистическая работа инженера по знаниям на данном слое проблем заключается в построении таких связанных фрагментов с помощью «сшивания» терминов. Фактически эта работа является подготовкой к этапу концептуализации, где это «шитье» (по Шенку — КОП, концептуальная организация памяти [Шенк, Хантер, 1987]) приобретает некоторый законченный вид. При тщательный работе аналитика и эксперта в понятийных структурах начинает просматриваться иерархия понятий, подробно о которoii будет говориться в параграфах 4.4. и 8.2. Такие структуры имеют важнейшее гносеологическое и дидактическое значение и последнее время для них используется специальный термин — онтологии. Следует заметить, что эта иерархическая организация хо- Р°ш° согласуется с теорией универсального предметного кода (УПК) [Горелов, 1987; Жинкин, 1982], согласно которой при мышлении используются не языко- ВЬ1е конструкции, а их коды в форме некоторых абстракций, что в общем согласуется с результатами когнитивной психологии [Велпчковский, 1982].
Иерархия абстракций — это глобальная схема, которая может быть положена в основу концептуального анализа структуры знаний любой предметной области. Лингвистический эквивалент иерархии — иерархия понятий, которую необхо- днмо построить в понятийной структуре, формируемой инженером по знаниям (рнс. 3.14).
Следует подчеркнуть, что работа по составлению словаря и понятийной структуры требует лингвистического «чутья», легкости манипулирования терминами л
83
богатого товарного запаса инженера по знаниям, так как зачастую аналитик 吟 нужден самостоятельно разрабатывать словарь признаков. Чем богаче и выоази- тельнее получается общий код, тем более полнее база знаний.
Рис. 3.14. Пример иерархии
Аналитик вынужден все время помнить о трудности передачи образов и представлении в вербальной форме. Полезными тут оказываются свойства многозначности слов естественного языка. Часто инженеру по знаниям приходится подсказывать слова и выражения эксперту, и такие новые лексические конструкции оказываются полезными.
Способность к словесной интерпретации зависит и от пола аналитика (параметр sl_l), Установлено, что традиционно женшины придают большую значимость невербальным компонентам общения, а в вербальных имеют более обширный алфавит признаков, II вообще, существуют половые различия восприятия не только в бытовой сфере, что очевидно, по и в профессиональной. Следовательно, у эксп ерта - мужчин ы и у эксперта-женщины мопгт существенно отличаться алфавиты для вербализации признаков воспринимаемых объектов.
Словарь пользователя (S23)
Лингвистические результаты, соотнесенные к слоям общего кода п понят)п[нон структуры, направлены на создание адекватной базы знании. Однако часто профессиональный уровень конечного пользователя не позволяет ему применить специальный язык предметной области в полном объеме.
Неожиданными для начинающих разработчиков являются проолемы формирования отдельного словаря для создания дружествен но го интерфейса с пользователем ЭС. исследуемые в слое S23. Необходимы специальные приемы, х-велпчи- вающие «прозрачность» н доступность системы. Для разработки пользовательского интерфейса требуется дополнительная доработка словаря общего кода с поправкой на доступность и «прозрачность» системы.
Так, при разработке экспертной системы по психодиагностике АВТАНТЕСТ [Гаврилова, 1984] пришлось разработать два словаря терминов - один для психо- логов-профессионалов, второй - лля неспециалистов (испытуемых). Поскольку результат психодиагностического тестирования всегда интересен испытуемому, еМу выдается листинг с психологическим заключением на общелитературном языке без употребления специальных терминов. Интересно, что при внедрении системы использова-пся в основном этот второй словарь; даже профессиональные психологи предпочитали получать тексты па обыденном языке.
3・3・3・ Гносеологический аспект извлечения знаний
Гносеология - это раздел философии, связанный с теорией познания, или теорией отражения действительности в сознании человека. Гносеологически!! аспект (АЗ) извлечения знаний объединяет методологические проблемы получения нового научного знания, поскольку при создании БЗ эксперт часто впервые формулирует некоторые закономерности, до того момента составлявшие ого личный огпят.
Инженерия знаний как паука, если можно так выразиться, дважды гпосеологпч- на — сначала де1!ствителыюсть (О) отражается в сознании эксперта (Ml), а затем деятельность и опыт эксперта интерпретируются сознанием инженера по знаниям (М2), что служит уже ocnoBoii для построения третье!! интерпретации (Р) — поля знашп! экспертно!! системы (см. рис. 3.5). Процесс позпаппя, в сущности, направлен на создание внутренней репрезентации окружающего мира в сознании человека.
Предметом данного учебника являются в основном процессы отоб])ажеШ!Я 12 и 13 (И — изучают психология н философия); подробна интерпретация 13 будет рассмотрена далее.
Еслн описать процессы 12 и 13 в термшюлопв!, нледеппо!! в глзне 1, то мы имеем дело с превращением экспертного знания и гсорстнчес кого (книжного) опыта Z1 в поле знаний Z2, которое есть материализация модели мира М2 инженера по знаниям.
В процессе извлечения зиашн! ангиштнка и основном интересует компонент Z1, связанный с неканоническими индивидуальными знаниями экспертов, поскольку предметные области, требующие именно такого типа aiiainiii, считаются пап- более восприимчивыми к внедрению :жс1!е])тпых систем. Эти области обычно называют эмпирическими, так как в лих накоплен большой обьсм отдельных :-)м- пиричсских фактов и наблюдешн!, в то время как их теоретическое обобщение — вопрос будущего.
Еслн считать, что инженер по знаниям извлекает только фрагмент Z1', то есть “асть из системы знаний эксперта Z1, то его задача, во-первых, старгггься, чтобы структура Z1 соответствовала Z1, и, во-нторых, чтобы Z1' как можно более полно отражал Z1.
Познание часто сопровождается созданием новых понятий и теорий. Иногда экс- перт порождает новые знания прямо в ходе беседы с аналитиком. Такая гепсра-
пня знаний полезна и самому эксперту, который до того момента мог не осозна- вать ряд соотношений и закономерностей предметной области. Аналитику может пометь тут и инструментарий системной методологии, позволяющий использовать известные принципы логики научных исследований, понятийной иерархии науки. Эта методология заставляет его за частным всегда стремиться увидеть общее, то есть строить цепочки.
Гносеологическая цепочка: факт т обобщенный факт т эмпирический закон т творе- тический закон.
Не всегда удается дойти до последнего звена этой цепочки, ио уже само стремление к движению бывает чрезвычайно плодотворным. Такой подход полностью согласуется со структурой самого знания, которое имеет два уровня:
Эмпирический (наблюдения, явления).
Теоретический (законы, абстракции, обобщения).
Но теория — это нс только стройная система обобщения научного знания, это также некоторый способ производства новых знании. Основными методологическими критериями научности, позволяющими считать научным и само новое знание п способ его получения, являются [Коршунов, Манталов, 1988]:
АЗ = (S31, S32, S33} = (внутренняя согласованность, системность, объективность, пстор нзм}.
Внутренняя согласованность (S31)
Основные характеристики эмпирического знания:
S31 = {s31_i} = {модальность, противоречивость, неполнота}.
Ila нервна взгляд критерий внутренне!! согласованности знания не соответствует реальным характеристикам, описывающим знания с точки зрения слоя s31_i. Эти характеристики эмпирических знанн" подчеркпзают его <мпогоук.1;1д- пость» — столь часто(|)акты нс согласуются друг с другом, определения протнво- речат, критерии дпффузиы и т. д, Ашиштику, знающему особенности эмпирического знания, — приходится сглаживать эти «шероховатости* эмпирики.
Модадъиостъ (s31_1) знания означает возможность его суии-ствоваипя в различных категориях, то есть в конструкция工 существования и должепствонанпя. T<i- кнм образом, часть закопомсрпостс!! возможна, дрхтая осяпатеньна и т. -i. Кроме того, приходится различать такие оттенки мода-чьиостп. как:
эксперт знает, что...;
эксперт думает, что...;
эксперт хочет, чтобы..,;
эксперт считает, что...-
Возможная пропшворечшюсть (s31_2) эмпирического знания - естсствстюе следствие из основных законов диалектики, и противоречия зтн не всегда зспж
ны разрешаться в поле знаний, а напротив, именно противоречия служат чаще всего отправной точкой в рассуждениях экспертов.
Неполнота (s31_3) знания связана с невозможностью полного описания предмет- Hog области. Задача аналитика эту неполноту ограничить определенными рамками «полноты», то есть сузить границы предметной области либо ввести ряд ограничений и допущений, упрощающих проблему.
Системность (S32)
Системно-структурный подход к познанию (восходящий еще к Гегелю) ориен- тирует аналитика иа рассмотрение любой предметной области с позиций закономерностей системного целого и взаимодействия составляющих его частей.
Современный структурализм исходит из многоуровневой иерархической организации любого объекта, то есть все процессы и явления можно рассматривать как множество более мелких подмножеств (признаков, деталей) и, наоборот, любые объекты можно (и нужно) рассматривать как элементы более высоких классов обобщений. Например, системный взгляд на проблематику структурирования знаний позволяет увидеть его иерархическую организацию. Подробнее об этом в параграфе 3.4,
Объективность (S33)
Процесс познания глубоко субъективен, то есть он существенно зависит от особенностей самого познающего субъекта. «Факты существуют длн одного глаза и отсутствуют для другого» (Виппер). Таким образом, субъективность начинается уже с описания фактов и увеличивается по мерс углубления идеализации объектов.
Следовательно, более корректно говорить о глубине понимания, чем об объек- тлвности знания. Понимание — это сотворчество, процесс истолкования объекта с точки зрения субъекта. Это сложный и неоднозначный процесс, совершающийся в п\7бпнах человеческого сознания н требующш'! мобилизации всех интеллектуальных и эмоциональных способностей человека. Все свон усилия аналитик должен сосредоточить на понимании проблемы,
В психологии известен результат [ВеличковскиЁ, Капица, 1987], поптверждаю- ишИ факт, что люди, быстро и успешно решающие интеллектуальные задачи, оольщую часть времени тратят на понимание ее, в то время как плохие решатели быстро приступают к поискам решения и чаще всего не могут его найти.
Историзм (S34)
Зтот критерий связан с развитием. Познание настоящего — есть познание породившего его прошлого. И хотя большинство экспертных систем дают «горизонтальный» срез знаний — без учета времени (в статике), инженер по знаниям дол- *е“ всегда рассматривать процессы с учетом временных изменений — как связь с прошлым, так н связь с будущим. Например, структура поля зпашп! и база зна- ннй должны допускать подстройку и коррекцию как в период разработки, так и в。время эксплуатации ЭС.
Рассмотрев основные критерии научности познания, попытаемся теперь описать его структуру. Методологическая структура познания может быть представлена как некоторая последовательность этапов [Коршунов, Манталов, 1988].
Параметры {S3i} органически вписываются в эту структуру познания, которая может быть представлена как последовательность этапов, описанных далее с позиций инженера по знаниям:
Э_1: описание и обобщение фактов;
Э_2: установление логических и математических связей, дедукция и индукция законов;
Э_3: построение идеализированной модели;
Э_4: объяснение н предсказание явлений.
Э_1 - Описание и обобщение фактов
Тщательность и полнота ведения протоколов во время процесса извлечения и пунктуальная «домашняя работа» над ними — вот залог продуктивного первого этапа познания и материал для описания и обобщения фактов.
На практике оказывается трудным придерживаться принципов объективности и системности, описанных выше. Чаще всего на этом этапе факты просто собирают и как бы бросают в «общин мешок»; опытный инженер по знаниям часто сразу пытается найти «полочку» или «ящичек» для каждого факта, тем самым подспудно готовясь к этапу концептуализации.
Э_2. Установление связей и закономерностей
В памяти эксперта все понятия увязаны п закономерности установлены, хотя часто и неявно задача инженера — выявить каркас умоза1С1юченип эксперта. Реконструируя рассуждения эксперта, инженер по знаниям может опираться на две наиболее популярные теории мышления — логическую и ассоциативную. При этом если логическая теория благодаря горячим поклонникам в лице математиков широко цитируется и всячески эксплуатируется в работах по искусственному интеллекту, то вторая, ассоциативная, гораздо менее известна п популярна, хотя имеет также древние корни. Так, Р. Фе1!нман в своих ^Лекциях по физике» отмечает, что в физике по-прсжиему преобладающим является вавилонски!!, а не греческий метод построения знаний. Известно, что древневосточные математики умели делать сложные вычисления, но формулы нх не были логически увязаны. Напротив, греческая математика дедуктивна (например. «Начала» Евклида).
Традиционная логика формирует критерии, которые гарантируют точность, валидность, непротиворечивость общих понятш'! рассуждении п выводов, е осно вы заложены еще в «Органоне» Аристотеля в4в.дон.э. Большой вклад в развитие логики внес Джон Стюарт Милль (1806-1873).
Инженер по знаниям и сам использует операции традиционной логики п вьце ляет их в схеме рассуждентп! эксперта. Это след\ ющие операции.
определение:
сравнение п различение;
анализ;
абстрагирование;
обобшеиие;
классификация;
категоризация;
образование суждений;
умозаключение;
составление силлогизмов и т. д.
Однако красота н стройность логической теории не должны заслонять того, что человек редко мыслит в категориях математической логики [Поспелов, 1989].
Теория ассоциаций представляет мышление как цепочку идей, связанных общими понятиями. Основными операциями такого мышления являются:
ассоциации, приобретенные на основе различных связей;
припоминание прошлого опыта; пробы и ошибки со случайными успехами;
привычные («автоматические») реакции и пр.
Однако эти две теории не исчерпывают всего многообразия психологических школ. Большой интерес для инженерии знаний может представлять гештальт- психология. Одним из ее основателей является выдающийся немецкий психолог М. Вертгеймер (1880-1943), Под гештальтом (нем. Gestalt) понимается принцип целостности восприятия — как основа мышления. Гещтальт-пснхологи стараются во всем выделять некий целостный образ или структуру как базис для понимания процессов и явлений окружающего мира. Эта теория близка теории фреймов н объектному подходу и направлена на постижение глубинного знания, которое характеризуется стабильностью и симметрией. При этом важен так называемый «центр ситуации», относительно которого развивается знание о предметной области.
Для инженера по знаниям это означает, что, выявляя различные фрагменты знаний, он не должен забывать о главном, о гещталые фрагмента, который влияет на остальные компоненты и связывает их в некоторую структурную единицу. Гештальтом может быть некий главный принцип, или идея, или гипотеза эксперта, или его вера в силу каких-то отдельных концепций. Этот принцип редко формулируется экспертом явно, он всегда как бы за «кадром», и искусство инженера по знаниям обнаружить этот основной гештальт эксперта.
В гештальт-теории существует закон «стремления к хорошему гештальту», согласно которому структуры сознания стремятся к гармонии, связности, простоте. Зто близко к старинному классическому принципу «бритвы Оккама» — «сущно- стн не должны умножаться без необходимости» — и формулируется как принцип прегнантности Вертгеймера [Вертгеймер, 1987]: «Организация поля имеет тен- денцию быть настолько простой и ясной, насколько позволяют данные условия». Рассуждения。гештальте подводят вплотную к третьему этапу в структуре познания.”
Э_3- Построение идеализированной модели
Для построения модели, отражающей представление субъекта о предметной об— ласти, необходим специализированный язык, с помощью которого можно описывать и конструировать те идеализированные модели мира, которые возникают в процессе мышления, Язык этот создается постепенно с помощью кате гориал ь~ ного аппарата, принятого в соответствующей предметной области, а также формально-знаковых средств математики и логики. Для эмпирических предметных областей такой язык пока не разработан, и поле знаний, которое полуформализо- ванным способом опишет аналитик, может быть первым шагом к созданию такого языка.
Любое познавательное отражение включает в себя условность, то есть упрощение и идеализацию. Инженеру по знаниям необходимо овладение такими специфическими гносеологическими приемами, как идеализация, огрубление, абстрагирование, которые позволяют адекватно отображать в модели реальную картину мира. Эти приемы доводят свойства и признаки объектов до пределов, позволяющих воспроизводить законы действительности в более лаконичном виде (без влияния несущественных деталей).
На тернистом пути познания проверенный диалектический подход оказывается лучшим «поводырем». Инженер по знаниям, который стремится познать проблемную область, должен быть готов постоянно изменять свои уже утвердившиеся способы восприятия н оценки мира и даже отказываться от них. При этом тщательнее всего следует проверять правильность суждений, которые кажутся самыми очевидными.
Э_4. Объяснение и предсказание моделей
Этот завершающий этап в структуре познания является одновременно и частичным критерием истинности полученного знания. Если выявленная система зна- Hiiii эксперта полна и объективна, то на ее основании можно делать прогнозы и объяснять любые явления из данной предметной области. Обычно базы знаний ЭС страдают фрагментарностью н модульностью (несвязанностью) компонентов. Все это не позволяет создавать действительно ] 1 нтеллектлгальные системы, которые, равняясь на человека, могли бы предсказывать новые закономерности и объяснять случаи, не указанные в явном виде в базе. Исключением тут являются обучающие системы, которые ориентированы на генерацию новых знании и «предсказание».
Предлагаемая методология вооружает аналитика аппаратом, позволяющим пзое- жать традиционных ошибок, приводящих к неполноте, противоречивости, фраг ментарностн БЗ, и указывает направление, в котором необходимо двигаться разработчикам. И хотя на сегодняшний день большинство БЗ прорабатываются лишь до этапа Э_3, знание полной схемы обогащает и углубляет процесс проектирования.
3.4- Теоретические аспекты структурирования знаний
Разделение стадий извлечения и структурирования знаний является весьма ус- ловным, поскольку хороший инженер по знаниям, уже извлекая знания, начинает работу по структурированию и формировэнию поля знании, описанному в пара~ графе 3.1.
Однако в настоящее время прослеживается тенденция опережения технологических средств разработки интеллектуальных систем по отношению к их теоретическому обоснованию. Практически сейчас существует пропасть между блестящими, но несколько «постаревшими» математическими основами кибернетики (труды Винера, Эшби, Шеннона, Джорджа, Клира, Йордона, Ляпунова, Глушкова и др.) и современным поколением интеллект}^альных систем, которые основаны на парадигме обработки знаний (экспертные системы, лингвистические процессоры, обучающие системы и т. п.)_
С одной стороны, это объясняется тем, что с первых шагов наука об искусственном интеллекте (ИИ) была направлена на моделирование слабоформализуе- мых смысловых задач, в которых не применим традиционный математический аппарат; с другой стороны, ИИ — это ветвь информатики и активно развивается как промышленная индустрия программных средств в условиях жесткой конкуренции, где подчас важнее быстрое внедрение новых идеи и подходов, чем их анализ и теоретическая проработка.
Необходимость разработки теоретических основ пауки о методах разработки систем, основанных на знаниях — инженерии знаний, — обосновывается в работах Поспелова Д. А., Попова Э. В., Стефашока В. Л., Шенка Р., Минского М. — ведущих специалистов в области ИИ в России н зарубежом. Первые шаги в создании методологии (работы Осипова Г. С., Хорошевского В. Ф„ Яшина А. М., Wielinga, Slagle, etc.) фактически являются пионерскими и чаще всего ориентированы на определенный класс задач, моделирусмых в рамках конкретного программного инструментария.
В дашюм параграфе рассмотрена новая методология [Гаврилова, 1995], позволяющая провести стадию структурирования независимо от последующей п рограмм- но户 реализации, опираясь на достижения в области разработки сложных систем.
3・4・1 ・ Историческая справка
Стадия концептуального анализа или структурирования знании традиционно является (наряду со стадией извлечения) «узким местом» в жизненном цикле разраоотки интеллектуальных систем [Adeli, 1994]. Методология структурирова- ння близка к современной теории больших систем [Гиг, 1981] или сложных систем [Courtois, 1985; Peters, 1981], где традиционно акцент делается па процессе проектирования таких систем. Большой вклад в эту теорию в нес л и классики объектно-ориентированного анализа [Буч, 1992].
Разработку интеллектуальных систем с уверенностью можно отнести к данному классу задач, поскольку они обладают основными признаками сложности (иерархия понятий, внутриэлементные и межэлемеитные связи и пр.). Сложность проектирования ИС определяется в основном сложностью предметных областей и управления процессом разработки, а также сложностью обеспечения гибкости конечного программного продукта и описания поведения отдельных подсистем.
Средн первых сторонников исследований по теории систем наиболее заметными были Берталанфи [Bertalanffy, 1950], Раппопорт и Боулдинг [Boulding, 1956].
Аналогичные концепции, ио связанные ие с общесистемными исследованиями, а рассматривающие информационные процессы в системах, таких как связь и управление, положили начало кибернетике как самостоятельной науке [Вииер, 1958; Эшби, 1959]. Этот подход был существенно поддержан работами Шеииоиа по математическому моделированию понятия информации [Шенион, Уивер, 1963; Feinstein, 1958; Watanabe, 1969]. *
Позднее, в 1960-х гг. было сделано несколько попыток сформулировать и развить математические теории систем высокого уровня общности [Mesarovic, 1964; Ар- биб, 1975]. Существенный вклад в математическую теорию систем и основы структурирования внесли отечественные исследователи Моисеев Н. Я. [Моисеев, 1981]г Глушков В. М. [Глушков, 1964], Ивахненко А. Г. [Ивахненко, 1971], Поспелов Д. А. [Поспелов, 1986] и другие. Системный анализ тесно переплетается с теорией систем и вюючаст совокупность методов, ориентированных на исследо- вапие п моделирование сложных систем — технических, экономических, экологических и т. п.
3・4・2・ Иерархический подход
Проектирование сложных систем и методы структурирования информации традиционно использовали иерархический подход [Месарович, Такахара, 1972] как методологический прием расчленения формально описанной системы на уровни (нли блоки, или модули). На высших уровнях иерархии используются наименее детализованные представления, отражающие только самые общие черты и особенности проектируемой системы. На следующих уровнях степень подробности возрастает, прн этом система рассматривается не в целом, а отдельными бло
ками.
В теории САПР такой подход называется блочно-иерархическим (Б1Ш) [Норен- ков, 1983; Петров, 1991]. Одно из преимуществ Б1Ш состоит в том, что сложная задача большой размерпостл разбивается на последовательно решаемые группы
задач малой размерности.
На каждом уровне вводятся своп представления о системе и элементах. Элемент к-го уровня является системой для уровня к-1. Продвижение от уровня к уровню имеет строгую направленность, определяемую стратегией проектирования — сверху вниз или снизу вверх.
Предлагаемый ниже объектно-структурный подход позволяет объединить две, обычно противопоставляемые, стратегии проектирования — нисходящую или дедуктивную STRtd (top-down) с последователы]ой декомпозицией объектов и процессов сверху вниз и восходящую или индуктивную STRbu (bottom-up) с постепенным обобщением понятий н увелнненнем степени абстрактности описаний снизу вверх.
Синтез этих стратеги!], а также включение возможности итеративных возвратов на предыдущие уровни обобщеипг! позволили создать дуальную концепцию, пре- доставляюшзчо аналитику широкую палитру возможностей на стадии структурирования знаний как для формирования концептуально]] структуры предметной области Sk, так и для фуикциопалыюн структуры Sf.
Рисунок 3.15. иллюстирует дуальп^чо концепцию при проектировании S^ для ЭС помощи оператору энергетического блока.
U1 процессU1 процессU2 части процессаU2 части процессаиз режим работыиз режим работыU4 функциональные составляющиеU5 блокиU4 функциональные составляющиеU5 блокиРис- 3・15. Дуальная стратегия проектированияРис- 3・15. Дуальная стратегия проектированияU6действияоператораU6действияоператора
U1 процесс
U1 процесс
U2 части процесса
U2 части процесса
из режим работы
из режим работы
U4 функциональные составляющие
U5 блоки
U4 функциональные составляющие
U5 блоки
Рис- 3・15. Дуальная стратегия проектирования
Рис- 3・15. Дуальная стратегия проектирования
U6действияоператора
U6действияоператора
Нисходящая концепция (top-down) декларирует движение отп=> п+1 Гдеп-п й уровень иерархии понята访 ПО (предметной области) с последующей детализа- цне访 понятий, принадлежащим соответствующим уровням.
где п - номер уровня порождающего концепта;
i — номер порождающего концепта;
к; — число порождаемых концептов, сумма всех k, по i составляет общее число концептов на уровне п+1.
Восходящая концепция (bottom-up) предписывает движение п => п-1 с последовательным обобщением понятий.
где п — номер уровня порождающих концептов;
i — номер порождаемого концепта;
kj — число порождающих концептов, сумма всех k; по i составляет общее число концептов на уровне п.
Основанием для прекращения агрегирования и дезагрегирования является полное использование словаря терминов, которым пользуется эксперт, при этом число уровней является значимым фактором успешности структурирования (см. «вербальные отчеты» в главе 4).*
Традиционные методологии структурирования
Существующие подходы к проектированию сложных систем можно разделить на два больших класса:
• Структурный (системный) подход или анализ, основанный на идее алгоритмической декомпозиции, где каждый модуль системы выполняет один из важнейших этапов общего процесса.
♦ Объектный подход, связанный с декомпозицией и выделением ие (гроцессов, а объектов, при этом каждьн! объект рассматривается как экземпляр определенного класса.
В структурном анализе [Yourdon, 1989; DeMarco, 1979; Gane & Sarson. 1979] разработано большое число вьфазптельных средств для проектирования, в тo^^ числе графических [Буч, 1993]: диаграммы потоков данных (DFD - data-flow diag- rams), структурированные словари (тезаурусы), языки спецификации систем, таблицы решений, стрелочные диаграммы «объект-связь» (ERD - entity-relationship diagrams), диаграммы переходов (состояний),деревья целей, блок-схемы алгоритмов (в нотации Нассп—Шнейдермана, Гамильтона—Зельдина, Фест- ля и др.), средства управления проектом (PERT-дпаграммы, диаграммы Ганта и др.), модели окружения.
Миожествеиность средств и их некоторая избыточность объясняются тем, что каждая предметная область, используя структурный подход как универсальное средство моделирования, вводила свою терминологию, наиболее подходящую для отражения специфики конкретной проблемы* Поскольку инженерия знаинн имеет дело с широким классом ПО (это «мягкие» ПО), встает задача разработки достаточно универсального языка структурирования.
Объектный (объектно-орнеитированнын) подход (ООП), возникший как технология программирования больших программных продуктов, основан на следующих основных элементарных понятиях [Буч, 1992]: объекты, классы как объекты, связанные общностью структуры и свойств, и классификации как средства упорядочения знаний; иерархии с наследованием свойств; инкапсуляции как средства ограничения доступа; методы и полиморфизм для определения функций п отношений.
ООП имеет свою систему условных обозначений н предлагает богатый набор логических в физических моделей для проектирования систем высокой степени сложности, при этом эти системы хорошо структурированы, что порождает легкость их модификации. Впервые принцип ООП установлен в 1979 [Jones, 1979], а затем развит в работах [Shaw, 1984; Peterson, 1987; Буч, 1992].
Широкое распространение объектно-ориентированных языков программирования C++, CLOS, Smalltalk п др. успешно демонстрирует жизнеспособность и перспективность этого подхода.
3・4・4・ Объектно-структурный подход (ОСП)
Можно предложить в качестве базисной парадигмы методологии структурного анализа 3iiaifnii и формирования поля знаний Р? обобщенный объектно-структурный подход (ОСП), последовательно разработанный от математического обоснования до технологии п программной реализации [Гаврилова, 1995].
Основные постулаты этой парадигмы заимствованы из ООП и расширены.
Системность (взаимосвязь между понятиями).
Абстрагирование (выявление существенных характеристик понятия, которые отличают его от других).
Иерархия (ранжирование на упорядоченные системы абстракций).
ТиппЗсЩпя (выделение классов понятно с частичным наследованием свойств в【юдклассах).
МодулiHiocTb (разбиение задачи на подзадачи или «возможные миры>>).
Наглядность и простота нотации.
Использование пятого постулата ОСП в инженерии знании позволяет строить глооальные БЗ с возможностью выделить локальные задачи с помощью горизонтальных и вертикальных сечении на отдельные модули пространства-описания предметно11 области.
Шестой постулат внесен в список последним, но не по значимости. В инженерии 3,1 ани^ формирование Р% традиционно является критической точкой [Гаврилова, Червинская, Яшин, 1988; Гаврилова, Червинская, 1992], так как создаваемая неформальная модель предметиои области должна быть предельно ясной и лако™ ничиой. Традиционно языком инженерии знаний были диаграммы, таблицы н Другие графические элементы, способствующие наглядности представлений. Именно поэтому предлагаемый в данной работе подход к языку связан с возможной визуализацией процесса проектирования.
ОСП позволяет наглядно и компактно отобразить объекты и отношения предметной области на основе использования шести постулатов.
Объектно-структурный подход подразумевает интегрированное использование сформулированных выше постулатов от первой до последней стадий разработки БЗ интеллектуальных и обучающих систем. На основе ОСП предлагается алгоритм объектио-структпурного анализа (ОСА) предметной области, позволяющего оптимизировать п упорядочить достаточно размытые процедуры структурирования знаний.
Стратификация знаний
Основы ОСА были предложены автором еще в работах [Гаврилова, 1989; Гаврилова, Красовская, 1990] и успешно применялись при разработке ЭС М14КРО ЛЮШЕР [Гаврилова, Тшпкпп, Золотарев, 1989] и АВЭКС [Гаврилова, Минко- ва, Карапетян, 1992].
ОСА подразумевает дезагрегацию ПО, как правило, на восемь страт пли слоев (табл. 3,1 и 3.2).
Таблица 3.1. Стратификация знаний предметной области
S_1
ЗАЧЕМ-знания
Стратегический анализ: назначение и функции системы
s_2
КТО-знания
Организационный анализ: коллектив разработчиков системы
s_3
ЧТО-знания
Концептуальный анализ; основные концепты, понятийная структура
s_4
КАК-знания
Функциональный анализ: гипотезы и модели принятия решения
s_5
ГДЕ-знания
Пространственный анализ: окружение, оборудование, коммуникации
s_6
КОГДА-знания
Временной анализ: временные параметры и ограничения
s_7
ПОЧЕМУ-знания
Каузальный или причинно-следственный анализ: формирование подсистемы обьасненм访
s 8
СКОЛЬКО-знания
Экономический анализ: ресурсы, затраты、прибыль окупаемость
Объектно-структурный анализ подразумевает разработку и использование матрицы ОСА (см. табл. 3.2)t которая позволяет всю собранную цнс()ормацню дезагрегировать последовательно по слоям-стратам (вертикальный анализ), а зате、
по уровням - от уровня проблемы до уровня подзадачи (горизонтальный анализ). Или наоборот 一 сначала по уровням, а потом по стратам.
Таблица 3.2. Матрица объектно-структурного анализа
Уровни Страты
Уровень области 5
Уровень проблемы u2
Уровень
задачи u3
Уровень подзадачи u4
…
Un
Стратегический
анализ s〕
Е”
Ei2
Ei3
El4
Организационный внализ S2
Е21
Концептуальный анапиз S3
E31
Функциональный анализ S&
Е41
Пространственный анализ S5
е51
Временной анализ s6
Еб1
Каузальный
анализ s7
Е71
Экономический анализ s3
Efll
E”
Sm
二 mi
Ее
При необходимости число страт может быть увеличено. В свою очередь знания каждой страты подвергаются дальнейшему ОСА и декомпознр^чотся на составляющие
МА
где m — помер уровня, п — помер страты, а етп прнпаллежит множеству К всех гсопцеггтов (понятнН) предметлон области.
AlaTpiiUd (1) является мат卩micii над К. Пусть М (К) — совокупность всех шхп “атрнн над К. 1(;гда можно определить клеточную матрицу Е, в которой m = in 1 + …十 nik,
и = ill + ... + л1,
SC in II n - целые положительные числа. E £ M(К), и се можно представить в в НАС:
Ен Еу
Е =(2)
旦I … 旦, где Eq, е М“車(К), ц == V » Матрица Е является несимметричной, так как часть клеточных элементов Е мо- гут подвергаться декомпозиции, а часть представляет некоторые базнсиыГато- марпые концепты из К, не подлежащие детализации.
Предлагаемый подход предполагает реализацию концепции последовательного генезиса ОСП через ОСА к объектно-структурной разработке (ОСР),
Алгоритм ОСА
Алгоритм ОСА (объектно-структурного аналнза) предназначен для детального практического структурирования знаний ПО. В основе ОСА заложен алгоритм заполнения ОСА-матрицы Е^,. Алгоритм содержит последовательность аналитических процедур, позволяющих упростить и оптимизировать процесс структурирования. Алгоритм разделяется на две составляющие:
А_1. Глобальный (вертиюъчьный) анализ, включающий разбиение ПО на методологические страты (ч/по-знання, кмк-знання и т. д.) на уровне всей ПО. В результате заполняется первый столбец матрицы (2),
А П. Анализ страт (горизонтальный), включающий построение многоуровневых структур но отдельным стратам, Число уровней п определяется особенностями стратифицированных знаний ПО и может существенно отличаться для разных страт. С точки зрения методологии п<3 свидетельствует о слабой проработке ПО.
llepHbiR уровень соответствует уровню всей ПО (уровень области). Второй — уровню проблемы, выделенной для решения. Третий — уровню конкретной ре- iiKicMoii задачи. Дальпеншие уровни соответствуют подзадачам, если имеет смысл их выделять.
При ;-)том возможно к а к 11 о с л ед о ватсл ы I ое применение восходящей (bottoin-up) и нисходяще!! концепций (top-down), так и их одновременное применение.
Глобальный анализ
Технология г/юбального анализа сводится к разбиению пространства основной задай】】 структурнрованпя ПО па подзадачи, соответствующие особенностям ПО. Для разработки интеллектуальных систем существует минимальный набор s-страт, обеспечивающий формирование БЗ. Минимальный набор включает три страты:
s3 — формнроваппе KOinieriTyivibiioii структуры Sk;
S4 — фо]и1проваш]е функционально!! структуры S,,
s7 — формирование пoдcIICтe^rbI объяснений Sit.
Формирование остальных страт позволяет существенно оптимизировать процесс разработки и избежать многих традиционных ошибок проектирования. Страты 电 ц s являются дополнительными л формируются в случэях, когда знания предметной области существенно зависят от временных и пространственных параметров (системы реального времени, планирование действий роботов н т. п.).
Алгоритм А_1 глобального анализа может быть кратко сформулирован следующим образом:
а 1_1. Собрать все материалы по идентификации задачи и по результатам извлечения знаний.
А_1_2. Выбрать набор страт N, подлежащих формированию (Nmin=3).
A_i_3. Отобрать всю информацию по первой выбранной страте (i-1, где i — номер из выбранного набора страт N).
А」_4. Повторить шаг А」_3 для i+1 для всех выбранных страт no i и N.
А_1_5, Если часть информации останется неиспользованной, увеличить число страт it повторить для новых страт шаг А_1_3; иначе перейти к последовательной реализации алгоритмов горизонтального анализа страт А_2.
Анализ страт
Последовательность шагов горизонтального анализа зависит от номера страты, но фактически сводится к реализации дуальной концепции структурирования для решения конкретной подзадачи.
Ниже предлагается алгоритм ОСА для одной из обязательных страт s3 (ЧТ О-анализ), результатом которого является формирование концептуальной структуры предметной области Sk.
А_2_3_1. Из группы информации, соответствующей ЧТО-страте, выбрать все значимые понятия и сформулировать соответствующие концепты.
А_2_3_2. Выявить имеющиеся иерархии п зафиксировать их графически в виде структуры.
А_2_3_3, Детализировать концепты, пользуясь нисходящей концепцией (top- down).
А_2_3_4. Образовать метапонятия по концепции (bottom-up).
А_2_3_5. Исключить повторы, избыточность и синонимию.
А_2_3_6. Обсудить понятия, не вошедшие в структуру Sp с экспертом и перенести их в другие страты или исключить.
А_2_3_7. Полученный граф или набор графов разделить на уровни и обозначить —согласно матрице ОСА (1).
Аналогичные алгоритмы разработаны для всех страт и апробированы при разработке экспертных систем ПРОГОР и АВЭКС.
Технологии инженерии знаний
口 Классификация методов практического извлечения знаний
Коммуникативные методы
Текстологические методы
Простейшие методы структурирования
Состояние и перспективы автоматизированного приобретения знаний
Примеры методов и систем приобретения знаний
Классификация методов практического извлечения знаний
Подробно рассмотрев в главе 3 теоретические аспекты инженерии знаний, мы, однако, в явном виде не определили, каким практическим методом эти знания будут получены. В неявном виде предполагалось, что это некоторое взаимодействие инженера по знаниям и эксперта в форме непосредственного живого общения. Однако это не единственная форма извлечения знаний, хотя н довольно распространенная. В работах [Волков, Ломнев, 1989: Осипов, 1998: Boose. 1989; Cullen, Bryman, 1988; Gammack, Young. 1985; Hart 1986] упоминается около 15 pЗычных (неавтоматизированных) методов извлечения и более 20 автоматизированных методов приобретения и формирования знаний.
Рисунок 4.1 иллюстрирует предлагаемую классификацию методов извлечения знаний, в которой используются наиболее употребительные термины, что позволит инженерам по знаниям в зависимости от конкретно!! задачи и ситуации выбрать подходящий метод.
Из предложенной схемы классификации видно, что основной принцип деления связан с источником знаний.
Рис. 4.1. Классификация методов извлечения знаний
Коммуникативные методы извлечения знаний охватывают методы и процедуры контактов инженера по знаниям с непосредственным источником знаний — экспертом, а текстологические включают методы извлечения знаний из документов (методик, пособий, руководств) и специальной литературы (статей, монографий, учебников).
Разделение этих групп методов на верхнем уровне классификации пс означает их антагонистичности, обычно инженер по знаниям комбинирует различные методы, например сначала изучает литературу, затем беседует с экспертами, или наоборот.
В свою очередь, коммуникативные методы можно также разделнть на две группы: активные и пассивные. Пассивные методы подразумевают, что ведущая роль в процедуре извлечения как бы передается эксперту, а инженер по знаниям только протоколирует рассуждения эксперта во время его реальной работы по приня- тию решений или записывает то, что эксперт считает нужным самостоятельно рассказать в форме лекции. В активных методах, напротив, инициатива полностью в руках инженера по знаниям, ко горы в активно контактирует с экспертом различными способами — в шрах, диалогах, беседах за круглым столом и т. д. Следует еще раз подчеркнуть, что и активные и пассившие методы могут чередоваться даже в рамках одного сеанса извлечения знаний. Например, если инженер по знаниям застенчив и не имеет большого опыта, то вначале он может нснользо- вать пассивные методы, а постепенно, ближе знакомясь с экспертом, захватывать инициативу и переходить «в наступление».
Пассивные методы на первый взгляд достаточно просты, но на самом деле требу- ют от инженера по знаниям умения четко знэлизировзть поток сознзния эксперта н выявля гь в нем значимые фрагменты знзний. Отсутствис обратной связи (пас* сивность инженера по знаниям) значительно ослабляет эффективность этих методов, чем и объясняется их обычно вспомогательная роль при активных методах. Активные методы можно разделить на две группы в зависимости от числа экс- пертов, отдающих свои знания. Если их число больше одного, то целесообразно помимо серии индивидуальных контактов с каждым применять и методы групповых обсуждений предметной области. Такие групповые методы обычно активизируют мышление участников дискуссий и позволяют выявлять весьма не- TpuBiGuibiibie аспекты их знаний. В свою очередь, индивидуальные методы на сегодняшний день остаются ведущими, поскольку столь деликатная процедура, как «отъем знаний», не терпит лишних свидетелей.
Отдельно следует сказать об играх. Игровые методы сейчас широко используются в социологии, экономике, менеджменте, педагогике для подготовки руководителей, уинтеле", врачей и других специалистов, Игра — это особая форма деятельности и творчества, где человек раскрепощается и чувствует себя намного свободнее, чем в обычной трудов。" деятельности.
На выбор метода влияют три фактора: личностные особенности инженера по зна- нням, личностные особенности эксперта п характеристика предметной области.
Одна из возможных классификаций люден по психологическим характеристикам [Обозов, 1986] делит всех на три типа:
мыслитель (познавательный тип);
собеседник (эмоцпоналыю-коммуникатпвный тип):
практик (практически!! тип),
Мыслители ориентированы на интеллектуальную работу, учебу, теоретические обобщения и обладают такими характеристиками когнитивного стиля, как поле- иезависимость и рефлексивность (см. параграф 3.3). Собеседники - это общительные, открытые люди, готовые к сотрудничеству. Практики предпочитают деМтвне разговорам, хорошо реализуют замыслы других, направлены на результативность работы.
Для характеристики предметных областей можно предложить следующую классификацию:
хорошо документированные;
средне документированные;
слабо док^'ментированиые.
Эта классификация связана с соотношением двух видов знаний Z, и Z2, введенных вп 13 aeZj-это экспертное «личное^ знание, a Z2 - материализованное в к;н;х «。6山,знавне в давно!: конкретной области. Если предс^ить 彳嚣 Zlloпредметной области к<нс объединение Z ,и Z2, то есть 11П 仕?, Р глядио иллюстрирует предложенную классификацию.
Предметные области
Рис. 4.2. Классификация предметных областей
Кроме этого, предметные области можно разделить по критерию структурированности знаний. Под структурированностью будем понимать степень теоретического осмысления и выявленности основных закономерностей и принципов, действующих в данной предметной области. И хотя ЭС традиционно применяются в слабо структурированных предметных областях, сейчас наблюдается тенденция расширения сферы внедрения экспертных систем.
По степени структурированности знаний предметные области могут быть:
хорошо структурированными — с четкой аксиоматизацией, широким применением математического аппарата, устоявшейся терминологией;
средне структпурированными — с определившейся терминологией, развивающейся теорией, явными взаимосвязями между явлениями;
слабо структурированными — с размытыми определениями, богатой эмпирикой, скрытыми взаимосвязями, с большим количеством «белых пятен».
Введенные в данном параграфе классификации методов и предметных областей помогут инженеру по знаниям, четко определив свою предметную область, соотнести ее с предложенными типами и наметить подходящий метод или группу методов извлечения знаний. Однако, скорее всего, реальная работа полностью зачеркнет его выбор, и окажется, что его хорошо документированная область является слабо документированной, а метод наблюдений надо срочно заменять играми!
Такова реальная сложность процедуры извлечения знаний.
Коммуникативные методы
В соответствии с классификацией, представленной на рис. 4.1, рассмотрим под- робнее обе разновидности коммуникативных методов: пассивные и активные.
4-2,1. Пассивные методы
Термин «пассивные» не должен вызывать иллюзий, поскольку он введен как про- тивовес к «активным» методам. В реальности же пассивные методы требуют от инженера по знаниям не меньшей отдачи, чем такие активные методы, как игры и диалог.
Пассивные методы извлечения знаний включают такие методы, где ведущая роль в поо- иедуре извлечения фактически передается эксперту, а инженер по знаниям только 霖 сирует рассуждения эксперта во время работы по принятию решений.
Согласно классификации (см. рис. 4.1) к этой группе относятся: • наблюдения;
анализ протоколов «мыслей вслух»;
лекции.
Наблюдения
В процессе наблюдений инженер по знаниям находится непосредственно рядом с экспертом во время его профессиональной деятельности илн имитации этой деятельности. При подготовке к сеансу извлечения эксперту необходимо объяснить цель наблюдений и попросить максимально комментировать свои действия.
Во время сеанса аналитик записывает все действия эксперта, его реплики и объяснения. Может быть сделана и видеозапись в реальном масштабе времени. Непременное условие этого метода — невмешательство аналитика в работу эксперта хотя бы на первых порах. Именно метод наблюдений является единственно «чистым» методом, исключающим вмешательство инженера по знаниям и на* вязывание им каких-то своих структур представлений.
Существуют две основные разновидности проведения наблюдений:
наблюдение за реальным процессом;
наблюдение за имитацией процесса.
Обычно используются обе разновидности. Сначала инженеру по знаниям полезно наблюдать за реальным процессом, чтобы глубже понять предметную область и отметить все внешние особенности процесса принятия решения. Это необходимо для проектирования эффективного интерфейса пользователя. Ведь будущая ЭС должна работать именно в контексте такого реального производственного процесса. Кроме того, только наблюдение позволит аналитику увидеть предметную область, а, как известно, «лучше один раз увидеть, чем сто раз услышать».
Наблюдение за имитацией процесса проводят обычно также за раоочпм местом зксперта, но сам процесс деятельности зэпускается специально 口ля аналитика. Преимущество зто" разновидности в том, что эксперт менее напряжен, чем в первом варианте, когда он работает на «зва фронта» - и ведет профессионал!ьн^то деятельность, и демонстрирует ее. Недостаток совпадает с преимуществом — именно меньшая напряженность эксперта может повлиять на результат - раз работа ненастоящая, то н решение может отличаться от настоящего.
Наблюдения за имитацией проводят также и в тек случаях, когда наблюденгы за реальном процессом по каким-либо причинам невозможны (например, профессиональная этика врача-психиатра может не допускать прис^ствия постороннего на приеме).
Сеансы наблюдений могут потребовать от инженера по знаниям:
овладения техникой стенографии для фиксации действий эксперта в реальном масштабе времени;
ознакомления с методиками хронометража для четкого структурирования производственного процесса по времени;
развития навыков «чтения по глазам», то есть наблюдательности к жестам, мн- мике if другим невербальным компонентам общения;
серьезного предварительного знакомства с предметной областью, так как из-за отсутствия ^обратноif связи» иногда многое непонятно в действиях экспертов. Протоколы наблюдений после сеансов в ходе домашней работы тщательно расшифровываются, а затем обсуждаются с экспертом.
Таким образом, наблюдения — один из наиболее распространенных методов извлечения знаний на начальных этапах разработки. Обычно он применяется не самостоятельно, а в совокупности с другими методами.
Анализ протоколов «мыслей вслух»
Протоколирование «мыслей вслух» отличается от наблюдений тем, что эксперта просят не просто прокомментировать свои действия и решения, но и объяснить, как это решение было найдено, то есть продемонстрировать всю цепочку своих рассуждешш. Во время рассуждений эксперта все его слова, весь «поток сознания» протоколируется инженером по знаниям, при этом полезно отметить даже паузы и междометия. Иногда этот метод называют «вербальные отчеты» [Морго- ев, 1988].
Вопрос об использовании для этой цели магнитофонов и диктофонов является дискуссионным, поскольку магнитофон иногда парализующе действует на эксперта, разрушая атмосферу доверительности, которая может и должна возникать при непосредственном общении.
Основной трудностью при протоколировании «мыслей вслух» является принципиальная сложность для любого человека объяснить, как он думает. При этом существуют экспериментальные психологические доказательства того факта, что люди не всегда в состоянии достоверно описывать мыслительные процессы. Кроме того, часть знаний, хранящихся в невербальной форме (например, различна процедурные знания типа «как завязывать шнурки»), вообще слабо корре- лируют с их словесным описанием. Автор теории фреймов М. Минский считает, что столько как исключение, а не как правило, человек может объяснить то, что 011 знает» [Minsky, 1981]. Однако существуют люди, склонные к рефлексии, для которых эта работа является вполне доступной. Следовательно, описанная в параграфе 3.3. такая характеристика когпитивного стиля, как рефлексивность, является для эксперта более чем желательной.
Расшифровка полученных протоколов п])оизводится инженером по знаниям самостоятельно с коррекциями на следующих сеансах извлечения знаний. Удачно 1
проведенное протоколирование «мыслей вслух» является одним из наиболее эффективных методов извлечения, поскольку в нем эксперт может проявить себя
максимально ярко, он ничем не скован, никто ему не мешает, он как бы свободно парит в потоке собственных умозаключений и рассуждений. Он может здесь блеснуть эрудицией, продемонстрировать глубину своих познаний. Для больше
「。числа экспертов это самый приятный и лестный способ извлечения знаний
От инженера по знаниям метод «мысли вслух» требует тех же умений, что и метод наблюдений. Обычно «мысли вслух» дополняются потом одним из активных мс~ тодов для реализации обратной связи между интерпретацией инженера по знани- ям и представлениями эксперта.
Лекции
Лекция является самым старым способом передачи знаний. Лекторское искусство издревле очень высоко ценилось во всех областях науки и культуры. Но нас сейчас интересует не столько способность к подготовке и чтению лекций, сколько способность эту лекцию слушать, конспектировать и усваивать. Уже говорилось, что чаще всего экспертов не выбирают, и поэтому учнть эксперта чтению лекции инженер по знаниям не сможет. Но если эксперт имеет опыт преподавателя (например, профессор клиники или опытный руководитель производства), то можно воспользоваться таким концентрированным фрагментом знаний, как лекция. В лекции эксперту также предоставлено много степеней свободы для самовыражения; при этом необходимо сформулировать эксперту тему к задачу лекции. Например, тема цикла лекций «Постановка диагноза — воспаление легких», тема конкретной лекции «Рассуждения по анализу рентгенограмм», задача —научить слушателей по персчислепным экспертом признакам ставить диагноз воспаления легких и делать прогноз. При такой постановке опытный лектор может заранее структурировать своп знания и ход рассуждений. От инженера по знаниям в этой ситуации требуется лишь грамотно законспектировать лекиню и в конце задать необходимые вопросы.
Студенты хорошо знают, что конспекты лекций одного и того же лектора у раз- ных студентов существенно отличаются. Списать конспект лекции просят, как правило, у одного-двух студентов из группы. Люди, умело ведущие конспект, обычно сильные студенты. Обратное не верно. В чем же заключается искусство ведения конспекта? В «помехоустойчивости*. Записывать главное, опускать второстепенное, выделять фрагменты знаний (параграфы, под-параграфы), записывать только осмысленные предложения, уметь оооощать.
Хороший вопрос по ходу лекции помогает п лектору и слушателю. Серьезные и глубокие вопросы могут существенно поднять авторитет инженера по знаниям в глазах эксперта.
Опытный лектор знает, что все вопросы можно условно разбить на три группы:
умные вопросы, углхюляюшие лекцию;
глупые вопросы или вопросы не по существу,
вопросы «на засыпку» пли провокационные.
Если инженер по знаниям задает вопросы второго типа, то возможны две реак- нии. Вежливый эксперт будет разговаривать с таким аналитиком как с ребенком, который сейчас не понимает и все равно ничего уже не поймет. Заносчивый эксперт просто выйдет из контакта, не жслйя терять время. Если же инженер по зна- ниям захочет продемонстрировать свою эрудицию вопросами третьего типа, то ничего, кроме раздражения н отчуждения, он, по-видимому, в ответ не получит. Продолжительность лекции рекомендуется стандартная — от 40 до 50 минут и через 5-10 минут — еще столько же. Курс обычно от двух до пяти лекций.
Метод извлечения знаний в форме лекций, как и все пассивные методы, используют в начале разработки ^ак эффективный способ быстрого погружения инженера по знаниям в предметную область.
В заключение несколько советов, как слушать лекции [Ребельский, 1989].
К лекции подготовьтесь, то есть познакомьтесь с предметной областью.
Слушайте с максимальным вниманием, для этого: устраните мешающие факторы (скрип двери, шорохи и т. д.); удобно устройтесь; поменьше двигайтесь.
Учитесь отдыхать во время слушания (например, когда лектор приводит цифры, которые можно взять из справочника).
Слушайте одновременно н лектора, и самого себя (параллельно с мыслями лектора по ассоциации возникают собственные мысли).
Слушаете н одновременно записывайте, но записывайте текст сокращенно, используя условные значки (для этого вовсе не следует непременно быть стенографом, достаточно только установить для себя ряд условных значков и нмп неизменно пользоваться).
Расшифруйте записи лекции в тот же день.
Не спорьте с лектором в процессе лекции.
Рационально используйте перерывы в лекции для подведения итогов прослушанного.
Сравнительные характеристики пассивных методов извлечения знаний представлены в табл. 4.1.
Таблица 4.1. Сравнительные характеристики пассивных методов извлечения знаний
Пассивный метод извлечения знаний
Наблюдения
«Мысли вслухи
Лекции
Достоинства
Отсутствие влияния аналитика и его субъективной позиции
Максимальное приближение аналитика к предметной области
Свобода самовыражения для эксперта
Обнаженность структур рассуждений
Свобода самовыражения для эксперта
Структурированное изложение.
Высокая концентрация
Пассивный метод извлечения знаний
Нвблюдения
«Мысли вслух»
Лекции
Отсутствие влияния аналитика и его субъективной позиции
Отсутствие влияния аналитика и его субъективной позиции
Недостатки
Отсутствие обратной связи
Фрагментарность полученных комментариев
Отсутствие обратной связи
Возможность ухода “в сторону» в рассуждениях эксперта
"Зашумлен ность» деталями
Слабая обратная связь
Недостаток хороших лекторов среди экспертов- практиков
Требования кэксперту (типы и основные качества)
Собеседник или мыслитель (способность к вербализации + мыслей + аналитичность+ открытость + рефлексивность)
Собеседник или мыслитель (способность к вербализации + мыслей + аналитичность+ открытость+ рефлексивность)
Мыслитель (лекторские способности)
Требования к эксперту (типы и основные качества)
Мыслитель
(наблюдательность + поленезависимость)
Мыслитель или собеседник (контактность + поленезависимость)
Мыслитель (поле- независимость + способность к обобщению)
Характеристика предметной области
Слабо и средне структурированные; слабо и средне документированные
Тоже
Слабо
документированные и слабо
структурированные
Активные индивидуальные методы
Активные индивидуальные методы извлечения знаний на сегодняшний лень — наиболее распространенные. В той пли иной степени к в им приоегают при разработке практически любой ЭС.
К основным активным методам можно отнести:
анкетирование;
интервью;
свободный диалог;
игры с экспертом.
Во всех этих методах активную функцию выполняет инженер по знаниям, который пишет сиенарнй и режиссирует сеансы извлечения знании. Игры с экспертом
существенно отличаются от трех других методов. Три оставшихся метода очень схожи Между собой и отличаются лишь по степени свободы, которую может себе позволить инженер по знаниям при проведении сеансов извлечения знаний. Их можно назвать вопросными методами поиска зиянии.
Анкетирование
Анкетирование - наиболее жесткий метод, то есть наиболее стандартизированный. В этом случае инженер по знаниям заранее составляет вопросник или анке- ту, размножает ее и использует для опроса нескольких экспертов. Это основное преимущество анкетирования.
Сама процедура может проводиться двумя способами:
Аналитик вслух задает вопросы и сам заполняет анкету по ответам эксперта.
Эксперт самостоятельно заполняет анкету после предварительного инструктирования.
Выбор способа зависит от конкретных условий (например, от оформления анкеты, ее понятности, готовности эксперта). Второй способ нам кажется предпочтительнее, так как у эксперта появляется неограниченное время на обдумывание ответов.
Если вспомнить схему общения, представленную на рис. 3.8, то основными факторами, на которые можно существенно повлиять при анкетировании, являются средства общения (в данном случае это вопросник) и ситуация общения.
Вопросник (анкета) заслуживает особого разговора. Существует несколько общих рекомендаций при составлении анкет. Эти рекомендации являются универсальными, то есть не зависят от предметной области, Наибольипн! опыт работы с анкетами накоплен в социологии п психологии, поэтому част!> рекомендаций заимствована из [Ноэль, 1978; Погосян, 1985],
Анкета не должна быть монотонной и однообразной, то есть вызывать скуку 117Ш усталость. Это достигается вариациями(])ормы вопросов, сменой тематики, вставкой вопросов-шуток и игровых вопросов.
Анкета должна быть приспособлена к языку экспертов (см. п. 3.3).
Следует учитывать, что вопросы влияют друг на друга н поэтому гюслелова- тельиость вопросов должна быть строго iipo;i)^iaiia.
Желательно стремиться к оптимальной избыточности, Известно, что в анкете всегда много лишгшх вопросов, часть из них необходима — это так называемые контрольные вопросы (см. о них ниже), а другая часть должна быть минимизирована.
Пример 4.1
JIhhiuuc вопросы появляются, цаиримср, в таких ситуациях, Ф]1агмспт анке-гы: «872. Считаете /ш вы, что лечения ангины э.ффективиет эршпромшщя?^ «В13, Какие дозы эритромицина вы обычно рекомендуете?^
11рн отрицательном ответе на 12-й вопрос 13-й является лишним. Его можно избежать усложнив вопрос.'
«В 12. Применяете ли вы эритромицин для лечения ангины и если да, то в каких дозах?*
Анкета должна иметь «хорошие манеры», то есть ее язык должен быть ясным, понятным, предельно вежливым. Методическим мастерством составления анкеты можно овладеть только на практике.
Интервью
Под интервью будем понимать специфическую форму общения инженера по знаниям и эксперта, в которой инженер по знаниям задает эксперту серию заранее подготовленных вопросов с целью извлечения знаний о предметной области. Наибольший опыт в проведении интервью накоплен, наверное, в журналистике и социологии. Большшгство специа^ттистов этих областей отмечают тем не менее крайнюю недостаточность теоретических и методических исследований по тематике интервьюирования [Ноэль, 1978; Шумилина, 1973].
Интервью очень близко тому способу анкетированпя, когда аналитик сам заполняет анкету, занося туда ответы эксперта. Основное отличие интервью в том, что ofio позволяет аналитику опускать ряд вопросов в зависимости от ситуации, вставлять новые вопросы в анкету, изменять темп, разнообразить ситуацию общения. Kpo^[e этого, у амалит[1ка появляется возможность «взять в плен» эксперта своим обаяггпем, заинтересовать его самой процедурой и тем самым увеличить эффективность ссапса извлечения.
Вопросы для интервью
Теперь несколько подробнее о неитралыюм звене акпгвных индгтидуальных методов —о вопросах. Инженеры но знаниям редко сомневаются в своей способности задавать вопросы. В то время как п в философии и в мателгатике эта проблема обсуждается с давних лет. Существует даже спеш1а.т1Ы1ая ветвь мателгаптеской логики — эротетическая логика (логика вопросов). Есть интересная работа Бел- напа «Логика вопросов н ответов» [Белнап, Стил, 1981], но, к сожалению, использовать результаты, полученные -loniKaMir, непосредственно при разработке интеллектуальных систем не удается.
Все вопросительные предложения можно разбить на два типа [Сергеев, Соколов, 1986]:
вопросы с неопределешюстъю. относящейся ко всему предложению («Действительно. введение больших доз антибиотиков может вызвать анаф[[лакти- ческий шок?);
вопросы с н^/о^ой информацией (.п^1 какнх условиях необходимо включать кнопку?»), часто начинающиеся со слов «кто», нт。》, «где», «когда» н т. Д.
Это разделепне можно дополнить кжксификациеГг, частично описанной в работе [Шумилина, 1973] н представленной на pic 4.3.
Рис. 4.3. Классификация вопросов
Открытый вопрос называет тему нлн иредмет, оставляя полную свободу эксперту по форме it содержанию ответа («Не могли бы вы рассказать, как лучше сбить высокую температуру у больного с воспалением легких?»).
В закрытом вопросе эксперт выбирает ответ нэ набора предложенных («Укажите, пожалуйста, что вы рекомендуете при ангине: а) антибиотики, б) полос каине, в) компрессы, г) ингаляции»). Закрытые вопросы легче обрабатывать при последую щe^[ анализе, но они более опасны, так как «закрывают» ход рассуждении эксперта и «программируют» его ответ в определенном направлении. При составлении сценария интервью полезно чередовать открытые и закрытые вопросы, особенно тщательно продумывать закрытые, поскольку для их составления требуется определенная эрудиция в предметной области.
Личный вопрос касается непосредственно личного индивидуального опыта зкс- перта («Скажите^ пожалуйста, Иван Данилович, в вашей практике вы применяете вулнузан при фурункулезах?»). Личные вопросы обычно активизируют мышление эксперта, «играют» на его само川обнн, они всегда украшают интервью.
Безличный вопрос направлен на выявление наиболее распространенных и общепринятых закономерностей предметной области («Что влияет па скорость процесса ферментации лизина?»).
При составлении вопросов следует учитывать, что языковые способности эксперта, как правило, ограничены и вследствие скованностгг, замкнутости, робости
он не может сразу высказать свое мнение и предоставить знания, которые от него требуются (д#же если предположить, что он их четко для себя формулирует) Поэтому часто при «зажатости» эксперта используют не прямые вопросы, которые непосредственно указывают на предмет или тему («Как вы относитесь к ме- тодике доктора Сухарева?»), а косвенные, которые лишь косвенно указывают на интересующий предмет («Применяете ли вы методику доктора Сухарева? Опи- шите« пожш(уйста, результаты лечения»). Иногда приходится задавать несколько десятков косвенных вопросов вместо одного прямого.
Вербальные вопросы - это традиционные устные вопросы. Вопросы с использо- ванием наглядного материала разнообразят интервью и снижают утомляемость эксперта. В этих вопросах используют фотографии, рисунки и карточки. Например, эксперту предлагаются цветные картонные карточки, на которых выписаны признаки заболевания. Затем аналитик просит разложить эти карточки в порядке убывания значимости для постановки диагноза.
Деление вопросов по функции на основные, зондирующие, контрольные связано с тем, что часто основные вопросы [пгтервью, направленные на выявление знаний, не срабатывают — эксперт по каким-то причинам уходит в сторону от вопроса, отвечает нечетко.
Тогда аналитик использует зондирующие вопросы, которые направляют рассуждения эксперта в нужную сторону. Например, если не сработал основной вопрос: «Какие параметры определяют момент окончания процесса ферментации лнзн- на?» — аналитик начинает задавать зондирующие вопросы: «Всегда ли процесс ферментации длится 72 часа? А если он заканчивается раньше, как это узнать? Если он продлится больше, то что заставит микробиолога не закончить процесс на 72-м часу?» и т. д.
Контрольные вопросы применяют для проверки достоверности и объективности информации, полученной в интервью ранее («Скажите, пожалуйста, a srocKOB- ская школа психологов так же как вы трактует шкалу К опросника MMPI?蒙 или «Рекомендуете ли вы инъекции АТФ?» (АТФ — препарат, сняты к с производства). Контрольные вопросы должны быть «хитро» составлены, чтобы не обидеть эксперта недоверием (для этого используют повторение вопросов в друтои форлге, уточнения, ссылки на другие источники). «Лучше два раза спросить, чем один раз напутать» (Шолом—Алейхем).
И наконец, о нейтральных и наводящих вопросах. В принципе интервьюеру (в нашем случае инженеру по знанияхг) рекомендуют быть беспристрастным, отсюда и вопросы его должны носить нейтральный характер, то есть не должны указывать на отношение шгтервьюера к данной теме. Напротив, наводящие вопросы заставляют респондента (в данном случае эксперта) прислушаться илндаже принять во вннманне позицию интервьюера. Нейтральный вопрос: «Совпадают ли симптомы кровоизлияния в мозг и сотрясения мозга?» Наводяшни вопрос: «Не правда ли, очень трудно дифференшгровать симптомы кровоизлияния
мозг?»
Кроме перечисленных выше, полезно различать и включать в интервью следующие вопросы [Ноэль, 1978]:•
контактные («ломающие лед» кгежду аналитиком и экспертом);
буферные (для разграничения отдельных тем интервью);
оживляющие память экспертов (для реконструкции отдельных случаев из практики);
.«провоцирующее* (для полученпя споитанпых, hgtioiuотовлсипых о i ветов).
В заключение описания шгтервью укажем три основные характеристики вопросов [Шумилина, 1973], которые влияют на качество интервью:
язык вопроса (понятность, лаконичность, терминология);
порядок вопросов (логическая последовательность и немонотонность);
уместность вопросов (этика, вежливость).
Вопрос в интервью 一 это не просто средство общения, но и способ гкфедачи мыс- ле11 к позпцшг ана^'штпка.
«Вопрос представляет собой форму движения мысли, в нем ярко ныражеи момент перехода от незнания к знанию, от неполного, неточного знания к более полному и более точному» [Лимнитов, 1971]. Отсюда иеобходтгмост!) в протоколах фиксировать не только ответы, но и вопросы, предварительно тщательно отрабатывая их форму н содержание.
Очев1гдно, что“ю6о" вопрос имеет смысл только в ко иге кете. II оэтом у вопросы может готов[1ть инженер по знаниям, уже овла/ютш-п! ключевым набором знаний.
Вопросы имеют для эксперта диагностическое значение — несколько (откровенных «глупых» вопросов могут полностью разочаровать эксперта и отбить У него охоту к дальнейшему сотрудничеству. Известен ответ Маркса на вопрос Прудона: «Вопрос был до такси) степени пенравилыю поставлен что па него невозможно было лать прпиильпьн! ответ».
Свободный диалог
Свободный диалог — ото метод извлечения знании в форме беседы инженера по знаниям и эксперта, в Koropoii пег жесткого регламентированного плана и во- проеннка. Это оп])слелсиие нс означает, что к свободному диалогу не надо то товиться. Напротив, вненлю свободная ц легкая фо])ма этого метода Т])ебуст высочайше!! профессиопа.нию!! и психологической! нодг()тс)вк11. Подготовка к свободному диалогу практичсччсн может совпадать с предлагаемой в работе [LUy- милпла, 1973] Г1о;иотош«)1{ к журнадпстском}^ интервью. Рис^^юк 4.4 графичсс- кн иллюстрирует схему тако!! подготовки, дополненную и связи со ciieiu,O)iiK()ii ннженерим 3[1а1шй. Подготовка занимает разное и рем я в зависимости от степени профессионалнзма аналитика, но в любом случае она необходима, так как несколько уменьшает вероятность самого нерационального метода — метода проб н ошибок.
Рис. 4.4. Подготовка к извлечению знаний
Квалифицированная подготовка к диалогу помогает аналитику стать истинным драматургом или сценаристом будуиигх сеансов, то есть запланировать гладкое течение процедуры извлечения: от приятного впечатления в начале беседы пере- хоп к 11ро(()есспо11алыюму контакту через пробуждение интереса и завоевание дове!)пя эксперта. При этом для оиеспече1Н1я желания эксперта продолжить беседу необходимо проводить «поглаживания» (тep^fннoлoгия Э. Берна [Берн, 19881). тс есть подбадривать эксперта и подтверждать всячески его уверенность в собственно)! компетентности (фразы-вставки: «Я вас понимаю...», «...это очень интересно» нт,;]).
Так, в одном из исследовании по технике ведения професс![опальных журналистских диалогов [Matarozzo, Weitman, Weins, 1963] было 3KcnepirsfeHTa.ibiio доказано, что одобрительное п поощрительное «хмыканье» интервьюера увеличивает длин)' ответов респондента. При зтом одобрение должно быть искренним, как показал опрос интервьюеров Института демоскоппи FepsfaHffif: «Лучшая уловка —это избегать всяких уловок: относиться к опрашиваемому с ncTifniibiNf человеколюбием, не с наигранным, а с позлнннмм иптересом» [Ноэль, 1978]. Чтобы разговорить собеседника, можно сначала аналитику рассказать о себе, о работе, то есть поговорить самому.
Мы уже ппсх'ш о профессионально!! пригодности инженеров по знаниям я необ- ходимости предварительного психологического тестированггя при подготовке инженеров по знаниям. Здесь толь ко прггведем каталог свопств идеального интервьюера [Ноэль, 1978]. На наш взгляд, это вполне подходящий образец портрета пиженерп ио знания” перед ссриеГг свободных диалогов: *0н должен выглядеть здоровым, ciiokoiihijIM. \гвере1П1ЫМ, внушать доверие, онть искренним, веселым, проявлять интерес к беседе, быть опрятно одетым, ухоженным». Хоро-
шнЛ аналитик может личным обаянием и умением скрыть изъяны подготовки. Блестящая краткая характеристика интервьюера приведена в той же работе - «общительны立 педанта.
В свободном диалоге важно также выбрать правильный темп или рнтм беседы: без больших пауз, так как эксперт может отвлечься, но и без гонки, иначе быстро утомляются оба участника и нарастает напряженность, кроме того, некоторые люди говорят и думают очень медленно. Уме1[це чередовать разные TeNrnbf, напряжение и разрядку в беседе существенно влияет на результат.
Подготовка к диалогу так же, как и к другим активным методам извлечения зна- ний, включает составление плана проведения сеанса извлечения, в котором необ- ходнмо предусмотреть следующие стадии:
Начало беседы (знакомство, создание у эксперта «образа» а1[алитика, объяснение целей и задач работы).
Диалог по извлечению знаний.
Заключительная стадия (благодарность эксперту, подведегше итогов, договор о последующих встречах).
Девизом для инженера по знанггям могут послужить взгляды одного из классиков отечественного литературоведенггя М. М. Бахтина [Бахтин, 1975]:
«Диалог — столюговенпе разных умов, разнь(х истин, несходных культурпых позиций, составляющих единый ум, единую истину, общую культуру».
«Диалог предполагает:
упикальность каждого партнера и их принципиальное равенство друг другу;
различие и оригинальность их точек зрения;
ориентацию каждого на понимание и на активную интерпретацию его точки зрения партнером;
ожидание ответа н его предвосхищение в собственном высказывании;
взаимную дополнителььгость [юзнций участников общения, соотнесение которых п является целью диалога».
Сравнительные характеристики активных иидивидуальпых методов извлечения знаний представлены в табл. 4.2.
Таблица 4.2. Сравнительные характеристики активных индивидуальных методов извлечения
АктивныйАнкетирование ИнтервьюСвободный диалог
индивидуальный
метод извлечения
знаний
Достоинства
Возможность
Наличие обратной
Гибкость
стандартизиро-
саязи (возможность
ванного опроса
уточнений и разрешения
Сильная
нескольких
противоречий)
обратная связь
экспертов
для эксперте
изменения
42 Коммуникативные методы .
Активный индивидуальный метод извлечения знаний
Анкетироввние
Интервью
Свободный диалог
Не требует особенного напряжения от аналитика во время процедуры анкетирования ,
Возможность изменения сценария и формы сеанса
Недостатки
Требует уменияТребует значительного
и опытавремени на подготовку
составлениявопросов интервью
анкет
Отсутствие контекста между экспертом, нвт обратной связи. Вопросы анкеты могут быть неправильно поняты экспертом
Требует отаналитика высочайшего напряжения
Отсутствие формальных методик проведения
Трудность протоколирования результатов
Требования к эксперту(типы качества)
Практик и мьюлитель
Собеседник или мыслитель
Собеседник или мыслитель
Требования к аналитику (типы и качества)
Мыслитель (педантиз в составлении анкет, внимательность)
Собеседник (журналистские навыки, умение слушать)
Собеседник (наблюдательность умение слушать, обаяние)
Характеристика предметной области
Слабо
структурированные, слабо и средне
документированные
Тоже
Тоже
4.2.3. Активные групповые методы
К групповым методам извлечения знаний относятся ролевые игры, дггскуссип за «круглым столом» с участием нескольких экспертов и «лгозговые штурмы». Основное достоинство групповых методов — это возможность одновременного «поглощенпя» знаний от нескольких экспертов, взаммоде^ствне которых вносит в этот процесс элемент принципиальной новизны от наложения разных взглядов и позиций.
Поскольку эти методы менее популярны, чем нндггвидуальные (что связано со сложностью организации), попытаемся ошгсать irx подробно.
«Круглый стол»
Метод круглого стола (термин заимствован нз журналистики) предуслгатривает обсуждений каком-либо проблемы из выбраниои предметной области, в котором принимают участке с равными правами несколько экспертов. Ооь(чно вначале
участники высказываются в определенном порядке, а затем переходят к живой свободной дискуссии. Число участников дискуссии колеблется от трех до пя- ти—семи. “
Большинство общих рекомендации по извлечснню знании, предложенных ранее, применкгмо и к данному лгетоду. Однако существует и специфика, связанная с поведением человека в группе.
Во-первых, от инженера по знаниям подготовка «круглого стола» потребует до- полнительных усилий: кдк оргашопционных (место, время, обстановка, минеральная вода, чай, кворум и т. &),так и психологических (умение вставлять уместные реплики, чувство юмора, память на имена и отчества, способность гасить конфликтные ситуации и т. д.).
Во-вторых, большинство участников будет говорить под воздействием, «эффекта фасада» совсем не то, что они сказали бы в другой обстановке, то есть желание произвест1[ впечатление на других экспертов будет существенно «ггодсвечивать^ их высказывания. Этот эффект часто наблюдается на защитах диссертаций. Члены ученого совета спрашивают обычно не то, что им действительно интересно, а то, что демонстрирует их собственную компетентность.
Ход беседы за круглым столом удобно записывать на магнитофон, а при расшифровке и анализе результатов учитывать этот эффект, а также взаимные отношения участнггков.
Задача дискусс1пг — коллективно, с разных точек зрения, под разными углами исследовать спорные гипотезы предметной области. Обычно эмпирические области богаты такнм дискуссионным материалом. Для остроты на «кругл wii стол» нрн- глашают представителей разных научных направлений п разных поколений, это также уменьшает опасность получения односторонних однобоких знаний.
Обмен лгнениями по научным вопросам имеет давнюю традицию в ^гетерии человечества (античная Греция, Индия). До наших niieii дошли литературные памятники обсуждения спорных вопросов (например, Протагор «Искусство спорить», работы софистов), поел\лжлвшпе первоосновой дналектнкн — нау【сн вести беседу» спорить, развивать теорию. В самом слове дискуссия (от лат. discussio — исследование) содержится указание на то. что это метод научного познания, а не просто споры (для сравнения, полелгпка — от греч. polemikos — воинственный, враждебный).
Несколько практических советов по процедурным вопросам «круглого стола» нз работы [Соколов, 1980]. Перед началом дискуссии ведущему полезно:
уоедиться, что вес правильно понимают задачу (то еегь происходит сеанс извлечения знаний);
установить регламент;
четко сформулировать тему.
По ходу дискуссии важно проследить, чтобы елшиком эмоциональные н разговорчивые эксперты не подмеиил1[ тему н чтобьг критика позиций друг друга была обоснованной.
Научная плодотворность дискусспи делает этот метод прнвлекательншм и для самнх экспертов, особенно для тех, кто знает меньше. Это заметил еще Эпикур:
《□рн философской дискуссии больше выигрывает побежденный 一 в том отно- ujchhh, что он умножает знаниям [Материалисты, 1955]. Хорошим напутствием для проведения «круглого стола» служат слова П.Л. Капицы: 4Когдя в какой- либо науке нет противоположных взглядов, нет борьбы, то эта иаука идет по пути к кладбищу, она идет хоронить себя» [Капица, 1967].
«Мозговой штурм»
Активные групповые методы обычно используются в качестве острой приправы при пзвлечении знаний, сами по себе онн не могут служить источником более или менее полного знания. Их применяют как дополгительные к традиционным индивидуальным методам (наблюдения, интервью и т. д.), для активизации мышле* ния и поведения экспертов.
«Мозговой штурм» или «мозговая атака» — один из наиболее распростраиениых методов раскрепощения н активизации творческого \[ышления. Другие методы (метод фок^ьных объектов, синектика, метод контрольных вопросов [Шепотов, Шмаков, Крикун, 1985]) применяются гораздо реже из-за меньшей эффективности.
Впервые этот метод был использован в 1939 г. в США А. Осборном как способ получения новых идеи в условиях запрещения критики. Замечено, что боязнь критики мешает творческому мышлению, гюэтому основная идея штурма — это отделение процедур14 геиерирова1[ия идеи в замкнутой группе специалистов от процесса анализа и оценки высказанных идей.
Как правило, штурм длится недолго (около 40 минут). Участникам (до 10 человек) предлагается высказывать любые идеи (шутл1[вые, фантастические, ошибочные) ла заданную тему (критика запрещена). Обычно высказывается более 50 идей, Регламент до 2 хишут па выступление. Самый интересны!! момент штурма —это наступление пика (ажиотажа), когда идеи начинают «фонтанировать*, то есть происходит непроизвольная генерация гипотез участниками. Этот пик имеет теоретическое обоснование в работах выдающегося швейцарского психолога и психиатра 3. ФреГтда о бессознательном. При лocлeдyюшe^f анализе всего лишь 10-15 % идей оказываются разумными, но среди них бывают весьма оригинальные, Оценивает результаты обычно группа экспертов, не участвовавшая в генерации.
Ведущий «мозгового штурма» — инженер по знашгям — должен свооодно &“а~ деть аудиторией, подобрать активную группу экспертов — «генераторов», fie за- жимать плохие идеи 一 они мог\7т с.чужпть ката-иизаторами хороших. Искусство ведущего — это искусство задавать ноиросы аудитор1Ш, «подогревая*「енера- цшо Вопросы служат «крючком» [Шепотов, Шмаков, Крикун, 1985], которым извлекаются плен. Вопросы также могут останавливать многословных экспертов и служить способом развития идсif других.
OcuoBHoii девиз штурма - «чем больше идей. Test лугше^. Фиксация хода сеанса —традиционна (протокол или магнитофон).
Достоинства и недостатки активных групповых .методов извлечения знапнй представлены в табл. 4.3.
Пблица 4.3. Сравнение активных групповых методов извлечения знании
Активный групповой метод извлечения знаний
«Круглый стол»
«Мозговой штурм»
Достоинстм
Позволяет получить более объективные фрагменты знаний
Позволяет выявлятьглубинные пласты знаний (на уровне бессознательного)
Оживляет п роцедуру извлечения
Активизирует экспертов
Позволяет участи мкам обмениваться знаниями
Позволяет получать новое знание (гипотезы)
Недостатки
Требует больших организационных затрат
Возможен только для новых интересных исследовательских проблем
Отличается сложностью проведения
Не всегда эффективны (довольно низкий процент продуктивных идей)
Требования кэксперту (тип и качества)
Собеседник или мыслитель (искусство полемики)
Мыслитель (креативность, то есть способность к творчеству)
Требования к инженеру по знаниям (тип и качества)
Собеседник (дипломатические способности)
Собеседник или мыслитель (быстрая реакция и чувство юмора)
Характеристика предметной области
Слабо структурированные и слабо документированные с наличием спорных проблем
Слабо структурированные и слабо документированные с наличием перспективных «белых пятен»
Экспертные игры
Игрой называют такой вид человеческой деятельности, который отражает (вое- создает) другие ее виды [Комаров, 1989]. При зтом для игры характерны одно- вреьгенно условность н серьезность.
Понятие экспертной игры или игры с экспертами в целях извлечения знаннН восходит к трем источникам — это деловые игры, широко используемые при подготовке специалистов и моделировании [Борисова, Соловьева и др., 1988; Бурков, 1980; Комаров, 1989]; диагпостические игры, описанные в работах [Алексеевская, Недоступ, 1988; Гельфанд, Розенфельд, Шифрин, 1988], и компьютерггые игры, все чаще применяемые в обучении [Пажитнов, 1987].
В настоящее время в психолого-педагогических науках пет развитом теоретичес- Koii концепции деловых нгр и других игровых методов обучения. Тем не менее на практике эти игры широко испо/гьзуются. Под деловой игрой чаще всего понима- [0Т эксперимент, где участникам предлагается производственная ситуация, а они на основе своего жизненного опыта, своих общих и специальных знаний и пред-
ставлений принимают решения [Бурков, 1980]. Решения анализируются, и вскрываются закономерности мышления участников эксперимента. Именно эта анализирующая часть деловой игры полезна для получения знаний. И если участниками такой игры становятся эксперты, то игра из деловой превращается в экспертную. Из трех основных типов деловых игр (учебных, планово-производственных и исследовательских) к экспертам ближе всего исследовательские, которые используются для анализа систем, проверки правил принятия решений.
Диагностическая игра — это та же деловая игра, но применяемая конкретно для диагностики методов принятия решения в медицине (диагностика методов диагностики). Эти игры возникли при исследовании способов передачи опыта от опытных врачей новичкам. В нашем понимании диагностическая игра — это игра, безусловно, экспертная без всяких оговорок, только с жестко закрепленной предметной областью — медициной.
Плодотворность моделирования реальных ситуаций в играх подтверждается сегодня практически во всех областях науки и техники, Они развивают логическое мышление, уменне быстро принимать решения, вызывают интерес у экспертов.
В соответствии с классификацией, введенной в п. 4.1, будем разделять экспертные игры на:
индивидуальные;
групповые.
Кроме этого (рис. 4.5), продолжим и разовьем эту классификацию введением других критериев:
использование специального обор)тдования;
применение вычислительной техники,
рис_ 4.5, Классификация экспертных игр
Игры с экспертом
В этом случае с экспертом играет инженер по знаниям, который берет на себя какую-нибудь роль в моделируемой ситуации. Например, одному из авторов часто приходилось разыгрывать с экспертом игру «Учитель и ученик», в которой инженер по знаниям берет на себя роль ученика и на глазах у эксперта выполняет его работу (например, пишет психодиагностическое заключение), а эксперт поправляет ошибки «ученика». Эта игра - удобный способ разговорить застенчивого эксперта.
Пример 4.2
Другая игра (заимствована из работы [Гельфанд, Розенфельд, Шифрин, 1988]) заставляет инженера по знаниям взять на себя роль врача, который знает хорошо больного, а эксперт играет роль консультанта. Консультант задает вопросы и делает прогноз о целесообразности применения того или иного вида лечения (в описанной игре это был пропюз целесообразности электростимулы юн терапии при сердечной аритмии). Игра «двух врачей» позволила выявить, что эксперту понадобилось всего 30 вопросов для успешного прогноза, в то время как первоиача.пьный вариант вопросника, составленный медиками для той же цели, содержал 170 вопросов,
Пример 4.3
Сначала эксперта просят написать обоснование для собственного прогноза. Например, почему он считает, что язва у больного X заживает. Накапливается несколько таких обоснований [Гельфанд, Розенфельд, Шифрин, 1988], а через некоторое время эксперту зачитывают только его обоснование и просят сделать прогноз. Как правило, этого он сделать нс может, то есть обоснование (или его знания) было неполным. Эксперт дополняет обоснование, тем самым выявляются скрытые (для самого эксперта) пласты знаний, Так, в играх «Обоснование прогноза рецидива язвенного кровотечения» удалось выявить, что значимыми для прогноза являются всего три правила. Причем два правила входили в траднпиошю-диагиостическни вопросник, а третье было сформу- лировапо во время игры.
Пример 4.4
Мгра «фокусировка на контексте»: эксперт играет роль ЭС, а инженер по знаниям — Р°-Г1Ь пользователя, Разыгрывается ситуация консулы^ацин. Первые вопросы эксперта выявляют наиболее значимые понятия, самые важнее аспекты проблемы, Роль пользователя может взять на себя и другой экспорт jRabbits, Wright. 19871,
Основные советы инженеру по знаниям по нроведешно индивидуальных игр:
играйте смелее, придумывайте игры сами;
не навязывайте игру эксперту, если он не расположен;
в игре «не давите» на эксперта, нс забывайте цели игры;
играйте весело, нешаблонно;
не забывайте о времени н о том, что игра утомительна для эксперта,
Ролевые игры в группе
Групповые игры предусматривают участие в игре нескольких экспертов. К такой нгре обычно заранее составляется сценарий, распределяются роли, к каждой роли
готовится портрет-описание (лучше с девизом) и разрабатывается система оценивания игроков [Борисова, Соловьева и др., 1988].
Существует несколько способов проведения ролевых нгр. В одних игрй игроки могут придумать себе новые имена и играть под ними. В других все игроки переходят на «ты». В третьих роли выбирают игроки, в четвертых роли вытягивают по жребию. Роль — это комплекс образцов поведения. Роль связана с другими ролями- «Короля играет свита». Поскольку в нашем случае режиссером и сценаристом игры является инженер по знаниям, то ему и предоставляется полная свобода в выборе(}юрмы проведения игры,
Пример 4.5
Так, в работе [Лазарева, Патиппн, 198/ ] описана игра «План,,предназначенная для извлечения знаний из специалистов предприятия, разрабатывающих производствен- ные планы выпуска для цехов и при пи мающих различные решения по управлению производством,
В игре экспертов разбили на три игровые группы: ЛПР】—группа планирования; ЛПР2 — группа менеджеров; Э — группа экспертизы по оцениванию действия ЛПР, и ЛПР2, Группам ЛПР[ и ЛПР? задавались различные производственные ситуации и тщательно протоколнровал11 сь их споры, рассуждения, аргументы по принятии реше- пий. В результате игры был создан прототип базы знаний экспертной системы планирования, ,
Обычно в игре принимает участие от трех до шести экспертов, если их больше, то можно разбить всех на несколько конкурирующих игровых бригад. Элемент состязательности оживляет игру, Например, чей диагноз окажется ближе к истинному, чей план рациональнее использует ресурсы, кто быстрее определит причину неисправности в техническом блоке,
Создание игровой обстановки потребует немало фантазии и творческой выдумки от инженера по знаниям. Ролевая игра, как правило, требует некоторых простейших заготовок (например, табличек «Директор», «Бухгалтерия», «Плановый отдел», специально напечатанных инструкции с правилами игры). Но главное, конечно, чтобы эксперты в игре действительно «заиграли», раскрепостились и «раскрыли свои карты»,
Игры с тренажерами
Игры с тренажерами в значительной степени ближе не к “гран, а к имитационным упражнениям в снтуаш【н, приближенно" к действительности.
Наличие тренажера позволяет воссоздать почти производственную ентуаиню и понаблюдать за экспертом. Тренажеры широко применяют для обучения (например, летчиков пли операторов атомных стапши!). Ourbiwho, что применение тренажеров для извлечения знании позволит зафиксировать фрагменты ^лету^чих» знаний, возникающих во время и на месте реальных ситуаций ” выпадающих из памяти при выходе за пределы ситуации.
в деловых играх известна давно. Но только в плен практически всех пользователей пер-в деловых играх известна давно. Но только в плен практически всех пользователей пер-Компьютерные экспертные игры
в деловых играх известна давно. Но только в плен практически всех пользователей пер-
в деловых играх известна давно. Но только в плен практически всех пользователей пер-
Идея нспользовать компьютеры когда компьютерные игры взяли
сональных ЭВМ от мала до велика, стала очевидной особая притягательность такого рода игр.
Традиционная современная классификация компьютерных нгр из журнала GAME.EXE:
Action/Arcade games (экшн/аркады). Игры-действия. Требуют хорошего глазомера и быстрой реакции.
Simulation games (симуляторы). Базируются на моделировании реальной действительности и отработки практических навыков, например в вождении автомобиля, пассажирского самолета, поезда, авиадиспетчера и даже симуляторы рыбной ловли. Также популярны спортивные симуляторы - теннис, бокс И Др.
3D Action games (<стрелялкн>). То же, что и экшн, но с активным использованием трехмерной графики.
Strategy games (стратегические игры). Требуют стратегического планирования и ответственности при принятии решений, например развитие цивилизаций, соперничество миров, экономическая борьба. Особый класс стратегических игр — wargames (военные игры). В последнее время упор в 3D Action делается на многопользовательский режим (игру по сети),
Puzzles (настольные игры-головоломки). Компьютерные реализации различных логических игр.
Adventure/Quest (приключенческие игры). Обычно обладают разветвленным сценарием, красивой графикой и звуком. Управляя одним или несколькими персонажами, игрок должен правильно вести диалоги, разгадывать множество загадок и головоломок, замечать н правильно использовать предметы, спрятанные в игре.
Role-playing games RPG (ролевые игры). Распространенный жанр, берущий свое начало в старых английских настольных играх, Существует один или несколько персонажей, обладающих индивидуальными способностями и характеристиками. Им приходится сражаться с врагами, решать загадки, По мере выполнения этих задач, у героев накапливается опыт, и по достижении определенного значения их характеристики улучшаются,..
Следует отметить, что многие игры могут быть отнесены сразу к нескольким классам, и в целом, эту классификацию нельзя считать строгой. Игры иногда по- лезнх для развлечения экспертов перед сеансом извлечения знаний. Кроме того, очевидно, что экспертные игры, сочетая элементы перечисленных выше классов, могут успешно применяться для непосредственного извлечения знаний. Однако разраоотка и программная реализация такой игры потребуют существенных вложений временных и денежных ресурсов.
Пример 4.6
Одна из первых отечественных экспертных компьютерных игр описана и работе [Пш- кул, 1989]. Основной принцип игры <<3оосад>> состоит в создании игровой ситуации пр” организации диалога с экспертом. При этом задача извлечения знаний маскиру- ется нацеленностью па решение чисто игровой задачи: необходимо определить со дер- жимое «черного ящикам, в котором находится некое животное, при этом надо набратг
наибольшее количество очков, не истратив выделенного ресурса денег. В ходе игры эксперт делает ставки на различные гипотезы, указывая при этом, какими признака* мн обладает то или иное животное. После каждого ответа ои получает пеобходимую информацию о результатах. По ходу игры невидимо для эксперта формируются правила, отражающие знания эксперта на основании сделанных им ходов. В данной игре — это знания о том, какими признаками обладают те или иные животные. Таким образом, выявляется алфавит значимых признаков для диапюстики и классификации животных.
Сравнительные характеристики экспертных игр приведены в табл. 4.4.
Таблица 4.4. Сравнительные характеристики экспертных игр
Экспертные игры
Индивидуальные
Групповые
Комльютерны*
Достоинства
Дают возможность сравнительно быстро получить качественную картину принятия решения
Позволяют выяснить, какую информацию и как использует эксперт
Реалистично воссоздают Вызывают интерес атмосферу конкретнойу эксперта
задачи
РаскрепощаютПривлекают
экспертовдизайном
и динамикой
«Групповые» знания более объективны
Выявляют логику
и аргументацию экспертов
Недостатки
Отсутствие методик стандартного набора игр
Высокие профессиональные требования к аналитику
Требуетотаналитике знания основ игротехники
Сложностьсоздания игр для конкретных предметных областей
Сложность и высокая цена создания специализированных игр в конкретной ПО
Требования к эксперту (тип и качества)
Собеседник или практик (раскованность и актерское мастерство)
То же
Практик без психологического барьера к ЭВМ
Требования к аналитику (тип и качества)
Собеседник (режиссерские способности + умение создавать сценарии + актерское мастерство)
Собеседник (способность к аедению конферанса + режиссерские способности + сценарист актерское мастерство)
Мыслитель
(контакт с программистом)
+
Требования к предметной области
Средне и слабо структурированные и слабо документированные
Тоже
То же
4・3・ Текстологические методы
Группа текстологических методов объединяет методы извлечения знаний, основанные на изучении специальных текстов из учебников, монографий, статей, ме- Т0Дик и других носителей профессиональных знании.
В буквальном смысле текстологические методы не относятся к текстологии — на- уке, которая родилась в русле филологии с целью критического прочтения литературных текстов, изучения и интерпретации источников с узкоприкладной за- дачей — подготовки текстов к изданто. Сейчас текстология расширила свои границы включением аспектов смежных наук — герменевтики (науки правильного толкования древних текстов - библии, античных рукописей и др.), семиотики, психолингвистики л др.
Текстологические методы извлечения знании, безусловно, используя основные положения текстологии, отличаются принципиально от ее методологии, во-первых, характером н природой своих источников (профес с и о н ал ь 11 ая специальная литература, а не художественная, живущая по своим особым законам), а во-вторых, жесткой прагматической направленностью изплечення конкретных профессиональных знаннК.
Среди методов извлечения знании эта группа является наименее разработанной, по ней практически нет никакой библиографии, поэтому дальнейшее изложение является как бы введением в методы изучения текстов в том виде, как это представляют авторы.
Задачу извлечения знаний из текстов можно сформулировать как задачу hohiuiu- ния и выделения смысла текста. Сам текст на естественном языке является лишь проводником смысла, а замысел и знания автора лежат во вторичной структуре (смысловой структуре плп макроструктуре текста), настраиваемся! над естественным текстом [Величковский, Капица, 1987], или, как с([)ормуннровано в работе [Файн, 1987], «текст не содержит п не передаст смысл, а является лишь ин- , струмептом для автора текста»,
При этом можно выделить две такие смысловые структуры:
М, — смысл, который пытался заложить автор, это его модель мира, и 儿厶一смысл, который постигает читатель, в данном случае инженер по знаниям (рис. 4,G)> в процессе интерпретации I. При этом Г — это словесное одошпе Mt, то есть результат вербализации V.
Сложность процесса заключается в пришшппадыюн невозможности совпадения знаний, образующих М1 ц М7, из-за того, что М1 образуется за счет bccii совокуп- ност" представлсшп!, потребиосте!!, интересов и опыта автора, Л1пш)малая часть которых находит отражение в тексте Г Соответственно, и М2 образуется в процес- се интерпретацни текста Тза счет привлечения всей совокупности научного и человеческого багажа читателя, Тикнм образом, два инженера по знаниям извлекут нз одного Т две различнее mqucji" М‘/ п М > 2”
Рис. 4.6. Схема извлечения знаний из специальных текстовРис. 4.6. Схема извлечения знаний из специальных текстов
Рис. 4.6. Схема извлечения знаний из специальных текстов
Рис. 4.6. Схема извлечения знаний из специальных текстов
Встает задача: выяснить, за счет чего можно достичь максимальной адекватности Муи М3, помня при этом, что понимание всегда относительно, поскольку это синтез двух смыслов «свое—чужое» [Бахтин, 1975],
Рассмотрим подробнее, какие источники питают модель М, и создают текст Г В работе [Сергеев, 1987] указаны два компонента любого научного текста. Это первичный материал наблюдений а и система научных понятий В в момент создания текста, В дополнение к этому, на наш взгляд, помимо объективных данных экспериментов н наблюдений, в тексте обязательно присутствуют субъективные взгляды автора % результат его личного опыта, а также некоторые «общие места» или «вода» 8. Кроме этого, любой научный текст содержит заимствования из других источников (статей, монографий) и т, д. При этом все компоненты погружены в языковую среду L. Можно записать:
Т = (a0%36)L.
Таким образом, компоненты научного текста можно представить в виде следующей схемы (рис. 4.7). При этом компоненты 0, у, часть а входят и в модель А厶.
Рис. 4.7. Компоненты научного текстаРис. 4.7. Компоненты научного текста
Рис. 4.7. Компоненты научного текста
Рис. 4.7. Компоненты научного текста
При извлечении знаний аналитику, интерпретирующему текст, приходится решать задачу декомпознцпн этого текста qa перечисленные выше компоненты для выд^е- ния истинно значимых для реализации базы знаний фрагментов. Сложность интерпретации научных и специальных текстов за^ючается еще и в том, что любои текст
приобретает смысл только в контексте, где под контекстом понимается окружение, в которое «погружен» текст,
Различают микро- и макроконтекст, Микроконтекст - это ближайшее окружение текста. Так, предложение получает смысл в контексте абзаца, абзац в контек- стк главы и т. д. ^икроконтвкст — это вся система знаний, связанная с предметной областью (то есть знания об особенностях и свойствах, явно не указанных в тексте). Другими словами, любое знание обретает смысл в контексте некоторого метазнания.
Теперь несколько подробнее о центральном звене процедуры извлечения зна- ння — о понимании текста. Классическим в текстологии является определение немецкого философа и языковеда В. фон Гумбольдта [Фон Гумбольдт, 1984]: «...Люди понимают друг друга не потому, что передают собеседнику знаки предметов, и даже не потому, что взаимно настраивают друг друга на точное и полное воспроизведение идентичного понятия, а потому, что взаимно затрагивают друг в друге одно п то же звено цепи чувственных представлений и зачатков внутренних понятии, прикасаются к одним и тем же клавишам инструмента своего духа, благодаря чему у каждого вспыхивают в сознании соответствующие, но не тождественные смыслы,»
Говоря на языке современного языкознания, понимание — это формирование «второго текста», то есть семантической структуры (понятийной структуры) [Сиротко-Сибирский, 1968], В нашей терминологии — это попытка воссоздания семантической структуры М, в процессе формирования модели 帽,т0 есть это первый шаг структурирования знаний.
Как происходит процесс понимания I? Одна из возможных схем изложена в работе [Соколов, 1947; Соколов, 1968]. Мы внесли несколько изменений в ?)ту схему в связи с тем, что в ней трактуется понимание текста на иностранном языке, а нас интересует понимание текста в новой для познающего субъекта предмегноц области, Кроме этого, дополним ее некоторыми положениями герменевтики. В целом полученная схема согласуется со стратегией изучения всего нового. Основными моментами понимания текста являются:
Выдвижение предварительной гипотезы о смысле всего текста (предугадывание),
Определение знаиенн" непонятных слов (то есть специальной терминологии).
Возникновение общей гипотезы о содержании текста (о знаниях).
Уточнение значения терминов и интерпретация отдельных фрагментов текста под влиянием общей гипотезы (от целого к частям),
Формирование некоторой смысловой структуры текста за счет установления внутренних связей между отдельными важными (ключевыми) словами и фрагментами, а также за счет образования абстрактных понятий, обобщающих конкретные фрагменты знаний,
127
Корректировка общей гипотезы относительно содержащихся в тексте фрагментов знаний (от частей к целому).
Принятие основной гипотезы, то есть формирование М〃
Следует отметить наличие как дедуктивной (от целого к частям), так и индук- тивной (от частей к целому) составляющей процесса понимания. Такой двуединый подход позволяет охватывать текст как смысловое единство особого рода, с его основными признаками, такими как связность, цельность, законченность и др. [Сиротко-Сибирский, 1968].
Центральными моментами процесса I являются шаги 5 и 7, то есть формирование смысловой структуры или выделение «опорных», ключевых, слов нли «смысловых вех» [Сиротко-Сибирский, 1968], а также заключительное связывание «смысловых вех» в единую семантическую структуру.
При анализе текста важно выявление внутренних связей между отдельными элементам» текста и понятиями. Традиционно выделяют два вида связей в тексте — эксплицитные (или явные связи), которые выражаются во внешнем дроблении текста, и имплицитные (скрытые связи). Эксплицитные связи делят текст на параграфы с помощью перечисления компонентов, вводных слов (или коннекторов) типа «во-первых..., во-вторых.,,, однако и т. д.*. Имплицитные, илн внут- решше1 связи между отдельными «смысловыми вехами» вызывают основное затруднение при попиманип.
Итак, спастическая структура текста образуется в сознании познающего субъекта с помощью звании о языке, знаний о мире, а также общих (фоновых) знании в тон предметной области, которой посвящен текст. «Тексту пишут для посвященных», Другими словами, если текст не является научно-популярным, то для его адекватного прочтения требуется некоторая подготовка.
Таким образом, путь к знаниям удлиняется еще на одно звено. Если мы раньше говорили, что сами текстологические методы редко употребляются как самостоятельный метод извлечения, а обычно используются как некоторая подготовка к коммуникативному взаимодействию, то теперь утверждаем, что и для прочтения текстов нужна подготовка, Какая же?
Подготовкой к прочтению специальных текстов является выбор совместно с экспертами некоторого «базового» списка литературы, который постепенно введет аналитика в предметную область. В этом списке могут быть учебники для начинающих, главы н фрагменты из монографий, популярные издания. Только после ознакомления с «базовым» списком целесообразно преступать к чтению специальных текстов,
Таким образом, на процесс понимания (нли интерпретации) 1и модель М? нли- яют следующие компоненты (рис. 4.8):
экстракт компонентов (а, 0, у, 0)\ почерпнутый из текста Т;
предварительные знания аналитика о предметной области со;
общенаучная эрудиция аналитика Е;
его личный опыт (р.
М「[(а, В* 6)'血& <Р]・
Процесс I — это сложный, не поддающийся формализации процесс, на который существенным образом влияют такие чисто индивидуальные компоненты, как когнитивный стиль познания, интеллектуальные характеристики и др.
Экстракт текста ТЭкстракт текста Т(ar₽(Y,e)(ar₽(Y,e)Личный опыт аналитикаЛичный опыт аналитикаОбщенаучная эрудиция аналитикаОбщенаучная эрудиция аналитикаПредварительные знания аналитика о ПОПредварительные знания аналитика о ПОРис. 4.6. Компоненты формирования смысла текстаРис. 4.6. Компоненты формирования смысла текста
Экстракт текста Т
Экстракт текста Т
(ar₽(Y,e)
(ar₽(Y,e)
Личный опыт аналитика
Личный опыт аналитика
Общенаучная эрудиция аналитика
Общенаучная эрудиция аналитика
Предварительные знания аналитика о ПО
Предварительные знания аналитика о ПО
Рис. 4.6. Компоненты формирования смысла текста
Рис. 4.6. Компоненты формирования смысла текста
Но процедура разбивки текста на части («смысловые группы»), а затем сгуи©”е сжатие содержимого каждого смыслового куска в «смысловую веху» является, видимо, основой для любого индивидуального процесса понимания, Такая компрессия (сжатие), текста в виде набора ключевых слов, передающих основное содержание текста, может служить удобной методологической основой для проведения текстологических процедур извлечения знании,
В качестве ключевого слова может служить любая часть реч 11 (су идеств 11 re/i ы i ое, прилагательное, глагол и т. д,) нлн их сочетание, Набор ключевых слов (НКС)— это набор опорных точек, по которым развертывается текст при кодировании в намять н осознается при декодирован ни, это семантическое ядро цельности [Си- ротко-Спбирскнн, 1968].
Пример 4.7
В качестве примера приведем результаты эксперимента по ф()рм11]х)паши()ИКС. Знания извлекались из следующего текста [Узпо( Испдзука, 1989].
«Теория фреймов относится к психологическим понятиям, касаюпшмся понимания того, что мы видим и слышим. Эти способы в ос 11 р 11 ят 11 я т 1)а кт у I()' гся с послсдопатсль- iioii точки зрения, па нх основании осушсствляется копцсптуа.чьпос моделирование, целесообразность подученных >и)дслсп нсслслустся вместе с различными И]и)блемамн, иозпшеаюишми и этих двух областях.
Для осознания того факта, что палаппал шкрормацля в этих областях имеет едмлетпеп- Н1>由 смысл, человеческая память прежде всего должна быть способна увязывать эту информацию со снснна-цьными концептуальными объектами, В противном случае пс удастся систематизировать пп(])ормацшо( которая выглядит разро:шсппо|"|, В основе теории фреймов лежит восприятие 巾актов посредством сопостал/юппя пол>гчснно1] извне информации с icoiiкрепiыми ■)лсмоптам11 и значениями, а также с рамками, онре-
деленными для каждого концептуального объекта в нашей памяти. Структура, пред* ставляющая эти рамки, называется фреймом. Поскольку между различными концеп* туальными объектами имеются некоторые аналогии, то образуется иерархическая структура с классификационными и обобщающими свойствами. Собственно, она представляет собой иерархическую структуру отношений типа <абстрактное-конкретное*. Сложные объекты представлены комбинацией нескольких фреймов, другими словами, они соответствуют фреймовой сети. Кроме того, каждый фрейм дополняется связанными с ним фактами и процедурой, обеспечивающей выполнение запросов к другим фре1!мам.
Причиной, по которой представление знаний фреймами выглядит достаточно точным, является возможность более полного описания процесса мышления человека посредством определения крупной и структурирован ной основной единицы представления знан“В н более тесной связи знаний, основанных на фактах, и процедурных знаний. Тем нс менее, как было отмечено ее автором, теорию фреймов следует скорее отнести к теории постановки задач, чем к результативной теории. Можно считать, что опа существенно повышает уровень и детализирует механизм памяти человека, выводов, понимания и обучения.» ‘
В группе из 34 испытуемых не было получено ни одного совпадающего НКС и, соответственно, все структуры существенно отличались. Для примера приведем две работы (рис. 4.9, а 6).
Интересно, что одна из гипотез лингвостатпстики о том, что наиболее употребляемые слова являются наиболее важными с точки зрения содержания текста, то есть отражают его тематическую структуру, частично подтвердилась.
Следует сказать несколько слов о том. почему мы выделяем три вида текстологических методов (см. рис. 4」):
анализ специально!! литературы;
анализ учеонпков;
анализ методик.
Перечисленные три метода существенно отличаются, во-вторых, по степени кон- цечп'рированностп специальных знании, и, во-вторых, по соотпошенню специальных и фоновых знаний. Наиболее простым методом яюяется анализ учео- нпков в которых логика изложения обычно соответствует логике предмета и поэтому макроструктура такого текста будет, наверное, более значима^ структура текста какой-нибудь специально!! статьи. Анализ методик затруднен Z азежатоетью “з」。歴^ и практическим отсутствием 环小黑黑:農 фоновых знаний, облегчающих иоиимание для 口吁/靠久爲 НО рекомендовать лля「冲⑴mEi работы комезпню перечисленных м
ЛОВ.
В заключение предлож!^ одну из возможных практических-
стов с целью извлечения и структурирования знании.
а
<теория фреймов ТФ
(ISA — теория постановки задач),
(АКО — психологическое понятие),
(НАЗНАЧЕНИЕ — систематизация+ описание мышления).
(ПРИНЦИП — восприятие внешних факторов и сопоставление с фреймами).
(ОСНОВНОЕ ПОНЯТИЕ — фрейм, сеть фреймов)>
<фрейм
(ISA — понятие ТФ),
(ОПРЕДЕЛЕНИЕ -...), (-)>
б
Рис. 4.9, Примеры смысловых структур, извлеченных из текста
Алгоритм извлечения знаний из текста
1.
Составление «базового» списка литературы для ознакомления с предметной областью и чтение по списку.
2.
Выбор текста для извлечения знаний.
3.
Первое знакомство с текстом (беглое прочтение). Для определения зна- чення незнакомых слов - консультации со специалистами нли привлечение справочной литературы.
4.
Формирование первой гипотезы о макроструктуре текста*
5.
Внимательное прочтение текста с выписыванием ключевых слов и выражений, то есть выделение «смысловых вех?» (компрессия текста).
6.
Определение связей между оючевыми словами, разработка макроструктуры текста в форме графа млн «сжатого» текста (реферата).
7.
Формирование поля знаний на основании макроструктуры текста.
4-4- Простейшие методы структурирования
Методы извлечения знаний, рассмотренные выше, являются непосредственной подготовкой к структурированию знаний. Данный параграф посвящен изучению практических методов структурирования знаний.
Алгоритм для «чайников»
В качестве простейшего прагматического подхода к формированию поля зна- Hiiii начинающему инженеру по знаниям можно предложить следующий алго~ ритм для «uaiiHiucQB» (рис. 4.10).
Определение входных {X} и выходных {Y} данных. Этот шаг совершенно необходим, так как ои определяет направление движения в поле знании — от X к Y. Кроме того, структура входных л выходных данных существенно влияет на форму и содержание поля знаний. На этом шаге определение может быть достаточно размытым, в дальнейшем оно будет \гточняться.
Составление словаря терминов и наборов ключевых слов N. На этом шаге про* водится текстуальный анализ всех протоколов сеансов извлечения знании и выписываются все значимые слова, обозначающие понятия, явления, процессы, предметы, действия, признаки п т. п. При этом следует попытаться разоб* раться в значении терминов. Важен ослгысленньш словарь.
Выявление объектов и понятии {А}. Производится «просеивание» словаря N ” выбор значимых для принятия решения понятий и их признаков. В шеале на этом шаге образуется полный систематический набор терминов нз какой-либо области знаний.
Выявление связен между понятиями. Все в мире связано. Но определить, как направлены связи, что ближе, а что дальше, необходимо на этом этапе. Таким
образом, строится сеть ассоциаций, где связи только намечены, но пока не поименованы. Например, понятия «день», «ночь», «утро» и «вечер» явно как-то связаны, связаны также и понятия «красный флаг» и «красный галстук», но характер связи тут существенно отличен.
5 Выявление метапонятий и детализации понятий. Связи, полученные на предыдущем шаге, позволяют инженеру по знаниям структурировать понятия и как выявлять понятия более высокого уровня обобщения (метапонятия), так и детализировать на более низком уровне.
Построение пирамиды знаний. Под пирамидой знаний мы понимаем иерархическую лестницу понятии, подъем по которой означает углубление понимания и повышения уровня абстракции (ббобщенности) понятий. Количество уровней в пирамиде зависит от особенностей предметной области, профессионализма экспертов и инженеров по знаниям.
Определение отношений {RA}. Отношения между понятиями выявляются как внутри каждого из уровней пирамиды, так и между уровнями. Фактически на этом ш^ге даются имена тем связям, которые обнаруживаются на шагах 4 и 5, а также обозначаются причинно-следственные, лингвистические, временные и другие виды отношений.
Рис. 4.10. Стадии структурирования знаний — алгоритм для «чайников»Рис. 4.10. Стадии структурирования знаний — алгоритм для «чайников»Определение стратегий принятия решений (S) Определение стратегий принятия решения, то есть выявление цепочек рассуждений, связывает все сформированные ранее понятия и отношения в динамическую систему поля знаний. Именно стратегии придают активность знаниям, именно они «перетряхивают» модель М в поиске от X к Y.
Рис. 4.10. Стадии структурирования знаний — алгоритм для «чайников»
Рис. 4.10. Стадии структурирования знаний — алгоритм для «чайников»
Однако на практике при использовании данного злгоритма можно столкнуться С непредвиденными трудностями, связанными с ошибками на стэдии извлечения знаний и с особенностями знаний различных предметных областей. Тогда ваз-. ” можно привлечение других, бол&с «прицельных^ методов структурнро欣ния. Пр” этом на разных этапах схемы (рис. 4.10) возможно использование различных методик..
4-4.2. Специальные методы структурирования
Используя npeqcTaBJicHHbi" на рис. 4.10 алгоритм, инженер по знаниям может испытывать необходимость в применении специальных методов структурирования на разных шагах алгоритма. При этом, естественно, для таких простых н очевидных шагов, как определение входных и выходных понятий или составление словаря, никаких искусственных методов предлагаться не будет.
Методы выявления объектов, понятий и их атрибутов
Понятие нлн концепт 一 это обобщение предметов некоторого класса по их специфическим признакам. Обобщенность является сквозной характеристикой всех когнитивных психических структур, начиная с простейших сенсорных образов. Так, понятие *?автомобиль» объединяет множество различных предметов, но все б)пп имеют четыре колеса, двигатель и массу других деталей, позволяющих перевозить па них грузы и людеИ Существует ряд методов выявления понятий пред- метио!! области в общем с нов а ре терминов, к о торы ii составлен на основании се* £шсов извлечения знаний. При этом важно выявление не только самих понятий, но к их признаков.
Возвращаясь к терминологии, введенио/! в параграфе 1.3, на этом этапе определяются также пнтенсион;1-чы п экстснсноналы понятий предметнои ооластн. Ин- тенспопал очерчивает понятие через взаимосвязь значимых признаков, а эк- стснснонал — через перечисление конкретных экземпляров объекта.
Если задача выделения реа_пьиых объектов А связана только с наблюдательностью п лингвистическими способностями эксперта и инженера по знаниям, то определение метапонятш'! В требует от них умения проводить операции обобщения и классификации, которые никогда не считались тривна-тьнымн.
Поспелов Д. А, [Поспелов. 1986] предложил ряд подходов к созданию основ теории обобщения и классификации применительно к ситуационному управлению и искусственному интеллекту в целом, а также выделил ряд осооенкостей задач формирования'понятий. Среди них особое место занимает выявление прагматически значимых признаков для формирования понятии, способствующих решению задачи.
Сложность заключается в том, что для многих понятии практически невозможно однозначно определить их признаки, это связано с различньшп формами репре* зеитацин понятий в памяти человека.
Все методы выявления понятий мы разделили на:
.традиционные, основанные на математическом аппарате распознавания образов н классификации;
• нетрадиционные, основанные на методологии инженерии знаний.
Еслн первые достаточно хорошо освещены в литературе, то вторые пока менее известны.
Пример 4.8
Интересный эксперимент по выявлению понятий описан в работе [Кук, Макдональд, 1986].
Тридцати студентам, имеющим права на вождение автомобиля, предложили составить словарь терминов предметной области с помощью четырех методов:
Формирование перечня понятий (17 %).
Интервьюирование специалистов (35 %).
Составление списка элементарных дсйствл(] (18 %).
Составление оглавления учебника (30 %).
Цифры в скобках характеризуют продуктивность соответствующего метода, то есть показывают, какой процент понятий из общего выявленного списка (702 термина) был получен соответствующим методом. Для классификации понятно были привлечена еще два участника эксперимента, которые разделили 702 выявленных понятия на семь категории (методом сортировки карточек). Таблица 4.5 отражает численные данные концептуализации.
Таблица 4.5. Данные концептуализации
Категории
Процент от общего числа терминов
Процент от общего числа терминов, полученный
соответствующим методом
Список операций
Составление оглавления
Перечень понятий
Интервьюирование
Объяснение
6
5,5
7,2
7Q
4,9
Общие правила
22,0
43,6
18,9
36,8
4.9
Режимные
9.0
9,8
8.4
11.6
6,6
правила
Понятия
42,0
18,4
38.9
8,5
77,7
Процедуры
9,0
5.1
9,5
25,6
1.2
Факты
9,0
15,0
12.5
8,9
1.2
Прочие
3,0
2,6
4,6
1.6
3,5
ПОНЯТИЯ
В целом результаты показали, что для выявления непосредственно концептов наиболее результативными оказались методы интервьюирования и составления оглавления учебника. Однако наибольшее число общих правил было порождено в методе списка действий. Таким образом, еще раз подтвердилось утверждение о том, что нет «лучшего» метода, есть методы, подходящие для тех пли иных ситуаций и типов знаний.
Интересно, что число правил — продукций «если — то» — составило небольшой процент во всех четырех методах. Это говорит о том, что популярная продукци- он нал модель вряд ли является естественной для человеческих моделей пепоезен- тации знаний.
Методы выявления связей между понятиями
Конц&пты не существуют независимо, он и включены в общую понятийную структуру с помощью отношений. Выявление связей между понятиями при разработке баз знаний доставляет инженеру по знаниям немало проблем. То, что знания в памяти — это некоторые связные структуры, а не отдельные фрагменты, общеизвестно и очевидно. Тем не менее основной упор в существующих моделях представления знаний делается на понятия, а связи вводят весьма примитивные (в основном причинно-следственные).
В последних работах по теории ИИ все больше внимания уделяется взаимосвязанности структур знаний. Так, в работе [Шенк, Бирнбаум, Мей, 1989] введено понятие сценария (script) как некоторой структуры представления знаний. Основу сценария составляет КОП (концептуальная организация памяти) и мета- КОПы — некоторые обобщающие струстуры.
Сценарии, в свою очередь, делятся на фрагменты — или сцены (chunks). Связи между фрагментами — временные или пространственные, внутри фрагмента — самые различные: ситуативные, ассоциативные, ф\шкц и опальные и т. д.
Все методы выявления таких связей можно разделить на две группы:
Формальные.
Неформальные (основаны на дополнительной работе с экспертом).
Неформальные методы выявления связей приделывает инженер по знаниям для того, чтобы вынудить эксперта указать явные н неявные связи между понятиями. Наиболее распространенным является метод «сортировка карточек» в группы [Волков, Ломнев, 1989; Rabbits, Wright. 1987], широко применяемый п для формирования понятий. Другим неформальным методом является построение зам к- иутых кривых. В этом случае эксперта просят обвести замкнуто" кривой связанные др\т с другом понятия [Olson, Reuter, 198". Этот метод может оыть реализован как на бумаге, так п на экране дисплея. В этом случае можно говоршъ о привлечении элементов когнитивной графики [Зенкин, 1991].
После того как определены связи между поиятнямп, все понятия как оы распадаются на группы. Такого рода группы представляют собой метапонятия, присвоение имен которым происходит на следующей стадии процесса структурирования.
Методы выделения метапонятий и детализация понятий (пирамида знаний)
Процесс образования ^加〃打。〃加* то есть интерпретаипп групп понятии, полученных на предыдушен стадии, как н обратная процедура - детализация (р?::; рупнепне) понятий, - видимо, прннишшальн。не поддающиеся формалпзащш операции. Они требуют высокой квалнфнзит экспертов, а также собностеп к «наклеиванию» лингвистических ярлыков. Если на рпс. 411 показа-
нн схемы обобщения и детализации на тривиальных примерах, то в реальных предметных областях эта задача оказывается весьма трудоемкой. Прн этом независимо от того, формальными нли неформальными методами были выявлены понятия илн детали понятий, присвоение имен которым или интерпретация их - всегда неформальный процесс, в котором инженер по знаниям просит эксперта дать название некоторой группе понятий или отдельных признаков.
фжхф^юоюофжхф^юоюоРис. 4.11. Обобщение и детализация понятийРис. 4.11. Обобщение и детализация понятий
фжхф^юоюо
фжхф^юоюо
Рис. 4.11. Обобщение и детализация понятий
Рис. 4.11. Обобщение и детализация понятий
Знания медсестрыЗнания медсестрыРис. 4.12. Пирамиды знанийРис. 4.12. Пирамиды знанийизU2U1изU2U1
Знания медсестры
Знания медсестры
Рис. 4.12. Пирамиды знаний
Рис. 4.12. Пирамиды знаний
из
U2
U1
из
U2
U1
Это не всегда удается. Так, в системе АВТАНТЕСТ [Гаврилова, Червинская, 1992] при образовании метапонятий, полученных методами кластерного анализа, интерпретация заняла несколько месяцев и не может считаться удовлетворительной. Это связано с тем, что формальные методы иногда выделяют «искусственные» концепты, в то время как неформальные обычно — практически используемые “ потому легко узнаваемые понятия.
Методы построения пирамиды знаний обязательно включают использование наглядного материала — рисунков, схем, кубиков. Уровни пирамиды чаще возникают в сознании инженера по знаниям нменн。как некоторые образы.
Построение пирамиды знаний может быть основало и па естественной иерархии предметной области, например связанной с организационной структурой предприятия или с уровнем компетентности специа,пистов (рис. 4.12).
из
U2
U1
Методы определения отношений
Если на стадии 4 (см. рис. 4.10) мы выявили связи между понятиями н использо* валн их на стадиях 5 и 6 для получения пирамиды знаний, то на стадии 7 мы даем имена связям, то есть превращаем их в отношения.
В работе [Поспелов, 1986] указывается на наличие более 200 базовых видов различи ых отношений, существующих между понятиями. Предложены рэзлнчные классификации отношений [Келасьев, 1984; Поспелов, 1986]. Следует только подчеркнуть, что помимо универсальных отношений (пространственных, вре* менных, причинно-следственных) существуют еще и специфические отношения, присущие той или иной предметной области [Гаврилова, Червинская, Яшин, 1988].
Интересные возможности к структурированию знаний добавляют системы когнитивной графики. Так, в системе OPAL [Olton., Muser, Combs et aL, 1987] эксперт может манипулировать на экране дисплея изображениями простейших понятий п строить схемы лечения заболеваний, обозначая отношения явными линиями, которые затем именуются.
Предлагаемая в данном учебнике методология структурирования опирается на современные представления о структуре человеческой памяти и формах репрезентации информации в ней [Величковский, 1982].
Скудность методов структурирования объясняется тем, что методологическая база инженерии знаний только закладывается, а большинство инженеров по знаниям проводит концептуализацию, руководствуясь наиболее дорогими и неэффективными способами — «проб и ошибок» и «по наитию», то есть исходя из соображений здравого смысла.
4.5. Состояние и перспективы
автоматизированного приобретения знаний
В данном параграфе мы рассмотрим авто.матнзпрованный подход к проолеме извлечения и струкпрированля знаний, традиционно называемый приобретение.^ знаний (knowledge acquisition).
Поскольку основную трудность в создании интеллектуальных систем представляет домашинный этап проектировать, выполняемый инженером по знаниям (или анмитиком), - анализ предметной области, получение знании н нх :тр^к- турнрованне, - эти процедуры традиционно считаются ^узкнм местом* (bottleneck" проектирования экспертных систем [Gaines, 1987; Boose, 1990]. Последние 5-6 лет усилия разработчиков направлены на создание инструментальном про- 「раммнз; поддержки деятельности инженера по знаниям и эксперта именно на
этих этапах.
4.5 J. Эволюция систем приобретения знаний
Первое поколение таких систем появилось в середине 80-х — это так называемые системы приобретения знаний (СПЗ) (TEIRESIAS [Davis, 1982], SIMER+ MIR [Осипов, 1988], АРИАДНА [Моргоев, 1988]). Это средства наполнения так называемых «пустых» ЭС, то есть систем, из БЗ которых изъяты знания (напри- мер, EMYCIN — EMPTY MYCIN, опустошенная медицинская ЭС MYCIN со специальной диалоговой системой заполнения базы знаний TEIRESIAS). Их авторы считали, что прямой диалог эксперта с компьютером через СПЗ поможет сократить жизненный цикл разработки. Однако опыт создания и внедрения СПЗ продемонстрировал несовершенство такого подхода.
Основные недостатки СПЗ I поколения:
Слабая проработка методов извлечения п структурирования знаний.
Жесткость модели представления знаний, встроенной в СПЗ и связанной с привязкой к программно!! реализации.
Ограничения на предметную область.
Таким образом, традиционная схема разработки СПЗ I поколения:
создание конкретной ЭС —> опустошение БЗ —> разработка СПЗ для новых наполнений БЗ —> формирование новой БЗ для другой ЭС
оказалась несостоятельной для промышленного применения.
Второе поколение СПЗ появилось в конце 80-х и было ориентировано на более широкий модельный подход [Gaines, 1989; Борисов, Федоров, Архипов, 1991] с акцентом на предварительном детальном анализе предметной области. Так, в Европе широкое применение получила методология KADS (Knowledge Acquisition and Documentation Structuring) [Wielinga et al., 1989], в основе которой лежит понятие ннтерпретационнон модели, позволяющей процессы извлечения, структурирования и формалнзацнн знаний рассматривать как «интерпретацию» лингвистических знанн" в другие представления и структуры.
KADS-методология
Рнсунок 4.13 демонстрирует преобразование знаний согласно методологии KADS [Breuker, Wielinga, 1989] через спецификацию пяти шагов анализа ^идентифика- 屮^ 一 концептуализация — гносеологический уровень — логический уровень — уро- 8емь анализа выполнениям и стадии или пространства проектирования.
Результатом анализа являскя концептуальная модель экспертизы, состоящая нз четырех уровней (уровня области — уровня вывода — уровня задачи — стратегического уровня), которая затем вводится в пространство проектирования и преобразуется в трехуровневую модель проектирования (рис. 4.14).
Пр” решении реальных задач KADS использует библиотеку ннтерпретацион- Hbix моделей, описывающих общие экспертные задачи, такие как диагностика, мониторинг (см. классификацию 1 из п. 2.2) и пр., без конкретного наполнения объектами предметной области. Интерпретационная модель представляет собой
концептуальную модель без уровня области. На основании извлеченных лингвистических данных происходит отбор, комбинация и вложение верхних уровней модели, то есть уровней вывода и задачи, которые наполняются конкретными объектами и атрибутами из уровня области и представляют в результате концеп- туальную модель рассматриваемой задачи. На рнс. 4.15 представлена модель жизненного цшела KADS,
ЛингвистическиеданныеЛингвистическиеданныеКонцептуальнаямодельКонцептуальнаямодельwubhb OBtHedsod 匚wubhb OBtHedsod 匚ИдвнтификвцияИдвнтификвцияГносеологическийI уровеньГносеологическийI уровеньМодельпроектированияМодельпроектированияДетальная модель проектированияДетальная модель проектированияUSHBBOdHlMBOd匚 отнохшаьоо^сUSHBBOdHlMBOd匚 отнохшаьоо^с\ Логический\ уровень\ Логический\ уровеньУровень анализа выполненияУровень анализа выполнения*军匚вне ххшоа>*军匚вне ххшоа>tt
Лингвистическиеданные
Лингвистическиеданные
Концептуальнаямодель
Концептуальнаямодель
wubhb OBtHedsod 匚
wubhb OBtHedsod 匚
Идвнтификвция
Идвнтификвция
Гносеологический
I уровень
Гносеологический
I уровень
Модельпроектирования
Модельпроектирования
Детальная модель проектирования
Детальная модель проектирования
USHBBOdHlMBOd匚 отнохшаьоо^с
USHBBOdHlMBOd匚 отнохшаьоо^с
\ Логический
\ уровень
\ Логический
\ уровень
Уровень анализа выполнения
Уровень анализа выполнения
*军匚вне ххшоа>
*军匚вне ххшоа>
t
t
Рис. 4.13. Методология KADS
Первые системы программной поддержки КADS-методологии представлены набором инструментальных средств KADS Power Tools [Schreiber G., BreukerJ. et al. 1988], В этот набор входят следующие системы: редактор протоколов PED (Protocol Editor); Редактор системы понятий (Concept Editor); Редактор концептуальных моделей СМЕ (Conceptual Model Editor) и 11М - бпб л йоте карь 1ML (Interpretation Model Librarian),
Редактор протоколов — программное средство, помогающее инженеру по знаниям в проведении анализа знаний о предметной области па лингвистическом уровне, При работе со знаниями на этом уровне исходным материалом являются тексты (протоколы) — записи интервью с экспертом, протоколы «мыслей вслух» и любые другие тексты, полезные с точки зрения инженера знаний. Редактор протоколов реализован как гипертекстовая система, обеспечивающая выделение фрагментов в анализируемом тексте, установление связей между фрагментами, группирование фрагментов, аннотирование фрагментов. Фрагменты могут иметь любую длину 一 от отдельного слова до протокола в целом. Фрагменты могут перекрывать друг друга.
Рис. 4.14. Основные модели KADS
Возможны следующие типы связей между фрагментами'.
аннотация (связь между фрагментом протокола и некоторым текстом, введенным инженером знаний для спецификации зтого фрагмента);
член группы (связь между фрагментом и названием — именем группы фрагментов; объединение фрагментов в группу позволяет инженеру 3iiainiii структурировать протоколы, при этом группа фрагментов получает уникальное имя);
поименованная связь (связь между двумя фрагментами, имя связи выбирается инженером знании);
понятийная связь (поименованная связь между фрагментом и понятием; обычно используется, если фрагмент содержит определение понятий).
Редактор понятий помогает инженеру знаний организовывать предметные знания в виде набора понятий и связывающих их отпонюний. Каждое понятие имеет имя и может иметь атрибуты; каждый атрибут может иметь значение. Какие именно атрибуты используются — это определяет инженер знанип с учетом специфики предметной области. С помощью Редактора понятий инженер знаний может вводить произвольные отношения между понятиями н создавать иерархические структуры по тому или иному отношению. Существует единственное отношение (ISA), семантика которого «встроена» в Редактор, Если инженер знаний устанавливает это отношение между двумя понятиями, тс имеет место наследование атрибутов,
Рис. 4.15, Жизненный цикл KADS
ИМ-библиотекарь помогает инженеру знаний проводить анализ предметных знаний на эпистемологическом уровне. Основное назначение Библиотекаря состоит в том, чтобы помочь инженеру знании выбрать одн\т или более ИМ, подходящих для исследуемой проблемной области (ПО). Помощь Библиотекаря проявляется в чисто информационном аспекте. Вначале Библиотекарь демонстрирует пользователю иерархию типов задач, для которых в библиотеке имеются ИМ. После того как пользователь выбрал интересующую его ИМ, ему демонстрируется ее краткое описание и список атрибутов, включающий в себя следующие атрибуты: «краткое описание», «определение», «структура задачн^, ^стратегии», «ГЮ-зна-
нмя» Выбрав атрибут «определение», пользователь сможет увидеть на экране графическое изображение структуры вывода, элементами которой являются источники знаний и метаклассы. Как источники знаний, так и метаклассы имеют свои наборы атрибутов; инженер знаний может просмотреть их, указывая на соответствующий элемент.
Психосемантика
Помимо идеологии KADS на разработку СПЗ II поколения большое влияние оказали методы смежных наук, в частности психосемантики, одного из молодых направлений прикладной психологии [Петренко, 1988; Шмелев, 1983], перспективного инструмента, позволяющего реконструировать семантическое пространство памяти и тем самым моделировать глубинные структуры знаний эксперта (см. параграф 5.1). Уже первые приложения психосемантнки в ИИ в середине 80-х годов позволили получить достаточно наглядные результаты [Кук, Макдональд, 1986]. В дальнейшем развитие этих методов шло по линии разработки удобных пакетов прикладных программ, основанных на методах многомерного шкалирования, факторного анализа, а также специализированных методов обработки репертуарных решеток [Франселла. Баннистер, 1987] (параграф 5.2), Примерами СПЗ такого типа являются системы KELLY [Похплько, Страхов, 1990], MADONNA [Терехина, 1988], MEDIS [Алексеева и др,, 1989]. Специфика конкретных приложении требовала развития также «нечисленных» методов, использующих парадигму логического вывода. Примерами систем этого направления служат системы ETS [Boose, 1986] и AQUINAS [Boose, Bradshaw, Schema, 1988]. Успехи СПЗ II поколения позволили значительно расширить рынок ЭС, который к концу 80-х оценивался в 300 млн долларов в год [Попов, 1991], Тем не менее и эти системы были не свободны от недостатков, к важнейшим из которых можно отнести:
несовершенство интерфейса, в результате чего неподготовленные эксперты не способны овладеть снстсмоК и отторгают ее;
сложность настройки на конкретную профессиональную языковую среду;
необходимость разработки дорогостоящих лингвистических процессоров для анализа естественно-языковых сообщений н текстов.
Третье поколение СПЗ - KEATS [Eisenstadt et aL, 1990]f MACAO [Aussenac- Gilles, Natta, 1992]. NEXPERT-OBJECT [NEXPERT-OBJECT, 1990] - перенес- ji° акцент в проектировании с эксперта на инженера по знаниям [Гаврилова, 1988; Gruber, 1989]. Новые СПЗ —это программные средства для аналитика, более сложные, гибкие, а главное использующие графические возможности со- временных рабочих станций к достижения CASE-технолог!in (Computer-Aided Software Engineering). Эти системы позволяют не задавать заранее интерпретационную модель, а формировать структуру БЗ динамически.
Существуют различные класспфикацлл СПЗ — по выразительности п мощиос- тн инструментальных средств [Попов, 1988]; по обобщеиным характеристикам [Boose, 1990]; в рамках структурно-функционального подхода [Волков, Ломнев, 1989]; интегрированная классифннация предложена в работе [Гаврилова, Червинская, 1992],
Уиитмвая новейшие тенденции в инженерии знаний можно преложить след* тую схему таксономии СПЗ, представленную на рис. 4.16.
Системы приобрегтбния знаний
55ХШ53ОХЗС eowuw W81s|
SX^ZS8OSOC sa₽©I13О25БЖ s
工,gg HHHBaodmooi сед
gg WBMHSOdHiaolIЦ I ORGd&w*
иога历芒 ом
工 g-quedE101。Qd
L—I emxupHE bh 專巴Hand。
」 aoAde§E
J AuuAdj BH HMtlElHexdc 丄 tudsuuxe RH
а工工 EHEBl®3) anФЕ.ОФ7£ф^фа^о
Е.ООЗЖ05П8 m500T-x^s_^
кххфхфзх^сёше^о
rnusu
丄'-'u15IgzwmISEgH 一
丄
ОС IQ ©зюхюга^-
waLHHU KhetTBE 一
Ене MhErren 一
Однако и современные СПЗ не полностью лишены серьезных недостатков СПЗ I н II поколенп1[, большая часть которых обусловлена отсутствием теоретической коицепцшт проектирования БЗ, В результате эта область до настоящего времени спрг1ведл![во считается скорее «искусством», чем наукой и основана на «ad hoc» технологии (то есть применительно к случаю).
4-5.2. Современное состояние автоматизированных систем приобретения знаний
Анализ современного состояния программных средств приобретения знаний и поддержки деятельности инженера по знаниям позволяет выявить две группы проблем, характерных для существующих СПЗ:
Методологические проблемы.
Технологические проблемы.
А. Методологические проблемы
Основная проблема, встающая перед разработчиками, — отсутствие теоретического базиса процесса извлечения и структурирования знаний - порождает дочерние более узкие вопросы и казусы на всех этапах создания интеллектуаль- ннх систем. Даже тщательно проработанная методология KADS, описанная в предыдущем параграфе, страдает громоздкостью и явной избыточностью. Ниже перечислены наиболее общие из возникающих проблем в последовательности, соответствующей стадиям жизненного цикла (см. рис. 2.4):
размытость критериев выбора подходящей задачи;
слабая проработанность теоретических аспектов процессов извлечения знаний (философские, лингвистические, психологические, педагогические, дидактические и другие аспекты), а также отсутствие обоснованной классификации методов извлечения знаний и разброс терминологии;
отсутствие единого теоретического базиса процедуры структурирования знании;
жесткость моделе!! представления знаний, заставляющая разработчиков обеднять и урезать реальные знания экспертов;
несовершенство математического базиса моделей представления знаний (дескриптивный, а не конструктивный характер большинства имеющихся математических моделей);
эмпиричность процедуры выбора программного ииструметп'ария и процесса тестирования (отсутствие критериев, разрозненные класснфшсашш, etc.).
Б. Технологические проблемы
Большая часть технологических проблем является естественным следствием методологических и порождена ими. Наиболее серьезными из технологических проблем являются:
отсутствие концептуальной целостности и согласованности между отдельными приемами и методами шгженерни знании;
недостаток или отсутствие квалифицированных специалистов в области инженерии знаний;
отсутствие технико-экономических показателе/[ оценки эффектывности ЭС (в России);
несмотря на обилие методов извлечения знаний (фактически более 200 в обзо- Ре [Boose, 1990]), практическая недоступность методических материалов по практике проведения сеансов извлечения зиагшк;
явная неполнота и недостаточность имсюидихся методов структурирования знаний [Кук, Макдона^чьд, 1986; Гаврилова, Червинская, 1992], отсутствие классификаций и рекомендации но выбору подходящего метода;
несмотря на обилие рынка программных средств, недостаток промышленных систем поддержки разработки и их узкая направленность (зависимость от платформы, языка реализации, ограничений предметной области), разрыв между ЯПЗ и языками, встроенными в «оболочки» ЭС;
жесткость программных средств, их низкая адаптивность, отсутствие индивидуальной настройки на пользователя и предметную область;
слабые графические возможности программных средств, недостаточный учет КОП1ИТИВНЫХ и эргономических факторов;
сложность внедрения ЭС,^обусловленная психологическими проблемами персонала и неприятия новой технологии решения задач.
4.6. Примеры методов и систем приобретения знаний
Данный параграф посвяшен обзору некоторых наиболее известных методов и систем приобретения знаний, на основе переработки материалов из работ [Осипов, 1990; Молокова, 1992; Осипов, 1997].
Автоматизированное структурированное интервью
Впервые структурированное интервью применено при создании системы TEI- RESIAS [Davis, 1982] для формирования новых правил и новых понятий. Для этих целей в системе использованы следующие соображения: в случае неудачи в режиме консультации (плп тестирования) система предлагает эксперту выделить причины неудачи. Контекст, полученный в результате этого, позволяет системе сформировать некоторые «ожидания», характеризующие содержание нового правила, которое будет вводиться экспертом для устранения неудачи.
Система ЛО(7£Г [Bennet, 1985] — это первая попытка заменить инженера знаний программной системой на начальном этапе приобретения знаний. Эта снстелга беседует с экспертом как инженер по знаниям, стремящийся понять, как концептуально могут быть организованы экспертные знания, необходимые для создания диагностической ЭС.
В системе MOLE fEshelman, 1987] приобретение знаний осуществляется в два этапа: на первом этапе используется структурированное интервью н зкеперту (пли инженеру по знаниям) предлагается ввести список событи!! предметной области 11 определить связи между ними; на втором этапе выполняется контекстное приобретение знаний, как это сделало в системе TEIRESIAS.
Система состоит из двух частей: интерпретатора базы предметных знании и подсистемы приобретения знании. Последняя поддерживает как процесс первоначального заполнения БЗ, так н процесс отладки н уточнения БЗ.
Интерпретатор БЗ ориентирован на класс диагностических задач п осуществляет вывод решения путем сопоставления заранее определенного множества пшотез (о причине неисправности, о заболевании и т. д.) с совокупностью наблюдении (симптомов, показаний приборов п г д.). Иными словами, интерпретатор снете* мы MOLE реализует некоторый вариант метода эвристической класспфикацни.
В базе знаний MOLE первоначально существуют знания о том, какие типы когнитивных структур необходимы для осуществления вывода и как распознать зна- ння того или иного типа в пнформацкн, сообщаемой экспертом. MOLE запрашн- вает у эксперта список объектов, играющих роли гипотез и наблюдений. Эксперт, кроме того, должен указать, какие пары «наблюдение — гипотеза» н «гипотеза — гипотезам ассоциативно связаны.
Результатом этого этапа извлечения знаний является сеть объектов. Затем MOLE пытается получить дополнительную информацию: о типе объекта (является объект наблюдаемым нли выводимым); о природе ассоциативной связи (какой тнп знаний лежит в основе ассоциации — объясняющие, предсказывающие илн иные); о направлении ассоппативног! связи, о численной оценке «силы» ассоциа^ тивной связи. Однако MOLE понимает, что эксперт не всегда может предоставить такую информацию. Поэтому на этом этапе MOLE использует стратегию ожиданий: она пытается вывести пеобхолнмую информацию из сообщений эксперта на основе своих ожиданий.
На этапе начального формирования базы знаний MOLE назначает численные веса ассоциативных связей по умолчанию на основе следующих посылок:
каждое наблюдение должно быть обз)яспено некоторой гипотезой;
только одна из гипотез, объясняющих данное наблюдение, является в каждом конкретном случае наиболее вероятно";
сумма оценок для связей дашюго наблюдения с объясняющими его гшютеза- MU равна единице.
Тогда по умолчанию MOLE назначает лля каждой связи данного наблюдения оценку, полученную как частное от деления единицы на число гипотез, объясняющих данное наблюдение. MOLE предполагает, что если эксперт сообщил тге- сколько объяснений для одного и того же объекта, то, вероятно, он может сообщить и знания, позволяющие различать эти объяснения.
Система приобретения знаний S/1ZT [Markus, 1987] со.здаиа в университете Саг- negie Mellon. Система SALT — система приобретения зиатн! для задач конструирования. Система SALT разрабатывалась в предположении, что решение :)toii за- 口ачн осуществляется методом пошагового распространения orpaitipieuiiif.
Для решения задач конструирования методом пошагового распространения огра- ничепип необходимы знания следующих типов:
процедуры установления значений параметров;
процедуры проверки ограничений;
процедуры коррекции значений параметров с указанием «цепы» каждого корректирующего действия.
Важно, чтобы все эти знания составляли целостную и непротиворечивую БЗ.
Наибольшую трудность для эксперта представляет необходимость последовательно, шаг за шагом описать все свои действия при разработке проекта. Работая с системой SALT, эксперт избавлен от этой необходимости.
Исходя из того, как именно экспертные знания будут использоваться в ЭС при составлении конкретных проектов, SALT анализирует текущее состояние БЗ л предлагает эксперту-пользователю ввести или пересмотреть тот или иной фрдг- мент знаний. Диалог с пользователем в SALT ведется либо посредством вощю- сов-подсказок, либо посредством меню. Инициатива в диалоге принадлежит системе.
Система приобретения знаний OPAL [Musen, Fagan, et al., 1987] была создана в начале 80-х годов в Стэнфордском университете. Эта система обеспечивает формирование и нараищвание базы знаний для ЭС ONCOCIN, дающей советы по лечению онкологических больных. Система приобретения знаний OPAL основана на детально проработанной модели медицинских знаний, используемых врачами-онкологами для рекомендации лечения.
Системой используется девять типов знаний:
схема лечения (порядок и длительность режимов лечения);
критерий выбора протокола;
химиотерапия (описание комбинаций лекарств, назначаемых в том или ином режилге, их дозировка);
радиотерапия (локализация и дозировка радиотерапии);
изменения в составе крови, требующие модификации дозировки;
негативные реакции на лечение, выявленные путем лабораторных исследований;
другие отрицательные последствия проводимого лечения, треб^тощие модификации дозировки лекарств;
перерыв или прекращение лечения;
лабораторные исследования, необходимые для обнаружения токсичности лечения и для сохранения истории течения болезни.
Эти типы медицинских знании связаны в иерархическую структуру.
Для ввода каждого тнпа знаний разработан специальны!! графический пнтер- фспс! учитывающий то, как принято фиксировать соответствующие знания. Так, например, для записи схемы лечения онкологи используют диаграм.мы переходов с условиями на дугах. В системе OPAL ввод таких знаний осуществляется с помощью графического языка программирования. Схема лечения создается как
программа на этом языке.
Схемы протоколов н заполненные формы транслируются системой OPAL во внутреннее представление БЗ ЭС ONCOC1N. Этот процесс осуществляется без участия пользователя. По схема期 протоколов порождаются диаграммы перехо- дов, называемые генераторами; по формам-бланкам порождаются правила продукций, присоединяемые к соответствующим состояниям в диаграмме.
Система Х№4 СК создана в 1989 г. в университете Carnegie Mellon. Она представляет собой ориентированный на экспертов предметной области инструмент д. создания ЭС помогающих оценивать и улучшать различные виды проектов.
Единственными знаниями, изначально встроенными в систему KNACK, явля- ются знания о процессе оценки проектов вообще, то есть независимо от конкрет- ного содержания проектов. Все остальные знания приобретаются системой KNACK на основе диалога и анализа документов, называемых отчетами. Отчет описывает процесс оценки какого-либо конкретного проекта,
Приобретение знаний, необходимых для оценки проектов определенного класса, система KNACK осуществляет в два этапа. Первый этап 一 это настройка на класс проектов. На этом этапе система KNACK с помощью эксперта создает предварительную модель. Расширенная с помощью специальных процедур модель предметной области автоматически транслируется в программу на языке OPS-5.
К методам структурированного интервью примыкают и использованные при построении системы МЕДИКС [Ларичев, Мечитов и др., 1989] процедуры экспертной классификации. Задача экспертной классификации формулируется в работе [Ларичев, Мечитов и др., 1989] для:
множества независимых свойств Р;
множества признаков Q;
множества Qjn возможных значений m-го признака;
множества А всех возможных состояний.
Эксперту (или группе экспертов) предлагается идентифицировать наличие свойств из множества Р и тем самым построить классификацию множества А = UK» такую, что состояние а О А относится к некоторому классу K# если, по мнению эксперта, это состояние обладает свойством POP, Повысить эффективность экспертной классификации в этом случае удается благодаря использованию априорно заданного отношения линейного порядка на множестве состояний.
4・6・2・ Имитация консультаций
Этот метод реализован в системе АРИАДНА [Моргоев, 1988]. В основе этого метода —многократное решение экспертом проблемы классификации в режиме последовательной вопросно-ответной консультации «клнент — эксперт». При этом роль клиента моделируется всеми участниками работы, а эксперт выполняет функции, близкие к его профессиональной консультативной деятельности, С появлением персональных компьютеров связано появление игр эксперта с компьютером [Андриенко Г., Андриенко Н., 1992]. В системе ЭСКИЗ реализо- ван набор игр для приобретения знаний, являющихся той или иной модифика- Уие^ принципа репертуарных решеток. Например, в игре «Регата» объектами, “ля которых эксперт должен указать различающие признаки, являются яхты, В ходе гонок яхты должны проходить в пролеты мостов; в один и тот же пролет проходят яхты, соответствующие сходным по какому-либо атрибуту объектам. Рассмотренные выше системы поддержки процессов приобретения знаний, как правило, ориентированы на отдельные фазы всего технологического цикла В связи с вышесказанным интересно хотя бы кратко рассмотреть интегрирован- нь1е средства поддержки определенных методологий.
4-6-3- Интегрированные среды приобретения знаний
Интегрированная среда приобретения знаний AQUINAS [Boose, Bradshaw, Sche- ma, 1988] представляет собой набор программных средств для извлечения экспертных знаний различных типов различными методами. В состав AQUINAS входят:
система Dialog Manager для помощи новичкам в работе с AQUINAS;
система ETS для извлечения и анализа репертуарных решеток с последующим преобразованием их в базу продукционных правил;
средства конструирования различных иерархических структур знаний;
средства извлечения, представления и использования неточных знаний;
средства тестирования и коррекции БЗ;
средства, позволяющие эксперту оценивать конструкторы по наиболее подходящим шкалам;
средства работы с несколькими экспертами;
средства автоматического пополнения и коррекции БЗ.
Dialog Manager представляет собой ЭС, специально созданную для того, чтобы консультировать эксперта о возможностях, представляемых AQUINAS, и руководить экспертом при работе с AQUINAS. Возможны трл режима взаимодействия с Dialog Manager:
автоматический, при котором Dialog Manager полностью берет на себя руководство процессом извлечения знаний;
ассистирующий, при котором хотя эксперту и даются рекомендации относительно его дальнейших действий, по он может им не следовать;
резким наблюдения за действиями эксперта и сохранения истории.
Выбрав автоматический плп ассистирующий режим, экспрет должен выбрать степень подробности подсказок и объяснений, даваемых системен («полностью», «на среднем уровне», «кратко»).
В БЗ Dialog Manager имеются эвристики, которые позволяют этой системе при накоплении экспертом достаточного опыта nepeiim от автоматического режима к ассистирующему. Dialog Manager информирует эксперта о переключении режимов. Работая в ассистирующем режиме. Dialog Manager оставляет за экспертом выбор деятельности, но на основе своих эвристик рекомендует наиболее подходящую. В частности, если Dialog Manager считает, что эксперту следует запяться анализом БЗ, то в рекомендации обычно указывается, како1М(менно аспект нуждается в анализе. Так, эксперту может быть рекомендовано ооратить- ся либо к процедурам анализа сходства элементов (коиструкторсг.), либо к процедурам кластеризации элементов (конструкторов), либо к разбиению исходной решетки па несколько иерархически связанных.
Интегрированная среди приобретения знаний KITTEN (Knowledge Initiation & transfer Tools for Experts and Novices) [Show, Woodward, 1988], подобно AQUI- NAS, основана на построении и анализе репертуарных решеток. Отличие К1Т~ TEN от AQUINAS заключается в том, что в KITTEN обеспечивается извлечение элементов и конструкторов из текстов, а кроме того, имеются процедуры, анализирующие примеры решения задач экспертом п генерирующие по ним продукционные правила. Продукционные правила, порождаемые из примеров и peuie- ток, могут быть загружены в БЗ оболочки NEXPERT, с помощью которой проводится тестирование БЗ.
Завершая обзор прямых методов приобретения знаний, суммируем проблемы, которые этими методами не решаются:
эти методы не устраняют посредника между cuc reMoii и экспертом;
автономное использование описанных методов не решает таких проблем инженерии знаний, как устранение «пробелов» в знаниях, выявление «глубинных», невербальных знаний; сохраняется большая «время-емкость» и субъективность интервью;
фаза приобретения знаний идеологически и теоретически не связывается со следующими фазами инженерии знаний.
4.6.4. Приобретение знаний из текстов
Как было указано в параграфе 4.3, даже ручные методы выявления знаний из текста крайне слабо разработаны. В тех же немногих случаях, когда применяются автоматизированные методики, речь, как правило, идет о методах лекспко-семан- тического анализа, а также о моделях понимания текста.
Наибольшую известность имеют модели понимания на лингвистическом уровне. Системы, основанные на них, состоят в большинстве случаев из двух частей:
первая — морфологический и синтаксический анализ;
вторая — семантический анализ, который использует результаты работы первой части, а также словарную плп справочную информацию для построения формализованного образа текста.
Говоря о семантическом анализе текста, надо иметь в виду, что всякие отношения текста с его семаптиког! начинаются после того, как в нашем распоряжении оказывается некоторая модель дс11ств11телыюсгп. Объектами otoi'i модели, в частности, могут являться ипдпвилы п отношения.
Таким образом, первая проблема, возникающая при попытках автоматического извлечения знаний из текста, — это выявление свойств элементов текста для соотнесения этих элементов с объектами модели. Крайне редко эти свойства присутствуют в тексте эксплицитно, то есть явно.
Вторая особенность существующих систем анализа текста — это, как правило, необходимость использования словаря предметной области для выполнения
морфолопгческого анализа, выделения имен и словосочетаний ит.д. Однако требование предварительного создания словаря предметной области одновременно сильно осложняет задачу и уменьшает степень универсальности получаемой системы.
Понимание текста на семантическом уровне предполагает выявление не только лингвистических, но и логических отношений между языковыми объектами [Апресян, 1974]. Среди подходов к пониманию текста на семантическом уровне следует выделить модели типа «смысл — текст», в частности, модель семантик предпочтения [Wilks, 1976], модель концептуальной зависимости [Хейес-Роти ДР-, 1987]. В модели «смысл 一 текст» [Мельчук, 1974] предлагается семантическое представление на основе семантического графа и описания коммуникативной структуры текста.
В системе KRITON [Diderich, Ruchman, May, 1987] анализ текста используется для выявления хорошо структурированных знаний из книг, документов, описаний, инструкций. Основанный на контент-анализе метод протокольного анализа используется для выявления процедурных знании. Он осуществляется в пять тагов.
Протокол делится на сегменты на основании пауз, которые делает эксперт в процессе записи.
Семантический анализ сегментов, формирование высказываний для каждого сегмента.
Из текста выделяются операторы н арпгменты.
Делается попытка поиска по образцу в БЗ для обнаружения переменных в высказываниях (переменная вставляется в высказывание, если соответствующая ссылка в тексте не обнаружена).
Утверждения упорядочиваются в соответствии с их появлением в протоколе.
В системе ТАКТ(Гоо1 for Acquisition of Knowledge from Text) [Kaplan. Ber^-Rog- ghe, 1991] предполагается предварительная подготовка (разметка посредством введения явной скобочной структуры) предложений текста до начала раооты текстового анализатора. В результате анализа выделяются ооъекты, процессы и отношения каузального характера.
4・6・5・ Инструментарий прямого приобретения знаний SIMER + MIR
Программная система SIMER + MIR разработанная в ЛПС РАН под руководством Осипова Г. С. [Осипов,. 1997]. представляет собой совокупность программных средств для формирования модели и базы знаний предметной-ооласнь Систра ориентирована преимущественно на области с неясной стр) кт\рои о »"*:;: неполно onncaHHb.i множеством свойств объектов и богатым иаоором связей различной «связывающей силы» между объектами.
Интегрированная среда приобретения знаний KITTEN (Knowledge Initiation & transfer Tools for Experts and Novices) [Show, Woodward, 1988], подобно AQUI- NAS, основана на построении и анализе репертуарных решеток. Отличие К1Т- TEN ot AQUINAS заключается в том, что в KITTEN обеспечивается извлечение элементов и конструкторов из текстов, а кроме то го, имеются процедуры, ап ал и- зирующие примеры решения задач экспертом и генерирующие по ним продукционные правила. Продукционные правила, порождаемые из примеров и решеток, могут быть загружены в БЗ оболочки NEXPERT, с помощью которой проводится тестирование БЗ.
Завершая обзор прямых методов приобретения знаний, суммируем проблемы, которые этими методами не решаются:
эти методы не устраняют посредника между системой и экспертом;
автономное использование описанных методов пе решает таких проблем инженерии знаний, как устранение «пробелов» в знаниях, выявление «глубинных», невербальных знаний; сохраняется большая «время-емкость» н субъективность интервью;
фаза приобретения знаний идеологически и теоретически не связывается со следующими фазами инженерии знаний.
Приобретение знаний из текстов
Как было указано в параграфе 4.3, даже ручные методы выяпленн;! зпаннЛ из текста крайне слабо разработаны. В тех же немногих случаях1 когда применяются автоматизированные методики, речь, как правило, идет о методах лексико-семантического анализа, а также о моделях понимания текста.
Наибольшую известность имеют модели понимания па лннгннстнческо.м уровне. Системы, основанные на них, состоят в большинстве случаев из двух иасте】」:
первая — морфологический и синтаксический анализ;
вторая — семантический анализ, который использует результат!»! работы пер- во" части, а также словарную или справочную информацию для построения формализованного образа текста.
Говоря ° семантическом анализе текста, надо иметь в виду, что всякие отношения текста с его семаптиког! начинаются после того, как в нашем распоряжении оказывается некоторая модель действительности. Объектами этои модели, в частности, могут являться индивиды и отношения.
Таким образом, первая проблема, возникающая при попытках автоматического извлечения знаний из текста, — ото выявление свойств элементов текста для со- О|несения этих элементов с объектами модели. Kpaiine редко эти своиства присутствуют в тексте эксплпцптно1 то есть явно.
Вторая особенность существующих систем анализа текста — это, как правило, неоокодимость использования словаря предметно!'! области для выполнения
151
морфологического анализа, выделения имен и словосочетаний нт, д. Однако требование предварительного создания словаря предметной области одновременно сильно осложняет задачу и уменьшает степень универсальности получаемой системы.
Понимание текста на семантическом уровне предполагает выявление не только лингвистических, но и логических отношений между языковыми объектами [Апресян, 1974]. Среди подходов к пониманию текста на семантическом уровне следует выделить модели типа «смысл — текст», в частности, модель семантик предпочтения [Wilks, 1976], модель концептуальной зависимости [Хейес-Рот и др., 1987]. В модели «смысл — текст» [Мельчук, 1974] предлагается семантическое представление на основе семантического графа и описания коммуникативной структуры текста.
В системе KRITON [Diderich, Ruchman, May, 1987] анализ текста используется для выявления хорошо структурированных знаний из книг, документов, описаний, инструкций. Основанный на контент-аналпзе метод протокольного анализа используется для выявления процедурных знаний. Он осуществляется в пять шагов.
Протокол делится на сегменты на основании пауз, которые делает эксперт в процессе записи.
Семантически!! анализ сегментов, формирование высказываний для каждого сегмента.
Из текста выделяются операторы и аргу^менты.
Делается попытка поиска по образцу в БЗ для обнаружения переменных в высказываниях (переменная вставляется в высказывание, если соответствующая ссылка в тексте не обнаружена).
Утверждения упорядочиваются в соответствии с их появлением в протоколе.
В системе Г4КТ(Тоо1 for Acquisition of Knowledge from Text) [Kaplan, Bern-Rog- ghe「1991] предполагается предварительная подготовка (разметка посредством введения явной скобочной структуры) предложений текста до начала раооты текстового анализатора. В результате анализа выделяются ооъектьг процессы и отношения каузального характера.
4,6.5- Инструментарий прямого приобретения знаний SIMER + MIR
Программная система SIMER 十 MIR, разработанная вИПСРАН под руково/твом Осипова Г. С. [Осипов. [997], представляет собой совокупность программных средств для формирования модели п базы знаппп предметной'ооластп. Система ориентирована преимущественно на области с неясной струкп рои ° ::::;:;; неполно описанным множеством свойств объектов и богатым наоором различной «связывающей силы» между объектами.
Одна из особенностей системы состоит в том, что ее использование на заключительном этапе не предполагает участия специалистов-разработчиков экспертных систем. Это означает, что система SIMER + MIR представляет собой технологию создания систем, основанных на знаниях о предметной области, причем технологию, ориентированную на экспертов.
Архитектура. Система SIMER + MIR включает модуль прямого приобретения знаний SIMERt систему моделирования рассуждений типа аргументации MIR, программу адаптации системы MIR к базе знаний, сформированной с помощью SIMER + и программной среды поддержки базы знаний, над которой работают все названные модули. Конструкции базы знаний создаются и просматриваются с помощью языка инженера знаний FORTE, который включается в технологию в специальных случаях (рис. 4.17).
Рис. 4.17. Создание конструкции базы знаний с помощью языка FORTE
Представление и база знаний. Одним из наиболее распространенных видов экспертизы являются высказывания (сообщения) эксперта об объектах (событиях) предметной области. Эти высказывания имеют вид:
< имя объекта > < имя отношения > < “ма объекта >.
Для ряда областей — медицины, экологии, политики, социологии — можно выделить формы сообщений, показанные в табл. 4.6:
Таблица 4.6* Формы сообщений
Номер формы
Имя формы
Номер формы
Имя формы
а характерно для р
①8
При а нередко присутствует В
包
ct наблюдается при 0
①9
а может наблюдаться при (3
①3
с( отмечается при [3
Фю
а обычно сопровождается р
Фд
а есть проявление 0
①卄
При а как правило 0
仇
а есть признак 0
力12
При «обычно р
包
а сопровождает ^
①门
а иногда сопровождается 0
①7
а нередко сопровождается 0
5
а часто сопровождается 0
Номер формы
Имя формы
Номер формы
Имя формы
①15
а исключает В
①2D
С а начинается^
Ф16
а приводит к В
①21
В развивается при а
Ф17
Dps а возникает В
①22
В может развиваться при а
Ф,8
а может привести к В
①23
В может начаться с а
а может развиваться в 0
Этот список не является исчерпывающим, однако дает представление о тех когнитивных структурах, которые необходимо представлять и обрабатывать в базе знаний.
Каждая из этих форм может иметь различный смысл; уточнение смысла можно получить при рассмотрении «прямого» сообщения с «обращенным». Иными словами, если для некоторых фиксированных а или 0 справедливо сообщение формы Ф10, то необходимо попытаться установить, какое из сообщений Ф:— ①& справедливо при замене а на р, р на а. Так, для сообщения «Гром наблюдается при грозе» справедливо «обращенное» сообщение «Гроза сопровождается громом =>, а для сообщения «Воспалительный процесс может наблюдаться при повышенной температуре» справедливо сообщение «Повышенная температура характерна для воспалительного процессам. Таким образом, смысл сообщений уточняется построением «конъюнкций?> форм ①]—Фп Такне «конъюнкции» форм сообщений будут называться типами сообщений. Возможные типы сообщений приведены в табл. 4.7.
С каждым типом сообщения из табл. 4.7 связывается формальная конструкция базы знаний, то есть бинарное отношение на множестве объектов (событий). Эти конструкцин можно проиллюстрировать следующим образом: если каждый объект (событие) представить в виде «двухмерного» множества, по первому измерению которого можно откладывать атрибуты этого объекта, а по второму - множества значений соответствующих атрибутов, то каждьп! объект представляется в виде фигуры:
ATP 1
ATP 2
ATP3
ATPn
Таблица 4.7. Типы сообщений
Тип Сообщение
"Г〕а есть проявление р, и Р может сопровождать а
Т2а есть проявление 3, и Р сопровождается а
Т3 а может увеличивать возможность 0, п 0 увеличивает возможность а
Т《 а может сопровождаться Р,и Р может быть проявлением а
丁5 а сопровождается 0, н В может быть проявлением а
Та есть проявление р, и 0 есть проявление а
продолжение #
154
Таблица 4.7. (продолжение)
Тип Сообщение
Т? а может увеличивать возможность 反 и В может увеличивать возможность а
Тв а'может протекать с В,н 0 может протекать с а
% а увеличивает возможность Р,и р увеличивать возможность а
Т]0 а сопровождается В, и 0 может сопровождает а
Т1 ] а сопровождается р, и Р сопровождаться а
% а исключает Р,. и 0 исключает а
Т13а приводит к В
J,а может привести к (3
Т15 а увеличивает возможность развития Р
Tteа может увеличить возможность развития В
Т17 а исключает возможность развития 0
Если считать множества всех атрибутов равновеликими, то можно рисовать прямоугольники.
Тогда типу сообщения Т( можно поставить в соответствие диаграмму (пересечение ct и р всюду далее заштриховано).
а
…
Й||
В качестве примера приведем гштерпретацип некоторых диаграмм. Так, диаграмму- соответствующую cooouieniiro типа Т3, можно интерпретировать следующим образом: для всякого примера объекта р качестве примера приведем иитерпрета- инн некоторых диаграмм. Так, диаграмму, соответствующую сообщению типа Т3, можно интерпретировать следующим образом: для всякого примера объекта 后 найдутся такие примеры об^^скта ot, в которых равны совпадающие имена и значения атрибутов.
Для остальных типов сообщений получим диаграммы, представленные в табл. 4.8.
Таблица 4.8. Диаграммы для различных типов сообщений
Дп* сообщения типа Т&: для всякого имени атрибута примера объекта а найдется совпадающее с ним имя атрибута из примера объекта 0, и наоборот; при этом соответствующие значения атрибутов равны. Найдутся такие примеры объекта а, в которых равны совпадающие имена и значения атрибутов.
Каждой из изображенных диаграмм можно дать такую теоретико-множественную интерпретацию, связав с каждым из типов сообщений Т; некоторое бинарное отношение R), примеров объектов (при k = i).
Способ представления с определенными так отношениями называется неоднородной семантической сетью.
В реализации базы знаний основными элементами структур данных являются элементы «вершина», «элемент кортежа», «атрибут», «цепь», «стрелка». Элемент «вершина» соответствует объекту (событию), он содержит имя, списки входных и выходных «стре/ок» п список типа «элемент кортежа». Список «элементов кортежа» соответствует совокупности атрибутов события.
Для обеспечения простого способа определения указателя ^вершины» существуют элементы типа «пень». Элемент типа «цепь» содержит указатель на «вернпг ну» и указатель на следуюшп!! элемент типа «цепь». Указатель на первый элемент списка «цепь» входит в описание элемента типа «атрибут», «Атрибут* характеризуется также именем, множеством знамени!! и единицей измерения-
Отношения на множестве объектов реализованы в элементах типа «стрелка*. Каждый такой элемент содержит имя, сорт, вес, тип веса, указатель на «вершину* и указатель на следующий элемент типа ^стрелка». Отношения на двух объектах описываются парой элементов типа «стрелка», один из которых входит в список
входящих стрелок одного объекта, другой 一 в список входящих стрелок другого объекта.
Процедурная компонента системы содержит функции создания структур данных, поддержки корректности базы знаний, наследования свойств и ряд других функций. Для обеспечения поиска по именам элементов типа «вершина» и «атрибут» в системе реализовано В-дерево. Доступ ко всем элементам базы осуществляется через виртуальную память. Каждый элемент имеет внутренний идентификатор, по значению которого однозначно определяется его размещение в оперативной или внешней памяти. Для работы с объектами, отсутствующими в оперативной памяти, осуществляется их динамический перенос из внешней памяти в оперативную. Это позволяет системе работать на компьютере с ограниченным объемом оперативной памяти.
Прямое приобретение знаний в системе SIMER
Для выявления структурных знаний о предметной области используются стратегии разбиения на ступени и репертуарных решеток. Подробнее о penepiyapiibix решетках см. параграф 5.2.
Стратегия разбиения на ступени направлена на выявление структурных п классификационных свойств событий (понятий, объектов) области и таксонометри- ческоп структуры событий предметной области.
Стратегия разбиения на ступени реализуется в одном из двух сценариев, которым выбирается экспертом
«Имя ~ cBoiicTBO».
«Множество имен — свойство».
Сценарий «Имя — свойство»
Вопрос системы об имени события.
Сообщение эксперта об имени события.
Вопрос системы Ьб имени свойства.
Сообщение эксперта об имени свойства.
Вопрос системы о с^^цествовапии множества значегшн свойства.
Ответ эксперта (Да/Нет).
В случае отрицательного ответа имя свойства воспринимается как имя события.
Если имя сооытпя, образованного на шаге 3, отсутствует в базе зпа!шйг то зто сооытие рассматривается как новое, и для него выполняются шаги 2—7.
Вопрос системы。типе множества значений свойства (непрерывное/дискретное).
Ответ эксперта.
Вопрос системы о единице измерения свойства.
Сообщение эксперта о единице измерения.
Вопрос системы о множестве значений свойства.
Сообщения эксперта о множестве значений свойства.
В процессе выполнения шагов 2—6 создается глобальный о&ьект «имя свойства» и область его значений. Совокупность таких объектов будем называть базисом свойств области.
Вопрос системы о подмножестве значений свойства, характерного для описываемого события.
Сообщение эксперта о подмножестве значений свойства.
В результате выполнения шага 7 один из элементов базиса свойств связывается с описываемым событием (с указанием подмножества области значений элемента базиса, характеризующего описываемое событие).
Сценарий «Множество имен — свойство»
При работе сценария шаг 1 многократно повторяется, а затем выполняются шаги 2—7 для каждого имени события.
Стратегия репертуарных решеток направлена на преодоление когнитивной защиты эксперта. Механизм преодоления основан на выявлении его личностных конструктов. Каждый конструкт описывается некоторой совокупностью шкал, а каждая шкала образуется оппозицией свойств.
Наиболее эффективный способ выявления противоположных свойств — предъявление эксперту триад семантически связанных событий с предложением назвать свойство, отличающее одно событие от двух других [Kelly, 1955]. На следующем шаге эксперту предлагается назвать противоположное свойство. Таким способом выявляются элементы множества личностных психологических конструктов конкретного эксперта.
С другой стороны, свойства, различающие события, — это те свойства, которые влияют на формирование решения. Так как при этом не ставится задача выявления когнитивной организации индивидуального сознания эксперта, то описан- ная процедура используется для формирования базиса свойств области, а не для построения личностных конструктов. Пополнение базиса свойств области осуществляется путем повторения этой процедуры с другими триадами.
Пример 4.9 。
Например, эксперту в области представления знаний предъявляется триада нонятнн, описывающих способы представления: семантические сети, фреймы, системы продукций. Эксперту предлагается ответить на бедующие вопросы;
Какой из указаииых способов представления отличается от двух других?
системы продукций;““
Какое свойство отличает системы продукций от семантических сетей и фреймов?
лепсость описания динамики;
Назовите противоположное свойство свойству ^легкость описания динамики^?
трудность описания динамики;
дайте имя свойству, имеющему значения легкость описания динамики^ и ^трудность описания динамики^?
возможность описания динамики*
В результате формируется шкала с именем «возможность описания динамики» и со значением «легкость описания динамики» для объекта «системы продукций»; «трудность описания дннампкн» для объектов «семантические сети» и «фреймы».
Предлагая эксперту аналогичные вопросы об отличии семантических сетей от систем продукций 11 фреймов, можно выявить и аругне свойства базнса области.
Еще один пример — выявление каузальных знаний о предметной области. К каузальным знаниям о предметной области в соответствии с работой [Поспелов, 1986] относятся:
связи между следствиями н необходимыми и достаточными причинами;
связи между следствиями и достаточными причинами;
связи между следствиями п необходимыми co-причинами; связи между следствиями н возможными со-причннамн.
Будем понимать каузальные знания несколько шире, включив в рассмотрение, кроме связей событий настоящего с будущим и событий прошлого с настоящим, и связи меж口у событиями настоящего. В соответствии с этим отнесем к каузаль- ныл! знаниям все типы сообщении из табл. 4.6.
Тогда задача выявления каузальных знании сведется к установлению соответ- ствия между множеством типов сообщений н множеством отношений Rj—R17, то есть к поиску отображения Т в R. Для поиска этого отображения используется стратегия выявления сходства [Осипов, 1989]. Она основана на выявлении в интерактивном режиме алгебраических свойств сообщени!! Т; (таких как симметричность —ассимметричность, рефлексивность — иррефлексивность и других) И появлении на основании этого гипотез о принадлежности сообщений тем или HHbiM отношениям Rk (именно эти свойства оказываются нужными при работе механизма рассуждений).
Пример 4.10
Например, относительно двух событий: «рост заработной платы» и «повышение уров- ня жизни» эксперт сообщил, что «рост заработной платы» обычно сопровождается «повышением уровня жнзнн». Тогда возникают вопросы:
повышение уровня жизин всегда сопровождается ростом заработной платы?
повышение уровня жнзмн обычно сопровождается ростом заработной платы?
повышение уровня жизни может сопровождаться ростом заработной платы?
От нс г эксперта а) будет свидстел1>ствовать о том, что (входное сообщение относится к тнну Т./габл. 4.6; ответ в) - исходное сообщение относится к типу Т)0той же таблицьи Далее появляются гипотезы о том, что сообнющю эксперта интерпретируется отиоше- Н11СМ R2 или R10 в зависимости от ответа а) или в). Повышение степени достоверности TSKofi 1 ипогезы возможно при иснользовзнии стратегии подтвержде11ия сходства [Осипов, 1989].
Стратегия подтверждения сходства является комбинированной, основанной на взаимодействии стратегий разбиения иа ступени и выявления сходства, а также па анализе свойств событии (если ошг определены).
Например, в результате работы стратегии выявления сходства установлена принадлежность предыдущего примера отпошепию R2. На основании определения отношения R2 для всякого свойства первого события найдется единственное свойство второго события, н наоборот, так что область значения свойства первого события является подобластью области значений соответствующего свойства второго события. В случае выполнения этого условия гипотеза о принадлежности предыдущего примера отношению R? считается достоверным утверждением, в противном случаи запускается стратегия разбиения на ступени с целью выявления новых свойств codbiTiiii, для которых было бы верно это условие. Если, несмотря на это, условие достоверности не выполняется, то статус гипотезы сохраняется, однако в базе знаний системы появляется информация о некорректности соответствующей связи между событиями. Эта информация ограничивает возможность использования nocTpoennoii связи, например, с точки зрения механизма наследования свойств. При работе стратегии выявления и подтверждения сходства сценарии работы называется системой.
Моделирование рассуждений в системе MIR
Введем следующие обозначения:
О — опрос признаков из множества S;
П — порождение множества гипотез Г;
И — исключение множества гипотез Г.
Элементы данных типа <стрелкп*>, соответствующие отнои1енню R〕?,и、口ем называть отрицательными связями, остальные — положительными.
Работа системы МIR начинается с работы лгодуля О, затем модуль П строит множество гипотез Г на основе анализа положительных связе)! S с Г для подтверждеи ПЫХ признаков S. Множество гшютез Г используется модулем О для поросения нового множества признаков S「связанных с гпнотс-замн из Г положнтельныхш связями, и осуществления их тестирования. К подтвержденным признакам из S, применяется модуль П для порождения нового множества гипотез Гг Выполня ются операции Г: = Г и U,S: = S и S「Этот процесс продолжается итеративно до стабнлнзащш множества S и Г. Затем выполняется модуль И нс^ючегшя гипотез нз Г на основе анализа отрицательных связен для подтверждения симптомов п анализа положительных связс" для обусловленных признаков, то есть таких е
подтвержденных признаков, отсутствие которых имеет большее значение для принятия решения, чем их присутствие.
Если в результате вьгполпеипя модуля И во множестве 门шоте;】 осталось более одной гипотезы, то выполняется поиск дифференциальных признаков для подмножеств множества гипотез (дифференциальным признаком для некоторого множества гипотез называется значение свойства, характерное для одиог! гипотезы из множества п нехарактерное для других, или c()6i>irnc, связанпое положи- тельной связью с одной гипотезой из множества п не связанное.' niKonoii с другими). В результате этого процесса происходит нск/iючеинс со()тт'тстиую»1лх гипотез. При необходнмостн процедура повторяется для оставшегося миожсстиа гипотез до его стабилизации.
После выполнения еще нескольких моду/юй осутестпляется анллнз иолучечнюго множества гипотез с целью поиска его минимального подмножества, связанного положительными связями со всеми нодтисрждстгыми лрллиакамн п гем самым объясняющего их. Это послед псе множество м ечн таится окоичагслыннм результатом.
Новые тенденции и прикладные аспекты инженерии знаний
о Латентные структуры знаний и психосемантика
□ Метод репертуарных решеток
口 Управление знаниями
п Визуальное проектирование баз знаний как инструмент познания
匚】Проектирование гипермедиа БД и адаптивных обучающих систем
5-1 - Латентные структуры знаний
и психосемантика
1)0.41,ИШИС ГВО систем прп()6р(4 С1И1Я 3|1;ШИ11 (обзор в л. 4,5) облегчикп сложный и rpy/io(vMuun iipcniYY■(卜с])мн])с“;н【нм б;ы Birauiiii и рса.'ииуют прям()11 дн;ыог с зк- пп'ртом. Однвко ль!ял;1яем[я(' таким образом структуры знаний часто отражают /ши]]> и(ш('рхиостпую сос IiiB/unttnix io :ni;tuiiii эксперта, нс затрагивая их глубинной cjpx'Kiypbi. ;)гим же иедосг;ггк(1М (ю.чадаст болыииистно методой неноерсд- cuicunoro lEiB.icMC'iniM JUiuiiiii (изр;н |)а(||ы i. I. -4.3).
Для извлечения [jivoihihmx илистой Jkcitepi носи знания можно в о с 11 ол ьзо в аться ^^e годам л)1сихос('М;шткн - пауки, BojiiHKmeii ни стыке когнитивной психологии. nc[ix(),'iiiin В11СТПКП, nciix(v[(H'iin иосирнятня п и('с;1едо1кллп1 лиднвидуаль- jioio сознания. 11 спхосемантшси nc(vie;iveT структуры сонпаиля через моделнро- н;шнс ш|Дшшлу;ги>11Ои chcicmij .miuiiiii [ neTjieiiKo, 198Ь| ” выявление тех категориальных с rpvKi vp сознания, которые могут не(ko;jнаняться (латентные, или/.чнцнпшые и.:ш скрытьк') (Петренко, 1983; 1 срехниз. 1988. Шмелев, 1983].
Семантические пространства и психологическое шкалирование
Основным методом экспериментальной психосемаитики является метод реконструкции субъективных семантических пространств. Здесь психосемаптика тесно сплетается с психолингвистикой и лингвистической семантикой 一 с методологией выявления значений слов, лексикографией, «падежной грамматикой» и структурными исследованиями [Апресян, 1977; Мельчук, 1974; Соссюр, 1977; Филлмор, 1983; Щерба, 1974]. Однако лингвистические методы в основном направлены на анализ текстов, отчужденных от субъекта, от его мотивов и замыслов,
Психолингвистические методы обращаются непосредственно к испытуемому. Большинство из них связано с различными формами субъективного шкалирования. Перед испытуемым ставится задача оценить «сходство знаний» с помощью некоторой градуированной шкалы, например от 0 до 5 или от 0 до 9. В этом случае исследователь получает в руки численно представленные стандартизированные данные, легко поддающиеся статистической обработке.
Пснхосемантнка — как одно из молодых направлений современной психологии [Петренко, 1988; Шмелев, 1983] — сразу была оценена специалистами в области искусственного интеллекта как перспективный инструмент, позволяющий реконструировать семантическое пространство памяти как психологическую модель глубинной структуры знаний эксперта. Уже первые приложения психосе- мантикп в ИИ в середине 80-х годов позволили получить достаточно наглядные результаты. В психологии семантические пространства выступают как модель категориальной структуры индивидуального сознания. При концептуальном анализе знаний структуру семантического пространства эксперта можно считать основой для формирования поля знаний. При этом отдельные параметры семантического пространства соответствуют различным компонентам поля (разхгер- ность пространства соотносится со сложностью поля, выделенные понятийные структуры с метапонятнями, содержательные связи между понятиями-стимулами —это суть отношения и т. д.).
Легче всего познакомиться с экспериментальной психосемантпкой па примере, связанном с выявлением структуры и раз'верности семантического пространства знаний из некоторой предметной области [Петренко, 1988].
В основе построения семантических пространств, как правило, лежит статистическая процедура (например, факторный анализ [Аверкин, Батыршин, Влншун н др., 1986], многомерное шкалирование [Тпори, Фрай, 1985] пли кластерный анализ [Дюран, Оделл, 1977]), позволяющая группировать ряд отдельных признаков описания в более емкие категории-факторы. Говоря на языке поля знаний, это ~^построение концептов более высокого уровня абстракции. При геометрической интерпретации семантического пространства значение отдельного при- знака отображается как точка или вектор с заданными координатами внутри n-мерного пространства, координатами которого выступают выделенные факто-
ры. Построение семантического пространства, таким образом, включает переход к описанию предметной области на более высоком уровне абстракции, то есть переход от языка, содержащего большой алфавит признаков описания, к более емкому языку концептуализации, содержащему меньшее число концептов и вы* ступающему своеобразным метаязыком по отношению к первому.
В зависимости от опыта и профессиональной компетентности испытуемых размерность пространства и расположение в ней первичных понятий может существенно варьироваться. Эта особенность семантических пространств может быть использована на стадии контроля в процессах обучения, при тестировании экспериментов и пользователей.
Пример 5.1
Так, для проверки знаний п понимания английского языка в работе [Терехи叫 1988] были взяты десять наиболее распространенных предлогов, достаточно трудно переводимых. На экране дисплея испытуемому предъявлялась пара предлогов и спрашивалось, часто ли у него вызывает затруднения выбор одного из этих предлогов. Степень затруднения оценив^пась в баллах от 1 до 9. На этих данных методами многомерного in ка-'Шровапня была построена структура сложности употребления английских предлогов с точки зрения носителя русского языка. Эта модель существенно зависит от уровня знаний. Так. модель новичка не представляет организованной структуры. У людей, имеющих определенные навыки, проявилась некоторая структурированность семантического пространства, в нем отчетливо обозначились пары и тройки сходных предлогов.
Рис. 5.1. Семантическое пространство близости английских предлогов
Наиболее четкая н связная структура приведена на рис. 5.1. По ней можно сюъясшпь особенности дифференциации предлогов в английском языке. Основа структуры представляется в виде окружности, близкие точки иа KOTopoii ссютветствуют трудно дифференцируемым предлогам. Структура опирается иа две ортогональные оси. Ось абсцисс соответствует предлог! направления движения, а ось ординат — предлогам цели — средства.
На основании получаемых методами психосемантики моделей можно проводить контроль знаний. При анализе индивидуальных семантических пространств выявляются вопросы, которые не усвоены и не уложились в систему. Контроль структуры знаний проводится на основе сопоставления семантических пространств хороших специалистов и новичков (студентов, слушателей, молодых специалистов). Степень согласованности семантических пространств (их размер- ности)признаки и конфигурации понятий) будет определять уровень знаний новичка.
Однако здесь необходимо учесть, что семантические пространства двух квалифицированных специалистов могут быть разными, так как содержат индивиду аль- ные различия восприятия, отражающие опыт и характер деятельности человека. Поэтому не всегда можно формально сравнить семантические пространства эксперта и новичка, следует предварительно изучить семантические пространства нескольких специалистов, а затем уж производить сравнение.
В работе [Кук, Макдональд, 1986] описан подобный эксперимент. Были получены когнитивные структуры знаний опытного летчика-истребителя и пилота-новичка, с использованием двух методов: многомерного шкалирования (алгоритм MDS — Al seal) и сетевого шкалирования со взвешенными связями (алгоритм Pathfinder). Оба алгоритма основаны на использовании оценок психологической близости. Опытный пилот и пилот-новичок оценивали все возможные парные сочетания 30 связанных с полетом понятий, приписывая числа от 0 до 9 каждой паре, где 0 обозначал самую слабую степень связи между понятиями, а 9 — самую сильную. Эти оценки затем обрабатывались с применением обоих алгоритмов шкалирования.
В соответствии с алгоритмами MDS каждый концепт, выражающий некоторое понятие, помещается в к-мерное пространство таким образом, что расстояние между точками отражает психологическую близость соответствующих концептов. Алгоритм Pathfinder строит семантическую сеть [Schvaneveldt, Durso, Dearholt, 1985]. Дуги могут быть либо ориентированными (несимметричное отношение), либо неориентированными (симметричное отношение). Оба мето- да обеспечивают сжатия больших объемов данных (в форме попарных оценок) к меньшему набору параметров; однако нацелены они на выявление разных свойств исследуемых структур. Если в алгоритме Pathfinder центром внимания являются локальные отношения между концептами, то алгоритм MDS обеслечи- вает более широкое понимание свойств метризусмого пространства концептов. Результирующие когнитивные структуры оказались близкими для летчиков-истребителей с одинаковым уровнем опыта, но были различными для разных групп испытуемых. Авторы экспериментов обнаружили, что по когнитивной структуре, характерной для летчика-истребителя, можно установить, новичок он или опыт- нмй пилот. Наконец, проведенный ими же аналнз когнитивных структур выявил наличие концептов и отношений, общих для представлений опытного специалн- ста н “овн^ка, и, кроме того, ряд концептов н отношений, которые появились
только в одном из представлений, Прямым развитием рассмотренной работы сга- ”а экспертная система управления воздушным боем ACES [Goldsmith, Schvane- veldt, 1985].
Аналогичное исследование механизмов накопления опыта было проведено в об* пасти программирования на ЭВМ [Cooke, 1985]. С помощью методов шкалиро* вания было показано, что один из аспектов программистского опыта включает в себя организацию знаний соответственно замыслу программы, или семантике, а не в соответствии с синтаксисом.
Пример 5.2
Сетевое представление абстрактных понятий программирования на основе оценок связности концептов у программистов показано на рис. 5.2. Эксперимент показал, что всех программистов на основе анализа структуры семантического пространства можно разбить на три группы: повичк», неопытные специалисты среднего уровня, опытные специалисты. Это заключение совпадает с результатами, полученными в работе [Гав- рнлова, 1984], Кроме того, исследовалась эволюция когнитивной структуры программиста по мере его продвижения от ловичка до опытного специалиста.
Рис. 5.2. Ассоциативная сеть структуры знаний эксперта-программиста
Интерпретация выявленных отиои.епий (связей) ^Ie^y понятиями требует дополн - от коллектива разработчиков ЭС. Так. например, означившие на 5 2 потребовала дополиимьпого эксперимента, участникам которого была пред ■: плгтзв'юиа задача дать словесное описание связи междч noiig ^пямитфьи Результаты представлены н табл. 5.1. Таким образом, ассоциативная сеть на рмс. 5.2 может быть превращена в семантическую.
Пблица S.1. Описание связи между понятиями
Связанны* пары понятий
Отношение между связанной парой понятий
Подпрограмма —программа
Естьчасть
Символьные данные — выход
Есть тип
Параметр —программа
Используется
Программа — выход
Производит
Сортировка — поиск
Включает в себя
Численные данные — параметр
Может быть
функция — оператор
Есть
функция — программа
Есть часть
Отладка — программа
Подвергается
Выход — численные данные
Состоит из
Массив — символьные данные
Может состоять из
функция — подпрограмма
Есть
Присваивание значений — параметр
Используется для
Массив — глобальная перемена
Может быть
Массив — численные данные
Может состоять из
Повторение — сортировка
Естьчасть
Программа — алгоритм
Естьвыполнение
Сортировка — алгоритм
Есть
Сортировка — численные данные
Делается на
Присваивание — оператор
Есть
Все упомянутые выше методы (включая кластерный анализ) можно отнести к методам психологического шкалирования. Их основу с оста пл я ют алгоритмы преобразования сложных структур данных в более понятную форму, которая предполагается психологически содержательной. Результируюи^е представление зависит от метода:
оастериый анализ порождает дрсноиидную структуру [Дюраи, Оделл, 1977];
многомерное ни<а,чировапие и 1|)акторцый анализ — пространственную [Окунь, 1974; Терехина, 1986];
алюрнтм MDS — сетевую [Кук, Макдональд, 1986|;
репертуарные решетки (см. нарагра(|)5,2 и работу [d^»рапсе/).па, Баннистер, 1987]) порождают конструкты нпн метанзмсрс1шя [Kintsch, 1974].
Формальная методология пснхосемантниесксго шкалирования позволяет частично автоматизировать процесс структурирования знаний и получать «когнитивный разрез» его представлений о нредметно^ области. Методология шкал про- вання позволяет выявлять структуры знания косвенным путем при получении ответов от экспертов па довольно простые вопросы (например, «насколько блнз- ки понятия X] и Х2» вместо «скажите, какова связь между Х( ы X., как они влияют Друг на друга»).~
Почти все эксперименты позволили выявить одну закономерность. Размерность семантического пространства с повышением уровня профессионализма умень~ шается. Этот вывод согласуется с известными положениями когнитивной психологии о том, что процесс познания сопровождается обобщением.
Построение семантического пространства обычно включает три поеледоватвль- ных шага [Петренко, 1983].
L Выбор и применение соответствующего метода оценки семантического сход- ства. Этот war включает в себя эксперимент с испытуемыми, которым предлагается оценить общность предъявляемых стимульных признаков на некоторой шкале.
Построение структуры семантического пространства на основе математического анализа полученной матрицы сходства. При этом происходит уменьшение числа исследуемых понятий за счет обобщения и получения генерализованных осей.
Идентификацию, интерпретацию выделенных факторных структур, кластеров или групп объектов, осей и т. д. На этом шаге необходимо найти смысловые эквиваленты, языковые «ярлыки» для выделенных структур. Здесь большое значение приобретает лингвистическое чутье и профессионализм специалиста, проводящего исследование, и экспертов-испытуемых. Часто к интерпретации привлекают группу экспертов.
2. Методы многомерного шкалирования
В jajibiiciiiiicM развитие методов пснхосемантикп шло по линии разработки удобных пакетов прикладных программ, основанных на методах многомерного шка/шрования (МШ), факторного анализа, а также специализированных методов (статистической) обработки репертуарных решеток [Франселла, Баннистер, 1987]. Примерами пакетов такого типа являются системы KELLY [Похилько. Страхов, 1990], MADONNA [Терехина, 1988], MEDIS [Алексеева, Воинов нпр, 1989]. С другоii стороны, специфика ряда конкретных приложении, прежде всего — в инженерии зпангп!, требовала также развития иных (не численных) методов обработки пспхосемантпческих данных, использующих — в топ или иной форме — парадигму логического вывода на знаниях. Ярким примером этого на- П])авлеипя с/тужпт система AQUINAS [Boose et al., 1989; Boose, 1990]. Однако анализ практического применения систем обоих типов к задачам инженерии 3iianuii приводит к выводу о несовершенстве имеющихся методик п необходимости их развития в соответствии с современными требованиями инженерии знании. Наибольшие перспективы в 3Toti области, по-впдпмому. у методов многомерного шкалирования).
Многомерное шкалирование (МШ) сегодня - это математический инструмент Tapiiii, предназпаченньп! для обработки данных о non叩Hbix сходствах, связях или отношениях между анализируемыми объектами с целью представления этих объектов в виде точек некоторого координатного пространства. МШ представляет codoii один из разделов прикладной статистики, научной дисциплины, раз-
рабатывающей и систематизирующей понятия, приемы, математические методы и Модели, предназначенные для сбора, стандартной записи, систематизации и обработки статистических данных с целью их лаконичного представления, интерпретации и получения научных и практических выводов.
Традиционно МШ используется для решения трех типов задач:
].Поиск и интерпретация латентных (то есть скрытых, непосредственно не наблюдаемых) переменных, объясняющих заданную структуру попарных расстояний (связей, близостей),
Верификация геометрической конфигурации системы анализируемых объектов в координатном пространстве латентных переменных.
Сжатие исходного массива данных с ми нимальн ыми потерями в их информативности.
Независимо от задачи МШ всегда используется как инструмент наглядного представления (визуализации) исходных данных. МШ широко применяется в исследованиях по антропологии, педагогике, психологии, экономике, социологи и [Дэйвисон, 1988].
В основе данного подхода лежит интерактивная процедура субъективного шкалирования, когда испытуемому (то есть эксперту) предлагается оценить сходство между различными элементами П с помощью некоторой градуированной шкалы (например, от 0 до 9, или от -2 до +2). После такой процедуры аналитик располагает численно представленными стандартизованными данными, поддающимися обработке существующнл!И пакетами прикладных программ, реализующими различные алгоритмы формирования концептов более высокого уровня абстракции и строящими геометрическую интерпретацию семантического пространства в евклидовой системе координат.
Основной тип данных в МШ — меры близости межд\7 двумя объектами (i, j)— dij. Если мера близости такова, что самые большие значения dij соответствуют пара風 наиболее похожих объектов, то dij — мера сходства, если, наоборот, наименее похожим, то dij — мера различия.
MLU использует дистанционную модель различия, используя понятие расстоя- н”я в геометрии как аналогию сходства и различия понятий (рис. 5.3).
Для того чтобы функция d. определенная на парах объектов (а, Ь), была евклндо- вым расстоянием, она должна удовлетворять следующим четьфем аксиомам; d(a,b) > О, d(a,a) = О, d(a,b) = d(b,a), d(a,b)+d(b,c) > d(a,c).
Туда, согласно обычной формуле евклидова расстояния, мера различия двух объектов i и j со значениями признака к у объектов i и j соответственно х н х : ik 八 jk
Рис. 5.3. Расстояние в евклидовой метрике
Дистанционная модель была многократно проверена в социологии и психологии [Monahan, Lockbead, 1977; Петренко, 1988; Хмелев, 1983], что дает возможность оценить ее пригодность для использования.
В большинстве работ по МШ используется матричная алгебра. Геометрическая интерпретация позволяет представить абстрактные понятия матричной алгебры в конкретной графической форме. Для облегчения интерпретации решения за- дачн МШ к первоначально оцененной матрице координат стимулов X применяется вращение.
Среди множества алгоритмов МШ широко используются различные модификации метрических методов Торгерсона [Torgerson, 1958], а также неметрические модели, например Крускала [Kruskal, 1964].
При сравнении методов МШ с другими методами анализа, теоретически применимыми в инженерии знаний (иерархический Ю7астерный анализ [Дюран, Оделл, 1977] пли факторный анализ [Иберла, 1980]), МШ выигрывает за счет возможности дать наглядное количественное координатное представление, зачастую более простое и поэтому легче ннтсрпретнруемое экспертами.
1.3. Использование метафор для выявления «скрытых» структур знаний
Несмотря на кажущуюся близость задач, инженерия знании и пспхосемантика существенно отличаются как в теоретических основаниях, на которых они базируются, тик л в практических методикзх. Но главное отличие заключается в том, что инженерия знаний направлена на выявление — в конечном итоге — модели рассуждении [Поспелов, 1989], динамическом пли операциональной составляющей ментального пространства (или функцпональнои структуры поля знаний SJ, в то 叩смя как психосемаптнка, пытаясь представить ментальное пространство в виде евклидова пространства, позволяет делать видимоп статггческую структуру взаимного «расположения» объектов в памяти, в виде проекции скоп леннй объектов (концептуальная структура Sk).
Помимо этого следует отметить ряд недостатков методов психосемантики с точ- кн зрения практической инженерии знаний.
L Поскольку в основе психосемантического эксперимента лежит процедура измерения субъективных расстояний между предъявляемыми стимулами, то и результаты обработки такого эксперимента, как правило, используют геометрическую интерпретацию 一 евклидово пространство небольшого числа изме- рений (чаще всего — двумерное). Такое сильное упрощение модели памяти может привести к неадекватным базам знаний.
Естественность иерархии как глобальной модели понятийных структур сознания служит методологической базой ОСП. Кроме того, и в естественном языке понятия явно тяготеют к различным уровням обобщения. Однако в большинстве прикладных пакетов не предусмотрено разбиение сел^антического пространства на уровни, отражающие различные степени общности понятий, включенных в экспериментальный план. В результате пол^^гаемые кластеры понятий, пространственно изолированные в геометрической модели шкалирования, носят таксономически неоднородный характер и трудно поддаются интерпретации.
Единственные отношения, выявляемые процедурами психосемантики, 一 это «далеко — близко» по некоторой шкале. Для проектирования и построения баз знанн订 выявление отношении является на порядок более сложной задачей, чем выявление понятий. Поэтому семантические пространства, полноценные в результате шкалирования и кластеризации, должны быть подвергнуты дальнейшей обработке на предмет определения отношений, особенно функциональных и каузальных.
Нельзя ож!!дать, что эти противоречия могут быть разрешены быстро и безболезненно, в силу того, что математический аппарат, положенный в основу всех пакетов прикладных программ по пснхосемантике, имеет определенные границы применимости. Однако одним из возможных путей сближения без нарушения чистоты процедуры видится расширение пространства конкретных объектов- стимулов предметной области за счет добавления некоторых абстрактных объектов из мира метафор, которые заставят эксперта-испытуемого выйти за рамки объективности в мир субъективных представлений, которые зачастую в большей степени влияют на его рассуждения и модель принятия решений, чем традиционные правильные взгляды.
Ниже описан подход, разработанный совместно с Воиновым А. В. [Voinov, Gavrilova, 1993; Воинов, Гаврилова, 1994] и позволяющий вывести эксперта за гра- нннн традиционной установки и тем самым вьшвить субъективные, часто скры- ваемые или скрытые структуры его профессионального опыта.
Большинство результатов, полученных в когнитивной психологии, подтвержда- ют, что у человека (в том числе и у эксперта) формальные знания о мире (в част- ности, °т?计 предметной области, где он является экспертом) н его личный пове- денческий опыт не могут существовать изолированно, они образуют целостную, стабильную структуру. В западной литературе за этой структурой закрепилось
название «модель (или картина) мира». Принципиальным свойством модели мнра является то, что ее структура не дана человеку — ее носителю - в ингрос- пектши, она работает на существенно латентном, неосознаваемом уровне, зачас- тую вообще ничем не отмеченном (в символической форме) на поверхности вербального сознания.尸
Изучение модели мира человека является задачей когнитивной психологии, пси- хосемантики и прочих родственных дисциплин. Что же касается эксперта как объекта пристального внимания инженерии знаний, то здесь одна из проблем, в решении которых может помочь психосемантика, связана с необходимостью (н неизбежностью) отделения опыта эксперта от его объективных знаний в про- иессе формализации и структурирования последних для экспертных систем- Строго говоря, невозможно указать ту грань, за которой знания (которые можно формализовать н извлечь) переходят в опыт (то есть в то, что остается уникаль- Hoii, неотчуждаемой собственностью эксперта). Более корректно, по-видимому, говорить о неком континууме, детальность градации которого может зависеть от конкретной задачи.
Например, можно выделить следующие три уровня:
Знания, предназначенные для нзложення или доказательства (аргументации), например, на междисциплинарном уровне или для популярной лекиии (вербальные).
Знания, которые применяются в реальной практике, — знания еще вербализуемые, но уже иерефлектируемые.
Собственно опыт, то есть знания, лежащие на наиболее глубоком, неосознаваемом уровне, отвечающие за те решения эксперта, которые внешне (в том числе и для него самого) выглядят как мгновенное озарение или «инсайта, ннтун- TiiBHbiii творческий акт (интуитивные).
Классическая методика пспхосемантического эксперимента также не позволяет выделить из его результатов интуитивный уровень. Это видно из самои тестовой процедуры. Просят лп испытуемого оценить сходство-различие стимулов напрямую или же предлагается оценить их соответствие некоторым «конструктам» — в любом случае испытуемый вольно или невольно настраивается на необходимость доказательности своего ответа в терминах объективных свойств стимулов.
Большинство методов извлечения знаний ориентировано на верхние — вербальные или вербализнруемые — уровни знания. Неооходим косвенный метод, орн ентпрованпый на выявление скрытых предпочтений практического опыта 方” o/zepa^wo^w/bU'составляющих опыта. Таким методом может служить метафо- рический подход. Метафорический подход, впервые описанный с чисто лингвне^ тических позиций [Black, 1962; Ricoeur, 1975], а также с позиций практически психопопп! [Гордон, 1987], был видоизменен для нужд инженерии знании. Например в экспериментах по объективному сравнению языков программирова- нпя\между собой были также использованы два метафорических енра» - мир животных н мир транспорта.
В рамках этого подхода удалось экспериментально доказать следующие тезисы. .метафора работает как фильтр, выделяющий, посредством подбора адекват- ною объекта сравнения, определенные свойства основного объекта (то есть того, о котором собственно и идет речь). Эти выделяемые свойства имеют существенно операциональный характер, проявляющийся на уровне полиморфизма методов, так как метафора по самой своей сути исключает возможность сравнения объектов по их внутренним, объективным свойствам;
метафора имеет целью скорее не сообщить что-либо о дампом объекте (то есть ответить на вопрос «что это?»), а призвать к определенному отношению к нему, указать на некую парадигму, говорящую о том, как следует вести себя по отношению к данному объекту;
субъективному сдвигу в отношении к основному объекту (например, к языку программирования) сопутствует также и сдвиг в восприятии объекта сравнения (например, к конкретному животному) в силу вышеуказанной специфики фильтруемых метафорой свойств. Поэтому объект сравнения выступает в метафоре не по своему прямому назначению, то есть это не просто «лев» как представитель фауны, а воплощение силы, ловкости и могущества;
в том случае, когда метафора сопоставляет не единичные объекты, а некоторые их множества, в которых объекты связаны осмысленными отношениями, пространство объектов сравнения должно быть изоморфно пространству основных объектов по системе указанных отношений.
На эти тезисы опирается предлагаемая модифинация классической методики сопоставления объектов, применяемой, например, в оценочной решетке Келлн [Kelly, 1955]. При проведении эксперимента была использована система MEDIS [Алексеева, Воинов и др., 1989; Воинов, Гаврилова, 1994]. Эта система позволяет планировать, проводить к обрабатывать данные произвольного нспхоссманти- ческого эксперимента, Помнмо классической парадигмы многомерного ипсалпро- вання, система MEDIS включает в себя некоторые возможности теста репертуарных решеток. В частности, она позволяет работать со стимулами двух сортов 一 так называемыл!и элементами л конструктами (с единственным исключением: конструкты в системе MEDIS — в отл и чме от классического теста репертуарных решеток 一 монополяриы). Естественно, выбор базового инструментария существенно повлиял на описываемую экспериментальную реализацию методики.
В качестве предметной области был выбран мир языков программирования. В пространство базовых понятий (выступавших в методике в качестве элементов) бы- ло включено несколько более нлп менее популярных языков программирования, принадлежащих к следующим классам: ”
язьн<и искусственного интеллекта;
традиционные процедурные языки
так называемые «макроязыки», обычно реализуемые в оболочках операцнон- Hbix систем, текстовых редакторах и т. д.
В качестве метафорических пространств выбраны мир животных л мир траис- порта. Объекты этих миров выступали в методике в качестве (молополярных) конструктов. На первом зтапе эксперимента каждьн! из респондентов выпол-
нял классическое попарное субъективное шкалирование элементов На воп- рос, «Есть ли что-либо Общее между данными языками программирования», респонденту предлагалось ответить одной нз следующих альтернатив.
ДА!
1
Объекты очень близки
Да
2
М ежду объектами есть что-то общее
???
3
Неопределенный ответ
Нет
4
Объекты различны
НЕТ!
5
Объекты совершенно несовместимы
Данные этого этапа (отдельно для каждого из респондентов) подвергались об- работке методами многомерного шкалирования (см. выше) и представлены на рис. 5.4.
Результатом такой обработки является некоторое евклидово пространство небольшого числа измерений, в котором исходные оценки различии представлены геометрическими расстояниями между точками. Чем лучше эти расстояния соответствуют исходным различиям, тем более адекватным считается результат обработки в целом. При этом буквальное совпадение расстояний и числовых кодов ответов, естественно, не является обязательным (хотя оно и возможно в некоторых модельных экспериментах). Более важным оказывается ранговое соответствие расстояний исходным оценкам. А именно, в идеальном случае все расстояния между точками, соответствующие (например) ответам «ДА!» в исходных данных, должны быть меньше (хотя бы и на доли процента масштаба шкалы) всех расстояний, соответствующих ответам «Да», н т. д.
В реальном эксперименте идеальное соответствие невозможно в принципе, так как целью обработки является сжатие, сокращение размерности данных, что ограничивает число координатных осей результирующего пространства. Тем ие менее алгоритм шкалирования пытается — насколько это возможно — минимизировать ранговое несоответствие модели исходным данным.
Геометрическую модель шкалирования можно интерпретировать по-разному:
во-первых, можно выяснить смысл координатных осей результ!iрующего пространства. Эти оси по суп I своей аналогичны факторам в факторном анализе, что позволяет использовать соответствующую парадигму пнтерпретаикн, детально разработанную в экспериментально!! психологии. В данном случае можно считать, что выявленные факторы играют роль базовых категории, ил” базовых (латентных) конструктов, с помощью которых респондент (как правило, неосознанно) упорядочивает свою к叩тнну мнра (точнее, ее проекцию на данную предметную область);
во-вторых, можно проанализировать компактные группировки сшмулов в этом пространстве, отождествив их с некоторыми существенными (хотя и скрытыми от интроспекции) таксономнческнмн единииами, реально присутствующими в модели мира эксперта. Существенно, что делается попытка интерпретировать кластеры, полученные по модели шкалирования, а ие по ходпым числовом кодам различий. Это вытекает из предположения. чТО
информация, не воспроизводимая главными (наиболее нагруженными) факторами, является «шумом», сопутствующим любому (а особенно психологическому) эксперименту.
Рисунок 5.4 отражает традиционную классификацию языков программирова- ння и легко поддается вербальной интерпретации. Например, на рисунке горизонтальная ось соответствует делению языков программирования на ^языки искусственного интеллекта» (левый полюс шкалы) и «традиционные языки программирования» (правый полюс). Вертикальная ось отражает классификацию языков программирования в зависимости от уровня — языки высокого уровня (нижний полюс) и языки низкого уровня или системные языки (верхний полюс).
• C++
Assembler
• Pascal
• C
• Fortran
Prolog
Smalltalk
• LISP
Dbaselll+
Clipper
Basic
• Multi-Edit Macro
.DOS Batch
Рис. 5.4. Классификация языков программирования
Основная экспериментальная процедура — попарное сравнение некоторых обьек- тов и выражение степени их сходства (несходства) па числовой оси илм выделение пар близких объектов из предъявленной триады — сама по себе накладывает большое количество ограниче[1ий на выявляемую структуру, в частности:
Из-за выбора стимульного материала (выбор объектов остается за инженером по знаниям).
Из-за несовершенства шкалы измерений.
В связи с рядом допущений математического аппарата. Но главное, что полученная структура знаний чаще всего носит академический характер, то есть отражает объективно существующие, но легко об7>яспимые, как бы лежащие на поверхности закономерности.
Зто связано с психологической установкой самого эксперимента, во время кото- Рого эксперта как бы проверяют, экзаменуют и он, естестгзешю, стремится давать правильные ответы.
Наследующем этапе эксперимента респонденту предлагалось сопоставить каж- ды^ из языков программирования с каждом из метафорических персонажей. Как и на первом этапе, пары предъявлялись в равномерно-случайном порядке (анало-
гичном Расписанию кругового турнира в спортивных играх). Инструкция для сопоставления выглядела следующим образом:
Попробуйте оцепить выразительную силу данной метафоры; «ЛИСП — это слои» или «C++ — это яхта».
Результирующая таблица числовых кодов оценок (идентичная оценочной решет- кс Келли) была также обработана методами многомерного шкалирования про rpaNfMbi МЕДИС. Результаты представлены на рис. 5.5 и 56
При иитерпрстацпн удалось выявить такие латентные понятия п структуры^как «степень изошрепиости языка» (шкала X рис. 5.5), «сп」а: (шкала \ рис. э.э), «универсальность» "икала Y рнс. 5.6), скорость* (шкала X рнс.з.6) “ 叩・При иитерпрстацпн удалось выявить такие латентные понятия п структуры^как «степень изошрепиости языка» (шкала X рис. 5.5), «сп」а: (шкала \ рис. э.э), «универсальность» "икала Y рнс. 5.6), скорость* (шкала X рнс.з.6) “ 叩・Кроме этого, полученные рисункиКроме этого, полученные рисункипозволили выявить скрытые предпочтения экпозволили выявить скрытые предпочтения эксперта псперта псущественные характеристикисущественные характеристикилов — «силу» языка । рана («телега») п пр.лов — «силу» языка । рана («телега») п пр.С («слон»); скоростьС («слон»); скоростьобъектов, высыпавших в виде стнму-C++ («яхта»); «старомодность* Форт-объектов, высыпавших в виде стнму-C++ («яхта»); «старомодность* Форт-
При иитерпрстацпн удалось выявить такие латентные понятия п структуры^как «степень изошрепиости языка» (шкала X рис. 5.5), «сп」а: (шкала \ рис. э.э), «универсальность» "икала Y рнс. 5.6), скорость* (шкала X рнс.з.6) “ 叩・
При иитерпрстацпн удалось выявить такие латентные понятия п структуры^как «степень изошрепиости языка» (шкала X рис. 5.5), «сп」а: (шкала \ рис. э.э), «универсальность» "икала Y рнс. 5.6), скорость* (шкала X рнс.з.6) “ 叩・
Кроме этого, полученные рисунки
Кроме этого, полученные рисунки
позволили выявить скрытые предпочтения эк
позволили выявить скрытые предпочтения эк
сперта п
сперта п
существенные характеристики
существенные характеристики
лов — «силу» языка । рана («телега») п пр.
лов — «силу» языка । рана («телега») п пр.
С («слон»); скорость
С («слон»); скорость
объектов, высыпавших в виде стнму-C++ («яхта»); «старомодность* Форт-
объектов, высыпавших в виде стнму-C++ («яхта»); «старомодность* Форт-
Y
Multi-Edit Macro
Осел
• Basic
□ Кот
• DOS Batch
• Assembler
• Prolog口加8
• LISP тЗаяц Smalltalk
• Pascal □ Павлин
□Тигр
□ Волк
□ Петух
[
•
• Dbaselll+
Fortran »c
□Лев
□ Обезьяна
□
•
Конь
Clipper
□ Спон
.C++
Рис. 5.5. Метафорическая классификация языков программирования (мирживотных)
Y
Pascal
(Basic
•
ТепегаeS
Prolog
Автомобиль . C++
Пароход □ Яхта
DOS Balch口
malllalk- • C
• Dbaselll+
j Велосипед• C'PPer
□ Поезд*
dAbto&
.Fortran
• LISPD Самолет
Multi-Edil Macro
□ Метро „
/аСлон
□ Грузовик
.Clipper
рис, 5,6, Метафорическая классификация языков программирования (мир транспорта)
В применении к реальному процессу извлечения знаний это обстоятельство становится принципиальным, так как позволяет на самом деле отделить те знания, благодаря которым эксперт является таковым (уровень В), от общезначимых, банальных (для экспертов в данной предметной области) знаний (уровень А), которые возможно и не стоят того, чтобы ради них создавать собственно экспертную систему.
Однако можно ожидать, что во многих (если не в большинстве) случаях выявленные латентные структуры могут полностью перевернуть представления инженера по знаниям о предметной области н позволить ему существенно углубить базу знаний. Введение мира метафор 一 это некая игра, а игра раскрепощает сознание эксперта и, как все У!Гровые методики извлечения знании (п. 4.2), является хорошим катализатором трудоемких серий интервью с экспертом, без которых сегодня невозможна разработка промышленных интеллектуальных систем.
Метод репертуарных решеток
Основные понятия
Среди метопов когнитивной психологии — науки, изучающей то, как человек познает и воспринимает мир, друп!Х людеЛ и самого себя, как формируется целостная система представлений и oTiiouiennii конкретного человека, особое место занимает такой метод личностной психодиагностики, как метод репертуарных решеток («repertory grid»).
Впервые метод был сформулирован автором теории личностных конструктов Джорджем Келли в 1955 г. Чем шире набор личностных конструктов у субъекта, тем более хпюгомерным, дифференцированным является образ мира, человека, Других явлений и предметов, то есть тем вълпе его когнитивная сложность [Гаврилова, 1988].
Репертуарная решетка представляет собой матрицу, которая заполняется либо самим испытуемым, либо экспериментатором в процессе обследования или бесе- дн. Столбцу матрицы соответствует определенная группа объектов, или, иначе, элементов, В качестве объектов могут выступать люди, предметы, понятия, отно- шения, звуки, цвета — все, что интересует пснходиагпоста. Строки матрицы представляют собой конструкты — биполярные признаки, параметры, шкалы, альтернативпые противоположные отношения пли способы поведения.
Конструкты лиоо задаются исследователем, либо выявля юте я у испытуемого с помощью специальных приемов и процедур выявления. Вводя понятие конст- рукта, Келли объединяет две функнмн: функцию обобщения (установления сходства) и функцию противопоставления. Он предлагает несколько определе- ний понятия «конструкт». Одно из них:
Конструкт — это некоторый признак или свойство, по которому два или несколько объек- тов сходим между собой и, спедовательно, отличны от третьего объекта или нескольких других объектов.
Например, выделение из трех предметов <диван, кресло, стул» двух «диван и кресло» выявляет конструкт ^мягкость мебели». Келли в своих работах подчер- кивает биполярность конструктов. Он считает, что, утверждая что-нибудь, мы всегда одновременно что-то отрицаем. Именно биполярность конструктов д&дает возможным построение репертуарной решетки. Например, север - юг - это референтная ось: элементы, которые в одном контексте являются ^севером», в другом становятся «югом».
Возможности конструкта ограничены. Они могут быть применены только к некоторым объектам. Это нашло свое отражение в понятии ^диапазона пригодности^ конструкта. Английские психологи Франселла и Баннистер [Франселла, Баннистер, 1987] считают правило «диапазона пригодности» отличительной чертой техники репертуарных решеток. Под диапазоном пригодности можно понимать область представлений человека о мире, понятия которой можно соотнести с конкретной референтной осью выделяемого конструкта. Психологически осмысленный результат получится только в том случае, если элементы, используемые в репертуарной решетке, будут попадать в «диапазон пригодности» конструктов испытуемого.
Конструкты — не изолированные образования. Они взаимодействуют друг с другом, причем характер этого взаимодействия не случаен, а носит целостный системный характер. 1
В процессе заполнения репертуарной решетки испытуемый должен оценить каждый объект по каждому конструкту или каким-то другим образом поставить в соответствие элементы конструктам.
Определение репертуарная означает, что элементы выбираются по определен- ным правилам так, чтобы они соответствовали какой-либо одной области и все вместе были связаны осмысленным образом (контекстом) аналошчно репертуару ролей в пьесе. Предполагается, что, изменяя репертуар элементов, можно «на- страивать^ методики на выявление конструктов разных уровней обшности и относящихся к разным системам.
При переводе с английского языка термин матрица не используется, поскольку репертуарная решетка не всегда является матрицей в строгом смысле этого термина: в ней на пересечении строк н столбцов не обязательно стоят числа, не всегда выдерживается прямоугольный формат, строки могут быть разной длины. Второй смысл этого определения заключается в том, что в технике репер^арных решеток часто элементы задаются в виде обобщенных инструкций, репертуара ролей, на место которых каждый конкретный человек мысленно подставляет своих знакомых людей или конкретные предметы, если в качестве элементов заданы
названия предметов.
По всей видимости, репертуарные решетки лучше считать специфической разновидностью структурированного интервью. Обычно мы исследуем систему конструктов другого человека в ходе разговора с ним. В процессе беседы мы постепенно начннаем'пониматъ, как он видит мир, что с чем связано, что * чего следует что для чего важно, а что нет, как он оценивает других люден, события и сн^ации.
В применении к реальному процессу извлечения знаний это обстоятельство ста- новится принципиальным, так как позволяет на самом делв отделить те знания, благодаря которым эксперт является таковым (уровень В), от общезначимых, банальных (для экспертов в данной предметной области) знаний (уровень А), которые возможно и не стоят того, чтобы ради них создавать собственно экспертную систему.
Однако можно ожидать, что во многих (если не в большинстве) случаях выявленные латентные структуры могут полностью перевернуть представления инженера по знаниям о предметной области й позволить ему существенно углубить базу знаний. Введение мира метафор — это некая игра, а игра раскрепощает сознание эксперта и, как все игровые методики извлечения знаний (п. 4.2), является хорошим катализатором трудоемких серин интервью с экспертом, без которых сегодня невозможна разработка промышленных интеллектуальных систем.
Метод репертуарных решеток
Основные понятия
Средн методов когнитивной психологии — науки, изучающей то, как человек познает и воспринимает мир, других людей и самого себя, как формируется целостная система представлений и отношений конкретного человека, особое место занимает такой метод личностной психодиагностики, как метод репертуарных решеток f«repertory grid»).
Впервые метод был сформулирован автором теор и и личностных конструктов Джорджем Келлн в 1955 г. Чем шире набор лнчностпых конструктов у субъекта, тем более многомерным, дифференцированным является образ мира, человека, других явлений и предметов, то есть тем выше его когнитивная сложность [Гаврилова, 1988].
Репертуарная решетка представляет собой матрицу, которая заполняется либо самим испытуемым, либо экспериментатором в процессе обследования или бесе- дм. Столбцу матрицы соответствует определенная группа объектов, киш, иначе, элементов. В качестве объектов могут шдступатъ люди, предметы, понятия, отношения, звуки, цвета — все, что интересует пспходнагноста. Строки матрицы представляют собой конструкты — биполярные признаки, параметры, шкалы, альтернативные противоположные отношения нлн способы поведения.
Конструкты либо задаются исследователем, либо выявляются у испытуемого с помощью специальных приемов и процедур выявления. В водя понятие конст- рукта, Келли объединяет две функции: функцию обобщения (установления сходства) и функцию противопоставления, Он предлагает несколько определений понятия «конструкт». Одно из них:
Конструкт — ЭТО некоторый признак или свойство, по которому два или несколько объек^ тов сходны между собой и, следовательно, отличны от третьего объекта или нескольких других объектов.
Например, выделение из трех предметов «диван, кресло, стул» двух «диван и кресло» выявляет конструкт «мягкость мебели». Келли в своих работах подчеркивает биполярность конструктов. Он считает, что, утверждая что-нибудь, мы всегда одновременно что-то отрицаем. Именно биполярность конструктов делает возможным построение репертуарной решетки. Например, север - юг - это ре- ферентная ось: элементы, которые в одном контексте являются ^севером*, в другом становятся «югом».
Возможности конструкта ограничены. Они могут быть применены только к некоторым объектам. Это нашло свое отражение в понятии ^диапозони пригодности^ конструкта. Английские психологи Франселла и Баннистер [Франселла, Баннистер, 1987] считают правило «диапазона пригодности» отличительной чертой техники репертуарных решеток. Под диапазоном пригодности можно понимать область представлений человека о мире, понятия которой можно соотнести с конкретной референтной осью выделяемого конструкта. Психологически осмысленный результат получится только в том случае, если элементы, используемые в репертуарной решетке, будут попадать в «диапазон пригодности* конструктов испытуемого.
Конструкты — не изолированные образования. Они взаимодействуют друг с другом, причем характер этого взаимодействия не случаен, а носит целостный системный характер. '
В процессе заполнения репертуарной решетки испытуемый должен оценить каждый объект по каждому конструкту или каким-то другим образом поставить в соответствие элементы конструктам.
Определение репертуарная означает, что элементы выбираются по определенным правилам так, чтобы они соответствовала какой-либо одной области и все вместе были связаны осмысленным образом (контекстом) аналогично репертуару ролен в пьесе. Предполагается, что, изменяя репертуар элементов, можно «настраивать» методики на выявление конструктов разных уровней общности и относящихся к разным системам.
При переводе с английского языка термин матрица не используется, поскольку репертуарная решетка не всегда является матрнцен в строгом смысле этого термина: в ней на пересечении строк и столбцов не обязательно стоят числа, не всегда выдерживается прямоугольный формат, строки могут быть разной длины. Второй смысл этого определения заключается в том, что в технике репертх^арных решеток часто элементы задаются в виде обобщенных инстр}гкции, репер^ара роле!!, на место которых каждый конкретный человек мысленно подставляет своих знакомых людей или конкретные предметы, если в качестве элементов заданы
названия предметов.
По всей видимости, репертуарные решетки лучше считать специфической разновидностью структурированного интервью. Обычно мы исследуем систему конструктов другого человека в ходе разговора с ним. В процессе беседы мы постепенно начинаем понимать, как он видит мир, что с чем связано, что * чег0 с」е口尸:; для чего важно, а что нет, как он оценивает других людей, события и ситуации.
В применении к реальному процессу извлечения знаний это обстоятельство становится принципиальным, так как позволяет на самом деле отделить те знания, благодаря которым эксперт является таковым (уровень В), от общезначимых, банальных (для экспертов в данной предметной области) знаний (уровень А), которые возможно и не стоят того, чтобы ради них создавать собственно экспертную систему.
Однако можно ожидать, что во многих (если не в большинстве) случаях выявленные латентные структуры могут полностью перевернуть представления инженера п0 знаниям о предметной области ii позволить ему существенно углубить базу знаний. Введение мира метафор 一 это некая игра, а игра раскрепощает сознание эксперта п, как все игровые методики извлечения знаний (и. 4.2), является хорошим катализатором трудоемких серий интервью с экспертом, без которых сегодня невозможна разработка промышленных мнтеллектуальных систем.
Метод репертуарных решеток
Основные понятия
Среди методов когнитивной психологии — пауки, изучающей то, как человек познает ii воспринимает мир, других людей и самого себя, как формируется целостная система представлений и отношений конкретного человека, особое место занимает такой метод личностной психодиагностики, как метод репертуарных решеток («repertory grid»).
Впервые метод был сформулирован автором теории личностных конструктов Джорджем Келлн в 1955 г. Чем шире набор личностных конструктов у субъекта, тем более многомерным, дифференцированным является образ мира, человека, других явлений и предметов, то есть тем выше его когнитивная сложность [Гаврилова, 1988].
Репертуарная решетка представляет собой матрицу, которая заполняется либо самим испытуемым, либо экспериментатором в п])оцессс обследования или бесе- дм. Столбцу матрицы соответствует определенная группа объектов, или, иначе, элементов. В качестве объектов могут выступать люди, предметы, понятия, отношения, звуки, цвета — все, что интересует психодиагпоста. Строки матрицы представляют собой конструкты — биполярные признаки, параметры, шкалы, альтернативные противоположные отношения или способы поведения.
Конструкты либо задаются исследователем, либо выявляются у испытуемого с помощью специальных приемов и процедур выявления. Вводя понятие конструкта, Келли объединяет две функции: фушсцию обобщения (установления сходства) н функцию противопоставления. Он предлагает несколько определений понятия «конструкт». Одно из них:
Конструкт — это некоторый признак или свойство, по которому два или несколько объек- тов сходны между собой и, следовательно, отличны от третьего объекта или нескольких других объектов.
Например, выделение из трех предметов <диван, кресло, стул» двух «диван и кресло» выявляет конструкт «мягкость мебелик Келли в своих работах подчеркивает биполярность конструктов. Он считает, что, утверждая что-нибудь, мы всегда одновременно что-то отрицаем. Именно биполярность конструктов делает возможным построение репертуарной решетки. Например, север - юг - это референтная ось: элементы, которые в одном контексте являются «севером», в другом становятся «югом». ' ■
Возможности конструкта ограничены. Они могут быть применены только к некоторым объектам. Это нашло свое отражение в понятии ^диапазона пригодности^ конструкта. Английские психологи Франселла и Баннистер [Франседла, Баннистер, 1987] считают правило «диапазона пригодности» отличительной чертой техники репертуарных решеток. Под диапазоном пригодности можно понимать область представлений человека о мире, понятия которой можно соотнести с конкретной референтной осью выделяемого конструкта. Психологически осмысленный результат получится только в том случае, если элементы, используемые в репертуарной решетке, будут попадать в «диапазон пригодности* конструктов
испытуемого.
Конструкты — не изолированные образования. Они взаимодействуют друг с другом, причем характер этого взаимодействия не случаен, а носнт целостный системный характер.
В процессе заполнения репертуарной решетки испытуемый должен оценить каждый объект ио каждому конструкту или каким-то другим образом поставить в соответствие элементы конструктам.
Определение репертуарная означает, что элементы выбираются по определенным правилам так, чтобы они соответствовали какой-либо одной области и все вместе были связаны осмысленным образом (контекстом) аналогично репертуару ролей в пьесе. Предполагается, что, изменяя репертуар элементов, можно «настраивать» методики на выявление конструктов разных уровней общности и относящихся к разным системам.
При переводе с ан гл ноского языка термин матр!ща не используется, поскольку репертуарная решетка не всегда является матрицей в строгом смысле этого термина: в ней на пересечении строк и столбцов не обязательно стоят числа, не всегда выдерживается прямоугольный формат, строки могут быть разнои длины. Второй смысл этого определения заключается в том, что в технике репертуарных решеток часто элементы задаются в виде обобщенных инструкции, репертуара ролей, на место которых каждый конкретный человек мысленно подставляет своих знакомых mojeii п;ш копкретные предметы, если в качестве элементов заданы
названия предметов.
По всей видимости, репертуарные решетки лучше считать специфической разновидностью структурированного интервью. Обычно мы исследуем систему конструктов другого человека в ходе разговора с ним. В процессе беседы мы постепенно начинаем понимать, как он видит мир. что с чем связано, что ю чего следует, что для чего важно, а что нет, как он оценивает других людей, события и ситуации.
реШетка формализует этот процесс и дает математическое обоснованно связей между конструктами данного человека, позволяет более детально изучить отдельные подсистемы конструктов, подметить индивидуальное, специфическое в структуре и содержании мировоззрения человека.
Важное положение техники репертуарных решеток: ориентация на выявление собственных конструктов- исггытусмого, а “с навязывание их ему извне.
Гибкость и эффективность рспертуарннх решеток, качество и количество получаемой информации делают их пригодными для решения широкого круга задач. Методики этого типа используются в различных областях практической деятельности: в педагогике и социологии, в медицине, рекламе и дизайне. Репертуарные решетки оказались методом, ндсально приспособленным для реализации в виде диалоговых программ па компьютере, что также способствовало их ишрокому распространению. Достоинства и преимущества данного метода полностью раскрываются тогда, когда есть возможность, проведя исследование, быстро обработать результаты и проанализировать их с тем, чтобы уже при следующей встрече с испытуемым можно было уточнить п проверить возникшие предположения, составить II провести репертуарную решетку другого типа, а еепп это необходимо, и дополнить прежнюю, изменив репертуар элементов или выбору конструктов.
Методы выявления конструктов
Метод минимального контекста
Метод минимального контекста пли метод триад наиболее часто нпкиьзуется Д-пя выявления конструктов. Элементы нрепставаяются в группах по три. Это минимальное число, которое позволяет определить сходство н различие.
Испьпуемомзг предъявляются три элемента из всего списка н нредлгн'ается назвать какое-нибудь важное качество, по которому /ша из них сходны между собой н, следовательно, отличны от третьего. После того как эксисримептатор запишет ответ, испытуемого просят назвать, в чем конкретно состоит отличие третьего элемента от двух других (если испытуемы!! по указал, какие именно два элемента 6bLym оценены как сходные между собой, то его просят сделать это). Ответ на этот вопрос II представляет собоН п]^от11вогюлож!iыi'i нолк)с констр^чста. Испытуемому предъявляется столько триад ?)лсмептов( сколько сочтет нужным зкепернмен- гатоР- Специфических правил не существует. Вес зависит лишь от величины вы- боркк, то есть от числа конструктов, подлежащих нсследованшо.
Пример 5.3
Имеется список из названий фруктов. Берется триада «яблоко-грута-апсльенп». Респондент выделяет два сходных объекта — «яблоко и груша»; качество, о)1рсделяю1цее сходство, — «отсутствие аллергической реакции у респондентах*, отличие третьего объекта — «аллергичность*. Так выявлен личностный конструкт «аллергияпость/от- сутствие таковой».
Другие методы выявления конструктов
Фраиселла и Баннистер [Фрапсслла, Баннистер, 1987] описывают методы которые также используют триады:,•
последовательный метод;
метод самоидентификации;
метод ролевой персонификации.
В двух последних методах в триаду включается элемент «я сам».
Келлн предложил использовать триады для выявления конструктов, посколь- ку этот метод отражал его теоретические представления о том, как конструкты впервые возникают. Однако в связи с тем, что у испытуемого выявляются уже сложившиеся конструкты, нс обязательно использовать непременно три элемен- та. Триада не является единственным способом выявления противоположного полюса.
Дея выявления конструктов можно использовать два элемента (выявление конструктов при помощи диад элементов) или более, чем три, как это делается в методе полного контекста [Франселла, Баннистер, 1987].
Часто используемый метод — техника лестничного спуска Хинкла:
конструкты извлекаются стандартным методом;
но поводу отдельного конструкта задается вопрос «К какому полюсу данного конструкта вы бы хотели быть отнесены?»;
затем: «Почему вы предпочитаете этот полюс?», «Что противостоит этому?*. Таким образом, получается новый конструкт, более обобщенньн!, чем исходный. Процесс повторяется, и выделяется иерархия конструктов.
Анализ репертуарных решеток
Анализ репертуарных решеток позволяет определить силу и направленность связей между конструктами респондента, выявить наиболее важные и значимые параметры (глубинные конструкты), лежащие в основе конкретных оценок и отношении, построить целостную подсистему конструктов, позволяющую описывать it предсказывать оценки н отношения человека.
Анализ единичной репертуарной решетки
Можно использовать форму кластерного анализа для группировки конструктов. Этот алгоритм структурирует конструкты в линейный порядок, так что конструкты, находящиеся близко в пространстве, также оказываются близки в порядке. Этот алгоритм имеет преимущество при демонстрации, так как представление просто реорганизует решетку, показывая соседства конструктов и элементов.
Таким образом, формируются две матрицы - одна для элементов, 口ругая для конструктов. Кластеры определяются выбором наибольших значении в этих мат-
[80 ГЬава 5 ・ Новне тенденции и прнкладнне аспекты инженерии знаний р〃иах 一 то есть наиболее связанных составляющих матрицы, 一 до тех пор пока все элементы и конструкты не оказываются включенными в кластерное дерево. Программа производит иерархическую кластеризацию системы конструктов эксперта п представляет извлеченные знания.
Кроме того, для каждого конструкта имеются численные значения в решетке как вектор величин, связанных с расположением элементов относительно полюсов данного конструкта. С этой точки зрения каждый конструкт может быть представлен как точка в многомерном пространстве, а его плоскость определяется ЧПСЛом связанных с ним элементов. Естественной мерой отношений между конструктами является, следовательно, расстояние между ними в этом многомерном пространстве. Два конструкта с нулевым расстоянием между ними — это конструкты, по отношению к которым элемен ты структурируются .совершенно одина- Коно. Следовательно, можно считать, что они используются одинаково. В каком- то смысле это эквивалентные конструкты.
Для неэквивалентных конструктов можно анализировать их пространственные отношения, определяя ряд осей как проекцию каждого конструкта ла ось, наиболее удаленную от них, проекцию на вторую ось, связанную с оставшимися расстояниями, и т. д. Это метод анализа главных компонент пространства конструктов. Он связан с факторным анализом семантического пространства, использованного в изучении семантического дифференциала. Метод анализа главных компонент позволяет представить элементы и конструкты так, что между ними могут быть выявлены взаимосвязи. Возможно построить логический анализ репертуарной решетки, используя конструкты как предикаты относительно элементов.
Анализ нескольких репертуарных решеток
Довольно часто возникает ситуация, когда требуется сравнить несколько репертуарных решеток. Анализ серии репертуарных решеток, заполняемых одним и тем же человеком в разшяе моменты времени, позволяет следить за динамикой конструктов п оценок, строить траектории изменения состоявия человека в системе его собственных субъективных шкал.
Проанализируем несколько репер^арных решеток, заполняемых разными людьми. Анализ пар системных конструктов используется для измерения согласия и понимания между людьми. Для этого два эксперта, имеющие разные точки зрения, создают и заполняют решетки но общей области знаний. При этом каждый независимо от другого выбирает элементы, выявляет конструкты и оценивает их. Затем каждый делает две пустые копни своей решетки, оставляя элементы и конструкты без значении их оценки. Обе эти решетки заполняются партнерами. При зтом одна заполняется так, как он сам себе это представляет, а вторая так, как он представляет себе заполнение оригинальной решетки ее автором. Сравнение пар решеток помогает достигнуть соглашения и понимания между двумя людьми. Существуют три способа сравнения двух решеток.
Сцепление решеток, имеющих обшне элементы, и их последующая обработка одним из описанных гыгоритмов, как если бы они составляли одну большую
взаи модей ствие идей через про-взаи модей ствие идей через про-решетку. Таким образом, можно исследовать
взаи модей ствие идей через про-
взаи модей ствие идей через про-
из разных решеток.из разных решеток.верку смешанных кластеров конструктов
из разных решеток.
из разных решеток.
Данный путь требует наличия двух решеток с одинаковыми именами элемен- тов и конструктов и показывает расхождения между ннмн через измерение рас- стояния между одними и теми же именами. Результаты показывают согласие в понимании и выявляют различия между двумя решетками, основанными на одинаковых именах и конструктах.
Данный способ также использует две решетки с одинаковыми именами элементов и конструктов, находит наиболее сильно изменяющиеся элементы и конструкты и удаляет их из решетки. Таким образом, определяются базовые элементы и конструкты, которые показывают согласие н понимание.
Анализ ару???? системных конструктов. Ан ал из и руется серия репертуарных реше- ток, полученная от группы людей, использовавших одинаковые элементы. Сравнивается каждая пара и показывается «групповая сеть**, которая отражает связи сходных конструктов внутри группы. Создается решетка, отражающая конструкты, которые понимаются большинством группы, и это служит основанием дальнейшего анализа. Каждый конструкт, неиспользованный в рамках группы, оценивается по силе связанности с другими конструктами.
5-2.4. Автоматизированные методы
Данный параграф посвящен обзору некоторых наиболее известных методов и систем приобретения знаний на основе метода репертуарных решеток, частично из работ [Осипов, 1990; Молокова, 1992: Осипов,1997].
Впервые автоматизированное создание репертуарных рещеток и извлечение нз экспертов конструктов было реализовано в системе PLANET [Gaines, Shaw, 1984; Shaw, Woodward, 1988]. Дальнейшим развитием системы PLANET является интегрированная среда KITTEN, поддерживаюшая ряд методов извлечения знаний. Буза Д. в системе ETS [Boose, 1985] использовал метод репертуарных решеток для выявления понятийной системы предметной области. Потомками ETS являются система NeoETS и интегрированная среда для извлечения экспертных знаний AQUINAS [Boose, Bradshaw, Sheina, 1988].
Известно большое число прототипов ЭС. для создания которых использовалась ETS. Среди них:
Советчик по выбору инструментария для разработчиков ЭС.
Консультант по языкам программирования.
Анализатор геологических данных.
Советчик по отладке Фортран-программ.
Консультант по СУБД и др.
Однако область применения ETS ограничена извлечением экспертных знаний для таких несложных задач анализа, которые нетребуют для своего решения процедурных, каузальных н стратегических знании.
[82П1ЙЙЙ 6 . Honhlt» К111ДНПЦИИ И НрИКППДUl,l门 HtUinKH.I инжонприн .'11Н111ИЙ
ETS В;Ш11М<1ДгПСТИУ(Ч r JKi-lirpruM И ДН;1*Н1К'11ПМ рг;кнмг, НИ 1(,|11Ч(|(Ц1|)уя
МММ" 1|11Ш1П;И1р<ИиПЬ ГО;1ДП11ПГМУ|и |i3 В ;屮311山、1\'卩"I' [、RHU YI ⑴,1Т1, |1川川"1「II川 ИОДСПСГГМЫ: ILIIMirMCIIIlH ;MH'M14IIOII; IIIMIIIM'IIHH KtllH ipykKHI, IUH IjM.rlllltl prnrp TYIMH而 priiirTKH; iiori|H)('iiir)i 1|ни|и1 iiMiiiHhuiliniii.is run.H'ii, iciirpaiuni "|N“x niKMflllilX IipillHUI; I(4'H(|)1>IUIIHIH 113; hi ippi'IJIllll I h ^ ' i'lU'lhULIHI I h I Д'HI pJtlll'IIIIJX llllCipyMrllTlHblll'IX H"*T II I 'M/I'UIHH ; H '
В ;HHiriiornrirriu4l ГН('1ГМ(< M()KI< |KuI)h, MnLui, N「I)「ei川I, I!№" n* ii'>'ib hi Illllll'l lIpiHllUinid) Г.\ОД1Н4Г г I <'M 11, h*11' ,l,l,^,^ ,l,,*lv>11 I* ' ** Hl Hie < Il II'115 1 *111 К II11 H )>l X 1*14111(' CIH'I'l'M Здгг!) lllh'IHIbir IH lId'lb UHI.UK1 IhTMi'Ihhn ||.I lUII'IHLIS r l|i;lH'Nlll НН М'рПЫп, '['CXIIIIK;I HHTV|Hli.in, IK'llOib HUkllllLDl II M()RIILlHp.Hl/lcIfil n.l KLIHH/fr lllR' r'4(7l\'ln Щ11Х CVIHIHH frll:
I IllIDir.HJ [|<Vtrill*|i.'U/l(-||llr hOHi|il4X IWL-I t 巾 HIM [Mi*FI,l,ll"AI "";“ "" I,
I'LIMIIlOMbl IlJlbniil^rniir holopLIX HJiHbUlhh.lfl Нги q(/| у и ЦЦГС 11| ill ПИ I I If I lllln
y(-7|o||IIH IffKt И <»[•<><■ MIKMUT Н1И < П(>|.1 I Uli. hl 11 npi ir1 |)r Ч1М1И<' 11 4 lll 'lli n | K'./li1 ) IH'ii lln(ПМП1 имя nrircMIM ДИЧ kiliutil 'Iin п I I ПНИИ-.1Ы. Hl I ht I И i|>i n- Mt u)u4 HAH' I h HLH ikk1 I ii4<ici<tM' aiiii'iriiiH' ;t'bi ih'iHinipbix /ip\'i u\ riн ил i nii.
Cini.UI ('(KVIIIIU'IIIU- CylHIliK li il,
liy HIhl>l7|r^rlinhHi ] UH < h>L4l, I\| H < Iphlii < 1 H' lHirii' I И1ЦИ I г H.J( ГНМ1Ш IM.1MH
Il ('(U)I IK'H' НИШ Г ■ i нм H ( Ц( I CMC H> IM ■ 'll. |\1I ■ 11 >1 I 'И"| VI1 >l|i)lr I I ]'Л I Г! НИ НН I < |1П1Л11 ;|iii|H|»<<|H-iiiLihiiiiin 11НИИГ.1, [hi unrirniH'( имн mimhh, । ими и>ми.(ц t н)\ г и mhichih к i 】,, ДСЦГПНС HV I II II llrWH 1屮1巾’;屮\1 ili-
('/H/hifflf'/tlU ihi</>t/>fl>t HUIhlllJlII「〃""〃〃 r ll,ll)|>,llt nil.I И.I IK >1|| h t llAHI I < >MI Hl, L. ■ i [ i i| Н.1Г 0(MT||<-lll)H.||l> I 1)0 qcf 111ЧН1 ir |I.I riH'H ir I НИ1 > H' I 1 I J1H 卄"M ( *"“ll| 31 Al H 11 i I i rl\l( M bh ЧГ HIL'BlIfil( И ]Г < ИМИ 11IMLI, ]и H I >| H.li- H-H ' H> |-|,|)I И I ч при и Hit >M |(l.u l|(n 1 1| | > \ г M> i,M 1 и1 > 14
I Illi.
f "/〃"""'/"" fun Hfucmni( // ",〃""]〃," iihHl II I'h- i 1 Ilt'iH |i|iH'ii r I' Itr \.q >.ih I I 11H1 I Hh iI I НМ II ГПМ11, holopl.K', Г Ii.lllnil f in[HHH.f. И. 1ГИ I 1)ф1 JIU i| । \|И | гм» ь,ц, t ir |i । рцл lirls<> н >[» HI I II 11111 C,B.lt г Дру I iIII Hpt11 HIHHII >1 I .III 1 Ч|И I ;||>\'l нм
(lll/lfflffr,rH и( Il Ufilth> MlbUi( if >//i 7( 41 h ЦЩ If Ilin ILiil ] I;|H'ii'lbi II.l ПЫЧН Ir'IIIli- 11< 4 .1 I } I il И Ы S
I I IM H I (IMUH, j <» ( I I I,I 11ЛПН I iAJhii, > I U \' I(' I 111 II' knit(I И.1 \ 11 Mrr 1 bl)4 1.ППП1 i 1 ]■ П ]h 11 | 114r( Kllii hr'i( Чем II,\ I屮U「\T( 1 Illjr
(〃屮〃"〃■『""'I,’ *"〃 '( 111(11111 1 H H'l Ih'UIIH.li'i H.l \ HI Jp|t НГ f ими I nMj 1 H'HI h H S( 1 >1 ИЛ ) (Hl, ""“屮hT M',h:l I I LI н V I II k \ .h<' 1 ),ll[ Jr IB it IM \' 1 U M П i । iM \' 1 ( 4 | J L П ■ ■ ■ [ |( ПМ |; |()M(、'山「 ' I I'V •' I. и' * *n н mi't ■ I i н i?i j, j 11( 11 /Ht.nijiit и|'|г< j.iir 11j.r)<* Ihp 1, 'ii'M \' ;i,г u.iii i>11 и и ji'], "/ /〃 nir\tc А' Л7 /( bV 11 ihhi и h, Kiilnii.in, M.iy, Pi.'l/J(1 м н 1 ii I),i ।川 h|iihiH|ii-]ihii4 Jll/llllli IN |i<r(l b 1\-|| I н l| ли.I иг l И'НП JU.[ H. I nc| И 1 rill )U.t Ц J HI M H , I1< I Ч \"H И 111Л.М 11 II/ np.lis llllu-, lUIHJUH.ir HI.rHIlfi. /Idh \'MC|)I M, Hliiif :ц(НЧ, ((|i( I [i\t<JUUI ( > 1 il HidiHIH Xi i|Hi lll<t I (p.Vh ly|i|l|iltn.llHil il <)||П\( ИрШмлы 1 [1;(Д|||1))|1Ц1)Ь1^(И( p^j) ними) Jljlu IIHUliMr U“" W川"川"」巾屮山“"в. Hi'IHHhU “ ККГГ1)N 1)|ШМ< ll.'lhl H'XlHIk;! Illi И'рпып, ш Ипльлупвцли г 1|)Д||-[ 1111 卩「山屮|\;屮巾川[iCllh'lhB ||.I IliBi-HHM n.l « ivni-iHL ( 'l|);url IHI 卩讣;品 IMW1" 111 II П.)IH.IMHJHIUIC' Н.п 1t-/h Ihrniuiii г
h,3, Упрммипнио лпйиинми
ML川川)облксш. Лкцгш nv.wtv» llh Н1.1ЯМГ11Н11(1|)уктуры |И>ЛОПЫХ и 0ИШШЫХ 巾⑴MINI (ryiK'pllllKHt). Ilpil JKIM I ОЧГ|)1ГД1П>М UM%! работы
i I |hi I r| llll^ t l H||( H0| h'M 6ilJlH < >M 八JIM IH HL7K7iy KHIU4 O(4? llpllM^IICIIIIH*
,(* ^•■H'Mr прпмспгп прпгм IH'IM'IUIIOMCIIIIJI( ipilKTIlll: гмп при |)m6<hv П'рнттин 口"巾屮「”屮巾川 prillrlMI При ll|M7lhHI(.ilr|l|||| T|l()(hq|('гМ1П)||(ЧГГкИГПИ31П111ЫХ IHMIM- I)m 3\「巾屮1 IK' II г(ц hdiiiiiij Ii;);iiutn. iipiiuiiiiK. О|.Л|||||||П|ЦН(1 дни Ihi mix CH rpoTM)n)t < 11Г|г\».1.|;|Цу('КИ<Ч(-||i;(|<'llll(i|);l.lGllrllll)l lllt< ryiH'llll ll(.lliHU|lUlH)KCIir|liy ||(||||)()сы 0 IP ИIИ 111H S ((' HM, Ui II 11 hi X t' I 屮《贝 1/八 Y HIHMH IH IK )|ll(<|| HU Ml I 4 p<)Д ||)|/|», Upr/lIliiMlllDHU^T nulibiihy tlhin( IICJIII4 1;11мчц|пМ11Ч(<('ЬпП ripyu I.VpLl JIIIX IIDIlM Hill f IE 川漳)tlMHg眇 ПИН IIIHl.HhihOH, IIX pU.iilll'I.HDillllX.
M Pill Г1Н1( YUU Ч 111Г11П14Г |M',tV-'ILl;ltl*l II 11||11МГ|1('|111П pelKjnynpllhtX |)Г1ЦГТ1)К u 川卜 dj'ii( |iiiii нищий Г)1.1'1и iio/iv'if'iihi iin;i |iyhi)iii);i( iiH>M Г. (\ OciiiKMih к ptiMltux np(p <'ь, I (I .' > I M I I \ I MIR ( г м 11. -1 ,(')j)
Управление знаниями
Что такое «управлонио знаниями»)
('ЧГ.)\'1' I НМГ f h II IHIUV. 'Iiu IlhinhMMlI Н IJ )11 И'М И' ?l;llllHi| I» lltipill I)ill|bl IIUJMUliHn ПС
I I > 1 hU i Hl,Dili 4, ||>» II M""〃h"' II" i Ц||)Г;|Г 'K'HIHIM II I 'l.inr I auilllfllo V'tf'6lllllGlr
I li him I ц<' /м//н/м iffiiii- ипптч и// > ( К M К ниц li'il^M1 NLmagrinnii) inuimllovi. М«т、 |H IlHh' ' 1() \ I i i h Hl И г. pvilllhl \ I.H|4|Jipin|ilHX. bir |||1Г|1 I K'MIJ <iupil(i(fl h»| IHI(|hi|iMH Hill 1 ll| >111 >l |||>' 111 INUI 1 " I |h > 1 \' Il г I J| 11 IJHIlirii I MIMII I l|))l ,H|»M(|.l I
111,1 M , <1 M I > >1 I II 11Н1Ы M \dhllM M»( tnM *,|H инк H ( H || Uhl i I h.l .ill.|llnii( ll.lkullirilimx
(lulllld 4lli I .IMII i.mMIIJIIHII, tdt. |..lh ПМГИНИ IlhllllDI <<( К < I ИИ1 II )Ы К > I llpl-IIM У1ИГ< I lit! Hl I IP -i l.niih \'| H'lH JMlI 1 ku I i > II II'|h I|i\hlllllll h Ul (MllJHHMA »|<l|J HI. I«'ll(। ;|Н/кГ Gu/'lbllH^ ЧГМ > illiI |l > И| 11 H| II11II r 111| Kil II H J I L 1^1 ) I 1Г1II I.||' hl IMll.l IIII II lll>l I .||и I( и pdllilI l> ■> I<»1 in il11 и it lg JJ 4lnM\', l[i< ll|H[ i|t>M U.Uhl.14 b< iMlLillUH( l |ИМН H'H VI"''I U'l111 h」小《 卜 Г1. i iinihн I ь iн ip.ii>i■ I u 11 iiidiniii I M.u iiiln'Ji, 194/ |.
I 'l l V|h hl UhillUli |I;| I III1! J1H 11 Ц h hUllli 11МИГ 111 u| <H ]|.1<' irh Hll;IV< I plltl II ll卩)1,屮休「・ II i III, lit 1ь k.il'. Il| м И III! >. II ь 'I l< >(H> h > I р\'к1Н|И.ь IILI, [IIHI.M.1, lluiuulll. IIIhlHipMiUlH'O <1 hii.,1 rHihds,( iti H'HiiH II h"iihVprii Ь1\ II Д.111111ЛГ, H.ihMiuiiiiiiOi'i и “ n|Hfiic(( f |i;i.ipa- (uh h" ;|>m |||)n.M<'IK'lllin К M I in HM in lll-'lh |\ 1И11 4 p.l П|1н/1р,П1И.||* 1Г\||||'|ОГ1>>Г
. I 'h'L I |)> HIIhlM lb f'l I
I M Ihl II xpjllll llllild ;ldllin<l\ ( I),儿| W'lhil I'llHir.r ).
I nr h'Mhi I pvniK ин>ii пи I i< |Nkuii,
•I >|H >v irpld II ( III 11',\| 1.1 III >111
hl l| fill >| hl I II llllhli1 I I' I II II I I II I I'l НИ' I .
,lhrnr|)IHhir Г11С1ГМЫ II 6.НЫ Jll.lllllii; UIIK rK'MV.ril.lU.irtHf 1ГМ1.1
l | iu;llllllli IIIIM I llpl >rk I H|ll iBUlllbll I Ih ||*M
h^I орцгн I upi>ihi
1111 Ir Hllllh Ila O],'|eIll<llt4(,
I p\ iilibl uni |ir(ni In.'icfi
I ;|;llltlhlM 11( »| 储}JI
I.M MClHM/hClHiH. Im J 1ГГ < «
tupcMriiHMf1 hM-
гиг I ГМ1-1「11卩{"'1\ I |||Н»11;ИП<1 улн1 tl P;K
ЧГН* НП IK1 I.VIO O|i|itllll.tiilltlln,
Хранилища данных, которьге работают по принципу центрального склада, были одним из первых инструмвнтарпев КМ. Как правило, хранилища содержат многолетние версии обычной БД, физически размещаемые в той же самой базе. Когда Все данные содержатся в едином хранилище, изучение связей между отдельными элементами может быть более плодотворным.
Прн зтом активы знаний могут находиться в различных местах: в базах данных, базах знаний в картотечных блоках, у специалистов и могут быть рассредоточена п0 всему предприятию. Слишком часто одна часть предприятия повторяет работу другой части просто потому, что невозможно найти и использовать знания, находящиеся в других частях предприятия.
Управление знаниями — это совокупность процессов, которые управляют созданием, распространением, обработкой и использованием знаний внутри предприятия,
Необходимость разработки систем КМ обусловлена следующими причинами:
работники предприятия тратят слишком много времени на поиск необходимо!] информации;
опыт ведущих н наиболее квалифицированных сотрудников используется только ими самими;
ценная информация захоронена в огромном количестве документов и данных, доступ к которым затруднен;
дорогостоящие ошибки повторяются из-за недостаточной информ иров ан нос - тн и игнорирования предыдущего опыта.
Важность систем КМ обусловлена также тем, что знание, которое не используется и не возрастает, в конечном счете становится устаревшим и бесполезным, так же. как деньги, которые сохранены без того, чтобы стать оборотным капиталом,в конечном счете теряют свою стоимость, пока не обесценятся. Напротив, знание, которое распространяется, приобретается и обменивается, генерирует повое знание.
Управление знаниям и корпоративная память
Большинство обзоров коицепции управления знания (КМ) уделяет вннманне только первичной обработке корпоративной информации типа электронной почты, программного обеспечения коллективной работы пли гипертекстовых баз данных (нанрнмер [Wiig, 1996]). Онм формируют существенную часть из необхо- днмо兑 но определенно нс достаточной технической инфраструктуры для управления знаниями.''
Одннм из ковых решений по управлению знаниями является понятие корпора- тивной пешяти (corporate memory), которая по аналогии с человеческой памятью позволяет пользоваться предыдуицгм опытом и избегать повторения ошибок.
Корпоративная память фиксирует информацию из различных источников 叩едприятия и делает зту информацию доступно 宓 специалистам для решения производственных задач.
Корпоративная память не позволяет исчезнуть знаниям выбывающих специали- сто: (Уход на пенсию, увольнение и пр.). Она хранит большие объемы данных информации и знаний из различных источников предприятия. Оии представ- 产м в различных формах, таких как базы данных, документы и базы знаний (рис. 5.7). 、
Неявные данные и знанияНеявные данные и знанияЯвные данные и знанияРис. 5.7. Данные и знания в системах корпоративной памятиЯвные данные и знанияРис. 5.7. Данные и знания в системах корпоративной памятиЗнания в головеЗнания в головеДанные в головеДанные в головенянт工一EdcHJd0土нянт工一EdcHJd0土
Неявные данные и знания
Неявные данные и знания
Явные данные и знания
Рис. 5.7. Данные и знания в системах корпоративной памяти
Явные данные и знания
Рис. 5.7. Данные и знания в системах корпоративной памяти
Знания в голове
Знания в голове
Данные в голове
Данные в голове
нянт工一EdcHJd0土
нянт工一EdcHJd0土
Введем два уровня корпоративной памяти (так называемые явные и неявные знания [Nonaka, Takeuchi, 1995]),
Уровень 1. Уровень материальной или явной информации — это данные и знания, которые могут быть найдены в документах организации в форме сообщенп!!, писем, статей, справочников, патентов, чертежей, видео- н аудиозаписей программного обеспечения и т、д.
Уровень 2、Уровень персональной или скрытой информации — это персональное знание, неотрывно связанное с индивидуальным опьгтолг. Оно может быть передано через прямой контакт — «с глазу на глаз», через процедуры извлечения знаний (см. главу 3)、Именно скрытое знание — то практическое знание, которое является ключевым при принятии решения и управлении технологнчески>П1 процессами.
В действительности эти два типа информации, подобные 口ву” сторонам одной и тон же медали, одинаково важны в структуре корпоративной памяти (см. рис. 57). При разработке систем КМ можно выделить следующие этапы.
Накопление. Стихийное н бессистемное накопление информации в организа
ции.
Хранилища данных, которые работают по принципу центрального склада, были одним из первых инструментариев КМ、Как правило, хранилища содержат многолетние версии обычной БД, физически размешаемне в тон же само甘 базе. Когда Все данные содержатся в едином хранилище, изучение связей между отдельными элементами может быть более плодотворпым,
ПрН ЭТом активы знаний могут находиться в различных местах: в базах данных, базах знаш亩,в картотечных блоках, у специалистов и могут быть рассредоточена по ВСему предприятию. Слишком часто одна часть предприятия повторяет работу друго11 части просто потому, что невозможно найти и использовать знания, находящиеся в других частях предприятия.
Управление знаниями — это совокупность процессов, которые управляют созданием, распространен и ем г обработкой и использованием знаний внутри предприятий.
Необходимость разработки систем КМ обусловлена следующими причинами:
работники предприятия тратят слишком много времени на поиск необходимой ш【формашш;
опыт ведущих н наиболее квалифицированных сотрудников используется только ими самими;
ценная информация захоронена в огромном количестве документов и данных, доступ к которым затруднен;
дорогостоящие ошибки повторяются из-за недостаточной информированности и игнорирования предыдущего опыта.
Важность систем КМ обусловлена также тем, что знай не, которое не используется и не возрастает, в конечном счете становится устаревшим н бесполезным, так же, как деньги, которые сохранены без того, чтобы стать оборотным каппкшом, в конечном счете теряют свою стоимость, пока не обесценятся. Напротив, знание, которое распространяется, приобретается и обменивается, генерирует новое знание、
5-3,2. Управление знаниям и корпоративная память
Большинство обзоров концепции уиравлеиня знания (КМ) уделяет внимание только первичной обработке корпоративной информации типа электронной по- “ты, программного обеспечения коллективной работы пли гипертекстовых баз данных (например [Wiig, 1996]). Они формируют существенную часть из необхо- димо(|, но определенно не достаточной технической инфраструктуры для управления знаниями. '
°ппн” из новых решений по управлению знаннямн является понятие корпоративной памяти (cotporace memory), которая по аналогии с человеческой памятью позволяет пользоваться предыдущим опытом н избегать повторения ошибок.
Корпоративная память фиксирует информацию из различных источников предприятия и делает згу информацию доступной специалистам для решения производственных задах
Корпоративная память не позволяет исчезнуть знаниям выбывающих специали- (уход на пенсию, увольнение и пр.). Она хранит большие объемы данных информации и знаний из различных источников предприятия. Они представ- 产нм в различных формах, таких как базы данных, документы и базы знаний (рис. 5/).
Неявные данные и знанияНеявные данные и знанияVVVVVVЗнания в головеЗнания в головеВыявление Извлечение + ФормализацияВыявление Извлечение + ФормализацияVVц向ц向qlaMEU snTfflsbra^oc^o^qlaMEU snTfflsbra^oc^o^
Неявные данные и знания
Неявные данные и знания
VVV
VVV
Знания в голове
Знания в голове
Выявление Извлечение + Формализация
Выявление Извлечение + Формализация
V
V
ц向
ц向
qlaMEU snTfflsbra^oc^o^
qlaMEU snTfflsbra^oc^o^
Явные данные и знания
Рис. 5.7. Данные и знания в системах корпоративной памяти
Введем два уровня корпоративной памяти (так называемые явные и неявные знания [Nonaka, Takeuchi, 1995]).
Уровень 7, Уровень материальной или явной информации — это данные и знания, которые могут быть найдены в документах организапии в форме сообшени!!, писем, статей, справочников, патентов, чертежей, видео- и аудиозаписей, программного обеспечения и т、&
Уровень 2. Уровень персональной или скрытой информации — это персональное знание, неотрывно связанное с индивидуальным опытом. Оно может быть передано через прямой контакт — «с глазу на глаз», через процедуры извлечения зна- ний (см. глав}7 3). Именно скрытое знание — то практическое знание, которое является [слючевым при принятии решения и управлении технологическими процессами.
В действительности эти два типа пнфорлгащш, подобные двум сторонам одной и тон же медали, одинаково важны в структуре корпоративно]'! памяти (см、рис. 5.7). При разработке систем КМ можно выделить следующие этапы.
L Накопление. Стихийное и бессистемное накопление информации в органиэа-
Цзвлечение< Процесс, ндентннньн」традиционному извлечению знаний для ЭС (см. главы 2 н 3). Это один пз наиболее сложных и трудоемких этапов. От его успешности зависит дальнейшая Ж1(знеспособность системы.
Структурирование. На этом этапе должны быть выделены основные понятия, выработана структура представления информации, обладающая максимальной наглядностью, простотой изменения и дополнения.
. Формализация. Представление структурированной информации в форматах машинной обработки, то есть на языках описания данных и знаний.
. Обслуживание. Под процессом обслуживания понимается корректировка формализованных данных fi знании (добавление, обновление): «чистка», то есть удаление устаревшем информации; фильтрация данных и знаний для поиска информации, необходимой пользователям.
Если первые четыре этапа обычны для инженерии знаний, то последний является спецпфпчпылг для спстедг управления знаниями.
Как уже было сказано, он распадается на три более мелких процесса:
Корректировка форма.-шзованных знании (добавление, обновление).
Удаление устаревшей пнформацш!.
Фильтрация знании для поиска информации, необходимой пользователю, выделяет компоненты данных и знаний, соответствующие требованиям конкретного пользователя. При помощи топ же процедуры пользователь может узнать лгестоиахожденне интересующей его информации.
Рассмотренная выше классификация не является единственной, но она позволяет понять, что происходит в реа.чьных системах управления званиями.
5.3.3. Системы OMIS
Автохгатнзироваииые спстелгьг КМ, пли Organizational Memory Information Systems (О MIS). иред [низ и ачешя для накопления п управления знаниями предпрмя- тня [Kuehn and Abecker, 1998]. OMIS включают 卩аботу как на уровне 1 — с явным знанием компании в(|)ормс баз данных н электронных архивов, так и на уровне 2 — с。скрытым знанием, фиксируя его в некотором (более или мепее формальном) представлении в форме экспертных систем [Wiig, 1990] или БД.
0Mls часто используют вспомогательные справочные системы, так называемые helpdesk-приложен] [я.
Основные функннн OMIS:
• Сбор и систематическая организация информации из разлнчшях источников в централизованное и структурное информационное хранилище.
* ^итегРаЦ^ с существующими автоматизированными системами [Conklin, 1996]. На техническом зфовпе это означает, ито корпоративная память должна быть непосредственно связана с помощью интерфейса с инструментальными
средствами, которые в настоящее время используются в организации (напри- мер, текстовые процессорыг электронные таблицы, системы).
* Обеспечение нужной информации 砲 запросу (пассивная форма) м при необхо- ^ости (активная форма). Слишком частые ошибки - это следствие недостаточной информированности. Этого невозможно избежать с помощью пас- cHBiioii информационной системы, так как служащие часто слишком заняты, нтобь】 искать информацию, или просто не знают, что нужная информация существует. Корпоративная память может напоминать служащим о полезной ип(|)ормацин н быть компетентным партнером для совместного решения задач.
Конечная цель OMIS состоит в том, чтобы обеспечить доступ к знанию всякий раз, koi ди это необходимо. Чтобы обеспечить это, OMIS реализует зктивныЙ под- х〔)〃 распространепня знаний, который не полагается на запросы пользователей, а автоматически обеспечивает полезное для решения задачи знание. Чтобы предотвращать информационную перегрузку, этот подход должен быть совмещен с высокой выборочной оценкой уместности. Законченная система должна действовать как интеллектуальный помощник пользователю.
Использование корпоративно!! памяти часто преследует более умеренные цели, чем использование ЭС. Это связано с тем, что технологии обработки данных (баз данных н гипертекстовых систем) применяются гораздо шире, чем технологии систем, основанных на знаниях. OMIS сохраняют и обеспечивают выдачу по запросу нужной информации, но оставляют ее интерпретацию и оценку в специфическом контексте задачи главным образом пользователю.
С apyroii стороны, корпоративная память расширяет эти технологии работой со знаниями, чтобы улучшить качество решения задач. Так OMIS включает подсистемы объяснений, которые позволяют непосредственно отвечать на вопросы: <<Почему?» и «Почему нет?»、В просто!i базе данных или гипертекстовой системе пользователи должны были бы искать нужную информацию для ответа на такие вопросы непосредственно, а для этого нсобко口н\ю отфильтровать большое количество потенциально [i^^XHoii информации, которая, однако, не будет применяться в специфическом случае.
Наконец, OMIS не только выдает информацию, но должна также быть всегда tn- TOBoii воспринимать новую ннформаипю от ее пользователей.
Рисунок 5,8 представляет архитектуру для OMIS м корпоративной памяти (част- ИЧ[го из работы [Borghoffand Pareschi. 1998|). Ядром системы является Информационное хранилище (Informadon Deportoiy). Рисунок также дает представление о некоторых видах ипформацшг, которая включается в корпоративную память.
Если хранилища данных содержат в основном количественную информацию, то хранилища знании больше ориептпропаны на качественный материал. КМ-сис- темы генерируют системы из широкого диапазона данных, хранилищ данных, статей повоете^!, внешних баз, WWW-страниц.
Интерфейс пользователя
Информационное хранилище
ДвннывДвннывДокументыДокументыЗнанияЗнания
Двнныв
Двнныв
Документы
Документы
Знания
Знания
Структура БД, метволисанияСтруктура БД, метволисанияОписаниядокументации(дескрипторы)Описаниядокументации(дескрипторы)Структура БЗ,понятийныеструктурыСтруктура БЗ,понятийныеструктуры
Структура БД, метволисания
Структура БД, метволисания
Описаниядокументации(дескрипторы)
Описаниядокументации(дескрипторы)
Структура БЗ,понятийныеструктуры
Структура БЗ,понятийныеструктуры
Онтологический уровень
Факто графи ч е ски еБД.реляционные 6Д,справочникиФакто графи ч е ски еБД.реляционные 6Д,справочникиДокументальныеБД, чертежи,рефераты и г д.ДокументальныеБД, чертежи,рефераты и г д.УУ^ БЗ с правилами, ^фреймами,семантическимисетями, правила、 вывода 丿^ БЗ с правилами, ^фреймами,семантическимисетями, правила、 вывода 丿
Факто графи ч е ски еБД.реляционные 6Д,справочники
Факто графи ч е ски еБД.реляционные 6Д,справочники
ДокументальныеБД, чертежи,рефераты и г д.
ДокументальныеБД, чертежи,рефераты и г д.
У
У
^ БЗ с правилами, ^фреймами,семантическимисетями, правила
、 вывода 丿
^ БЗ с правилами, ^фреймами,семантическимисетями, правила
、 вывода 丿
Содержательный уровень
Интерфейс разработчиков
Рис. 5.8. Архитектура OM1S
Программный инструментарии для OMIS включает как оригинальные разр?1- ботки, например KARAT [Tschaitschian, 1997], так и стандартные средства, например, LOTUS NOTES обеспечила один из первнх ииструмситариев хранения качественно и документалыюй информацией. Однако сегодня в слизи с бурным развитием Интернета, КМ-снстемы вес чаще используют Web-TcxiioJiornio.
5-3-4. Особенности разработки OM1S
Так как разработка систем корлсфативпой памяти — зто прежде всего программный проект, то для нее применимы традициолиыс технологии разработки больших программных систем. В каждом программном проекте первым шагом в разработке является анализ требованг]й, в котором должны быть найдены ответы на следующие вопросы:
Какие задачи должны поддерживаться?
Какая информация необходима, чтобы решить :)тн аа八аин?
Какой тип поддержки желателен лользоватслями?
Каков уровень затрат на разработку?
Какие изменения ожидаются в будущем?
Прн поиске ответов па эти вопросы следует учитывать:■
]^!^?сСЧССКИЙ 巾актор. Основная причина неудач ранних опытных проектов 0M13 заключалась в том, что разработчики игнорировали реальные потреб- пасти, сиособпостн, и цели пользователей системы [Malsch et al 1993“ Kuehn ct aL, 1994].”'
21 Стоимостной анализ. Во-первых, ядро проекта должно ориентироваться на крн I ниескис процессы, «страдающие» от недостатка информационной поддерж- ки. Во вторых, ис следует перегружать начальную систему слишком большим колпчос! uttM услуг, которые могут быть желательны, но не обещают быстрое возвращение нпвестици!!.
Эволюция знаний. Электронная поддержка особенно ценна в областях, подвергающихся быстрым изменениям, так как на таких предприятиях трудно обеспечить доступ к оператшшо!! совре.менноЛ информации. В системах 0M1S иастс используют различные новые техиолопш обработки знаний, не имею- пше пока общепринятых русскоязычных терминов и связанные с получением нового знапня из анализа данных, например «открытие или разведка знаний» (Knowledge Discovery) и «разработка данных» (Data Mining)、Разведка зна- iniii представляет собой новое и быстро развивающееся направление, занимающееся <<нстрпв1ки[ь[[ым uзвJlcчe[|нe^f точной, ранее неизвестно]! и потенци- гипчю полезно!! 1П|форл1ащш из данных» [Piatetsky-Shapiro, Frawley, 1991]. В методах разведки данных нспо/н)зуются рг13Л[1чпые подходы к анализу текста и числовых данных, плюс специальны!! fiHCTp\rMettTapiiii статистического анализа.
Чувствительность к контексту для естественно-языковых запросов. Система должна «понимать^ контекст поступаюлшх запросов. К примеру, она должна различать термины «размножение животных» н «размножение документов».
Гибкость. Система должна иметь возможное гь обрабатывать знания в разлвч- “cii форме и по рапным темам в кс卄тексте рпботн 〃пнно「о нре/шрнятня、
6、Интеллектуальность. Система дол ж ни ii;iKrUi.;i нвать шкрормацию о своих польэонитс.чях н。зпшшях. которые она получает во время работы. Таким об- разом, со временем ее возможность «продуманно* предоставлять пользователям :шапня должна север 11【смстнов;1ться、
Д(( последнего времени при разработке OMIS остается м川,亩 ряд исследовательских поиросов I Kuehn and /\beekcr, 1998]:
Проблем обоб1Цвння моделей %〃〃切& смерен понятий или тезаурусов, oitmo- «о〃М OcMionaiiiie для obbc^iiiieiiiioirJKcn^yaTaJiiiH^uiiibix. документов, и фор- малыгого знания - построение объединенных мета-модслен данных и зианнм Поисзиы были бы процедуры г^томатпческого порождения тезауруса нз суть массгпзов 4OKyIsIcHT0B. Объединенная онтология/тезаурус может нсиользоваться, чтобы улучшить поиск, фильтрацию и маршрутизацию до-
куменпнк
Проблема объединения логического вывода w информационного поиска. Объеди- нсннйя эксплуатация форлiяльных н псформсшьных предстлвлсшш змамни и данных 一 это последовательное сближение логических методов и методов информационного поиска и индексации данных.
Соединение деловых процессов м управления знаниями. Окончательная цель с。- СТопт в том, чтобы обнаруживать информашюнную потребность в течение выполнения производствешюго процесса и определять уместное знание в специфическом контексте задачи. Первый прагматический шаг в этом направле- ПИц оннсан в работе [Hinkelmann и Kicninger, 1997], где авторы предлагают использовать информацию контекста задачи для информационной фильтрации.
Корпоративная память интегрирует знания, чтобы в решении новых задач опереться на предварительно накоплеш1Ы]'| опыт. Таким образом, можно избегать повторения ошибок, опыт может расширяться систематически, и мнформацион- но-емкне процессы работы могут быть выполнены более эффектнвнь^ги спосо- балгп. В отличие от экспертных систем первичная цель систем OMIS — не поддержка одной специфической задачи, а л^^чшая эксплуатация необходимого общего ресурса — знан ий.
В настоящее время существует значительный интерес к КМ со стороны промышленных компангп!. которые осознают высокий прикладной потенциал корпоративной памяти для решения целого ряда практических задач обработки ннфюр- маним. С друго11 стороны, не многие из проектов идут далее стадии прототипа, что очевидно показывает, что компании стараются избегать затрат и риска вложения капитала в новые технологии, которые еще не нашли широкого распространения.
5.4. Визуальное проектирование баз знаний как инструмент познания
Визуальные методы спецификации и проектирования баз знаний и разработка концептуальных структур являются достаточно эффективным гносеологическим инструментом пли инструментом познания [Jonassen. 1993]. Использование ме- то 口 ов инжен; i)iiii зиашп! в качестве дндакти чес к их инструментов и в качестве формализмов нредставлепия зианни способствует более быстрому и более полному понимань ■ структуры anavniii данной предметной области, что особенно ценно W новичко:. на стадии изучения особен костей профессиональной деятельности. Методы виз;. .ujbHoii инженерии знаний можно широко использовать в различ- нь】х учебны л заведегшях — от школ до университетов — как для углубления про- иесса понимания, так и для контроля знанн汇 Большинство учеников в студен- тов овлалевают навнкамн визуального структурирования в течение нескольких
часов.
5・4・1 ・ От понятийных карт к семантическим сетям
В параграфе 3.1 было предложено определение поля знаний, которое позволяет инженеру по знаниям трактовать форму представления поля достаточно шиоо- ко, в частности семантические сети или понятинпые карты (concept maps) (см. иарагра(|)1.3) являются возможной формой! представления. Это означает, что сам процесс построения семантических сетей помогает осознавать познавательные структуры.
Программы визуализации являются инструментом, позволяющим сделать видимыми семантические сети памяти человека, Сети состоят из узлов н упорядоченных соотношений или связен, соединяющих эти узлы. Узлы выражают понятия или предположения, а связи описывают взаимоотношения между этими узлами. Поэтому разработка семапткческих сетей подразумевает ана/шз структурных взаимодоктвнй между отдельными Лонятиямп предметной ооластп.
В процессе создания семантнческих сетек эксперт и аналитик вы нуждены анализировать структурь! своих собственных знанпП, что помогает нм включать новые знания в структуры уже имеющихся знаний. Результатом этого является более осмысленное использование приобретенных знаши'г
Визуальные спецификации в форме сетей могут неполноваться новичками и экспертами в качестве инструментов для оценки изменении, произошедших в их мышлении. Если согласиться, что семантическая сеть является достаточно полным представлением памяти.человека, то процесс обучения с этой точки зрения можно рассматривать как реоргаяпзацшо семантическом памяти.
Kozma [Kozma, 1992], один из разработчиков программы организации семанти- ческой сети Learning Tool, считает, что эти средства являются инструментами познания, усиливающими и расширяющими познания человека. Разработка семантических сетей требует от учеников:
реорганизации знаний;
исчерпывающего описания понятий и связей между ними;
глубокой обработки знаний, что способствует лучшему запоминанию н извлечению из памяти знаний, а также повышает способности применять знания в новых ситуациях;
связывания новых понятий с существующими понятиями и представлениями, что улучшает понимание;
пространственного изучения посредством пространственного представления понятий в изучаемой области [Fisher, Faletn, Paterson, Lipson, Thorton & Spring, 1990].
Полезность семантических сетей и карт понятий, пожалуй, лучше всего демонстрируется их связями с другими формами мышления Bbicniero порядка. Они тесно связаны с формальным обоснованием в химии [Schreiber & Abeg, 1991] и способностью аргументировать свои высказывания в биологии [Briscoe & LeMaster, 1991; Mikulecky, 1987]. Также было показано, что семантические сети имеют связь с выполнением исследований [Goldsmith, Johnson & Acton, 1991 ].
5.4.2. База знаний как познавательный инструмент
Когда семантическая сеть создается как прообраз базы знаний, разработчик должен фактически моделировать знания эксперта. Особенно глубокого понимания требует разработка функциональной структуры.
Определение структуры ЕСЛИ-TO области знаний вынуждает четко формулировать принципы принятия решения. Нельзя считать, что просто разработка полх знаний системы обязательно приведет к получешпо полных функциональных знаний в дайной области.
Разработка экспертых систем стала использоваться как инструмент познания сравнительно недавно. Lippert [Lippert, 1988], который является одним из пионеров применения экспертных систем в качестве инструментов познания, ут- верждает, что задания по созданию небольших базисов правил являются очень полезными для решения педагогических проблем и структурирования знаний W учеников от шестого класса до взрослых. Изучение при этом становится более осмысленным, так как ученики оценивают не только сам процесс мышле- нн% но также и результаты этого процесса, то есть полученную базу знаний. Создание базы знаний требует от учеников умения отделять друг от друга факты, переменные и правила, относящиеся к связям между составляющим и области знаний.
Например, Lai [Lai, 1989] установил, что после того, как студенты-медики создадут медицинскую экспертную систему, они повышают свое умение в плане аргументации н получают более глубокие знания по изучаемому предмету. Шесть студентов-первокурсников физического факультета, которые использовали экспертные системы для составления вопросов, принятия решений, формулировки правил и объяснений относительно движения частицы в соответствии с законами классической физики, получили более глубокие знания в данной области благодаря тщательной работе, связанной с кодированием информации и обработкой большого материала для получения ясного и связного содержания, а следовательно, и большей семантической глубины [Lippert & Finley, 1988].
Таким образом, создание базы знаний экспертной системы способствует более глубокому усвоению знаний, а визуальная спецификация усиливает прозрачность и наглядность представлений.
Когда компьютеры используются в обучении как инструмент познания, а не как контрольно-обучающие системы (обучающие компьютеры), они расширяют возможности автоматизированных обучающих систем <АОС), одновременно раз- впвая мыслительные способности и знания учеников. Результатом такого сотрудничества учащегося и компьютера является значительное повышение эф- сЬект] lb мости обучения. Компьютеры не могут и не должны управлять процессом обучения. Скорее, компьютеры должны использоваться для того, чюоы помочь ученикам приобрести знания.
R пайном паоаграфе будет описываться автоматизированное рабочее место (АРМ) ш; =KEW (Knowledge Engineering Workbench) [Гаврилова,
皤 黑р;:睜 Воннов, 1995^1997], который наряду с такими про^= 5 SemNet [Fisher 1990, 1992]. Learning Tool [Kozma, 1987], Tex Konune s 989] нз Inspiration, дает возможность ученикам, эксперт. % 吋閣:了鴛bсобой
прсдставлепий и описать природу связен мсжд\ всеми вх Д •
Последняя версия КЕ\М созданная совместно с Воиновы^
вую премию на выставке про?):鵠?:::盡踱 программных пнетрументари- ::儲牒:喘黑黑小х…。制爲篙関:^黑盘罐 Z"aS^^^Kludge Engineering), впервые
писанной в работе [Гаврилова. 1992].^ ^^^ 口……“ инженера по
KEW предназначен для интеллекту^ ьразработки экспертной системы,
3】冲期| на3向「亩,структурирова-
Центральным блоком KEW является п^фи^емш^^^^последовательную
(KNOwledgc SFucWu).3 4) н автоматическую компиля-
графимескую /лзтю ОСА (см. параграф цшо БЗ из графическо!'! спецификации.
—Панель концептуальной структуры—Панель концептуальной структуры一 Панель гипертекста一 Панель гипертекста0 * 恥1 匕史:注4冲::;"::;;达0 * 恥1 匕史:注4冲::;"::;;达跳應跳應I间Ta&岡园I倒回I间Ta&岡园I倒回Пд зн - К»литалм«ий рснокт £ до 4D в 2004 году.UПд зн - К»литалм«ий рснокт £ до 4D в 2004 году.U[Загрязнений][Загрязнений][Внешние фаморы[Внешние фаморы『Состсдщ® ◎壮ьакт?.)『Состсдщ® ◎壮ьакт?.)(Входные факторы](Входные факторы][-Есть “м[-Есть “мСейснииеская ек*н₽ностьСейснииеская ек*н₽ностьРеставр&цяа онсереацияРеставр&цяа онсереация-Высокая —Средняя —Низкая -Нет-Высокая —Средняя —Низкая -Нет卜BS'ujmb L-Небольш^е卜BS'ujmb L-Небольш^еК口п日吕анн* тенпвритур]К口п日吕анн* тенпвритур][морсхое влияние] шенйя] Т^СущвстввнмоеI—Несущественно©[морсхое влияние] шенйя] Т^СущвстввнмоеI—Несущественно©Мета>*ическйеМета>*ическйе—Трещину--Раскол—От огня—Нет—Трещину--Раскол—От огня—НетJ [Рмт:тепкхын]J [Рмт:тепкхын]—Mo* —Плесень—Нет—Mo* —Плесень—НетКапительныйКапительный—Укрвппенме конструкций—Снос—Зб|Дитнн© соорухениа ЧЦвнантировэние —Ремонт фундамента—Укрвппенме конструкций—Снос—Зб|Дитнн© соорухениа ЧЦвнантировэние —Ремонт фундамента卜口 сп е т н у 日 скр| С р 日"口 н т]卜口 сп е т н у 日 скр| С р 日"口 н т]—Зншхтват воды —Зада пкащелес —Чистка —Штукатурка —Окр&хииеанир—Зншхтват воды —Зада пкащелес —Чистка —Штукатурка —Окр&хииеанир:Мат^ж^4 [Ugx^M^*g@l^acET纽才m^^取4>^明更也哂е1鈍曲3岬丽工[Qffl^^^y堯恥:Мат^ж^4 [Ugx^M^*g@l^acET纽才m^^取4>^明更也哂е1鈍曲3岬丽工[Qffl^^^y堯恥Дерева КаменьДерева КаменьL 3 Kepeprwi互」L 3 Kepeprwi互」/ R*od^:/ R*od^:!Отопка:MqxТрепаны Плесень nРаскол:Нвт!Отопка:MqxТрепаны Плесень nРаскол:НвтСущастеемнсо НетНвсущестееиное ЕстьCijyecieeHHoe HeiСущастеемнсо НетНвсущестееиное ЕстьCijyecieeHHoe HeiHqtСредняяСредняяHqtСредняяСредняя:蕊嬴;;质^嬴而5£?^前;/:二:亩犷五,总高好学Рестверацмя Чистка^-:蕊嬴;;质^嬴而5£?^前;/:二:亩犷五,总高好学Рестверацмя Чистка^-БольшиоHeCoribiviiGНебольшиеБольшиоHeCoribiviiGНебольшие;Рес1аврация Штукат Хонсервоция Окрй^Н^:二工可「y寓1戸;Рес1аврация Штукат Хонсервоция Окрй^Н^:二工可「y寓1戸
—Панель концептуальной структуры
—Панель концептуальной структуры
一 Панель гипертекста
一 Панель гипертекста
0 * 恥1 匕史:注4冲::;"::;;达
0 * 恥1 匕史:注4冲::;"::;;达
跳應
跳應
I间Ta&岡园I倒回
I间Ta&岡园I倒回
Пд зн - К»литалм«ий рснокт £ до 4D в 2004 году.U
Пд зн - К»литалм«ий рснокт £ до 4D в 2004 году.U
[Загрязнений]
[Загрязнений]
[Внешние фаморы
[Внешние фаморы
『Состсдщ® ◎壮ьакт?.)
『Состсдщ® ◎壮ьакт?.)
(Входные факторы]
(Входные факторы]
[-Есть “м
[-Есть “м
Сейснииеская ек*н₽ность
Сейснииеская ек*н₽ность
Реставр&цяа онсереация
Реставр&цяа онсереация
-Высокая —Средняя —Низкая -Нет
-Высокая —Средняя —Низкая -Нет
卜BS'ujmb L-Небольш^е
卜BS'ujmb L-Небольш^е
К口п日吕анн* тенпвритур]
К口п日吕анн* тенпвритур]
[морсхое влияние] шенйя] Т^Сущвстввнмое
I—Несущественно©
[морсхое влияние] шенйя] Т^Сущвстввнмое
I—Несущественно©
Мета>*ическйе
Мета>*ическйе
—Трещину-
-Раскол
—От огня
—Нет
—Трещину-
-Раскол
—От огня
—Нет
J [Рмт:тепкхын]
J [Рмт:тепкхын]
—Mo* —Плесень
—Нет
—Mo* —Плесень
—Нет
Капительный
Капительный
—Укрвппенме конструкций
—Снос
—Зб|Дитнн© соорухениа ЧЦвнантировэние —Ремонт фундамента
—Укрвппенме конструкций
—Снос
—Зб|Дитнн© соорухениа ЧЦвнантировэние —Ремонт фундамента
卜口 сп е т н у 日 скр| С р 日"口 н т]
卜口 сп е т н у 日 скр| С р 日"口 н т]
—Зншхтват воды —Зада пкащелес —Чистка —Штукатурка —Окр&хииеанир
—Зншхтват воды —Зада пкащелес —Чистка —Штукатурка —Окр&хииеанир
:Мат^ж^4 [Ugx^M^*g@l^acET纽才m^^取4>^明更也哂е1鈍曲3岬丽工[Qffl^^^y堯恥
:Мат^ж^4 [Ugx^M^*g@l^acET纽才m^^取4>^明更也哂е1鈍曲3岬丽工[Qffl^^^y堯恥
Дерева Камень
Дерева Камень
L 3 Kepeprwi
互」
L 3 Kepeprwi
互」
/ R*od^:
/ R*od^:
!Отопка:Mqx
Трепаны Плесень nРаскол:Нвт
!Отопка:Mqx
Трепаны Плесень nРаскол:Нвт
Сущастеемнсо Нет
Нвсущестееиное Есть
CijyecieeHHoe Hei
Сущастеемнсо Нет
Нвсущестееиное Есть
CijyecieeHHoe Hei
Hqt
Средняя
Средняя
Hqt
Средняя
Средняя
:蕊嬴;;质^嬴而5£?^前;/:二:亩犷五,总高好学
Рестверацмя Чистка^-
:蕊嬴;;质^嬴而5£?^前;/:二:亩犷五,总高好学
Рестверацмя Чистка^-
Большио
HeCoribiviiG
Небольшие
Большио
HeCoribiviiG
Небольшие
;Рес1аврация Штукат Хонсервоция Окрй^Н^
:二工可「y寓1戸
;Рес1аврация Штукат Хонсервоция Окрй^Н^
:二工可「y寓1戸
Панель
функциональной структуры
Рис. 5.10. Интерфейс АРМа инженера по знаниям
Интерфейс KNOST состоит из трех основных частей (рис. 5.10):
панель концептуальной структуру;
панель гипертекста;
панель функциональной структуры.
Панель концептуальной структуры предназначена для графического структур” рования знаний. Она позволяет определить понятия и обозначить связи между ними в форме концептуальной структуры Sk.
В панель гипертекста можно поместить любой комментарий, связанный с объек- том, определенным на панели концептуальной структуры понятий.
Основное назначение панели функциональной структуры Sr — представить наглядно в форме строк таблицы причинно-следственные и другие функциональ-
ные взаимосвязи между понятиями концептуальной структуры, на основании которых эксперт принимает решения. Столбцы таблицы формируются простей- тей операцией drag-and-drop из понятий на панели концептуальной структуры После того как модели Sk и Sr созданы, KNOST автоматически компилирует базу знаний на ПРОЛОГе из созданной графической спецификации и моделирует ра- боту экспертной системы. Это удобно для быстрого наглядного прототипирования ЭС и для отладки БЗ совместно с экспертом.
5-5- Проектирование гипермедиа БД и адаптивных обучающих систем
5-5-1 ■ Гипертекстовые системы
Первые информационные системы на основе гипертекстовых (ГТ) моделей появились еще в середине 60-х [Engelbart, 1968], но подлинный расцвет наступил в 80-е годы после появления первых коммерческих ГТ систем для ПЭВМ — GUIDE (1986 г.) и HyperCard (1987 г.). В настоящее время ГТ технология является стандартом de facto в области АОС п сверхбольших документальных БД [Nielsen, 1990; Агеев, 1994].
Под гипертекстом понимают технологию формирования информационных массивов в виде ассоциативных сетей, элементами или узлами которой выступают фрагменты текста, рисунки, диаграммы и пр.
Навигация по таким сетям осуществляется по связям между узлами. Основные функции связей [Conklin, 1987]:
перейти к новой теме;
присоединить комментарии к документу:
соединить ссылки на документ с документом, показать на экране графическую информацию (рисунок, чертеж, график, фотографию и пр.);
запустить другую программу н т. д.
Учитывая широкое использование графовых структур в .моделировании, ГТ лю- хет приобретать черты более сложных модсле!!, напрнмер сетеп Петри, диаграмм состояний и др.
В настоящее время не существует стандартпзнрованноП технологии разработки «хорошо структурированного. ГТ, хотя важность когнптпвно-наглядноп и прозрачной» структуры ГТ очевидна.
В качестве рабочего упрощенного алгоритма составления ГТ можно предложить следующий (в п. 5.5.3 будет представлен более сложный вариант).
Инструкция по разрзботкб гипертекстового приложения
L Дайте название воображаемому документу, например «Учебник ио ку- лкнарии», «Справочник аопт}7рпента» и пр.
Представьте, что вся информация должна быть сгруппирована как в хорошем учебнике, то есть в виде глав и параграфов. Основное условие для глав, параграфов п подпараграфов — сбалансированность, то есть примерно равная величина,
Проставьте перекрестные ссылки между понятиями внутри параграфов, придерживаясь принципа «чем меньше — тем лучше».
Добейтесь баланса аудио, видео и графической информации.
Предоставте возможность возвращения на шаг назад или па более высокий уровень иерархии.
Отобразите иерархическое положение текущей страницы. Например, если мы находимся в подпараграфе, то необходимо вывести название текущей главы и параграфа.
Еще раз проверьте гипертекстовое содержание, в котором отражены все главы, параграфы и подпара]-рафы. Из любой страницы приложения должен быть доступ к этому содержанию.
Все необходимые гипертекстовые ссылки лучше располагать не в самом тексте, а разместить их в одном месте на странице, например в конце страницы.
Ссылки, по которым пользователь уже заходил, должны выделяться другим цветом.
От мультимедиа к гипермедиа
Мультимедиа (ММ) сегодня понимается как интегрированная компьютерная среда, по- зволяющая использовать наряду с традиционными средствами взаимодействия человека н ЭВМ (алфавитно-цифровой и/или графический дисплей, принтер, клавиатура) новые возможности: звук (живой человеческий голос, музыку и др.), видеоролики (цветные художественные и документальные клипы), озвученную мультипликацию и т. д.
Когда элементы ММ объединены на основе сети гипертекста, можно говорить о гипермедиа (ГМ). Основной сферой применения ГМ сегодня являются автоматизированные обучающие системы (АОС) или электронные учебники. Размещение в узлах сети не только текстовой и цифровой информации, ио и графиков, видео- юшпов, фото “ музыки обогащает гипертекст и увеличивает занимательность и наглядность электронных учебников. В последние годы ММ активно внедряется
н в интеллектуалы! ые системы [Nielsen, 1990], особенно в системы - консультанты, как эффективное средство увеличения наглядности и понятности рекомендаций' выдаваемых системой. Использовзипе аннманнн, звука и видео существенно об- легчает усвоение учебного материала по структурированию знаний и снижает уровень когнитивных усилий учащихся при одновременном уменьшении времени, необходимого на изучение данной проблематики.
Основной предпосылкой интереса к гипермедиа-системам является фактически беспрецедентный успех глобальной сети Интернет н WWW-технологии.
Другим фактором появления ГМ можно считать мощный прорыв на рынке машинных носителей информации со стороны фирм, производящих компакт- ауднодиски (PHILIPS, SONY, NIMBUS) в виде CD-ROM (Compact Disc Read Only Memory), позволяющих хранить до 600 Мб информации, тем самым открывая дверь для обработки BLOB (Binary Large Objects) — больших двоичных объектов, например оцифрован!]ых видеоизображений.
Тем не меиее существует целы!] ряд проблем, с которыми сталкиваются разработчики ММ-снстем, независимо от того, ориентированы они на Интернет-при- ложения или на автономные учебники на CD-ROM:
отсутствие методологии н технологии структурирования разнородной информации;
отсутствие единых стандартов на системы кодирования и обработки;
сложные аппаратные и программные решения проблем аналого-цифровых преобразований и синхронизации полноэкранного видео.
Сейчас не существует единой методологии, а тем более технологии разработки ГМ систем, такое состояние характеризуется как «по science, rather art», то есть «не паука, а искусство». Однако первые подступы к созданию технологии уже сделаны [Кирмайкл, 1994; Reisman, 1991], п разработки в это(1 области продолжают активно развиваться.
Традиционно процесс разработки ГМ включает:
фаза 1 — проектирование н разработка структуры и отдельных фрагментов ги- лермедиа-пркложенпя, вонючая звуковые п видеоролики, программное окруже- нне. [ фаза — наиболее трудоемкиii по времени и человеческим ресурсам период. Зту фазу осуществляет команда, состоящая из:
менеджера;
специалиста по системам обучения;
эксперта предметной области;
дизайнера-графика;
системного аналитика;
сценариста;
программиста.
фаза 2 зависит от того, на как。】'* вариант приложения рассчитана система.
пля Интернет-прпложенин разрабатываются Wcb-страпицы на языке HTML с включением оцифрованных в специальных форматах звука, изображений, ани- мацнн и видео, Прн этом могут использоваться специальные пакеты, например Dreainwever или FrontPage.
для изготовления CD-дисков используется как HTML-формат, так и специальные программные средства (authoring languages and systems), как, например Toolbook или Macromedia Director.
①азя 3 включает прототипирование CD-ROM на специальном устройстве WORM (Write Once Read Many) п его тестирован не либо размещение приложения на Интернет-caiiTc.
фаза 4 — это тиражирование п производство готовых CD ROM.
На пути к адаптивным обучающим системам
Инструментом познания согласно концепции параграфа 5.4 можно считать и процесс проектирования струюуры гипертекста. Ранее нами [Гаврилова, 1996-99] был предложен подход, трактующий структуру (граф) гипертекста (ГТ) как «скелет» поля знаний, то есть наиболее ииформациоипо-иагружеппып элемент поля зиашпк Именно этот граф отражает структуру знания, которую можно назвать гнперзпанпя. Усвоение этой структура является важнейшим компонентом процесса обучения. Очевидно, чем более будет конкретная структур?^ ГТ соответствовать индивидуальной когнитивной структуре, тем эффективнее будет идти про- цесс обучения. Фактически это означает, что общение и тренинг будут организованы не через навязывание конкретных когнитивных структур обу(1аемому и ломку старых представлеиип» а через проекцию нового знания на каркас индивидуального опыта и пара1цпвапие уже имеющихся когнитивных структур. Такая адаптация к нндивиду^ьным познавательным структурам может существенно повысить э(|)фективиость обучающих систем.
Предлагаемbiii подход позволяет ((редставить ноле знашп! предметной области в вмде релевантной гиперструктуры HS, узлами KOTopoii являются концепты А, выделяемые экспертами как ^опорные», то есть Иринцнпиалыю значимые. Связи или отношения R используются для переходов между узлами. Такая трактов- ка является естественным развитием моделей представления знаний типа семантических сетей, которые на современном этапе считаются наиболее адекватными человеческой структуре памяти [Велнчковский( 1982; Шенк, Хантер, 1987]. Естественно, что такие концептуально-когнитивные структуры отличаются резкой иидивидуальностью, связанно!! с личностными, интеллектуальными н профессиональными различиями носителей знаний. В некотором смысле такая структура является когнитивной моделью индивида.
Предлагаемый подход согласуется с концепцией мульти деревьев [Furna, Zacks, 1994】,реализующей множественное представление ПО. Модель пользователя, сформироваипая по этому принципу, будет отражать «модель мира» данного конкретного пользователя в виде гиперграфа, узлы которого, в свою очередь, могут быть раскрыты в виде гиперструктур более низкого уровня. Фактически это
соответствует субъективным концептуальным структурам в памяти. Часто в проблематике АОС используют понятие «сценария». Традиционно под сценарием понимается описание содержательного, логического и временного взаимодей- ствия структурных единиц программы, с помощью которых реализуется авторская цель [Бойкачев, Конева, Новик, 1994].
Очевидно, что в гипермедиа учебных приложениях естественным представлением сценария является граф гипертекста. При этом важно добиваться, чтобы этот сценарий соответствовал (был релевантным) представлениям как учителей, так и учеников.
Релевантная ГТ -структура представляет стратифицированную сеть HS=<A,R>, отражающую иерархию понятий предметной области в форме, соответствующей профессиональным представлениям экспертов и не вызывающей когнитивного диссонанса у пользователя.
Для формирования стратифицированного множества вершин А можно использовать модификацию алгоритмов объектно-структурного анализа ОСА (параграф 3.4).
Алгоритм «ОСА-гипер»
Сформулировать цель н собрать от экспертов всю доступную информацию.
Определить количество страт N, подлежащих формированию.
Из информации, полученной от экспертов и пз литературы, выбрать все значимые основные объекты п понятия {А} н разместить их по стратам, сформировав опорные мстаузлы ГТ структуры.
Детализировать концепты, пользуясь шкходящеи концепцией (top- down).
Образовать метапонятия по концепции (bottom-up).
Исключить повторы, избыточность и синонимию.
Обсудить понятия, не вошедшие в структуру ГТс экспертом и вьючить их пли исключить.
Выявить основные отношения {R} н спроектировать эскиз ГТ сгру^-
9.9.惠鲁為=陋’寵黑注:片惠鲁為=陋’寵黑注:片
9.
9.
惠鲁為=陋’寵黑注:片
惠鲁為=陋’寵黑注:片
ння модели пользователя.
10. Привести в соответствие эскиз ГТ и представления пользователя.
И-Сформировать ряд
И учета необходимых сиснарнь" связен " в…
Данина алгоритм выявляет канонический или основной сценарий, альтернативные сценарии формируются па основании либо иного опыта преподавания, либо с учетом категории пользователе!!.
Последовательное применение данного подхода и визуальных методов проектирования позволило сформировать ГРАФИТ-техиологшо и реализовать ее в ряде программных продуктов ВИКОНТ (ВИзуальиьп! Конструктор Онтологий), ПЕГАС (ПроЕктпрованпе Гппер-Активных Схем) [Гаврилова и др., 1998-2000] (рис, 5.11).
Графические технологии(ГРАФИТ)
Эксперт в предметной области
Рис. 5.11. ГРАФИТ-технология визуального проектирования ГТ
Прн разработке пшермедиа-приложений необходимо также учитывать фактор сбалансированности звуковых и видсоузлов опорной ГТструктуры, то есть аудио- и видеофрагменты должны равномерно распределяться на сети. Для это- г0 в технологию ГРАФИТ введено понятие «раскраски» узлов, что позволяет наглядно оценить сбалансированность сети по аудио- и видеонагрузке. Алгоритм «ОСА-пшер» учитывает необходимость анализа нс только исходной информации, но н навигационных возможностей:
перемещение на экран назад;
возврат к началу;
возврат к началу секцни;
просмотр структуры;
озвучивание экрана;
включение видео;
помощь;
перемещение на экран вперед.
Особенно Ценно в реализации графической навигации то, что в произвольный момент пользователь может посмотреть структуру сценария и понять, в каком месте он сейчас находится.
Данныii подход использован при создании ГТ АОС в области инженерии знаний Д-пя систем дистанционного обучения (Gavrilova, Stash, Udaltsov, 1998). Системы обучения в области ИИ имеют пока небольшую историю, хотя при отсутствии учебников по данным дисциплинам эти электронные учебники особенно необходимы. Известны лишь единичные работы в нашей стране и за рубежом — «База знаний для разработчиков ЭС» [Молокова, Уварова, 1992] и KARTT (Knowledge Acquisition Research and Teaching Tool) [Liebovitz, Bland, 1994].
При проектировании любой ГТ структуры нетривиальной задачей является выделение «опорных* концептов — вопрос, практически не освещенный в литературе. В работе [Гаврилова, Червинская, 1993] представлен обзор различных ste- тодов извлечения знаний, частично включающих и исследования по выявлению значимых концептов. Можно предложить использовать для этой цели методы многомерного шкалирования, позволяющие выявлять структуру индивидуальных ментальных пространств, анализируя попарные связи понятий предметной области (см. п. 5.1).
Эти методы использовались и ранее для изучения семантических пространств памяти [Терехина, 1988; Петренко, 1988; Cook, 1985], однако можно использовать новый подход, ориентированныii на анализ не только осей ментальных пространств с выявлением соответствующих конструктов, но н точек спгщения понятий, называемых «аттракторами» для выявления метапонятип или концептов.
В дальнейшем эти концепты образуют узлы {А} релевантной ГТ структуры, которую можно фактически трактовать как модель пользователя UM (user model).
UM = {A, R}.
Более широкие исследования [Voinov. Gavrilova, 1993; Воннов, Гаврилова, 1994] показали, что психосемантическпе методики (см. п. 5.1), обогащенные новыми элементами (использование метафорических планов), мопгт способствовать выявлению имплицитных структур знаний, не поддающихся выявлению другими методами.
Использование UM как гиперструктуры в гипертекстовых АОС позволяет создавать ^гибкие» релевантные сценг1рии, ориентированные на когнитивные особенности определенных групп пользователей. Последнее замечание можно также отнести к разработке систем гипермедиа. Очевидно, что гл^^бокое и конструктивное изучение человеческого фактора в области computer science может существенно раздвинуть ограничения современных интеллектуальных и обучающих систем.
Программный инструментарий разработки систем, основанных на знаниях
口 Технологии разработки программного обеспечения — цели, принципы, парадигмы'
口 Методологии создания и модели жизненного цикла интеллектуальных систем
口 Языки программирования для ИИ и языки представления знаний
Инструментальные пакеты для ИИ
WorkBench-системы
6.1. Технологии разработки программного обеспечения — цели, принципы, парадигмы
6-1.1- Основные понятия процесса разработки программного обеспечения (ПО)
Как известно, технология (от греческого тели ос — мастерство, логос — слово, наука) —это наука о мастерстве.
Под технологией прогрзммироззния понимается [Брукс, 1979] совокупность знаний о способах и средствах достижения целей в обпасти программного обеспечения ЭВМ, в том числе и таких, которые ранее никем не достигались.
В широком смысле технология разработки ПО должна ооеспечпвать последовательный подход к созданию программных систем. Наиболее очевидная цель в
разработке ПО состоит в соблюдении установленных заказчиком требований при реализации системы. Однако у заказчика редко имеются полные и последовательные определения требований. Обычно и заказчик и разработчик не до конца понимают проблему, н требования совершенстнуются в процессе разработки снс- TeMbL Необходимо отметить и факт изменения требований в течение жизненного цикла программной системы.
Изменения являются постоянным фактором разработки "О. Для то го чтооы преодолеть их разрушающий эффект, в качестве целей технологии разработки ПО принимаются следую идпе “етнре своиства про гримм ных систем [Ross ct aL, 1975]:
Модифицируемость. Необходимость модификации ПО обычно возникает по двум причинам: чтобы отразить в системе изменение требовании или чтобы исправить ошибки, внесенные ранее в процессе разработки.
Эффективность системы подразумевает, что при функционировании оптимальным образом используются имеющиеся в ее распоряжении ресурсы: время л память.
Надежность системы ПО означает, что она должна предотвращать концептуальные ошибки, ошибки в проектировании и реализации, а также ошибки, возникающие при функционировании системы.
Понимаемость. Последняя цель технологии ПО — понимаемость — является мостом между конкретной проблемной областью и соответствующим решением. Для того чтобы система была понимаемой, она должна быть «прозрачной».
Цели технологии разработки ПО, рассмотренные выше, не могут лишь пассивно признаваться. Наоборот, по мере выполнения работ необходимо придерживаться определенного набора принципов, которые обеспечивают достижение этих це- ле访.В качестве такнх принципов обычно выделяют [Ross et al., 1975; Буч, 1992] абстракцию, сокрытие информации, модульность, локализацию, единообразие, полноту и подтверждаемость.
Абстракция является одним из основных средств для управления сложными системами ПО. Суть абстракции состоит в выделении существенных свойств с игнорированием несущественных деталей. По мерс декомпозиции решения на отдельные компоненты каждая из них становится частью абстракции на соответствующем уровне. Абстрагирование применяется и к данным, и к алгоритмам. На любом уровне абстракции могут фиксироваться абстрактные типы данных, каждый из которых характеризуется множеством значений ц множеством операции, применимых к любому объекту данного тгша.
Сокрытие или упрятывание информации имеет целью сделать недоступными де- талн, которые могут повлиять на остальные, более существеннее части системы. Упрятывание информации обычно скрывает реализацию объекта или операции н, таким образом, позволяет фиксировать внимание па более высоком уровне абстракции. Кроме того, сокрытие проектных рсидешш нижнего уровня оберега- ет стратегию принятия решений верхнего уровня от влияния деталей.
Аостракция и сокрытие информации способствуют модифицируемости и понимаемости систем ПО. На кaждo^f уровне абстракции допускается применение лишь определенного набора операций и делается невозможным применение лю- 6ь【х операций, нарушающих логическую концепцию данного уровня, за счет чего повышается надежность программной системы.
Модульность является следующим фундаментальным свойством, помогающим управлять сложностью систем ПО. Она реализуется целенаправленным конст- руированием. В самом общем плане модули могут быть функциональными (про- цедурно-ориентированными) или декларативными (объектно-ориентироваи- ньшн). Связность модулей определяется как мера их взаимной зависимости. В идеале должны разрабатываться слабо связанные модули. Другой мерой, применимой к модульности, является прочность, которая определяет, насколько сильно связаны элементы внутри модуля.
Локализация помогает создавать слабо связанные и весьма прочные модули. По отношению к целям технологии разработки ПО принципы модульности и локализации прямо способствуют достижению модифицируемости, надежности и понимаемости.
Абстракция и модульность считаются наиболее важными принципами, используемыми для управления сложностью систем ПО. Но они не являются достаточными, потому что не гарантируют получения согласованных и правильных систем. Для обеспечения этих свойств необходимо привлекать принципы единообразия, полноты и подтверждаемости.
Принципы технологии разработки ПО не должны применяться случайно — необходимо выполнять структуризацию системы определенным образом и, что самое важное, поскольку происходит деление системы на модули, применять согласованные критерии декомпозиции. Можно выделить три основных подхода к разработке ПО, обеспечивающие такие критерии: нисходящее структурное проектирование [Йордан, 1979]; проектирование, структурированное ио данным [Jackson, 1975], и объектно-ориентированное проектирование [Booch, 1986].
Нисходящее структурное проектирование определяет декомпозицию системы путем оформления каждого шага этого процесса в виде модуля. Это приводит к созданию функциональных программных моду лен.
Проектирование, структурированное ио данным, является альтернативой нисхо- дяще11 методологии. При этом сначала определяются структуры Данных, а затем на их основе определяется структура программных модулей. Таким образом, здесь делается попытка сначала четко определить реализацию объектов, а затем сделать их структуру видимой в функциональных модулях, обеспечиваю
щих операции над объектами.
Методы нисходящего проектирования императивны по своей природе. Они заставляют концентрировать внимание на операциях, мало заботясь о проектировании структур данных. Методы проектирования, основанные на структурировании поенным, находятся как бы па другом конце спектра. Они концентрируют внимание на объектах, а операции трактуют глобальным образом.
В идеале разработчикам ПО хотелось бы использовать подход, позволяющий строить решения прямо в соответствии с имеющимся представлением проблемы. Кроме того, как н в естественном языке, желательна сбалансированность объектов it операций на уровне принимаемых решений.
Такой подход пол)7чпл название объектно-ориегстированного [Booch, 1986]. Здесь учитывается важность трактовки объектов ПО как активных элементов, причем каждый объект наделен своим собственным набором допустимых операций. Лег- к0 убедиться, что объектно-ориентированная парадигма поддерживает основные принципы технологии разработки ПО.
6.1.2- Модели процесса разработки ПО
Под жизненным циклом разработки ПО традиционно понимается упорядоченная совокупность этапов, обеспечивэющих создание качественного про「раммно「о продукта. В общем случае в жизненный цикл разработки включаются следующие стадии: техническое задание, эскизный проект, технический проект, рабочий проект и внедрение.
В литературе существует множество нареканий на несовершенство данного разбиения [Липаев п др., 1983], но смысл его в целом достаточно ясен — борьба со сложностью процесса разработки программных продуктов за счет структуризации этапов н локализации на каждом из них только тех задач, которые могут и должны решаться именно здесь. Если перечисленные выше этапы укрупнить, останутся стадии проектирования, реализации 〃 сопровождения.
Проектирование предполагает составление формальных и/ил и формализованных спецификаций.
Реализация — преобразование этих спецификаций в программный код (автоматическое и/или автоматизированное).
Сопровождение — тестирование разработанной системы, ее внедрение и последующую модификацию, которая, в свою очередь, может вернуть весь процесс к стадии проектирован ия /перепроектирование).
Ключевой стадией в жизненном цикле процесса разработки ПО является проектирование. Ошибки и просчеты, допущенные здесь, — самые «дорогие». Поэтому основные усилия в области технологии программирования направлены на автоматизацию проектирования программных комплексов. При этом базисными понятиями являются модель программы и модель системы.
Существуют различные подходы к разработке таких моделей [Миллс, 1970]. Однако с точки зрения целей настоящей книги нас будут интересовать, в первую очередь, те из них, которые имеют непосредственное продолжение в инструментальных средствах и интегрированных инструментальных средах. Поэтому н”*е основное внимание будет уделено моделям программ, которые использу- ются в так называемых WorkBench-системах (наиболее близким по семантике к этому термину является словосочетание «станок для производства ПО»).
Одну из таких моделей предлагает W/O (Warnier/Orr) методология [Огг et al., 1977]. Она объединяет методологию Warnier по использованию логических
^уктур данных и логических конструкций программ и систем и методологию DSSD (Data Structured System Development) Oppa, базисом которой является аксиома о логическом соответствии между эвристической структурой программ и данных, обрабатываемых этими программами. На практике такая методология
предполагает, что в распоряжении проектировщика системы имеется представи- тельный набор процедурных шаблонов для достаточно широкого класса программируемых задач.
В настоящее время DSSD-методология «переросла» нз методологии разработки программ в методологию разработки систем. При этом выделены явно уровень программирования (programming level) и системный уровень (system level). Применяются в DSSD два концептуальных представления - диаграммы входов (Entity diagrams), обеспечивающие определение системного контекста, и модифицированные W/O-диаграммы (Assembly-line Diagrams), специфицирующие функциональное развитие системы [McClure, 1979].
Следующим подходом к созданию моделей программ (по идее достаточно близким к W/O-методологии) является логическое моделирование Гэйна [Cane et al., 1979]. Сам метод ориентирован на создание систем обработки данных. Логическая модель системы проектируется в процессе последовательного применения следующих семи этапов: описание природы предметной области с помощью диаграмм потоков данных (Data Flow Diagram); выделение первичной модели данных (списка элементов данных в каждом ниформациопном узле); проверка того, что DFD действительно отражает структуру данных, хранимых в системе; сведение полученной на предыдущем этапе информации в двумерные таблицы, которые в дальнейшем нормализуются; коррекция DFD с учетом результатов нормализации предыдущего этапа; разбиение полученной в результате выполнения предмдутнх этапов модели на «процедурные единицы» (procedure units), а также определение деталей каждой процедурной единицы. После выполнения этих этапов принимается решение о необходимости прототипирования системы на целевом языке.
И наконец, третьим в ряду подходов iq созданию модели проектируемом программы является метод Йордана (Yourdon) [Yourdon et al., 1979; Yourdon, 1989]. Он включает два компонента: инструментальные средства и методики. Ориентирована методология Йордана на проектирование систем обраоотки данных. Под инструментальными средствами здесь понимаются различные диаграммы, используемые при описании моделей требований п моделей архитекторы проектируемо 自 информационной системы. Самые известные из таких диаграмм - Диаграммы потоков данных DFD. Однако их недостатком является отспствие средств описания отношений между данными и их .поведения» во времени. Вот почему в инструментальные средства метода Йордана на сегодняшний день кроме DFD включены ERD-дпаграммы (Entity Relationship Diagrams) и STD-диа
граммы (State Transition Diagrams).
Методики в методе Йордана помогают перектн от бланка на бумаге и/или экранной формы к хорошо организованной системной модели. Первоначально ли ме тодики^азировались традиционном top-down проектпрованип. В настоящее
203 ГНава 6 • Про「раммнм济 инструментарий разработки систем время здесь используется метод со6ытш1ного разонення (event partitioning). При этом сначала создается контекстная диаграмма верхнего уровня (top level context diagram), где определяются системные ограничения н интерфейсы с внешним «миром»'. Затем с помощью техники интервью формируется список собмти访 из внешней среды, на которые система должна реагировать. Такой подход обеспечи- вает простой базис для формирования «сырой» DFD. Несколько DFD-реакций могут быть объединены в реакцию более высокого уровня. Критерием такого объединения является наличие узлов, связанных общими данными. По существу, событийное разбиение не что иное, как метод объектно-ориентированного проектирования.
Проблемы, возникающие при использовании метода ERD-aiiarpaMM, связаны, прежде всего, с трудностями интеграции компонентов при разработке всей снсте- мн. Вот почему в последнее время этот метод был обобщен за счет введения интегрированной базы данных. При этом ERD-метод трансформируется в структурную методологию, основные этапы которой сводятся к разработке ERD (здесь выделяются как собственно сущности с их типами, так и связи, тоже с их типами); определению кардинальности (cardianality) — однозначности-многозначности типов связей; преобразованию ERD по определенным правилам в соответствующий файл н структуру БД. В процессе такого преобразования каждый тип сущности трансформируется в отношение, а тип связи — в особое (stand alone) отношение пли объединяется с другими отношениями в зависимости от кардинальности типа связи. Разработка прикладных программ на основе сформированного файла и структуры базы данных является заключительным этапом в этом подходе.
Последним методом, который кратко рассматривается в данном подразделе, является метод структурного проектирования (Structured Design) [Yourdon et al,, 1979]. Структурное проектирование сдела.чось действительно мощным и активно используемым на практике подходом за счет того, что к моделям и методам были добавлены оценки результатов проектирования. Здесь предлагаются все проектные решения располагать в 3-мерном пространстве (содержание — сложность — связность). И утверждается, что хорошими проектными решениями будут лишь те, которые при заданном содержании имеют минимальную сложность и максимальную связность. По существу, этот критерий отражает уже обсуждавшиеся ВЬ1Ше понятия абстрагируемостн, модульности, сокрытия информации, связнос- тн и т. п. Конкретным примером воплощения структурного подхода является «водопадная>> или «каскадная» (waterfall) глодель разработки систем ПО [Balzer et al„ 1983].
Технология программирования уже прошла достаточно долгий путь развития, и сейчас происходит переоценка ее фундаментальных исходных посылок. Первым кандидатом Для такой переоценки стала традиционная точка зрения на процесс разработки ПО, как на процесс, основанный на понятии жизненного цикла. Рас- тущее единодушие специалистов состоит в том, что данная точка зрения должна 6ь】ть заменена такой, которая в большей степени соответствовала бы разработкам, поддерживаемым автоматизированными средами.
В качествеВ качествеОпределение ситуации, альтернатив, ограниченийОпределение ситуации, альтернатив, ограниченийОценка альтернатив, разрешение рисковОценка альтернатив, разрешение рисковРис. 6.1. Спиральная модель БоэмаРис. 6.1. Спиральная модель Боэма
В качестве
В качестве
Определение ситуации, альтернатив, ограничений
Определение ситуации, альтернатив, ограничений
Оценка альтернатив, разрешение рисков
Оценка альтернатив, разрешение рисков
Рис. 6.1. Спиральная модель Боэма
Рис. 6.1. Спиральная модель Боэма
npin^pa смены парадигм можно отметить спиральную модель процесса разработки МО (рис. 6.1), предложенную Боэмом [Boehm, 1986], суть которой С0СТ0ИТ в тем, ЧТО отдельные фазы процесса «прокручиваются, на постепенно повышающихся уровнях иерархии. п нно
Л Увеличение стоимости
Результатом разработки при этом становится ис только программный код, но и его представление на более высоком уровне, что особенно важно в тех случаях, когда ПО эволюцнонпзирует. Естественно, что такая модель предполагает наличие более гибких механизмов взаимодействия между потребителями и разработчиками и соответствующих инструментальных средств.
В Европе это направление ассоциируется, прежде всего, с проектированием ПО на основе объектно-ориентированных методологий, среди которых наиболее популярными являются технология MERISE и методология Шлайера—Мэллора (Shlaer-Mellor) [Andre et al., 1994; Shlaer et al., 1992].
В рамках данного подхода проектирование рассматривается как процесс, протекающий в пространстве трех измерении: «статика»—«динамика»—«алгоритмы# (рис. 6.2).
Жизненный цикл при этом похож на виток в спирали Боэма, но включает другие стадии. Первая из них связана с осью «Статика» и предполагает идентификацию и описание объектов, атрибутов и отношений, которые требуются для спецификации проектируемой системы. Вторая стадия служит для описания поведения каждого объекта в ответ на внешние запросы н дает в качестве результата совокупность жизненных циклов всех введенных объектов. Затем проектируются ал-
210 бава 6 • Про「раммньВ инструментарий разработки систем горитмы реализации действий, специфицированных на предыдущей стадии, и, наконец, на четвертой стадии осуществляется валидация спроектированной сис- темы н; полноту и функциональное соответствие исходной задаче. Последняя стадия может потребовать нового витка в модели жизненного цикла.
Рис. 6.2, Проектирование в методоло「нн Shlaer-Mellor
Таким образом, мы рассмотрели основные модели процессов разработки систем «традицонного» программного обеспечения и теперь переходим к анализу соответствующего инструментария.
3- Инструментальные средства поддержки разработки систем ПО
Технология программирования в целом и средства поддержки разработки ПО, в частности, развиваются настолько быстро, что даже простое перечисление основных инструментальных систем заняло бы в этой книге слшиком много места. Вот почему ниже мы остановимся кратко лишь на нескольких проектах в области технологии программирования, которые интересны в контексте данного издания.
Любая развитая технологическая система должна поддерживать все основные этапы создания проектируемого программного комплекса. Для достижения этой Пели в общей структуре типовой технологической системы поддержки разработ- 仙(рис. 6.3) обычно выделяют базу данных проекта; подсистему автоматизации проектирования и программирования; подсистемы отладки, документирования и сопровождения, а также подсистему управления ходом выполнения проекта.
Исходные и промежуточные спецификациипрограммы,тесты, задания и т. &
TZZTZL:
Документация, результаты работыподсистем, результаты прогонов и т. д.
Рис. 6.3. Общая структура типовой технологической системы поддержки разработки
Развитые библиотечные системы поддержки разработки используются в настоящее время во всем мире во всех сколько-нибудь серьезных программных проектах. Но в подавляющем большинстве случаев такие системы достигли уровня удобства работы с ними квалифицированных программистов. Нас же, прежде всего, интересуют системы п проекты, в которых имеются тенденции к экстыи- цитному представлению технологических знаний, даже если они и не базируются на идеях н методах Ш4.
Один из таких проектов — Gandalf [Haberman et al., 1986] — ориентирован на автоматизированную генерацию систем разработки программного обеспечения. Исследования, выполняемые в рамках проекта Gandalf, касаются трех аспектов поддержки проектирования ПО: управление проектом, контроль версий и инкрементное программирование, а также интеграция их в единую среду. Управление в Gandalf-среде базируется на предположении, что разрабатываемый проект должен трактоваться как множество абстрактных типов данных, над которыми мопт выполняться лишь определенные операции. Средством, реализующим данную концепцию, явилась система SDC (Software Development Control), представляющая собой набор программ, первоначально реализованных на языке Shell в системе UNIX, а позднее переведенная иа язык С.
Исследования в области контроля версий были начаты еще Л. Коопридером на базе проекта FAFOS [Habermann et al., 1976], где изначально анализировались возможности создания семейства операционных систем. Была разработана нота- цня для описания вз2имоде11ствия между подсистемами, “ля отшснння разлнч- нмх версий подсистем (исходного и объектного кода, документации и т. п.) и для описания действующих на этапе разработки механизмов (компиляция, редактирование связей 11 т. п.)- Затем был создан специальный язык Intercol как средство описания взаимосвязи и версий модулeii в системе. И наконец, в систему были встроены знания о том, как конструировать систему из частей, не заставляя занижаться этим пользователя. В развитие этих работ была создана система SUCE, в рамках которой отслеживались различия между реализациями (версиями, которые действительно дают код для ряда спецификаций) и композициями (версиями, определяющилш новые подсистемы как группы существующих подсистем). В системе LOIPE (Language-Oriented Incremental Programming Environment) инкрементная компиляция выполняется на уровне отдельной процедуры. Достоинством такого подхода является то, что при коррекции процедуры на уровне локальных объектов или типов перекомпилируется только она. Если же меняется спецификация, то перекомпилируются и все зависящие от нее процедуры. Пользовательский интерфейс с LOIPE-системой базируется на подсистеме сннтаксн- чески-ориентированного редактирования ALOE (A Language-Oriented Editor). Целью разработки этой подсистемы было исследование возможности создания и использования синтакснчески-ориентированных редакторов в качестве базиса для сред программирования.
Анализ литературы последних лет по технологии программирования показывает, что новой ветвью в технологии промышленной разработки и реализации сложных и значительных по объему систем программного обеспечения является CASE-технология (Computer Aided Software Engineering) [BYTE, 1990]. Первоначально CASE-технология появилась в проектах создания промышленных систем обработки данных. Это обстоятельство наложило свой отпечаток н на инструментальные средства CASE-технологии, где самое серьезное внимание уделялось, по крайней мере в ранних CASE-системах, поддержке проектирования информационных потоков. В настоящее время наблюдается отход от ориен- тацнп на системы обработки данных, и инструментальные средства CASE-тех- нологии становятся все более универсальными.
Все средства поддержки CASE-технологии делятся и а две большие группы: CASE-ToolKits и CASE- Workbenches. Хороших русских эквивалентов этим терми- нам нет. Однако первые часто называют «инструментальными сундучками» (пакетами разработчика, технологическими пакетами), а вторые — «станками для производства программ» (технологическими линиями).
По определению [BYTE, 1990]. CASE-ToolKit — коллекция интегрированных просрамм- нЫХ средств, обеспечивающих автоматическое ассистирование в решении задач одно- го типа в процессе создания программ.
Такие пакеты используют общее «хранилище» для всей технической и управля- lomeS информации по проекту (репозиторий), снабжены общим интерфейсом с пользователем и унифицированным интерфейсом между отдельными инструментами пакета. Как правило, CASE-ToolKit концентрируются вокруг поддержки разработки одной фазы производства программ пли на одном типе прикладных задач.
Все вышесказанное справедливо н по отношению к CASE-WorkBench. Но здесь, кроме 1 ого, обеспечивается автоматизированная поддержка анализа решаемых задач по производству программного обеспечения, которая базируется на общих предположениях о процессе и технологии такой деятельности; поддерживается автоматическая передача результатов работ от одного этапа к другому, начиная со стадии проектирования и кончая отчуждением созданного программного продукта и его сопровождением.
Таким образом, CASE-WorkBench является естественным «замыканием* технологии разработки, реализации и сопровождения программного обеспечения.
В настоящее время «типовая» система поддержки CASE-технологии имеет функциональные возможности, представленные на рис. 6.4.
Рис. 64 Функциональные возможности типовой системы поадержки СА5Е-технологиИ
Как следует из 3Tofi Н-диаграммы, в CASE-среде должны поддерживаться все основные этаны разработки и сопровождения процессов создания програмл н CHCTevI Однако vpoBeiib такой поддержки существенно различи. Так. наприлер, еслиговорнть обэтапах анализа н проектирования, большинство инструментальных пакетов поддерживает экранные и отчетные формы, создание прототи
пов)обнаружение ошибок. Значительная часть этих средств предназначена для ИзЬм Многие поддерживают такие широко лспользуемые методологии, как структурный анализ DeMarco пли Gane/Sarson, структурное проектирование Yourdan/Jackson и некоторые другие. Существуют специализированные пакеты разработчиков для создания информационных систем, например AnaTool (Advanced Logical Software) для Macintosh; CA-Universe/Prototype (Computer Associates International) для ПЭВМ. Имеются CASE-среды и для поддержки разработки систем реального времени.
В среде разработчиков ПО существуют две оценки данного подхода: часть из них считает, что CASE-технология кардинально меняет процессы разработки и эксплуатации ПО, другие отрицают это и оставляют за инструментальными средствами CASE лишь функцию автоматизации рутинных работ [BYTE, 1989]. Однако анализ литературы показывает, что CASE средства все-таки «сдвигают» технологии разработки ПО с управления выполнением проектов в сторону метода прототипизации. И этот сдвиг, на наш взгляд, чрезвычайно важная тенденция в современной технологии программирования.
Методологии создания и модели жизненного цикла интеллектуальных систем
В настоящее время в области разработки и реализации интеллектуальных систем сложилось следующее положение: с одной стороны, квалификация коллективов разработчиков здесь, как правило, достаточно высока, чтобы считать классические положения технологии разработки ПО, обсуждавшиеся выше, естественным компонентом работы. С другой стороны, жизненно важными технологические аспекты создания интеллектуальных систем становятся, лишь когда такие системы выходят на уровень промышленных разработок. Создание и внедрение интеллектуальных систем общения с промышленными базами данных, систем машинного перевода нового поколения, интеллектуальных систем автоматического синтеза программ и особенно экспертных систем, по существу, и выдвинуло проблему технологической поддержки разработок в области ИИ на передний план [SIG- SOFT, 1986].
На фоне вышеописанной ситуации обращает на себя внимание тот факт, что име- ются только единичные примеры инструментальных систем, которые бы поддерживали некоторую четко провозглашенную технологию разработки ПО и опнра- лнсь бы на достаточно развитые системы представления знании [Ramamoorthy et al., 1987]. Учитывая это, в данном параграфе рассматриваются технологичес- к”е аспекты и методологии создания интеллектуальных систем в свете введен- Hbix выше понятий технологии программирования, а в следующих — инструмен- тарий для разработки систем ИИ.
Стнль программирования систем искусственного интеллекта существенно отличается от стиля программирования с использованием обычных ал го р итмич еских
Я3^1К0В- При этом почти каждая подобласть области ИИ характеризуется своим программирован呐 не всегда адекватным для других прило- женин. В табл. 6.1 приведены некоторые характерные отличия между обычными программными системами и системами ИИ [Ramamoorthy et al, 1987]
Таблица 6.1. Отличия систем ИИ от обычных программных систем
Характеристика программирование
ПрограммированиеТрадиционное
в СИИ
Тип обработки
Методы
Задание шагоа решения
Искомое решение Управление и данные Знания
Модификации
СимвольнаяЧисловая
Эвристический поискАлгоритм
НеявноеТочите
УдовлетворительноеОптимальное
ПеремешаныРазделены
НеточныеТочные
ЧастыеРедкие
Но ввиду все возрастающего использования систем ИИ в конкретных приложениях, к ним начинают предъявляться практически те же требования, что и к традиционным программным комплексам и системам. В связи с этим становится весьма актуально" поддержка жизненного цикла программ в ИИ. К основным этапам в этом случае относятся инженерия требований, тестирование на прототипах и сопровождение.
Как и в случае обычных программных систем, разработка системы ИИ должна начинаться с формулирования полных, непротиворечивых и однозначных требований к ней [Basili et al., 1984]. При проектировании должны использоваться принципы технологии разработки ПО — такие, например, как сокрытие информации, локализация и модульность. Предполагается, что система должна проектироваться как композиция уровне!!. Любой уровень должен быть чувствителен лишь к нижележащим уровням. Такое проектирование упрощает не только реализацию, но н тестирование.
Тестирование 〃О ИИ отличается от тестирования обычных систем, так как для первых характерно недетерминированное поведение вследствие использования стратегии разрешения конфликтов, зависящей от параметров периода исполнения программы. Поэтому единственным эффективным способом тестирования систем ИИ является прототипизацпя.
Фаза сопровождения, В1слючающая выполнение самых различных модификации системы, является важнейшим этапом процесса разраоотки люоо11 системы, но имеет свою специфику для систем НИ. Здесь база знаний — наиболее динамичный компонент п меняется в течение всего жизненного никла. Поэтому сопровождение интеллектуальных систем - серьезная проблема. Но именно вопросам сопровождения уделяется мало внимания, хотя в обычном программировании имеются средства, которые могли бы быть адаптированы и 工】仪 случая Это, например, системы управления версиями, системы управления конфигурацией и системы модифицирующих запросов.
Такнм образом, создание ПО систем, основанных на знаниях, имеет как общие моменты с разработкой традиционных систем ПО, так и свою специфику, которая явным образом должна отражаться в соответствующих моделях жизненного цикла.
В недавнем пpoшJIO^^ полигоном для создания и испытания таких моделей являлись экспертные системы (ЭС).
В ходе работ по созданию ЭС практически сложилась определенная технология, включающая следующие основные этапы: идентификацию, концептуализацию, формализацию, реализацию и тестирование [Попов, 1987; Уотерман, 1989].
На этапе идентификации определяются задачи, подлежащие решению, выявля- ются цели разработки, ресурсы, наличие экпертов, готовых и способных передать свои знания проектируемой ЭС, категории и требования будущих пользователей. Концептуализация необходима для проведения содержательного анализа предметной области, в процессе которого выделяются используемые понятия и их взаимосвязи, определяются методы решения задач, и подробно обсуждалась в предыдущих главах.
На этапе формализации определяются способы представления всех типов знаний, специфицируются выделенные ранее понятия, фиксируются способы интерпретации знаний, моделируется работа системы, и оцениваются полученные результаты.
Этап реализации предполагает создание программной обстановки, в которой будет функционировать будущая система, и наполнение экспертом базы знаний, а на этапе тестирования эксперт и инженер по знаниям в интерактивном режиме, используя, в частности, объяснения, проверяют компетентность ЭС.
В заключение на этапе тестирования проверяется пригодность ЭС для конечных пользователей.
Понятно, что процесс создания ЭС не сводится к строгой последовательности выполнения вышеперечисленных этапов. В ходе разработки происходят многочисленные возвраты к предыдущим этапам и решения, принятые там, пересматриваются. Все это существенно снижает общую эффективность разработки конкретной системы и позволяет сделать вывод о том, что модель жизненного цикла, соответствующая такой технологии, имеет мало шансов на промышленное использование.
Это, конечно, не означает, что ЭС, разработанные в рамках такой методологии, практически бесполезны или их проектирование вообще невозможно. Обычно таким образом создаются небольшие автономно фу и кционирующие ЭС первого поколения.
Промышленная технология создания ЭС включает три фазы (или, если быть точнее, технологии): проектирование, реализацию и внедрение. Жизненны!! цикл разработки, охватываемый этой технологией или совокупностью технологий, состоит из 6 этапов: исследование выполнимости проекта^разработка общей концепции ЭС; разработка w тестирование серии прототипов;разработка и испыта- ”“е головного образца;разработка w проверка расширенных версий системы; привязка. системы к реальной рабочей среде.
На фазе проектирования проект инициализируется, формируется группа разработчиков, определяются требования к будущей ЭС, проводятся исследования выполнимости проекта и вырабатывается общая концепция будущей системы. Остальные фазы данной технологии, по мнению [Микулич, 1990], ближе к технологии Уотермана (Waterman) и направлены на реализацию разработанной концепции в виде серии прототипов, последовательно приближающихся к требуемой ЭС. Последний из прототипов и приобретает статус головного образца, который устанавливается будущим пользователем в реальную операционную среду.
Нетрудно понять, что первые два этапа промышленной технологии соответствуют этапу идентификации; следующие три — этапам концептуализации, формализации, реализации и тестирования. Новым и вместе с тем естественным для промышленной технологии является здесь этап привязки системы к реальной рабочей обстановке.
Недостатком и той и другой технологии является то, что в действительности это лишь более или менее структурированный набор методических рекомендаций, к отдельным элементам которого, в лучшем случае, привязаны те или иные инструментальные средства. И можно сказать, что сегодняшнее состояние здесь ближе к описательному, чем к естественно-научному. А это влечет за собой наличие интерпретаций методологических рекомендаций, которые могут быть настолько различными, что теряется сама идея технологии. Таким образом, самым важным на данном этапе является создание операциональных моделей технологин разра- боткн интеллектуальных систем. И здесь, по нашему мнению, хорошим примером могут послужить модели экспертизы, уже разработанные в рамках передо- ваннп по приобретению знаний.
Приобретение знаний, как уже неоднократно отмечалось выше, является ключе- Вой задачей во всех технологиях построения систем, основанных на знаниях (СОЗ) Существует распространенный принцип, согласно которому производительность СОЗ находится в прямой зависимости от количества знании, содержащихся в системе [Feigenbaum, 1977]. Более 15 g с мo^Ieнтa появления ной программы TIERESIAS [Davis, 1984], исследователи в «^аст» ИИ рассмат ривают приобретение знаний как задачу переноса знании экспертав что чрезвычайно важно для создания действующей寞黑
время работы в области приобретения знании становятся в^ым и зрения использования полученных здесь результатов для создания интелл . альннх технологий разработки самих СОЗ.
Первое поколение методик для СОЗ базировалось на подходах двух типов, по- —о. ^пропютипко^еннямн о жизненном цикле [Buchanan
曾離“黑齎 а;端 н с^ветствуюшей поддержке его основно е™ ВпоагоЭе первого поколения [Gr^^
процесс приобретения знаний может не。吁рм области экс- 湍閣器XX嚣編:謊篇嚴……… ……
анализа. Во втором поколении СОЗ-методик признана сложность процесса приобретения знаний, преодоление которой видится в моделировании экспертизы. В данной области были предложены такие методики, как онтологический анализ [Alexander et al., 1987], концептуальные графы Sowa [Clancey, 1985], подходы, ос- нованные на обобщенных (родовых) задачах [Chandrasekaran, 1985], и концепту- альное моделирование, например KADS-методология [Breuker et al., 1986]. Ме- тоднкн приобретения знаний обсуждаются в огромном числе работ и, в част- ностн, в предыдущих главах настоящей книги> Не имея места для их сколько- нибудь полного анализа, сошлемся здесь лишь на обзоры [Wielinga et al., 1988; Молокова, 1992; Осипов, 1993] п перейдем к инструментальным средствам поддержки разработки интеллектуальных систем.
Языки программирования для ИИ и языки представления знаний
Обсуждение технологических аспектов разработки сложных программных систем, проведенное выше, показывает, что наиболее проработанным этапом здесь является реализация программных проектов. По идеям и методам этот этап близок к автоматизации программирования — одной из основных проблем нспользо- вания средств вычислительной техники. Здесь уже в течение многих лет применяется обширный арсенал языков программирования высокого уровня, ориентированных на удобную и эффективную реализацию различных классов задач, а также широкий спектр трансляторов, обеспечиваюшнх получение качественных исполнительных программ. Все шире используются на современном этапе и ме- тоды автоматического синтеза программ. Уже стало обычным применение языково-ориентированных редакторов и специализированных баз данных. И можно сказать, что в рамках технологии программирования уже практически сформировалась концепция окружения разработки сложных программных продуктов, которая и определяет инструментальные средства, доступные разработчикам.
Необходимость использования средств автоматизации программирования прикладных систем, ориентированных на знания, н в частности ЭС, была осознана разработчиками этого класса программного обеспечения ЭВМ уже давно. По существу, средства поддержки разработки интеллектуальных систем в своем разви- т“н прошли основные стадии, характерные для систем автоматизации программирования.
Оценивая данный процесс с сегодняшних позиций, можно указать в этой области две тенденции. Первая из них как бы повторяет «классический» путь развития средств автоматизации программирования: автокоды — языки высокого уровня — язьш/ сверхвысокого уровня — языки спецификаций. Условно эту тенденцию мож- но назвать восходящей стратегией в области создания средств автоматизации разработки интеллектуальных систем. Вторая тенденция, нисходящая, связывает- ся с0 специальными средствами, уже изначально ориентированными на опреде- ленные классы задач и методов ИИ. В конце концов, обе эти тенденции, взаимно
обогатив друг друга, должны привести к созданию мощного н гибкого инструментария интеллектуального программирования. Но для настоящего этапа в этой области, по нашему мнению, характерна концентрация усилий в следующих на
правлениях:
Разработка систем представления знаний (СПЗ) путем прямого использования широко распространенных языков обработки символьной информации и, все чаще, языков программирования общего назначения.
Расширение базисных языков ИИ до систем представления знаний за счет спе- циа.аизироваиных библиотек и пакетов.
Создание языков представления знаний! (ЯПЗ), специально ориентированных на поддержку определенных формализмов, и реализация соответствующих трансляторов с этих языков.
На начальном этапе развития ИИ языков и систем, ориентированных специально на создание прикладных систем, основанных на знаниях, не существовало. С одной стороны, в то время еще не оформился сам подход, в котором центральное место отводилось бы изложению теории в форме программ, а с другой 一 сама область ИИ только зарождалась как научное направление. Немаловажным было н то, что появившиеся к тому времени универсальные языки программирования высокого уровня казались адекватным инструментом для создания любых, в том числе и интеллектуальных, систем. Однако сложность и трудоемкость разработки здесьнастолько велики, что практически полезные интеллектуальные системы становятся недоступными для реализации. Учитывая вышесказанное, были разработаны языки и системы обработки символьной информации, которые на не- сколько десятилетий стали основным инструментом программирования интел-
лекгуа.цьных систем.
До недавнего времени наиболее популярным базовым языком реализации сис- тем ИИ вообще и ЭС, в частности, был ЛИСП [McCarthy, 1978]. Ниже кратко рассматривается эволюция ЛИСПа, а затем обсуждаются альтернативы зтому языку существовавшие и существующие в области реализации систем, ориентированных на знания. Результаты этого краткого обзора суммированы в схемы развития средств автол.атизации программирования鑑黑臨爲
тем на рис. 6.5. Подробнее эти вопросы обсуждаются в работе [Хорошевск , 1990а, Хорошевский, 1990b].,
известно язык ЛИСП был разработан в Стэнфорде под руководством ДЖ-
Мт М -累Дов и неп^едназначался мале для 即噥嚣賦 ХиИ. Это был язык, который должен был стать следующим за ①ОРТРАНом шагом на пути автоматизации программирования.
По первоначальном -™ ноВьп=
матрицами, указателями и стр} ктурах .^^^ ^ в д^ьнейшем будут созданы ЛерВЬ,е Р黑謂*爲黑駕торКав 赢ре [McCarthy, 1978]. к счастью. ZZ:爲黑需嬴кта не ^ило средств. К тому же к моменту 3一
ния первых ЛИСП-интерпретаторов в практику работы на ЭВМ стал входить диалоговый режим, и режим иптерпрсташш естественно вписался в общую структуру диалоговой работы.ния первых ЛИСП-интерпретаторов в практику работы на ЭВМ стал входить диалоговый режим, и режим иптерпрсташш естественно вписался в общую структуру диалоговой работы.Рис. 6.5. Эволюция средств представления знанийРис. 6.5. Эволюция средств представления знанийПримерно тогда же окончательноПримерно тогда же окончательнов основу языка ЛИСП:в основу языка ЛИСП:сформировались и принципы, положенные
ния первых ЛИСП-интерпретаторов в практику работы на ЭВМ стал входить диалоговый режим, и режим иптерпрсташш естественно вписался в общую структуру диалоговой работы.
ния первых ЛИСП-интерпретаторов в практику работы на ЭВМ стал входить диалоговый режим, и режим иптерпрсташш естественно вписался в общую структуру диалоговой работы.
Рис. 6.5. Эволюция средств представления знаний
Рис. 6.5. Эволюция средств представления знаний
Примерно тогда же окончательно
Примерно тогда же окончательно
в основу языка ЛИСП:
в основу языка ЛИСП:
использование единого спискового представления для
программ п Данных; применение выражений для определения функций; скобоч- 廿 Провес разработки языка завершился созданием версии
ЛИСП 15【McCarthy, 1978]t которая на многие годы определила пути его р爲и・
На протяжении всего существования языка было много попыток его усовершенствования за счет введения дополнительных базисных примитивов и/или управ- ляюпхих структур, Однако, как правило, все эти изменения не прививались в качестве самостоятельных языков, так как их создатели оставались в «лнсповской> парадигме, не предлагая нового взгляда на программирование.
После разработки в начале 70-х годов таких мощных ЛИСП-систем, как MacLisp н Interlisp [Moon, 1973; Teitelman, 1974], попытки создания языков ИИ, отлич- iibix от ЛИСПа, но на той же парадигме, по-видимому, сходят на нет. И дальней- шее развитие языка идет, с одной стороны, по пути его стандартизации (таковы, например, Standart Lisp, Franz Lisp и Common Lisp), а с другой — в направлении создания концептуально новых языков для представления и манипулирования знаниями, погруженных в ЛИСП-среду [Barr et al„ 1982].
К концу 80-х годов ЛИСП был реализован на всех классах ЭВМ, начиная с персональных компьютеров и кончая высокопроизводительными вычислительными системами. Новый толчок развитию ЛИСПа дало создание ЛИСП-машин, которые и в настоящее время выпускаются рядом фирм США, Японии и Западной Европы.
Из предыдущего может сложиться впечатление, что язык ЛИСП (а вернее его современные диалекты) — единственны!! язык ИИ. В действительности, конечно, это не так. Уже в середине 60-х годов, то есть на этапе становления ЛИСПа, разрабатывались языки, предлагающие другие концепт>гальные основы. Наиболее важными из них в области обработки символьной информации являются, по нашему мнению, СНОБОЛ [Griswold, 1978], разработанный в лабораториях Белла, и язык РЕ ФАЛ [Турчин, 1968], созданный в ИПМ АН СССР.
Первый из них (СНОБОЛ) 一 язык обработки строк, в рамках которого впервые появилась и была реализована в достаточно полной мере концепция поиска по образцу. С позпциii сегодняшнего дня можно сказать, что язык СНОБОЛ был одной из первых практических реализаций развитой продукционной системы. Наиболее известная ii интересная версия этого языка — СНОБОЛ-IX7 [Грисуолд и др., 1980]. Здесь, на наш взгляд, техника задания образцов п работа сними существенно опередили потребности практики. Может быть именно это, а также политика активного внедрения ЛИСПа помешали широкому использованию языка
СНОБОЛ в области ИИ. “ В основу языка РЕФАЛ положено понятие рекурсивной функции, определенной на множестве произвольных символьных выражений. Базовой структурой данных этого языка являются списки, но не односвязные, как в ЛИСПе, а двунаправленные Обработка символов ближе, как мы бы сказали сегодня, к продукционному формализму. При этом активно используется концепция поиска по。。『:衆 характерная для СНОБОЛа. Таким образом, РЕФАЛ вобрал в себя лучшие чер
ты наиболее интересных языков обработки символьной информации 60-х годов В настоящее время можно говорить о языке РЕФАЛ второго [Климов и ДР-> 1987] п дажс третьего поколения. Ревизован РЕФАЛ на всех основных типах ЭВМ и актпвн0 используется для автоматизации построения трансляторов, для построе- нпя систем аналитических преобразовании, а также, подобно ЛИСПу, в качестве инструментальной среды для реализации языков представления знаний [Хор。- шевский, 1983].
В начале 70-х годов появился еще один новый язык, способный составить конкуренцию ЛИСПу при реализации систем, ориентированных на знания, — язык ПРОЛОГ [Clocksin et al., 1982]. Он не дает новых сверхмощных средств программирования по сравнению с ЛИСПом, но поддерживает другую модель организации вычислений. Подобно тому, как ЛИСП скрыл от программиста устройство паМяти ЭВМ, ПРОЛОГ позволил ему не заботиться (без необходимости) о потоке управления в программе. ПРОЛОГ предлагает такую парадигму мышления, в рамках которой описание решаемой задачи представляется в виде слабо структурированной совокупности отношений. Это удобно, если число отношений не слишком велико и каждое отношение описывается небольшим числом альтернатив. В противном случае ПРОЛОГ-программа становится весьма сложной для понимания и моднфшсацип. Возникают и проблемы эффективности реализации языка, так как в общем случае механизмы вывода, встроенные в ПРОЛОГ, обеспечивают поиск решения на основе перебора возможных альтернатив и дек.паратив- ного возврата из тупиков. ПРОЛОГ разработан в Марсельском университете в 1971 г. [Colmerauer, 1983]. Однако популярность он стал приобретать лишь в начале 80-х годов, когда благодаря усилиям математиков был обоснован логический базис этого языка, а также в силу того, что в японском проекте вычислительных систем V поколения ПРОЛОГ был выбран в качестве базового для машины вывода. В настоящее время ПРОЛОГ завоевал признание и па американском континенте, хотя уступает в популярности ЛИСПу и даже специальным продукционным языкам, широко используемым при создании ЭС.
Мы рассмотрели языки общего назначения для задач ИИ. Вместе с тем в рамках развития средств автоматизации программных систем, ориентированных на зна- ння, были языки, сыгравшие важную роль в эволюции основных языков ИИ. В первую очередь среди них необходимо выделить языки, ориентированные на программирование поисковых задач. Это ПЛЭНЕР и различные его модпфика- нни [Пильщиков, 1983], КОННАЙВЕР [Sussman et al., 1976], а также языки, вы- росшне из потребностей известной планирующей системы QA4 [Sacerdoti et al., 1976]. Все эти языки функционируют в ЛИСП-среде н создавались как расши- ренпя базового языка. Для них, кроме свойств ЛИСПа, характерны следующие черты: представление данных в виде произвольных списковых структур; разви- тые метода сопоставления образцов; поиск с возвратами и вызов процедур по об- разцу. Заметим, что в конечном счете ни однн'нз них не стал универсальным язы- ком программирования ИИ. Однако выработанные здесь решения были использованы и в ЛИСПе, и в ПРОЛОГе, и в современных продукционных язы- ках. Важно и то, что языки этой группы способствовали переосмыслению самого
понятия программы. В области ИИ это послужило толчком к развитию объектно- ориентированного программирования и разработке языков представления знаний первого поколения.
В 70-х годах в программировании вообще и программировании задач ИИ, в частности, центр тяжести стал смещаться от процедурных к декларативным описа- н иям. К этому же времени в ИИ сформировались и концепции представления знаний на основе семантических сетей и фреймов. Естественно, что появились н специальные языки программирования, ориентированные на поддержку этих концепций. Но из десятков, а может и сотен языков представления знаний (ЯПЗ) первого поколения лишь несколько сыграли заметную роль в программной поддержке систем представления знаний. Среди таких ЯПЗ явио выделяются KRL, FRL, KL-ONE и некоторые другие [Хорошевский, 1990]. Характерными чертами этих ЯПЗ были: двухуровневое представление данных (абстрактная модель предметной области в виде иерархии множеств понятий и конкретная модель ситуации как совокупность взаимосвязанных экземпляров этих понятий); представление связей между понятиями и закономерностей предметной области в виде присоединенных процедур; семантический подход к сопоставлению образцов и поиску по образцу.
Суммируя вышесказанное, можно отметить, что на первом этапе была сформирована значительная коллекция методов представления знаний и соответствующих ЯПЗ. Все это способствовало формированию новой стадии исследований в области ИИ, которая характеризуется переходом от экспериментальной программной проверки идей и методов к созданию практически значимых инструментов.
В С1^лу ограниченного объема книги мы не сможем здесь рассмотреть даже наи- сюлее распространенные языки и системы представления знаний. Поэтому ниже приведены лишь некоторые замечания относительно одного из самых распространенных ЯПЗ — OPS5 (Official Production System, version 5) [Brownston et al., 1985], который претендовал в начале 80-х годов на роль языка-стандарта в области представления знаний для ЭС.
OPS5 — один нз многочисленных на сегодняшний день ЯПЗ длн ЭС, поддержи- вающих продзчеционный подход к представлению знаний. ОР$5-программа, в общем случае, содержит секцию деклараций, где описываются используемые объекты и определяются введенные пользователем функции, и секцию продук- .ций, основу которой составляют правила. ОР55-объекты описываются с помощью фреймов-экземпляров, прототипы которых задаются в виде определенных структур данных, опирающихся на небольшое чисто встроенных типов. Во время исполнения программы обрабатываемые данные помещаются в рабочую память, а правила — в память продукций. Модуль вывода решений в OPSo-системе состоит из трех основных блоков: отождествления, где осушествляется поиск подходящих правил; выбора исполняемого правила из конфликтного множества правил п собственно исполнителя выбранного правила. Непосредственно в OPS5 поддерживается единственная стратегия вывода решений — вывод, управляемый целями. Вместе с 工ем OPS5 — достаточно гибкий язык, в котором имеются
ЯВНЬ1е средства не только для описания данных, по н средства определения управления над этими данными.
Анализ формализмов представления знании и методов вывода решений позволяет сформулировать следующие требования к ЯПЗ:
.наличие простых п вместе с тем достаточно мощных средств представления сложно структурированных и взаимосвязанных объектов,
возможность отображения oniicainiii объектов на разные виды памятн ЭВМ;
наличие гибких средств управления выводом, учитывающих необходимость структурирования правил работы решателя;
прозрачность» системных механизмов для программиста, предполагающая возможность их доопределения и переопределения на уровне входного языка;
возможность эффективной реализации.
Конечно, перечисленные требования во многом противоречивы. Но удачные языки 〃 системы представления знании, как правило, появляются лишь тогда, когда в рамках разумного компромисса учтены все эти требования.
Инструментальные пакеты для ИИ
Развитые среды автоматизации программирования на базе языков епмволыю!! обработки являются необходимым технологическим уровнем систем поддержки разработки прикладных интеллектуальных систем. Как правило, такие среды покрывают (и то частично) подсистему автоматизации 11])оектпроваиия и программирования. Вот почему следующим этапом в развитии инструментальных средств стала ориентация на среды поддержки разработок интеллектуальнь;х систем.
Анализ существующих инструментальных систем показывает, что сначала в области ИИ более активно велись работы по созданию интеллектуальных систем автоматизированного синтеза исполнительных программ. И это естественно, еелп иметь в виду, что инструментарий ИИ является, по существу, эволюционным развитием систем автоматизации программирования. При этом основная доля мощности п интеллектуальности такого инструментария связывалась не с его архитектурой, а с функциональными возможностями отдельных компонен- т°в той или иной технологической среды. Большое значение при разработке инструментария для ИИ уделялось н удобству сопряжения отдельных компонен- тов- Пожалуй, именно здесь были получены впечатляющие результаты и именно здесь наиболее широко использовались последние достижения теории ii прак- тик" программирования, такие, например, как синтаксически-орпептирован- ное редактирование и инкрементная компиляция. Вместе с тем подавляющее болыпинство современных инструментальных систем «не знают», что проектн- руст и реализует с их помощью пользователь. И с этой точки зрения можно ска- зать, что все такие системы являются нс более чем «сундучками» с инструмента- мн, успех использования которых определяется искусством работающего с ними мастера. Примерами подобных сред служит подавляющее большинство нпстру-
盟零*鼠焚吃肾閣鸵麗嚣;^я создания экспертных систем типа EXSYS [EXSYS, 1985], GURU [MDBS, 1986] и др. [Harmon, 1987]. Однако не oiih определяют на сегодняшний день уровень достижений в этой области.
К первому эшелону большинство специалистов относит системы ART『ART 1984], КЕЕ [Florentin, 1987] и Knowledge Craft [CARNEGIE. 1987].
в последнее время в класс самых мощных и развитых систем вошла и среда G2 [СATAL' ST, 1993]. Все эти системы, во-первых, отличает то, что это, безусловно, интегрированные среды поддержки разработки интеллектуальных (в первую очередь, экспертных) систем. И вместе с тем для этих систем характерно не эклек- Iичное об1зединение различных полезных блоков, но тщательно сбалансирован- Hbiii их отоор, что позволило сделать первые шаги от автоматизации программирования систем ИИ к технологическим системам поддержки проектирования сначала экспертных, а затем и других интеллектуальных систем. ' Остановимся чуть подробнее на двух системах из «большой тройки» — ART н КЕЕ, а в заключение кратко охарактеризуем систему G2. Сравнение основывается, главным образом, на работах [Wall et al., 1986; Richer, 1986; Gillmore et aL, 1985] n на информации, пол\7ченной от дилеров этих систем.
В середине 80-х годов система ART была одной из самых современных интегрированных сред (ИС), поддерживающих технологию проектирования систем, основанных на правилах. В ней существует ясное и богатое разнообразие типов правил. Различные типы правил элегантно вводятся с помощью мощного механизма сточек зрения» (Viewpoint). Этот механизм фактически является очень близким к системе, ociioBaiiHoii на истинности предположений (truth maintanance system) [de Klccr, 1989], которая, по-вндпмому. является развитием идей KEEWorlds+ в системе КЕЕ. По существу. ART является пакетом разработчика. При этом возможные ограничения в использовании ART вызваны не свойствами салюй системы, а философие/! базового метода представления знаний.
ART объединяет два главных формализма представления знании: правила для процедурных м фреймоподобные структуры для декларативных знаний. Главным является формализм продукционных правил. Декларативные знания описываются через факты п схемы [schemata] п в некоторых случаях через образцы I patterns]. Кроме факторов числовой неопределенности, которые связываются с индивидуальными фактами, в ART различаются факты, которые явно принимаются за ложные, п факты, истинность которых неизвестна. Возможно использование логических згшиспмостей, которые позволяют изменить факты позже, если обнаружится, что они на самом деле оказались ложными. Механизм Viewpoint допускает образование нескольких конкурирующих миров, где пробуются альтернативные решения.
Схема предусматривается в ART в качестве макроформы для выражения таксономических зпаиш"! в структурированном виде, но пп метод, ни активные значения пли выход в базовый язык в этом декларативном представлении не допускаются ART обеспечивает И системно-определенных свойств, наследование которых поддерживается системой автоматически. Допускается множественное наследование. Однако средства задания активных значении, указания огранн-
ченнЛ на слот и привязки процедурных знаний к слогам здесь отсутствуют. Та- кнм образом, роль компонента, основанного на фреймах, является чисто описательной. Ограничения и значения по умолчанию могут быть обеспечены и правилах, хотя их было бы легко установить непосредственно с помощью процедурно-ориентированного фреймового формализма. Наследование, определяемое пользователем, не допускается, но тоже может быть смоделировано посредством правил [Wall et al.f 1986]. Согласно концепции фирмы Inference Corpora- (ion это является преимуществом, так как статическое наследование предусматривает мощную прекомпиляцию эффективного кода.
Продукционные знания описываются с помощью правил пяти видов: правила выводов, продукционные правила, гипотетические правила, правила ограничений и правила полаганий. Правила вывода добавляют факты в базу знаний, в то время как продукционные правила изменяют факты в рабочей памяти (iiaiipii- мер, значение атрибута объекта). Гипотетические правила позволяют в ART использовать возможности формирования гипотез и представляются в следующей форме: «ЕСЛИ это случилось, ТО рассматривать это как гипотезу». Правила ограничений описывают ситуацию, которая никогда не может появиться при правильной точке зрения на действительность. Правила полаганин используются для предположений (которые принимаются за правильные) о точках зрения (гипотезах). При подтверждении гипотезой некоторого условия она принимается за правильную, объединяется со всеми породившими ее гипотезами и становится новым корнем в древовидной структуре. Другие, несовместимые, гипотезы отбрасываются.
Вызов процедур, определенных пользователем, может быть использован как в левых, так и в правых частях правил ART. Образцы (patterns) используются в условной части правил. Они должны быть сопоставлены с фактами рабочей! памяти. Образцы могут включать переменные и логические связки, обеспечивгиощие сочетание фрагментов модели (И, ИЛИ, НЕ, СУЩЕСТВУЕТ, ДЛЯ ВСЕХ).
ART предлагает традиционные модели вывода: «от фактов к цели» и «от цели к фактам». Они могут объединяться в молхпый механизм пстпнностн, основанный на предположениях, который допускает аргументацию типа ЧТО ЕСЛИ. К)?оме того, в составе ART используются и классические правила типа OPS.
Графическое окружение ART хорошо развито. Интерфейс ARTStudio включает в себя базу знаний с демонстрацией гипотез, утилиты отладчика запускаемых программ, систему подсказок, доступную в любое время, систему меню и графичес- кнм пакет ARTist (ART Image Syntesis Too] ) с оконным редактором. ART предла- гает редактор базы знаний, но не дает редактора схем, подобного внутреннему графическому редактору КЕЕ [Wall et al., 1986; Richer, 1986], обсуждаемому нкже. Как указывается в работе [Gillinore et al., 1985], это может стать причиной ошибок при «глубоком» редактировании разрабатываемых баз знашп'Ь ARTist позволяет создавать доступные правилам меню и управлять окнами пользовательского интерфейса, а также создавать сами окна. Графические конструк- :и” описываются с помощью схем и ссылаются на правила. Это обеспечивает функционирование по принципу управления обращениями к данным.
ART часто представляют в качестве лучшей ИС для создания экспертных сис- тем, но слеДУет понимать, что хорошо эта среда отвечает лишь всем требованиям подхода поверхностиых знаний. Благодаря компилятору правил система вывода в ART является быстрой по своей природе. Главные стратегии структуры управ- лення поиском решений обеспечиваются, и некоторая гибкость в управлении по- нском остается инженеру по знаниям. Чисто декларативные таксономические фрейма языка интегрируются с системой правил, но в ART не существует действительно процедурных фреймов, которые могли бы позволить объединить предметные описания с продукционными. В этом отношении объектно~ориснти~ ровапное программирование с образцами и возможностями моделирования мог- ло бы быть более полезным. Нельзя сказать, что подход» основанный на моделях, не осуществим в ART. Однако кажется, что другие ИС более эффективны для этих целей.
Первые версии ART опирались на язык ЛИСП, последние реализованы непосредственно iia С. Это увеличивает эффективность периода исполнения ART. Введены в новые версии и некоторые другие усовершенствования. Они касаются в основном выразительной силы формализма, основанного на фреймах, и увеличивают адекватность ART по отношению к методу аргументации, основанному на модели. Имеется информация, что в ART включен н объектно-ориентированный подход.
Теперь рассмотрим основные свойства системы КЕЕ и типы задач, которые ^подходят» для этоЛ среды. КЕЕ фактически является большим набором хорошо интегрированных ИИ-парадпгм. Этот пакет включает продукционные правила, основанный на фреймах язык с наследованиями, логически-ориеншрован- ные утверждения, объектно-ориентированные парадигмы с сопутствующими сообщениями и обеспечивает доступ в базовую LISP-спстему. Кроме того, КЕЕ предлагает средства для организации н объединения знании в специфические компоненты и явного структурирования процесса ар^ментацпи. Преимущества КЕЕ заключаются также в мощности и дружественности пользовательского интерфейса.
Главное отличие между формализмом представления 3iiaHiiii КЕЕ п ART заключается в способе, которым эти ПС связывают фрепмы и правила. КЕЕ является средой, в основе которой лежат фреймы, в то время как в ART — правила. Фрепмы в КЕЕ называются элементами (units) и вводятся в более широком смысле, чем в ART. Здесь фреймы могут иметь процедурную роль и дают возможность построения поведенческих моделей объекта п моделей экспертизы. С этой целью к слотам могут привязываться активные значения п методы. Активные значения могут выборочно активизировать системы правил. Таким образом, язык френ- мов КЕЕ позволяет представлять поведение независимых сложных компонент в рамках подхода, основанного на модели, что обеспечивает разделение знании на проблемно-ориентированные фрагменты. При этом каждый компонент знани может быть активирован по требованию.
Описание объектов н правил в КЕЕ представляется в виде иерархий фре*юв. Доступны два основных отношения: юпассы/под^ассы н классы/примеры. Каж・
днй объект представляется слотами; в системе различаются индивидные (собственные) и коллективные слоня. Первые используются для описания атрибутов и свойств класса, рассматриваемого в качестве объекта, а вторые описывают родовые свойства членов класса. Слоты могут иметь различные аспекты, которые, в свою очередь, могут иметь множественные значения. На них могут накладывать- ся ограничения! которые могут использоваться в качестве автомйгичсскпх у”иш1 для проверки целостности знаний Этим КЕЕ отличается от ART, где ограничена могут выражаться только с помощью правил. Со слотами могут быть связаны активные значения. Формализм продукцпоппых правил в КЕЕ тоже хорошо раз- работай. Использование переменных и вызов LISP-функций допускается как в исполняемых, так и в условных частях.
КЕЕ предлагает несколько методик для моделирования рассуждений. Конечно, при этом имеется базовый поисковый механизм, по КЕЕ позволяет также трансформировать неявные знания во фреймы и и решетки наследования, что дает средства для моделирования операций ар1ументации.
КЕЕ (версия 3.0) обеспечивается системой, основанной на предположении истинности выполнения, называемой KEEWorkl. Согласно заявлениям с[)прмы IntelliCorp, оиа обеспечивает поддержку фундаментальных методоп поиска в пространстве состояний. Мощность КЕЕ проявляется при решении задач1 где процесс аргументации может трансформироваться, выполняться н управляться с помощью фреймовых компонент. Решетка наследования 小рсНмов позволяет установить несколько видов зависимостей между объектами. Система снабжена возможностями автоматического восстановления неявной нн(|х)рм<1ЦШ1. Утверждается, что эта информация может быть представлена фреймами [Fikes et al.t 1985]. КЕЕ обеспечена эффективными возможностями воссгановлепня п автоматической проверки информации. Для aToii цел и существует логически й язык TellandAsk, которьп! используется для определения и восстановлен ня фактов в базе знаний КЕЕ.
Пользовательский “нтсрфсПс КЕЕ очень гибкий н тщательно проработанньп"!. Он включает мощный редактор, программу просмотра базы зпашн!, поясняющие сообщения и т.工 Известно, что он превосходит по мощности шггср([>сйс ART [Wall et al., 1986; Richer, 1986]. КЕЕ об cc псч 11 вает 11 ользовател я графическими средствами KEEpictures и Active linages для построения гргхфпчсских прсдставле- ннН. Последние могут быть привязаны к фреЛмовым слотам, и горда изменение значения слота приводит к изменению «картинки>>.
Следует отметить п недавнюю эволюцпю системы. КЕЕ 2,1 пс имел гипотетической системы или системы, основанной на предположении об истинности вы- полнения. В КЕЕ 3.0 эти новые возможности доступны. А его открытая архитектура является важным фактором в процессе настройки “ расшнрсиия, так как части написаны в самом КЕЕ. С одной стороны, это полезно для иодтверж- дення гибкости КЕЕ и способности к развитию. С друго(1 — это может принести к неэффективности исполняющей системы. Дополнительно фирма IntclliCorp уже разработала пакет специализированных программ для КЕЕ. Одна из таких программ — SIMKIT, Она спроектирована для неддержки моделирования в КЕЕ.
Таким образом, КЕЕ является развитой системой, основанной на фреймах, где хорошо сбалансированы формализмы представления как декларативных, так и процедурных знаний. Доступны в системе и методы явного управления и структурирования процесса аргументации. Влагод冲只 этому КЕЕ является подходя- щнм для решения задач в рамках подхода, основанного на модели.
Важиейшими при разработке интеллекту^ьпых прикладных систем являются вопросе формирования и отладки баз знаний. Но здесь КЕЕ, ART и многие другие инструментальные пакеты, к сожалению, идут по пути обычных систем авто матизации программирования. Пользователю предоставляется мощный графи- "ecKuii редактор правил, используемый для начального ввода продукций и коррекции их в процессе отладки, п средства графической трассировки вывода pcinciiiiii, которые должны позволить инженеру знаний ориентироваться во взаи* модсйствни сотен и тысяч правил.
Инструментальная среда G2 - разработка фирмы Gensym Corp. — является развитием известной экспертно;! системы реального времени PICON. По утвержде- шно o([)inuKviwioro дилера этой фирмы в России Э. В. Попова, G2 является самой MoiUiioii из сред для систем реального времени среди всех инструментов данного класса, Система G2 рса.'шзовапа на всех основных вычислительных платформах, включая рабочие стапшш Sun, НР9000, RS/6000 п ПЭВМ, работающие под уп- paiuieiiiicM Windows NT. Возможна работа с системой в режиме клиент—сервер в сети Ethernet.
Основные функшюнятьпые возможостп G2 связаны с поддержкой процессов слежения за множеством (порядка тысяч) одновременно изменяющихся параметров и обработкой измепенш! в режиме реального времени; проверкой нештатных си- T\『niiit па yiijKiB-'iHCMbix объектах ii принятием решений как в режиме ассистирования оператору, так п в автоматическом режиме. Функциональные возможности системы обеспечиваются быстрым выполнением распараллеливающихся oiiepaiuiii, доступными и режиме on-line данным», блоками темпорального выво- “а (включая ссылки на прошлое поведение п поведение управляемого объекта во времени, интеграцию с подсистемами динамического моделирования и процедурными знаниями о времени), специально!! технпко(1 вывода решений в режиме реа*чыюго времепп (включая стандартные forward и backward расс^окдення, а также event-driven выводы, сканирование датчиков для определения сит\гаций, требующих немедленного вмешательства в процесс управления, механизмы фокусирования на опрсдс;|ешюм подмножестве знаний с использованием метазнании и мощноli подсистемой real-time truth maintenance). Все это дает возможность прикладным системам, разработанным с использованием G2, поддерживать на RISC- архитектурах обработку 1000 правн/i/c реального уровня сложности.
Указанные параметры производят серьезное впечатление, и, хотя доступной тех- ннчсско!! информации но системе G2 явно недостаточно для окончательных вывочов о ее применимости во всем спектре заявленных приложении, можно прещюножпть, что система G2 депствителыю была одной из первых инструмеи- тальпых сред, по^ержпваюишх разработку интегрированных ннзлектуальных систем.
В заключение настоящего параграфа остановимся на первых попытках интеллектуализации инструментальных средств. Следует сразу сказать, что здесь достаточно четко просматриваются два направления: снизу (применение методов Ш4 для разработки программного обеспечения) и сверху (переход к системам поддержки разработки баз знаний, основывающихся, в свою очередь, па moiазна- ниях).
Результаты, полученные с использованием методов ИИ в различных областях человеческой деятельности, привели разработчиков МО к идее использования интеллектуальных систем в программировании. Проект «Ассистент программн- ста» в Массачусетском технологическом институте п проект «Пен» в Стэпфорд- ском университете были ПЕрвь1Ми шагами в этом направлении [Waters, 1985, Green, 1977]. В этих проектах предпринимались попытки промоделировать зна- ния прогряммнета, используемые для понимания, проектирования, реализации и сопровождения ПО. Предполагалось, что эти знания могут быть использованы, например, экспертной системой для частичной автоматизации процесса разработки ПО, однако существенных результатов в этой части, по-видимомут получено не было.
Методы ИИ могут значительно увеличить мощность существующих инструментальных средств и в области разработки, оценки и проверки требовашл! Действительно, часто пользователь не знает тех возможносте/! и ocoGeniiodcii, которые он хотел бы иметь от программной системы, и процесс разработки трсбоваш# напоминает процесс приобретения знаний. Понятно, что при этом соответствующие инструментальные средства могут использоваться при формировании пользователем своих требовании. Вот почему ниже приводится кратки!! обзор средств приобретения знаний и сопровождения баз знаний, дополняющий агкшо- гичный материал предыдущих глав, но с акцентом на инструментальных компонентах.
Исторически впервые автоматическое извлечение из экспертов конструктов н создание репертуарных решеток, необходимых для построения поля знашп'! (Гаврилова н др., 1988], было реализовано в системе PLANET | Shaw, 1982; Shaw el al.r 1984]. Ряд алгоритмов и программ PLANET был впоследствии использован при создании системы ETS [Boose, 1985а; Boose, 1985b; Boose, 1985с; Boose, 1986], обеспечивающей не только автоматическое создание репертуарной решетки, по н преобразование ее в традиционные для ЭС формы представления БЗ. Потомками ETS являются система NeoETS [Boose et al., 1986] и интегрированная среда для извлечения экспертных знании AQUINAS [Boose et al., 1987]. Дальнейшим раз- внтнем системы PLANET является интегрированная среда KITTEN | Gaines et al., 1986; Gaines et al„ 1987], поддерживающая ряд методов извлечения знаний.
Перечисленные выше системы поддержки процессов приобретения знаний, как правило, ориентированы на отдельные фазы всего технологического цикла. Одной из методологий, ориентированных на «интегрированные:» средства полдержкп разработки, справедливо считается KADS, рассмотренная в параграфе 4.5. В зтоН системе сделана, пожалуй, первая попытка объединения достпжспн" «классической» технологии программирования п методов ИИ. В дальнейшем эта
空
тенденция стала проявляться все более определенно, и лидерство, в конечном СЧе1е,【icpeuwo к инструментальным системам нового поколения, основное отли- чис которых состоит в том, что они опираются на знания о технологии проецирования, реализации и сопровождения интеллектуальных систем. В настоящее врем: попытки создания таких инструментальных систем наблюдаются в Work- Bench, рассматриваемых ниже.
WorkBench-системы
Системы типа WorkBench в контексте автоматизации программирования — это интегрированные инструментальные системы, поддерживающие весь цикл создания и сопровождения программ.
К основным характеристикам WorkBench-скстем относятся:
Использование определен л ой технологии проектирования на протяжении всего жизненного цикла целевого продукта.
Вертикальная интеграция инструментальных средств, обеспечивающая связи л совместимость по данным между различными инструментами, используемыми на разных стадиях создания целевой системы.
Горизонтальная интеграция моделей и методов, используемых на одной и той же стадии проектирования.
Сбалансированность инструментария, то есть отсутствие дублирующих компонентов, «необходимость и достаточность» каждого инструмента-
Одна из систем данного типа разрабатывалась в рамках проекта VITAL [VITAL
. Отдельные стадии методологии поддерживаются здесь следующими сред* ствами: анализ — подсистемой КАТ (Knowledge Acquisition ToolKit); проектирование —подсистемой FTDT (Functional and Technical Design Tool); кодирование знаний - языком представления знаний: проверка н верификация - V&VT (Validation and Verification Tool): поддержка в отладка — VT (Visualization
Tool).
WorkBench VITAL - тесно связанная с методологией система, пригодная для промышленного применения. Обеспечивается это средствами трансформации баз знаний в процедурное представление и развитыми средствами визуализации для поддержки навигации по большим базам знаний.
В це юм проект VITAL был достаточно амбициозным по своим целям и задачам, но, учитывая финансирование его в рамках европейской научной программы ESPRIT п задел основных исполнителе!!, вполне реальным.
Проект VITAL, если так можно сказать, определил философию Разработки WorkBench-систем. Ниже, в качестве примеров
Bcnch-снстемы, KEATS [Motta et aL, 1988] и Shelly [Boucher el al-, 1989]. где эта философия нашла некоторое реальное воплощение.
Система KEATS (Knowledge Engineer's Assistant); [Motta et al., 1988; Motta et aL, 1.989] первоначально представляла собой набор инструментов, созданных для гю- мощи инженерам знаний в проведении анализа предметных знаний и разработки концептуальной модели ПО (вот тут говорится про предметную область!!!). В первой версии системы, называемой KEATS~1 [Motta et aL, 1988], были реализованы редактор текстов CREF (Cross Reference Editing Facility) н графический редактор GIS (Graphical Interface System), а также фрсйм-ориеитированш>|й язык описания знаний KDL (Knowledge Description Language) и интерпретатор продукционных правил COPS (Context Oriented Production System).
Редактор текстов CREF помогает инженерам зиапш"! провести анализ документов, имеющих текстовую форму, и допускает установление связей между фрагментами типа «ссылается», «обобщает», «заменяет», «предшествует».
Графический редактор GIS позволяет инженеру знаний быстро построить представление концептуальной модели ПО (то же самое). Элементами графического представления могут быть как фрагменты, выделенные посредством компонента CREF, так и произвольные объекты исследуемой ПО (то же самое). Различаются два вида графических элементов: классы (изображаются овалом) и примеры (изображаются прямоугольником). Разные типы oTiioinciiini между элементам и показываются разными стрелками. В KEATS-1 такое графи чес кос прсдстанлснпе автоматически транслируется в текст на языке KDL. Поддерживается и обратное отображение.
В работе [Motta et aL, 1989] были проанализированы ограничения CREF и GIS как инструментальных средств приобретения знаний. Анализ текстовых документов в CREF и построение концепту<шьнон модели ПО (то же самое), поддерживаемое GIS, являются хотя и разными, но тесно связанными видами деятельности. Но поскольку в KEATS-1 они обеспечиваются разными программнымн системами и автоматического интерфейса между ними нет, то построение концептуальной модели, элементами которой были бы сущности, выделенные в про- цессе анализа, требует от инженера по знаниям дополнительных усилий. Поэто- МУ естественно иметь такую и 11струмei 1тальнуio поддержку, которая позволяла 6н инженеру знаний строить концептуальную модель, исходя из ннфюрмпшш, содержащейся в текстовых документах. Требуемая инструментальная поддержка была реализована в подсистеме ACQUIST системы KEATS-2 [Motta et al., 1989]. Рассмотрим функциональные возможности ACQUIST подробнее. Выделение фрагментов здесь реализуется посредством указания (с помощью мыши) на область текста и задания имени понятия, релевантного отмеченному тексту. Име- 11а нонятн^ высвечены в виде элементов меню на том же экране, что и анализиру- емн访 текст. Нескольким фрагментам может быть поставлено в соответствие одно н то же понятие. Понятия могут бнть заранее перечислены инженером знаний или генерироваться непосредственно в процессе анализа текста. В последнем слу- чае возможно «заводить» имена понятий вручную либо воспользоваться лексическим анализатором.
В ACQUIST лексический анализ может выполняться над множеством указанных пользователем текстов. Имеется возможность задать фильтр для отсеивания ,ов, нс представляющих интереса, который ревизуется как обычный текеш^ фа^, где перечислены такие неинтересные, слова. На понятиях может бытьза- дана иерархическая структура. Пользователь ACQUIST может объединить в ?【ну группу близкие с его точки зрения понятия и дать название этой группе. Грунпм понятий, в свою очередь, могут быть подвергнуты дальнейшему обобщи НИЮ.
ACQUIST позволяет связывать фрагменты, понятия, группы с помощью встро- енпмх связей “ связей, определенных самим пользователем. Для того чтобы ин- женер знаний имел целостное представление о той структуре, которую он, уста* навливая связи, создает, в ACQUIST имеется возможность посцюнть «карту» текущей структуры. Для одного и того же множества понятий, групп и фрагментов может быть построено много карт, каждая из которых соответствует некоторому «взгляду» на отношения между элементами. Пользователь имеет возможность не только просмотреть графическое представление, но и непосредственно манипулнровать его элементами. В частности, можно определять связи, перемещать графические объекты н подструктуры и т. и.
Сохраняемые версии результатов анализа называются здесь теориями. ACQUIST позволяет одновременно загрузить несколько Teopuii и при необходимости переключаться от o/uioii теории к другой. По желанию пользователя различные теории могут быть слиты. ACQUIST создан с использованием методологии объектно-ориентированного программирования: фрагменты, понятия и группы реализованы как объекты.
Новая версия системы KEATS, которая была развитием предыдущей, разработана в лаборатории когнитолопш Открытого университета Великобритании и финансировалась British Telecom. Corp. По определению авторов, KEATS — программное окружение, поддерживающее построение систем, основанных назнанн- $1Х. Основное назначение — поддержка разраоотки ЭС на критических стадиях — Hpiio6peicHiie и кодирование зиянии, отладка БЗ [Motta ct aL, 1989].
Данная система поддерживает не только отдельные методы моделирования, ио и
обеспечивает интегрированную программную поддержку взаимосвязанных моделей знаний. Основные компоненты KEATS: ACQUIST - средство фрагментирования текстовых источников зианпЛ которое позволяет разбить текст ил” протокол беседы с экспертом на множество взаимосвязаннь1Х аннотированных фрагментов (гипертекст) и создать концепты (понятия); FL1K -巾哼歷^- ориентированный язык представления знаний; GIS - графически!! интерфеи . иснользуемын как для создания гипертекстов и концептуальных моет с п мощью ACQUIST, такн для проектирования фреймовых систем на основе язь^ FLIK- ER1-базисный интерпретатор правил, обеспечиваюшии 叩明:* £ Х^ внвод по продукциям; TRI ~ -зуализируюшш.(ш= демонстрирующий трассу вьшол11ен11я продукции в виде мозаичной таблиц .
также графически отражающий активные правила, фреймы и конфликтное множество; Tables -интерфейс манипулирования таблицами, xoTopbiii может использоваться вместе со всеми моделями знании, поддерживаемыми в KEATS; CS - язык описания и распострансния ограничений; TMS — немонотонная система сопровождения истинности, тесно связанная с ERI, FLIK и CS, а также TMV — графический интерфейс подсистемы TMS, обеспечивающий визу а лизата на и/ИЛИ дереве значения истинности или ложности заключений в завн- енмости от посылок.
В системе KEATS концептуальные модели могут создаваться с помощью методов «сверху—вннз» и «снизу—вверх». Псрвьш подход используется пр и чет к о оп])с- деленной задаче и наличии спецнфмческой модели в ПО (то же самое), например в задачах диагностики. Специфическая модель может быть сразу же отражена в виде таблиц н концептуальных моделей н имплантирована в будущую ЭС с помощью GIS 11 Tables. Когда приобретение знаний основывается не на четко определенной модели ПО, а, например, на протоколе опроса эксперта, используется второй подход. Текстовые данные анализируются н фрагментируются с помощью ACQUIST, 11 выделяются концепты. Созданная модель затем визуализируется с помощью GIS.
Интеллектуальная система Shelly [Boucliet et al.T 1989] является представителем следующего поколения программно!! поддержки КАВЗ-методологип. Опа способна не только обеспечивать выполнение работ, предусматриваемых методологией, но и советовать инженеру знаний, когда и как выполнять ту или иную работу, а также объяснять, почему это необходимо. Система Shelly разрабатывалась как интегрированная программная среда, поддерживающая нссь процесс создания ЭС, если он осуществляется в соответствии с KADS-Mcro/ioJiorneii. II процесс разработки самой системы Shelly является примером практического ее применения.
Согласно KADS-методологин, paccMOTpemioii в п. 4.5, необходимо провести анализ четырех типов знаний, относящихся соответственно к уровням стратеги!!, задач, выводов и предметной области. К уровню стратегий относятся знания, обеспечивающие гибкость разрабатываемой системы, се способность решать разнообраз- нне проблемы, выбирая илн формируя подходящие стратегии. Для системы Shelly такими проблемами являются: управление деятельностью инженера зна- н”н, разрабатывающего прикладную ЭС; слежение за процессом разработки ЭС; выдача советов, подсказок, объяснений по требованию пользователя.
Знания стратегического уровня, необходимые для решения этих проблем, представляют собой набор правил, задающих условия начала н завершения каждого внда работы, предусмотрен ио ii К A D S - м етодо л о ги е il Иерархия видов работ, а также описания тех работ, выполнение которых поддерживается Shelly, состав- ляут знания уровня задач. К уровню выводов относятся знания о конкретных действиях, с помощью которых может быть выполнена та нлн иная работа. Уро- Вень пРеДметной области составляют описания тех объектов, над которыми мо- гут выполняться действия, относящиеся к уровню выводов. При этом разллча-
10тся объекты, используемые в KADS-методологии («понятие», «метакласс» и т. п.), объекты, обусловленные программной реализацией методологии («фра『 :иент», «связь» и т. п.), и объекты, обусловленные природой интерфейса («окно», «текст» и т. н.).*
Основное проектное решение при создании системы Shelly состоит в том, что каждому виду деятельности здесь соответствует свое инструментальное средство AST (Activity Support Tool).
Центральным модулем в Shelly является управляющий модуль «Advice & Gui- dancc》. Он предназначен для информирования пользователя о текущем состоянии разработки его прикладной ЭС; обеспечивает ответы на конкретные вопросы пользователя; рекомендует пользователю дальнейшие действия и активирует соответствующий модуль AST; предупреждает пользователя о нарушении им К A D S - м с т од оло ni ii.
Модуль «Advice & Guidance» может функционировать в двух режимах, различающихся степенью сложности. Первый, простой режим, «локального совета*, активируется посредством явного запроса, поступившего от пользователя. Во втором режиме пользователь может получить рекомендации относительно того, как наиболее эффективно работать с Shelly. Система будет постоянно следить за деятельностью пользователя и при необходимости предупредит его и объяснит, почему рекомендуется выполнять ту или иную работу.
Рабочую память Shelly составляют база знаний, базы данных о разработках ЭС и база внешних форм. В базе знаний хранятся описания объектов KADS-методо- лопш и соответствующих видов деятельности. Каждый вид деятельности представлен фреймом со следующим набором слотов
Пример 6.1
описапие:<текст>
цель: <тскст> когда: <тскст> как: <тскст> вход: <объскт KADS-MeTo:ionoriiii> виход: <объскт KADS-.MeTojo.-)onii[> свизаи с:<В1Н ,1сятслыюст11>
поддерживается:AST
Кроме того, в базе знаний имеется набор правил, позволяющих управлять процессом разработки прикладной ЭС.
Пример 6.2
ЕСЛИ деятельность 1> по проекту X - «завершена» И <деятельпость2> по проекту X = «завершена»
ТО возможно начать <деятслы[остьЗ> по проекту X.
В базах данных о разработках ЭС представлены примеры объектов KADS-mcto- дологии, построенные на конкретном предметном материале, а также информация о текущем статусе каждого вида деятельности («завершена», «начата», «не начата»).
Понятно, что фрагментарный обзор WorkBench-систем, приведенный выше, не дает полного представления обо всех их функционал ьных возможностях. Однако для нас важна, прежде всего, тенденция развития инструментальных средств поддержки разработки интеллектуальных систем, состоящая в том, что уже имеются положите^ьные примеры WorkBencli-инструментарня, ориентировашюго на весь жизненный цикл созданля систем, основанных на знаниях.
Пример разработки системы, основанной на знаниях
口 Продукционно-фреймовый ЯПЗ PILOT/2
□ Психодиагностика ——пример предметной области для построения экспертных систем
口 Разработка и реализация психодиагностической ЭС «Cattelb
7-1. Продукционно-фреймовый ЯПЗ PILOT/2
В /побом языке программирования можно выделить три составляюшие: декла- 〃am〃8"ym (описания данных), процедурную (правила преобразования данных) н инфереициалъную (правила управления компонентами процедурной, а иногда п декларативной составляющих). Не исключение в этом смысле if языки представления знаний, но их специфика в том; что описания здесь в основном струк- турнне, а данные могут быть активными за счет присоединенных npouejv^p, обеспечивающих «вычисление» их значенЕГ правила преобразовал ня данных ориентированы скорее на то, чтобы явно спеццфпцпровать, что должно быть получено, не концентрируя без необходимости внимание программиста иа том, как достигается результат. Но самое большое отличие ЯПЗ от других языков в пнферен- циалыюн компоненте, которая ревизует некоторую (чаше всего встроенную) стратегию поиска решения. Таксн1 подход предполагает, что при выполнении ЯПЗ-ирограмм всегда существует «арбитра, функцией которого является оценка «текущей снтуацпи» п выбор пути лвижеиня от нее к целевой.
В разных ЯПЗ имеются различные средства определения декларативной, процедурной и и11ференцПсЕ1Ьно1! составляющих. Отличия же здесь связаны, в первую очерсд11, с лспользовянисм того плн иного подхода к представлению знании.
В качестве примера развитых средств продукционно-фреймового програм.миро- вапля баз знании ниже обсуждается ЯПЗ PILOT/2. разработанныи в рамках проекта PiES WorkBench [Khoroshcvsky, 1994b]. Его специфика в том. что здесь вве-
дены явно достаточно мощные средства программирования инфере!шпальной составляющей и выразительные описания образцов, а также удобный и открытый для расширения набор операторов преобразования данных в основной и внешней памяти.
7.1.1. Структура ПИЛОТ-программ и управление выводом
В общем случае PILOT-программа содержит две основные (декларативная и процедурная) н две вспомогательные (включение файлов л переопределение строк) компоненты. Декларативная часть состоит из элементов, специфицир5^ющих переменные, прототипы функций и/или процедур, а также необходимые базы знаний. Продукционная часть состоит из секций, которые, в свою очередь, содержат продукции. Инференциальная составляющая присутствует в ЯПЗ PILOT/2 неявным образом в виде встроенного «арбитра», алгоритм работы которого описывается ниже, и, кроме того, определяется средствами настройки 〃 перепрограммирования такого «арбитра».
Разбиение на секции и правила и специальные условия в виде секционных и пра- внловых разрешений необходимы для того, чтобы обеспечить многоуровневое управление выполнением PILOT-программ. Как известно [Форсайт, 1987], «ар- бнтр» продукционной системы функционирует следующим образом: сначала для всех прод5^кцин проверяются условия применимости п из тех п роду Kunii, для ко- торых эти условия истинны, формируется конфликтное множество. Из этого множества по определенному критерию выбирается исполняемая продукция; она реализуется (то есть отрабатывается се правая часть), ц цикл управления paooToii «арбитра» повторяется, пока конфликтное множество на некотором шаге не ста- нет "Устнм (тогда работа продукционной системы завершается естественным об- разом) или функционирование не будет прервано явным образом, например с ;омощью специального действия из право]! части исполняемой продукции (в этом случае раоота продукционной системы завершается принудительно). Понят?。, что работа такого «арбитра» имеет смысл лишь в тех случаях, когда продукции немного (десятки), а в конфликтном множестве продукций мало (единн-
Н пРэтивном случае функционирование системы неэффективно и требуют- 窘;黑靠俐”:加 «арбитр» не тратил все время только на себя.
黑разраоотань1 11 onpoooBaiibi на практике различные стра-
и увел11Чения эффективности работы «арбитра» [de Kleer, 19891 котовые ::黑黑誚Г СЛУЧЙе- Н° Не MS。© ва,кн。иметь「нбкне средства。二 。黑蕊竄в“Я Shso мт Т。1^ пользователь, в завнсимостн СВОЮ собственную CM0/ReT отказать^ от стандартных стратеги!! и описать 「У » которая адекватна его конкретному случаю.
ля описания стратегий управления выводом решений и XZXв^Zrлeн,,^^^黑黑驚盟薦靠: ное множество продукций Л Г°РЫХ 力啲叩”丁旧 n/шш изменяется конфликт-
° ПРОДУКЦИИ' &я звмання того, как пользоваться этими фИльт-
239
рами, необходимо знать стратегию встроенного «арбитра» P1LOT/2. Поэтому ниже приводится алгоритм его работы, специфицирующий схему, представленную на рис. 7.1,
Алгоритм работы встроенного «врбитра» ЯПЗ PILOT/2 while (уровень-0 != NULL ) {
'<выбрать из «повестки-дня» секцию для выполнения»;
^сформировать на уровне-1 мн-во правил этой секции»;
«выполнить фильтрацию мн-ва правип на уровне-1 по флагу активна/ неактивна»;
<>выполнить фильтрацию мн-ва оставшихся правил на основании вычисления истинности секционного разрешения»;
^сформировать на уровне-2 множество активных правил^:
for (каждого правила на уровне-2) {
«вычислить значение истинности левой части»;
if ( значение истинности правила 二二 TRUE )
«добавить правило в конфи, мн-во на уровне-3»;
^выполнить фильтрацию мн-ва оставшихся на уровне-3 правил на основании 8ь;числения истинности правиловых разрешений»;
^сформировать на уровне-4 множество готозых к выполнению правил»;
if ( на уровне-4 осталось одно правило )
^выполнить данное правило»:
else{
«выполнить случайный выбор исполняемого правила из множества
правил на уровне-4”:
выполнять данное правило»;
Прпведениый алгоритм прозрачен и не нуждается в особых комментариях. Заме Тим лишь, что фильтр «активна/неактнвна* реализован как встроенная проверка флагов активности продукций текущей секции. Первоначально (при запуске секции) «арбитр» считает, что все продукции секции активны, но в процессе вы- по/шсипя их состояние может измениться за счет применения соответствующих zieiicTBuii. Фильтр секционного разрешения тоже программируется с уровня входного языка. В результате применения этих двух фильтров формируется множество прод5гкций, которые принципиально могут войти в конфликтное множество. Этап фильтрации продукций по истинности левых чаете!! — трад|щионный,
в результате получается традиционное конфликтное множесцю (правда уж усеченное за счет предыдущих двух фильтров). На этом множестве в ЯПЗ IILO Г/2 может быть организовано дополнительное управление за счет программируемых правиловых разрешений. Если все усечения не привели к однозначному выбору исполняемой продукции, она выбирается случайным образом н никл работы «арбитра» повторяется.
Рис. 7.1, Встроенный «арбитр» РИОТ/2
Точек «влияния» на работу «арбитра» PIL0T/2 всего четыре: актншюсть/нсак- тивность продукт!!!: секционное разрешение; истинность левых uacieii продук- пин; правиловое разрешение. Существует н пятая точка — алгоритм случайного выбора, но она инженеру по знаниям недоступна.
Секционные и правнловые разрешения суть последовательность операторов if-then-else и действий разрешения. При этом сами условия секционного и нра- вилового разрешений - логические формулы в базисе И-ИЛ14-НЕ с общепринятым старшинством операции. А специфнка ЯПЗ PILOT/2 состоит в том. как определяются элементарные разрешения. Семантика действий разрешений (при условии, что через КМ обозначено конфликтное множество) — следующая:
insert (RI, R2…Rk) remove (RI, R2,…,Rk) removeallbreakinsert (RI, R2…Rk) remove (RI, R2,…,Rk) removeallbreakKM = Ri, R2,Rk
insert (RI, R2…Rk) remove (RI, R2,…,Rk) removeall
break
insert (RI, R2…Rk) remove (RI, R2,…,Rk) removeall
break
KM” = KM, + RI + R2 + ... + Rk
KM“ = KMC - RI - R2 - - Rk
KM = пустое множество
Прерывает выполнение оставшихся элементов секционного или правилового разрешения
Семантика элементарных секционных (продукционных) разрешений - определяется правилами вида:
L Элементарное секционное разрешение active(Rl,R2,...,Rk) истинно, если все продукции RI, R2,.... Rk имеют включенные флаги активности.
Элементарное секционное (продукционное) разрешение used(Rl,R2,…,Rk) истинно. если все продукции RI, R2,,,., Rk применялись ранее.
Элементарное продукционное разрешение ready(Rl,R2,„.,Rk) истинно, если все продукции Rl, R2,.…Rk готовы к выполнению, что, в свою очередь, справедливо, если нх левые части (условия) истинны.
Понятно, что практически все элементарные разрешения работают с именами пр оду к ци и, так что проверка соответствующих условий выполняется -«арбитром » достаточно быстро. И этих средств (в подавляющем большинстве случаев) достаточно для существенного \'величення гибкости управления продукционной системой и сохранения в то же время приемлемой эффективности ее работы. Вместе с тем в ЯПЗ PILOT/2 инженеру по знаниям предоставлена возможность управления работой продукционной системы и иа основе анализа базы знаний. Нужно линь понимать, что это х'правленне «дорогое», так что пользоваться им следует ,'innib в тех случаях, когда соответствующие условия невозможно (или нецелесообразно) проверять в левых частях продукций.
1.2. Декларативное представление данных и знаний
Декларативгигя часть PILOT-npoipaMMbi состоит нз элементов, спеш[фишф)то~ пшх типы данных, прототипы функций и/или процедур, переменные, а также не- обходимые базы знаний.
Спецификация типов - мощное средство конструирования новых типов данных, которые но;ыержпваются системой автоматически на основании базовых типов. В ЯПЗ P1LOT/2 фиксированы следующие базовые типы: int, float, char, япг^ ^я-фре^иц prorotyре, frame June, proc. Без учета спецификации ограничения это дает почти те же возможности, что и спецификация typeaef в языках С и С+ . Оцнако в ЯПЗ PILOT/2 существуют и множественные типы, симметричные по отношению к базовым, а также усечение вновь вводимых типов с помощью огра-
нн”ен1 必 Последние задают в базисе И-ИЛИ-НЕ ограничения, котором должны удовлетворять значения соответствующего типа. Так, например, спецификация Child is_a Age restr_by (>0 && <12);
вводит подтип типа Age, значения которого должны быть 11 олож in с л ы 1 ым 11 целы - мн в интервале [0, 12].
Спецификации
Persons is_a {frame};
Friends is_a Persons restr.by (>={Петр, Иван}):
определяют, что элементами типа Friends являются элементы тина Persons, вклю- чающие в себя, по крайне!! мере, ава указаншмх явно элементи.
Обработка сложно структурироBai111 ых данных во внешней памяти является отличительным свойством всех ЯПЗ. Но помимо этого нужны и «обычные» переменные. Вот почему в ЯПЗ PILOT/2 введены регистры и стеки. Семантика регистров такая же, как у простых переменных традиционных языков программирования. Иначе обстоит дело со стеками. Для явной спецификации поведения стеков в ЯПЗ PILOT/2 введены префиксы и постфиксы, которые являются одноместными операторами, аналогичными по синтаксису унарным операторам (++) и (--) современных языков программирования. Семантика нх за фи кспро- вана в табл. 7.1. Одна к та же переменная, в зависимости от на-пичия или отсутствия префикса (постфикса), трактуется либо как регистр, либо как стек. Для выделения имен переменных в текстах PILOT-программ им предшествует символ «$».
Таблица 7.1. Семантика переменных в языке PILOT/2
Стековые переменные
GET-переменные
PUT-переменные
Слева
Взять
с сохранением <
Взять без сохранения <<
Добавить новое значение >>
Заменить верхушку на новое значение >
Справа
>
»
«
<
Ядром декларативного представления данных и знании в ЯПЗ PILOT/2 является спецификация баз - временных ii постоянных. Все базы в ЯПЗ PILOT/2 фреймовые и поддерживаются на этапе выполнен ня продукционных программ специализированным пакетом FRAME/2 [Sherstnew et al,, 1994].
Спецификация временной базы предполагает, что определенные здесь 巾ре『】мм имеют «время жизшь>, совпадающее с периодом выполнения PILOTniporpaM- мь【,а ее имя — встроено в систему и не может быть изменено. Типичный пример определения временной базы — следующий:
base = { спецификация-фрейма, ,,,, спецификация-фрейма };
"наие обстоит дело с постоянными базами. Их «время жизни» никак не связано с конкретной PILOT-программой, а имена выбирает сам пользователь. Такне базы
могут создаваться и/или использоваться в данной PILOT-программе. Примера- мн определения постоянных баз могут быть следующие спецификации:
base system = { фрейм-1фрейм-N };
extern base person = { фрейм-1, фрейм-2, фрейм-3 };
base new;
base ( al, a2, ... aN ) = { фрейм-1, фрейм-2, .,., фрейм-L };
H в случае временных, н в случае постоянных баз основным элементом определения является спецификация фрейма:
спецификации-фрейма :: = j | спецификация-прототипа j j !]спецификация-экземпляра j j
спецификация-прототипа ::=[ имя-фрейма is_a prototype
{{: спецификация-демона }} {七 декларация-слота }}]
спецификация-экземпляра ::二[
|| имя-фреймаj| is_a имя-фрейма
I| ( /мя-фрейма {{ , имя-фрейма }} ) j|
{{; спец/фикация-демона}} {{:спецификаций-слота }}]
[| = значение | jI!IIIIИ[| = значение | jI!IIIIИспециф^кация-слота ::= [|]| имя-слота
[| = значение | j
I!II
II
И
[| = значение | j
I!II
II
И
{ ]|I ( имя-слота {{, имя-слота }})
i ! without имя-спота {{. /^я-слота }} | | декларац/я-слота
декларация-слота ::二 | | 公f-crga丨丨川口
I{ ( иу?-слота {{ . /м?-слота }} )|!
{{ ; допогнл'ельная-специоикаций }}
дополнитерьная-спец/фикашля : := I I специ^икация-демсна“
|| спе1;ий/каиия-учог1чан/я 1!
спецификация-демона : := I I if_added 11 нма-семона ()
I I if_deletedI I
I I if_changed11
спецификация-умолчания ::= by_default значение
спецификация-ограничений ::二 Из этих определении следует, ным языком и, следовательно,спецификация-ограничений ::二 Из этих определении следует, ным языком и, следовательно,restr_by спецификатор
спецификация-ограничений ::二 Из этих определении следует, ным языком и, следовательно,
спецификация-ограничений ::二 Из этих определении следует, ным языком и, следовательно,
что ЯПЗ PILOT/2 является сильно типизнрован-обеспечивает строгую проверку правильности ис-
пользования типов на этапе трансляции. Тако" подход повышает надежность проектирования продукционных программ и увеличивает их эффективность. Теперь рассмотрим примеры спецификации фреймов. Первый из них - спецификация прототипа вида:
[Person is_a prototype;
Name string, if_changed ask_why ();
Age int, restr.by >= 0 ;
Sex string, restr_by (==-<male>* || ==“female”),
by_default «male» ;
Children {frame}]:
Из этого описания следует, что у фрейма Person, заданного как корневой прототип, имеются четыре слота с именами Name, Age, Sex н Children, Каждый слот может иметь значение определенного типа. Значениями слотов Name и Sex могут быть строки, слота Age — число, а слота Children — множество ссылок иа другие фреймы. Кроме обязательной спецификации типа слот может иметь дополи и - тельную спецификацию. Так, чтобы показать, что значение слота Age должно быть не меньше 0, а слот Sex может принимать только два значения, «male» или «female», использована дополнительная спецификация restr by. Конструкция, следующая за этим оючевым словом, называется спецификатором н представляет собой логическое выражение особого вида, Другая дополнительная спецификация, by default, определяет значение слота по умолчанию. Например, если в экземпляре фрейма Person нс будет указано конкретное значение слота Sex, оно будет равно «male».
Кроме этих дополнительных спецификаций имеются в ЯПЗ PILOT/2 и спецификации демонов. Они определяют присоединенные процедуры, которые <<запус- каются» при добавлении (if_added), удалении (if_deleted) или изменении значений (i 匚 changed).
Любой фрейм может стать прототипом для других фреймов:
[John is_a Person; if_deleted bury();
Name = «Johnson» ;
Age = 32 ;
Children = {Ann, Tom}];
[Mary is_a Person:
without Age ;
Name 二 《Smirnova» ;
Sex = <-female» ;
Children 二 empty];
Приведенные выше фреймы John и Mary — экземпляры фрейма Person. Их слоты получают конкретные значения. Фрейм-экземпляр может не иметь некото- рзх слотов своего прототипа (имена таких слотов перечисляются после ключе- В0Г0 CJ10Ba without) и может иметь дополнительные слоты, специфицируемые так же, как и в прототипе.
7・ 1 ・3・ Процедурные средства языка
При обсуждении примеров спецификаций фреймов мы пользовались интуитивным пониманием значения. Спецификация этого понятия в ЯПЗ PILOT/2 следующая. Значения могут быть простыми (единичными) и множественными. Множественные значения — списки простых значений одного тип/ заключен- ныс в фигурные скобки. В качестве простых значений в PILOT/2 выступают выражения,
Введение префиксов и постфиксов к именам переменных является первым шагом на пути определения выражении. Но в ЯПЗ PILOT/2 есть и более мощные сред- ства этого типа. Здесь используются традиционный набор арифметических операций и общепринятое их старшинство, а специфика ЯПЗ на уровне первичного выражения:
перв-арифм ::=|| число] ।
НGET-переменная11
i iVAR-переменная!丨
I- герв-ар^йг:||
I IВЫЗОВ-фун^ц//I i
[丨(аоифмети^ес:<ое )11
I Iслот-Орей^г| [
еызов-функции ::=仙公-5吋八『丿(э-^-енке {{. зна^&н^е }})
Первые шесть вариантов вполне традиционны, а последний имеет следующее определение:
сксп-$реЕ:*а ::二[:/串…ре做:.■■■si,-cro^a ]
5гчцтывая нышесказанное. сле;1\'ющне примеры суть правильно построенные выражения ЯПЗ PILOT/2:
emptyemptyпустое зусе*.£г/в
empty
empty
АЗСИ-сиузол char
строкастрокаstringstringимс-фрейма fraroeУАг1-перемен^ая frameGET-переменная int зоио^е^ическое int слот-ррей**а intимс-фрейма fraroeУАг1-перемен^ая frameGET-переменная int зоио^е^ическое int слот-ррей**а intxqwe「{卢
строка
строка
string
string
имс-фрейма fraroe
УАг1-перемен^ая frame
GET-переменная int зоио^е^ическое int слот-ррей**а int
имс-фрейма fraroe
УАг1-перемен^ая frame
GET-переменная int зоио^е^ическое int слот-ррей**а int
Person
$NameFrame
$AgeValue>
10 * ( $va「1 +2**4) [John : Age]
my_fucc (-events. kb»t [EvenT : Valcej) зызоз-Су.^ки^' bool
Теперь вернемся к основному средству построения конфликтного「::累*工 к ус Товиям. Напомним, что в ЯПЗ PILOT/2 две точки, где, сог^сно синтаксису языка, возможно использование условий: конструкция ^се~кыхип^ мвнх разрешениях и .чевые части продукционных правил. И в том и в Другом случае инженер по знаниям может сформулировать произвольную усювну
конструкцию в базисе И-ИЛИ-НЕ с общепризнанным старшинством логических операций. Кроме того, на уровне первичных условий возможно использование отношений и образцов.
Образцы являются наиболее важной и мощной конструкцией языка P1LOT/2, так как они позволяют находить и фиксировать интересующую инженера по зна- ниям сит)7ацню в базе знаний. По синтаксису образец похож на слот-фрейма, но у него существенно большие возможности и другая семантика. Образец — это пре* днкат на базе знаний, принимающий значения «истина» или «ложь», тогда как слот-фрейма возвращает значение конкретного слота конкретного фрейма. Образец определяет некий шаблон, которому мо1ут удонлетворять фреймы из базы знаний. Образец состоит из синтаксического обрамления «?[...]» * тела. Тело представляет собой шаблон фрейма, которому, быть может, предшествует конс трукция «захвата» результатов отождествления в переменную, и список слотов- образцов, который может быть пустым. Каждый слот-образец также имеет шаблон слота в качестве базы отождествления и, быть может, конструкцию «захвата» результатов. Таким образом, тело определяет структуру, которую должны иметь фреймы базы знаний, чтобы успешно сопоставиться с образцом. Шаблон фрейма определяет множество фреймов базы, на которых будет происходить отождествление. Это множество может состоять из единственного фрейма (нрн этом указывается имя фрейма или его отрицание); всей базы (тогда шаблоном фрейма является символ «*»); фрейма (фреймов), имена которых хранятся в переменных типа VAR или GET, а также фиксироваться с помощью конструкции явного задания множества, образованного из элементов и стандартных теоретико-множествен' пых операций one_of (пересечение); all of (объединение); ~ (вычитание). Пустой префикс соответствует операции one of. При этом семантика операции one of — ^первый из сопоставленных». Операция «вычитание» может испольэо- ваться только с именами фреймов, заданными явно. Результаты успешных сонет ста влений могут запоминаться в переменных с помощью операции присваивания (в случае префикса one_of или его отсутствия запоминается результат первого успешного сопоставления, а в случае префикса all of — результаты всех успеш- нмх сопоставлении). Шаблон слота практически тот же, что и шаблон(|)рейма. Одиако для слотов есть еще о ди и способ указания об'ьеднненпя — неречнеленне иужнмх слотов через разделитель «;>. Отличие шаблона слота от шаблона())peii- ма в том, что здесь добавляется значение-образец. Как и в предыдущих случаях, наущенные значения моi'yт «захватывагься» в переменные. Шаблон знаииння может фиксировать, что оно произвольно, но существует (в этом случае использует- ск символ «*>>, либо определить возможные значения более точно с помощью зле- ментов (значение-первнчного-спецификатора) н логических onepamni в базисе И-ИЛИ, Заметим, что отрицание здесь не требуется, так как его функцию берет на себя отношение «! = « в первнчном-специфпкатора, Спецификаторы задают декларативно ограничения на значения. Синтаксис С11ецп(|)нкаторов следующий:
спецификатор ::二 терм-спецификатора {{ | J терм-спецификатора }} терм-спецификатора ::= первичное-спецификатора
{{ && первичное-слецификатора }}
247
первичное-спецификатора::=
丨丨丨丨 < 丨 | значение-первичн-спецификатора||
II
!! ( спецификатор )“
значение-первичн-спецификатора ::=
j j значение“
1111 пустоj |j jVAR-переменная|]{|
I I11 one_fromj j| ]GET-переменная11| {
i i I all_from j jj(
Знакн отношений имеют стандартную семантику для чисел и семантику сравне- ннл ASCI-кодов для символов и строк, В тех случаях, когда значение в первич- ном-спецификатора является множеством, все знаки отношений имеют следующую интерпретацию:
< ——строгое включение множества значений спецификатора во множество з качен ini слота;
<= — нестрогое включение множества значений спецификатора во множество значенн!! слота;
== — совпадение множества значений спецификатора с множеством значений слота;
I- — несовпадение множества значени!! спецификатора с множеством знамени 11 слота;
>= — нестрогое покрытие множества значений спецификатора множеством значеиш! слота;
> — строгое покрытие множества значений спецификатора множеством значении слота.
Дополнительно к этому значение-перв1тчного-спецнфикатора может быть V AR- пл п GET-переменной, которым предшествует префикс one_from (один из элементов в переменной должен быть использован); all from (все элементы переменной должны быть использованы). Пустой префикс соответствует операции one_from.
Возможности образцов лучше рассмотреть на примерах. Пусть в тск\щеп базе имеются следующие фреймы, причем порядок их расположения в базе тако% как описано ниже:
[Fl is_a prototype;[ F2 is_a Fl; [ F3 is_a Fj;
S1 int, by_default 8 :S2 二"x" ];S尸0],
S2 char];
Имеются также переменные $V1 (типа frame) и $V2 (типа char), которые до применения каждого из образцов содержат следующие значения.
$V1 =;F1 ;F2 :F3 ;$V2 二:’a';
Примеры образцов с их значениями и значениями переменных $V1 и $V2 после применения этих образцов к описанной базе представлены ниже.
N/N Образец _' Рез …т
1?[F :S]false
?[F1: S2]true
?[F2: S1 {=- 8}]We
?[ >>$V1 二 alljf*: S1{二=8}]true
?[* :S2 {== <<$V2} ]tue
?[one_of $V1>> : S1{== one_from {1,0}} ] true
true truetrue true6a ?[one_of $V1>> : S1 {== all_from {1,0}} ]false
true true
true true
7?[$V1«: S1{==8};>$V2=S2]
8?[*:*]
Образцы 1 и 2 представляют собой запросы па наличие в базе соответствующих слотов-фреймов. Поскольку [F:S] в базе нет, a [F1:S2] — есть, значения образцов 1 и 2 соответственно false и true. Образец 3 более избирателен, он проверяет базу па наличие в ней фрейма F2 со слотом S1, имеющим значение 8. Такой фрейм в определенной нами базе имеется (вспомним, что фрейм -э кземп л яр наследует слоты своего прототипа), поэтому значение образца — true, Образец 4 ищет нее (all_of) фреймы со слотами S1, равными 8, записывая при этом их имена в переменную $V1. Префикс этой переменной предписывает заносить в нее значения слева с сохранением. В образце 5 значение слота S2 берется из переменной $V2 (слева без сохранения), причем имя фрейма может быть любым (*). Ыо фрейм со слотом S2 ="а" в базе один (F2). Ключевое слово one_of в образце 6, явно указывающее на поиск только первого подходящего фрейма, — не обязательно, такая стратегия подразумевается по умолчанию, Для успешного сопоставления с этим образцом фреЛм F3, имя которого взято справа без сохранения из переменной SV1, должен иметь слот S1, значением которого может быть одно нз (one_from) чисел: 1 или 0. Условие соблюдается, и значение образца — true. Вместо one_from может быть указано all_from (образец 6а), в этом случае значением слота должно быть вес множество {1,0), Образец 7 показывает, что можно проверять значения нескольких слотов сразу. Семантика его следующая: найти первый фреЛм со слотами S1 =.8 и S2; если такой фрейм будет найден, записать его имя в переменную $V1 справа, протолкнув верхушку стека справа, а значение слота S2 — в переменную $V2 слева, без сохранения значения в верхушке стека. С помощью образца 8 проверяется, есть лн вообще в текущей базе какие-нибудь фреймы.
Таким образом, мы обсудили конструкции ЯПЗ PILOT/2, которые могут пот- реооваться при формировании левых частей продукционных правил. Все онн предназначены для выделения в БЗ системы интересующих нас ситуаций, Такое выделение не самоцель, а средство для преобразования таких ситуаций для полу- чення решений. Сами преобразования описываются в основном, в правых частях продукционных правил ЯПЗ-программы н сводятся к выполнению определен- ных действий над БЗ и/или значениями переменных.
ip PIL0T/2 все действия делятся на стандартные (системные) и нестандаот- мые (пользовательские). Все они могут использоваться не только в правых ч*.
ш^тпННЫХ ПравИЛ, Но н ? аннотациях, что позволяет реализовывать в PlLCn/2 развитые модели объяснений [Clancey, 1983]. Синтаксис нестан- дартнух Действий определяется спецификацией прототипов процедур, рассмот- реннон вьш【е, и синтаксисом обращений к процедурам, а семантика и реализация —целиком в руках пользователя ЯПЗ PILOT/2.
Классификация стандартных действий проста. Это обработка переменных, обработка базы знаний, процедурное управление и ввод/вывод.,
Как указывалось выше, в ЯПЗ PILOT/2 имеются три вида переменных (VAR, GET, PUT). С учетом этого:
Н il ilН il ilобработка-переменных :: = | j оператор-присваивания j | 11 PUSH-оператор I I РОР-оператор ]i CLEAR-оператор
Н il il
Н il il
оператор-присваивания ::- j | VAR-переменная || 二 значение I] PUT-переменная | |
Примерами присваивания значений переменным могут служить конструкции вида:
$vaC二〈$а+$Ь:
>$var2=[FrameName : SlotName] * $var1;
$var3<< -enpty:
Заметим, что с помощью присваивания можно реализовать и «проталкивание* стека, например, так:
>〉$va「2 二 empry: $var3<< =:
пли даже так
$var<<:
Однако более общим будет действие вида
push ( left, Svar2. $va「3 ): push ( right. $va「2. $va「3 );
так как здесь с помощью одного действия можно обраоотать несколько стеков, причем одно и то же имя может многократно повторяться в качестве параметра. В этом случае в соответствующем стеке появится несколько пустых позиций- уровней. Выталкивание значений пз стеков производится аналогичным образом. Для очистки стеков следует использовать стандартное 口еНствне CLEAR При этом не важно, с какой стороны (слева или справа) начнет очищаться стек.
Прнсвапвания и операторы обработки стеков, рассмотренные выше, конечно, важны, но не они составляют суть обработки данных в языках представлеипя знаний В дополнение к этолту, а вернее, в первую очередь, здесь Должны быть средства изменения базы знании, текущее состояние которой п определяет, какие решения уже были приняты и что будет происходить дальше.
Вь】ше уже обсуждалась конструкция образца ЯПЗ PILOT/2, которая использу- ется для выделения интересующих инженера по знаниям ситуаций. Почти та же конструкция применяется и для преобразования ситуаций. Деист вительно, для выполнения любого преобразования в конечном счете нужно нагни некоторую ситуацию и либо удалить ее, либо скорректировать соответствующим образом. Для полноты ну ж и ь1 и средства формировдния новых ситуаций. Все эт и действия выполняются в ЯПЗ PILOT/2 с помощью конструкции обработка-базьь знаний, которую для краткости и преемственности с языком ПИЛОТ [Хорошевский н др., 1990] будем также называть манипулятором. Итак, манипулятор, или обработка базы знаний, — это удаление фреймов, создание фреймов, замена фреймов или коррекция фрейма.
Операции удаления, создания и замены фреймов в текущей базе знаний манипулируют с фреймами как с целыми и неделимыми единицами. При этом благодаря использованию образцов можно за одно обращение к соответствующему манипулятору провести множественные изменения в базе знаний:
[?[*:*] \ ];[ ?[ * : *{==<(обработан»} ] \ ];
[?[ »$DeletedFrameNames=all_of * : *{==«обработан»} ] \ ];
Создание новых фреймов в ЯПЗ PILOT/2 для пользователя языка тоже простая операция. Здесь нужно дать определение нового фрейма или совокупности (фреймов аналогично tomv, как это делалось в рамках декларативной компоненты ЯПЗ PILOT/2:”
[\ [ Framel : Slotl1 = «Mother»;
Slot12 = «Father»;
Slot13 = «Children»;
Slot14 二 21];
[Frame2 : Slot21 = empty];
[Frame3 :]
Замена одних фреймов на другие — не что иное, как объединение уже рассмотренных конструкций удаления и вставки;
[?[*:*]'[ Frame : Slot 二 “End Of Job» ]]
Так в ЯПЗ PILOT/2 осуществляется коррекция баз знаний на уровне отдельных едипиц - фре i I мо в. Вместе с тем часто требуется скорректировать некоторьит фрейм или группу фреймов более «тонким» способом. Например, это может быть изменение значений некоторых слотов определенных фреймов, удаление «не- нужных» слотов и/шш добавление новых слотов в уже существующие фреймы. Все эти маннпуллннн с базой зигшнн осуществляются в ЯПЗ PILOT/2 на уровне конструкции коррекция-фрейма. Примеры использования манипуляторов в слу- иае коррекции базы знашМ на уровне отдельных фреймов п/нлн'групп фреймов приводятся ниже:
〔*; ' Si int] - К первому фрейму в базе знаний добавить спот с именем S1.
[all_of *:$del\ ] - Во всех фреймах, имеющих слот,с именем, хранящимся в $del, удалить этот слот.
[all_of * : si=+1] - Во всех фреймах, имеющих слот S1, изменить значение последнего, увеличив его на 1,
При сбсужденнн общей структуры управления PILOT-программой были введе- ны мощ,,ь,е)но «дорогие^ средства управления выводом. Вместе с тем инженер 110 знанням иногда может быть уверен, что надо выполнить определенную продукцию или секцию; он может знать, что определенные продукции пока не нуж- Ubi, но зато необходимо включить в рассмотрение другие продукции. Наконец, н】югда требуется осуществить принудительное завершение работы PILOT-npo- 「раммн. Все такие действия в ЯПЗ PILOT/2 объединены в группу действий процедурного управления на уровне управление-активностью-правил, управление* активпостыо-секций, вы зов-секции или выход.
①“ньтр «активности/неактивностн» продукций - первый из используемых «арбитром». Поэтому, явно активируя или деактивируя некоторые из продукций, можно существенно сократить его работу и увеличить производительность всей продукционной системы, В случае секций фильтр активности, конечно, не столь эффективен, ио у инженера по знаниям появляется возможность более точной структуризации правил продукнионной системы н за счет этого увеличения эффективности ее функционирования.
Одними из уже упоминавшихся действий являются переключения флагов актив- пости продукций (rule_on/rule_off), с помощью которых можно устанавливать их как в текущей, так н любой другой секции. Возможно манипулирование флагами сразу всех продукций одной секции (section_on/section_off).
Особым действием является вызов (invoke) секции. В результате его выполнения текущая активная секция «проталкивается» в)гправняющий стек, а ее место на следующем таге занимает вызываемая секция. Так как за вызовом секции могут следовать другие действия (в частности, другие вызовы), после полной отработки этого вызова «арбитр» на некотором шаге, минуя формирование КМ н выбор из него продукции, возвращается к применению данной продукции, причем в той ее части, которая непосредственно следует за вызовом.
Выполнение де11ствия exit прерывает работу «арбитра» н таким образом завершает работу продукционной системы. В качестве «побочного» эффекта это действие позволяет передать во внешнюю среду информацию о том, как завершилась PILOT-ирограмма. По «умолчанию^ выход происходит с нулевым кодом возврата.
Мь】рассмотрели обработку пepe^leн^IЫX и баз знаний, а также действия, связанные с управлением выполнением PILOT-программ, Вместе с тем понятно, что сколько-нибудь сложные задачи требуют удобного ввода/вывода. Вот почему в ЯПЗ PILOT/2 включена совокупность стандартных действи<11 поддерживающих ввод/вывод информации. При этом основное внимание уделяется лействн ям по работе с базами знаний. Что же касается средств работы с фазами, то в ЯПЗ PILOT/2 используется лишь пос-зедовательный доступ и простые формат- нме преобразования, а также специализированный обмен с экраном на уровне
сообщений и вопрос-ответных цепочек [Khoroshevsky, 1994]. Все более развитые средства этого типа, которые могут потребоваться пользователю, должны подключаться на уровне нестандартных RciicTBUtL
Выше мы обсудили основные аспекты представления знаний па базе ЯПЗ PI- LOT/2. Примеры его использования будут рассматриваться в след^иощих параграфах данной главы.
72 Психодиагностика — пример предметной области для построения экспертных систем
В настоящем параграфе Описывается пример использоваиия тех теоретических знаний, которые, как надеются авторы, уже усвоены читателем это]"1 книги.
Для конкретности мы взяли в качестве предметной области проектирования и реализации экспертных систем область пснходиагпостшси. И ма этом п])имерс попытаемся вместе с читателем пройти по пути разработки н рсалпзацпп соответствующей экспертной системы — одной из спектра реализованных па основе методов н средств, рассматриваемых в данной книге.
7.2.1. Особенности предметной области
Современная психодиагностика предоставляет практнку】ощнм психологам широкий спектр методик, тестов н опросников для диагностирован ня и прогноза личностных особенностей человека и позволяет получать развернутое психологическое заключение («портрет» испытуемого). Такие заключеимя могут использоваться специалистами, желающими оценить свои способности н, возможно, изменить род своей деятельности в соответствии с рекомендациями; преподавателями, занятыми обучением и переобучением специалистов — с целью выбора адекватных методов и средств обучения; руководителями организаций, подбирающими работоспособные коллективы и/или анализирующим и деятельность ма^тых коллективов; сотрудниками органов управления трудовыми ресур- самн и бирж труда и т. д. Можно использовать результаты и для стимулирова- ния личностного роста испытуемых, а также для профилактики психологических срывов и повышения адаптпвных свойств человека в условиях стресса. Таким образом, сама предметная область психодиагностики п профориентации является значимой и представляет интерес для создания соответствующих спс- тем автоматизации. Важно и то, что тиражировать в -компьютерных системах имеет смысл лишь опыт ведущих специалистов в этой области, которые, как пра- вило, заняты и не могут обеспечить все потребности общества в соответствующих консультациях.
Современное состояние автоматизации психодиагностики и профконсульти- рования характеризуется наличием достаточно большого числа отудельных программ, автоматизирующих стадию предъявления тестов и дешифрацию резуль-
татов по ключу. На выходе такие системы, как правило, выдают числовой вектор результатов либо шаблонные заготовки интерпретации этих векторов, не отражающие индивидуальных особенностей испытуемых. Такое положение связано с объективной сложностью индивидуальных психологических заключений по- лу:1енне которых требует привлечения профессиональных экспертов, способных "1'отовых поделиться своим опытом и мастерством.
Следует отметить, что психодиагностика является классической предметной областью для разработки систем, основанных на знаниях, И именно здесь методоло- 「ня и технология создания экспертных систем могут принести значительный эффект.
Оставшаяся часть главы построена следующим образом: сначала кратко обсуждается сама проблематика психодиагностики и профконсультирования, затем ставится задача разработки интеллектуальной системы «Ориентир* и перечисляются основные требования к этой системе. В заключение рассматриваются вопросы разработки и реализации одной из ЭС, входящих в состав системы ^Ориентир».
7・2・2・ Батарея психодиагностических ЭС «Ориентир»
Представления человека о себе и система его ценностей могут быть выявлены с помощью различных психологических методов, однако возможность влнять на их формирование в ситуации консультации очень ограничена. Обычно особенности психики исследуются в трех направлениях — анализ перцептивных особенностей, исследование интеллекта и личностных особенностей. Факторов, влияющих па построение рекомендатн!, так много, что для того, чтобы прнйтн к какому-либо заключению (например, о выборе профессии), необходимо провести полное психологическое обследование с целью получения психологического портрета испытуемого, обеспечить сопоставление его психологических черт и требований, которые предъявляет желаемая сфера деятельности, и сообщить ему полненные результатьк При этом под результатами имеется в виду нс однозначная короткая информация о том, подходит ли избранная профессия человеку. Испытуемому необходимо сообщить его психологический портрет, какие перспективы открывают перед ним его психологические черты в плане выбора деятельности, и о том, как они сочетаются с его планами на будущее, Д-1я этого, очевидно, нужно использовать не один тест, а сбалансированную систему тестов.
Содержательные классификации тестов — это, в первую очередь, классификации по психическим функциям, и. практически, они совпадают с классификацией способностей по тому же основанию. С этой точки зрения тесты делятся на сенсомоторные; перцептивные; тесты на особенности внимания; мнестические (особенности памяти); тесты на интеллектуальный уровень н интеллекр^ьные особенности; личностные тестьь Каждый из этих классов тестов может быть, в свою очередь, разделен на подклассы в зависимости от конкретной особенности им измеряемо]'! [Анастази, 1982],
254
По стимульному материалу тесты делятся на вербальные л невербальные. По cvth компьютеризация никак не связана с этой характеристикой методики. Но зрительное изображение, сложное по форме и/или цвету, может привести к труд- НоСТЯМ как на этапе компьютеризации методики, так и при тиражировании ее на разные типы ЭВМ и, в частности, дисплеев.
Личностные тесты направлены на выявление присущих человеку личностных нерт, осознаваемых и бессознательных особенностей и проблем. Многие из них (например, прожектив!1ые) относятся к объективным нестандартизоваиным тестам Но с точки зрения компьютерного тестирования способностей гораздо боль- ши(1 интерес представляют личностные опросники, особенно опросник]], охватывающие широкий круг личностных черт н особенностей личности. К наиболее широко используемым личностным опросникам (в том числе и в нашей стране) относятся Миннесотский мультифазный личностный опросник (MMPI), 16-фак- ториьп1! тест Кеттелла, опросник УСК (уровень субъективного контроля), опросник Айзенка и некоторые другие.
Количество тестов, используемых в конкретной работе для психодиагностики, может быть различным. Возможно, для диагностики одной, узконаправленной способности в некоторых случаях можно ограничиться и одним тестом. Однако почти всегда широта и значимость диагностической задачи заставляют использовать тест, позволяющий определить сразу несколько показателей, или батарею (многофакторных) тестов.
Учитывая вышесказанное, в рамках проекта «Ориентир», выполнявшегося совместно специалистами из ВЦ РАН (Москва) и СПбГТУ (Санкт-Петербург) в середине 90-х годов и связанного с созданием программных средств, обеспечивающих функционирование соответств\гющей интеллектуальной интерактивной среды, была разработана и реализована батарея ЭС, работающих на получение следующих общих результатов:
Психологическая диагностика основных свойств личностл, мотивации, ]]нтел- лекта, темперамента с получением психологического заключения в виде текста на естественном языке,
Прогнозирование профессиональной успешности в различных видах деятельности с учетом возраста, пола и психологических особенностей испытуемых.
Выдача рекомендаций по созданию научных, творческих, учебных и производственных малых коллективов на основе диагностики ролево!'] и психологической совместимости отдельных членов коллектива,
Профессиональный подбор и отбор специалистов для переподготовки в рам- ках специального заказа,
Изучение психологических особенностей испытуемых с целью выбора намбо- лее подходящих методов обучения, средств адаптации, индивидуального под- хода, способствующих профессиональному и личностному росту.
Отличительные особенности проекта были связаны с тем, что здесь в рамках еди- Hoii интеллектуальной системы объединялись результаты, получаемые от отдель- ннх диагностических ЭС различной модальпости. Реализация проекта осуществлялась в среде Windows с использованием методов объектно-ориентированного проектирования и программирования, а базисом послужила технология разра- боткн систем, основанных на знаниях.
Разработка батареи экспертных систем «Ориентир» предполагала, что здесь чет- ко различается несколько задач. В рамках первой из них система должна обеспе- “нть создание, коррекцию и сопровождение базы испытуемых, включая защиту от несанкционированного доступа к данным н знаниям. Вторая задача - управление вызовом и функционированием отдельных локальных ЭС, составляющих исполнительные блоки общей батареи. Последняя задача связывалась с фуикшю- 1шровашюм экспертно!! системы «Профи», которая работает с базами знаний лок^пьиых ЭС. Учитывая вышесказанное, Н-диаграмма БЭС «Ориентир» может быть описана схемой, представленной на рис. 7.2,
Здесь базовыми. обсл\'Живаю1Ш1МИ все локальные ЭС, «задепствованные* в об- шей системе, являются опции База п Тесты. Первая из них обеспечивает(|юрми- рование п сопровождение баз данных и знашп! испытуемых, а вторая - вызов /шкальных экспертных систем. Экранная форма основного цикла работа БЭС «Ориентир» представлена на рис. 7.3.
q в
Options Wintf<w
Help
[Led 斗
Expert
AnkcU
CiLi*"e .
Profit1
Results Explanation kSeseyiew >
Histoiy
Table»|
рис. 7.3. Экранная форма основного цикла работы БЭС «Ориентир-
7・3・ Разработка и реализация психодиагностической ЭС «Cattell»
Одиой из подсистем БЭС «Ориентир» является психодиагностическая ЭС «Cat- tell», в рамках которой, в частности, выполняется тестирование испытуемых по тесту Кеттелла.
Как известно, тест Кеттелла измеряет 16 личностных черт, характеризующих эмоциондльную, социальную и гштсл л актуальную сферы 11 сп ыту с мо го. Шкалы теста сведены в табл. 7.2.
Таблица 7.2. Шкалы теста Кеттепла и их интерпретация
Шкала Характеристики полюсов шкалы
АЛегкость эмоциональных контактов —эмоциональная отстраненность
ВСпособность к логическому мышлению
СИнтегрированность поведения, эмоциональная устойчивость —
эмоциональная неустойчивость
ЕДоминантность —подчиняемость
FЛегкость, эмоциональность поведения — серьезность, ограниченность
эмоциональных проявлений
G Глубокая усвоенность социальных норм и правил — отсутствие внутренней необходимости соответствовать в своих поступках социальным нормам
ННастойчивость, решительность в достижении цели — робость, ранимость
IЧувствительность, «витание вобпаках» —трезвость, реалистичность
LПодозрительность — доверчивость
М Индивидуалистичность, развитое воображение — склонность применяться к коллективу, прагматичность
N Склонность следовать воспитанным формам поведения — непосредственность поведения
О Готовность к самообвинению, пессимистичность — уверенность в себе, оптимистичность
Q1 Потребность в переменах, новшествах — консерватизм
Q2 Ориентация на собственные мнения, взгляды — ориентация на мнения и взгляды окружающих
Q3 Высокий сознательный контроль поведения — низкий сознательный контроль поведения
Q4 Энергичность, высокий уровень напряжения — Расслабленность, низкий уровень напряжения
Тест существует в нескольких формах. В данном проекте пспользовсишсь форма А.
7・3・1 - Архитектура системы и ее база знаний
Анализ предметной области н требований, предъявляемых к системе «Cattell» специалистами по социальной психологии, с одной стороны, и условными работь】
ее в рамках общей системы «Ориентир», с другой, позволил специфицировать архитектуру и функциональные возможности этой ЭС Н-диаграммой, представленной на рис. 7.4.
Собственное меню системы «Cattell» располагается в виде дополнительных опций основного меню,
Работа всех функционалын^х модулей в ЭС «Cattell» базируется на знаниях о «мире» испытуемых, соответствующей методики психологического тестирования и правилах анализа его результатов. Знания об испытуемом содержатся в общей БЗ системы «Ориентир», а знания о самом тесте — в БЗ ЭС «CattelU. В общую базу знаний добавляется лишь та информация, которая описывает результаты тестирования,
ЭС «СайвН»
г— Уровень
—г- Испытуемый
一р Тестирование
'Результаты
Эксперт
р АнкетированиеПо вопроснику_г— По таблицеСозданиеРедактированиеОбъяснения—г Анализ знанийНа уровне правилр АнкетированиеПо вопроснику_г— По таблицеСозданиеРедактированиеОбъяснения—г Анализ знанийНа уровне правилПрофилирование—Количественное(сырые баллы)Из расчетаПо таблицеПрофилирование—Количественное(сырые баллы)Из расчетаПо таблице'~г- ПортретированиеНевербализованноеВербализованное'~г- ПортретированиеНевербализованноеВербализованноеКачественное (семантические стэны)Качественное (семантические стэны)Из расчетаИз расчетаПо шкапамПо шкапам
р Анкетирование
По вопроснику
_г— По таблице
Создание
Редактирование
Объяснения
—г Анализ знаний
На уровне правил
р Анкетирование
По вопроснику
_г— По таблице
Создание
Редактирование
Объяснения
—г Анализ знаний
На уровне правил
Профилирование
—Количественное
(сырые баллы)
Из расчета
По таблице
Профилирование
—Количественное
(сырые баллы)
Из расчета
По таблице
'~г- Портретирование
Невербализованное
Вербализованное
'~г- Портретирование
Невербализованное
Вербализованное
Качественное (семантические стэны)
Качественное (семантические стэны)
Из расчета
Из расчета
По шкапам
По шкапам
На уровне объектов
Ретроспектива
Помощь
Рис. 7,4. Н-диаграмма ЭС «СаПв11<-
Осповные знания о тесте « земпляров, формируемыхОсповные знания о тесте « земпляров, формируемых[рогtrer is/ prototype: not„verb f ra^-e: verbfra^e j:[рогtrer is/ prototype: not„verb f ra^-e: verbfra^e j:СаКеН» представляются совокупностью фреймов-эк с использованием следующих прототипов:
Осповные знания о тесте « земпляров, формируемых
Осповные знания о тесте « земпляров, формируемых
[рогtrer is/ prototype: not„verb f ra^-e: verbfra^e j:
[рогtrer is/ prototype: not„verb f ra^-e: verbfra^e j:
[catiell is_a prototype: a_sxatus int; anketa frame; n status吟
s_status int; s_p「fl frame;
p_status int; port ret f rame ];
[not_verb is_a prototype;order {string}:b1 {string}; b1_valn {int};b2 {string}; b2_valn {int};b3 {st「ing}; b3_valn {int};b4 {string}; b4_valn {int}: b4,b4_txt{st「ing}];[not_verb is_a prototype;order {string}:b1 {string}; b1_valn {int};b2 {string}; b2_valn {int};b3 {st「ing}; b3_valn {int};b4 {string}; b4_valn {int}: b4,b4_txt{st「ing}];[verb is_a prototype; order - {string};b1_vals {string}; Ы, b1.txt b2_vals {string}; b2, b2_txt b3_vals {string}; b3, b3_txt b4_vals {string}];[verb is_a prototype; order - {string};b1_vals {string}; Ы, b1.txt b2_vals {string}; b2, b2_txt b3_vals {string}; b3, b3_txt b4_vals {string}];{string}; {string}; {string};{string}; {string}; {string};
[not_verb is_a prototype;
order {string}:
b1 {string}; b1_valn {int};
b2 {string}; b2_valn {int};
b3 {st「ing}; b3_valn {int};
b4 {string}; b4_valn {int}: b4,b4_txt{st「ing}];
[not_verb is_a prototype;
order {string}:
b1 {string}; b1_valn {int};
b2 {string}; b2_valn {int};
b3 {st「ing}; b3_valn {int};
b4 {string}; b4_valn {int}: b4,b4_txt{st「ing}];
[verb is_a prototype; order - {string};
b1_vals {string}; Ы, b1.txt b2_vals {string}; b2, b2_txt b3_vals {string}; b3, b3_txt b4_vals {string}];
[verb is_a prototype; order - {string};
b1_vals {string}; Ы, b1.txt b2_vals {string}; b2, b2_txt b3_vals {string}; b3, b3_txt b4_vals {string}];
{string}; {string}; {string};
{string}; {string}; {string};
[n_prfl is_a prototype;
А, В, С, E, F, G, H, I, L. M, N, 0, 01. 02. 03, 04 int ];
I, L, M, N. 0, Q1, 02, Q3. 04I, L, M, N. 0, Q1, 02, Q3. 04string ];string ];[s_prfl is_a prototype;
I, L, M, N. 0, Q1, 02, Q3. 04
I, L, M, N. 0, Q1, 02, Q3. 04
string ];
string ];
А, В, С, E, F, G, H,
[anketa is_a prototype;
ansi, ans2, ans3(ans187 string ];
Кроме того, в БЗ ЭС «Cattell» содержится совокупность фреймов-экземпляров, поддерживающих технологические знания о том, как осуществляется переход от ответов в анкете испытуемого к «сырым баллам» в числовом профиле, а от него к семантическому профилю и затем к иевербализованному п вербализоваииому портретам.
7.3.2. Общение с пользователем и опрос испытуемых
Как следует из Н-диаграммы, представленной па рис. 7.4, подопцнм Cattell-меию различны для режима «Испытуемый» и режима «Эксперт».
Активация первого режима приводит к последовательному выполнению процедур диалогового анкетирования испытуемого, подсчета «сырых баллов» по каждому из 16 кеттелловских факторов н формирования на этой основе числового, а затем и семантического профиля испытуемого. Весь диалог в рамках этой опции ведется на языке, близком к естественному. При этом лингвистический процес- СОР 〃刀只 анализа ответов испытуемого, конечно, не используется, а «взаимопонимание» обеспечивается тем, что инициатива во всех диалогах здесь всегда у сис- темь】. Таким образом, она всегда «знает», каков должен быть ответ испытуемого в данной точке и в случае ошибки «добивается» правильного ответа с помощью переспросов н подсказок.
Единственной точкой перехвата инициативы от системы к пользователю явля- ется вмзов «помощи», к которой можно обратиться нажатием функциональной клавиши F1 или через соответствующую опцию в меню. При этом на экране появляется специальное окно, где высвечивается соответствующая контексту обра- тенмя к «помощи» информация. Отсутсвие на этом уровне объяснений — не случайно. Испытуемый нс должен «понимать*, почему (как) получен его лично- стиый портрет, В противном случае он будет осознанно или подсознательно отступать от «естественных» для себя ответов на вопросы анкеты и в конечном счете «научится» получать желаемый, а не действительный личностный портрет,
Противоположная ситуация в опции «Эксперт». Во-первых, иа этом уровне все выводы системы должны (по желанию экперта) сопровождаться объяснениями и обоснованиями и во-вторых, у психолога должны быть средства анализа знаний системы и данных по конкретному испытуемому. Защита от иесанкциоии- ровашюго доступа к данным и знаниям обеспечивается всей системой «Ориентир», если база помечена как личная (ее <владельцем» указан статус PRIVATE). Опции режима «Эксперт» перечислены в Н-диаграмме на рис. 7.4. Анализ данных и знаний системы, а также объяснения вынесены на уровень основного меню и активируются нз соответствующих опций.
Винду небольшой компьютерной подготовки психологов-экспертов в данном режиме диалог в подавляющем большинстве случаев идет на уровне меню и/или семантически значимых клавиш. Кроме того, в любой точке, где требуется реакция пользователя, он может вместо ответа обратиться к блоку «помощь» уже обсуждавши мся выше способом.
Из прмведепно!! выше Н-диаграммы ЭС «Cattell» следует, что опрос испытуемых может осуихествляться двумя способами: на основе ответов на ЕЯ-формулировки вопросов теста и путем заполнения таблиц. Первый вариант удобен при индивидуальном тестирован]]!!, а второ К — при массовом вводе результатов анкетирования, предварительно зафиксированных на бумажных носителях.
Но и в том и в другом случае результатом работы блока анкетирования является фрей>1-экземнляр прототипа «ankela». приведенного выше,
7-3.3. Вывод портретов и генерация их текстовых представлений
Для удобства работы психолога-эксперта результаты профилирования выдаются в специальное окно в виде графика, на осн абсцисс которого указаны факторы, а на осп ординат — «сырые баллы», набранные испытуемым по каждому нз фак- торов. Существует в системе и возможность табличной визуализации числового профиля. Несколько иначе визуализируется результат построения качественного профиля испытуемого. Здесь психолоп^-эксперту выдается 16 семантических шкал (по числу факторов), на кажуо" нз которых отмечается числовое значение соответствующего фактора.
Процедуры обработки данных анкетирован ня в рамках предыдущих опций базируются на знаниях. Но знания этм доведены до алгоритмов, реализация которых в ВИде продукционной системы нецелесообразна. Поэтому в ЭС《Cattcll» все такие процедуры реализуются на языке C++, а затем подключаются в лужлых точках. Вместе с тем сами технологические знания представлены эксплицитно совокупностью следующих фре/тмов прототипов и экземпляров:
[a_n_tbl is.a prototype;
f_A {frame};/* ответы по фактору А с весами */
f_B {frame}; /* ответы по фактору 8 с еесами */
f_Q4{f「ате};/* ответы по фактору Q4 с весами */];
[a_n_elem is_a prototype;
ans_dsc string; /* имя фрейма-экземпляра ответа на анкету */
weighja, weight_b, weight_c int; /* веса ответа типа «а», «6» и “о */];
[answer is_a prototype;
prt_name( exm_name, slot_name string];
[ank_numb is_a a_n_tbl;
f_A={q一3, q_4, q_26. q_27, q_5l, q_52, q/6, q_10l,q_126, q_l51,q_176 }; f_B={q_28, q_53,q_541 q_", q_78, q_102, . . . q_152, q_153, q_l77, o_178};
f_04={q_25,q_49,q_50, q_74, q_75, q_99,q^100. ,..q_l50,q„174,q_175}];
[q_3 is_a a_n_elem;
ans_dsc --<ans_003»;
weight_a= 2;
weight_b= 1 ;
weighty =0 ];
[ans_003 is_a answer;
p「t_name= «anketa»;
exm_name= »anketa0037»;
slot_name= “ans3” ];
Процедуры получения числового и семантического профилей лспы-
У 丄 ого как демоны при выборе соответствующих опций в меню ЭС «Cattcll».
В опции «портретирование» осуществляется психологическая интерпретация полученных на предыдущих этапах профилей испытуемого с целью построения его словесного личностного портрета. Здесь уровень а^тгоритмизации знаний пен- холога-эксперта существенно nnoit. Разные школы психологов несколько по-раз- ному оценивают роль и вес разных факторов, приписывают им различные тексто- вне отображения. Поэтому реализация вывода словесного портрета испытуемого в ЭС «Cattell» базируется на продукционно-фреймовом формализме. Собственно вербализация портрета — нисходящая (от цели), а подготовка его структурированного певербализованного описания — восходящая (от данных).
Наиболее сложиым и интересным является этап вывода неверба^шзованного портрета, реализованный в виде продукционной системы, предложенной в работе [Гаврилова и др,, 1992]. Правила этой системы служат для выявления и устранения противоречий двух типов. Первый связан, в конечном счете, с анализом ответов на определенные вопросы анкеты и позволяет фиксировать ситуации, когда построение сколько-нибудь лостоверного личностного портрета на основании имеющихся данных нецелесообразно. Возникновение таких ситуаций обычно связывается либо с невнимательные заполнением анкеты испытуемым, либо с попыткой преднамеренного искажения результатов тестирования за счет противоречивых ответов на дублирующиеся по семантике вопросы теста. И в том и в другом случае анкета помечается как «плохая» и из дальнейшей обработки исключается. Второй тип противоречий связан с выявлением и устранением контекстной зависимости н доминирования значении разных факторов, что позволяет получить более «гладки!г* личностньнг портрет.
Но и в том п в другом сл\гчае исходными данными для работы продукционной системы являются числово!! н семантический профили испытуемого, прототипы которых (n_prfl и s_prfl) приведены выше. Примеры словесных формулировок правил разрешения противоречигг выглядят следующим ооразом.
Если
значение фактора 8 семз.нтическом профиле ^сг^туемого ^ченьа
значение фактора «03» -"例 13K
то
Еслизначения факторов Высокий»,Еслизначения факторов Высокий»,@актор “ОЗ” поглощается фактором "F-.
Если
значения факторов Высокий»,
Если
значения факторов Высокий»,
“01s семантическом г,рсб^пе испытуемого ^0^ено
то
для принятия решения о поглощении ну^^о сравнить зна-e^i^ этих факторов 5 числовом профиле испытуемого. Кандидатом на 门”〃онб*е 6卜工己丁 гаг фз^тоо. у которого числовое значение меньше.
На уровне ЯПЗ P1LOT/2, обсуждавшегося выше, описание этих правил трансформируется во фрагмент продукционной программы вида:
rule F-поглощает-ОЗ
:;[$curr_s_prfl : F] == «ОН” && [$curr_s_prfl : Q3] == «%,
==> delete (03);|
section QI-02
if ([$curr_s_prfl : QI] == [$curr_s_prfl : 02]) set (01-поглощает-02, 02-поглощает-01);
rule 01-поглощает-02
::[$curr_n_prfl : QI] >= [$curr_n_prfl : 02]
==> delete (02);
rule 02-поглощает-01
;:[$curr_n_prfl : 01] < [$curr_n_prfl : 02]
==> delete (01);
Функционирование продукционной системы позволяет получить невербалнзо* ванный портрет. На вход блока генерации вербального представления поступает фрейм-экземпляр прототипа not_verb, слот order которого означен последова- тельностыо имен групп (bl—Ь4) в порядке убывай им «силы» этих групп, а слоты bi; bi_valn и bi_vals — последовательностями факторов, составляющих ту или иную группу вместе с их значениями из числового и семантического профиля. Собственно генерация текстов достаточно проста и сводится к регулярной замене значений факторов фразам и естественного языка на основе следующих знаний:
[factor is_a prototype;
ОН, Н, СР, В, 0В {string}];
[A is_a factor;
0Н={«Это человек замкнутый и необщительный, критичный и отчужденный.»} Н={«3то человек малообщительный и довольно замкнутый.»};
СР=;
В={«Это человек общительный и готовый к сотрудничеству. >■};
0В={«Зто человек внимательный к людям, открытый, общительный и готовый к сотрудничеству.»}];
[В is_a factor;
°Н={«Не имеет навыка решения логических задач, медленно обучается новым понятиям.»};
Н={«Не имеет навыка решения логических задач, довольно медленно обучается новым понятиям. »>};
СР={«Имеет определенные навыки в решении логических задач.»};
В={ «Умеет абстрактно мыслить, хорошо решает логические задачи, довольно быстро обучается новым понятиям,»};
0В={«Умеет абстрактно мыслить, очень хорошо решает логические задачи, быстро обучается новым понятиям.»};
[Q4 is_a factor;
ОН={«В настоящий момент самоуспокоен, расслаблен, не напряжен.-};
Н={“В настоящий момент находится в спокойном расслабленном состоянии. *};
СР=;
В={“В настоящий момент человеку присуще высокое рабочее напряжение, собранность, энергичность.»};
0В={«В настоящий момент человек напряжен, собран и даже несколько «взвинчен». •►};
Учитывая то, что генерация текстовых представлении портретов осуществляется в ЭС «Cattell» на уровне целых предложений и групп предложений, здесь используется простая продукционная система со следующими правилами:
section PORTRET-GEN
rernoveall:
(?[ $cu「r_po「t : Scurr_not_verb = not_verb ] &&
?[ $curr_port : $curr_verb 二 verb ] &&
?[ $curr_not_verb : $curr_order = all_of order ,
$cu「r_D2二all/fb2;
)insert (COPY);)insert (COPY);$curr_b3二all_ofb3;
)insert (COPY);
)insert (COPY);
$curr_b4二all_ofb4]
rule COPY::==> [
$curr_verb $curr_verb $curr_verb $cur r_verb $cur r_verb
order ] = $curr_order;
bl
b2
b3
b4
]=$curr_b1;
]=$curr_b2;
]二 $curr_b3;
]二 $curr_b4;
rule_off (COPY);invoke (B1);invoke
(B2);invoke (B3):invoke (B4);
section В1
if ( ?[ $curr_not_verb : $curr_b1_vals 二 all_of b1_vals ]);
rule A
:;<$сигг_Ы == «А» ==> <<$curr_b1;
$curr_txt = all_of [ A : <<$curr_b1_vals ];
[$curr_verb : bl.txt ] = $curr_txt; clear ($curr_txt);
rule E
::<$curг_Ы == «Е”
==> *\<^$c u г г_b 1;
$curr_txt = all_of [ E : «$curr_b1_vals ];
[$curr_verb : b1_txt ] = $curr_txt; clear ($curr_txt);
rule N
::<$curг_Ы == <№ ==> <<$curr_b1;
$curr_txt = all_of [ N : «$curr_b1_vals ];
[$curr_verb : b1_txt ] = $cu「r_txt; clear ($curr_txt):
section B4
if ( 9[ $curr_not_verb : $curr_b4_vals 二 all_of b4_vals ]);
rule В
::<$curг_Ь4 == “В» ==> <<$curr_b4;
$curr_txt = all_of [ В : <<$curr_b4_vals ]:
[$curr_verb : b4_txt ] = $curr_txt; clear ($curr_txt);
rule Qi
::<$curr_b4 == “Qi”
-=> «$curr_b4;
$curr_txt = all_of [ 01 : <<$curr_b4_vals ];
[$curr_verb : b4_txt ] = $curr_txt; clear ($curr_txt);
Результатом работы этой продукционной программы является фреим-экземпляо npoTOTiina verb, слоты order и bl-b4 которого содержат ту же информацию, что и в невербальном портрете, а слоты M_txt-b4 Jxt - собственно текстовое представление портрета испытуемого.
7-3.4- Помощь и объяснения в ЭС «Cattell»
Помощь в ЭС «Cattell» обеспечивается стандартным гипертекстовым Help. В иа- WCM случае топиками и подтопикамп такого гипертекста являются общее описание системы и подсказки для работы внутри блоков системы. Последние, в свою очередь, делятся на описания денств1П1 пользователя в рамках ввода и/или редактирования анкет испытуемых и их числовых (семантических) профилей и полу- чепия вербальных портретов. Во всех случаях акцент в текстах помощи делается ма описании доступных пользователю способов получения нужных ему результатов.
Объяснения в ЭС «Cattell» строятся на основе модели [Clancey, 1983; Khoro- sbevsky, 1985]. При этом система поддерживает два типа запросов: общие и специальные. Последние, в свою очередь, делятся на запросы типа «Почему», «Как» и «^то». Модель объяснений опирается не на трассу вывода решения, а на ключевые темы, связанные с фу икцио ни рован нем системы. Таких тем — три: вер- б;1льяьн1 портрет испытуемого, его профиль и заполненная анкета. Типичные примеры запросов на объяснения — следующие:
Случай общих запросов*
При построении данного nopwpema были неинтерпретируемые факторы?
Сколько противоречий было при построении данного портрета?
Какие факторы при построении данного портрета не интерпретировались?
Как разрешались противоречия при построении данного портрета? и тп. w.
Случай специальных запросов
Почему в портрете испытуемого присутствует фраза «...»?
Как в профиле испытуемого получено значение фактора《…》?〃 m, d
Для устранения непониманий все запросы па объяснения после аналнза перефразируются н выдаются эксперту в виде эхо-вопросов. И только в случае, если его нвае丁》ннт叩叩етаппя запроса, данная системой, происходит фо?”ва- гше текста объяснения. Так, например, эхо-запрос для поачеднего из общпх во- просов - Вас интересу правила полепил противоречив^ 噥等:曾乳 Wo.u портрете?, а для последнего из спешкипыиях вопросов - Вы “ узнать, каким образом сформировано значение фактора
Примеры объясняющих текстов для тех же запросов, к которым приведены эхо- вопросы системы — следующие:
фактор «…》= «...» поглощен фактором «…》= «…》, так как на шкале «ОН-Н-СР- В-ОВ* значение «…》выражено «сильнее» значения «...».
Общая формула, которая является ключом теста, выглядит следующим образом:
F _ value( factor) =£ от eem(q) * вес - от вет а(д)^
廿匚 /гJ i tor
Для фактора %.» она трансформируется в формулу:
F_value («...») = ответ (дЗ)*вес-ответа (q3) + …+ ответ (д176)*вес-ответа (ql76);
С учетом ответов испытуемого эта формула приводится к выражению вида:
F_value (%..») = 2+...+2 =
Таким образом сформировано значение фактора《…》=《..》.
Как следует из приведенных примеров, объяснения в ЭС «Cattell» достаточно подробные и позволяют получить психологу-эксперту практически всю интересующую его информацию. Понятно, что поддержка объяснений такого уровня существенно сложнее, чем выдача аннотаций к трассе вывода решения и требует своей базы знаний (согласованной с предметной БЗ) и своей программы вывода. Основные моменты построения этих компонентов ii рассматриваются гшже.
В целом подсистема объяснения системы «Cattell» строится по «полной» схеме: прием запроса от пользователя; анализ запроса; генерация эхо-вопроса; прием подтверждения на системную интерпретацию запроса и вывод собственно текста объяснения.
Формирование запросов на объяснения осуществляется на основе меню, в корне- Bbix опциях которого находятся темы объяснений, а на листьях — ЕЯ-шаблоны конкретных вопросов, В зависимости от типа запроса он может сопровождаться параметрами, которые выбираются пользователем непосредственно из портрета нлн профиля испытуемого. Система,《зная» описание текущего испытуемого, дополняет запрос пользователя и формирует структуру вида
«тема» «тип-запроса» «имя объясняемого фрейма-экземпляра»
“контекст»),
которая, по существу, является внутренним представлением запроса на объясне- нне. Таким образом, удается избежать построения Л-процессора для анализа запросов и вместе с тем обеспечить естественное общение.
Анализ внутреннего представления осуществляется параллельно с renepamieii эхо-вопроса. При этом сама внутренняя структура является управляющей цепочкой, которая задает поверхностную структуру эхо-вопроса. Фрагмент соответствующего множества ATN показан на рнс. 75
ктор
TST
CAT 'portref Т^ 'Вы хотели бы п
Вы хотели бы понять то;
CAT 'profile' Т
САТ Т「Ц^уи$Н F-NAME 叫 ^^^'идентифицнро значением'
PUSH
F-VALUE Т
com_que'
TST Т
■и ЕХ-СМ)...
5。система гюка не может объяснить!'
CAT 'Г т"имелись ли в профилеиспытуемого факторы, которые"
Вас интересует;
tst
т
TST Т
Хе дали при построениигюртретз никакой вербальнойсоставляющей?'
что система пока не может объяснить!'
■Данная тема пока системе недоступна/
Рис. 7.5. Фрагмент ATN-представления анализатора запросов и генератора эхо-вопросов
В результате анализа запросов на объяснения и генерации эхо-вопросов, а также уточнений, которые отражают процесс согласования мнении системы и пользователя, в базе знаний ПОЭС (подсистемы объяснений ЭС) «Cattell» формируется окончательная редакция запроса — фрейм-экземпляр следующего прототипа:
[expl_request is_a prototype;
「q_team frame; rq_type int; rq_context {string};
expl_fг frame: expl_sl {string}: expl_fun string;
echo_txt{string}; expl_txt{string}];
В начальный момент вывода текста объяснения в этом экземпляре заполнены слоты rq_team (тема объяснения из БЗ ПОЭС); rq_type (тип запроса, - WHY, HOW нли WHAT, - сформированный анализатором); rq_context (параметры запроса, если они требуются) и echo_txt (поверхностное представление «согласованного» эхо-вопроса). Слоты expl_fr (объясняемы!! фрейм-экзем пл яр из предметной БЗ теста); expl_sl (объясняемые слоты объясняемого фрейма-экземпляра) и expl_fun (имя процедуры вывода текста объяснения) заполняются самой ПОЭС. Значение слота expljxt представляет результат работы.
Собственная БЗ ПОЭС — статическая и содержит совокупность поддерживаемых MOREcii объяснений, определяемых как экземпляры следующих основных прототипов:
[explain is_a prototype;
expl_slt{string}; expljncstrmg: exPl_knw fra呢]
[v_expl is_a prototype;
why_slt {string};why (frame);
how_slt {string};how (frame);
what.slt{string}; what(frame)]:
[p_expl is_a prototype;
why {frame}; how {frame}];
[c_expl is_a prototype;
noneframe; contra frame ];
[wh is_a prototype;
path{frame}; process string ];
[path is_a prototype;
typeint;nm_framestring; nm_slot {string}];
[rule is_a prototype;
r_fact {string}; r_part {string}];
В нашем случае это множество экземпляров представляется следующими фреймами
[port is_a explain;
expl_slt ={ “bl”,《Ь2», «Ь3>,、《Ь4“ };
expl_fnc= «рогtret»; expl_knw= portret ];
[prfl is_a explain;
expl_slt
二{« A ”,« В **,«0», « E >>,«F ”,“ G»,«H », << I ”,《 L ”," M », “ N ”,《 0 », «01”,《02», « Q 3 », « 0 4 » }; expl_fnc=«profile»;
expl_knw=profile ];
[comn is_a explain:
expl_slt={ };
expl_fnc=«com_que»;
expl_knw=cornmor)];
Анализ их показывает, что в ЭС «Cattelb поддерживаются модели объяснения всех групп интерпретируемых в вербальном портрете факторов, всех факторов в профиле испытуемого и модели общих запросов.
Так, например, знания, необходимые для объяснения вербального портрета конк- ретизнруются фреймом-экземпляром portret, где заданы ссылки на объясняемые тексты («bl_txt», «b2_txt», «b3_txt», «b4_txt») и способы доступа к релевантной информации из предметной БЗ теста (whl, wh2, wh3, wh4):
[portret : v_expl;
why_slt ={ «b1_txt», «b2_txt», «b3_txt», «Ь4 txt» };
why ={ whl, wh2, wh3, wh4 };'
how_slt ={ [*b1_txt«, «b2_txt». «b3_txt>>. «b4_txt,,};
how ={ whl. v/h2, wh3, wh4 };
what_slt-{ «b1_txt», «b2_txt->, «b3_ixt»r “b4」xt” };
what={ whl, wh2, wh3, wh4 }];
При такой модели процессор объяснений интерпретирует последовательно описания экземпляров типа wh? где описываются пут”,ведущие от запроса на объяснение к тем данным, которые и составляют внутреннее представление ответа. Наиболее сложной является модель объяснения поглощения факторов, активируемая подмножеством общих вопросов. В этом случае ПОЭС должна иметь в своей БЗ модели всех правил поглощения и объяснять рассуждения машины вывода «Catlell», Для конкретности дальнейшего обсуждения предположим, что обрабатывается запрос вида «Как разрешались противоречия при построении данного портрета?» и пользователь согласился с интерпретацией системы, специфицированной в эхо-вопросе «Вас интересуют правила поглощения противоречивых факторов в данном портрете?^ Пусть также, для определенности, единственным поглощенным фактором при выводе вербального портрета бьн фактор А. Для этого фактора в модели существуют два правила объяснения поглощешы, соответствующие очень низкому (ОН) и очень высокому (ОВ) значению этого фактора в семантическом профиле испытуемого:
[АОН is_a rule;[ АОВ is_a rule;
jfact 乂“Е”,《L“; r_fact ={“E”,“L”};
r_part 二<«EOH,>, »L0H”} ]: r^part ={«EOB>>, “LOB"];
Однако реально поглощение фактора А наблюдается лишь тогда, когда значения факторов Е п L тоже ОН или ОВ. Понятно, что в такой ситуации подсистема объяснения должна сравнивать не семантические профили по вышеуказанным факторам, а их числовые профили. Учитывая вышесказанное, продукционная система вывода объяснения поглощений содержит 98 правил, аналогичных правилам для фактора А:
section EXPL-COLLAPSE-A
removeall;
if ( [$cu「「_s_prfl : A] == [$cu「r_s_Rrfl • E] ){
if ( [$curr_s_prfl : A] == “OH” ) insert (AOH-COLLAPSED-E):
if ( [$curr_s_prfl : А] == «ОВ» ) insert (AOB-COLLAPSED-E);
break };
if ( [$curr_s_prfl : A] == [$curr_s_prfl : 口 ){
if ( [$curr_s_prfl : A] == «ОН» ) insert (AOH-COLLAPSED-L); if ( [$curr_s_prfl : A] == «0В» ) insert (AOB-COLLAPSED-L); break };
rule AOH-COLLAPSED-E
(?[$curr_n_prfl : $curr_A = A]) &&
(?[$curr_n_prfl : $curr_E = E]) &&
($curr_A <= $curr_E)
==> [expl_request_001 : expl_txt]=
{«Фактор A = «, $curr_A>>, «(ОН) поглощен ”,
«фактором E = «, $curr_E, “(ОН), т.к. числовое»,
«значение E выражено сильнее значения А.»}];
rule AOB-COLLAPSED-L
::(?[$curr_n_prfl : $curr_A = A] ) &&
(?[$curr_n_prfl : $curr_L = L] ) &&
($curr_A <= $curr_l)
==> [expl„request_001 : expl_txt]=
{«Фактор A = «, $curг_А», “(OB) поглощен ”,
«фактором L = “, $curr_E, “(OB), т.к. числовое»,
«значение L выражено сильнее значения А.»}];
Таким образом, осуществляется генерация объяснений в ЭС «Cattelb. В данной версии каждый запрос на объяснение приводит к генерации одного и того же экземпляра прототипа expl_request. Однако нетрудно модифицировать обсуждавшуюся продукционную программу так, чтобы в БЗ объяснений сохранялась история работы с ней пользователя. В таком случае БЗ объяснений может использоваться для обучения специалистов интерпретации результатов по тесту Кеттелла.
Выше описаны основные проектные решения, использованные при создании психодиагностической ЭС «Cattell». Однако читателям должно быть ясно, что зти решения являются достаточно общими н характерными не только для дан- H°ii экспертной системы, но и для большинства ЭС диагностики.
Представление данных и знаний в Интернете
口 Язык HTML и представление знаний
口 Онтологии и онтологические системы
□ Системы и средства представления онтологических знаний
8・1 ・ Язык HTML и представление знаний
8-1.1. Историческая справка
Очевидно, что для представления информации в среде Интернет нужен был язык, который бы был «понимаем» всеми компьютерам11 в сети и вместе с тем обеспечи- ва/ бы достаточные выразительные средства для удобного описания разных типов документов. Таким языком публнкаши! для W\W н стал HTML (Нурег- Гех1 Markup Language) [WAI, 1999] Этот язык предоставляет авторам Интернет- публшсаций средства:
представления документов, включающих заголовки, тексты, таблицы, слнскл. «картишсн» и т. п. элементы;
осуществления навигации по отдельным документам и множеству документов путем использования гиперссылок:
конструирования диалоговых фор>} для взавмоде11ствпя с удаленными серви- сами. достунньтн в сети, а также:
включения в док\гменты вычисляемых форм (spread-sheets), видео н звука, равно как и разнообразных приложешпг.
HTML — «авторский» язык. Первая его версия была разработана Т. Бернерс-Ли (Tini Berners-Lce) нз Европейского Центра ядерных исследований (CERN). Ак- tj jbho 11 о XI с ржи вял с я этот язык компашки NCSA, где оыл реализован одни нз первых Wcb-броузеров - Mosaic. Победное шествие HTML по "нттрн^ту все 90-е годы объясняется, в первую очередь, взрывным ростом Web и потребностями в единообразном представлении ниформашш. За это время язык претерпел
существенные изменения. И уже к середине 90-х годов произошла стандартизация его версий, которая стала курироваться международными организациями. Версия HTML 2.0 (ноябрь 1995 г.) была разработана под эгидой Internet Engi- neering Task Force (IETF) для фиксации уже сложившейся практики использо- вання этого языка до 1994 г. включительно [Berners-Lee et al., 1995]. В версиях HTML+ (1993 г.) и HTML 3.0 (1995 г.) описательные возможности языка были существенно расширены. Практика пспользоваиия новых конструкпм访 усплпя- мн World Wide Web Consortium's (W3C) HTML Working Group была зафиксирована в HTML 3.2 (январь 1997 г.) [Raggett, 1.997]. В настоящее время наиболее развитой является версия языка HTML 4.0 [HTML 4, 1998], в которой представлены новые возможности аппаратуры и требования производителен программного обеспечения броузеров, а также пожелания Интернет-авторов.
8.1 ・2・ HTML — язык гипертекстовой разметки
Интернет-документов
Целью настоящей главы в целом и данного параграфа в частности, безусловно, не является описание языка HTML млн изложение приемов создания Интернет-доку ментов с использованием этого языка. Для этого в настоящее время имеется достаточное число книг, пособий н Интернет-сайтов, в том числе и русскоязычных (например, http://www.сitfortim.ru/). Вместе с тем для обсуждения возможностей HTML по представлению в Интернет знаний, а не данных основные понятия этого языка нам потребуются. Вот почему ниже приводится краткое описание структуры HTML-текстов в некоторых основных конструкций самого языка.
HTML — язык разметки Интернет-документов с помощью специальных конструкций, называемых тегами (tag). Для выделения тегов в HTML-текстах эти конструкции берутся в угловые скобки. Различают теги «открытия» размечаемого фрагмента (они задаются ключевым словом и, быть может, множеством допустимых параметров) и теги его «закрытия» (такие теги суть то же ключевое слово, которому предшествует символ «/»). В отличне от начальных конечные теги параметров не имеют. Некоторые из начальных тегов не имеют парных конечных. Регистр, в котором представлены ключевые слова тегов и их параметров, ролн не играет. Пожалуй, этими соглашениями и исчерпываются основные пра- внла, которым следуют все спецификации языка HTML. Отметим лиц1ь( что полное и строгое его описание базируется на специальной системе спецнфика- 1Ш“ языков разметки SGML [Goldfarb, 1991], одним из примеров использования которой п является HTML.
Обитая структура НТМL-документа может быть представлена следующим форматом:
VDDCTYPE HTML PUBLIC "V/W3C//DTD HTML 4.0//EN"
http://www.w3.org/TR/REC-html40/strict,dtd">
<HTML>
<HEAD>
<Т1Т1Е>Наименование документа</Т1Т1Е>
<МЕТА name=:keywords content^-Представление знаний,
Мультиагентные системы">
</НЕАО>
<BODY>
Собственно текст документа
</BODY>
</HTML>
Как следует из приведенного формата, комментарий <!DOCTYPE .„> фиксирует текущее состояние спецификации версии языка HTML Кроме того, в HTML-документе выделяются две основные структурные единицы — чголова* документа (между тегами <HEAD> и </HEAD>) и его «тело» (между тегами <BODY> и </BODY>).
Один из элементов головы документа — это заголовок — произвольный текст между тегами <TITLE> и </TITLE>. Не менее, а быть может и более важным элементом головы документа является тег <МЕТА... >. В приведенном выше примере этот тег с помощью параметров name и content фиксирует значение первого атрибута как keywords, а второго — как ключевые слова «Представление знаний* и <Мультиагентные системы». Этот и некоторые другие теги типа <МЕТА ... > ориентированы на аннотирование Интернет-документов и, кроме того, существенно облегчают задачу индексирования нх「например, с помощью сетевых роботов.
Собственно содержание документа находится в теле. Как правило, оио состоит из последовательности структурных едшшц, базисными среди которых являются заголовки разного уровня (текст, заключенный между тегами <Hi> и </Hi>) и па- рагра(|)ы — текст между тегами <Р> н </Р>. По существу, это минимальные средства форматирования Интернет-документов. Естественно, что в HTML, особенно в его последней версии HTML 4.0, такие средства значительно богаче. Здесь и всевозможные выравнивания, и табуляция, и несколько типов списков, и т. д.
Но более важными базовыми конструкциями языка HTML, которые, собственно, ii дают основание ввести в его название термин «гипертекст», являются якоря (anchors).
Синтаксически эти конструкции представлены тегами <А> н </А> с атрно^^тами NAME л HREF.
Собственно якорем является конструкция вида
<А МАМЕ="Метка>текст</А>.
которая обеспечивает уникальное (в пределах документа) имя начала определенного фрагмента HTML-текста. При этом текст, заключенный между тегами <А> н </А>, как правило, задает семантически значимое наименование заголовка.
Для ссылок на помеченные таким образом части Пптернет-документа используются конструкции
<А НРЕГ="#Метка">текст</А> или <А HREF="URL">TeKCT</A>.
Первая из пнх задает локальную ссылку иа часть документа, начинающуюся с указанной метки. Вторая - глобпльну” ссылку на документ в сстн, однозначно идентифицируемый с помощью URL (Unified Resource Locator). По существу, URL - это Интернет-адрес: имя домена, уточненное названием протокола и собствешюе имя документа, включая путь к нему и пределах данного домена. В качестве примера URL можно нрппести следующую ссылку вида http://www. anywhere.ni/anYwhat.htinl.
Использование в Интер нет-ну банка ин, ix ссылок позволяет организовать логическое структурирование 1Ш(|)ормацш1 н обеспечивает удобную н единообразную навигацию как в пределах одного документа, так и в целом по множеству документов, которые, ио миеншо ан гора данного HTML-текста, связаны между собой. Важными конструкциями IITML, особенно в его последней Персии, являются также габлнцы с богитымп поиможиостями задания многоуровневых заголовков 11(|)ормы, с помощью которых и язик введены средства обеспечения дгииюга с читателями Интернет-документон. Базисными конструкциями форм являются редактируемые текстовые поля, элементы выбора, кнопки и т. п.
Примеры (форматов специфпкацни таблиц в(|)орм приведены ниже.
<TABLE>
<TR>
<TD> Столбец-1. строка-1 </Т0>
<Т0> Столбец-1. строка-2 </Т0>'
</TR>
</TABLE>
<FORM METHOD="POST'- .„>
<P>
Вы можете ввести в поле одыу строку:
<INPUT NAME="entry">
</Р>
<Р>
Аля обработки результатоа ввода нажмите кнопку:
〈INPUT TYPE="submit" VALUE="Принять заирос">
</Р>
</FORM>
Заметим, что именно на уровне форм в HTML появились возможности ввода информации в просматриваемый документ и ес обработки с помощью специальных программ, выполняемых на сервере. В последних иерсиях языка эта идея получи- далы!е11шее развитие и в настоящее время присоединенные процедуры могут 6biTb подключены к HTML-документу не только в формах, но п в других конструкциях, а их выполнение может осуществляться как на сервере, так и на клиенте.
УСТАВУСТАВобществ скной оргаиюацивобществ скной оргаиюацив(РАИИ)(РАИИ)目 PgGMc*己总 асе:吋№芬 “CKycu*ubWH 口 ишсдт&жта МкиожоП 1iMerrw>4 Е®Ес工目 PgGMc*己总 асе:吋№芬 “CKycu*ubWH 口 ишсдт&жта МкиожоП 1iMerrw>4 Е®Ес工川例川例^^auiCfi^e 才С^язи:UU 必 /n^&JKOM\ Шкйли ^Н(^1. . ме^^г^яг “^^auiCfi^e 才С^язи:UU 必 /n^&JKOM\ Шкйли ^Н(^1. . ме^^г^яг “】 Общественная организация "Российская Асхоциацвя всхусственвого】 Общественная организация "Российская Асхоциацвя всхусственвого22интеллекта'' (РАЙИ), далее ^АссоцяацнЯ*, является добровольвой тэорчгагой профессиональной общестэенной ирганну俶耳耳已电 деятелей(с,ун - Ассоциация является иаучкыы сообществом СЕвкЕалнстов в области теоржлинтеллекта'' (РАЙИ), далее ^АссоцяацнЯ*, является добровольвой тэорчгагой профессиональной общестэенной ирганну俶耳耳已电 деятелей(с,ун - Ассоциация является иаучкыы сообществом СЕвкЕалнстов в области теоржли методологйи искусстве иного ннтелнегга. создания в примевеяы програимнего и аппаратного обеспечениякомпыотерЕЫХ скстек моделирующих интЕЛл*>ггуальнь*е процессы. Ассоциация оп^ыта для сотруднячестеа с ргояиннкии ергагюацяямя, учрег5сниямн. su国口м:тьаии. предприлтнями. в том числе и 1ару^схннмвАсссциация осуществляет евзю ^е.ттедън^сть в ссответствий с дейгпвующмк ■закс-нодз^е^ьстЕом н настоящим Уставом на првнцвпзх раек口叩авк菖 свопи методологйи искусстве иного ннтелнегга. создания в примевеяы програимнего и аппаратного обеспечениякомпыотерЕЫХ скстек моделирующих интЕЛл*>ггуальнь*е процессы. Ассоциация оп^ыта для сотруднячестеа с ргояиннкии ергагюацяямя, учрег5сниямн. su国口м:тьаии. предприлтнями. в том числе и 1ару^схннмвАсссциация осуществляет евзю ^е.ттедън^сть в ссответствий с дейгпвующмк ■закс-нодз^е^ьстЕом н настоящим Уставом на првнцвпзх раек口叩авк菖 свопII
УСТАВ
УСТАВ
обществ скной оргаиюацив
обществ скной оргаиюацив
(РАИИ)
(РАИИ)
目 PgGMc*己总 асе:吋№芬 “CKycu*ubWH 口 ишсдт&жта МкиожоП 1iMerrw>4 Е®Ес工
目 PgGMc*己总 асе:吋№芬 “CKycu*ubWH 口 ишсдт&жта МкиожоП 1iMerrw>4 Е®Ес工
川例
川例
^^auiCfi^e 才
С^язи
:UU 必 /n^&JKOM
\ Шкйли ^Н(^
1. . ме^^г^яг “
^^auiCfi^e 才
С^язи
:UU 必 /n^&JKOM
\ Шкйли ^Н(^
1. . ме^^г^яг “
】 Общественная организация "Российская Асхоциацвя всхусственвого
】 Общественная организация "Российская Асхоциацвя всхусственвого
2
2
интеллекта'' (РАЙИ), далее ^АссоцяацнЯ*, является добровольвой тэорчгагой профессиональной общестэенной ирганну俶耳耳已电 деятелей(с,ун - Ассоциация является иаучкыы сообществом СЕвкЕалнстов в области теоржл
интеллекта'' (РАЙИ), далее ^АссоцяацнЯ*, является добровольвой тэорчгагой профессиональной общестэенной ирганну俶耳耳已电 деятелей(с,ун - Ассоциация является иаучкыы сообществом СЕвкЕалнстов в области теоржл
и методологйи искусстве иного ннтелнегга. создания в примевеяы програимнего и аппаратного обеспечениякомпыотерЕЫХ скстек моделирующих интЕЛл*>ггуальнь*е процессы
. Ассоциация оп^ыта для сотруднячестеа с ргояиннкии ергагюацяямя, учрег5сниямн. su国口м:тьаии. предприлтнями. в том числе и 1ару^схннмв
Асссциация осуществляет евзю ^е.ттедън^сть в ссответствий с дейгпвующмк ■закс-нодз^е^ьстЕом н настоящим Уставом на првнцвпзх раек口叩авк菖 своп
и методологйи искусстве иного ннтелнегга. создания в примевеяы програимнего и аппаратного обеспечениякомпыотерЕЫХ скстек моделирующих интЕЛл*>ггуальнь*е процессы
. Ассоциация оп^ыта для сотруднячестеа с ргояиннкии ергагюацяямя, учрег5сниямн. su国口м:тьаии. предприлтнями. в том числе и 1ару^схннмв
Асссциация осуществляет евзю ^е.ттедън^сть в ссответствий с дейгпвующмк ■закс-нодз^е^ьстЕом н настоящим Уставом на првнцвпзх раек口叩авк菖 своп
I
I
Следующей важной конструкцией, которая появилась уже в версии языка HTyL 2.0, являются кадры (frames). Часто их называют также рамками Или фреймами. С использованием кадров стало возможным разделить документ на «астн н представлять их в отдельных, правда неперекрывающихся, областях эк- рана. По существу, с кадрами в язык HTML были введены в ограниченном объе- ме средства представления информации, характерные для многооконных при< лолсеиий. Экранная форма с примером структуризации документа с помощыо кадров приведена на рис. 8.1. 1
号吗;衿工*「乌
三%k「m咄^^
Ш^. Mir » T bolkfuS! G1 /FWJ』u Hml
工 0tfMwg иааджстоа
Рис. 8.1. Использование кадров для структуризации Интернет-документа
На наш взгляд, концепция кадров по.1\гчила естественное развитие в конструкциях HTML 4.0, названных слоями (la\rers). Основными достоинствами слоев являются возможность их «привязки» по месту на экране, динамическое <всплывай ле» и «схлопывание» слоев, а также их перекрытие.
Кроме слоев в HTML 4.0 появились и другие конструкции, расширяющие возможности разметки Пнтернет-документов, среди которых следует отметить тернационализацию (использование стандарта ISO/IEC: 10646 в качестве базового множества допустимых символов, а также появление специальных тегов, фиксирующих кодировку документа); более четкое разде,7ение между структурой документа л его представлением за счет таблиц стилей (style sheets), скрипты (scripts), поддерживающие, в частности, создание динамических страниц, "°~ вый механизм интеграции текстовых и графических ссылок, исполняемый на
стороне снента (client-side image map mechanism) н, безусловно, стандартизацию механизма подключения к HTML-документам базисных медиаобъектов и приложении (embedding generic media objects and applications).
Справедливости ради следует отметить, нто интерпретация некоторых конструкций последних версии языка HTML разными броузерами различна. Однако, как представ ля ется, это не принципиальные, а технологические трудное ги совместимости программных продуктов разных фирм, в первую очередь Microsoft и Netscape.
В целом же можно констатировать, что текущая версия языка HTML является мощным средством разметки Мнтернст-документов. Но ориентирован этот язык скорее на «разметку визуализации», чем на семантическую разметку, доступную для восприятия не только чнтателямн-людьми, но и программами (в первую очередь, агентами, функционируюишми в среде Интернет, которые обсуждаются в следующей главе настоящей книги). И тем не мепее некоторые, правда ограниченные. возможности для представления знаний имеются в этом языке и сейчас. Вот почему в следующем подразделе данного параграфа эти вопросы обсуждаются подробнее.
8.1.3. Возможности представления знаний на базе языка HTML
Выше были рассмотрены основные конструкции HTML. Теперь обсудим, каким образом они могут быть использованы для семантической разметки Интериет- документов и насколько это вообще возможно и эффективно.
Для этого выделим те конструкции языка, которые могут быть полезными для решения данной задачи.
Очевидно, что к их числу, прежде всего, относятся теги типа <TITLE>, <МЕ7А ... > и <А... >.
Первый важен для фиксации семантики всего HTML-документа, так как текст, заключенный между тегами <TITLE> н <Д1Т1Е>, чаще всего отражает его назначение и/или содержание.
Teed типа <МЕ7А ... >, по существу, вводят имена атрибутов н их значения с помо- гцью параметров name-»...» и content=«...», а ссылки и якоря фпкеир^чот отиоше- ння между частями одного документа ii/или отдельными документами.
Но если теги типа <МЕТА > явно вводят семантику значений атрибутов, одинаково интерпретируемых броузерами за счет ключевых слов (нгшример, keywords, author н Др.), которые могут быть зиачсниями параметра name, то теги типа <А ... > лишь фиксируют факт наличия отношения между ссылкой в ее якорем. В нското- рмх случаях этому отношению можно «приписать» имя SeeAlso, в других — Isa, ConsistOf, PartOf или иное подходящее имя, но в целом семантика данной конструкции имплицитна, а встроенная интерпретация ее связана лишь с переходом по ссылке и визуализацией начала соответствующего фрагмента документа или загрузкой нового документа для просмотра. ”
Мз других конструкций HTML полезными для последующей обработки на предмет эксплицитного представления семантики соответствующих частей докумен- та могут быть заголовки разделов н подразделов (тексты между тегами <Hi> и </Hi>), списки, таблицы и другие элементы языка.
Ио в целом можно отметить, что выделение значимых для семантической интер- претании конструкций является экспертной задачей, решаемой каждый раз автором соответствующе!! Интер нет-публикации по-своему. Правда, уже существуют определенные стереотипы, особенно заметные на коммерческих сайтах. Так, например, при анализе сайтов Интернет-магазинов, проведенном Н. В. Манкевич, было зафиксировано, что каталоги товаров в настоящее время в большинстве случаев представляются таблицами и/или списками либо «зашиты» в чувствительные для щелчка мышью графические образы. Аналогичная ситуация характерна и для индексов на сайтах машин поиска.
КПЕЗКПЕЗДля примера на рис. 8.2 приведена экранная форма известного электронного магазина, фу м к uno 11 н ру юше го в сети по адресу http://amazon.com/.
КПЕЗ
КПЕЗ
芍 Аанисиксо*: SoHwaie / Opetatmg £?thM« & Utihtifr* , dperM呵S,"gy : 乂干f。*吋 Internet Еу*<м^
а 3急且f乱总盒一訴裒二!»
;期#6?[田卜心 〃ул*лч йгпа2m 二orrJEs/otxinEMS^^AD /idi 叫51r亡值^后力^ 口2 手由32 77-13 7534 3
amazoncom.,—、.
什.К0叫 £0'7^?} MUVC , R:;^
;7^戸〔^脸、[5^Ц
v/ I XEB
SWTAWE
V ЯАКН. CAfFAOfffS WUEK
ш* a hjiurlRFLfAVS
2
GAMES
Searchi ISott^S?G J^j J
Browse Operating SystemsBrowse Operating Systems* ]心3■三;л必&二1W:.* ]心3■三;л必&二1W:.■上!红总1上也• L近二T 尸 士 RN* Зж*■上!红总1上也• L近二T 尸 士 RN* Зж*"^ Trym 2 decide whiter to 呼声曲 to涼 У Widows NXU7 之戸小::;mWl^ 蠶単^^步 bUHW о;工н уг^гт「а=нн运 %区 %m"^ Trym 2 decide whiter to 呼声曲 to涼 У Widows NXU7 之戸小::;mWl^ 蠶単^^步 bUHW о;工н уг^гт「а=нн运 %区 %m
Browse Operating Systems
Browse Operating Systems
* ]心3
■三;л必&二1W:.
* ]心3
■三;л必&二1W:.
■上!红总1上也
• L近二T 尸 士 RN* Зж*
■上!红总1上也
• L近二T 尸 士 RN* Зж*
"^ Trym 2 decide whiter to 呼声曲 to
涼 У Widows NXU7 之戸小::;mWl^ 蠶単^^步 bUHW о;工н уг^гт「а=нн运 %区 %m
"^ Trym 2 decide whiter to 呼声曲 to
涼 У Widows NXU7 之戸小::;mWl^ 蠶単^^步 bUHW о;工н уг^гт「а=нн运 %区 %m
'<、iw:「ii「*・、'<、iw:「ii「*・、:口些工出总壮1 上史整片 by Loki Public hing Conip any:口些工出总壮1 上史整片 by Loki Public hing Conip anyUur 1 口卩 Seiler >
'<、iw:「ii「*・、
'<、iw:「ii「*・、
:口些工出总壮1 上史整
片 by Loki Public hing Conip any
:口些工出总壮1 上史整
片 by Loki Public hing Conip any
Updated Daily
ddL }:二-二予:辣 *"",:• к5 9曰 £® 二 口门? e?:心「
d
d
:二二寸3d片
範:面B
Рис. 8.2. Экранная форма секции «Электроника- ма「аз"на Amazortcom
Фрагмент соответствующего HTML-текста представлен чиже.
<html>
〈head〉
<title>с -
Amazon.com: ElecrronicszzSoftware/OperaLing Systers
</title>
</head>
<body …>
<table ...>
<tr>
<td colspan=2 bgcolor=ttEEEECC>
<font >Browse <B>Operating Systems</B></font>
</td>
</tr>
<tr>
<td bgcolor="FFFFFF" valign= top width=50%>
<ul>
<lixa href=/exec/obidos/tg/electronics/.. . > D0S</a>
<Hxa href=/exec/obidos/tg/elBct「onics/,.. > Linux & Unix</a>
<lixa href=/exec/obidos/tg/electronics/...> Macintosh</a>
</ul>
</td>
<td valign="top" width=50%>
<ul>
<li><a href=/exec/obidos/tg/electronics.. . > Microsoft Windows</a>
<lixa href=/exec/obidos/tg/electronics/. . .> 0S2</a>
</ul>
</td>
</t r>
</ table〉
Как следует из сравнения 3i<pannoii формы (см. рис. 8.2) н приведенного HTML- текст% каталог товаров организован в виде таблицы (тег <table>), в nLieiiicax которой (тег <td>) с помощью конструкции списка (тег <li>) перечислены продукты (в данном случае ”()операционные системы DOS, Linux & Unix, Macintosh, Microsoft Windows n OS2). Собственпо описания этих продуктов и их характеристики заданы в виде ссылок на отдельные документы (теги <а href=/exec/ obidos/tg/electronics...>). При этом из анализа HTML-текста следует, что его се- мантпчсски значимые характеристики могут быть «закопаны» достаточно глубоко. И более того, разбросаны по разным частям одного документа и даже разным документам. Вес вышесказанное существенно затрудняет семантический анализ Мнтернет-документов, независимо от того, выполняется ли он людьми- экспертамн или специальными программами.
Решение проблемы семантического анализа Интерпет-документов в настоящее время связывается с использованием двух подходов. В рамках первого из них
芻9
предполагается, что семантическая разметка HTML-текста выполняется вруч* ную (или полуавтоматически, с применением соответствующих инструментальных средств) его автором на основе специальных метатегов. По существу, результатом такой разметки является семантическая сеть, отражающая знания, представленные в документе. Второй подход связан с автоматическим н/или полуавтоматическим преобразованием исходного текста в специальное семантическое представление, как правило, в онтологию или ее фрагмент.
Подробнее эти подходы обсуждаются ниже. Но и в том и в другом случае для выполнения указанных преобразований целесообразно конвертирование HTML текстов в более удобное для дальнейшей обработки представление. Для иллюстрации возможностей применения к решению этой задачи средств представления знаний, описанных в предыдущих главах, рассмотрим иителлектуальиый HTML- конвертор [Maikevich et al.. 1998].
Для сокращения объема материала обсудим подмножество языка HTML, которое может быть задано следующими BNF-определениями:
HTML-текст ::二 <HTML> HEAD BODY </7ЯМ[>
HEAD ::= TITLE { HEAD } | ...
TITLE <TTTLE> строка </TITLE>
BODY :<B0DY> HTML-BODY </В00Г>-
HTML-8ODV PARAGRAPH { HTML-BODY } |
HEADER { HTML-BODY } | LIST ■{ HTML-BODY } I.
HEADER ::二〈力〉TEXT </W7? ! O2> TEXT </H2> | ...
PARAGRAPH <P> TEXT </P>
LIST <^> LIST-ATOM { LIST-ATOM } <Ж> i
〈0L> LIST-ATOM { LIST-ATOM } </0L> |.
〈MENU〉LIST-ATOM { LIST-ATOM } </M日也〉i ■
ANCHOR " HREF二 LINK > TEXT </A> j
<A Ш1Е= метка > TEXT </Л>
TEXT ::=…
LIST-ATOM ::二
LINK ::二...
Некоторые из синтаксических диаграмм, соответствующих приведенным выше правилам, представлены на рис. 8.3 п 8.4.
Как следует из приведенных правил н диаграмм, с теоретической точки зрения HTML - это простой язык программирования с контекстно-свооодног грах<ма- тиков. Нетрудно показать, что для анализа HTML-текстов можно давать, например, нисходящие распознаватели, ревизуемые на базе метода ремр-
снвного спуска. Пр“ этом возможны разные подходы. Ниже для этого используется продукщ юн I ю-френм о в ы й формализм представления знаний и ноказзва- ется, как на этой основе может быть разработан интеллектуальны!! HTML-koii- вертор.
Рис. В.4. Синтаксическая диаграмма понятия LINK
Прежде всего зададим регулярное отображение каждого правила спецификации HTML-конструкций в соответствуюппп! объект базы зиаши! па уровне фрейма- прототипа. Система таких прототипов даст нам описание яэыка, а множество
фреймов<-зкземпляров — спецификацию конкретных и синтаксически правильных HTML-текстов. Основные правила такого отображения следующие:
каждому концепту из левой части BNF-определення поставим в соответствие имя фрейма-прототипа;
альтернативам из правой части BNF-определения при этом должны соответствовать имена слотов этого фрейма;
для ко] тентов-нетерминал о в соответствующий слот должен иметь тип frame;
для концептов-терминалов соответствующие слоты будут, как правило, иметь типы numb или siting;
рекурсия в BNF-определениях заменяется итерацией, а соответствующие слоты становятся множественными.
Применение сформулированных выше правил к BNF-определениям языка HTML приводит пас к следующему множеству(|)peiiMOB-ripoioTnnoB:
[html is_aprototype. if_added HTML ():
HEADframe. restr_by head;
BODY frame. restr_by body];
[head is_aprototype, if/dded HEAD ():
BODY{frame}. resrr_by one_of {ntle, ...}]:
г title is^aprototype, if_added TITLE ();
BODYst ring];
[bodyis^aprototype, if_acdeG BODY ():、
SENTjframe}, restr_by one_of Reader. c”ag「ag. list. ...}]; [header is_aprototype;
BODY frame, restr_by :ext J:
[h〔 is_aheader. if_adcied H1();:..「6 is_areader. ir^adced H6()], [paragraph is_aprototype, lJaoCed PARAGRAPH ():
BODYfran'C. resir_oy text 丁
[list is_aorotoiyps:
ATOM{frame}, if_added LI ()丿
[text is_a口eto三ype;「i
ATOMi^rame}, restr_by cne_of {L砲
[bris_aprototype: if_added BR ()],
[hгis_aprototype: if_added HR ()]:
[image is_aprototyps; if_added IMu (), SRC frame. restr_by hnK ]:
[anchor is_aprototype:
BODY frame, resir_by texr ];
282
[linkis_aprototype;
URL frame, restr_by one_of {http, ftp,"
MAILframe, restr_by mail ];
[url is_alink;
without_slot MAIL ];
[httpis_aurl, if_added HTTP 0;
SERVER string;
DIR {string};
FILEstring ];
[ftp is_aurl, if_added FTP ();
SERVER string;
DIR {string};
FILEstring ];
Теперь, в соответствии с приведенными фреймами-прототипами и синтаксическими диаграммами, можно специфицировать процедурную часть конвертора как систе.м}^ демонов, присоединенных к фреймам и/илп их слотам. Для примера ниже приводится спецификация одного из таких демонов на языке Java [Нортон и др., 1998]:
public class HTML extends FramePrototype {
HEAD head = null;
BODY body = null;
String keyword;
public void HTML (String name) {
super (name);
keyword = getToken ();
if (keyword. compareTo ("<HTML>'') == 0) {
head = new HEAD (getNewName ());
body 二 new BODY (getNewName ());
};
keyword 二 getToken ();
if (keyword.compareTo ("</HTML>")0) return;
По существу, такоИ демон ие что иное, как конструктор класса HTML, а запуск конвертора осуществляется с помо!цыо оператора создания нового объекта этого класса:
HTML cur「Page = new HTML (get_new_name ());
Пр" этом будут рекурсивно вызываться конструкторы других классов (на верх- нем уровне это HEAD и BODY), что, в конечном счете, приведет к построению
множества фреймов-экземпляров, представляющих анализируемую HTML-страницу (currPage).
Понятно, что в общем случае такой подход дает нам средства синтаксически-ори- оптированного конвертирования HTML-текста во фреймовое представление. Но получение полезной для дальнейшей работы базы знаний предполагает его дальнейшую семантическую интерпретацию и построение в конечном счете семантической сети, отражающей смысл исходного Иитернет-документа.
Для примера, фрагменты такой семантической сети для HTML-текста описания секции «Электроникам магазина Amazon.com, обсуждавшегося выше, приведены на рис. 8.5.
По сути дела, эта семантическая сеть представляет (фрагмент онтологии прсдмет- uoii области «Электронная коммерция», которая может 6мт】> базисом для ре- шеН11я разнообразных практических задач. Так, например, с ее помощью могут решаться задачи поиска определенных товаров по запросу пользователя, осуществляться маркетинговый анализ зэпросов н т. п. Во всех эгях и мио! их Других случаях онтологии играют ключевую роль как один из перспективных подходов к представлению знании в среде Интернет.
Вместе с тем, несмотря на важность понятия онтологии для теории и практики современных интеллектуальных систем, общепринятого иоиималия этого термина Иет, хотя различные определения, предложенные разными авторами и научными коллективами [Gruber, 1991; Guarino, 1996; Fridman et a!., 1997], распространяются н медленно конвергируют. Поэтому в следующем параграфе обсуждается само понятие онтологии м вводится соответствующая система моделей [Maikevich et al., 1999], затем приводится класси(|шкация онтологий, полезная для последующего сравнения известных в этой области проектов. В за- ключительных разделах главы обсуждаются примеры онтологии и специальные системы аннотирования Интерист-ресурсов на основе онтологий.
8.2. Онтологии и онтологические системы
Основные определения
Онтология (от др.-греч. онтос — сущее, логос — учение, понятие) — термин, определяющий учение о бытии, о сущем, в отличие от гносеологии — учения о познании. Уже у X. Вольфа (1679-1754), автора самого термина «онтология», умение о бытии было отделено от учения о познании. Введен же термин в философскую лнтературу немецким философом Р. Foiuieiгнусом (1547—1628). При :)том онтология являлась частью метафизики, науке# самостоятельной, независимой и не связанной с логикой, с «практической философией», с науками о природе. Ее пред* мет составляет изучение абстрактных и общих философских категорнЛ, таких как бытие, субстанция, причина, депствие, явление и т. д., а сама онтология как наука претендовала на полное объяснение причин всех явлешп! [Розенталь и др., 1951].
Понятно, что такое определение мало г(ригодпо для практического нспользова- ння, но Дает отправную точку для дальиейше!! конкретизации и обсуждения с точкн зрения целен настоящего издания. В этом смыслс интереснее определение онтологии, предложенное в рамках разработки системы стандартов на мульти- агентные системы международным сообществом FIPA (Foundation for Intelli- gent Physical Agents). В работе [FIPA, 1998] утверждается, что
В философском смысле можно ссылаться на онтологию как на определенную систему категории, являющихся следствием определенного взгляда на мир.
При этом сама система категорий не зависит от конкретного языка: онтология Аристотеля всегда одна и та же, независимо от языка, использованого для ее описания,
С другой точки зрения, более близкой к понятиям, связанным с ИИ, онтология — это формально представленные на базе концептуализации знания. Концептуали- зйция, как у*е обсуждалось выше, предполагает описание множества объектов и понятий, знаний о них и связей между ними. Таким образом,
Онтологией [Gruber, 1993] называется эксплицитная спецификация концептуализации. Формально онтология состоит из терминов, организованных в таксономию, их определений и атрибутов, а также связанных с ними аксиом и правил вывода.
Часто набор предположений, составляющих онтологию, имеет форму логической теории первого порядка, где термины словаря являются именами унарных и бинарных предикатов, пазываемых соответственно концептами и отношениями. В простейшем случае онтология описывает только иерархию концептов, связанных отношениями категоризации. В более сложных случаях в нее добавляются подходящие аксиомы для выражения других отношений между концептами и для того, чтобы о [Граничить их предполагаемую интерпретацию. Учитывая вышесказанное, онтология представляет собой базу знаний, описывающую факты, которые предполагаются всегда истинными в рамках определенного сообщества на основе общепринятого смысла используемого словаря.
Еще более конкретно понятие онтологии в известном проекте Ontolingua [Far- quhar ct al., 1996], который активно ведется в Стэнфордском университете. Здесь предполагается, что
Онтология — зто эксплицитная спецификация определенной темы.
Такой подход предполагает формальное и декларативное представление некою* рой темы, которое включает словарь (или список констант)工]я отсылки к терминам предметной области, ограничения целостности на термины, логические утверждения, которые огранпхтвают интерпретацию терминов и то, как они соотносятся друг с другом.
Резюмируя вышесказанное, можно констатировать, что в настоящее время понимание термина «онтология» рахчпчно, в зависимости от контекста и целей его использования. В работе [Guarino, е【al., 1995а] дано достаточно содержательное и интересное обсуждение этих вопросов, которое сводится в конечном счете к тому, что здесь выделяются следующие аспекты нптерпретацпн этого термина.
Онтология как философская дисциплина.
Онтология как неформальная концептуичьная система.
Онтология как формальный взгляд на семантику.
Онтология как спецификация «концептуализации*.
Онтология как представление концептуальной системы через логическую теорию, характеризуемую:
♦ специзльными формэльными свойствэми или ♦ только ее назначением.
Онтология как словарь, используемый логической теорией.
Онтология как (метауровневая) спецификация логической теории.
Следует отметить, что первая интерпретация радшаыыю отличается от осталь- нь【х и связана, как предлагают авторы вышеуказанной рабогы, с тем, что здесь мн говорим об Онтологии (с большой буквы) и имеем в виду философскую дис- цнплину, изучающую, согласно Аристотелю,. природу и организацию сущего. В этом смысле Онтология пытается ответить на вопрос: «Что есть сущее?» или, в другой формулировке, на вопрос: «Какие свойства являются общими для всего сущего?«> Когда же мы говорим об онтологии (с маленькой буквы), то ссылаемся на объект, природа которого может быть различной, в зависимости от выбора между интерпретациями 2-7. Согласно второй интерпретации онтология является концептуальной системой, которую мы можем предполагать в качестве базиса определенной БЗ. Согласно интерпретации 3 онтология, на основе которой построена БЗ, выражается в терминах подходящих формальных структур па семантическом уровне. Таким образом, эти две интерпретации рассматривают онтологию как концептуальную «семантическую» сущность, неважно, формальную или неформальную, в то время как интерпретации 5-7 трактуют онтологию как специальный ^синтаксический^ объект. Оставшаяся, четвертая интерпретация, которая была предложена Грубером [Gruber, 1993] в качестве определения онтологии для использования в рамках ИИ-сообщсства, — одна из наиболее проблематичных, так как точный смь(сл ее зависит от понимания терминов «спецификация» и «концептуализациям. И вместе с тем именно это определение чаще всего и используется в настоящее время в работах по проектированию и нсследо- ванию онтологии.
Для определенности дальнейшего изложения мы будем считать, что
Онтологии — это БЗ специального типа, которые могут “читаться” и пониматься, отчуждаться от разработчика и/или физически разделяться их пользователями.
Ирм этом онтологический инжиниринг — ветвь шгжсисри и знании, i ic пользую- щи" Онтологию (с большой буквы) для построения онтологий (с маленько!! буквы), Понятно, что любая онтология имеет под собой концептуализацию, но одна концептуализация может быть основой разных онтологии, и две разные БЗ могут отражать одну онтологию.
8・2・2・ Модели онтологии и онтологической системы
Bbiuie уже отмечалось, что понятие онтологии предполагает определение и использование взаимосвязанной м взаимосогласованной совокупности трех компо-
нент: таксономии терминов, определений терминов и правил их обработки. Учи- Т1нвая это, введем следующее определение понятия модели онтологии:
где
X — конечное множество концептов (понятий, терминов) предметной области которую представляет онтология О;'
% — конечное множество отношений между концептами (понятиями, терминала) заданной предметной области;
Ф — конечное множество функций интерпретации (аксиоматизация), задажшх на концептах и/или отношениях онтологии О.
Заметим, что естественным ограничением, накладываемым на множество X, является его конечность и непустота. Иначе обстоит дело с компонентами Ф и Я в определении онтологии О. Понятно, что и в этом случае Ф и 91 должны быть конечными множествами. Рассмотрим, однако, граничные случаи, связанные с их пустотой.
Пусть X = 0 н Ф= 0. Тогда онтология О трансформируется в простой словарь:
O = v = <x, {},{}>•
Такая вырожденная онтология может быть полезна для спецификации, пополнения и поддержки словарей ПО, но онтологии-словари имеют ограниченное ис- пользованпе, поскольку нс вводят эксплицитно смысла терминов. Хотя в некоторых случаях, когда используемые термины принадлежат очень узкому (например, техническому) словарю и их смыслы уже заранее хорошо согласованы в пределах определенного (например, научного) сообщества, такие онтологии применяются на практике. Известными примерами онтологий этого тина ямя- ютс я индексы машин поиска информации в сети Интернет.
Иная ситуация в случае использования терминов обычного естественного языка иди в тех случаях, когда общаются программные агенты. В этом случае необходимо характеризовать предполагаемый смысл элементов словаря с помощью подходяще!! акспоматизатш, цель использования icoTopoii — в исключении нежелательных моделей и в том, чтобы интерпретация была единой для всех участников общения.
Другой вариант соответствует случаю SK = 0, ио Ф ^ 0- Тогда каждому з」ементу множества терминов из X может быть поставлена в соответствие функция интерпретации f из Ф. Формально это утверждение может оыть записано следующим образом.
Пусть
X = X] и X?,
причем
Xi с Х2 = 0,
где Xi — множество интерпретируемых терминов;
Х2 — множество интерпретирующих терминов.
Тогда
3 (хе XL у\ у2,...» уУ Х2),
такие что
x = f(y*y2,…,У*1),
где f 6 Ф.
Пустота пересечения множеств Х[ и Xz ис]слючэст циклические интерпретации, а введение в рассмотрение функции к аргументов прнзвано обеспе'пiti)более полную интерпретацию. Вид отображения f из Ф определяет выразительную мощ- ность и практическую полезность этого вида онтологии. Так, если предположить, что функция интерпретации задается оператором присваивания значений (X】:=Х2, где Xi — имя интерпретации Х2), то онтология трансформируется в пассивный словарь Vp:
O = Vp = <X1uX2j {}, {:=}>.
Такой словарь пассивен, так как все определения терминов из X】берутся из уже существующего и фиксированного множества Х2.. Практическая ценность его выше, чем простого словаря, но явно недостаточна, например, для представления знаний в задачах обработки информации в Интернете в силу динамического характера этой среды.
Для того чтобы учесть последнее обстоятельство, предположим, что часть интерпретирующих терминов из множества Х2 задается процед^фио, а пе декларативно. Смысл таких терминов «вычисляется» каждый раз при их интерпретации.
Ценность такого словаря для задач обработки информации в среде Интернет выше, чем у предыдущей модели, ио все еще недостаточна, так как интерпретируемые элементы из Х^ никак нс связаны между собой и, следовательно, играют лишь роль ключе!! входа в онтологию.
Для представления модели онтологии, которая нужна для решения задач обработки информации в Интернете, очевидно, требуется отказаться от предположения X = 0.
14так, предположим, что множество отношений на концептах онтологии не пусто, и рассмотрим возможные варианты его формирования.
Д”я этого введем в рассмотрение специальный подкласс онтологий — простую таксономию следующим образом:
О = Т° = <Х, {is_a),{)>.
Под таксономической структурой будем понимать иерархическую систему понятий, связанных между собой отношением is_a («быть элементом класса»).
Отношение is_a имеет фпкепроваииую заранее семантику и позволяет организовывать структуру поняти!! онтологии в виде дерева. Тако" подход имеет свои преимущества и недостатки, но в общем случае является адекватным и удобным для представления иерархии понятий.
Результаты анализа частных случаев модели онтологии приведены в таблице 8.1.
Таблица 8.1. Классификация моделей онтологии
Компоненты модели
%н О ф=0
%Н0 ф*0
9Цн0
Ф*0
91 = {%_&} Ф-0
Формальное
<х, {},{}>
< Х〔иХг, {}р ф>
<X,<X,kJ
< X,is а}, 0>
определение
(Х2рр/),0,Ф>
Пояснение
Словарь
Пассивный
Активный
Таксономия
ПО
словарь ПО
словарь ПО
понятий ПО
Далее можно обобщить частные случаи модели онтологии таким образом, чтобы обеспечить возможность:
представления множества концептов X в виде сетевой структуры;
использования достаточно богатого множества отношений % включающего не только таксономические отношения, но н отношения, отражающие специфику конкретной предметной области, а также средства расширения множества X;
использования декларативных и процедурных интерпретаций и отношений, включая возможность определения новых интерпретаций.
Тогда можно ввести в рассмотрение модель расширяемой онтологии и исследовать ее сво11ства. О/шако, учитывая техническую направленность данной книги, мы ие будем делать этого здесь, а желающих познакомиться с такой моделью отсылаем к работе [Maikevich et al., 1999]. Как показано в этой работе, модель расширяемой онтологии является достаточно мощной для спецификации процессов формирования пространств знаний в среде Интернет. Вместе с тем и эта модель является неполной в силу своей пассивности даже там, где определены соответствующие процедурные интерпретации и введены специальные функции пополнения онтологии. Ведь едннственнон точкой управления активностью в такой модели является запрос на интерпретацпю определенного концепта. Этот запрос выполняется всегда одинаково и нннннирует запуск соответствующей процедуры. А собственно вывод ответа на запрос и/пли поиск необходимой для этого информации остается вне модели и должен реализовываться другими средствами.
Учитывая вышесказанное, а также необходимость эксплицитной спецификации процессов функционирования онтологии, введем в рассмотрение понятие онто- логическо!! системы
Под формальной моделью онтологической системы Е будем понимать триплет вида. £° = <О ""и, {о а},三”'>,
где
О meta — онтология верхнего уровня (метаонтология);
《О d&) _ множество предметных онтологий и онтологий задач предметной области;
三 М — модель машины вывода, ассоциированной с онтопогической системой £ ■
Использование системы онтологий и сисппалыюЛ маышпы вывода позволяет решать в Tagii модели различные задачи. Расширяя систему моделей {О <‘&} можно учитывать предпочтения пользователя, а изменяя модель машины вывода, вво- днть специализированные критерии релевантности получаемо!! в процессе понс- Ка НПфорМЯШШ И (])ОрМИрОВЗТЬ CUCHIIcUI Ы1ЫС рспозн I'opill! 11Я КО ПЛ СII11 ых данных, а также пополнять при необходимости используемые онтологии.
В модели S° имеются три онтологические компоненты:
метаонтология;
предметная онтология;
онтология задач.
Как указывалось выше, метаонтология оперирует общими концептами и отношениями, которые не зависят от конкретной предметпоп области. Концептами метауровня являются общие понятна, такие как «объект», «cboiictbo», «значение» и т. д. Тогда на уровне метаоитологин мы получаем иптепсноиа-^ьнос описание свойств предметно!! онтологии и онтологнн задач. Онтология метауровня является статической, что дает возможность обсснечнть здесь ?)ф(1)С1СТ11вны1! вывод.
Предметная онтология О^шам содержит понятия, описывающие конкретную предметную область, отношения, ссма[1Т11чески зпачпмые для данной предметной области, и множество иитерпретацин этих понятий и отлошешп! (декларативных 订 процедурных). Понятия предметно!! области ciiciui(()H4iibi в каждой прикладной онтологии, но отношения — бонес универсальны. Поэтому в качестве базиса обычно выделяют такие отношения модели предметной онтологии, какpa}t_oj, hind—Of, containedjn, member_of, see_also и некоторые другие.
Отношение part_oj определено на множестве концептов, является отношением принадлежности и показывает, что концепт может быть частью других концептов- Оно является отношением типа «часть-целое» и по свойствам близко к отношению /_а п может быть задано соответствующими аксиомами. Ана.'югнч- Hbix образом можно ввести и другие отношения типа «часть-целое».
Иначе состоит дело с отношением see_a!so. Оно облапает другой семантикой и другими свонствами. Поэтому целесообразно вводить его ие декларативно, а процед^фцо, подобно тому, как это делается при определении новых типов в язы- ках программирования, где п оддерж и в а к» тс я абстрактные типы данных:
X see~also Y:
see_also member_of Relation {
if ( (X is_a Notion) & (Y is_a Notion) & (X see_also Y)) if (Operation connected_with X)
Operation connected_with Y
};~
Заметим, что и отношение see_also «не вполне» транзитивно. Действительно, еелн предположить, что (XI see^а/so Х2) & (Х2 see_also ХЗ), то можно считать, что(XI see_also ХЗ). Однако по мере увеличения длины цепочки объектов, свя-
зашть【х данным отношением, справедливость транзитивного переноса свойства connected^ith падает. Поэтому в случае отношения see_aho мы имеем дело не с отношением частичного порядка (как, например, в случае отношения is ^\ а с отношением толерантности. Однако для простоты это ограничение может быть перенесено из определения отношения в функцию его интерпретации. , Ана.чиз различных предметных областей показывает, что введенный выше набор отношений является достаточным для начального описания соответствующих онтологий. Понятно, что этот базис является открытым и может пополняться в зависимости от предметной области и целей, стоящих перед прикладной системой, в KOTOpoii такая онтология используется.
Онтология задач в качестве понятии содержит типы решаемых задач, а отноше 1шя это11 онтологии, как правило, специфицируют декомпозицию задач на подзадачи. Вместе с тем, если прикладной системой решается единственный тип задач (например, задачи поиска релевантной запросу информации), то онтология задач может в данном случае описываться словарной моделью, рассмотренной выше. Таким образом, модель онтологической системы позволяет описывать необходимые для ос функционирования онтологии разных уровней. Взаимосвязь между онтологиями показана на рис. 8.6,
Онтология задачОнтология задачРис. S.6. Взаимосвязь между онтологиями онтологической системыРис. S.6. Взаимосвязь между онтологиями онтологической системы
Онтология задач
Онтология задач
Рис. S.6. Взаимосвязь между онтологиями онтологической системы
Рис. S.6. Взаимосвязь между онтологиями онтологической системы
Машина вывода онтологической системы в общем случае может опираться иа сетевое представление онтологий всех уровне!'!. При этом ее функционирование будет связано:
с актнвацнс!! поняпн! и/нлн отношений, фиксирующих решаемую задачу (описание исходно!! ситуации):
определением целевого состояния (ситуации),
выводом па сети( заюючаюшемся в том, что от узлов [心皿血i ситуун распространяются волны активации, использующие свойства отношении, с ними связанных. Критерием остановки процесса является достижение целевой ситуации или превышение длительности исполнения (time-out).
8.2.3- Методологии создания и «жизненный цикл» онтологий
Как уже отмечалось выше, разработчики систем, основанных на знаниях, сталкиваются с проблемой «узкого горлышка» приобретения знаний. Аналогичная проблема существует и при создании онтологий. Но, в отличие от разработчиков интеллектуальных систем, создателей онтологии ждут и дополнительные проблемы, связанные с отсутствием сколько-нибудь общих н верифицированных методологий, определяющих, какие «процедуры» должны выполняться в процессе разработки и на каких стадиях разработки онтологий они должны выполняться. В настоящее время существует лишь несколько предметно-независимых методо- логн订,ориентированных на построение онтологий [Gruninger et aL, 1995; Ushold, et al,, 1996; Fernandez et al,, 1997].
Следует сразу отметить, что эти подходы п методологии базируются на следующих принципах проектирования и реализации онтологий, предложенных Грубером [Gruber, 1993]:
Ясность (Clarity) — онтология должна эффективно передавать смысл введенных терминов. Определения должны быть объективными, хотя мотивация введения терминов может определяться ситуацией или требованиями вычислительной эффективности. Для объективизации определений должен использоваться четко фиксированный формализм, при этом целесообразно задавать определения в виде логических аксиом.
Согласованность (Coherence) — означает, что по крайней мере все определения должны быть логически непротиворечивы, а все утверждения, выводимые в онтологии, не должны противоречить аксиомам,
Расширяемость (Extendibility) — онтология должна быть спроектирована так, чтобы обеспечивать использование разделяемых словарей терминов, допускающих возможность монотонного расширения и/илн специализации без необходимости ревизии уже существующих понятий,
Минимум влияния кодирования (Minimal encoding bias) — концептуализация, лежащая в основе создаваемой онтологии, должна быть спецнфнцирована на уровне представления, а не символьного кодирования. Этот принцип связан с тем, что агенты, разделяющие онтологию, могут быть реализованы в различных системах представления знаний,
Минимум онтологических обязательств (Minimal ontological commitment) ~ онтология должна содержать только наиболее существенные предположения о моделируемом мире, чтобы оставлять свободу расширения н специализации. Отсюда следует, что онтологии базируются на «слабых» теориях, так как цель их создания и использования состоит, прежде всего, в том, чтобы «говорить» о предметной области, в отличие от БЗ, которые могут содержать знания, необходимые для решения задач и/и л и ответов на вопросы.
Методологию и «жизненный цикл» создания онтологий обсудим на примере под- хода METHONTOLOGY, разработанного Гомез-Перезом (Gomez-Perez) с колле-
「ами, в рамках которого реализуются принципы Грубера, а также разрабоГано программное окружение спецификации онтолошй ODE (Ontolocv Design Environment) [Blazquez et al, 1998].
В рамках этого подхода выделяются следующие процедуры в «жизненном цик- ке» создания онтологии: управление проектом, собственно разработка и поддержка разработки.
Процедуры управления проектом включают планирование, контроль и гарантии качества. Планирование определяет, какие задачи должны быть выполнены, как они организуются, как много времени и какие ресурсы нужны для их выполнения. Контроль гарантирует, что запанированные задачи выполнены и именно так, как это предполагалось. Гарантии качества нужны для того, чтобы быть уверенным в том, что компоненты и продукт в целом находятся иа заданном уровне.
Собственно разработка включает спецификацию, концептуализацию, формализацию и реализацию. Спецификация определяет цели создания онтологии, ее предполагаемое использование и потенциальных пользователей. Концептуализация обеспечивает структурирование предметных знаний в виде значимой эксплицитной модели. Формализация трансформирует концептуальную модель в формальную или «вычислительную». Наконец, в процессе реализации вычислительная модель программируется на соответствующем языке представления зиа-
Процедуры поддержки включают действия, выполняемые одновременно с разработкой, без которых онтология не может быть построена. Они представлены про- ис口урамн приобретения знаний, оценки, интеграции, документирования и управления конфигурациями. Приобретение знаний аккумулирует знания в заданной предметпоп области. Оценка дает технические решения по оценке онтолоши, соответствующего программного обеспечения и документации как в процессе выполнения каждой фазы, так и между фазами. Интеграция требуется, когда строится новая онтология с использованием уже существующих. Документирование дает детальную, понятную и исчерпывающую информацию о каждои фазе и продукте в целом. Управление коифигу рафиями необходимо для архивации всех версии документации, программного обеспечения н кода онтологии, а также для контроля за изменениями.
Общая схема «жизненного цикла» создания онтологии в рамках подхода METHONTOLOGY представлена на рпс. 8.7,
Заметим, что процесс построения онтологии здесь распадается на серию подпроцессов по созданию промежуточных представлений. При этом выполнение отдельных подпроцессов не последовательное (в смысле «водопадной* модели жизненного цикла, обсуждавшейся в предыдущей главе), а определяется полнотой и точностью уже накопленных знаний. Однако, как показывает опыт, сначала строится глоссарии терминов (Glossary of Terms), затем деревья классификации концептов (Concept Classification Trees) н диаграммы бинарных отношений (Binary Relations Diagrams). И только после этого - остальные промеж>точные представления.
Концептуализация
Концептуализация, соответствующая каждому классификационному дереву, состоит в построении:/
Рис. 8.7. «Жизненный цикл» создания онтологий в рамках подхода METH ONTOLOGY
Для иллюстрации результатов, получаемых па разных :)тапах создания онтологий в рамках подхода METHONTOLOGY, будем предполагать, следуя работе [Blazquez et al., 1998], что предметной областью разработки является сообщество специалистов но приобретению знаний, работающих в контексте инициативы (КА)2 [Benjamins ct aL, 1998].
Согласно обсуждаемой методологии сначала з“ссь строится глоссарий терминов, включающгн! все термины (кониепты н их экземпляры, атрибуты, действия и т, п.), важные для предметно!! областной их сстествспио-языковые описания. Фрагмент такого глоссария представлен в табл, 82
Таблица S.2. Фрагмент глоссария
ТерминОписание термина
Academic Staff“Он\она может быть лектором или исследователем.
Одна из возможных обязанностей — руководство аспирантами»
Researcher «Он\она является членом Academic Staff, может быть членом исследовательской группы и кооперироваться с другими исследователями»
Термин
Описаниетермина
Nicola Guarino
«Он является исследователвм CNR National Research Council.
Его исследования связаны с онтологиями.
Он работает по проекту OntoSeek*
Weight
«Вес человека. Измеряется в килограммах»
Kwia глоссарий терминов достигает «существенного* объема, строятся деревья класснфпкацип концептов. Как правило, при этом используются отношения типа subclass-of и некоторые другие таксономические отношения. Таким образом, идентифицируются основные таксономии предметной области, а каждая таксо- помня, согласно рассматриваемой методологии, дает в конечном счете онтологию. В рамках инициативы (КА)2 идентифицировано несколько таксономий, основные из которых people, publications, events, organizations и research topics. Фрагменты некоторых из них представлены на рис. 8.8.
PeopleEmployee Academic-SlaffLecturerResearcherPeopleEmployee Academic-SlaffLecturerResearcherStudentPhD-StudentStudentPhD-StudentPublicationArticleArticle-ln~BookConference-PaperPublicationArticleArticle-ln~BookConference-PaperBookJournalIEEE-ExpertBookJournalIEEE-ExpertProjectD Bvelopment-Project Software-Project Research-Prq^ctProjectD Bvelopment-Project Software-Project Research-Prq^ct
People
Employee Academic-Slaff
Lecturer
Researcher
People
Employee Academic-Slaff
Lecturer
Researcher
Student
PhD-Student
Student
PhD-Student
Publication
Article
Article-ln~Book
Conference-Paper
Publication
Article
Article-ln~Book
Conference-Paper
Book
Journal
IEEE-Expert
Book
Journal
IEEE-Expert
Project
D Bvelopment-Project Software-Project Research-Prq^ct
Project
D Bvelopment-Project Software-Project Research-Prq^ct
Рис. S.S, Фрагменты таксономий, выделяемых вРис. S.S, Фрагменты таксономий, выделяемых врамках инициативы (KA)2рамках инициативы (KA)2
Рис. S.S, Фрагменты таксономий, выделяемых в
Рис. S.S, Фрагменты таксономий, выделяемых в
рамках инициативы (KA)2
рамках инициативы (KA)2
Следующим шагом является построение ^Ad hoc* диаграмм бинарных отноше- Huii мелью создания которых является фиксация отношений между концептами o;UIoii или разных онтолоппЪ Заметим, что в дальн^нием эти диаграммы мопт послужить исходным материалом для ннтеграшт разных онтолопие Пример одно!! нз таких диаграмм приведен па рис, 8.9-Следующим шагом является построение ^Ad hoc* диаграмм бинарных отноше- Huii мелью создания которых является фиксация отношений между концептами o;UIoii или разных онтолоппЪ Заметим, что в дальн^нием эти диаграммы мопт послужить исходным материалом для ннтеграшт разных онтолопие Пример одно!! нз таких диаграмм приведен па рис, 8.9-Research-lniereslResearch-lnieresl
Следующим шагом является построение ^Ad hoc* диаграмм бинарных отноше- Huii мелью создания которых является фиксация отношений между концептами o;UIoii или разных онтолоппЪ Заметим, что в дальн^нием эти диаграммы мопт послужить исходным материалом для ннтеграшт разных онтолопие Пример одно!! нз таких диаграмм приведен па рис, 8.9-
Следующим шагом является построение ^Ad hoc* диаграмм бинарных отноше- Huii мелью создания которых является фиксация отношений между концептами o;UIoii или разных онтолоппЪ Заметим, что в дальн^нием эти диаграммы мопт послужить исходным материалом для ннтеграшт разных онтолопие Пример одно!! нз таких диаграмм приведен па рис, 8.9-
Research-lnieresl
Research-lnieresl
Research-Topic
РИС. 8.9. Фрагмент диаграммы бинарных отношении, вьщеляем^
После построения представ л еи и й, фиксированных в ы m е, для каждо! о дерева классификации концептов строятся:
Словарь концептов (Concept Dictionary), содержащий все концепты предмст- иой области, экземпляры таких концептов, атрибуты экземпляров концептов, отношения, источником которых я вляется концепт, а тэкже (оп циондльно) см- ноннмы и акроннмы концепта, (фрагмент такого словаря предстивjici i в табл. 8,3,
Таблица бинарных отношений (Table of Binary Relations) для каждого «Ad hoc» отношения, исходный концепт которого содержится в классификационном дереве. Для каждого отношения фиксируется его имя, имена концепта-источника и целевого концепта, инверсное отношение и т, m характеристики. Пример двух таблиц этого типа представлен в табл. 8.4, 85
Таблица атрибутов экземпляра (Instance Attribute Table) для каждого экземпляра из словаря концептов. Основные характеристики здесь следующие: имя атрибута, тип значения, единица измерения, точность, диапазон изменения, значение «по умолчанию», атрибуты, которые могут быть выведены с использованием данного, формула или правило для вывода атрибута и др. Пример описания атрибутов экземпляра Weight показан в табл. 8.6,
Таблица атрибутов класса (Class Attribute Tabic) для каждого класса из словаря концептов с аналогичными характеристиками.
Таблица логических аксиом (Logical Axioms Table), в которой даются определения концептов через всегда истинные логические выражения. Определение каждой аксиомы включает ее имя, естественно-языковое описание, концепт, к которому аксиома относится, атрибуты, использ\гемые в акспоме, логическое выражение, формально описываюи[ее аксиому, и др. Пример описания аксиомы приведен в табл. 8.7,
Таблица констант (Constants Table), где для каждой константы указывается ее имя, естественно-языковое описание, тип значения, само значение, единица измерения, атрибуты, которые могут быть выведены с использованием данной константы, и т. п.
Таблица формулы (Formula Table) для каждой формулы, включенной в таб- 』ицу атрибутов экземпляра. Каждая таблица этого типа, помимо собственно формулы, должна специфицировать ее имя, атрибут, выводимый с помощью этой формулы, естественно-языковое описание, точность, ограничения, при которых возможно использовать формулу, и др,
& Деревья классификации атрибутов (Attribute Classification Тrees), которые графически показывают соответствующие атрибуты и константы, используемые П〃я вывода значения корневого атрибута и формулы, применяемые для этого. По сути дела, эти деревья используются для проверки того, что все атрибуты, представленные в формуле, имеют описания и ни один из атрибутов не пропущен.
Таблица экземпляров (Instance Table) для каждого входа в словарь концептов. Здесь специфицируется имя экземпляра, его атрибуты и их значения. Пример фрагмента таблицы экземпляров представлен в табл. 8,8.
Таблица S.3. Фрагмент словаря концептов
Имя концепта ...
ЭкземплярАтрибутыОтношение
экземпляра
Academic-Staff
Person
—Suparvises
Age First-Na meHas-Publications
Last-Name Pholo Weight Edrtor-ot
Researcher
Gomez-Perez—Cooperates-wfth
Research-Interest Member-of-Researdi-Group
---
・•・・・・・・•
Таблица 8.4. фрагмент описания отношения Employs
Имя отношения Исходный концепт Кардинальность Целостный концепт Математические свойства Инверсные отношения Ссылки
Employs Organization (1,п) Employee
Affiliation
Таблица S.5. фрагмент описания отношения Affiliation
Имя отношения
Affiliation
Исходный концепт
Employee
Кардинальность
(1,川
Целостный концепт
Organization
Математические свойства
—
Инверсные отношения
Employs
Ссылки
Таблица 8.6. фрагмент описания атрибутов экземпляра Weight
Имя атрибута экземпляра
Weight
Тип значения
Mass-Quantity
Единица измерения
Kilogram
Точность
0,001
Диапазон
[0.2001
Значение «по умолчанию»
Кардинальность
(1J)
Выводится иэ атрибута экземпляра
—
Выводится иэ атрибута класса
—
Выводится из констант
—
формула
—
298
Глава 8 • Представление данных и знаний в Интернете
ЭкземплярЭкземплярGomez-PerezGomez-PerezАтрибутFull NameFirst Name Last Name E-MailАтрибутFull NameFirst Name Last Name E-MailЗначение«Asuncion Gomez-Perez»«Asuncion»«Gomez-Perez»«asun@fi,upm,es»Значение«Asuncion Gomez-Perez»«Asuncion»«Gomez-Perez»«asun@fi,upm,es»Таблица 8.7. Фра「мент описания aKcnoMbiThe-Head-Of-Proiect-Works'n-ThePBjecl
Экземпляр
Экземпляр
Gomez-Perez
Gomez-Perez
Атрибут
Full Name
First Name Last Name E-Mail
Атрибут
Full Name
First Name Last Name E-Mail
Значение
«Asuncion Gomez-Perez»
«Asuncion»
«Gomez-Perez»
«asun@fi,upm,es»
Значение
«Asuncion Gomez-Perez»
«Asuncion»
«Gomez-Perez»
«asun@fi,upm,es»
Имя аксиомы
Описание
The-Head-Of-Project-Works-ln-The-Proiect
«Работник, являющийся руководителем проекта, работает в проекте»
Концепт
Ссылочные атрибуты
Переменные
Определение
Employee
Е,Р
Forall (E|P) Employs (Е) and Head-Of-Project (Е, Р)=> Works-At-Projecl (Е, Р)
Таблица 8.8. фрагменттаблицы экземпляров
Как показывает анализ приведенных выше процедур), выно/шяо.мых при создании онтологий в подходе МЕТ110NТОLОGА\ все они хороию коррелируют с теми стадиями, которые выделены и используются при построении баз :зцаии{ь II dip не случа11ное совпадсгше, а закономерность, связанная с тем, что онтология — это, по существу, БЗ специального вида. Поэтому, как ц в случае построения баз знаний, здесь и с пользуется концепция быстрого прототип нроиаипя, а специфика проявляется в тех конкретных процессах, которые рсаанзуют рассмотренные выше процедуры. При этом:
« планирование выполняется до начала собственно 卩азрзботкн;
в контроль и гарантии качества осуществляются в процессе разработки;
° большая часть операций но иакоплепшо зиаши'! и их оцепке выполняется на стадии концегпуализацин для того, чтобы предотвратить распространение ошибок на фазу реализации;
интеграция не должна рассматриваться как интеграция па стадии реализации. Напротив, она выполняется в процессе разработки.
8-2.4, Примеры онтологий
В настоящее время исследования в области онтолопн! и онтологических систем являются ^горячими точками» не только и ИИ, но и в работах по интеллектуализации информационного поиска, в перную очередь, в среде Интернет; в работах 110 мультпагентным системам; в проектах по автоматическом^^ «извлечению» зна- н“订 из текстов на естественном языке; в проектах, ведуишкея в смежных областях.
Нрм этом разные авторы вводят различные типизации онтологий [Gruber, 1995」 Guarino, 1996], суммируя которые можно выделить классификации пн *,
степени зависимости от конкретной задачи или предметной области;
уровню детализации аксиоматизации;
«природе» предметной области н т.
Дополнительно к этим измерениям можно ввести и классификации, связанные с разраоогко11, реализацией и сопровождением онтологий, но тзкзя типизация бо- лее уместна при обсуждении вопросов реализации онтологических систем.
По степени зависимости от конкретной задачи или предметной области обычно различают:
онтологии верхнего уровня;
онтологии, орпентлрованиые на предметную область;
оптолопш, ориентированные на конкретную задачу;
прикладные онтологии.
Онтологии верхнего уровня описывают очень общие концепты, такие как пространство, время, материя( объект, событие, действие и т, д., которые независимы от коjHcpcTHoii проблемы или области. Поэтому предстаюяется разумным, по крайней мерс в теории( унифицировать их для больших сообществ пользовате-
Примером rai<oii ooiiieii олто.юппш является CYC® [Lenat, 1995]. Одноименный проект — CYC® — ориентирован на создание мультиконтекстноп базы знаний и ciictuiajibiioii маиншы вывода, разрабатываемой Сусогр, Основная цель этого ш- гантского проекта — гюстрснть базу знати! всех общих понятий (начиная с таких, как время, сущность н т. д.). включаюшую семантическую структуру термн- “(》в, с вязе]! между ними н аксиом. Предполагается, что такая база знаний может быть доступна разнообразна* программным средствам, работающим со знаниями, ц будет играть роль базы «начальных знании^. В онтологии, по некоторым данным, уже представлены 10tf концептов п 10J аксиом. Для представления зна- Hiu'i в рамках этого проекта разработан специальный язык CYCL
Другим примером онтологии верхнего уровня является онтология системы Gene- rail izecl Upper Model [Braetman et ab, 1994], ориентированная на поддержку7 процессов обработки естественного языка: английского, немецкого и итальянского. Уровень абстракции это!) онтологии находится между лексическими и концепту- альными знаниями, что определяется требованиями упрощения пнтерфепсов с лингвистическими ресурсами. Модель Generalized Upper Model включает таксономию, организованную в виде иерархии кониептов (около 250 понятий) и от- дельноЛ иерархии связей. Фрагмент системы понятий этол онтологии приведен на pfic. 8.10.
В целом же можно констатировать, что, несмотря на отдельные успехи, создание достаточно общих онтологии верхнего уровня представляет собой очень серьез* ную задачу, которая еще нс имеет ^удовлетворительного решения.
Рис. 8,10, Фрагмент системы понятий онтолстии Generalized Upper Model
Предметные онтологии » онтологии задач описывают, соответственно, словарь, связанный с предметной областью (медицшт, коммерция п т, д.) или с конкретной задачей или деятельностью (диагностика, продажи и『п.) за счет специализации терминов, введенных в онтологии верхнего уровня. Примерами онтологий, ориентированных на определенную предметную область н конкретную задачу, являются TOVE и Plinius соответственно [TOVE, 1999; Van de г Vet et al., 1994], Онтология в системе TOVE (Toronto Virtual Enterprise Project) [TOVE, 1999] предметно ориентирована на представление модели корпорации. Основная цель ее разработки — отвечать на вопросы пользователей по реинжинирингу бизнес- процессов, извлекая эксплицитно представленные в онтологии знания. При этом система может проводить дедуктивный вывод ответов, В онтологии нет средств для интеграции с другими онтологиями. Формально онтология описывается с помощью фреймов. Таксономия понятий онтологии TOVE представлена на рис. 8,1 L
Пршсладные онтологии описывают концепты, зависящие как от конкретной предметной области, так и от задач, которые в них решаются. Концепты в таких онтологиях часто соответствуют ролям, которые играют объекты в предметной области в процессе выполнения определенной деятельности. Пример такой онтологии —онтология системы Plinius [Van der Vet et al,, 1994], предназначенная Пля полуавтоматического извлечения знаний из текстов в области химии. В от- личие от Других, упомянутых выше онтологий, здесь нет явлоИ таксономии понятий. Вместо этого определено несколько множеств атомарных концептов, таких как, например, химический элемент, целое число и т. п,, и правила конст-
руирования остальных концептов. В онтологии описано около 150 концептов и 6 правил. Формально онтология Plinius тоже описывается с помощью фреймов.
Рис. 8.11. Фрагмент таксономии понятий онтологии TOVE
Как показывает анализ работ в этой области, научными сообществами и колекти- вами создаются онтологии разных типов, но в целом в настоящее время наиболее активно разрабатываются и используются на практике предметные онтологии. Вместе с тем, независимо от типа онтологии, для их представления и использования требуются специальные алгоритмические средства, к обсуждению которых мы н переходим в следующем параграфе.
Системы и средства представления онтологических знаний
Основные подходы
В настоящее время во всем мире исследования по пространствам знаний в среде Интернет [Khoroshevsky, 1998] ведутся широким фронтом. И одним из ключевых аспектов в таких исследованиях являются алгоритмические и программные средства представления онтологических знаний и работы с онтологиями.
В качестве примеров исследовательских проектов по данной тематике можно указать Co-operative Information Gathering Project из лаборатории Распределенного ИИ университета Массачусет; проект экстрактирования знаний из гипертекстов на основе использования методов машинного ооучення, выполняемого в университете Карнеги Мэллон; работы Knowledge Technology Group лаборатории Sun Microsystems по технологии обработки знании (проект «Precision Content Retrieval»), целью которого является построение концептуальной таксоно-
мнн фраз, выделяемых из индексированных материалоп, и многие другие [Lesser et 吐,1998; Luke et al., 1996; Woods ct al., 1999]. Общей целью практически всех таких проектов является разработка новых подходов к построению пространств знании и средств работы с ними, где бы обеспечивались:
использование семантики для управления процессом ответа на запросы;
возможность построения ответов с хорошо определспиоп семантикой н про- сть〕м синтаксисом, которые могли бы быть «понять】》п ооработапы программными агентами илп другими программными средствами;
возможность гомогенного доступа к информации, которая физически распределена и гетерогенно представлена в Интернете;
получение информащш, которая явно по присутствует среди фактов, полученных из сети, но может быть выведена “а нру门】х фактов н базовых знании.
Впечатляющая коллекция ссылок на такие проекты пре 口 ставшей а в Интернете по адресу http://\vww.tzi.org/gr卩/i3/, но наиболее шггересными с точки зрения темы данного раздела, по-видимому, являются шшциатива (КА)2 [Benjainins ct nL, 1998] и проект SHOE [Heflin et al., 1998], которые и обсу»сдаются ниже.
Инициатива (КА)2 и инструментарий Ontobroker
Аннотация знаний в рамках инициативы (КА)2
Аннотаипя знаний сообщестном приобретения зпаиш"! (Knowledge А ппо tat ion Initiative of the Knowledge Acquisition G〃〃陋"胃〃〃)一так расш!1(|)ровывается аббревиатура (КА)2. Целью работ по этому международному iifioeiay является, в ко- неином счете, Интеллектугьпьпьп! поиск в среде Ингер нет п автоматическое накопление новых знаний.
рамках инициативы (КА)2 выделяются три основных направлеппя псследопа- 】u】ii:
онтологический ипжшшршп' (ontological engineering);
аннотация Web-странин;
запроси к информации 11 a Wze I")- стр a ij11 цах и вывод ответов на базе онтологических знаний.
Онтологический инжипирши' — одно из основных направлений, в рамках которого предполагается, что сообщество (КА)2 должно создать свою собственную и достаточно общую систему онтолопн! на основе использования средств Onto- i%ua [Farquhar ct al., 1996]. В настоящее время уже разработано воессмь оптоло- 门巾,которые могут рассматриваться как разделы общей онтологии - онтоло- ;ня организации (organization ontology), проекта (project ontology), личности (person ontology), направления исследоваш1п (research-topic ontology), публика- H嘀(publication ontology), событий (event ontology), исслсдолательских про-
дуктов (research-product ontology) н исследовательских групп (research-gronp ontology). При этом разработка примеров онтологий осуществляется и управля- ei ся участи и кам и проекта — так называемыми провайдер-агентами («provider agents》),ci размещаются эти онтологии на их Web-страницэх. Тнкне страницы аннотируются с использованием нового типа HTML-тегов (ONTO), информа- ння в пределах которых обрабатывается специальной компонентой, работающей на основе онтологий, — системой Ontocrawler. В рамках этой компоненты, в зависимости от «богатства» используемой онтологии, может выводиться новая информация, релевантная запросам, но не присутствующая явно иа Web-crpa- шщах в сети Интернет. *
Сама система Ontocrawler разрабатывается в рамках отдельного проекта инициативы (КА)2 — проекта Ontobroker [Fensel ct al., 1998], который, собственно, и нптерссеп с точки зрения обсуждения средств представления и обработки оэто- логическпх злашп!. .
Средства спецификации онтологий в проекте Ontobroker
В Ontobroker имекугся три основные подсистемы: интерфейс формулирования запросов (query interface), машина вывода ответов (inference engine) и собственно машина доступа к Пнтерпст-ресурсам — «иервяк» (Webcrawler), используемы [i для накопления требуемых знашп! из этой среды.
Для сисшп|шкаци11 онтологий разработан специальный язык представления зна- Hiiii. Подмпо;ксство этого языка служит и для формулировки запросов, а язык аниотнрогзаипя — для ^обогащения» Web-докумсптов онтологической ипформа- iLiicii, Все :)тп компонепты н обсуждаются ниже.
Формализм запросов
Формализм запросов ориентирован на фре1!мовос представление онтолопш, в рамках коч'орого. как н обычно, опредслсмы понятия экземпляров, классов, атри- бутов п значений.
Схема 0:C[A-»V] означает, что объект О является экземпляром класса С с атрибутом А, имеющим значение V, Важно, что в каждо[[ позитш тако『1 схемы могут использоваться нс только константы, но и переменные или выражения.
Для примера, запрос вида
FORALL R <- R:Researcher
прс'шолагает полек всех объектов, являющихся экземплярами пасса Researcher. Если предположить, что пделтлфикатором объекта служит URL домашней страницы специалиста, в качестве результата но этому запросу будет выдан список соотистствуюших Пптерпст-ссылок.
Понятно, что это простеннпШ запрос. Обычло же в запросе определяется поисковый образ объектов, обладающих определенным» свойствами. Так, если необходимо naiiTH всех специалистов по фамилии Иванов п при этом выдать в качестве
результата их имена и электронные адреса, то приведенный выше запрос можно модифицировать следующим образом:
FORALL Obj, FN, ЕМ <-
Obj:Researcher[firstName->>FN;
lastName-»"HBaHOB"; email->>EM],
В качестве ответа при этом могут быть получены значения переменных.
Obj = http://www.anywhere.ru/'ivanov/
FN = Иван
EM 二 maiIiQ:ivanov@arwwhe「e,「u
Имеются в языке Ontobroker и средства вывода значений свойств. Так, некоторые нз атрибутов объекта могут задавать отношения, свойства которых известны машине вывода. Для примера, в запросе вида
FORALL Obj,СР <-
Obj;Resea「che「[lastName ->>"Иванов"; coope「atesWith->>CP],
атрибут cooperatesWith является отношением, обладающим свойством симмет- ричности. Это означает, что даже если у объекта, описывающего специалиста по фамилии Иванов, свойства cooperatesWith нет, Ontobroker выведет его, если в онтологии представлен объект, описывающий другого специалиста, который имеет такое свойство со значением «Иванов».
В рассматриваемом языке представления онтологических знаний присутствуют и другие правила вывода значений атрибутов, эксплицитно не представленных в Web-документах. При этом понятно, что язык запросов Ontobroker может использоваться и для формирования репозиториев с информацией, удовлетворяющей заданным ограничениям. И более того, с помощью запросов можно получать и метаинформацию: запрос вида
FORALL Att, Т <- Researcher[Att=>>T]
вернет в качестве результата имена всех атрибутов класса Researclier и связанных с ним классов.
В самой системе Ontobroker поддерживаются два иiпа интерфейсов при формировании запросов — текстовый (для экспертов)【【графический (для пользовате- лей). Первый из них предполагает, что запросы формулируются непосредственно во входном языке описания онтологий. Понятно, что при этом знание синтакспса язнка Ontobroker и знакомство с онтологией, для которой запрос формулируется, должны у эксперта присутствовать.
Проблема знания синтаксиса решается в данном случае, как, впрочем, и в большинстве других инструментальных средств нового поколения, за счет диалогов, ,УпРавляемых системой (system-driven dialogue). Пользователю выдается соответ-
ствующая панель, где могут быть определены (путем выбора из меню) компонен- тм запроса и связки между ними. Такой подход обеспечивает синтаксическую корректность и однозначность интерпретации запроса.
Сложнее преодолеть разрыв в знаниях эксперта н пользователя, особенно нович- ка, об используемой онтологии. Ведь для правильной формулировки запроса необходимо знать, по крайней мере, какие концепты в онтологии присутствукгг н какие атрибуты имеются у концептов. Поэтому все системы представления онтологических знании предоставляют своим пользователям средства виуализации онтологий и навигации по онтологии.,
В Ontobroker для визуализации онтологий используется подход, основанный на идеях гиперболической геометрии (Hyperbolic Geometry) [Lamping et al., 1995]. В случае обсуждаемой системы эти идеи реализуются следующим образом: класс, интересующий пользователя в данный момент, представляется «большим шаром», а классы, с ним непосредственно связанные, — «маленькими шарами» и располагаются по границе круга, «очерчивающего» соответствующий слой. Используя данный интерфейс, и эксперт и пользователь могут легко и эффективно включать в свой запрос нужные концепты н их атрибуты, а система Ontobroker переведет их в текстовое представление автоматически. Ревизован интерфейс онтологий Ontobroker как Java-апплет, что обеспечивает работу с Web-броузерами на любых платформах, где поддерживается Java-технология.
Формализм представления и машина вывода
Как уже отмечалось выше, онтология определяется через концепты (классы), связанные отношениями, атрибуты и аксиомы. И адекватный язык представления должен обеспечить удобные средства для описания всех перечисленных компонентов. В Ontobroker базисом представления являются так называемые логики фреймов (Frame-Logic) [Kifer et al., 1995].
Базисными конструкциями в данном подходе являются:
Подклассы (Subclassing) 一 запись Cl :: С2 означает, что класс С1 является подклассом С2.
Экземпляры (Instance of) — запись О : С означает, что О является экземпляром класса С.
Декларации атрибутов (Attribute Declaration) - запись С1[А=»С2] означает, что для экземпляра класса С1 определен атрибут А, значением которого должен быть экземпляр С2.
Значения атрибутов (Attribute Value) - запись O[A-»V] означает, что экземпляр О имеет атрнбут А со значением V.
Часть-целое (Part-of) - запись 01 <: 02 означает, что 01 является частью 02.
ствествеОтношения (Relations) - предикаты вида р(£,...,а2) могут использоваться, как и в обычных логических формализмах, но с тем расширением, что в каче- аргументов здесь могут выступать не только термы, но и выражения.
стве
стве
Из базисных конструкций строятся более сложлые —(|эакты (facts), правила (ги- !es), ^двойные» правила (double rules) и запросы (queries). Запросы уже обсужда- лнсь выше. Факты, по сути, являются элементарными выражениями.
Правила, как и обычно, имеют левую и правую части, причем левая часть (здесь она называется «головой») является конъюнкцией элементарных выражений, а Правая («тело») — сложная формула, термами которой являются элементарные выражения, связанные обычными предикатными символами типа implies:—> , implied by: v—, equivalent: <—>? AND, OR и NOT. Отличие между обычными и «двойными» правилами в симметричности последних. Важлое достоинство формализма — возможность использования переменных в «голове» правил (с квантором FORALL) или в его «теле» (с кванторами FORALL и EXISTS). Пример фрагмента онтологии в формализме Ontobroker, адаптированный из работы [Fensel et al., 1998], приводится ниже.
Определения атрибутов
Person [firstName =>> STRING;
lastName 二》STRING;
eMail =» STRING;
publication =» Publication],
Employee [affiliation =>> Organization;,,.].
Researcher [researchinterest =>> ResearchTopic;
memberOf =>> ResearchGroup;
cooperatesWith =>> Researcher], Publication [ author =>> Person;
title 二》STRING;
year =>> NUMBER: abstract =» STRING],
Правила
FORALL Personl. Person2
Personl:Researcher [cooperatesWith -» Person2] <-
Person2:Researcher [cooperatesWith Personl]
•FORALL Personl. Publicationl
Publication1:Publication [author -» Personl] <->
Personl:Person [publication ->> Publicationl],
По-видимому, в пояснениях здесь нуждаются только правила. Первое из них фиксирует симметричность отношения cooperatesWith. Второе утверждает, что если конкретная личность (экземпляр класса Person) имеет публикацию, то последняя имеет автора, который тоже является экземпляром класса Person, и обратно.
Машнна вывода Ontobroker состоит из двух основных компонентов: трансля^威 с расширенного языка представления в ограниченный и собственно вычислителя выражений oi-раиичеиного языка, который является обычным языком логически го программирования.
Аннотация Web-страниц онтологической информацией
Поскольку, как уже отмечалось выше, Web-информацня чаще всего представлен на на языке HTML, в рамках проекта Ontobroker разработано простое его расти* Рсп не для аннотации Web-страннц. Основная идея этого расши^ния состоит в следующем: в язык HTML добавлено несколько релевантных для решения по ставленных задач тегов, использование которых позволяет Ontobroker интерпретировать аннотированные фрагменты HTML-текста как факты язьша прсдстаилепия онтологическ![х знаний. При этом Web-страницы остаются приемлемыми для стандартных броузеров типа Netscape Navigator илн MS Explorer.
В язык введены три эпистемологически различных примитива:
Пдентпфикацня объекта, которьи! может быть определен как экземпляр определенного класса, с помощью URL.
Установка значения атрибута объекта.
Определение отношении межлу объектами. •
Все примитивы синтаксически расширяют тег <а ...> языка HTML. Так. например, если специалист Иванов захочет определить себя как объект обсуждавшейся выше онтологшь он может на своей домашней странице ввести конструкцию вида:
<а опт о=■' " *m р: //^. a ^w-\e ге. г и / ~ ivjinov /" : Яезег"С^ег"> </а>
Теперь для объекта Иванов iciacca Researcher можно ввести атрибут email и его значение с помощью с.'юдз'ющеЛ конструкции:
<а onto=" "http;//www, anywhere.「工广小唱他丫/" [emn”=''mailto: ivansGanvwh.ere. ru"l "> </a>
Аналогииным образом вводятся и отношения:
<а onto= “REL(Ob]1, 0b]2, 0bj3,0Ь]п)" > . . ■ </а>
Имеются в языке и средства, которые обеспечивают уменьшение сложносш аннотирования: например, возможности именования «длинных* конструкции и последующего использоиаиия этих имен.
При таком подходе Ontocrawler - компонент системы Ontobroker - простой CGI-скрипт, который периодически проверяет аннотированные страницы на Web、Для поиска таких страниц он обращается к индексным страница провайдеров, которые зареп[стрпрованы в рамках инициативы (КА)-.
3. Проект SHOE — спецификация онтологий и инструментарий
Общая характеристика проекта
Проект SHOE (Simple HTML Ontology Extensions) ориентирован на решение проблемы добавления к Web-страницам семантической информации и соотнесения ее с онтологиями соответствующих предметных областей. Предполагается, что, используя эту информацию, поисковые системы смогут обеспечивать более релевантные ответы на запросы, чем это возможно сейчас на базе нспользоваиия машин поиска, функционирующих в Интернете.
Для поддержки процессов аннотирования в рамках проекта SHOE разрабатывается специальный набор инструментальных средств (suite of tools), а основой их является язык Интернет-совместимого представления знаний, который, собственно, и дал название всему проекту.
В настоящее время в проекте SHOE выделены следующие главные направления исследований:
Разработка множества повторно используемых онтологий (reusable ontologies) для концептов, которые наиболее частотны для Web-ресурсов.
Создание средств проектирования онтологий — аннотаторов знаний (Knowledge Annotator), которые бы упростили этот процесс.
Предполагается также, что в SHOE-инструментарий будет включена «несложная» обработка естественного языка (lightweight natural language processing techniques), которая обеспечит представление пользователям аинотаци!! документов.
Спецификации онтологий и инструментарий SHOE
В данном подразделе мы сосредоточимся не столько на самих онтологиях, разрабатываемых в рамках проекта SHOE [Luke et al., 1996], сколько на языке представления онтологических знакий и средствах поддержки процессов проектирования онтологий.
Формализм представления и машина вывода
Следует сразу отметить, что SHOE по своей идее близок к уже обсуждавшейся ВЬ1Ше инициативе (КА)2. Но концепция языка представления знаний здесь дру- гая, хотя и она лежит в русле расширения HTML специальными тегами. А основ- ное отличие языка SHOE в том, что здесь, по существу, предлагается «полномасш- табное» расширение HTML, Для этого SHOE вводит в HTML-стандарт следующие новые тегн для спецификации онтологий: ONTOLOGY, USE- ONTOLOGY, DEF-CATEGORY, DEF-RELATION, DEF-ARG, DEF-RENAME, DEF-CON- STANT, DEF-TYPE, DEF-INFERENCE, INF-IF, INF-THEN,COMPARISON, CATEGORY, RELATION, ARG н некоторые другие. Для аннотирования HTML-документов пс-
пользуется час、ь из уже перечисленных тегов и, кроме того, вводятся новые, ня* пример INSTANCE. И наконец, в SHOE вводится метатег вида <МЕТА НТТР- EQUIV =,..">.
Для определенности в рамках спецификации языка SHOE предполагается, что онтология представляется в виде is_a иерархии классов/категорий, множества атомарных отношений между категориями и множества правил вывода в форме простых клауз Хорна.
Термами языка являются термы HTML и дополнительно к этому понятия Category (Class), Data (причем с типами STRING, NUMBER, DATE, TRUTH),ffement, Instance, Instance Key, Name〉Ontology, Relation (Relationship), Rule и некоторые другие.
Декларации онтологий задаются внутри тела НТ М L-доку мента и ие могут перекрываться с другими тегам» HTML. В одном документе может быть определено несколько онтологий, но такие определения тоже не может перекрываться илн быть вложенными. Общая схема определения онтологии следующая:
<ONTOLOGY ID="идентификатор-онтологии"
VERSION二"вере 加.
[BACKWARD-COMPATIBLE-VHTH="список-версий"]
LDESCRIPTION=''текст-"]
Г0ЕС1АНАТ0^5="сйисо/<-ле^ар. -экземпляров" >
собственно-деклараций-онтологии
</ONTOLOGY>‘
Для указания того, что данная онтология расширяет друтую, х^ке существующую, используется специальный тег:
<USE-ONTOLOGY 1D^"идент^фикатор-онтологии"
версия" PREFIX^"w0^<c" [URL="^L''J>
Внутри оп])еделения онтологии могут специфицироваться новые категории, для чего используется специальный тег вида:
<DEF-CATEGORY 1^^" имя-категории"
[^/\~"список-родительских-категорий" ^ [DESCRIPTION』"тексту [5Н09Т="тексГ']>
Аналогичный подход применяется и для определения отношений:
<DEF-RELATION ШЕ="имя-отношения" [DESCRIPTION^"текст"} LSHOHT="текст'р
список-аргументов
</DEF-RELATION>
Возможно определение тех же понятий и с помощью тега ONTDEF с параметрами.
Одним из важнейших компонентов определения онтологии являются правила вывода. В SHOE такие правила «похожи» на Хорновские клаузы по сути, но отличаются от них по форме:
〈DEF-INFERENCE [DESCRIPTION="TeArcr"]>
<INF-IF> тело </INF-IF>
CNF-THEN〉голова </INF-THEN>
</DEF-INFERENCE>
Для примера, ниже обсуждается фрагмент определения онтологии в формалиаме SHOE, коррелирующий с уже обсуждавшимся фрагментом определения аналогичной онтологии в формализме Ontobroker.
Пусть нас интересуют исследователи, имеющие в Интернете свои домашние страницы. Для работы с такими страницами можно воспользоваться уже существующем в рамках SHOE онтологией общих понятий (organizatioirontology version 2.1) по адресу http://www.ont.org/orgont.html. Однако предположим для определенности, что существующую онтологию необходимо расширить понятиями Person и Organization. Тогда спецификация фрагмента повой онтологии (Но- mePageOntology) может быть представлена в формализме SHOE следующим образом:
〈ONTOLOGY 1[)="HomePageOntolоду" VERSION" 7. О">
<ONTOLOGY-EXTENDS "organization-ontology"
VERSION二‘2 厂 PREFIX二””0'
{)^L-"http://www. ont. org/orgont. htirii">
<ONTDEF CATEGORY="Person" ISA二''org. Thing”〉
〈ONTDEF ^ЕШ^="lastName' ЖЗ^'Person STRING”〉
<ONTDEF RELATION="n'rst№/zje" ARGS=”Person STRINGS
〈ONTDEF RELAnOM="mamec/7'o" ARGS二"Person Person">
<ONTDEF RELATION="employee" ARGS="org. Organize! tion Person”〉
</ONTOLOGY>
Аннотация Web-доку ментов на базе онтологи!!
Аннотация HTML-докумептов в SHOE осуществляется также с йсно.пьзованием тегов. В частности, для этого служат теги USE-ONTOLOGY, INSTANCE, CATEGORY, RELATION. Последние три тега имеют следующие форматы:
〈INSTANCE К^=" значение-ключа"
CDELEGATE-TO="cnnco/c-^Mepos"]> </INSTANCE>
<CATEGORY NAME="npe0WKc, категория" [ЯОЯ="/<люч"]>
〈RELATION NAME二“叩е加кс,отношение">список-аргументов 〈/RELATION〉
Для поиска и обработки домашних страниц с помощью специфицированной вы- Ше онт°логиц необходимо, чтобы авторы Web-публикаций сами (пли па основе инструментария SHOE) проаннотировали свои документы.
Так, например, фрагмент аннотации персональной страницы нсследме睡恥£ : нова в формализме SHOE выглядит следующим образом:'
<B0DY>
〈МЕТА HTTP-EQUIV="Instance"
CONTENT='^ttpr//ww. anywhere.ru/~ivanav"〉
<USE-0NT0L0GY "HomePageOntology"
VERSIONS,£Г PREFIX=”ouL
\)^L=^ http://www. ont. о rg/HomePageOn to logy, h tml" >
〈CATEGORY "our. Person^
<RELATION "our.firstWame" T0="Fvan">
<RELATION ''our. lastName" lQ~rIvanov">
<RELATION our. marriedTo'r
Л^-1'http://www. somewhere. ru/^Hariya''^
<RELATION "our, employee" FW^http://www. ccas. ru^>
</BODY> ■
Анализ приведенного HTML-текста показывает, что даже в таком, казалось бы, простом случае задача аннотации Web-документа достаточно сложна. Ситуация становится еще более сложной при аннотировании реальных HTML-документов. Во-первых, уже выбор объектов текста, подлежащих аннотированию, нетрн- впалсп. особенно, сс;ш \\гсЬ-документ представляет объекты реального мира. Во~ вторых, гппррссылки часто фиксируют лишь наличие определенных отношений меуклу объечегамп. по нс их семантику. И, наконец, можно, конечно, аннотировать каждую именную группх' в естестве!шо-языковом представлении HTML-страницы, ио jlbi pcu/ibiibix ;юк\'мептов это слишком трудоемкая задача, которая, к тому 山и, чревата бо/iьшпм количеством ошибок.
Поэтому в рамках проекта SHOE для автоматизации процессов аннотирован ня ХУеЬ-докумептов разработала специальная система Knowledge Annotator [KA, 1999], одна из экранных форм «oropoii представлена на рис. 8.12.
feWEFH”、feWEFH”、СБ С£Р*£$г?门瑋!J宾.* Т 4СБ С£Р*£$г?门瑋!J宾.* Т 4七「丿》*5 H ue二e0屮行3营;:『匸2勺01七「丿》*5 H ue二e0屮行3营;:『匸2勺01:.Frt ”方3 :4n#»^,?um口0?修> tMiR :::K^:.Frt ”方3 :4n#»^,?um口0?修> tMiR :::K^
feWEFH”、
feWEFH”、
СБ С£Р*£$г?门瑋!J宾.* Т 4
СБ С£Р*£$г?门瑋!J宾.* Т 4
七「丿》*5 H ue二e0屮行3营;:『匸2勺01
七「丿》*5 H ue二e0屮行3营;:『匸2勺01
:.Frt ”方3 :4n#»^,?um口0?修> tMiR :::K^
:.Frt ”方3 :4n#»^,?um口0?修> tMiR :::K^
二3" ”;6 口! IFF a 匕 vpf |П a Um Л Ем:¥Ус: th* YH.VwwN bd .W/ГЕС^
ц ^hwt -гад»N竺㈠后им4电d皿口歎d安tL产広Hf E广i
Рис. 8.12. Экранная форма системы Knowledge AnnotatorРис. 8.12. Экранная форма системы Knowledge Annotatorw^v*1."tn ty 飞电讣*H urr力 E2tH宓M" W# £ 'ATia^n 口* 屮0 护fM :S "Fd 心duAj$>^k 二学 R'k
Рис. 8.12. Экранная форма системы Knowledge Annotator
Рис. 8.12. Экранная форма системы Knowledge Annotator
■ “ *1汇营力 A FM ;8* c *1E± *»UO&^畤E*n仁
Основными информационными блоками в приведенной выше экранной форме являются экземпляры (instances), онтологии (ontologies) и у гверждения (claims). Пользователь может добавлять, редактировать и/нли удалять любой из элементов этих блоков. При создании новых объектов пользователю выдаются соответ- ствующие подсказки в виде, например, списка доступных онтологий, описапных в них категорий, отношений и т. п.
Для визуализации знаний, содержащихся в обрабатываемом документе, Know- jedge Annotator использует различные методы, начиная с аннотированного HTML-текста и заканчивая описаниями утверждений на естественном (английском) языке. Кроме того, система осуществляет проверку корректности действий пользователя и транслирует его выборы в синтаксически правильные конструкции SHOE.
Формализм запросов
В настоящее время существуют различные примеры языков запросов к документам, проаннотированным на основе формализмов SHOE, рассмотренных выше. Так, в университете Мзрилэнд (University of Maryland at College Park) pa叩або- тан робот Expos, который обрабатывает SHOE-документы и добавляет их в свою базу знаний, используя систему представления знаний PARKA [Stoffel et aL, 1997].
Пример PARKA-запроса для поиска домашних страниц может быть специфицирован следующим образом: (query! "(:and
(#!instanceOf ^x ^!Person) (й!instanceOf ?Y ft!Person)
(#!instanceOf ?Z #!Organization)
(#!lastNane ?X "Ivanov”) (#!lastName ?Y "Ivanova")
(#!employee ?Z ?X) (ft!employee ?Z ?Y)
(fl!marriedTo ?X ?Y)
(4!involvedln 9Z 'ТФФИ-проекты")))
Но существу, это достаточно простой SQL-запрос, расширенный за счет использования понятий онтологии, переменных и ограниченных по мощности образцов. Оценивая формализм представления онтологических знаний SHOE и поддержку процессов аннотирования Web-ресурсов в этом проекте в целом, можно констатировать, что это достаточно мощная система методов и средств, которая вместе с тем сложнее для пользователя, чем Ontobroker.
8・3・4・ Другие подходы и тенденции
В заключение настоящего параграфа необходимо, хотя бы в общих чертах, рас- смотреть усилия World Wide Web Consortium (W3C) по созданию н внедрению средств маркировки Интернет-ресурсов.
Д° недавнего времени в распоряжении Интернет-авторов для этого почти исключительно использовался уже обсуждавшийся выше язык HTML. Однако с точки
зрения семантнческой разметки Интернет-документов этот язык обладает рядом недостатков, основными среди которых являются следующие (Johnson, 1999]:
жесткая ориентация на визуализацию;
единственная «точка зрения» на данные;
нерасширяемость;
* весьма ограниченные средства спецификации семантической структуры доку-
Справедливости ради следует заметить, что еще в конце 60-х годов в рамках ис- следований по представлению документов компанией IBM был разработан язык SGML (Standard Generalized Markup Language), который лишен многих из пере- числеиных недостатков. К середине 80-х годов этот язык стал стандартом для многих промышленных компаний и правительственных учреждений США, но, по мнению специалистов рабочей группы SGML W3C [Bosak, 1997], он слишком сложен для широкого использования Интернет-авторами. Вот почему в рамках W3C, начиная с 1996 года, предпринимаются усилия по разработке средств разметки документов, сравнимых по мощности с SGML а по простоте использования —с HTML. И среди работ данного направления в первую очередь следует отметить язык XML (extensible Markup Language) [XML, 1998].
В языке XML «сняты» многие ограничения HTML, язык разметки стал существенно мощнее. И одновременно XML-тексты остаются понятными для всех, кто работал с языком HTML. Отличительные свойства XML и в том, что здесь фиксируется стандарт на определение синтаксиса и единообразные средства введения в языки разметки (Markup Language) новых тегов. А это, в свою очередь, позволяет конструировать на основе XML новые языки маркировки WеЬ-докугментов и, кроме того, обеспечивает возможность различным приложениям (и, в частности, программным агентам) «понимать» и обрабатывать ХМ L-доку менты.
Каждый XML-документ обладает определенной логической и физической структурой. Физически это композиция элементов, называемых единицами (entities), которые могут быть связаны взаимными ссылками. Лошчески документ состоит из деклараций, единиц, комментариев, собственно текстов и инструкции обработки, причем каждая конструкция XML маркируется специальными тегамн явным образом. Все теги XML — парные, а конструкции моглт оыть вложены Друг в 即У” га, образуя правильно построенное дерево. Так, например, конструкция <*ет Attribute1=«ValueU> </ltem> определяет единицу с именем Item и списком пар атрибут-значение, который в нашем случае представлен единственным атрибутом с именем Attributel. имеющим значение «Valued
Для иллюстрации возможностей этого языка рассмотрим содержательный пример XML-документа, описывающего домашнюю страницу исследователя Иванова.
<?xml version二0"?>
<Homepage>
<Иате>Домашняя страница HBaHOBa</Name>
<Person>
<firstName>Ivan</firstName >
<lastName>Ivanov</lastMame >
cmarriedTo Homepage-"http://www,anywhere.rt^>
Mariya Ivanova</marriedTo>
<employee Homepage=',http://www,ccas.rn">
CCAS of Russia</employee>
<publications>
<book title二"First Book"/>
<book title="Second Book,7>
</publications>
</Person>
</Homepage>
Этот XML-документ структурирован существенно лучше, чем был бы аналогичный ему HTML-текст, ио пока не имеет «слиясла», так как из него не следует, как интерпретируются единицы типа Person, publications, book н т. н. Для решения этого вопроса используется специальная спецификация определения типа документа DTD (document type definition). По сути дела, это грамматика языка разметки, в рамках icoTopoii определяются, какие элементы могут присутствовать в документе, какие атрибуты они имеют н как элементы соотносятся друг с другом. Понятно, что для стандарта XML такие спецификации уже раз])аботаиы самими авторами языка, по в нашем случае используется специальный его диалект, п по- тому нменно мы должны специфицировать DTD нашего документа. Такая спецификация может быть след^чотеп:
<!ELEMENT Homepage (Name, Person)〉
<!ELEMENT Name (#PCDATA)>
<!ELEMENT Person (firstName, lastName, marriedTo?, employee?, publications?, Homepage?)>
<|ATTLIST Person Homepage xml:link CDATA>
<!ELEMENT firstName (#PCDATA)>
<!ELEMENT lastNa倡e (#PCDATA)>
<!ELEMENT marriedTo (Person)〉
<!ELEMENT employee (organization)〉
<!ATTLIST organization Homepage xml:link CDATA>
<!ELEMENT publications (book*, paper*t report*)>
<!ATTLIST book title CDATA ^REQUIRED, coauthor Person, publisher CDATA, year CDATA)>
<!ELEMENT paper (title、 coauthor*, journal, year, vol?, number9)>
<!ELEMENT report (title, coauthor*, organization, yea「)>
Как следует из приведенного описания, в DTD специфицировано «сведение» КОНСТРУ1ЩНЙ нашего XML-документа к стандартным XML-конструкциям, понимаем ым броузерами нового поколения.
В настоящее время уже разработаны DTD для различных предметных областей, 11 каждая такая спецификация, по сути дела, определяет новый язык разметки. Известным примером развития DTD для спецификации общих ресурсов является RDF (Resource Description Framework) [RDF, 1999], разрабатываемый W3C. Этот формат может использоваться для добавления в документы мегаинформа- Ш4Н, которая, в частности, может быть представлением семантики документа. Использование собственных диалектов XML является важным шагом на пути формирования пространств знаний в сети Интернет. Но, по сути дела, это лишь первый шаг в этом направлении. Действительно, какие средства дает язык XML дня представления знаний? Очевидно, что это, в первую очередь, средстваспеци- фшсации декларативной компоненты развитых систем представления знаний. И то в ограниченном объеме. Каким же образом авторы этого языка и его расширений предполагают подключение процедур обработки XML-коиструкций? На сегодняшний день в предложениях W3C явно прослеживается лишь одна идея: поскольку XML-документы не что иное, как портабельные данные, а язык Java имеет портабсльньн! код, следует их использовать совместно. Для этого предлагаются специальные интерфенсьъ например SAX (Simple API for XML), которые уже сейчас могут по,1держнвать многие Java-анализаторы. Основная идея здесь достаточно проста — анализатор просматривает узлы дерева документа нз XML- 《)а"ка и вызывает соответствующие методы, определенные пользователем. Для того чтобы этот механизм работал, программист должен создать класс, реализу- 1()1ШП] соответствующий ннтерфе11С. Методы этого класса будут вызываться всякий раз, коглг)на входе распознавателя появляется нужная конструкция (тег, входная строка и т. п) Собственно обработка информации при этом целиком в руках программиста, а среда лишь поддерживает общее функционирование и обработку исключительных ентуащ】汇
TaKoii подход имеет много общего п с подходом Ontobroker, и с подходом SHOE. Авторы обоих этих проектов активно приветствуют усилия W3C, но вместе с тем отмечают, что в предложениях соответствующих рабочих групп еще много недостатков. В первую очередь ——это отсутствие стандартов на интеллектуальную обработку XML-конструкций, сравнительно небольшой практический опыт семантической разметки Интернет-документов и достаточно ограниченные средства логической обработки, использ\7емые при этом.
Вот почему, как показывает анализ литературы и Интернет-ресч^ов по данной тематике, в настоящее время:
эффективная обработка информации на Web связывается, в первую очередь, с использованием ИП-техпологий;
основные подходы в этой области ориентированы на решение проблемы извлечения нз Web-ресурсов эксплицитных знаний на основе семантического маркирования таких ресурсов:
во всех исследовательских и многих коммерческих проектах данного направления активно используются (или, по крайней мере, декларируется использование) агентно-орнснтнроваиные вычисления и техноло]'ин.
Учитывая вышесказанное, в следующей главе обсуждаются мультнагеитшие системы и системы интеллектуальных агентов.
Интеллектуальные 9 J Интернет- технологии
口 Программные агенты и мультиагентные системы
口 Проектирование и реализация агентов и мультиагентных систем 口 Информационный поиск в среде Интернет
9-1 - Программные агенты и мультиагентные системы
-1. Историческая справка
Проблематика интеллектуальных агентов н мультиагентных систем (МАС) имеет уже почти 40-летнюю историю [ГородецкиЛ и др.. 1998; Тарасов, 1998] и сфор- мпровачась на основе результатов, полученных в рамках работ по распределенному искусственному интеллекту (DAI), распределенному решению задач (DPS) и иа])а/1лслы1ому искусственному интеллекту (PAI) [Deinazeau el al.. 1990: Пэра- иск, 1991: Rasmussen ct aL, 1991]. H& noH<;LiyiY лишь в последнее 10-летие опа выделилась в самостоятельную область исследовашп! и приложен!!!! п все больше претендует на одну из ведущих pcucii в рамках 11нтеллсктуальных информационных Tcxuo/ioniiL Спектр работ по дашюИ тематике весьма широк, интегрирует достижения в области компьютерных ceTeii и открытых систем, искусственного интеллекта н информационных техполопи! и ряда других исследований, п результаты уже сегодня позволяют говорить о новом качестве получаемых ре- iiieiini'L
Попятпо1 что в рамках данного издания мы не сможем даже обозреть все направления ii результаты в области МАС. Поэтому далее сконцентрируемся лишь на тех разделах, которые имеют непосредственное отношение к теме настоящей книги. С учетом сделанных замечаний и с позпцш'! сегодняшнего дня все исследования в этой области можно выделить в две основные фазы: первая охватывает период с 1977 г. по настоящее время, а вторая — с начала 1990 г. но настоящее время.
Работы первого периода концентрировались на исследовании так называемых «смышленых» (smart) агентов, которые были начаты в конце 1970-х годов и продолжаются все 1980-е голы вплоть до наших дней. Первоначально эти работы бьЕН сосредоточены па анализе принципов взапмодег^ст в ня между ai сн i ами, на декомпозиции решаемых задач па подзадачи н распределении полученных задач межну отдельными агентами» координации и кооперации агентов, разрешении конфликтов путем переговоров и т. и. Цель таких работ — анализ, спецификация, проектирование п реализация систем агентов. На этом же уровне активно велись работы по теории, архитектурам н языкам для программной реализации агентов. Примерно с 1990 г. стало ясно, что программные агенты могут использоваться в широком спектре применений. Однако потенциал агентных технологий, по-ви- димому, стал в значительной мере осознан не только разработчиками, но и ннвес- торами после известного отчета консультативной фирмы Ovum [Ovum, 1994], которая предсказала, что сектор рынка для программных агентов в США и Европе вырастет, по крайней мере, до $3,9 billion к 2000 匚 в противовес 1995 г., когда он оценивался в $476 million.
В настоящее время множество исследовательских лабораторш'!, университетов, фирм и промышленных организации работают в этоИ области, н список их постоянно расширяется. Он включает мало известные имена и небольшие коллективы, уже признанные исследовательские центры н оргаинзацип (например, университет Карнеги Мэл/юн (CMU) н фирма General Magic), а также огромные транснациона льныс компании (такие как Apple, AT&T, ВТ, Daimler-Benz, DEC, HP, IBM, Lottis, Microsoft, Oracle, Sharp п др.). Областями практического использования агентных технологий являются управление ипформашюипыми потоками (workflow management) н сетями (network nianagenient), управление воз- д)гшным движением (air-traffic control), ипформационш)!!] поиск (information retrieval), электронная коммерция (e-commerce), обучение (educat ion), электронные библиотеки (digital libraries) н мпогне-мпогне другие приложения.
Существует несколько прлчлн, почему необходимы и полезны ирограммныс агенты, МАС и, более общо, агентные технологии. Основная из них в том, что агенты автономны п могут выполняться в фоновом (background) режиме от лица пользователя при решении разных задач, папбо/юе важными из которых являются сбор информации, ес фильтрация п использование для принятия решеинн. Такнм образом, основная идея программных агентов — делегирование полцомо- “HiL Для того чтобы реализовать эту идею, агент должен иметь возможность взан- модеЁствпя со своим владельцем или пользователем для получения соответ- ствуюшнх заданл!! ц возвращения полученных результатов, ориентироваться в среде своего выполнения и принимать решения, необходимые для выполнения поставленных перед ним задач.
К построению агснтно-ориеитлроваипых систем можно указать два подхода: реализация единственного автономного агента или разработка мультнагеитиой сне- темь】. Автономным агент взаимодействует только( с пользователем и ревизует весь спектр функциональных возможностей, необходимых в рамках агентно-ори-
ептнрованной программы. В противовес этому МАС являются программно^ы, числительными комплексами, где взаимодействуют различные агенты для реше- ння задач, которые трудны или недоступны в силу своей сложности для одного агента. Часто такие мультиагеитные системы называют агеитствами (agencies), в рамках которых агенты общаются)кооперируются и договзривяются между со- 6ofi для поиска решения поставленной перед ними задачи.
Ai ентпые технологии обычно предполагают использование определенных тило* 〃。门亩 агентов н их моделей, архитектур МАС и опираются на соответствующие агентные библиотеки и средства поддержки разработки разных типов мульти- агептных систем.
2. Основные понятия
Существует несколько подходов к определению понятий в данной предметной области. По-вндимому, одним из наиболее последовательных в этом вопросе является международная ассоциация FIPA (Foundation for Intelligent Physical Agents), каж口кй документ которой содержит толковый словарь терминов, релевантных данному документу [FIPA, 1998]. И вместе с тем практически во всех работах, где даются, например, определения понятия агента и его базисных свойств、обшим местом ста_'ю замечание об отсутствии единого мнения по этому П01ЮДУ [Franklin et al., 199 6; Belgrave, 1996; NwanaT 1996]. Фактически, используя понятие «агент», каждый автор или сообщество определяют своего агента с конкретным набором свойств в зависимости от целей разработки, решаемых задач, толики реализации н т. п. критериев. Как следствие, в рамках данного направления появилось множество типов агентов, например: автономные агенты, мобильные агенты, персональные ассистенты, интеллектуальные агенты, социальные агенты и т. д. [Nwana. 1996]. а вместо единственного определения базового агента —множество определений производных типов.
Учитывая вышесказанное, понятие агента целесообразно трактовать как мета- имя илп класс, который включает множество подклассов. Ряд определений агентов, данных разными исследователями, представлен в работе [Franklin et al., 1996]. В настоящем издании будем придерживаться следующей концепции по этому поводу.
Агент — это аппаратная или программная сущность, способная действовать з интересах достижения цепей, поставленных перед ним владельцем и/ипи пользователем [Wool- dridge et al.、1995].
Таким образом, в рамках МАС-параднгмы программные агенты рассматриваются как автономные компоненты, действующие от лица пользователя.
В настоящее время существует несколько классификаций агентов [Nwana, 1996], одна из которых представлена в таол. 9.1.
Таблица 9.1. Классмфмкащма агентов
Типы агентовПростые Смышленые
(smart)
Хараетвристики^^^^
Интел-Действительно
лектуальные (truly) интвл- (intelligent)лвктуальныв
Автономное выполнение+
Взаимодействие++
с другими агентами и/или пользователями
Слежение++
эа окружением
Способность+
использования абстракций
Способность использования+
предметных знаний
Возможность адаптивного поведения для достижения целей
Обучение из окружения
Толерантность к ошибкам и/или неверным входным сигналам Real-time исполнение
++
++
++
++
ЕЯ-взаимодейст вне
Как следует из приведенной таблицы, собственно целесообразное поведение появляется только на уровне интеллектуальных агентов [Пономарева и др., 1999; Хорошевский, 1999]. И это не случайно, так как для него необходимо не только наличие целей функционирования, по и возможность использования достаточно сложных знаний о среде, партнерах и о себе. С точки зрения целей настоящей книги, наибольший интерес представляют интеллектуальные н действительно интеллектуальные (см. табл. 9.1) агенты. Понятно, что все характеристики более «простых» типов агентов при этом наследуются.
Иногда агентов определяют через свойства, которыми они должны обладать. Учитывая то, что нас в данной книге, в первую очередь, интересуют интеллектуальные агенты, приведем типовой список свойств, которыми такие агенты должны обладать [Wooldridge ct al., 1995; FIPA, 1998]:
автономность (autonomy, autonomious functioning) — способность функционировать без вмешательства со стороны своего владельца и осуществлять контроль внутреннего состояния и своих действий;
социальное поведение (social ability, social behaviour) — возможность взаимодействия и коммуникации с другими агентами;
реактивность (reactivity) — адекватное восприятие среды и соответствующие реакции на ее изменения;
активность (pro-activity) — способность генерировать цели и действовать рациональным образом для их достижения;
базовые знание (basic knowledge) - знания агента о себе, окружающей среде включая 口РУ「нх агентов, которые не меняются в рамках жизненного цикла агента;
Убеждения (beliefs) - переменная часть базовых знаний, которые могут меняться во времени, хотя а「епт может об этом не знать и продолжать нх исполь* зовать для своих целей;
цели (goals) — совокупность состояний, на достижение которых направлено текущее поведение агента;
желания (desires) 一 состояния и/пли ситуации, достижение которых для агента важно;
обязательства (commitments) — задачи, которые берет на себя агент по просьбе и/или поручению других агентов;
намерения (intentions) — то, что агент должен делать в силу своих обязательств и/или желании.
Иногда в этот же перечень добавляются и такие свойства, как рапиональность (retionality), правдивость (veracity), благожелательность (benevolence), а также мобильность (mobility), хотя последнее характерно не только для интеллектуальных агентов.
В зависимости от концепции, выбранной для организации МАС, обычно выделяются три базовых класса архитектур [Wray et al., 1994; Wooldridge et. al., 1995; Nwana, 1996]:
архитектуры, которые базируются на принципах н методах работы со знаниями (deliberative agent architectures);
архитектуры, основанные на поведенческих моделях типа «стимул-реакциям (reactive agent architectures);
гибридные архитектура (hybrid architectures).
Наиболее «трудными» терминологически в зто^ триаде являются архитектуры первого типа. Прямая калька — делибератпвные архитектуры — неудобна для русскоязычного произношения【【не имеет нужной семантической окраски для русскоязычного читателя. Сам термин был введен в работе [Gcnesereth et al., 1987] при обсуждении архитектур агентов.
Архитектуру или агентов, которые используют только точное представление картины мира в символьной форме, а решения при этом (например, о действиях) принимаются на основе формальных рассуждений и использования методов сравнения по образцу, принято определять как делиберативные.
Таким образом, в данном случае мы имеем дело с «разумными» агентами и архитектурами, имеющими в качестве основы проектирования и реализаии" модели, методы и средства искусственного интеллекта. В работе [Тарасов. 1998] таких агентов предлагается называть когнитивными, что не вполне правильно, так как при этом неявно предполагается, что «рассуждающие» агенты познают мир, в котором они функционируют. Нам представляется, что для русского языка более
удобным и адекватным были бы термины «агент, базпруюшп11ся на знаниях» пли «интеллектуальный агент», а также «архитектура интеллектуальных агентов». Именно этих терминов мы п будем придерживаться в данном издании. Первона- иально идея интеллектуальных агентов связывалась практически полностью с классической логпческо1'| парадпгмо|г ИИ. Однако по мерс развития исследова- нм" в этой области стало ясно, что такие «ментальные» свойства агентов, как, па- приМер, убеждения, желания, намерения, обязательства по oTiioiueiinro к другим агентам* и т. п., невыразимы в терминах исчисления предикатов норного порядка. Поэтому для представления зпшшн агентов в рамках данной архитектуры были использованы cneuna.nbiibie расширения соответствуюидгх логических пеппсле- ji»ii [Поспелов, 1998], а также разработаны новые архитектуры, и частности архгг- текп'ры тппа BDI (Belief-Desire-Intention). Один из конкретных примеров архитектуры этого класса обсуждается ниже,
Принципы реактивной архитектуры возникли как альтернативны!! подход к архитектуре интеллектуальных агентов. Идея реактивных агентов впервые возникла в работах Брукса, выдвинувшего тезис, что интеллектуёшыюе поведение может быть реализовано без символьного представления знаний, принятого в классическом ИИ [Brooks, 1991]. Таким образом [Connali, 1994]:
Реактивными называются агенты и архитектуры, где нет эксплицитно представленной модели мира, а функционирование отдельных агентов и всей системы осуществляется по правилам типа ситуация—действие. При этом под ситуацией понимается потенциально сложная комбинация внутренних и внешних состояний.
Вообще говоря, данный подход ведет свое начало с работ по планированию поведения роботов, которые активно велись в И И в 70-х годах. Простым примером реа.'1изап1Ш реактивных архитектур в зтом контексте можно считать системы, где реакции агентов на внешние события генерируются соответств\пощ11М11 конечны- мп автоматами. Широко известным примером системы с реактивной архптекту- 卩oii является планирующая система STRIPS [Fikes et al., 1971], где использовался логический подход, расширенны!! за счет ассотп1рова((ньгх с действиями пред- условий и пост-ycJioBiiii. Позже в рамках реактивных архитектур были разрабо- тань【н Другие системы, ио, как правило, они нс могли справиться с задачами реального уровня сложности.
Учитывая вышесказаппос, многие исследователи считают, что им пе卩вьн」,пи вто- poii подходы не дают оптнмалыюго результата при разработке агентов и МАС [Wray ес al., 1994]. Поэтом^^ лоиь(тки их объединения предпринимаются постояп- 110 “ У》ке привели к появлению разнообразных гибридных архитектур. По сути дела, пмешю гибридные архитектуры и используются в настоящее время во всех, сколько-нибудь зпачнмых проектах п системах.
Мь【рассмотрели основные подходы к разработке мультпагситпых систем. Архитектуры МАС и их характеристики, широко используемые в настоящее время, представлены в табл. 9.2.
Таблица 9.2. Архитектуры МАС и их характеристики
Архитектура
Представление знаний
Модель мира
Решатель
Интеллектуальная
Символьное
Исчисление
Логический
Реактивная
Автоматное
「раф
Автомат
Гибридная
Смешанное
「ибридная
Машиш вывода
Организация МАС на принципах ИИ имеет преимущества с точки зрения удобства использования методов и средств символьного представления знаний, разработанных н рамках искусственного интеллекта. Но в то же время создание точной и полиoii модели представления мира, процессов и механизмов рассувдения в нем представляют здесь существенные трудности, уже неоднократно обсуждав- ш неся в данной книге в связи с рассмотрением вопросов приобретения знаний. Реактивный подход позволяет наилучщим образом использовать множество достаточно простых образцов поведения для реакции агента на определенные стимулы для конкретной предметной области. Однако применение этого подхода ограничивается необходимостью полного ситуативного анализа всех возможных активностей агентов.
Недостатки гибридных архитектур связаны с «иепрннцнпигыьным» проектированием МАС со всеми вытекающими отсюда последствиями. Так, иапример, многие 门i6pu」Hbic архитектуры слишком специфичны для приложений, под которые они разрабатываются. Но несмотря на указанные недостатки, гибридные архитектуры позволяют гибко комбинировать возможности всех подходов. Вот почему в последнее время явно прослеживается тенденция разработки н использования именно гибридных МАС-архитектур п систем агентов [Sloman, 1996].
Проектирование и реализация агентов и мультиагентных систем
・ Общие вопросы проектирования агентов
и МАС
Идеи программных агентов вообще н интеллектуальных агентов, в частности, привлекательны, так как позволяют людям делегировать нм своп полномочия по решению сложных задач. Однако разработка МАС п действительно интеллектуальных агентов требует специальных знагпп! и является сложной ресурсоемкой задачей. Ведь программные агенты — новый rciacc систем программного оо^п;~ чсния (ПО), которое действует от лица пользователя. Они являются мощной ао- стракцпей для «визз'алпзатш» н структурнровання сложного. Но если процедуры, ф5гш<цш1, методы и классы — известные абстракта【,которые разработчики ПО использ5тют ежедневно, то программные агенты — это принципиально новая парадигма, неизвестная большинству пз ш【х даже сегодня.
Вместе с тем развитие и внедрение программных агентов было бы, по-вндимому, невозможно без предыдущего опыта разработки и практического освоения концепции открытых систем [Орлик, 1997], которые характеризуются свойствами:
расшпряемостп/масштабпруемостн (возможность изменения набора составляющих системы);
мобильностн/переноснмостп (простота переноса программной системы на разные аппаратно-программные платформы);
интероперабельности (способность к взаимодействию с другими системами);
дружелюбности к пользователго/легкой управляемости.
Одним из результатов внедрения концепции открытых систем в практику стало распространение архитектуры «клиент—сервер» [Орлик, 1997]. В настоящее время выделяются следующие модели клпент-серверного взаимодействия:
«Толстый клиент — тонкий сервер». Наиболее часто встречающийся вариант реализации архитектуры клиент—сервер. Серверная часть реализует только доступ к ресурсам, а основная часть приложения находится на клиенте.
«Тонкий клиент — толстый сервер». Модель, активно используемая в связи с распространением Интернет-технологий и, в первую очередь, Web-броузеров. В этом случае клиентское приложение обеспечивает реализацию интерфейса, а сервер объединяет остальные части приложений.
При создании МАС могут с успехом использоваться обе модели, хотя в настоящее время чаще применяется вторая. Но независимо от используемой модели средства разработки и исполнения распределенных приложений, которыми, как правило, являются МАС,опираются на статический подход (позволяют передавать только данные приложений) или динамический подход (обеспечивают возможности передачи исполняемого кода).
При динамическом подходе МАС-приложения нспользуют парадигму мобильных агентов.
Мобильные агенты — это программы, которые могут перемещаться по сети, например по WWW. Они покидают клиентский компьютер и перемещаются на удаленный сервер для выполнения своих действий, после чего возвращаются обратно.
UacTb исследователей считают, что мобильные агенты обеспечивают более прогрессивный метод работы в сетевых приложениях. Другие авторы отмечают, что мобильные агенты привносят опасность с точки зрения обеспечения секретности информации и загруженности сети [Chess et. al. 1995].
Понятно, что одни и те же функциональные возможности в большинстве случаев могут быть реализованы как посредством мобильных, так и статических агентов. Использование мобильных агентов может быть целесообразным, если они:
уменьшают время и стоимость передачи данных (например, при больших объемах данных вместо передачи всей необработанной информации по сети ”а хост-источник посылается агент, который выбирает только необходимую информацию и передает ее пользователю);
вычислениявычисленияпозволяют преодолеть ограничение локальных ресурсов (например, если возможности процессора п объем памяти клиентского компьютера малы, то, мо- зкет быть, целесообразнее использование мобильных агентов выполняющих па сервере);'
вычисления
вычисления
облепгают координацию (например, запросы к удаленным серверам выполняются мобильными агентами как отдельные задачи, а потому не нуждаются в координации);
позволяют выполнять асинхронные вычисления (например, запустив агента, можно переключиться на другое приложение и даже отсоединиться от сети, а результат будет доставлен агентом адресату после выполнения задания).
Мобильные агенты являются перспективными для МАС, но в настоящее время нет единых стандартов их разработки и все еще остается нерешенным ряд проблем, таких как легальные способы перемещения агентов по сети, верификация агентов (в частности, защита от передаваемых по сети вирусов), соблюдение агентами прав частной собственности и сохранение конфиденциальности информации, которой они обладают, перенаселение сети агентами, а также совместимость кода агента и программно-аппаратных средств сетевой машины, где он исполняется [Wayпег, 1995].
В настоящее время наиболее известными технологиями реализации статических н динамических распределенных прпложенпн являются программирование сокетов, вызов удушенных процедур — RPC (Remote Procedure Call), DCOM (Microsoft Distributed Component Object Model), Java RM I (Java Remote Method Invocation) и CORBA (Common Object Request Broker Architecture) [Maurer et al, 1998]. Вместе с тем с точки зрения разработки и реализации МАС наиболее важными, по-видимому, являются последние трп — DCOM, Java RMI и CORBA [Gopalan, 1999].
Модель Microsoft DCOM является объектной моделью, которая поддерживается Windows 95. Windows NT, Sun Solaris, Digital UNIX. IBM MVS и др. Основная ее ценность — в предоставлении возможностей интеграции приложении, реализованных в разных системах программирования.
Java RMI-приложения обычно состоят из клиента и сервера. При этом на сервере создаются некоторые объекты, которые можно передавать по сети, лноо методы их определяются как дост\'пные для вызова хваленными приложениями, а на клиенте реализуются приложения, пользующиеся удаленными объектами. Отличительной чертой RMI является возможность передачи в сети не только методов, но п самих объектов, что обеспечивает в конечном счете реализацию мобильных агентов,
CORBA является частью ОМА (Object Management Architecture), разработанной для стандартизации архитектуры п интерфейсов взапмоде11ствпя ооъектно-ори- ентпрованных приложений. Интерфейсы между CORBA-объектами определяются через специальный язык IDL (Interface Definition Language), который является языком описания интерфейсов. Сами интерфейсы могут при этом быть реализованы па любых других языках програлгмирования и присоединены к
CORBA-приложениям. В рамках стандартов предполагается, чго CORBА-обьек- ть【могут коммуницировать с DCOM-объектами через спсцпалъпые CORBA- DCOM мосты (Bridges).
Технологии Java RMI п CORBA являются, по-нндпмому. на сегодняшний депь самммн гибкими п эффективными средствами реализации расирсделеипых приложений [Gopalan, 1999]. Эти технологии очепъ близки по своим характеристикам. Основным преимуществом CORBA является интерфейс IDL, унифицирую- 山]由 средства коммуникации между приложениями п пптсропсрабслыюст ь с другими прпложенпямн. С другой стороны, Java RM1 является более гибким и мощным средством создания распределенных npiuioxennii на платформе Java, включая возможность реализации мобильных прпложспиг!.
В настоящее время еще пс вполне ясно, какая из этих копиейmiii «победит» в борьбе за мультпагептные системы. Вмешаться в зтот процесс может и модель DCOM, активно «продвигаемая» компанией Microsoft. Но анализ существующих реализаций МАС показывает, что пока более распространенным здесь является подход Java RN11.
Вьпне кратко обсуждались вопросы стратегии программного обеспечения распределенных прпложеинп. Если же вернуться к проблематике МАС, то все программные средства для их разработки п реализации на современном этапе можно разделить на два больших класса: МАС- б п бл ноте к 11 и МАС-срсды. Впечатляющий список caiiTOB, где представлена информация о том и другом программном обеспечении, как из коммерческих, так м из нсследоватслнеких организации, представлен в Ингер пет по адресу http://www.reticular.com/-
Оставляя в стороне вопросы проектирования и реализации МАС-бпблпогск, которые, конечно, являются базисом для создания мультнагептиых ирпложешп!, но выходят за рамки данного издания, в оставшееся части настоящего параграфа мьт сосредоточимся па обсуждении Ш1итру\(еи171рия д.чя построения МАС. При этом пас будут интересовать, в первую очередь, модели, методь! и средства поддержки процессов проектирования агентов и мультиагеитных систем.
Одним из х'дачных примеров систем данного классг» является, па наш взгляд, нп- струмсптарИ11 AgcntBuildcr компашт Rcticidar Systems, Inc, [AgentBuiklor, 1999]— одного из лидеров в зтен」области, к обсуж/дению которого мм u nejiexoaiiM,
9-2.2. Инструментарий AgentBuilder
Инструмсптаргп! для построения МАС компании Reticular Systems, Inc. состоит пз двух компонентов: средств разработки (development tools) и окру》ксш1я перно- 口а исполнения (run-time execution environment). Первый компонент ориеитнро- ван на поддержку процессов анализа пр€71Метпон области создаваемой МАС п проектирование агентов с заданным поведением. Второй — обеспечивает эффективную среду для выполнения агентноориептнрованных программ. И тот и “ру- 『oii компоненты реалнзовапы на языке Java, что позволяет им работать па всех платформах, где ^остановлена Java-среда. Агентные программы, проект!грх^емые в рамках AgentBuilder, тоже являются Java-программами и могут исполняться на любом компьютере, где установлена виртуальная Java-машгша TVM ([ava virtual machine). ”
Общая схема процесса проектирования и реализации агентио-ориентилованных приложении на основе AgentBuilder ToolKit представлена на р器寸产 皿
Этот инстр^ментарнй имеет средства для организации и предметной области со- здавасАРН МАС, средства спецификации архитеюуры агенства и поведения
Тов, а также средства отладки агентных приложений и наблюдения за поведением созданных агентов.м
Модель «жизненного циклам агентов, разрабатываемых в рамках AgentBuilder представлена па рис. 92 Как следует из данной схемы, стандартный «жизненный цикл» агента включает следующие основные шаги:
обработка новых сообщении;
определение, какие правила поведения применимы в текущей ситуации;
выполнение де41ствнй, специфицированных этими правилами;
обновление мепталь))о]1 модели в соответствии с заданными правилами;
планирование.
Собственно меикилипяе люд ели (начальная и текущая) включают описания исходных (текущих) намерении, полагаппй, обязательств н возможностей, а также спсл11(|)11кацнп правил поведения.
Рис. 9.1. Технологическая схема процесса разработки агентно-ориентированных ,приложений на базе AgentBuilder ToolKit
Данная модель получила название Reticular Agent Mental Model (RAMM) и является развитием модели Шохама (Shohain) [Shoham, 1993], где все действия выполняются только как результат определенных обязательств. В рамках RAMM эта идея расширена до уровня обгцггх правил поведен ня, которые определяют причину де11ствия агента в каждо11 точке его функционирования. Прп этом правила поведения фиксируют множество возможных «откликов» агента на те- кущее состояние среды так, как это предписывается полаганнямн.
Для спецификации поведения агентов в системе AgentBuilder используется специальный объектно-орпентировапнын язык RADL (Reticular Agent Definition Language). Правила поведения в этом языке могут рассматриваться как конструкции вггда WHEN-IF-THEN. ”
WHEN-часть правила адресована новым событиям, возникающим в окружении агента и включает новые сообщения, полученные от других агентов.
IF-часть сравнивает текущую ментальную модель с условиями применимости правила. Образцы в lF-иастн работают на намерениях, полагаииях, обязательствах и возможностях, определенных в ментальной модели.
Рис. 9.2. Модель «жизненного цикла» агента в системе AgentBuilder
THEN-часть определяет действия в ответ на текущие события и состояния ментальной модели и внешнего окружения. Опи могут включать обновление мен- талыюй модели, коммуникативные и внутренние действия.
Общий формат правил поведения следующий:
NAME имя правила
WHENMessage Condition(s)
IF Mental Condition(s)
THENPrivate Action(s); Mental Change(s); Message Action(s)
Для иллюстрации возможностей этого языка рассмотрим пример правила «Двн- жеине-Вперед-На-Зелеиый-Свет^ из предметной области <Управление автомо* бнлем», взятый из руководства пользователя [AgentBuilder, 1999].
NAME "Greenlight Move Forward Rule"
WHEN
?KQMLMessage.Performative EQUALS TELL
9KQMLMessage.Sender EQUALS "stoplight-agent"
^KQMLMessage.Content EQUALS String
?KQMLMessage.Ontology EQUALS "Stoplight"
IF
?KOMLMessage.Content EQUALS "stoplight-green"
?KQMLMessage.Status EQUALS "stoppedAtRedLight" cur rentMot ion.Content EQUALS "stoplight-green" currentLocation EQUALS nextintersection
NOT(currentLocation EQUALS destination)
FOR_ALL (7Blockedlnrersection,
NOT(9BlockedIntersection.Location EQUALS currentLocation))
THEN
DO (Go(trafficspeed))
DO (Snextlntersection 二
getNextlntersection (currentLocation,
currentMotion.Direction))
ASSERT (SET_VALl)E_OF currentMotion. Status TO moving)
ASSERT (SET_VALUE_OF nextlntersection TO Snextlntersection)
SEND (performative = REPLY, receiver = "stoplight-agent", contenr 二"acknowledged".
in-reply-ro = 9KQMLMessage.Reply-with)
Как следует из данного примера, в языке RADL активно используются образцы, имеются достаточно развитые средства работы с переменными и представитель- Hbrii набор действии, включающий формирование перформативов языка KQML [Labrou et aL, 1997]. Структуры данных, на которых «работает» данный язык, являются, по существу, фреймами, а сами правила — суть продукции специального вида. Язык поддержан на инструментальном уровне системой специальных языково-ориентированных редакторов.
Спецификация поведения агентов и их ментальных моделей составляет спепи- альпый файл (agent definition file), который используется совместно с классами и методами из библиотеки действш'! агентов и библиотеки интерфейсов. Этот файл интерпретируется в рамках компонента Reticulars Run-Time Agent Engine, являющегося частью окружения периода исполнения AgentBuilder.
Оценивая подход к спецпфпкацпп моделей поведения агентов, используемый в AgentBuilder, можно констатировать, что в целом это серьезная система представления и манипулирования знапиямп. орпентпровапиая па описание моделей Т[)па RAMM. Вместе с тем в данной модели отсутствуют средства эксплицитного упрзвлення выводом, которыс могли бы сущсствешю увеличить функциональную мощность языка. Нет в модели【【средств явноН фиксаппп состояния агента, отличных от флагов н/плп значепи!! переменных. Не вполне ясно н то, как в спе- цпфикицпп моделей поведения могут быть учтены ризные, по одновременно сосуществующие «лпнпп поведения», нто характерно для дсйс гвптельпо и нт еллекту- альпых агентов. Не вполне обоснованным представляется и использование режима пнтерпретацгш для реализации поведения агентов.
Но в целом можно еще раз отметить, что гшструмеитарнп AgentBnilder является современным п мощным средством проектирования н реализации МАС.
9-2.3. Система Bee-gent
Инструментарий AgentBnilder. обсуждавшийся выше, базируется на концепции среды разработки, принятой в технологии прогргъммпровапия. Отличный от этого подход применяется в системе Bee-gent [Bee-gent, 1999]. Здесь для проектирования и реалпзацпп МАС используется специальная МАС-библнотека, реализованная на языке Java, а собственно технология, на наш взгляд, представлена методолоптеli сиецпфикацип поведения агентов распределенной системы. При этом в систтеме Bce-gent пснользуется миожестио базовых агентов (generic agents), среди которых можно выде/шть упаковщшсп (agent: wnippers) и медиаторы (mediation agents).
Поведение всей системы, направленное на достижение определенных ue/ieii, базируется па спецификации «бссса» (message exchanges) через протоколы взаимодействия (interaction protocols).
Такие протоколы представляются специальными графами (рис. 9.3). основными понятиями которых являются состояния (states) и переходы (transitions). При этом переходы, по сути дела, лишь сцсцвфшшруют смещение ^фокуса» в следую- 1Иее состояние с помощью специальных правил перехода, а ядро формализма составляют состояния. Имсшю здесь проверяются предусловия перемещения в следующее состояние и в случае их з^овлетворспия выполняются действия, в основе которых оомен XML/ACL сообщениями. Возможны правила, результатом выполнения которых является выбор следующего состояния из множества подходящих. “
Как и ооычно в таких случаях, в качестве базиса сообщении декларируется ис- иолкзоиаппе теории речевых актов [Austin, 1965; Scade, 1985]. О диако в случае Bee-gent для этого используется специальный язык ACL, разработаппьп! па осно- вс KQML [Labгон et al.. 1997], Пптерссио здесь то, что логическая структура ACL- выражений представляется в форм^чнзме XML [XML, 1998]. Поэтому язык опи- сання поведения агентов в Bcc-gent называется XML/ACL Основное отличие его от, "“пример, “знка RADL в том, что в XML/ACL введены перформативы представления iiaMepennii (intentions), а также средства спецификации потоков раз-
всртьикншя беседы (conversation flows). Вместе с тем в языке спецификации по ведения агентов системы Bee-gent нет правил, определяющих, в каких случаях какие перформативы должны использоваться. И, следовательно, нет типовых сценариев дналовв. Пример перформатива в формализме XML/ACL приведен ниже:
<!DOCTYPE request SYSTEM " request.dtd">
< request>
<sender>Mediation Agent</sender>
<receiver>Agent Wrapper</receiver>
<content>
<action>actK/acrion>
<actor>Agent VJrapper</actor>
<args>null</args>
〈/content〉
<protocol>Request-inform</protocol>
<reply-with>MSG-ID: 1<//reply-with>
<ontology>default</ontoiogy>
</requesr>
Рис. 9.3. Общая структура протоколов взаимодеиствия
в системе Bee-gent
Как следует нз данного примера, для спецпфпкиции псрформа швов используется сПСТема специальных тегов, что хорошо коррелирует с предложениями FIPA ло созданию языка SKDL (Structured Knowledge Description Language) [SKDL, 1.998] Вместе с тем реализация поведения агентов лежит на специальной системе Java-классов и практически никак не связана с внешним представлением перформативов в языке XML/ACL.
для иллюстрации подхода Bee-gent к описанию поведения агентов рассмотрим модельную задачу брокера [Bee-gent, 1999], обслуживающего потенциального покупателя, которbiii находит продавца определенного товара, обсуждает с ним цены и информирует покупателя о возможиых вариантах покупки.
Контрактная сеть верхнего уровня для данной задачи представлена па рнс. 94
Рис. 9.4. Контрактная сеть верхнего уровня для задачи брокера
С точки зрения системы представления знанн】」AgentBuilder, она наиболее блпз- ка к спецификации агентства (Agency). Однако в данном случае, ио нашему мне- нню, в контрактной сети Bee-gent более детально спещ{фицируются ис только типм взаимодействи!! между агентами в агентстве, по и нх реализация.
Сооственпо спецификацию поведения агентов в системе Bce-gent можно проил^ люстрировать на примере протокола в з a J i модс и ст в и я для продав ц:1, показанного на рис. 9.5
Такая спецификация достаточно прозрачна и в дол ол и и тел ьп ых комментариях не нуждается. Позтому, на наш взгляд, интереснее рассмотреть, как реализуется поведение агента в формализме системы Bee-gent.
Sorry, Refuse,Sorry, Refuse,Propose,Propose,
Sorry, Refuse,
Sorry, Refuse,
Propose,
Propose,
рис. 9.5. Граф протокола взаимодействия для поведения продавца
Собственно инициация агента здесь осуществляется стандарным для Java-при- ложсшн! образом:
import com.Toshiba,beegent, *;
import com.Toshiba,beegent. xml. *;
import com.ioshiba,beegenl,util. ;
public class AW2 extends AgentWrapper {
public static void main (Stringf] argv) throws Exception { AW2 aw = new AW2(): aw.setName ("bidder"): aw,printLog (true):
aw.set Password ("kawamura");
aw,addPublicIPStates (): aw.startIP ();
Каждое состояние в протоколе взаимодействия является экземпляром класса AwrlPState, фрагмент описания которого приведен ниже.
class AwrIPStatel extends AwrIPState {
AwrIPStateSI () { super ("INIT"); }
public void action () {
XmlAcl xa = null;
while ( waitXML (0) ){
xa = getXML ();
perf = xa,getTag2Value (-performative");
sender = xa.getTag2Value ("sendeг );
action 二 xa.getTag2Value ( action );
if (pert.equals ("cfp")) break;
// Send XML/ACL
int rand н new Random (System ,CLirrentT].meMillis()).nextInt ();
int dice = Math.abs (rand) % 3;
switch (dice) {
case 0: // generate Refuse performative setPostcond f'lNIT");
break;
default:
setPostcond ("INIT");
return:
if ( !sendXML (xa))
Debug.printLog (getMyname (), "Failed to send XML/ACL");
Наиболее интересны и важны здесь «петля» ожидгшия сообщений и оператор switch, в теле которого собственно и специфицируется поведение как последовательность действий, направленных в данном случае на формирование соответ- ствующего перформатива. '
Анализ этого фрагмента и других примеров реализации пове〃еш【9 агентов в системе Вес-gent позволяет сделать следующие выводы. Агентная библиотека фирмы Toshiba является достаточно развитой и отвечает основным требованиям к компонентам программного обеспечения данного класса, Пе])формативы XML/ ACL более высокого, по сравиешпо с KQML, уровня. Для спецификации протоколов взаимодействия предлагается использовать язык программировгшия, а не представления знаннА, На уровне технологии имеется достаточно четкая структура представления поведения агентов. Учитывая то, что языком реализации поведения в данном случае является Java, система Bee-gent ориентирована на компиляцию программ, а не интерпретацию спецификаций, как это происходит в случае системы AgentBuilcler.
Выше мы обсудили два подхода к разработке и реализации МАС, которые отражают разные концы спектра инструментов, используемых в этой области.
Суммируя все вышесказанное, можно отметить, что в настоящее время в работах п。созлаиию инструментария йвно фиксируется тенденция использования методов и средств ИИ, ориентированных на поддержку процессов проектирования программных агентов и МАС в целом.
При этом задача построения технологий нового поколения для создания МАС может быть решена на основе совместного использования опыта разработчиков МАС и методологий обработки знаний, заимствованных из ИИ [Guarino et aln 1995b], Для этого прежде всего необходимо адаптировать методы и средства проектирования и реализации прикладных интеллектуальных систем в новую проблемную область: разработку мультиагентных систем нового поколения.
Очевидно, что спецификация процесса разработки МАС на основе методов цро- сктировапия баз зпаиип в такой технологии предполагает:
эксплицитное представление в БЗ архитектуры проектируемой МАС;
явную спеш1ф1П<ацн1о архитектуры отдельных типов агентов, «задействованных» в рамках проектируемой МАС;
описание в вii/ie специальных баз знаний модели (схемы) всех знаний, необходимых каждому агенту для реализации поставленных перед ним целей;
анализ используемых в настоящее время при реализации МАС систем классов п соответствующих программных библиотек с целью явной спецификации соответствия между элементами архитектуры проектируемой МАС и ее компонентами н програмMiibiMii единицами, реализующими их;
(формальную С11еш1(|л1кашпо (на уровне соответствующей системы представления п манипулирования знаниями) специальной машины вывода (решателя), целью которой является переход от спецификации МАС к ее реализации.
Учитывая вышесказанное, можно констатировать, что процесс разраоотки МАС при этом хорошо коррелирует с соответствующим процессом создания сложных программных систем, но отличается дополнительными фазами, связанным» с наличием независимых компонентов (агентов), взаимодействующих с пользователем и друг с другом.
По существу, при таком подходе мы получаем специалнзироваин}гю экспертную систему, предметной областью которой является автоматизация проектирования н регишзации определенного класса мультиагентных систем. Создание такой ме- тодолопш разработки МАС обсуждается, например, в раооте [Iglesias et. all, 1996} где приводится, в частности, спецификация процесса разраоотки МАС на базе CoinmonKADS,
9-3. Информационный поиск
в среде Интернет
По-впдпмому, не будет большим преувел([чсиием утвержденпе о том, что конец XX века — это время гговых lшфop^{aцlюllныx технологий, «живущих» в гло
бальнмх и локальных сетях, наиболее яркими представителями которых являйся Интернет н интранет. В настоящее время уже ин У кого пет сомнений в том, чт0 Интернет является 加 facto всемирным хранилищем информации практически по всем аспектам жизни человечества, Так же как и то, что з^фектнвпвй доступ к это11 ин巾ормацпи в связи с экспоненциальным ростом объема Интер- пет-рссурсов становится все более сложным ir т])удоемкпм [Cowie et al., 1996]. 廿 не столько с техническо!! точки зрения, сколько с точки зрения поиска и анализа информации.
С другой стороны, как уже отмечалось в предыдущем параграфе, важнейшими из областей практического использования агентных технологий являются сбор информации, ее фильтрация и использование для принятия решений.
Учитывая вышесказанное, цель данного параграфа и обсуждении проблем представления н обработки шк])ормаиш1 н сети Интернет на основе использования парадигмы многоагентных систем, а также обзор уже существующих в этой o6jri- сти приложений.
Авторы отдают себе отчет, что при этом за рамками такого обсуждения остаются многие важные применения агентных технологи!!, по вынуждены ог])аш1читься данной тсматпко!! в силу ограничении на объем данного издания и время cio подготовки,
Машины поиска
Пространство WWW уже сегодня содержит огромное количество I1TML-доку- ментов, причем не только тексты, по н графику, видео, звук и i\ д. Гипертекстовые связи между Wcb-;xoKVMciriaMii и/илп их частями отражают отношения между отдельными информационным и (фрагментами, ирсд(:тав;|еш1ымп в сети. Броузеры, поддерживающие HTML-ccaiwapThi, о беспсчи и a io т 11()с дста влеш i с материалов пользователям и навигацию ио есы」кам для дост^'па к документам, распределенным по сети, Однако поиск i】ik])c])nhuhh в настоящее время поддержан cyuiecTBeiiiio слабее и в большинстве случаев базируется на использовании ключевых слов и ограниченного числа типов машин поиска,
Машины поиска, по-видимому, являются н Интернете саммм распространенным и доступным ресурсом для извлечения пп([)ормацШ1. При этом, как правп;ю, используются два типа сетевых роботов: спайдеры (spiders) и индексы (indexes). Спайдеры, иногда называемые также ботами (bots, от робот-robots), иеремеща- ются по Web от сайта к сайту. Некоторые из и их перемещаются от сервера к сер- веру беспорядочно, друпю иснользуют приоритеты, такие, например, как посе- таемость caiha Оказавшись па сайте, спайдер посылает oi чет поисковой машине и продолжает индексирование. Индексы используются для ускорения поиска и сбора пнформашш. Некоторые поисковые механизмы индексируют со- держание страниц полностью, другие — только отдельные их части, такие, например, как заголовки документов.
Основными характеристиками машин поиска являются язык запросов пользова- теля, представление исходных и выходных документов, время индексации и по-
иска, объем индекса. Существенной характеристикой машин поиска является также качество представления результатов. Наиболее популярные поисковые машины в настоящее время - AltaVista (http://www^luvista.com и/или http: //altavista.ru), Exite (http://www.excite.com), Infoseek (http://www.infoseek com), Lycos (http://www.Iycos.com), WebCrawler (http://www.webcrawler. com), Yahoo! (http://www.yahoo.com) и некоторые другие. Примером полнотекстовой системы поиска с учетом морфологии русского языка является система Hndex (http://www.yandex.ru). Сравнительный анализ достоинств и недостатков машин поиска можно найти в работе [CompTek, 2000aj, а русскоязычных машин поиска — в работе [CompTek, 2000b].
Как правило, поисковые машины обеспечивают интерфейс типа меню, с помощью которого пользователь может скомпоновать запрос на поиск информации, используя ключевые слова и/или фразы и логические связки И-ИЛИ-НЕ. Боль* шииство машин поиска находят огромное количество ^релевантных» страниц по запросу пользователя. Каждый найденный документ обычно ранжируется по степени его корреляции с запросом. Релевантность каждого документа оценивается с помощью различных технологий, например учета частоты появления на странице искомых слов. Некоторые поисковые механизмы используют дополни- TCJiiiiio другие факторы, такие как частота посещения страницы и/»ли близость расположения друг к другу искомых терминов.
Типичную организацию машин поиска можно рассмотреть на примере системы WebCrawler (рис. 9.6), рмработапноИ в университете Вашингтон (Сиэтл, США).
Рис. 96 Общая архитектура системы WebCrawler
WebCrawler начинает процесс поиска новых саГгтов с известных ему документов и переходит по ссылкам па другие страницы. Он рассматривает сетевое пространство как ориентированны!! граф п использует алгоритм обхода графа, раоотая в следующем цикле [Cheong, 1996];
найти noBbiii документ;
отметить документ как извлеченный;
расшифровать ссылки с этого документа;
проиндексировать содержание документа.
Поисковьп'! механизм работает в двух режимах: поиск документов в реальном времени и индексирование документов.
Зтнм сервисом определяется, какие документы п какие типы документов нужно на^тн и извлечь из сети. Звуковые файлы, картинки, двоичные файлы нт. п. 一 не извлекаются. Ошибочно извлеченные файлы будут проигнорированы на ста- дии индексирования. В режиме индексирования система строит индекс инфор- маинн из найденных документов, в режиме поиска - находит документы, максимально соответствующие запросу пользователя.
Агенты в системе \УеЬСга\у1еготвечают за извлечение документов из сети. Для выполнения этой работы поисковый механизм находит свободного агента н передает еМу задание на поиск. Агент приступает к работе и возвращает либо содержание документа, либо объяснение, почему данный документ нельзя доставить, Агенты запускаются как отдельные процессы, что позволяет изолироват!» основной процесс работы системы от ошибок н проблем с памятью, Одновременно используется до 15 агентов,
В базе данных хранятся метаданные документов, связи между док)^ментамн, полнотекстовый индекс, другая служебная информация. Ваза обновляется каждьн! раз, когда поступает новы!! документ. Для отсечения ccMaiiTiiMcciui исннгсшмых слов используется стоп-словарь. словам из документа приписывается вес, равный частоте их появления в данном тексте, деленной па частоту появления слова в ссылках на другие документы. Taicoii индекс позволяет быстро находить по за~ данному слову ссылки па документы его содержащие. Целиком URL (ссылки на документы в сети) не запоминаются. Вместо этого вся нужная ши^ормация помещается в специальные объекты. Каждый объект запоминается в о тлел ыюм В- дереве: документы — в одном, серверы — в другом, а ссыл к и — в t])cti)cm. Такое разделение данных позволяет быстро определить не11сиользусм1)1с или часто используемые серверы.
Аналогичным образом устроены л другие машшгы поиска. Характеризуя их в целом, можно отметить, что это глобальные поисковые механизмы, охватыпаюнше До 90 % ресурсов Интернета, Они нс могут настраиваться на предиочтеипя пользователя и не имеют средств анализа 1пк[)ормации( а их сетсчилм роботам становится все труднее справляться с постоянным ростом ресурсов Интернета. Глгизно!! за.&а- ueii машин поиска, ио сути, является индексация ресурсов i\no6;uiiiiioii сети, а также поддержка и расширение соответствующих баз данных. Фактически в базах данных машин поиска хранится информация о том, где и что лежит о сети. По:)то- му можно считать, что существующие маншин поиска обеспечивают шикоуров- HCBbiii сервис для клиентских поисковых программ более высокого уровня.
9.3.2- Неспециализированные и специализированные поисковые агенты
Первым уровнем надстройки над поисковыми машинами являются, по-видимо- му, иеспециализированные поисковые агенты. По сути дела, эти компоненты имеются в настоящее время практически у всех машин поиска. Такие агенты, в
первую очередь, обеспечивают поиск по ключевым словам и устойчивнцсш^ сочетаниям [Delgado, 2000], Кроме поиска они поддерживают различные^ ?^ гочислеиные сервисы, такие, например, как передача запроса нользовэтеля сразу на множество машин поиска, настройка на личные предпочтения пользователя; формирование тематической базы данных на основе результатов поиска нола>з<^ вателя, а некоторые - и обучение агентов. Не менее важно и то, что такие сисгеий агентов объединяют ссылки на сайты, найденные множеством мшбни поиска, исключая повторные и неработающие ссылки. Но ии одна из систем данного класса не в состоянии самостоятельно отобрать полезную информащцо иосШ- ляет это пользователю. Конечно, используя такие программы, можно уменьшить
число результирующих документов, доставляемых обычными машинами поис
ка. Но степень «попадания ответа в запрос» Практически та же, что и у машин поиска. Важно и то, что неспециализированные агенты опыта по поиску вопре* де.-|сшюй предметной области не накапливают. А обучение, если вообще допус
кается, занимает много времени.
Специализированные агенты поиска, как следует уже из их названия, приспособлены искать ипформгщию, например, только про музыку, или только про книги, или только про котировки aicmiii н т. д. Большинство таких агентов устроено жестко. Они «умеют>? очень хорошо работать на определенных сайтах с фиксиро- ваннмм форматом данных. При этом даже адреса этих сайтов могут быть <заши- ты» в агента, например caiinn с котировками акций на биржах мира.
Системы, построенное на базе специализированных агентов, кроме поиска предоставляют пользователям определенный пакет средств для организации и управления наеденной информацией. Как правило, такие системы содержат набор агентов, каждый из которых ориентирован на поиск информапин только по од- uoii теме. Они могут 1[.меть доступ к сотням ресурсов Интернета, включая специализированные базы нанньм Основные специализации агентов в таких системах в настоящее время — новости, конференции и группы по интересам, книги, программное обеспечение, электронные магазины и другая бизнес-информация, часто задаваемые вопросы и некоторые другие. Обычно пользователь здесь может сформировать запрос к системе, используя естественный язык, а результаты сопровождаются аннотациями содержания найденных'документов, списками ключевых слов и некоторой upyroii дополнительной информацией, облегчающей пользователю выделение интересующих его ресурсов.
В развитых системах этого класса имеются возможности:
сохранения параметров поиска для повторного использования, а часто н полной «истории» запросов пользователя;
параллельного поиска па множестве ресурсов Интернета;
оформления результатов в виде отчетов (HTML-файлов) и сохранения “х в базе данных;
слежеппя за обновлением информационных ресурсов Интернета, в том числе с
частотой, задаваемой пользователем.
Недостатки у специализированных агентов те же, что и у неспециализированных, ио есть п серьезный плюс — четкое срабатывание на хорошо структурированных данных в известном формате.
Системы интеллектуальных поисковых агентов
Сегодня в развитии систем поиска и обработки Интернет-ресурсов наметился ЯВ11ЫП сдвиг в сторону использования средств ИИ, в частности представления 311аний и вывода на знаниях, интеллектуальных механизмов обучения, анализа естественно-языковых текстов и некоторых других.
Как правило, системы интеллектуального поиска разрабатываются либо в серьезных фирмах, владеющих технологиями разработки и реализации интеллектуальных агентов, либо в исследовательских лабораториях университетов. Справедливости ради следует заметить, что коммерческие версии таких систем часто декларируют больше, чем реализовано в действительности, а исследовательские разработки обычно существуют в виде демонстрационных версий с ограниченными возможностями, хотя в теоретическом плане последние интереснее,
Для конкретизации дальнейшего изложения остановимся сначала более подробно на нескольких, интересных на наш взгляд, коммерческих системах интеллектуального поиска и обработки информации в сети Интернет, а завершим обсуждение рассмотрением нескольких исследовательских проектов в этой области, использующих онтологии.
Autonomy и Webcompass — системы интеллектуального поиска и обработки информации
Обсуждаемые ниже версии агентных поисковых систем Autonomy [Autonomy, 1998] и Webcompass [Wcbcompass, 1999] созданы во второй половине 90-х годов. Цели их разработки практически одинаковые — обеспечить пользователя интегрированными средствами поиска релевантной его интересам информации в сети Интернет, организация найденных документов в рамках определенных тем, а также автоматизация процессов самого поиска. Вместе с тем проектные решения, принятые разработчиками, здесь существенно разные.
Первое различие между этими снстсмамн в ориентации на разные категории пользователей.
Система Autonomy представляет собой совокупность программных агентов для интеллектуального поиска н обработки информации, организованных в рамках специализированной оболочки, предназначен ной скорее для конечных пользо- вателей, чем предметных специалистов, Такая установка влечет за собой специальную opi7iini3aiuiio интерфейсов, интуитивно понятную и прозрачную для по- вичков. По сути, 11()льзоватс;1к)здесь предлагается парадигма ^антропоморфного»
общения со всеми компонентами системы точно сложных задач (рис. 97).общения со всеми компонентами системы точно сложных задач (рис. 97).и «игровоЛ» подход к решеншЬ доста-и «игровоЛ» подход к решеншЬ доста-Рис. 9.7. Главная панель системы AutonomyРис. 9.7. Главная панель системы Autonomy
общения со всеми компонентами системы точно сложных задач (рис. 97).
общения со всеми компонентами системы точно сложных задач (рис. 97).
и «игровоЛ» подход к решеншЬ доста-
и «игровоЛ» подход к решеншЬ доста-
Рис. 9.7. Главная панель системы Autonomy
Рис. 9.7. Главная панель системы Autonomy
Система Webcompass архитектурно тоже состоит из агентно-ориентированных
компонентов, поддерживающих все основные процессы, которые должны бьпъ реализованы в полномасииабпом программном комплексе поиска и анализа информации. Но ориентирована эта система, прежде всего, на «продвинутых» пользователей, которые хотят и А【огут сформировать структурное описание области своих интересов. Коммуникационный центр Webcompass (рис. 9.8) предлагает пользователю парадигму многооконного интерфейса, характерную для современных офисных приложений, н систему структурным редакторов для спецификации предметной области, поисковых запросов и управляющей информации,
Второе различие Aiежду системами Autonomy н Webcompass — в подходе к описанию предметной области поиска,
В первых версиях системы Autonomy использовалась технолопш нейросетей и специальный метод представления, разработанный для фирмы AgentWare (так тогда называлась фирма, выпустившая релиз системы Autonomy) коллективом Neuroclynamics из Кембриджа. В основе технологии лежат методы распознавания образов н обработки сигналов. При этом системой формируется представление о том, какими должны быть релевантные документы, используемые в дальнейшем на этапе поиска информации.
В системе Webcompass описание предметной области основано на использовании таксономии понятии, связанных между собоЛ отношениями типа is л, part of, has part, is a kind of н некоторых других. Ограничением такого представления является то, что между понятиями не может быть больше одного отношения.
父 J WiKM<MiJ父 J WiKM<MiJ:;QdiiiiciSTieSgeriCe ;«bguiM:;QdiiiiciSTieSgeriCe ;«bguiMА рЫ d *£cW H 日“ence 曰今 А цксАс M 匕 soert 时stem :薄9 5ее&оЬ>ср*Вап*пЕ К: 6 A 軍ecAc krd is Nsm /всоу*Ьоп >6 A ipecilic krd и robotc* 兩 $ Has »t皿胃 3 出zty Itj ф HMpvtkncUdgerepreiem^ion 启今 Hat pirt 弊Jd Ьп»да aocsmgА рЫ d *£cW H 日“ence 曰今 А цксАс M 匕 soert 时stem :薄9 5ее&оЬ>ср*Вап*пЕ К: 6 A 軍ecAc krd is Nsm /всоу*Ьоп >6 A ipecilic krd и robotc* 兩 $ Has »t皿胃 3 出zty Itj ф HMpvtkncUdgerepreiem^ion 启今 Hat pirt 弊Jd Ьп»да aocsmgк 3ftчю!Мюп№ кцрмМкз;к 3ftчю!Мюп№ кцрмМкз;WcbCump-4iWcbCump-4iHE3QHE3Q.t世为.t世为a suWeW of ccx*<xj(ei toence concw . the ecience d lvvJ*gea suWeW of ccx*<xj(ei toence concw . the ecience d lvvJ*ge公◊公◊r .. |?L I「T :Г“,"Ur:# 1!]:r .. |?L I「T :Г“,"Ur:# 1!]::岩 6 5м ^ n«t^ langudpe:岩 6 5м ^ n«t^ langudpeHas pat neural ndwuk See akoSl&AHrHas pat neural ndwuk See akoSl&AHr>1>1T"七 О^гуТепш:T"七 О^гуТепш:
父 J WiKM<MiJ
父 J WiKM<MiJ
:;QdiiiiciSTieSgeriCe ;«bguiM
:;QdiiiiciSTieSgeriCe ;«bguiM
А рЫ d *£cW H 日“ence 曰今 А цксАс M 匕 soert 时stem :薄9 5ее&оЬ>ср*Вап*пЕ К: 6 A 軍ecAc krd is Nsm /всоу*Ьоп >6 A ipecilic krd и robotc* 兩 $ Has »t皿胃 3 出zty Itj ф HMpvtkncUdgerepreiem^ion 启今 Hat pirt 弊Jd Ьп»да aocsmg
А рЫ d *£cW H 日“ence 曰今 А цксАс M 匕 soert 时stem :薄9 5ее&оЬ>ср*Вап*пЕ К: 6 A 軍ecAc krd is Nsm /всоу*Ьоп >6 A ipecilic krd и robotc* 兩 $ Has »t皿胃 3 出zty Itj ф HMpvtkncUdgerepreiem^ion 启今 Hat pirt 弊Jd Ьп»да aocsmg
к 3ftчю!Мюп№ кцрмМкз;
к 3ftчю!Мюп№ кцрмМкз;
WcbCump-4i
WcbCump-4i
HE3Q
HE3Q
.t世为
.t世为
a suWeW of ccx*<xj(ei toence concw . the ecience d lvvJ*ge
a suWeW of ccx*<xj(ei toence concw . the ecience d lvvJ*ge
公◊
公◊
r .. |?L I「T :Г“,"Ur:# 1!]:
r .. |?L I「T :Г“,"Ur:# 1!]:
:岩 6 5м ^ n«t^ langudpe
:岩 6 5м ^ n«t^ langudpe
Has pat neural ndwuk See akoSl&AHr
Has pat neural ndwuk See akoSl&AHr
>1
>1
T"七 О^гуТепш:
T"七 О^гуТепш:
ссцфи1айоп«1 Im^rticf
cotE^uiaiiaQAllinguicuci, campuUrlinguisUceJ&ngUBge data proceeding
DyflxHhuith» tppHcbbon 0【imp!«nefl^U帅 of Lingublic theory by computers
Ciyvp Otnad
Рис. 9.8. Коммуникационный центр системы Webcompass
Третье различие между обсуждаемыми системами состоит в используемых средствах спецификации запросов.
В системе Autonomy запрос на поиск представляется на естественном языке. Система анализирует текст автоматически и извлекает из него смысловое содержание, которое помещается в специальный конфигурацпоиныii(|);ii'ui. При этом внутреннее представление запроса тоже представляется neiipoceTbio, в узлах которой располагаются юиочевые слова н выражения.
Запрос к системе Webcoinpass базируется на «прямом» использовании с(]юрмп- рован но го пользователем описания предметной области. Поскольку здесь такое описание представлено таксоиомпс!! понятий (ключевые слова п выражения), то для формирования запроса достаточно просто промаркировать интересующие пользователя темы. На основании этих пометок система сама формирует запрос на поиск релевантной информации,
Собственно поиск релевантной информации в системе Autonomy ведется с использованием методов нечеткой логики. В основе поискового алгоритмгг лежит «Механизм динамических рассуждении» (МДР), разработанimiii уже упоминавшимся коллективом Neuroclynamics. Базовые функции МДР — сравнение коп- цептов (по входному тексту определяются сснлкн на документы нз заранее составленного списка с наиболее релевантной информацией для поиска); создан нс агента (формируются концепты из треинровоч ного текста и из других подходя- щнх источников для использования их агентом); стандартный поиск слов в тексте.
Поиск в системе Webcompass ведется на основе ключевых слов.
шествляется сразу на 35 машинах поиска, которые задаются списком. 3W^ 杳 сок можно изменять, а кроме того, добавить адреса для поиска в и№фаш^ Usenet, FTP и Gopher ресурсах. Система проверяет каждую найденную ссылку на доступность и, анализируя найденную информацию, составляет jcp^n^e /二
зюме документов, а также определяет степень соответствия сайта здлросу пользователя, ранжируя найденные документы от 1 до 100.
Остальные функциональные возможности рассматриваемых систем ооорее сяо^‘
ны, чем различны. Это формирование репозиториев результатов, |шличиефоШ^ вого режима поиска информации и некоторые другие.
Из интересных особенностей системы Autonomy, отсутствующих в систре W^> compass в явном виде, можно отметить режим обучения поисковых агентов.
Оценивая рассмотренные выше системы и класс агентных систем данного типа можно отметить их следующие достоинства:
возможность просто]! модификации используемых машин поиска;
использование словарей терминов для обработки запросов;
создание кратких аннотаций найденных документов;
поддержка настраиваемых баз данных но темам поиска н результатам;
к.']асс1к|)пцг1ка1шя результатов поиска по темам, запоминание и автоматическое обновление ссылок на источники;
пснользоваппс результатов поиска для ул^шенпя его качества в той же области В б\'ЛуШСМ.
Недостатком таких систем является, как правило, слабая обучаемость агентов. Поэтому такие системы являются полезными инструментами при поиске информации в Инге pi готе, по не могут сделать этот поиск полностью автомашческим и эффективным с точки зрения пользователя.
Справедливости ради отметим, что в последнее время фирмы, выпускавшие системы Auronomy н Webcoin pass, рассмотренные выше, а также многие .ipynie фирмы, работающие па рынке пнформацпомных технологий, активно используют последние наработки в mroii области, полученные в исследовательских лабораториях и проектах, связанных с проблематикой искусственного интеллекта.
Учитывая вышесказанное, ceiiqac на авансцену развития агентных технолошй вообще и использования их при поиске информации в частности выходят проблемы представления знаний, механизмы вывода новых знаний, описание моде1и мира, моделирование рассуждений в рамках агентного подхода. По существу, именно эти аспекты н япляются ключевыми при создании нителлектл^альных систем поиска информации в сети Интернет в разных 11 сслед овательских проектах, к обсуждению которых мы и переходим.
Проект системы MARRI
Система M/XRRI [Villemiii, 1999] разрботана для поиска Web-страниц, релевантных запросам в определенно!! предметной области. Для решения поставленных
задай система использует знания, представленные в виде онтологии, которая в данном случае понимается как множество концептов и связей между ними. Ба- знсное предположение разработчиков состоит в том, что релевантные тексты со- стоят из значимых для предметной области предложений, содержащих фрагмен- тн, «сопоставимые» с онтологией предметной области. Предполагается, что одни агенты — агенты сети — для предварительного отбора используют стандартные машины поиска, а другие 一 специализированные агемты 一 осуществляют поверхностный анализ полученных Web-страниц, затем проверяют их на соответствие так называемому онтологическому тесту и возвращают пользователю лишь те страницы, которые успешно прошли данный тест.
Суть онтологического теста состоит в следующем. Сначала осуществляется морфологический и синтаксический анализ предложений полученного от агентов сети текста и строится его синтаксическое дерево; затем осуществляется определение типа предложения (утвердительное, отрицательное и т. п.) и тип речевого акта, который это предложение отражает. Для дальнейшего анализа выбираются только простые утвердительные предложения со структурой NP VP NP, где NP — именная группа, a VP — глагольная группа. При этом неявно предполагается, что структура знаний о предметной области отражена в структуре предложении, описывающих концепты. Поэтому, если анализируемое предложение действительно описывает некоторый концепт, значимые для предметной области слова уже присутствуют в онтологии.
С учетом всего вышесказанного, онтологический тест выполняется следующим образом:
суи(ествительные (или, в общем случае, именные группы) отображаются на концепты онтологии, а глаголы (или, в общем случае, глагольные группы)— на роли;
в глагольной группе выделяется для дальнейшей обработки ochobhoii глагол (V). Если он отсутствует в онтологии, тест возвращает «неудачу», иначе:
в левой «верхней» имешюй группе выделяется базисное существ 11 те л ьиое (N). Еслн оно отсутствует в онтологии, тест возвращает «неудачу», иначе:
проверяется ограничение (семантическое отношение) S между N и V. При этом возможны следующие варианты:
N н V действительно связаны отношением S, которое представлено в онтологии;
в онтологии отношением S связаны существительное N' н глагол V, причем N' является подоассом N, а V — подклассом V;
если же предыдущие два варианта не имеют места, тест возвращает «неудачу»;
аналогичная процедура выполняется и для правой «верхней» именной группы.
Таким образом, онтологический тест в случае успеха поволяет «наложить» анализируемый текст на онтологию предметной области.
Архитектурно система MARRI (рис. 9.9) является сетью специализированных агентов четырех типов: агент пользователя (User Agent), агент-брокер (Broker Agent), агент сети (Connection Agent) и агент обработки текста (Text Processing Agent). Кэждый из агентов обладает следующими свойствами:
это автономная Java-программа с собственным сетевым адресом (URL);
он взаимодействует с другими агентами с помощью языка ACL (Agent Communication Language), функционирующего над HTTP-протоколом;
агент является потребителем и поставщиком информации, в зависимости от того, с какнмн агентами системы он общается;
он может взаимодействовать с автономными программными компонентами — такими как, например, Web-броузеры, анализаторы ЕЯ или онтологические БД;
агент обладает специальными знаниями н возможностями вывода для определения того, доступна ли нужная Web-страница, содержит ли она текстовую информацию и релевантна ли эта информация определенной предметной области.
Рис. 9.9. Архитектура системы MARRIРис. 9.9. Архитектура системы MARRI
Рис. 9.9. Архитектура системы MARRI
Рис. 9.9. Архитектура системы MARRI
сети (АС) является подключение к заданной URL Web-странице,I анализ. В силу того, что нужная страница может быть недоступнасети (АС) является подключение к заданной URL Web-странице,I анализ. В силу того, что нужная страница может быть недоступнаИнтерфеГ1сны|Ч агент (ИА) поддерживает интеллектуальное взапмодеиствие с пользователем. Он ассистирует при формулировке запросов и представляет результаты поиска в виде списка релевантных URL пли Web-странпц. Когда пользователь выбирает интересующую его предметную область. ИА запрашивает соответствующую онтологию из онтологической БД, а также ннформир\ ет др\пга агентов сети о том, какая онтология будет использоваться.
сети (АС) является подключение к заданной URL Web-странице,I анализ. В силу того, что нужная страница может быть недоступна
сети (АС) является подключение к заданной URL Web-странице,I анализ. В силу того, что нужная страница может быть недоступна
Задачей агента ее считывание 1
ичи неинтересна по содержанию, АС должен «уметь» обрабатывать исключн- тельнь1с ситуации, а также анализировать собственно текст, представленный на счггтапной странице.
В системе MARRI заденствовапы два тина агентов-брокеров: брокер URL н бро- кер НТМL. Первые предназначены для ^сопровождения» списков Интернет-адресов поставляемых броузером, а вторые — для запомиийпмя полученных Web- страниц и распределения их между агентами обработки текста (АОТ) для дальнейшего аиа.аиза.
Целью функционирования АОТ является семаптическ1Г11 анализ Web-страниц для проверки их релевантности на базе соответствующе1Г °нт°тю门 1н. Предва])н- Телыю эти же агенты преобразуют HTML-текст к опрсделегшому структурному представлению, с которым работают морфологический и синтаксически!! анализаторы. Результат обработки текста представляется в виде синтаксического дерева, которое должно отождествиться с определенным фрагментом используе- Moii онтологии.
С архнтект)гриой точки зрения система MARRI, ио сегодняшним меркам, является почти традиционной. Ее отличительная черта — нрсдставлслис агентов ав- тономнымн Java-nporpaMMaNni с собственными сетевыми адресами, что неявно предполагает их мобильность н/млн распределенность по сети. Такое решение было бы весьма интересным, если бы ие политика контроля за безопасностью сервера, которая не допускает в настоящее время регистрацию н зап^тк Java-программ, не сертифицированных па данном сервере,
Прототип системы рса/шзован па языке Java (версия 1.1.3). Для тестирования его разработаны две (очень грубых) оито/югип — одна в области электронно!! коммерции (около 200 элементов), а вторая — и области 1J н тс р 11 е т - безопа с ности клиентских приложений (около 450 элементов)- Предполагается развитие этих oiiTOJoruii и интеграция их с соответствующими онтологиями, уже существующими па онтологических серверах.
Прототип системы OntoSeek
Разработка и реализация прототипа системы « с оде рж а тс л ь и ого» доступа к WWW-ресурсам OntoSeek — результат 2-лотпей работы, выполнеино!) в коопс- ра【иш Corinto (Consorzio di Ricerca Nazionale Tecnologia Oggetti — National Re- search Consortiam tor Object Technology) и Lachcb-CNR (National Research Council — Institute of Systems Science and Biomedical Engineering), как части про- скта по поиску н гювторпОхМу нсполъзовапшо программных компонентов [Gua- rino, et al., 1999],
Система OntoSeek pan работа ла для содержательного извлеченпя информации из доступных в режиме on-line «желтых» страниц (yellow pages) и каталогов. В рам- ках системы совместно используются механизмы поиска по содержанию, управляемые соответствующе!! оптологней (ontology-driven content-matching mecha- nisrn), 11 достаточно мощный формализм представления.
При создании OntoSeek были приняты следующие проектные решения:
использование ограниченного числа ЕЯ-терминов для точного описания ре
сурсов на фазе кодирования;к
【【о川 1ая ^терминологическая свобода» в запросах за счет управляемого онтологией семантического отображения их на описания ресурсов;
интерактивное ассистирование пользователю в процессе формулировки запроса, его обобщения н/нлн конкретизации, а также приняты во внимание:
текущее состояние исследований в области Иитернет-архитектур;
необходимость достижения высокой точности и приемлемой эффективности на больших массивах данных;
важность хорошей масштабируемости и портабельиости принимаемых ре- luciiiiii.
Система работает как с гомогенными, так и с гетерогенными каталогами продуктов. Понятно, что вюрой вариант сложнее. Поэтому в системе OntoSeek для представления запросов п описания ресурсов используется модификация простых копцс[|туа?1Ы1ых графов Дж. Совы [Sowa, 1984], которые обладают существенно более мощными выразительными возможностями и гибкостью по сравнению с обычно пспо;1ьзуемымп списками типа «атрибут-значение». Для концептуальных графов проблема контекстного отождествления редуцируется до управляемого онтологией поиска в графе. При этом уз』ь【н дуги сопоставимы, если онтология ^показынаст», что мсжд)г ними существует заданное отношение. Вместе с тем, гк)ск(ь'1[л<у система базируется на использовании лингвистической онтологии, узлы 1с()111[скт\'алы1ого графа должны быть привязаны к соответствующим лексическим единицам, причем для этого должны выполняться определенные семанти- чс'скпе ограничения.
На этапе планирования проекта вместо разработки собственной лингвистичес- ко" опто;югш1 были проанализированы доступные Иитернет-ресурсы и выбрана ОИТО/1ОГПЯ Sensns [Knight et al., 1994|, которая обладает простой таксоном»- uccKoii структурой, имеет объем около 50 000 узлов, в основном выделенных из тезауруса \\7ordNct [Beckwith et al., 1990], а также доступна для исследовательских целcii в свободном режиме
Функциональная структура системы OntoSeek представлена на рис. 9.10.
На фазе коднропаппя описание ресурсов конвертируется в концептуа_льный граф. Для зтого ^поверхностные* уз/iы п дунь отмеченные пользователем, с помощью лексического интерфейса трансформируются в смыслы, заданные в словаре, Таким образом, «граф снов» транслирз^ется в «граф смыслов», причем каж- дом\г понятию последнего сопоставляется соответствующий узел онтологии. IIосле ссмаптнческо11 Всьтидацин концеi[туального графа на основе использования онтологии он запоминается в БД.
С^Попь зо ват^^)
Интернет
Наиболее интересным моментом этапа кодирования ресурсов в системе Onto- Seek является формализм представления помеченных концептуальных графов (ПКГ), который базируется на том, что заданы словари су 1цествителы 1ых н глаголов, а собственно ПКГ определяется как связный ориентированный граф, удовлетворяющий следующим стгнтакспческмм ограничениям:
Дуги могут быть помечены только существительными из словаря (любой граф, содержащий му「у, помеченную транзитивной конструкцией вида [<URLl>man] т (love) —> [women], может быть конвертирован в базисный ПКГ вида [<URLl>man] J (agent) ― [love] —> (patient) —> [women]).
В общем случае узлы помечаются строками вида concept [instance], где concept существительное или глагол из словаря, а необязательная ссыл к a: instance —управляющий идентификатор.
Для каждого графа существует в точности один узел, называемый «головой». Этот узел маркируется URL в угловых скобках, и де 11ti 1 фицирующим файл описания ресурса, который описывает данный граф, и маркерной строки, представляющей понятие онтологии.
Понятно, что прежде, чем использовать этот граф, должна быть устранена полн- семня, что может позволить однозначно отразить существующие метки в поня-
тня онтологии. После выполнения этой процедуры семантическая интерпретация ПКГ происходит следующим образом:产 产
каждь巾 узел, помеченный «словом» Л, представляет класс экземпляров соответствующего концепта. При наличии в описании идентификатора экземпля- Ра Узел определяет синглетон, содержащий этот экземпляр. Если Л - глагол, узел фиксирует его номинализацию (например, узел с пометкой《love» оггре- деляет класс событий «любить»);
каждая дуга с пометкой Сиз узла А в узел В определяет соответствующее непустое отношение;
в целом граф с «головой» А и URL U определяют класс экземпляров Л, описываемых ресурсом, помеченным U.
Процесс поиска осуществляется следующим образом. Пользователь представляет свой запрос тоже в виде концептуального графа, который после устранения лексическо!! неоднозначности и семантической валидации передается компоненте отождествления, работающей с БД. Здесь ищутся графы, удовлетворяющие запросу и ограничениям, заданным в онтологии, после чего ответ представляется пользователю в виде HTML-отчета.
Семантика графа запроса и процедура его построения аналогичны рассмотренной выше процедуре кодирования ресурсов, но имеет следующие отличия:
на месте URL может быть задана переменная;
переменными может быть помечено произвольное число узлов.
Так, например, запрос вида [<Х> саг] —> (part) т [radio] вернет множество URL на документы, описывающие автомобили с радиоприемниками в качестве части, а запрос вида [саг] —> (part) т [<Х> radio] — множество URL па документы, опн- сываюише ралюприемиик как часть автомобиля. И более того, композиция этих запросов вида [<Х> саг] т (part) т [<Y> radio] может быть использована для получения документов обоих типов.
Таким образом, предполагается, что граф запроса Q отождествляется с графом описания ресурса R, если:
Q изоморфен подграфу графа А;
пометки графа R соответствуют пометкам графа Q;
^голова» графа R соответствует узлу, помеченному переменной в графе Q. Последнее условие необходимо, если мы хотим «сосредоточиться» на ресурсах, соответствующих запросу в точности.
Реализация системы OntoSeek выполнена в парадигме «клиент-сервера. Архитектурным ядром ее является сервер онтологий, обеспечивающий для приложений интерфеГкы доступа и/нлн манипулирования данными модели онтологии, а также поддержки БД концептуальных графов. Заметим, что последняя может строиться и пополняться не только в интерактивном режиме, ио н за счет скомпилированных описаний ПКГ, представленных на языке XML Компонента БД в системе OntoSeek выделена в отдельныii блок, что позволяет легко заменить при необходимости используемую СУБД.
Проект начался зимой 1996 г. 一 на заре эры языка Java. Поэтому прототип был реализован на языке C++. В настоящее время авторы предполагают провести реинжиниринг системы на основе исиользовапля новейших Иитерист-тсхнологий. Таким образом, iiciiолызонапие оптолопп! для интеллектуюниюй работы с Ицтср- нст-ресурсамп является в настоящее время «горячо]!» точкой исследований и практических примененш"|.
Спешны нотам в это!! области хорошо известны Иитсрпст-сайты организаций и проектов, связанных с созданием и использованием oirrojioniii, по даже у них при выборе онтологии, «подходящего для конкретного приложения, возникают определенные проблемы. Основные из них: отсутствие стандартного набора свойств, характеринующпх онтологию с точки зрения се пользователя; ушнсгыьиость ло- гическог! структуры и роде га плени я релевантно!! информации па каждом «онтологическом» caiiTc: высокая трудоемкость поиска иодхолящсй ohtojioi hil
Учитывая вышесказанное, в заключение данного паргпрафа рассмотрим пример интеллектуального агента, которwii демоистрпрусч' онтологически!! подход к поиску па Web и ньюору для нсио-И/ювання собстпснпо oirrtvioniii.
(ONTO)2 — агент поиска и выбора онтологий
Целью разработки интеллектуального WWW-броксра ш>|бора оцтологпГг на Web [Vega ct al., 1999] было решение проблемы ассистирования нрн пыборс оптоло- 门lii, Для этого noTpcooiuijiocb сформировать перечень снонств, которые иозполя- ют охарактерпзопать оп го/юппо с точки зрения се будущего пользователя и предложить едпиую логическую структуру соотвстствуголшх oiincaHHii; [)а:(работать cncniKLribiiyio ссылочную онтологию (Reference On Со logy), н 网:” ках которой представлены описания существующих па Web oirrojioniii; pca/ii;3()iaiTi> интеллектуального агента (ONTO)2, использующего ссылочную oirr(j;i()riiю в качестве источника Biiaiinii для поиска олтолопп!, удовлетворяющих виданному множеству orpanirieiiuii.
Д-^я решения nepneii и:< перечнеуюниых задач автора (ONTO)' детально нроана- лпзпров;иш онтологии, iipc/icTau/feiiiibic на Web, и построили таксономию cBoiicTB, iiciio/u/j^^Mbix для описания оптологш! (таил. 9,2). Для удобства даль- iiciiniero использования псе свойства сгругпшрогишы н категории пдентпфпка- ипп, описания и (функциональности.
Как слсдусг n:i iipiiiic,iciiii(}ji таксономлп, H;ieimi(|)uiGimiH даст информацию об онтологии, кпк таковой, ее разработчиках и дистрибьюторах; онисаинс — общую ипформацшо, aiiiioiamno oirro/iornn, некоторые дстгиш проектирования и реали- зацни, трсоалаиия к аппарату[)е и программному обеспсчсппю, цеповые характеристики и перечень применений;(|)yiiKnnoiiajii>iiocTi)— представление о том, как использовать онтологию в приложениях.
При решении задачи разработки ссылочной онтологии авторы (ONTO)2 исполь- ;м““ЕШ1 уже обсуждавшуюся выше технологию METHONTOLOGY и инструмен- rapiiii ODE [Blazquez et al., 1998]. При этом, в соответствии с общими тенденциям11 ИО созданию разделяемых онтологий и, по-видимому, в силу того, что один из авторов обсуждаемой работы (Gomez-Perez) является провайдер-агентом международного проекта по построению разделяемых баз знаний [Benjamins et al., 1998|, Reference Ontology была «имплаитироваиа* в онтологию Product инициа- -гпны (КА)2.
В качестве источников знаний для построения ссылочной онтологии была ш> muibaciGuu уже обсуждашиаяся таксономия свойств, концептуальная модель (КА)? и свойства, иыдслсппые в рамках разработки онтолопш исследователъсюк тем (Research-Topic) иннцпатпвы (КА)2. Критерии, которые применялись при нмплантицнн ссылочной онтологии в онтологию (КА)2, — следующие:
модульное гь (онтология должна была быть модульной, чтобы обеспечить гиб- kcctl и различные варианты использования);
специализация (концепты определялись таким образом, чтобы обеспечить их |<.-1ассл(])нкац1ио нс общим свойствам и гарантировать наследование таких cHoiicrii);
разнообр^ли.1(31КНН1Я представлялись в онтологии таким образом, чтобы нс~ пользован) преимущества множественного наследования и облегчить добав- /кчпк: новых концептов);
минимизация семантических расстояний (аналогичные концепты группиро- ни 'шсь и представлялись как подклассы одного класса на базе одних и тех же прнмигпвон):
макс имизация связе|"| между таксономиями;
с га||д;1]Угизацня имей (везде, где это было возможно, для именования отпоше- niiii I ici lo/i ь:ю вал асъ кон кате нация имен концептов, которые пмн связыва- лнсь).
Анализ концептуально!! модели (КА)2 онтологии с точки зрения перечисленных выпк? крп гернен и ccbMOMiioii онтологии показал, что:
некоторые важные классы()тсутств}чот (например, классы Server п Languages, которые должны быть подклассами класса Computer-Support в онтологии Pro- duel);
некоторые нижиыс отношсиия опущены (например, отношение Distributcd-b\ между iioiDiTHMMii продукта и органцзацип);
некогорые важные свойства не представлены (например, Research-Topic Web pages, Type-ol-Ontology и некоторые другие).
352
Птава 9 ・ Интеллектуальнее Интернет-технологни
Лаблица 9.2. Таксономия свойств, используемых для описания онтологий
Основные характеристики
Идентификация
Онтологии
Имя, сайт-серввр, сайт-зеркало, Web-страницы, доступность FAQ, ЕЯ-описание, дата окончания разработки
Разработчиков
ФИО, Web-страниць!, e-mail, контактное лицо, телефон, факс, почтовый адрес
Дистрибьюторов
ФИО, Web-страницы, e-mail, контактное лицо, телефон, факс, почтовый адрес
Описание
Общая информация
Тип онтологии; предметная область; назначение; онтологические обязательства; список концептов верхнего уровня; статус реализации; наличие on-line и «бумажной» документации
Обзорная информация
Количество концептов, представляющих
классы; количество концептов, представляющих экземпляры; количествоаксиом; количество отношений; количество функций; количество классов концептов на первом, втором и третьем уровнях; количество классов на листьях; среднее значение фактора ветвления; среднее значение фактора глубины; максимальная глубина
Информация о проектировании
Методология разработки; формальный уровень методологии; подход к разработке; уровень формализации спецификации; типы источников знаний; достоверность источников знаний; техники приобретения знаний; формализм; список онтологий, с которыми осуществлена интеграция; перечень языков, в рамках которыхдоступна онтология
Требования ценовые
К аппаратуре; программному обеспечению
цена; стоимость сопровождения; оценка характеристики стоимости необходимой аппаратуры; оценка
стоимости необходимого программного обеспечения
Использование
Количество приложений; список основных приложений
Функциональность
Описание использованных инструментальных средств; качество документации; обучающие курсы; online помощь; руководства по использованию; возможность модульного использования; возможность добавления новых знаний
Поэтому 6uui проведен реинжиниринг (КА)2 онтологии, который позволил рас- шнрнть ее новыми концептами, отношениями и свойствами, с одной стороны, и специализировать уже представленные знания таким образом, чтобы использо- вать их для сравнения различных онтологий.
Для реализации интеллектуальных WWW-брокеров поиска онтологий была предложена архитектура OntoAgent, представленная на рнс. 9.11.
Брокер построения модели предметной области
WWW-брокер поиска модели
Рис. 9.11. Архитектура OntoAgent
В рамках данной архитектуры выделяются брокер построения модели предметной области (Domain Model Builder Broker) и WWW-б рокер поиска модели (WWW Domain Model Retrieval Broker).
Первый из них ориентирован на формирование концептуальной структуры онтологий, которые будут в поле зрения будущей экспертизы. Этот модуль включает:
Коллекционера онтологической информации (Ontology Information Collector) —ХУХУХУ-интерфейс. ориентированный на сбор информации от распределенных по сети агентов (программных агентов и собственно пользователей).
Концепту ал изатора экземпляров (An Instance Conceptualizer) — преобразователь данных от WWWiштерфеiiса в экземпляр онтологии, специфицированный на уровне формализма представления знаний.
Транслятор запросов (A Query Translator) - преобразователя запроса в представление, совместимое с языком реализации онтологии.
Машину вывода (An Inference Engine) - блок поиска ответа па запрос.
Формирователя ответов (An Answer Builder) - компоненту, которая служит для представления информации, наГщешюи машиной вывода.
По сути дела, рассмотренные выше компоненты составляют технологию построе- ния WWW-брокеров для поиска информации на основе онтологий. А примером ее использования является иителлекту^ьный (ONTO)2 агент. Его брокер пост- рОеиия модели предметной области работает'со ссылочной онтологией, а входной запрос строится как соответствующая HTML-форма. Брокер поиска ответов реализован в настоящее время как Java-апплет и как автономное Java-npiiJjo>KeiiHe. Результаты поиска онтологий, удовлетворяющих запросу, возвращаются пользователю в виде HTML-формы.
Оценивая представленный подход в целом, можно отметить, что он хорошо коррелирует по своим идеям н целям с уже обсуждавшейся системой Ontobroker. Однако в случае (ONTO)2 агента для хранения формализаций онтологий используется база данных, а для поиска — стандартные средства на основе SQL. Самостоятельную ценность данного проекта представляет ссылочная онтология, которая может использоваться не только для целей поиска, но и для стапдартлзации описаний онтологий вообще.
Все вышесказанное показывает, что использование агентов и особенно интеллектуальных агентов при сборе, поиске и анализе информации имеет ряд преимуществ, основные из которых сводятся к следующему [Pagina Н., 1996]:
они могут обеспечить пользователю доступ ко всем Интернет-сервисам и сетевым протоколам;
отдельный агент может быть занят одной или несколькими задачами параллельно;
преимущества агентов в том, что они могут осуществлять поиск по заданию пользователя после его опслючения от сети;
мобильность (если она присутствует) позволяет агентам искать информацию сразу на сервере, что увеличивает скорость к точность поиска, уменьшая за- грузку сети;
0HHMогут создавать собственную базу информационных ресурсов, которая обновляется и расширяется с каждым поиском;
возможность агентов сотрудничать друг с другом позволяет использовать накопленный опыт;
агенты могут использовать модель пользователя для корректировки и уточнения запросов;
°нм могут адаптироваться под предпочтения и желания пользователя и, изу- чив мх,искать полезную информацию заранее;
агенты способны искать информацию, учитывая контекст. Они могут вывести этот контекст из запроса, например построив модель мира пользователя;
агенты могут искать информацию интеллектуально, например используя словари, тезаурусы и онтологии, а также средства вывода релевантной информации, не представленной явно ни в запросе, ни в найденных документах.
Именно поэтому с применением и развитием агентных технологий иа основе методов и средств искусственного интеллекта связываются самые серьезные перспективы перехода от пространств данных к пространствам знаний в глобальных и локальных сетях.
Заключение
Итак, уважаемый читатель, вы завершаете чтение книги по базам знаний интеллектуальных систем. Авторы отдают себе отчет в том, что за ее рамками остались целые континенты планеты Искусственный Интеллект, которые еще ждут своих исследователей, толкователей, методистов и, конечно, читателей. Но дорогу осилит идущий... И, наверное, именно это, а также понимание, что в дангтый момент в нашей стране практически нет литературы, которая не то чтобы закрыла тему, но хотя бы зафиксировала полученные в одном из ее важнейших разделов результаты, подвигло нас на работу по }[аписанию этой книги.
Материал данного учебника показывает, что в настоящее время в области баз знаний интеллектуальных систем уже имеется серьезный теоретический базис, существует достаточно широкий спектр соответствующих методов и технологий разработки. Многие из них поддержаны адекватным программным инструментарием. И основная цель авторов была в том, чтобы сделать эту информацию достоянием читателей. Понятно, что в силу многих причин, в частности ограничений на объем издания, дать полномасштабное и логически замкнутое описание теории, методов проектирования н средств реализации баз знаний, а также соответствующих систем, основанных на знаниях, в одной книге практически невозможно. Отчасти поэтому список рекомендованной литературы у нас значительно шире, чем это обычно бывает в учебниках. Кроме того, в списке литературы достаточно много ссылок на релевантные тематике Интер нет-ресурсы, что, по нашему мнению, должно привить читателю вкус к самостоятельному плаванию в океанах уже (или еще) доступной в сети информации.
Вместе с тем, авторы надеются, что читатели этой книги не будут воспринимать представленные в ней материалы как истину в последней инстанции, но будут относиться к ним творчески, а иногда и критически. Ведь не секрет, что для построения и использования баз знаний, на которых основываются современные интеллектуальные системы, требуются исследовательские коллективы, работающие вместе долго и имеющие опыт разработки такого рода систем. Для получения действительно хороших результатов необходимы дорогостоящие людские и материальные ресурсы — специалисты, лицензионные инструмента- рни, документация. Кроме того, разработка их достаточно трудоемкий (годы) и дорогостоящий (десятки, если не сотни тыс. долларов) процесс. Вот почему в настоящее время действующие интеллектуальные системы ориентированы в основном на поддержку работы постояшю работающих групп пользователей для
достаточно специализированных задач. Следует отметить и то, что в настоящее время почти нет действительно интеллектуальных систем, удобных для работы широкого круга пользователей в сети Интернет.
Такнм образом, разработка теории, методов н технологий представления н ис- пользования знаний остается актуальной задачей для дальнейшего развития ин・ теллектуальных систем. Особую актуальность, по нашему мнению, приобретают на современном этапе развития науки и общества в целом Интернет-ориентиро- ваннме технологии н распределенный искусственный интеллект. Уже сейчас ясно, что применение систем, основанных на знаниях, компонентом которых являются, например, онтологии, а реализация базируется на мультиагентных технологиях, должно привести к рассмотрению и использованию Всемирной паутины как организованного и структурированного пространства знаний.
И в заключение, авторы надеются, что их собственный скромный вклад в методологию, технологию и программные средства создания баз знаний, также отраженный в данной книге, позволит мол од нм специалистам в области искусственного интеллекта пойтм дальше по тернистому пути это)1 молодой науки, которой так хочется стать индустрией!
Литература
Агеев В. Н., 1994. Примеры гипертекстовых и гипермедиа систем (обзор) // Компьютерные технологии в высшем образовании: Сб. статей. М.: Изд-во МГУ. С. 225-229.
Аверкин А. Н., Батыршин И. 3., Блишуи А. Ф., Си лов В. Б., Тарасов В. Б., 1986. Нечеткие множества в моделях управления п искусственного интеллекта // Под ред. Д. А. Доспелова. М.: Наука.
Алахвердов В. М., 1986. Когнитивные стили в контурах процесса познания. Когнитивные стили // Под ред. В. Колги. —Таллинн. С. 12-23.
Александров Е. А., 1975. Основы теории эвристических решений. М.: Наука.
Алексеева И. А., Воинов А. В., Сейся и А. Р., Эткннд А. М., 1989. Психосемантическая реконструкция картины мира подростков, употреблявших токсические вещества // Сб. Конструктивная психология — новое направление развития психологической науки. Под ред. А. Г. Копытова. Красноярский гос. уи-т.
С. 36-41.
Алексеевская М. А., Нед оступ А. В., 1988. Диагностические игры в медицин- ских задачах. Вопросы кибернетики // Задачи медицинской диагностики н прогнозирования с точки зрения прача. № 112. С. 128-139.
Ам амия М., Танака Ю., 1993. Архитектура ЭВМ и ИИ. М.: Мир.
Аиастази А., 1982. Психологическое тестироваине. Т. 1. М. С, 96-162.
Андриенко Г. Л., Андриепко Н. В., 1992. Игровые процедуры сопоставления в инженерии знаний // Сборннк трудов III конференции по искусствен ному интеллекту. Тверь. С. 93-96.
Аншаков О. М., Скворцов Д. П., Фи ин Д. К., 1986. Логические средства экс- пертных систем типа ДСМ // Семиотика и информатика. Вып. 28. С. 5-15.
Апресян Ю. Д., 1977. Экспериментальное исследование семантики русского язы ка. М.: Наука.
Апресян Ю.Д., 1974. Лексическая сегмантика. Семиотические средства языка. М.: Наука.
Арбиб М., 1975. Алгебраическая теория автоматов. М.: Статистика.
Аткинсон Р., 1980. Человеческая память и процесс обучения // Пер. с англ. М.: Прогресс.
Б ай дун В. В., Бунни А. И,, 1990. Средства представления и обработки знаний в системе FRL/PS // Всесоюзная конференция по искусствен и ому интеллекту: тез. до1<л. Т. 1. Минск. С. 66-71.
Бахтин М. М., 1975. Вопросы литературы и эстетики: Исследования разных лет. М.: Художественная литература.
Белпап Н., Стил Т., 1981. Логика вопросов и ответов. М.: Прогресс.
Берков В. Ф„ 1972. Вопрос как форма мысли. Минск, Изд-во БГУ,
Берн Э., 1988. Игры, в которые играют люди. Люди, которые играют в игры// Пер. с англ. М,: Прогресс.
Бойкачев К. К., Конева И. Г., Новик И. 3., 1994. «Сценарий* - инструмент визуальной разработки компьютерных программ // Компьютерные технологи и в высшем образовании: Сб. статей. М.: Изд-во МГУ. С. 167-178.
Борисов А. Н., Федоров И. П., Архипов И. Ф., 1991. Приобретение знаний для интеллектуальных систем. Рижский технический университет.
Борисова Н. В., Соловьева А. А. и др., 1988. Деловая игра «Методика конструирования деловой игры». М.: ИПКИР.
Брунер Дж., 1971. Исследование развития познавательной деятельности // Пер. с англ. М.: Педагогика.
Бурков В. И. и др., 1980. Деловые игры в принятии управленческих решений. М.: МИСИС.
Брукс Ф. П., 1979. Как проектируются и создаются программные комплексы. Мифически|1 человеко-месяц: очерки по системному программированию. М.: Наука.
Буч Г.. 1992. Объектно-ориентированное проектирование с примерами применения. М.: Колкорд.
Всккер Л. М., 1976. Психические процессы // В 3-х томах. Т. 2. Л.: ЛГУ.
Велниковскн" Б. М., 1982. Современная когнитивная психология. М.: МГУ.
Всличковский Б. М., Капица М. С., 1987. Психологические проблемы нзуче- пня интеллекта // Интеллектуальные процессы и их моделирование, М.: Наука. С. 120-141.
Вертгеймер М., 1987. Продуктивное мышление // Пер с нем. М.: Прогресс.
Внпер H.f 1958. Кибернетика или управление и связь в животном и машине. М,: Сов. радио.
Виноград Т., 1976. Программа, понимающая естественный язык // Пер. с англ. М.: Мир.
Воинов А., Гаврилова Т., 1994. Инженерия знаний н психосемантика: Об одном подходе к выявлению глубинных знаний // Известия РАН Техническая кибернетика. № 5. С. 5-13
Волков А. М., Ломнев В.С., 1989. Классификация способов пзв-чечения опыта экспертов // Известия АН СССР. Техническая кибернетика. № 5. С. 34-45.
Вольфенгаген В. Э., Воскресенская О. В., Горбанев Ю. Г., 1979. Система представления знаний с использованием семантических сетей // Вопросы ки р- иетики: Интеллектуальные банки данных. М.: АН СССР. С. 49-69.
wa Гаипнллва Т А. 1984. Представление знаний в экспертной диагностической системе АВТАНТЕСТ // Изв. АН СССР. Техническая кибернетика. № 5. С. 165-173.
Гаврилова Т. А., 1988. Как стать инженером по знаниям // Доклад на Всесо: юзной конференции по искусственному интеллекту. М.. В14НИТИ. С. 332- 338.
Гаврилова Т. А., Минко в л С. П., Карапетян Г. С., 1988. Экспертные системы для оценки качества деятельности летного состава // Тез. докладов научно- практической школы-семинара «Программное обеспечение и индустриальная технология интеллектуализаци и разработки и применения ЭВМ». — Ростов н/Д, ВНИИПС. С. 23-25.
Гаврилова Т. А.. Червинская К. Р., Яшин А. М., 1988. Формирование поля знаний на примере психодиагностики // Техническая кибернетика. № 5. С. 72-85.
Гаврилова Т. А., 1989. От поля знаний к базе знаний через формализацию // Статья в сб. «Представление знаний в экспертных системах». Л.: ЛИИАН. С. 16-24.
Гаврилова Т. А., 1989. Подготовка коллектива разработчиков экспертной системы // Доклад на школе-семинаре «Проблемы применения ЭС в народном хозяйстве». Кишинев. С. 59-62.
Гаврилова Т. А., Тишкин А. И., Золотарев А. Ю., 1989. МИКРО ЛЮШЕР: экспертная система интерпретации данных // Доклад на школе-семинаре «Проблемы применения ЭС в народном хозяйстве». Кишинев. С. 17-23.
Гаврилова Т. А., Красовская М. Р., 1991, О концептуальном анализе знаний при разработке экспертных систем // Доклад на Всесоюзной научно-практической конференции «Гибридные интеллектуальные системы^. Ростов н/Д. С. 110-113.
Гаврилова Т. А., 1922. Спецификация знаний через структурирование: введение в САКЕ-технологию // Сборник трудов Ш конференции по искусственному интеллекту. Т. 2. Тверь. С. 113-116.
Гаврилова Т. А., Червинская К, Р., 1992. Извлечение и структурирование зна* ний для экспертных систем. М.: Радио и связь.
Гаврилова Т. А., 1995. Объектно-структурная методология концептуального анализа знаний и технология автоматизированного проектирования баз зна- нн" // Труды Междунар, конф. «Знания — диалог-решение 95». Т. 1. Ялта.
Гаврилова Т. А., Котова Е. Е., Писарев А. С., 1999. Активные схемы как инстру- мент семантического анализа //Трудн международного семинара «ДИАЛОГ 99». Таруса. С. 26-27.
Гаврилова Т. А., Лещева И. А., 1999. ВИКОНТ: Визуальный Конструктор ОНТологий для структурирования семантической информации // Труды Первой Всероссийской научной конференции «Электронные библиотеки: перспективные методы и технологии, электронные коллекции». СПб. С. 97-98.
Гаек П., Гавранек Т., 1983. Автоматическое образование гипотез: математические основы общей теории // Пер. с англ. М.: Наука.'
Гельфанд И. И., Розенфельд Б. И., Шифрин М. А. Структурная организация данных в задачах медицинской диагностики н прогнозирования // Вопросы кибернетики. Задачи медицинской диагностики и прогнозирования с точки зрения врача. М.: АН СССР. С. 5-64.
Гиг Дж., ван., 1981. Прикладная общая теория систем // В 2-х кн. М.: Мир.
Гинкул Г. П., 1989. Игровой подход к приобретению знаний и его реализация в системе КАПРИЗ // Проблемы применения экспертных систем в народном хозяйстве: тез. докл. респ, школы-семинара. Кишинев. С.71-74.
Гладун В. П., 1994. Процессы формирования новых знаний. София.
Глушков В. М” 1964. Введение в кибернетику. Киев; Издательство АН УССР.
Гордон Д., 1987. Терапевтические метафоры // Личная рукопись М. М. Кагана.
Горелов И. Н., 1987. Разговор с компьютером. М.: Наука.
Городецки1( В. И., Грушинский М. С., Хабалов А.В., 1988. Многоагентные системы (обзор) // Новости искусственного интеллекта. № 2.
Грисуолд Р., Поудж Дж., Полонски И., 1980. Язык программирования СНО- БОЛ-4. М.: Мир.
Гусакова С. М., Финн В. К., 1987. Сходства и правдоподобный вывод // Известия АН СССР. Техническая кибернетика. № 5. С. 42-63.
ДэГгвнсон, 1988. Многомерное цжалнрованне. Методы наглядного представления данных. 一 М/. Финансы и статистика.
Дюран Б., Оделл П., 1977. Юастерный ан1ыиз // Пер. с франц. М.: Статистика.
Епифанов М. Е., 1984. Индуктивное обобщение в ассоциативных сетях // Известия АН СССР. Техническая кибернетика. № 5. С. 132-146.
Жннкнн Н. И., 1982. Речь как проводник информации. М.: Наука.
Заде Л., 1972. Лингвистическая переменная. М.: Физматгиз.
Зарипов Р. X.. 1983, Машинный пешек вариантов при моделировании творческого процесса. М.: Наука.
Зенкни А. А., 1991. Основы когшгтпвнон компьютерной графики. М.: Наука
Иберла К., 1980.①акторньЕ анализ // Пер. с нем. М.: Статистика.
Иванов П.И., 1986. Влияние некоторых индивидуально-психологических особенностей на процесс обобщения // Автореферат дне. канд. психол. наук. М.
Ивахненко Г. И., 1971. Системы эвристической самоорганизации в технической кибернетике. Киев, TexiiiKa.
Йодан Э., 1979. Структурное проецирование и конструирование программ // Пер. с англ. М.: Мир.
Каган М. С.. 1988. Мир общения: проблема межсубъектных отношений. М.: Политиздат.
Капица П. Л., 1967. Приглашение к спору // Юность. — № L С. 79—82.
Келасьев В. И., 1984. Структурная модель мышления. Л.: ЛГУ.
Кирсанов Б. С., Попов Э. В„ 1990. Отечественные оболочки экспертных систем // Справочник по искусственному интеллекту. Т. 1 М.: Радио и связь. С. 369-388.
Климов Анд. В., Романенко С. А., 1987. Система программирования РЕФАЛ-2 для ЕС ЭВМ. Описание входного языка // Препринт ИПМ АН СССР. М.
Ковригин О.В., Перфильев К. Г., 1988. Гибридные средства представления знаний в системе СПЭИС // Всесоюзная конференция по искусственному интеллекту: тез. докл. Т. 2. Переславль-Залесский. С. 490-494.
Комаров В. Ф., 1989. Управленческие имитационные игры. Новосибирск: Наука.
Коов М. И., Мацкин М. Б., Тыугу Э.Х., 1988. Интеграция концептуальных и экспертных знаний в САПР // Известия АН СССР. Техническая кибернетика. № 5. С. 108-118.
Коршунов А. М., Манталов В. В., 1988. Диалектика социального познания. М.: Политиздат.
Кузичева 3. А., 1987. Языки науки, языки логики, естественные языки // Логика научного познания. Актуальные проблемы. М.: Наука. С. 57-73.
Кузнецов В. Е., 1989. Представление в ЭВМ неформальыых процедур. М.: Наука.
Кук Н. М., Макдональд Дж., 1986. Формальная методология приобретения и представления экспертных знаний // ТИИЭР. Т. 74, № 10. С.145-155.
Кулюткин IO. И., Сухобская Г. С., 1971. Индивидуальные различия в мыслительной деятельности взрослых учащихся. М.: Педагогика.
Лазарева Т. К., Пашпнин Н. Д., 1987. Деловые имитационные игры в экспертных системах // Деловые игры и их программное обеспечение: тез. докл. Пущино. С. 63-64.
Ларичев О. И., Мечитов А. И., Мошкович Е. И., Фуремс Е. М., 1989. Выявление экспертных знаний. М.: Наука.
Лимантов Ф. С., 1971. О природе вопроса // Вопрос. Мнение. Человек. Уч. записки ЛГПИ им. Герцена. Т. 497. С. 4-20.
Липаев В. В., Серебровский Л. А., Галаганов П. Г. и др., 1983. Технология про- ектированпя комплексов программ АСУ. М.: Радио и связь.
Лунева О. В., Хорошилова Е. А., 1987. Психология делового общения М.: ВКШ при ЦК ВЛКСМ.
Любич Д. Л., 1998. 1000 афоризмов. СПб:, Издательство Буковского.
МакалистерДж., 1990. Искусственный интеллект и ПРОЛОГна микроЭВМ.
М.: Машиностроение.
9L Мальковский М. Г., 1985. Диалог с системой искусственного интеллекта. М • МГУ.”
Мартынов В. В., 1977. Универсальный семантический код. Минск Наука и техника.'
Маслов С. Ю., 1986. Теория дедуктивных систем и ее применение. М.: Радио и связь.
Материалисты древней Греции, 1955. Собрание текстов Гераклита, Демо1фита и Эпикура.: М.; Политиздат.
Мельчук И. А., 1974. Опыт теории лингвистических моделей <Смысл-Текст>. Семантика, синтаксис. М.: Наука.
Месарович М., Такахара Я., 1978. Общая теория систем: математические основы. М.: Мир.
Микулич Л. И., 1990. Промышленная технология создания систем, основанных на заниях // В сб.: Экспертные системы на персональных компьютерах. М.: МДНТП им. Ф. Э. Дзержинского.
Миллс X., 1970. Программирование больших систем по принципу сверху вниз // В книге: Средства отладки больших систем. М.: Статистика.
Мински!! М.: 1979. Фреймы для представления знаний. М.: Энергия.
Минич II. П., 1987. Как проводить деловые беседы. М.: Экономика.
Моисеев Н. Н., 1981. Математические задачи системного анализа. М.: Наука.
Молокова О. С., 1992. Методология анализа предметных знаний // Новости искусственного интеллекта. № 3. С. 11-60.
Молокова О. С., Уварова Т. Г., 1989. База знаний для разработчиков экспертных систем // Тез. 口оклада Всесоюзного научно-технического семинара «Программное обеспечение новых информационных технологии». Калинин. С. 23-28.
Моргоев В. К., 1988. Метод структурирования и извлечения экспертных знаний: имитация консультаций. Человеко-машинные процедуры принятия решений. М.: ВНИИСИ. С. 44-57.
Немов Р.С., 1984. Социально-психологический анализ эффективной деятельности коллектива. М.: Педагогика.
Николов С. А. и др„ 1990. Анализ состояния и тенденции развития н吵орма- тнки. Проблемы создания экспертных систем // Исследовательскии отчет. Под ред. С. А. Николова. София: Интерпрограмма.
Норенков И. П., 1986. Введение в автоматизированное проектирование технических устройств и систем. М.: Высшая школа.
Нортон П., Станек У., 1998. Программирование на Java // В 2-х кн. СКПресс.
Ноэль Э„ 1978. Массовые опросы // Пер. с нем. М.: Прогресс.
Обозов И. И., 1986. Психологическая культура взаимных отношений. М,: Знание.
окунь Я., 1974. Факторный анализ. М.: Статистика.
Орехов А. И., 1985. Формирование приемов эффективного решения творческих задач // Автореферат дне. канн пенхол. наук. М.
ИЗ. Орлик С., 1997. Многоуровневые модели в архитектуре клиент-сервер, http:// \\rww.citforum.ru/database/osbcl/glava_95.shtml.
Орловский С. А.. 1981. Проблемы принятия решения при нечеткой исходной информации. М., Наука.
Осипов Г. С., 1988. Метод формирования и структурирования модели знаний для одного типа предметных областей // Известия АН СССР. Техническая кибернетика. № 2. С. 3-12.
Осипов Г. С., 1989. Принципы прямого приобретения знаний // Сборник трудов Второго международного семинара «Теория и применение искусственного интеллекта». Созополь. С. 56-59.
Осипов Г. С., 1993. Информационные технологии, основанные на знаниях // Ж. Новости искусственного интеллекта. №1. С. 7-41.
Осипов Г. С., 1997. Приобретение знаний интеллектуальными системами. М.: Наука.
Осуга С., Саэкп Ю. (ред.), 1990. Приобретение знаний. М.: Мир.
Петренко В. Ф., 1983. Введение в экспериментальную пспхосемантику: исследование форм репрезентации в обыденном сознании. М,: МГУ.
Петренко В. Ф., 1988. Психосемантика сознания. М.: Издательство МГУ.
Петров А. В. ( ред.), 1991. Разработка САПР // В 10 ku. Т. 4. М.; Высшая школа.
Пильщиков В. Н., 1983. Язык ПЛЭНЕР. М.: Наука.
Погосян Г. А., 1985. Метод интервью и достоверность социологической гш- форманнн. Ереван, АН Арм. ССР.
Пономарева С. М,, Хорошевский В.①.,1999. Методы и модели коммушпеа- шт в профессиональных группах н группах интеллектуальных агентов // В сб. трудов 4-го международного семинара по прикладной семиотике, семи- отическому и интеллектуальному управлению ASC/IC'99. М.
Попов Э. В.,①омнных И. Б., Кисель Е. Б., Шапот М. Д., 1996. Статические и динамические экспертные системы. М.: Финансы и статистика.
Попов Э. В. (ред), 1996. Динамические и i пел лектуальн ые системы в управ- лении к моделировании. М.: МИ①И.
Попов Э. В., 1982. Общение с ЭВМ на естественном языке. М.: Наука.
Попов Э.В., 1987. Экспертные системы: Решение неформализованных задач в диалоге с ЭВМ. М.: Наука.
Попов Э. В., 1988. Экспертные системы. М.: Наука.
Попов Э. В., 1991. Экспертные системы 90-х гг. Классификация, состояние, проблемы, тенденции // Новости искусственного интеллекта. № 2. С. 84-101.
132,Поспелов Д. А., 1989. Моделирование рассуждений. Опыт анализа мыслительных актов. М.: Радио и связь.
Поспелов Д. А., 1986. Искусственный интеллект: фантазия или наука? М • Радио и связь.“
Поспелов Д. А., 1986. Ситуационное управление: Теория и практика М* Наука.• “
Поспелов Д. А., 1998. Многоагентные системы — настоящее и будущее // Информационные технологии и вычислительные системы. № 1.
Поспелов Д. А., 1997. Три шага на пути к официальному признанию // Новости искусственного интеллекта. № 1. С. 99-115.
Похилько В. И., Страхов Н.Н., 1990. Система KELLY. М.; МГУ; МП «Гуманитарные технологии» (на магнитном носителе).
Пэранек Г. В., 1991. Распределенный искусственный интеллект // В кн.: Искусственный интеллект: применение в интегрированных производственных системах, Э. Кьюсиак (ред.). М.: Машиностроение.
9. Ребельскпй И. В., 1989. Азбука умственного труда // ЭКО. №7. С. 43-150.
Розенталь М., Юдин П.} 1951. Краткий философский словарь. М.: Политиздат.
Справочник по искусственному интеллекту в 3-х т., 1990 // Под ред. Э. В. Попова и Д. А. Поспелова. М.: Радио и связь.
Сагатовскмн В. И., 1980. Социальное проектирование // Прикладная этика и управление нравственным воспитанием. Томск. С. 84-86.
Сергеев В. М„ 1987. Когнитивные модели в исследовании мышления: струк- тур и онтология знания // Интеллектуальные процессы и их моделирование. М.: Наука. С.179-195.
Сергеев К. А., Соколов А. Н., 1986. Логический анализ форм научного поиска. Л.; Наука.
Сиротко-Сибирский С. А., 1968. Смысловое содержание текста и его отражение в ключевых словах // Автореферат дис. канд. филол, наук. Л.
Скрэгг Г„ 1983. Семантические сети как модели памяти // Новое в зарубежной лингвистике. Вып. 12. М.: Радуга. С. 228-271.
Сойер Б.,①остер Д., 1989. Построение экспертных систем на ПАСКАЛЕ.— М.: Финансы и статистика.,
Соколов А.Н., 1947. Психологический анализ понимания иностранного текста // Изв. АПН РСФСР. Вып. 7. С. 163—190.
Соколов А. Н., 1968. Внутренняя речь п мышление. М.: Просвещение.
Соколов А. Н., 1980. Проблемы научной дискуссии. Л.: Наука.
Соколов Е. Ы., Вейткявпчус Г. Г., 1989. НеГфоинтеллект. От нейрона к нейрокомпьютеру. М.: Наука.“
Соловьев С. Ю., Соловьева Г.М., 1989. Вопросы организации баз знании в системе ФИАКР // Экспертные системы: состояние и перспективы. Под ред. Д. А. Поспелова. М.: Наука. С. 47-54.
153一 Соссюр Ф„ де, 1977. Труды по языкознанию // Пер. с франц. М.: Прогресс, [54 Стерлинг Л., Шапиро Э., 1990. Искусство программирования на языке ПРОЛОГ. М.: Мир.
Стрельников Ю. Н., Вормсов Н. А., 1997. Разработка экспертных систем средствами инструментальной оболочки в среде MS Windows. Тверь, ТГТУ.
Тарасов В. В., 1998. Агенты, многоагентные системы, виртуальные сообщества; стратешческое направление в информатике и искусственном интеллекте // Новости искусственного интеллекта. № 2.
Таунсенд К„ Фохт Д., 1991. Проектирование и реализация экспертных систем на ПЭВМ. М.: Финансы и статистика.
Терехина А. Ю., 1986. Анализ данных методами многомерного шкалирования. М.: Наука.
Терехина А.Ю., 1988. Представление структуры знаний методами многомерного шкалирования. М.: ВИНИТИ.
Тиори Т„ Фрай Дж., 1985. Проектирование структур баз данных //Пер. с англ. В 2-х кн. М.: Мир.
Турчин В. Ф., 1968. Метаалгоритмический язык // Кибернетика. № 4. С. 45-54.
Уотермен Д., 1989. Руководство по экспертным системам // Пер. с англ. М.: Мир.
Уэно X., Исидзука М. (ред.), 1989. Представление и использование знаний. М.: Мир.
Файн В. С., 1987. Машинное понимание естественного языка в рамках концепции реагирования // Интеллектуальные процессы и их моделирование.— М.: Наука. С. 375-391.
Филлмор И., 1983. Основные проблемы лексической семантики // Новое в зарубежной лингвистике. Вып. 12. М.: Радуга. С. 74-122.
Финн В. К., 1991. Правдоподобные рассуждения в интеллектуальных системах типа ДСМ// Итоги науки и техники. Серия «Информатика». Т. 15: «Интеллектуальные информационные системы». ВИНИТИ. С. 54-101.
Фон Гумбольдт В., 1984. Избранные труды по языкознанию // Пер. с нем. М.: Прогресс.
Форсайт Ф., 1987. Экспертные системы. Принципы работы и примеры. М.: Радио и связь.
Франселла Ф., Баннистер Д., 1987. Новый метод исследования личности: руководство по репертуарным личностным методикам // Пер. с англ. М.: Прогресс.
17°. Хант Д., 1986. Искусственный интеллект. М.: Мир.
Хейес-Рот и др., 1987. Построение экспертных систем // Под ред. Ф. Хейес— Рота, Д. Уотермена, Д. Лената. М.: Мир.
维
Хорошевский В. Ф., 1983. ATNL-машнна — вопросы программной и апла* ратной реализации // В сб. трудов I Международного симпозиума ИФИП и ИФАК, 4-6 сентября 1983 г. Л.: С. 156-174,
Хорошевский В. Ф., 1990а. Языковые средства программиования // В кн* Искусственный интеллект. Книга 3. Программные и аппаратные средства М.: Радио и Связь. С. 7-17.
Хорошевский В. Ф., 1990b. Программные средства представления знаний: состояние исследований и проблемы // В кн.: Искусственный интеллект. Книга 3. Программные и аппаратные средства. — М.: Радио и Связь С 72- 82.
Хорошевский В. Ф., 1993. Управление проектами в интеллектуальной системе PIES Workbench // Изв. РАН Серия «Техническая кибернетика». № 5. С. 71-98.
Хорошевский В. Ф., Щенников С. Ю., 1990. Инструментальная поддержка процессов приобретения знаний в системе ПиЭС // Изв. АН СССР.Техническая кибернетика. № 4. С. 206-215.
Хорошевский В. Ф., 1995 и PIES-технология и инструментарий PIES WorkBench для разработки систем, основанных на знаниях, Новости Искусственного интеллекта, № 2. С. 7-64
Хорошевский В. Ф., 1999. Поведение интеллектуальных агентов: модели и методы реализации // В сб. трудов 4-го международного семинара по при- 1<ладпо11селшотш<е, семиотическому л интеллектуальному управлению ASC/ IC99. М.
Хювянен Э., Сеппянен Й., 1991. Мир ЛИСПа // В 2-х т, М.:Мир.
UeifTiiif Г. С., 1985. Программирование на ассоциативных сетях // ЭВМ в проектировании и производстве. Вып. 2. Л.: Машиностроение. С. 16-48.
Шенк Р., 1980. Обработка концептуальной информации // Пер. с англ. М.: Энергия.
Шенк Р., Бирнбаум Л., Мей Дж.. 1989. К интеграции семантики и прагматики // Новое в зарубежной лингвистике. Компьютерная лингвистика. Вып. 14. М.: Прогресс.
Шенк Р., Хантер Л., 1987. Познать механизмы мышления // Реальность и прогнозы искусственного интеллекта. М.: Мир.
Шеннон К., Уивер У., 1963. Математическая теория связи. М.: ИЛ.
Шепотов Е. Г., Шмаков Б. В., Крикун П.Д., 1985. Методы активизации мышления. Челябинск, ЧШ1.
Шмелев А. Г„ 1983. Введение в экспериментальную психосемантику. М.: МГУ.
Шумилина Т. В., 1973. Интервью в журналистике. М.: МГУ.
Щерба Л. В, 1974. Языковая система jj речевая деятельность. Л.: Наука.
Эшби У. Р., 1959. Введение в кибернетику. М.: ИЛ.
Эндрю А., 1985. Искусственный интеллект. М.: Мир.
19L Яшин А. М.. 1990. Разработка экспертных систем. Л: ЛПИ.
Adeli Н., 1994. Knowledge Engineering. McGraw-HillPublishing Company, N. Y.
Alexander J. H., Freiling MJ., Shulman S.J., Rehfuss S., Messick S.L., 1987. Ontological analysis: an ongoing experiment // Int. Journal of Man-Machine Studies. Vol. 26. P. 473-485.
Andrej., Delpech P.-M., 1994. Moving from Mcrise to Shlaei'-Mellor // Objects in Europe. Vol. 1, No. 3. P. 7-11.
Anjewierden A., 1987. Knowledge Acquisition Tool // AI Communications.— Vol. 0,No. 1.-P. 29-38.
ART, 1984. ART User's Manual // Inference Systems Inc., Ca.
AgentBuilder, 1999. AgentBuilcler An Integrated Toolkit for Constracting Intelligent Software Agents // Revision 1.3, February 18,1999. Reticular Systems, Inc.
Austin J. L., 1965. How to Do Things with Words. Oxford.
Autonomy, 1998. Autonomy Technology Whitepaper. — http://www.autonomy, com/tech/wp.html
Aussenac-Gilles N” Natta N., 1992. Making the Method Solving Explicit with MACAO: the SIZYPHUS case-study in Sisyphus'92: Models of problem solving.— Ed. by M.Linster, GMD.
Balzer R., Cheatham T.E., Green C., 1983. Software Technology in the 1990s: Using a New Paradigm // Computer J. — November. P. 39-45.
Barr A., Feigenbaum E.A., 1982. The Handbook of Artificial Intelligence // Vol. П. — Los Altos, California: Kaufmann Inc.
Basili V.R., Perricone B.T., 1984. Software Errors and Complexity: An Empirical Investigation // Communications, ACM. — Vol. 27, No. 1. - P. 42-52.
Beckwith R., Fellbaum C., Gross D,, Miller G., 1990. WorclNet: A Lexical Database Organized on Psycholinguistic Principles // In Zemik, U. (Ed.), Using On-line Resources to Build a Lexicon. Chapter 9. Hillsdale, NJ: Erlbaum. P. 211-231.
2°5. Bee-gent, 1999. Bee-gent Home Page. — littp://www2.toshiba.co.jj)/beegent.
Belgrave M., 1996. The Unified Agent Architecture: A White Paper. — http:// www.ee.mcgill.ca/~belmarc.
Benjamins V. R.t Fensel D., et. al., 1998. Community is Knowledge! // In KA2, In: Proc. KAW98, Banff, Canada.
2°& Bennet J. S., 1985. A Knowledge-Based System for Acquiring the Conceptual Structure of a Diagnostic Expert System // Journal of Automated Reasoning.—
2°9. Berners-Lee T., Connolly D., 1995. HyperText Markup Language 2.0. November.
Bertalanffy L.( 1950. An Outline of General Systems Theory // British Journal of the Philosofy of Science. Vol. 1. P. 134-164.'
21L Black M., 1962. Models and Metaphor. Studies in Language and Philosophy - Ithaca-London, Cornell University Press, P. 25-47.
Blazquez M., Fernandez M Garcia-Pinar J. M., Gomez-Perez A., 1998. Building Ontologies at the Knowledge Level using the Ontology Design Envinioment // Knowledge Acquisition Workshop, KAW98, Banff.
Boehm B.W., 1986. A Spiral Model of Software Development and Enhancement // ACM SIGSOFT Software Engineering Notes. Vol. 11, No. 4.
Bonasso Jr., 1984. ANALYST, an Expert System for processing sensor Returns // Report MTP-83W0OO02, MITRE Corp.
Boose J.H., 1985. A Knowledge Acquisition Program for Expert Systems Based °n Personal Construct Psychology // Int. Journal of Man-Machine Studies - Vol. 23. P. 495-525.
BooseJ.H., 1985a. Personal construct theory and the transfer of human expertise // Proc. 6-th Eur. Conf. Artif. Intel!. Amsterdam. P. 51-60.
Boose J. H., 1985b. A knowledge acquisition program to expert systems based oh personal construct psychology // Int. Journal of Man-Machine Studies. Vol. 23t No. 5. P. 499-525.
Boose J. H., 1985c. Rapid acquisition and combination of knowledge from multiple experts in the same domain // Proc, of 2-nd Conf. Artif Intell. Appl. Eng. Knowledge-Based Syst. Amsterdam. P. 461-466.
Boose J. Ы., 1986. ETS: a PCP — based program for building knowledge-based systems // Proc. WESTEX-86: IEEE West. Conf. Knowledge-Based Eng. And Expert Syst., Anaheim, Calif. June 24-26. Washington: D. C.
BooseJ. H., 1989. A research framework for knowledge acquisition echniques and tools // Proc, of 3-rd European Knowledge Acquisition for Knowledge-based Systems Workshop: EKAT'89. Paris.
Boose J. H., 1990. Knowledge Acquisition Tools, Methods, and Mediating Representations // In Motoda H., Mizogochi R., Boose J., Gaines B. (Eds.) Knowledge Acquisition for Knowledge-Based Systems. IOS Press, Ohinsha Ltd., Tokyo.
BooseJ. H., Bradshaw J. H., Shenia D. B., 1988. Transforming repertory grids to shell-based knowledge bases using AQUINAS, a knowledge acquisition workbench // Proceedings of the AAAI-88 Integration of Knowledge Acquisition and Performance Systems Workshop. St. Paul.
Boose J. H., Bradshaw J. M, 1986. NEOETS: Capturing expert system knowledge in hiei aruhical rating grids // Proc. Expert Syst. Gov.Symp. Washington. P. 34-45.
Boose J.H., Bradshaw J. M., 1987. Expertise transfer and complex problems: using AQUINAS as a knowledge-based systems // Int. Journal of Man-Machine Studies. Vol. 26, No. 1. P. 3-28.
Borgholf U., Pareschi R„ 1998. Information Technology for Knowledge Management. — Springer-Verlag. Bln.
Bosak J., 1997. XML, Java, and the future of the Web // Sun Microsystems.- http.7/sunsitc.unc. edu/pub/sun-info/standards/xml/why/xmlapps.htm
Bouchet С, Brunet С., Anjewierden А., 1989. SHELLY: an integrated workbench 'for KBS development //Proc. of9th Int. Workshop Expert Syst. and their Appl.- France, Avignon. Vol. 1. P. 303-315.
Boulding K. L., 1956. General Systems Theory // The Skeleton of Science. Management Science. No. 2. P. 197-208.
BraetmanJ. A„ Magnini B., Rinaldi F., 1994. The Generalized Italian, German, English Upper Model // ЕСАГ94, Amsterdam.
Breuker J. A„ Wielinga B.J., 1989. Models of Expertise in Knowledge Acquisi- 'tion // In Guida G., Tasso C. (ed.) Topics in expert system design. - Amsterdam, North-Holland. P. 165-295.
Breuker J. A„ Wielinga B.J., Hayward S.A., 1986. Structuring of knowledge-based systems development // ESPRIT**85: Status Report of Cont. Work. North- Holland. P. 771-784.
Briscoe C.& LeMasterS. U„ 1991. Meaningful learning in college biology through concept mapping // American Biology Teacher, 53(4), P. 214-219.
Brooks R. A., 1991. Intelligence without Representation// Artificial Intelligence. No. 47. P. 139-159.
Brownston L., Farrell R., et al., 1985. Programming Expert Systems in OPS5: An introduction to Rule-Based Programming // Addison-Wesley Publ. Comp. Inc.
Buchanan B., et al., 1983. Constructing an Expert System // Building Expert Systems.
BYTE, 1989. April. P. 206-246.
BYTE, 1990. CASE New Approach to Software Engineering // August.
Caines B. R., Shaw M. L., 1984. Cognitive and Logical foundation of Knowledge Acquisition // Proceedings of the 5-th Banff Knowledge Acquisition for Knowledge-Based Workshop. November. Banff, Canada. P. 82-101.
Cane C., Sarson T., 1979. Structured System Analisis // Englewood Cliffs: Prentice-Hall.
CARNEGIE, 1987. CARNEGIE GROUP INC. // Expert Systems. Vol. 4, No. 2.
CATALYST, 1993. — Gensym Corp., G2 // In Object-Oriented Technology on Sun Workstations. Catalyst, January.
Chandrasekaran B., 1985. Generic tasks in knowleclge-based reasoning: expert systems at the right level of abstraction // Proceedings of the Expert Syst. in Government. P. 62-65.
Cheong Fan-Chun, 1996. Internet Agents: Spiders, Wanderers, Brokers, and Bots. New Riders Publishing, USA.
Chess D., Harrison C., Kershenbaum A., 1995. Mobile Agents: Are They a Good Idea? //IBM Research Division. — http://www.research.ibm.com/iagents/paps/ mobile_idea_abstr.html.
Clancey WJ., 1983. The epistemology of a rule-based expert system — a framework for explanation // Artificial Intelligence. Vol. 20. P. 215-251.
Clancey WJ„ 1985. Review of J.F.Sowafs Conceptual Structures // Artifidal' Intelligence. P. 13-128.
Clocksin W., Mellish C., 1982. Programming in PROLOG // Berlin, Springer Verlag.,产屮
ColmerauerA., 1983. PROLOG in 10 Figures//Proceedings oflJC AI-83. P.48&-
CompTek, 2000a, Сравнительный анализ машин поиска по материалам журналов «Мир ПК», «PC Magazine/RE», «Планета Интернет». - http:// www.comptek.ru/arcadia/review/review.html.
CompTek, 2000b. Сравнительный анализ русскоязычных машин поиска по материалам журнала «Планета Интернет». — http://www.comptekru/arcadia/ review/review_rus.htmL
Conklin J„ 1987. Hypertext: An Introduction and Survey // Computer. Vol. 20, No. 9. P. 17-41.
Conklin J.f 1996. Designing organizational memory: Preserving intellectual assets in a knowledge economy// Electronic Publication by Corporate Memory Systems, Inc.
Connah D„ 1994. The Design of Interacting Agents for Use in Interfaces // In Brouwer-Janse, D. & Harringdon, T. L. (eds.), Human-Machine Communication for Educational Systems Design, NATO ASI Series, Series F, Computer and Systems Sciences 129. Heidelberg: Springer Verlag.
Cook N, M., 1985. Computer Programming Expertise: Vanation of Cognitive Structure : vanations of cognitive structures in FT durso, chair, human expertise // Papers in Honor of W.Chaise, Meeting of Southern Psychological Association.— Austin: TX. P. 73-89.
Courtois P., 1985, On Time and Space Decomposition of Complex Structures // Communinications of the ACM. \7ol. 28, No. 6. P. 596-610.
Cowie J., Lehnert WG, 1996. Information Extraction // Comm. ACM.— No. 39(1).
Cullen J., Bryman A., 1988. The knowledge acquisition bottleneck: rime for reassessment // Expert Systems. Vol. 5, No. 3.
Davis R., 1982. TEIRESIAS:Applicationsofmeta-level knowledge//Knowledgebased systems in Artificial Intelligence. N.Y.: McGraw-Hill.
Davis R., 1984. Interactive Transfer of Expertise// In: Rule-Based Expen Systems / Buchanan B. G., Shortliffe E. H. London, Addison-Wesley. P. 171-205.
Kleer de J., 1989. Problem solving with the ATMS //Artifitial Intelligence. Vol. 28, No. 2. P. 197-224.
Delgado R., Joaquin A., 2000. Agent-Based Information.
DeMarco 工,1979. Structured Analysis and System Specification. ~ Englewood Cliffs, NJ: Prentice Hall.
263、Demazeau Y.( Muller J.-P. (eds.), 1990. Decentralized Artificial Intelligence. Amsterdam: Elsevier North-Holland, 1990.
Diderich J., Ruhman L, May M., 1987. KRITON: a knowledge acquisition tool for expert systeins // Int. Journal of Man-Machine Studies. Vol. 26, No. 1. P. 9-40.
Durkin J„ 1998. Expert Systems: Catalog of Applications. — ICS, USA、
Eisenstadt M., Domingue J., Rajan T., Motta E., 1990. Visual Knowledge Engineering // IEEE Transactions on Software Engineering. Vol. 16, No. 10. P. 1164-1177.
Engelbart O.t 1986. Hypertext as a New Form of Non-linear Documentation 〃 Communication of ACM. Vol. 3, No. 5. P. 143-155.
Eshelman L., 1987. MOLE. A Knowledge Acquisition Tool That Buries Certainty Factors // Int. Journal of Man-Machine Studies. Vol. 26, No. 1. P. 563-577.
EXSYS, 1985. Exsys User Manual // EXSYS Inc.
FainJ., Hayes-Roth E, Sowizral H.t Waterman D.( 1982. Programming in ROSIEA an Introductionby Means of Examples // Report N- 1646-APRA. — Rand Corporation.
Farquhar A., Fikes R„ Rice J., 1996, The Ontolingua Server: A Tool for Collaborative Ontology Construction // Knowledge Systems Laboratory, KSL- 96-26, September, 1996.
Feigenbaum E., 1977. The art of artificial intelligence: themes and case studies of knowledge engineering // Proceedings of IJCAI-77.
Feigenbaum E., Buchanan B. Dendral and Meta-Dendral // Artificial Intelligence. Vol, 11, No. 1-2.
Feinstein A., 1958. Foundations of Information Theory、McGraw-hill, N, Y.
Fensel, D„ Decker S„ Erdmann M., Studer R., 1998. Ontobroker: How to enable intelligent access to the WWW// In AAAI-98 Workshop on AI and Information Integration. Madison, W[.
Fernandez M., Gomez-Perez A., Jurist。N, 1997. METHONTOLOGY: From Ontological Art Toward Ontological Engineering // Spring Symposium Series on Ontological Engineering. AAAI-97, Stanford. USA.
Fikes R. Kehler T., 1985. The role of frame-based representation in resoning // Com. ACM. P. 904-920.
Fikes R.E., Nillson N., 1971. STRIPS: A New Approach to the Application of 1 hcorem Proving to Problem Solving // Artificial Intelligence, Vol. 5, No, 2.
Finjn T., McAdamsJ,, Kleinosky P., 1984, FOREST: an expert system forautomaic Те5t Equipment // Proceedings of the First Conference on Artificial Intelligence Applications. IEEE computer Society. P. 689-702.
FIPA, 1998. Ontology Service. FIPA 98 Specification, Part 12. October, 1998. http://www.cset.it/fipa.
Fisher К. M., FalettiJ., Patlerson H., Thornton R., Lipson J. & Spring, C., 1990, Computer assisted concept mapping // Journal of College Science Teaching. No. 19 (6). P. 347-352.
Fisher К. М., 1990. Semantic networking: New kid on the block // Journal of Research in Science Teaching. No. 27(10). P. 1001-1018.
283、Fisher К. M., 1992. SemNet: A tool for personal knowledge construction // In P' Kommers, D. Jonassen, & T. Mayes (Eds.) Cognitive tools for learning. Berlin: Springer Verlag. P. 63—76.
Florentin J J., 1987. Software Review: KEE // Expert Systems Vol 4 No 2 P. 118-120,* '
285、Forgy C. L., 1981. OPS5 User's Manual. - Pittsburg, Pa: Carnegie-Mellon University.
Franklin S„ Graesser A” 1996. Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents // Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, Springer-Verlag.
Fridman N.f Hafner, 1997. Ontology Design: A Survey and Comparative Review // AI Magazine, No, 18 (3). P. 53-74.
Furna G, W., Zacks J、,1994. Multitrees: Enriching and Reusing Hierarchical Structure // Human Factors in Computing Systems. Conference Proceedings. Boston, Ms. P. 330-334
Gruber T. R, 1995. Toward Principles for the Design of Ontologies Used for Knowledge Sharing // International Journal of Human and Computer Studies. - No. 43(5/6). P. 907-928.
Gaines B. R., 1987. An Overview of Knowledge Acquisition and Transfer // Special issue on the IsC Knowledge Acquisition for Knoweledge-Basecl Systems Workshop. Part 3T International Journal of Man-Machine Studies. 26. P. 453-472.
Gaines B. R., 1989. Second Generation Knowledge Acquisition Systems // Proceedings of the Second European Knowledge Acquisition Workshop. Vol. 17. Bonn. P. 1-14.
Gaines B. R., Shaw M.L.G.. 1986. Knowledge Engineering Techniques // Proceedings of AUTOFACT86. Detroit. P 79-96.
Gaines B. R, Shaw M. L G., 1987. KITTEN: Knowledge initiation and transfer tools for experts and novices // International Journal of Man-Machine Studies. 一 Vol. 27, No. 3.P. 251-280.
GaminackJ. G* Young R. M., 1985. Psychological Techniques for Eliciting Expert Knowledge // Research and Development in Expert Systems. Cambridge: University Press.
Gane C., and Sarson.T., 1979. Structured System Analysis. - Englewood Cliffs, NJ: Prentice Hall.
Gavrilova T., Chernigovskava T., 1999. Cognitive Aspects of Visual Knowledge Base Design // Proceedings of the International Conference PEG. Intelligent Computer and communications technology (Teaching & Learning for the 21-st Century), Great Britain. P. 174-181.
Gavrilova T” Kotova E.. Stash N., 1999. Adaptive Distance Learning Course on Artificial Intelligence, ICL99, Austria.
298 Genesereth М.艮,Fikes R, E. 1987. Knowledge interchange format, version 3.0.
* Reference manual // Technical report, Logic-92-1. Computer Science Dept., Stanford University, http://www.cs.umbc. cdu/kse/.
GillmoreJ.F., Pulaski K„ 1985. A survey of expert system tools // Proc, of the Second IEEE Conf, on AI Applications. P. 498-502.
Goldberg F., Robson D„ 1983. SMALLTALK-80: the Language and its Implementation, Reading, Mass: Addison Wesley.
Goldfarb C. F„ 1991. The SGML Handbook. Clarendon Press.
Goldsmith T. E., Schvaneveldt R.W., 1985, ACES: Air combat Expert Simulation 〃 Memo. In Comput. And Cogn, Sci., MCCS-85-34, Comput, Res. Lab. New Mexico: State Univ.
Goldsmith T. E, Johnson P. J., & Acton W. H., 1991. Assessing structural knowledge //Journal of Educational Psychology, 83, P. 88-96.
Gopalan, 1999. A Detailed Comparison of CORBA, DCOM and Java/RMI (with specific code examples). 一 http://w\vw.execpc. com/-gopalan/index.html.
Green C A., 1977. Summary of PSI program synthesis system // Proc, of IJCAI- 77. P. 380-381,
Griswold R., 1978. A History of the SNOBOL Programming Language // SIGPLAN Notices, Vol. 13, No. 8. P. 275-308.
Grover M., 1983. A Pragmatic Knowledge Acquisition Methodology // Proceeding of IJCAI. P. 436-438.
Gruber T. R., 1991. The rote of common ontology in achieving sharable, reusable knowledge bases // In J. A. Allen, R.Fikes, and E. SandeweH, editors, Principles of Knowledge Representation and Reasoning, In: Proceedings of the Second International Conference. Morgan Kaufmann, P. 601-602.
Gruber T. R., 1993. A translation approach to portable ontologies // Knowledge Acquisition. No. 5 (2)、P, 199-220.
Gruber T., 1989. The Acquisition of the strategic Knowledge. Academic Press.
Gruninger M., Fox M., 1995. Methodology for the Design and Evaluation of Ontologies // Proceedings of IJCAI-95 Workshop on Basic Ontological Issues in Knowledge Sharing.
Guarino №, 1996. Ontologies: What Are They, and Where's The Research? // A panel held at KR'96, the Fifth International Conference on Principles of Knowledge Representation and Reasoning, November 5, 1996, Cambridge, Massachusetts. lHtp://\v\v\v-ksl.stanford.edu/KR96/Pane].htinl.
Guarino №, Giaretta P,, 1995a. Ontologies and Knowledge Bases. Towards a Terminological Clarification // In: Towards Very Large Knowledge Bases, — NJ.I. Mars (ed,)r IOS Press, Amsterdanr
Guarino N、, Masolo C., Vetere G., 1999. OntoSeek: Content-Based Access to the Web // IEEE INTELLIGENT SYSTEMS. - May/June 1999.
Guarino N., Poli R., 1995b. The role of ontology in the information technology // International Journal of Human-Computer Studies. No, 43(5/6). Special issue on ontology. P. 623-965.
Guida G., Tasso С 1989. Buldung Expert Systems: From Life Cycle t<>
翳鬻1J黑喘黑綿寵諾E漑Systems Design, m£з
既黑欝 A,此正恥也 D 1986. Gandalf: Software Development Environments // IEEE Trans. Software Eng. Vol. SE-12, No. 12. Р.Ш7-Ц27.
Habermann N., Flon F., Cooprider L, 1976. Modularization and Hierarchy in a Family of Operating Systems // CACM. Vol. 19, №5. P.266-272.
Harmon P., 1987, Review in Expert Systems // Expert Systems Strategies VoL3, No, 6. P.11-18.•
Hart A., 1986. Knowledge Acquisition for expert systems. London, Kogan Page.
Heflin J„ Hendler J.t Luke S.( 1998. Reading Between the Lines: Using SHOE to Discover Implicit Knowledge from the Web // In AAAI-98 Workshop on AI and Information Integration.
Hinkelmann K. and Kieninger Th., 1997 Task-oriented web-search refinement and information filtering. DFKI GmbH.
HTML4, 1998. HTML 4,0 Specification, W3C Recommendation, revised on 24 April 1998. http://www.w3.org/TR/REC-html40.
Jackson M., 1975. Principles of Program Design. N. Y.: Academic Press.
Jonassen D.H., 1993. Changes in knowledge structures from building semantic net versus production rule representation of subject content. Journal of Computer Based Instruction, 20 (4); P. 99-109,
Jonassen D.H., Mandi H. (Eds), 1999. Designing Hypermedia for Learning,— Springer-Verlag N. Y.. Incorporated.
Jones A、,1992. The Object Model: a Conceptual Tool for Structuring Software. Operating Systems. N, Y.: Springer-Verlag. P. 8.
Kahn G., Nowlan S., McDermott J., 1985, MORE: An Intelligent Knowledge Acquisition Tool // The proceedings of the Ninth Joint Conference on Artificial Intelligence. — August、Los Angeles, CA. P. 581-584.
Kaplan R. M., Berry-Rogghe G., 1991, Knowledge-based acquisitions of causal relationships in text // Knowledge Acquisition. № 3、P.317-337.
Kelly G.A., 1955. The Psychology of Personal Constructs. — NY.: Norton.
Kestelyn J., 1992. Application Watch // The International Jour. Of Knowledge Engineering. Vol. 8. No, 2. P, 123-129.
Khoroshevsky V.F., Situation Control Software: From Symbol Manipulation Languages Through Knowledge Representation Systems to Semiotic Technologies, Proc. Of the 1995 ISIC Workshop, - 10 IEEE International Symposium on Intelligent Control, 127-129 (1995).
Khoroshevsky V. F., Knowledge VS” 1998. Daia Spaces: How an Applied Semiotics to Work on Web // In: Proceedings 3rd Workshop on Applied Semiotics, National Conference with International Participation (CAI 98), Pushchino, Russia.
334 Khoroshevsky V. Е, 1985. ATN-based Explanation Subsystems: Design and Implementation // Computers and Artificial Intelligence. Vol. 4 (1985), No. 4, P. 289-311.
335 Khoroshevsky V、F., 1994. Knowledge Based Design of Intelligent Interfaces in PiES WorkBench // Proc, of the Sixth International Conference on Artificial Intelligence and Information-Control Systems of Robots, — Smolenice, Slovakia. September 21—25, World Scientific. P. 159—168.
Khoroshevsky V. F„ 1994b, Knowledge Based Design of Knowledge Based Systems in PiES WorkBencli // Proc, of JCKBSE'94, Japan-CIS Symposium on Knowledge Based Software Engineering'94, P. 256-261.
Kifer M., Lausen G., Wu J., 1995. Logical Foundations of Object-Oriented and Frame-Based Languages //Journal of the ACM.
Kintsch W., 1974. The representation of meaning in memory, N, Y.
Kitto С M., Boose J. H„ 1987a. Heuristics for expertise transfer: an implementation of a dialog manager for knowledge acquisition // International Journal of Man- Machine Studies. VoL 26, No, 2. P. 183-202.
Kitto С. M., Boose J. H., 1987b. Choosing knowledge acquisition strategies for application tasks // Proc, of WESTEX'87. P. 96—103.
Knight K., Luk S., 1994. Building a Large Knowledge Base for Machine Translation, Proc. Amer. Assoc //Artificial Intelligence Conf. (AAAI-94). AAAI Press. Menlo Park, Calif, P. 773-778.
Kommers P. A. M„ 1989. Texlvision, Eachede, Netherlands: University of Twente, Educational Instruinentation Department.
Kozma R. B*, 1992. Constructing knowledge with learning tool. In P. Kommers, D. Jonassen, A T, Mayes (Eds.), Cognitive tools for learning (P. 23-32). Berlin: Springcr-Verlag.
Kozma R. B., 1987. The implications of cognitive psychology for computer-based learning tools. Educational Technology, (11). P. 20-24.
Kruskal J. B., 1964. Nonmetric multidimensional scaling: a luimerical method, Psychometrika 29, P. 115-129.
Kbhn 0., Abecker A., 1998. Corporate Memories for Knowledge Management in Industrial Practice; Prospects and Challenges.
Kbhn O., Becker V., Lohse V, and Ph. Neumann, 1994, Integrated Knowledge Utilization and Evolution for the Conservation of Corporate Know-How // ISMICK'94: Int. Symposium on the Management of Industrial and Corporate Knowledge.
Labrou Y., Finin T., 1997. A Proposal for a new KQML Specification // TR CS- 97-03. February 3, 1997.
Lai K. W., 1989. Acquiring expertise and cognitive skills in the process of constructing an expert system: A preliminary study. Paper presented at the annual meeting of the American Educational Research Association, San Francisco. CA (ERIC Document No. ED 312986).
Lamping L Rao 卜 Pirolli P. 1995. A Focus+Context Technique Based од агмГЙгш°г 7Ws 吧 zing Urge Hierarchies //In Proceedings of the
ACM MGCHI Conference on Human Factors in Computing Systems
^ibowitzJ.(BlandK^994.UsingMultimediaCoHelpStudenU
Acquisition // Multimedia Computing - Preparing for the 21-th Century ed Reisman S. - USA: Idea Group Publishing. P. 537-556.'
353.353.Lenat, D, B., 1995. CYC: A Large-Scale Investment in Knowledge Infrastructure // Communications of the ACM 38. № 11. http://www.cyc. com.
353.
353.
Lesser V., Horning В., Klassner E, Raja A., Wagney” Zhang S., 1998. A Nextf Generation Information Gathering Agent//Umass Computer Science Technical Report 1998-72, May, 1998,
Lippert R.C. & Finley F., 1988. Student's refinement of knowledge during the development of knowledge for expert systems // P叩er presented at the annual meeting of the National Association for Research in Science Teaching, Lake of the Olarks, MO. (ERIC Document No. ED 293872).
Lippert R.C., 1988. An expert system shell to teach problem solving. Teach Trends, 33(2). P. 22-26.
Lowe D., Hall W.( 1999, Hypermedia and the Web: An Engineering Approach. Wiley, John & Sons, Incorporated.
Luke S., Spector L„ Rager D.t 1996. Ontology-Based Knowledge Discovery on the World-Wide Web // In: Proc. Of the Workshop on Internet-based Information Systems, AAAI-96, Portland, Oregon.
Macintosli A., 1997. Knowledge asset management // Airing, No. (20), April.
Maikevich N, V., Khoroshevsky V. F„ 1998. Knowledge Driven Processing of HTML-Based Information for Intellectual Spaces on Web // In: Proceedings of the Third Joint Conference on Knowledge-Based Software Engineering, Smolenice, Slovakia.
Maikevich N. V., Khoroshevsky V. F„ 1999. Intelligent Processing of Web Resources: Ontology-Based Approach and Multiagent Support // In: Proceedings of 1st International Workshop of Central and Eastern Europe on Multi-agent Systems (CEEMAS'99). — 1-4 June. 1999, St.-Petersburg, Russia.
Malsch Th,, Bachmann R.. Jonas M.( Mill U„ and Ziegler S.. 1993. Expertensysteme in der Abseitsfalle? — Fallstudien aus der industriellen Praxis, edition sigma. Reiner Bohn Verlag, Berlin.
Markus S, 1987, Taking Backtracking with a Grain of SALT // Int.Jouraal of Man-Machine Studies. Vol. 2 6, No. 4. P. 383-398.
Masui S., McDermott J., 1983. Decision-making in Time-critical Situations // Proceedings IJKAI-83. P. 233-235.
MatarozzoJ.D., Wettman M., Weins AK, 1963, Inten'iewer influence on duration of interview speech //J, Verbal Learning and Verbal Behavior. No. 1.
Maurer E, Dellen B” 1998, A Concept for an Internet-based Process-Oriented Knowledge Management Environment // Proceedings of the KAW 98. Banff, Canada.
McCarthy}., 1978. History of LISP// SIGPLAN Notices. Vol.13(1978). P. 217- 223.
McClure C. A„ 1979. CASE Workshop // BYTE. - April.
MDBS, 1986, Guru User Manual// MDBS Inc.
Mesarovic M.D. (ed), 1964、Views on General Systems Theory. N. Y.( Wiley.
Mikulescky L., 1988. Development of Interactive computer programs to help students transfer basic skills to college level science and behavioural sciences courses, BIoominglonIN: Indiana University.
Minsky M.A., 1981. Theory of memory 〃 Perspectives in Cognitive Science. Norwod, N. S.( Ablex.
Monahan J.S., Lockhead G.R, 1977. Identification of integral stimuli //Journal off Experimental Psychology. General 106. P. 94-110,
Moon D., 1973. MACLISP Reference Manual. MIT Press, Cambridge, Mass.
Motta E., Eisenstadt M., Pitman K., West M., 1988. Support for knowledge acquisition in the Knowledge Engineer1^ Assistant (KEATS) // Expert Systems. Vol. 5. P. 6-27.
Motta E., Rajan T, Eisenstadt M., 1989. A methodology and too] for knowledge acquisition in KEATS-2 // Proc, of hit. Summer Sch. Top. Expert Syst. Des.: Methodol. and Tools. Amsterdam. P. 297-323.
Motta E., Rajan T„ Dominigue J., Eisenstadt M., 1990. Visual Knowledge Engineering// IEEE Transactions on software engineering. Vol. 16, No. 10. P. 151-164.
Motta E” Rajan T., Dominigue J., Eisenstadt M., 1991. Methodological foundations of KEATS, the Knowledge Engineer s Assistant // Knowledge Acquisition. No. 3. P. 21-47.
Musen M. A., Fagan L. M„ Combs DM., Shorlliffe E. N., 1987. Use of a Domain Model to Drive an Interactive Knowledge-Editing Tool // Int, Journal of Man- Machine Studies. Vol. 26, No. 1. P. 105-121.
NEXPERT OBJECT, 1990 // Tutorial. Nexpert Co.
Nielsen J., 1990. HyperText & HyperMeclia. Academ, Press Inc
Nonaka I. and Takeuchi I., 1995. The Knowledge-Creating Company, N. Y.: Oxford: Oxford University Press.
Nwana H. S., 1996. Software Agents: An Overview // Knowledge Engineering Review, Vol.ll, №3. Cambridge University Press. P. 1-40.
Olson J. R., Reuter H. H., 1987. Extracting expertise from experts: methods for knowledge acquisition // Expert systems. VoL 4, No. 3.
384、Olton J.D., Muser M.A., Combs D.M. et al., 1987. Graphical access to medical expert systems // Methods of Information in Medicine. Vol. 26, № 3.
Orr D, Kenneth T., 1977, Structured System Development. N. Y.: Academic Press,
Orr D, Kenneth T,, 1977. Structured System Development. N. Y.: Academic Press.
Ovum, 1994. Intelligent agents: the new revolution in software. Ovum.
В®& 解LMn鑑/黑鵰x.h雷^ Age% On 小。Internet, http://
389.389.390,391.390,391.392.392.393.393.394.394.395.395.翼%* St】;kl:n[ "о理^ 1993. Functional Representation and Reasoning // IEEE Expert. Apnl. P. 65-78.山5〃Peters L„ 1981. Software Design. N.Y.:Yourdon Press.Piatetsky-Shapiro G. and Frawley W., eds.( 1991. Knowledge Discovery in Databases. AAAI/MIT Press.JPospelov D.A., Basic concepts of Situational Languages and formal means of analysis and control of natural systems, Presented at the QAT Teleconference, New Mexico State Universityand the Army Research Office, December 1』(19%). Pospelov D.A., Semiotic Models in Control Systems, In. Proc, of the 19951S1C Workshop — the 10th IEEE International Symposium on Intelligent Control 6-12 (1995).'Rabbits L, Wright G„ 1987. Card tricks for small players //Expert Systems User Vol. 22, No- И-*Raggett D., 1977. HTML3.2 Reference Specification, - http://www.w3.org/TR/ REC-html32.翼%* St】;kl:n[ "о理^ 1993. Functional Representation and Reasoning // IEEE Expert. Apnl. P. 65-78.山5〃Peters L„ 1981. Software Design. N.Y.:Yourdon Press.Piatetsky-Shapiro G. and Frawley W., eds.( 1991. Knowledge Discovery in Databases. AAAI/MIT Press.JPospelov D.A., Basic concepts of Situational Languages and formal means of analysis and control of natural systems, Presented at the QAT Teleconference, New Mexico State Universityand the Army Research Office, December 1』(19%). Pospelov D.A., Semiotic Models in Control Systems, In. Proc, of the 19951S1C Workshop — the 10th IEEE International Symposium on Intelligent Control 6-12 (1995).'Rabbits L, Wright G„ 1987. Card tricks for small players //Expert Systems User Vol. 22, No- И-*Raggett D., 1977. HTML3.2 Reference Specification, - http://www.w3.org/TR/ REC-html32.
389.
389.
390,
391.
390,
391.
392.
392.
393.
393.
394.
394.
395.
395.
翼%* St】;kl:n[ "о理^ 1993. Functional Representation and Reasoning // IEEE Expert. Apnl. P. 65-78.山5〃
Peters L„ 1981. Software Design. N.Y.:Yourdon Press.
Piatetsky-Shapiro G. and Frawley W., eds.( 1991. Knowledge Discovery in Databases. AAAI/MIT Press.J
Pospelov D.A., Basic concepts of Situational Languages and formal means of analysis and control of natural systems, Presented at the QAT Teleconference, New Mexico State Universityand the Army Research Office, December 1』(19%). Pospelov D.A., Semiotic Models in Control Systems, In. Proc, of the 19951S1C Workshop — the 10th IEEE International Symposium on Intelligent Control 6-12 (1995).'
Rabbits L, Wright G„ 1987. Card tricks for small players //Expert Systems User Vol. 22, No- И-*
Raggett D., 1977. HTML3.2 Reference Specification, - http://www.w3.org/TR/ REC-html32.
翼%* St】;kl:n[ "о理^ 1993. Functional Representation and Reasoning // IEEE Expert. Apnl. P. 65-78.山5〃
Peters L„ 1981. Software Design. N.Y.:Yourdon Press.
Piatetsky-Shapiro G. and Frawley W., eds.( 1991. Knowledge Discovery in Databases. AAAI/MIT Press.J
Pospelov D.A., Basic concepts of Situational Languages and formal means of analysis and control of natural systems, Presented at the QAT Teleconference, New Mexico State Universityand the Army Research Office, December 1』(19%). Pospelov D.A., Semiotic Models in Control Systems, In. Proc, of the 19951S1C Workshop — the 10th IEEE International Symposium on Intelligent Control 6-12 (1995).'
Rabbits L, Wright G„ 1987. Card tricks for small players //Expert Systems User Vol. 22, No- И-*
Raggett D., 1977. HTML3.2 Reference Specification, - http://www.w3.org/TR/ REC-html32.
Ramamoorthy С. V., Shekhar S„ Garg V., 1987. Software Development Support for AI Programs // Computer. Vol. 20, No. 1. P. 30-40.
Rasmussen J., Brehmer B., Leplat J., (eds.), 1991, Distributed Decision-Making. Cognitive Models for Cooperative Work. N. Y.: J. Wiley & Sons.
RDF, 1999. Resource Description Framework (RDF) Data Model and Syntax // W3C Recommendation. — hitpy/ww^VAvS.org/TR/WD-rdf-s^^ntax.
ReggiaJ. A. J98& Representing and using medical knowledge for the neurological localization // Report TR-693, Computer Science Dept., University of Maryland.
Reisman S., 1991. Developing Multimedia Applications // IEEE Computer Graphics & Applications. P. 58-66,
Richer M„ 1986. An evaluating of expert system development tools // Expert Systems. P. 166-183.
Ricoeur P., 1975. La metaphore vive, — Paris, Editions du Seuil.
Ross D.T., Goodenough J.B., Irvine C. A„ 1975. Software Engineering: Process, Principles and Goals // Computer. Vol. 8, Ns 5. P. 17-28.
Sacerdoti E., et al., 1976, Qlisp: a Language for the Interactive Development of Complex Systems // SRI, Tech, note 120,
Schlenker D. A. & Abegg G, L, 199L Scoring student-generated concept maps in introductory college chemistry. Paper presented at the annual meeting of National Association for Research in Science Teaching, Lake Geneva. WI.
Schoucksmith G., 1978. Assessment through interviewers. Oxford.
Schreiber G” Breuker J.( Bredeweg B.t Wielinga B” 1988. Modeling in KBS Development // Proceedings of the Second European Knowledge Acquisition Workshop (EKAW-88). Bonn. P. 1-15.
Schvaneveldt R. W., Durso F. T., Dearholt D, W., 1985. Pathfinder. Scaling with network structure // MCCS-85-9.
Schwartz 工,198& Scoping// IEEE Expert. Vol. 3, No. к
4Ю. Scott A., Clayton J. E„ Gibson E. L, 1994. A practical Guide to Knowledge Acquisition. Addison-Wesley Publ.
Searle J、R„ Vanderveken D., 1985. Foundations of Illocutionary Logic.- 'Cambridge Univ. Press. Shoham Y„ 1993. Agent-oriented programming // Artificial Intelligence, № 60(1).
Shaw M. L, Woodward J. B., 1988, Validation of a Knowledge Support System // Proceedings of the 2-th Knowledge Acquisition for Knowledge-Based Workshop. Banff, Canada,
Shaw M„ 1984. Abstraction Technique in Modern Programming Languages // IEEE Software. Vol, 1(4),
Shaw M. L. G, 1982. PLANET: some experience in creating an integrated system for repertory grid application on a microcomputers // International Journal of Man-Machine Studies. Vol. 17, No. 3. P. 345-360.
Shaw M. L. G., Gaines B. R„ 1984. Deriving the constructs underlying decision // Fuzzy Sets and Decis. Anal, Amsterdam. P. 335-355.
Sherstnew W.Yu., Worfolomeew AN,, Aleshin A, Yu., 1994. FRAME/2 — Application Program Interface for Frame Knowledge Bases // Proc, of JCKBSE'94, Japan-CIS Symposium on Knowledge Based Software Engineering,94. P. 168-170.
Shlaer S., Mellor S., 1992. Object Life Cycles: Modelling the World in States. Englewood Cliffs, NJ: Yourdon Press.
Shortliffe E., 1976. Computer based medical consultations: MYCIN. № Y., American Elsevier.
Shortliffe E.H., Buchanan B.G., Feigenbaum E.A., 1979. Knowledge engineering for medical decision-making: a review of computer-based clinical decision aids // Proceedings of the IEEE. Vol. 67, No. 9. P. 1207-12 24.
SIGSOFT, 1986. ACM SIGSOFT Software Engineering Notes. Vo]. 11, No. 4, August.
421、Sisodia R., Warkentin M., 1992. AI in business and management // PC AI. Jan/ Feb. P. 32-34.
SKDL, 1998. Human Agent Interaction // FIPA98 Draft Specification: Part 8.— http://www.cset.it/fipa/fipa8713.doc
Slagle J. R., Gardiner O. A., Kyungsook N., 1990. Knowledge Specification on an Expert System // IEEE Expert. August. P. 29-38,\
Slagle J. R.( Gaynor M., 1983. Expert System Consultation Control Strategy // Proceedings AAAI-83, P. 369-272.
Sloman A., 1996. What sort of architecture is required for a human-like agent? // 】B;^ed talk at Cognitive Modeling Workshop, AAAI-96, Portland Oregon, August
Sowa, J., 19f^Conceptual Structures: Information Processing in Mind and Machine. - Addison-Wesley, Ready, Massachussets.
427T叫I K., Taylor M., Hendler J., 1997. Efficient Management of Very Large Ont'og侬 // In Proceedings of American Association for Artificial Intellieence Conference (AAAI-97). AAAI/MIT Press.intelligence
Sussman GJ., McDermot D.U., 1976. From PLANNER to CONNIVER - A Genetic Approach // Proc, of 1976 Joint Computer Conference AFIPS P冲 P. 271-278.^ ГГ^'
Teitelman W., 1974. INTERLISP Reference Manual // XEROX PARC
Torgerson W. S., 1958. Theory and methods of scaling. N. Y.: Wiley.
TOVE, 1999. TOVE Manual. - Department oflndustrial Engineering, University of Toronto. — httpy/w^.ie/utoronto.ca/EIL/tove.'
Tschaitschian B.t Abecker A. and Schmalhofer, 1997. A. Putting Knowledge Into Action: Information Tuning With KARAT // In 10th European Workshop on Knowledge Acquisition, Modeling, and Management (EKAW-97).
Tuthill G.S., 1994. Knowledge Engineering. — TAB Books Inc.
Uschold M., Gruninger M„ 1996. ONTOLOGIES: Principles, Methods and Applications, // Knowledge Engineering Review. Vol. 11, No. 2.
Van der Vet P.E., Mars NJ., Speel P.H., 1994. The Plinius Ontology of Ceramic Materials // ЕСАГ94, Amsterdam.
Villemin F.-Y., 1999. Ontologies-based relevant information retrieval. — http:// www. c n am. f г/f-у v.
VITAL, 1990. VITAL: A Methodology-Based Workbench for KBS Life Cycle Support // ESPRIT-II Project 5365.
Voinov A., Gavrilova T., 1993. Knowledge Acquisition through Elicitation of Latent Cognitive Structures: Metaphor — Based Approach // Proc, of East-West International Conference on Artificial Intelligence: From Theory to Practice EWAIC'93. Moscow. P. 113-119.
WAI, 1999. Web Accessibility Initiative (WAI) Web site. — hnp://w,Av\v.w3.org/ WAI/*
Walker С. T., Miller K.R., 1988. Expert Systems 1987: An Assessment of Technology and Applications. Madison.
Wall R., Apon A. Beal J. at al., 1986. An evaluation of commercial expert system building tools // Data Knowledge Eng. P. 279-304.
Watanabe S., 1969. Knowing and Guessing. N. f: Wiley.
Waters R.C., 1985. The Programmer's Apprentice: A Session with KBEmacs // Trans. Software Eng. Vol. SE-11, No. 11.
Wayner P., 1995. Free Agents // BYTE. March. P. 105-114.
WebCompass, 1999. WebCompass Page. — http; / / w \\' w. s у mante с. с о m / techsupp/\vebcompass/kbase_\vebcompass.html.
Wielinga В., Akkermans Н, Schreiber G„ BalderJ., 1989. A Knowledge Acquisition Perspective on Knowledge-Level Models // Proceedings of the Fourth Knowledge Acquisition for Knowledge-Based Systems Workshop. - Banff, 36. P. 1-22.
Wielinga B., Schreiber G.,Breuker J., 1992. A Modelling Approach to Knowledge Engineering // Knowledge Acquisition. 4 (1). Special Issue.
Wielinga B.J., Bredcweg B., Breuker J. A., 1988, Knowledge Acquisition for Expert Systems // Proceedings of ACAI88.
Woods W. A., Bookman L. A., Houston A., Kuhns R. J., Martin P., Green S., 1999. Linguistic Knowledge Can Improve Information Retrieval // Knowledge Technology Group, Sun Microsystems, TR-99-83. — http://www.sun.com/ research/tec]irep/1999.
Wooldridge M.( Jennings N., 1995. Intelligent Agents: Theory and Practice // Knowledge Engineering Review. No. 10 (2).
Wray R. Ron C. et. al., 1994. A Survey of Cognitive and Agent Architecture,- http://krusty.eecs.umich.edu/cogarchO/
Wiig, 1990. Expert Systems: A manager's guide. Geneva: The International Labour Office of the United Nations.
Wiig K., 1996. Knowledge management is no illusion! // Proc, of the First International Conference on Practical Aspects of Knowledge Management. Zurich, Switzerland: Swiss Informaticians Society
Wilks Y„ 1976. Parsing English II // Computational Semantics. Eds. Y. Wilks, E. Sharniak. N. Y.: North-PJolland. P. 155-184.
XML, 1998. Extensible Markup Language (XML) // W3C Recommendation.— http://w\v\v.\v3.org/TR/1998/REC-xml-19980210.
Yourdon E. Constantine L, 1979. Structured Design. — Englewood Cliffs, NJ: Yourdon Press / Prentice-Hall.
Yourdon E., 1989. Modern Sructurecl Analysis. — Prentice-Hall Int. Ed.
1 4贵^1 4贵^--
1 4
贵^
1 4
贵^
-
-
Башкортостан
Уфа, «Азия», ул. Зенцова, д. 70
(оптовая продажа), ма「,《Оазис», ул. Чернышевского, д. 88, тел./факс (3472) 50-39-00.
E-mail: asiaufa@ufanet.ru
Дальний Восток
Владивосток, «Приморский Тор「овн而 Дом Книги», тел./факс (4232) 23-82-12.
Почтовый адрес: 690091, Владивосток, ул. Светланская, д. 43.
E-mail: bookbase@mail.primorye.ru
Хабаровск, «Мирс», тел. (4212) 22-74-58, факс 22-73-30. Почтовый адрес: 680000, Хабаровск, ул. Ким-Ю-Чена, д. 21.
E-mail: postmaster@bookmirs.khv.ru
Хабаровск, «Книжный мир», тел. (4212) 32-85-51, факс 32-82-50. Почтовый адрес: 680000, Хабаровск, ул. Карла М叩кса, д. 37.
Европейские регионы России
Архан「ельск, «Дом Книги^, тел. (8182) 64-00-56, факс 65-41-34. Почтовый адрес: 163061, Архангельск, пл. Ленина, д. 3.
E-mail: book@atnet.ru
Калининград, «Пресса», тел. (0112) 53-66-97, факс 53-63-87. Почтовый адрес: 236040, Калининград, ул. Подполковника Иванникова, д. 3-А. E-mail: book@pressa.gazinter.net
Краснодар, «Когорта-', тел./факс (8612) 62-54-97. Почтовый адрес: 350033, Краснов叩, ул. Ленина, д. 101,
Северный Кавказ
Ессентуки, «Россы», ул. Октябрьская, 424, тел./факс (86534) 6-93-09. Почтовый адрес. 357600, Ессентуки, а/я 80.
E-mail: rossy@kmv.ru
Сибирь
Братск, «Прометей», тел./факс (3953) 43-18-76.
Почтовый адрес: 665708, Братск, ул. Кирова. Д. 35.
Иркутск, «Продалитъ», тел. (3952) 59-13-70, факс 51-23-31. Почтовый адрес: 664031, Иркутск,
УВАЖАЕМЫЕ ГОСПОДА!
КНИГИ ИЗДАТЕЛЬСКОГО ДОМА «ПИТЕР» ВЫ МОЖЕТЕ ПРИОБРЕСТИ ОПТОМ И В РОЗНИЦУ У НАШИХ РЕГИОНАЛЬНЫХ ПАРТНЕРОВ.
ул. Байкальская, д.172,а/я 1397.
E-mail: prodalit@irk.ru; http:/www.prodalitirk.ru
Иркутск, «Антей-книга», тел./факс (3952) 34-69-38. Почтовый адрес: 664003. Иркутск, ул. Карла Маркса, д. 20.
E-mail: antey@irk.ru
Красноярск, «Книжный Мир>, тел./факс (3912) 27-39-71. Почтовый адрес: 660Q49, Красноярск, пр. Мира, д. 86.
E-mail: book-world@public.krasnetru
Нижневартовск, «Дом ю^иш», тел, (3466) 23-59-50, факс 23-27-14. Почтовый адрес: 626440, Нижневартовск, пр. Победы, д.12.
Новосибирск, «Топ-книга», тел. (3832) 36-10-26, факс 36-10-27. Почтовый адрес: 630117, Новосибирск, а/я 560.
E-mail: office@top-kniga.ru;
http://www.top-kniga.ru
Тюмень, «Друг», ул. Республики, д. 211, тел./факс (3452) 21-02-20, E-mail: drug@tyumen.ru
Тюмень, «Фолиант», тел. (3452) 27-36-06, факс 27-36-11. Почтовый адрес: 625039, Тюмень, ул. Харьковская, д. 83-А.
E-mail: foliant@tyijmen.ru
Татарстан
Казань, «Таис», ул. Гвардейская, д. 9-А, тел. (8432)76-34-55, факс 38-24-32.
E-mail: tais@bancorp.ru
Урал
Екатеринбург, магазин № 14, ул. Челюскинцев, д. 2 3, тел. (3432) 53-24-90.
E-mail: gvardia@mail.ur.ru
Екатеринбург, кВалео Плюс», тел. (3432- 42-07-75,42-56-00-
E-mail: valeo@emts.ru
Г Д. Гаврилова, В. Ф. Хорошевский
Базы знаний интеллектуальных систем
['лавный рсдпк] ор В. Уем а новОтвстствен1п>й! редактор £. С)п/югаповаРуководитель проекта И. КорнеевЛитературный редактор Н. ДубноваХудожник ". БиржаковИллюстрации М. ЖдановаВерстка М. ЖдановаКорректор В. Листова
Лицензия ИД № 01940 от 05.06.00.
Подписано в печать 29,06.01. Формат 70x100%.
Уел. п. л. 30,96. Доп. тираж 5000 экз. Заказ № 1026.
ЗАО «Питер Бук».
196105, Санкт-Петербург, ул. Благодатная, 67.
Отпечатано с фотоформ в ФГУП «Печатный двор» им. А. М. ГорькогоМинистерства РФ по делам печати, телерадиовещанияи средств массовых коммуникаций.
197110, Санкт-Петербург, Чкаловский пр., 15.
* ЭС на ЭВМ средн*】 производительности (типа ЕС ЭВМ, mainframe);
• Геиератора/Транслятора онтологий (Ontology Generator/^Translator) — компоненты отображения концептуального представления онтологий на целевые языки реализации, что обеспеч11вает доступ к ним из удаленных приложений-
Це лью второго модуля является обеспечение доступа к накопленной информации и представление ее наилучшим для пользователя образом. Этот модуль включает:
• Формирователя запросов (A Query Builder) — компонент)' построения запросов с использованием словаря брокера и при необходимости переформулиро* вания в/или утегшеннн запросов пользователя.