Объектно-ориентированный подход в логических мо­делях : монография

С развитием Интернета стало очевидным, что это глобальное информа­ционное пространство является мощным независимо наполняемым бан­ком знаний человечества. Одна из фундаментальных проблем среды Ин­тернет — несоответствие больших объемов информации и примитивных алгоритмов ее обработки, например, индексирование текстовой состав­ляющей документов, поиск по тексту, и методами многомерного стати — стичекого анализа данных. Задачи, требующие интеллектуальной обра­ботки информации, такие как систематизация, классификация и плани­рование, выполняются, как правило, человеком. Поэтому автоматизация интеллектуальной обработки информации является актуальной фунда­ментальной проблемой. Для ее решения по инициативе Т. Бернерса Ли развивается концепция интернета нового поколения — семантического веба [36]. В основе СВ лежит многоуровневый подход, базирующийся на стандартизированных логических формализмах. На роль этих форма­лизмов выбраны дескриптивные логики, обеспечивающие оптимальное сочетание выразительности и эффективности. Ключевым понятием дан­ного подхода являются онтологии, объединяющие разнородную инфор­мацию о предметной области в рамках единой структуры.

Одной из трудностей СВ является то, что огромную долю обраща­ющейся в Интернете информации составляют такие структуры данных как объектные и реляционные (табличные) модели. Логические форма­лизмы слишком мощны и поэтому неэффективны по производительно­сти при работе с объектами, что выводит этот ключевой сегмент данных из под непосредственного влияния СВ. В качестве магистрального пу­ти решения этой проблемы сегодня предлагается развитие гибридных логических конструкций, объединяющих дескриптивные формализмы с классическими реляционными [53]. Однако такой подход обладает рядом существенных недостатков. Во-первых, сами дескриптивные формализ­мы обладают всем необходимым для представления структур, ориенти­рованных на работу с конкретными данными. Это делает привлечение внешних инструментов, в принципе, излишним. Поэтому формирование сложных гибридных механизмов в ситуации, когда дескриптивные ло­гики способны сами справиться с проблемой, представляется далеко не оптимальным решением. Единственное препятствие к этому сегодня — отсутствие эффективных стратегий работы с примитивными данными. Во-вторых, гибридный подход ограничивает распространение продвину­тых логических средств СВ, не выстраивая необходимой мотивации для разработчиков, которые так и не выходят за рамки реляционных баз дан­ных. В-третьих, хорошо известна проблема моделирования предметных областей средствами БД-таблиц, когда объектная модель предметной области погружается в таблицы. Это делает гибридные подходы несба­лансированными, поскольку в них логические средства работы с общи­ми знаниями совмещаются с представлением конкретных данных (объ­ектов) в рамках реляционной модели. Все эти проблемы делают акту­альной задачу моделирования объектно-ориентированного подхода непо­средственно в рамках дескриптивных логик с выстраиванием иерархии логик, где нижний уровень предназначен для эффективной (с точки зре­ния производительности) работы с конкретными данными. Иными сло­вами, актуальной является задача построения внутренней архитектуры логик с совмещеннием уровней, ориентированных как на работу с логи­ческими описаниями предметных областей, так и эффективную работу с конкретными данными об этих областях.

Монография посвящена проблеме моделирования объектных струк­тур данных в рамках дескриптивной логик.

В работе предлагается метод построения информационных систем, ориентированных на создание баз данных и знаний, в которых эффек­тивная обработка структур данных на уровне объектной модели соче­тается с интеллектуальной обработкой знаний на логическом уровне. Данный подход к построению информационных систем апробирован на онтологических базах реальной сложности в рамках программного ком­плекса Meta2. Одно из основных приложений данного метода — исполь­зование для разработки распределенных систем знаний в глобальной ин­формационной среде, а также метаописания информационных ресурсов, разработки интеллекуализированных образовательных систем и систем поддержки научных исследованиий. Реализованный в рамках Meta2 ме­тод автоматической генерации пользовательских интерфейсов для онто­логий обеспечивает доступ к системам логических описаний предметных областей для пользователей системы.

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

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

В параграфе 1.1 рассматривается словарь дескриптивных логик, ос­новные диалекты и способы расширения базовой логики. В параграфе 1.2 рассматривается структура описания терминологии дескриптивных логик. В параграфе 1.3 рассматривается блок утверждений дескриптив­ных логик.

Во второй главе вводятся логические архитектуры и на их основе вы­страивается конструкция объектно-ориентированных проекций дескрип­тивной логики.

В параграфе 2.1 выстраивается общая схема взаимодействия эле­ментов логической архитектуры. В параграфе 2.2 вводится понятие объектно-ориентированной проекции, базирующейся на расширении ло­гики F L0. В параграфе 2.3 с помощью лямбда-исчисления моделирует­ся абстрактный объектно-ориентированный язык. В параграфе 2.4 стро­ится отображение из объектно-ориентированных проекций в абстракт­ный объектно-ориентированный язык с доказательством корректности. В параграфе 2.5 рассматривается возможности и проблемы применения мультиметодов объектно-ориентированного программирования к обра­ботке знаний, представленных в формате онтологий.

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

В параграфе 3.1 рассматриваются общие проблемы и задачи по построению интерфейсов для онтологических систем на основе ОО — проекций. В параграфе 3.2 разрабатывается представление семантиче­ских сетей в виде деревьев. Вводится понятие ленивого бесконечного де­рева. В параграфе 3.3 описывается реализация разработанных подходов на базе системы Meta2.

Глава 1.

Дескриптивные логики и семантический веб

информационныеВ данной главе обсуждаются вопросы применения логических средств (в первую очередь, дескриптивных логик [33]) в рамках распределенных ин­формационных пространств, включая семантический веб [36]. Также из­ложены базовые понятия дескриптивных логик, необходимые для даль­нейшего изложения.

1.1. Логические методы пространства

Семантический веб и метаданные. Одним из серьезных рисков, свя­занных с развитием Интернета, является проблема огромных и все рас­ширяющихся объемов информации, наполняющей Интернет — информа­ции, которая плохо структурирована и может быть интерпретирована и понята только человеком. Компьютер способен, по большому счету, только искать информацию по контекстам и демонстрировать ее поль­зователю. Из-за этого осложнен поиск необходимых данных, который в настоящее время сводится к контекстному поиску по ключевым словам. В рамках концепции семантического веба [36] намечен путь к решению

этой проблемы [49], кото ки данных и знаний [83Рый базируется на логических методах обработ — ]. Основная идея заключается в использовании метаданных, привязке к информационному ресурсу некоторого допол­нительного структурированного описания о самом ресурсе с помощью логических средств, что позволяет в значительной мере повысить «ин­теллектуальный» уровень сервисов, ответственных за работу в глобаль­ной информационной среде.

Дескриптивные логики. В соответствии с концепцией семантиче­ского веба метаданные ресурса описываются с помощью дескриптивных логик [33]. Дескриптивные логики появились в начале 80-х годов прошло­го столетия. Им предшествовали сети структурного наследования [39] и системы представления знаний [64]. Был реализован ряд систем обра­ботки знаний, среди которых можно отметить Kl-One [40] как систему, которая оказала существенное влияние на дальнейшее развитие.

Параллельно с дескриптивными логиками развивались другие ло­гические средства работы со знаниями в рамках систем искусствен­ного интеллекта, среди которых большую роль сыграло логическое программирование[29], в частности, язык Пролог [1]. Пролог использо­вался и используется в большом количестве проектов в рамках решения задач искусственного интеллекта. Пролог был создан в 1973 г., а в 1976 г. появился язык Datalog [31], который является его синтаксическим под­множеством и предназначен для работы с базами данных. Методы ло­гического программирования также предполагалось использовать для

Развития глобальной информационной среды. В 2001 г. был предложен

Язык Rule ML [85], представляющий собой XML-реализацию деклара­тивного языка программирования. Эта разработка в настоящее время активно развивается [84]. Существует ряд интегральных подходов, объ­единяющих возможности дескриптивных логик и логического програм­мирования. В нашей исследовательской группе также развивается под­ход, ориентированный на интеграцию логического программирования и дескриптивных логик [13]. Польза от гибридных подходов заключается в том, что логическое программирование и дескриптивные логики ори­ентированы на решение задач, которые дополняют друг друга [37]. С другой стороны, гибридные методы более сложны в работе, возникают проблемы со взаимодействием объединяемых формализмов. Поэтому до сих пор оптимальная схема объединения не найдена.

Для продвижения интеллектуализированных средств в мировую ин­формационную среду необходим еще один этап — стандартизация этих средств. Механизмы, основанные на дескриптивных логиках, были стан­дартизованы под эгидой международного консорциума W3C [86]. Эти спецификации ориентированы на применение в рамках концепции се­мантического веба [34]. В частности, был разработан язык OWL (Web Ontology Language) [87]. Его семантика в полной мере основана на де­скриптивных логиках. Информация о предметной области описывается с помощью так называемых онтологий, которые в данном контексте пред­ставляют собой формальные описания предметных областей, основанные на выразительных возможностях дескриптивных логик. Онтологии как универсальное информационное понятие является объектом множества исследований. В частности, ведется активная работа по развитию логи­ческих методов описания онтологий и анализу понятий [66].

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

Алгоритмов [35]. Существует ряд реализаций. Наиболее известные си­стемы логического вывода в дескриптивных логиках — это RACER [45]. Их успешно применяют для решения ряда практических задач. Одна­ко существует проблема алгоритмической сложности для более вырази­тельных диалектов дескриптивных логик [32]. Также имеется ряд работ по применению метода резолюций [30] в качестве системы вывода в де­скриптивных логиках [69].

Проблемы использования логики. К сожалению, существует на­бор серьезных препятствий, не позволяющих элегантным и мощным ло­гическим средствам активно интегрироваться в глобальную информа­ционную среду. Во-первых, это алгоритмическая сложность логических средств. Выразительность языков DL приводит к уже упомянутой слож­ности систем вывода. Для решения практических задач недостаточно «теоретической» разрешимости, которая имеется почти у всех дескрип­тивных логик. Необходимо адекватное быстродействие на больших объе­мах данных в условиях ограниченных ресурсов по скорости и по памяти.

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

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

Упомянутые вопросы тесно связаны с еще одной ключевой про­блемой работы со знаниями — обработки данных процедурными мето­дами. На практике часто возникает необходимость обрабатывать дан­ные в процедурном стиле. Например, собственные средства дескриптив­ных логик не предназначены для эффективного и удобного добавле — ния/редактирования/удаления знаний, на которых система вывода ба­зируется. В настоящее время стандартным решением для процедурной обработки является использование объектно-ориентированного програм­мирования. Вопросы взаимодействия дескриптивных логик и объектно­ориентированных языков программирования (в роли которого выступает язык Java) неформально рассматривается в работе [68].

Объектные модели близки к представлению данных в виде ориенти­рованных графов. Онтологии также можно представить в виде графов. Следует отметить, что работы с онтологиями как с ориентированными графами уже существуют, например, [65]. В этой работе графы использу­ются для определения шаблонов структур на терминологическом уровне.

Существующие системы. Еще одним серьезным препятствием в продвижении логических средств является отсутствие удобных и про­стых интерфейсов к онтологиям, которые ориентированы на массового разработчика и массового пользователя. В настоящее время существует ряд систем, таких как ONTOGRID [5] и Protege [82], но они в первую очередь рассчитаны на высококвалифицированных специалистов. Ана­логичны проблемы с веб-интерфейсами к онтологиям [8]. Существующие системы основаны на предположении, что пользователь владеет матема­тическим аппаратом онтологий. Это касается как ONTOGRID, который решает задачи создания распределенных систем логических описаний на основе гридов, так и системы Protege, которая предоставляет инстру­менты для работы с логическими описаниями на уровне математических формул. Практика показывает, что это сложно для большинства пользо­вателей, что является одной из причин, из-за которых система не имеет широкого распространения. В нашей работе мы предлагаем решение про­блемы создания интерфейсов к онтологиям, основанное на бесконечных ленивых деревьях.

Наш подход. В нашей исследовательской группе разработан ряд методов и технологий в области представления знаний. Ранее разраба­тывались методы функционально-логического программирования [57]. Также развивались методы обработки знаний, основанные на семанти­ческом программировании [44], включая [59]. На основе этих подходов и с использованием дескриптивных логик, разрабатывались методы пред­ставления и обработки знаний [56].

Подход, представленный в данной монографии, основан на концеп­ции логических архитектур [7], в которых иерархия подлогик базовой логики сочетается со специализированными интерфейсами и процедур­ными модулями. Вместе с подлогиками они образуют уровни архитек­туры. Каждый такой уровень обладает определенной степенью выра­зительности и сложности, и ориентирован на определенный круг задач и пользователей. В данной работе особое внимание уделяется нижнему уровню архитектуры, ориентированному на эффективную работу с мас­совыми данными, обладающими простой структурой. Нами был разрабо­тан такой формализм, названный объектно-ориентированной проекцией [7]. Построение верхних уровней — задача на будущее. Верхние уровни логических архитектур должны базироваться на значительно более вы­разительных формализмах, ориентированных на представление знаний. В качестве таких формализмов могут быть выбраны разнообразные де­скриптивные логики, но не только они. Например, представляется весь­ма перспективным исследовать возможности интеграции оо-проекций с исчислением позитивно-образованных формул [2] — формализмом, об­ладающим большой компактностью, выразительностью и прикладными возможностями (см. напр. [4]).

Большое внимание было уделено реализационным аспектам, что­бы сделать подход конкурентоспособным. Была реализована система Ontobox [12], ориентированная на объектные модели, погруженные в рамки дескриптивных логик. Аналогично языку запросов SQL в реля­ционных базах данных, для разрабатываемых нами логических систем также необходим язык запросов, через который можно получать инфор­мацию из баз знаний и манипулировать их содержимым. Нашей иссле­довательской группой был разработан такой язык — Libretto — семантика которого построена на логике SHOIN (D) [55]. Также в рамках проек­та большое внимание уделялось проблеме взаимодействия с массовым разработчиком информационных систем, а следовательно пользователь­ским интерфейсам. Разнообразные идеи и подходы, связанные с этой

Проблемой, проверялись на экспериментальном уровне в рамках системы

Meta2 [11], предназначенной для работы с онтологиями через графиче­ский интерфейс пользователя.

Большое внимание уделялось апробированию результатов работы. Наш опыт показывает, что данный подход имеет широкий спектр прило­жений. Следует упомянуть систему поддержки междисциплинарных ис­следований озера Байкал [27], систему описания образовательных ресур­сов [22] (включая масштабный проект по внедрению системы обучения персонала на крупных опасных производствах для ОАО «СаянскХим­Пласт» [9]), систему поддержки деятельности аспирантуры «Аспирант» [6], систему работы с мультимедийной информацией [21] и приложения, связанные с разработкой информационной ресурсов и веб-приложений.

Основная роль результатов, представленных в данной монографии, заключается в налаживании «мостов» между различными ключевыми аспектами создания информационной системы, базирующейся на среде обработки знаний Ontobox. Во-первых был сформирован формализм оо — проекций как эквивалент объектных моделей в рамках дескриптивных логик. Было доказано соответствие данной подлогики DL типам данных объектно-ориентированного программирования. Это позволило постро­ить подход к применению ООП для построения процедурных методов работы с онтологиями. Для организации работы с пользователями, были исследованы и созданы инструменты по организации пользовательского интерфейса на основе бесконечных ленивых деревьев.

1.2. Основные понятия дескриптивных логик

Дескриптивными логиками [33] принято называть класс формализ­мов, предназначенных для представления и обработки знаний (KR — формализмов). В рамках дескриптивных логик знания о предметной области (о мире) представляются через выстраивание отношений меж­ду понятиями предметной области. На основе этих понятий, которые еще называют терминологией, определяются свойства объектов в домене. Данную совокупность знаний называют описанием предметной области.

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

Как система формализации знаний в концепции Интернета нового поко­ления — семантическом вебе (Semantic Web [83]).

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

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

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

Далее буквами A и B будем обозначать атомарные концепты, буквой R — атомарные роли, а буквами C и D — сложные концепты (описания).

Следует сказать, что существует множество различных языков де­скриптивной логики. Для упрощения в дальнейшем будем называть их дескриптивными языками. Их основные отличия между собой за­ключаются в наборе используемых конструкторов. Язык AL (Atributive Language) был представлен в работе [71] в 1991 г. как минимальный язык, на основе которого строятся все другие дескриптивные языки.

Элементами описаний концептов в языке AL являются: атомарный концепта A, универсальный концепт Т, нижний концепт ⊥, атомар­ное отрицание —А, пересечение концептов C П D, ограничение значе­ния R.C, ограниченный квантор существования ∃R. T. Заметим, что в AL отрицание может быть применено только к атомарным концептам, и только универсальный концепт может быть в области действия квантора существования (за ролью R).

Чтобы формально определить семантику AL-концептов, рассмотрим интерпретацию I, состоящую из непустого множества ∆I (область интер­претации) и функции интерпретации. Данная функция является отобра­жением каждого атомарного концепта A в множество AI ⊆ ∆I и каждой атомарной роли R в бинарное отношение RI ⊆ ∆I × ∆I. Функцию ин­терпретации можно расширить на описание любых концептов. Это воз­можно за счет использования следующего индуктивного определения: T1 = Δi

⊥i = 0

(—А)1 = Δi\А^

∀b.(a,b) ∈ ri → b ∈ ci} ∃b.(a, b) ∈ ri}(C п D)1 = CIDI (∀R. C)I = {a ∈ ∆I (∃R.τ)1 = {a ∈ ∆^

Через интерпретацию можно сравнивать различные концепты. В частности, из равенства интерпретируемых множеств двух концептов (CI = DI, для любой интерпретации I) следует эквивалентность дан­ных концептов. Общепринятая запись эквивалентности двух концептов: C ≡ D.

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *