УДК 004.9
DOI: 10.25702/KSC.2307-5252.2018.10.130-143
А.Г. Олейник
Институт информатики и математического моделирования ФИЦ КНЦ РАН
ПРЕДВАРИТЕЛЬНЫЕ РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЙ ПО ПРОЕКТУ «РАЗРАБОТКА МОДЕЛИ, МЕТОДОВ ИНТЕГРАЦИИ И СИСТЕМНОГО ИСПОЛЬЗОВАНИЯ МЕЖДИСЦИПЛИНАРНЫХ ЗНАНИЙ И ДАННЫХ ДЛЯ ПОДДЕРЖКИ УПРАВЛЕНИЯ КОМПЛЕКСНЫМ РАЗВИТИЕМ АЗРФ»*
Аннотация
Представлен обзор результатов первых двух лет работ по проекту. Рассмотрено решение задачи определения области компетенции и структуры онтологии знаний об АЗРФ. Отличительной особенностью разрабатываемых решений является представление онтологии в виде специализированных матрицеподобных структур алгебры кортежей. Это дает возможность рассматривать задачи вывода на онтологии как задачи удовлетворения ограничений. Применение паттернов онтологического проектирования и технологий программирования в ограничениях позволило разработать методы оптимизации выполнения запросов доступа к данным на основе онтологий.
Ключевые слова:
междисциплинарные знания, интеграция знаний, онтологическое моделирование, вывод над онтологией, алгебра кортежей, удовлетворение ограничений
A.G. Oleynik
PRELIMINARY RESULTS OF RESEARCH ON THE PROJECT «DEVELOPMENT OF THE MODEL, METHODS OF INTEGRATION AND USE OF INTERDISCIPLINARY KNOWLEDGE AND DATA FOR MANAGEMENT SUPPORT OF THE RUSSIAN ARCTIC COMPLEX DEVELOPMENT»
Abstract
An overview of the results obtained in the first two years of work on the project is presented. The solution of the problem of determining the competence area and the structure of ontology of knowledge about the Russian Arctic is considered. The ontology representation in the form of specialized matrix-like structures of the algebra of tuples is distinctive feature of the solutions being developed is. The use of Ontology Content Design Patterns and constraint programming technologies made it possible to develop methods for optimizing the execution queries in the frame of ontology-based data access.
Keywords:
interdisciplinary knowledge, knowledge integration, ontology modeling, inference on ontology, tuple algebra, constraint satisfaction
Введение
Эффективное обеспечение национальных интересов России в Арктике требует разработки и реализации комплексных, системных решений в области развития данных территорий, учитывающих их специфические особенности. Для выработки таких решений существует задел в виде накопленных знаний и
* Работа выполнена при финансовой поддержке РФФИ (проект №16-07-00562-а)
фактографических данных о различных аспектах существования, развития и взаимодействия локализованных в арктической зоне объектов и систем различной природы. Однако разнородность и разобщенность имеющихся данных и знаний существенно осложняет их совместное использование при выработке системных решений. Это обуславливает актуальность разработки структуры, методов и средств формирования и использования формальной модели, обеспечивающей целостное представление междисциплинарных знаний и данных об Арктической зоне РФ (АЗРФ) - объектах, локализованных в АЗРФ, и процессах, характерных как для отдельных крупных объектов, так и для образуемых этими объектами систем. Реализация формальной модели и средств работы с ней должны обеспечить возможность комплексного использования накопленных данных и междисциплинарных знаний для выработки системных решений в области управления территориями АЗ РФ, анализа и обоснования планов развития этих территорий с учетом влияния разнородных факторов.
Устранить, или, по крайней мере, существенно снизить негативное влияние исходной неоднозначности накопленной информации, а также обеспечить возможность реализации компьютерных методов ее обработки позволяет применение онтологий. На сегодняшний день существует множество различных инструментальных средств и технологий, позволяющих разрабатывать информационные системы и программные продукты, основанные на формальных онтологиях, а также работать с онтологиями непосредственно. Наиболее популярным языком описания веб-онтологий можно назвать язык Ontology Web Language (OWL) [1]. В стэндфордском университете создана система Ontolingua [2], обеспечивающая интероперабельность создаваемых онтологий. Распространенным инструментом редактирования онтологий является бесплатное программное средство с открытым исходным кодом Protege. В качестве альтернативы хранения онтологий в файлах применяют программные средства - RDF-репозитории [3] или RDF-хранилища.
При решении практических задач возникают ситуации, когда базовых механизмов вывода, предоставляемых существующими средами разработки онтологий, оказывается недостаточно и требуется совместно в единой математической системе использовать различные виды рассуждений. Ситуация осложняется, если параметры модели не полностью определены. В настоящем проекте в качестве единой методологической базы для организации рассуждений на онтологиях используется и развивается математический аппарат алгебры кортежей [4]. Разрабатываемые методы реализуются в рамках парадигмы программирования в ограничениях. При этом существующие в теории удовлетворения ограничений стратегии ускорения поиска дополняются оригинальными методами, основанными на свойствах АК-объектов.
В ходе реализации проекта, наряду с распространенными методами и технологиями, используются обладающих новизной методы и информационные технологии, разработанные и развиваемые с участием членов коллектива исполнителей проекта. К ним, в частности, относятся: модифицированная методика формирования и анализа формализованных концептуальных описаний структуры и задач различных областей деятельности, играющих существенное значение для АЗРФ; технология онтологических паттернов; методы удовлетворения ограничений для реализации процедур вывода на онтологии.
Проект "Разработка модели, методов интеграции и системного использования междисциплинарных знаний и данных для поддержки управления комплексным развитием Арктической зоны Российской Федерации" поддержан грантом РФФИ № 16-07-00562-а и выполняется коллективом в составе: д.т.н. Олейник А. Г. (руководитель), к.т.н. Зуенко А.А., к.т.н. Ломов П. А., Олейник Ю.А., к.т.н. Фридман О.В.
В настоящей работе представлен обзор результатов, полученных в ходе двухлетних работ по решению заявленных в проекте задач. Более детально результаты изложены в публикациях, указанных в списке использованных литературных источников настоящей работы.
Определение области компетенции и разработка структуры онтологии знаний об АЗРФ
С целью определения области компетенции разрабатываемой онтологии проведен анализ основных видов деятельности в АЗРФ. При этом использовались основополагающие документы, характеризующие текущее социально-экономическое состояние территорий АЗРФ и определяющие стратегические планы развития этих территорий. В первую очередь это «Основы государственной политики Российской Федерации в Арктике на период до 2020 г. и дальнейшую перспективу» и «Стратегия развития Арктической зоны Российской Федерации и обеспечения национальной безопасности на период до 2020 года». Кроме этого, были проанализированы стратегии развития субъектов и территорий, входящих в АЗРФ согласно Указу Президента РФ № 296 от 2.05.2014г. и ряд отчетов о реализации этих стратегий.
Анализ показал, что перспективы социально-экономического развития территорий АЗРФ традиционно связываются с добычей и переработкой природных ресурсов и, в первую очередь, углеводородного сырья. Важное место в стратегических планах занимает развитие Северного морского пути. Архангельская область выделяется весомым вкладом судостроения в региональную экономику. Определенные надежды в европейской части АЗРФ возлагаются на развитие туризма. Отдельно отмечается необходимость поддержки и развития традиционной деятельности коренных народов Севера. С перспективами реализации «ресурсных» проектов тесно связаны виды деятельности, которые можно условно отнести к инфраструктурным. Это развитие транспортно-логистической сети, финансовой системы, систем кадрового обеспечения, здравоохранения, жилищно-коммунального хозяйства. Специфические условия территорий АЗРФ требуют обязательного включения в рассмотрение деятельности, связанной с охраной окружающей среды и снижением отрицательных экологических последствий всех остальных видов деятельности.
Важным аспектом развития АЗРФ является деятельность, связанная с укреплением оборонспособности. Но в рамках настоящего проекта она не рассматривалась.
Проект ориентирован на разработку средств поддержки управления функционированием и развитием различных подсистем и объектов, локализованных на территории АЗРФ. В качестве объектов управления при решении различных задач может выступать как конкретный физический объект (предприятие, муниципальное образование и т.п.) или процесс (строительство
предприятия, формирование экономического кластера и т.п.), так и сложная пространственно-распределенная подсистема (региональный топливно-энергетический комплекс, северный морской путь и др.). Управление осуществляется на различных уровнях различными органами - от федерального до «объектового». Соответственно инструменты поддержки, создаваемые на основе результатов проекта, должны обеспечивать целостное представление и целевую обработку мультидисциплинарной информации (данных и знаний) в интересах решения задач управления «арктическими объектами». Именно общность объектов исследований и управления определена исполнителями проекта в качестве «связующего звена» интегрируемых в рамах целостной информационной системы гетерогенных знаний и данных. В работах [5, 6] исполнителями проекта представлен подход к формированию структуры мультидисциплинарной информационной системы и некоторые результаты его реализации. При построении системы в проекте используются и развиваются механизмы обеспечения доступа к базам данных на основе онтологии (Ontology-based data access, OBDA) [7], что дает возможность воспользоваться преимуществами как отработанных механизмов работы с базами данных, так и методов работы с онтологиями [8].
На основе результатов анализа определена базовая система классов и отношений онтологии междисциплинарных знаний и данных об АЗРФ. Описание онтологической модели приведено в работе [5], где для формируемой структуры используется название «Интегрированное пространство знаний» (ИПЗ). Разрабатываемая комплексная онтология формируется из модулей, определяемых в соответствии с уровнем абстракции их понятий и функционального назначения их содержимого. Каждый модуль представляет собой файл, содержащий отдельную онтологию, описанную с помощью языка веб-онтологий OWL. При построении онтологии использованы - базовая формальная онтология (Basic Formal Ontology, BFO) [9] и ее расширение -онтология информационных артефактов (Information Artifact Ontology, IAO) [10]. При формировании исследовательской версии онтологии знаний об АЗРФ использовалась как информация об исследованиях, проводимых разнопрофильными научными институтами и подразделениями Кольского научного центра РАН, так и представленная в зарубежных информационных ресурсах с открытым доступом. В частности, использован каталог полярных данных (PolarData Catalogue: https://www.polardata.ca), данные Arctic Data Ecosystem Map (http://arcticdc.org/products/data-ecosystem-map) и данные, представленные на web-сайте геологической службы Финляндии (Fennoscandian Ore Deposit interactive map and Database (FODD): http://en.gtk.fi/informationservices/databases/fodd/). Сформированная на текущий момент версия онтологии доступна в GIT-репозитории по адресу: https://github.com/palandlom/ontology-of-integrated-knowledge-space. Онтология содержит 56 классов, 30 объектных свойств и тезаурус со 116 экземплярами терминов, относящихся к «арктической» деятельности. При формировании тезауруса использовался проект ГОСТ Р «Проведение исследований в полярных регионах. Термины и определения», разработанный АНО НИЦ «Полярная инициатива». Указанный стандарт в 2018 году был рекомендован к утверждению после рассмотрения Техническим комитетом по стандартизации и прохождения экспертизы [11].
Для упрощения разработки и оперирования прикладными онтологиями, ориентированными на использование в рамках создаваемой в проекте единой информационной среды, было принято решение формировать их как совокупность реализаций онтологических паттернов содержания (Ontology Content Design Patterns, CDP) [12]. Это позволит экспертам предметных областей работать не со специфическими языковыми конструкциями (аксиомами OWL, триплетами RDF), а их комбинациями, имеющими описания своего назначения и способов применения. В проекте используются онтологические паттерны содержания, которые описывают возможные варианты представления знаний предметной области в виде фрагментов онтологии, представляющих собой связанные отношениями наборы классов онтологии. Для каждого паттерна задается обобщенное определение ситуации (General Use Case, GUC), в которой необходимо его применять, а также набор квалификационных вопросов на естественном языке, определяющие область компетенции паттерна. Каждый из таких вопросов может быть преобразован в запрос к онтологии, ответ на который гарантированно будет получен в случае реализации соответствующего паттерна. При формировании разрабатываемой онтологии были выделены целостные фрагменты понятийной системы IAO, представляющие концепты. Выделенные фрагменты расширены с учетом организации научной деятельности в РФ и задач применения разрабатываемой онтологии и локализованы в виде отдельных онтологических паттернов содержания. Каждый такой паттерн представляется в виде мини-онтологии в отдельном файле и решает одну задачу онтологического моделирования [5].
При решении практических задач разработчик прикладной онтологии может не обнаружить в системе готового паттерна, полностью отвечающего требованиям конкретной задачи. В рамках проекта разработана технология автоматизированного создания новых паттернов на основе уже имеющихся в онтологии. Создание нового «комбинированного» паттерна не всегда может быть реализовано простым объединением существующих фрагментов онтологий, а требует модификации как их структуры, так и отношений между ними. Технология автоматизированного синтеза составных онтологических паттернов содержания для их последующего применения подробно представлена в работе [13]. В указанной работе описана общая процедура синтеза составного паттерна содержания, рассмотрены способы подбора паттернов -участников синтеза, а также специфические случаи комбинирования распространенных онтологических паттернов содержания с использованием, в частности, процедур «поглощение» и «включение». В качестве примера рассмотрена генерация составного паттерна для представления действия, состав участников которого определяет его вероятную продолжительность. Разработанная технология реализована в виде JAVA-библиотеки для применения в составе программного инструментального средства разработки онтологий на основе онтологических паттернов содержания.
Представление онтологии матрицеподобными структурами алгебры кортежей
Управление большим RDF-хранилищем онтологии является ресурсоемкой задачей с точки зрения физической организации хранилища, проведения индексирования триплетов, а также выполнения запросов. Производительность информационной системы падает с возрастанием объема данных и сложности
запросов к онтологии, включающих конъюнкцию нескольких шаблонов, так как для ответа на запрос перебирается большое число связок триплетов. Использование более сложных способов группировки триплетов в таблицы (cluster-property table) [14] далеко не всегда обеспечивает устранение проблемы снижения производительности при обработке запросов. В качестве варианта решения указанной проблемы в проекте предложено структурировать представление RDF-хранилища в виде специализированных матрицеподобных структур. Такое представление RDF-хранилища позволит сократить расход памяти компьютера для хранения RDF-триплетов, а также повысить эффективность обработки SPARQL-запросов. Для реализации предлагаемого представления используется формальный аппарат описания задач удовлетворения ограничений с помощью матрицеподобных структур. Применение данного аппарата позволяет более эффективно, по сравнению с табличным представлением, описывать, хранить и обрабатывать нечисловые ограничения предметной области.
Нечисловые или качественные ограничения (правила, логические формулы, многоместные отношения) играют важную роль при моделировании многих предметных областей. Для представления и обработки таких ограничений предложено использовать два типа матрицеподобных структур: C— системы и D— системы. Эти структуры предлагается рассматривать как ограничения над конечными доменами, а рассуждения на данных структурах реализовывать в форме процедур решения задачи удовлетворения ограничений (Constraint satisfaction problems, CSP) [15]. С помощью С— систем моделируются дизъюнктивные нормальные формы (ДНФ) конечных предикатов, а с помощью D-систем — конъюнктивные нормальные формы (КНФ).
Формирование матрицеподобных структур, соответствующих фрагментам (паттернам) онтологии, осуществляется на основе системы правил отображения. Каждому классу фрагмента онтологии сопоставляется определенная переменная (атрибут), а каждому экземпляру класса определенное значение данной переменной (атрибута). Каждому типу связи онтологии сопоставим бинарное ограничение (матрицу ограничений). Каждая строка матрицы ограничений описывает некоторое множество дуг между экземплярами соответствующих классов онтологии.
Представление онтологии C- и ^-системами позволяет решать задачи ускорения логического вывода и обеспечения семантической корректности онтологии в рамках парадигмы программирования в ограничениях, используя накопленный в этой области опыт решения задач комбинаторного поиска. Учет дополнительных (нелогических) ограничений предлагается выполнять в виде, так называемых, глобальных ограничений, для которых в теории удовлетворения ограничений имеются специализированные эффективные алгоритмы обработки [15].
Хранение исходных данных и результатов вычислений над матрицеподобными структурами осуществляется в формате XML (Extensible Markup Language). Для корректного представления матрицеподобных структур разработана специальная структура XML-файлов.
Корневой элемент XML-документа - ntDoc - содержит элементы для хранения доменов, атрибутов, схем отношений и систем.
Элемент для хранения доменов ntDomain содержит два атрибута. Атрибут name служит для обозначения имени домена, а атрибут type указывает тип данных домена и может принимать одно из следующих значений: "string" для строкового типа данных, "int" - для целочисленного, ''float" - для числа с плавающей запятой. Внутри ntDomain размещаются элементы element, которые содержат значения, принадлежащие домену.
Элемент ntAttribute содержит имя атрибута name и имя соответствующего ему домена domain.
Элемент ntScheme имеет атрибут name для обозначения имени схемы и содержит элементы element, в каждом из которых указывается атрибут, входящий в схему.
Элемент ntSystem имеет более сложную структуру. Атрибут name указывает имя системы. Scheme содержит имя схемы для описываемой системы. Type может принимать значение "c" для С-систем или "d" для D-систем.
Каждая система состоит из элементов nt, служащих для представления кортежей. Каждый из элементов nt содержит элементы component, обозначающие компоненты. Каждая компонента содержит элементы element, указывающие, какие элементы домена входят в данную компоненту.
Для различных целей XML документы, содержащие описания матрицеподобных структур, могут преобразовываться в другой формат. Например, в HTML-документ с использованием стилей CSS (Cascading Style Sheets) для отображения.
В разрабатываемой системе предусматривается следующие возможности: сохранение документа в долговременной памяти в виде дерева XML с использованием XMLDoc; загрузка документа из XML-файла; визуализация документа в HTML-странице с использованием стилей для отображения в браузере.
RDF-формат представления онтологии является подмножеством XML. Поэтому сохранение онтологии в этом формате (файле с расширением «*.owl»), позволяет оперировать с представленными данными и знаниями как с XML-документом. В проекте для преобразования онтологии, созданной в редакторе Protégé и сохраненной в RDF-формате, в XML-файл, содержащий описание онтологии уже в виде совокупности матрицеподобных структур, были сформулированы специализированные правила на языке XSLT (eXtensible Style Language for Transformations).
Основными тегами RDF-формата, используемыми для представления онтологии, являются: тег <owl:Class> - служит для описания некоторого класса онтологии; тег <owl:Restriction> - служит для описания связей между классами, является вложенным тегом в тег <owl:Class>, который выступает в качестве источника связи; <owl:onClass> - является вложенным тегом тега <owl:Restriction> и описывает класс-приемник для данной связи, тег <owl:NamedIndividual> - позволяет задать конкретные экземпляры классов, и кортежи отношений. В основе предложенного алгоритма преобразования исходного XML-файла онтологии в требуемый XML-файл описания соответствующих онтологии матрицеподобных структур лежит набор правил трансформации, устанавливающих соответствия между тегами исходного и результирующего файлов.
Использование контекстно-ориентированного метода управлению ограничениями
Для повышения релевантности извлекаемой информации и скорости обработки запросов конечного пользователя при решении задачи интеграции разнородных знаний и данных об Арктической зоне Российской Федерации исполнителями проекта развит контекстно-ориентированный метод к управлению ограничениями. Данный метод представляет собой модификацию ранее разработанных методов, ориентированных на повышение эффективности обработки информации.
В работе с создаваемой информационной системой участвуют следующие объекты: пользователь, прикладная программа (приложение), запрос приложения и задача. Каждый из перечисленных типов объектов характеризуется собственным контекстом. Контекст взаимодействия складывается из контекстов взаимодействующих объектов, а каждый из них, в свою очередь, подразделяется на абстрактный и прикладной контексты. Абстрактный контекст объекта соответствует интенсионалу этого объекта. Прикладной контекст объекта позволяет описать некоторое множество его экземпляров. Контексты объектов взаимодействия формализуются с использованием технологии шаблонов онтологического проектирования (ODP), а также авторских разработок в области представления и обработки нечисловых ограничений предметной области в виде специализированных матрицеподобных структур.
Абстрактный контекст задачи декларативно описывается в виде отношений онтологии, формализующей задачу исследования. Прикладной контекст исследования задается посредством приписывания классам онтологии конкретных экземпляров. Для облегчения генерации абстрактного контекста задачи (того или иного исследования) в проекте разработаны такие шаблоны онтологического проектирования, как: «Информационная сущность», «Планируемый процесс», «Исследование», «Предмет исследования», «План исследования», «Цели и задачи исследования», «Метод исследования», «Публикация по исследованию».
При работе с онтологией для каждого квалификационного вопроса пользователя формируется соответствующий запрос на специализированном языке SPARQL. Для выполнения процедур анализа SPARQL-запрос должен быть разложен в набор конъюнктивных запросов. Абстрактный контекст конъюнктивного запроса описывается тройками-триплетами, которые соответствуют связям в графе онтологии. Прикладной контекст запроса получается из абстрактного после приписывания классам конкретных экземпляров, значений (где это необходимо). При представлении контекстов SPARQL-запроса с помощью предложенных матрицеподобных структур каждому триплету вида «субъект X - свойство - объект Г», где в качестве субъекта и объекта используются имена, сопоставляется нечисловая матрица Щ_ХГ\, а каждому триплету, содержащему в позициях объекта и/или субъекта конкретные значение, сопоставляется определенный кортеж матрицы ЩХУ].
Контекст приложения описывает возможности взаимодействующей с онтологией прикладной программы. Абстрактный контекст приложения - это список типов выполняемых приложением запросов (шаблонов запросов). Прикладной контекст приложения характеризует конкретный экземпляр программного модуля и ссылается на прикладные контексты генерируемых запросов.
Контекст пользователя также подразделяется на абстрактный и прикладной. Абстрактный контекст позволяет описать в виде специализированной онтологии некий тип пользователя, а прикладной контекст сопоставляется с конкретным человеком, работающим в рассматриваемой информационной системе, и его полномочиями (реализуемыми функциями) в системе [6].
С точки зрения решения задач проекта контекстно-ориентированное управление ограничениями по мнению авторов обладает следующими достоинствами:
• Возможность ставить и решать задачи интеллектуальной обработки данных и знаний в виде задач удовлетворения ограничений с применением современных библиотек и сред программирования в ограничениях.
• Возможность активировать только те контекстные ограничения, которые актуальны для интересующего исследования (задачи). Это позволяет гибко перенастраивать и оперативно анализировать ограничения, специфичные для конкретной предметной области, способствуя уменьшению трудоемкости решаемых задач.
• На основе анализа контекстов на этапе построения онтологии обеспечивается более детальный контроль корректности ее структуры. В результате удается автоматизировать проверки с точки зрения широкого набора ограничений.
• При совместной обработке пользовательских SPARQL-запросов и контекстных ограничений отслеживаются некорректные обращения к онтологии, что позволяет выявлять некорректности в структуре запроса еще до исполнения запроса и тем самым повысить быстродействие всей разрабатываемой информационной системы.
Применение паттернов онтологического проектирования для оптимизации выполнения запросов доступа к данным
Подход к построению систем, основанных на знаниях, подразумевающий комбинирование онтологии, представляющей понятийную систему предметной области, и реляционной базы данных, используемой для хранения данных, соответствующих заданным в онтологии понятиям получил название Ontology-based data access (OBDA) [7,8]. В рамках указанного подхода онтология используется в качестве основы для формирования пользовательских запросов, а база данных для получения результатов их выполнения. Это позволяет обеспечить скорость выполнения онтологического запроса сходную со скоростью выполнения запроса в рамках традиционного подхода с применение только базы данных. Повысить производительность базы данных можно за счет предварительного построения индексов для ее таблиц. Однако формирование эффективных индексов требует априорного знания перечня запросов, которые будут выполняться над базой данных.
Как было указано выше в данной статье, разрабатываемая онтология формируется с использованием онтологических паттернов содержания (CDP). С каждым паттерном связан набор квалификационных вопросов, которые формулируются на естественном языке. Предполагается, что именно ответы на данные вопросы будут преимущественно интересовать пользователя при работе с информационной системой. На основе этого предположения в проекте
разработана технология проведения априорной индексации базы данных, что обеспечивает ускорение отклика системы на запросы пользователя. При реализации информационной системы на основе OBDA подхода для каждого из включенных в онтологию паттернов определяется фрагмент схемы базы данных. Принцип соотнесения элементов онтологии и схемы данных соответствует рекомендациям консорциума W3C [16]. В качестве программной српеды для реализации подхода OBDA был использован Ontop [17]. Данное программное средство реализует трансляцию онтологического запроса (SPARQL-запроса) в SQL-запрос над базой данных, а также представление результатов выполнения SQL-запроса в виде набора связанных экземпляров онтологии пользователю [18].
Разработанная технология применения паттернов онтологического проектирования для оптимизации запросов доступа к базе данных более подробно представлена исполнителями проекта в работе [19]. Для каждого паттерна формируемой онтологии разрабатывается набор правил мэппинга в формате Ontop для переписывания исходного запроса SPARQL-запроса в SQL-запрос. Каждое правило соответствует одной таблице реляционной базы данных и включает компоненты: source - SQL-запрос и target - множество шаблонов для генерации выражений АЬох, представляющие собой конкретные экземпляры классов онтологии, из результатов выполнения SQL-запроса.
В качестве примера в работе [19] рассмотрен паттерн «Спецификация исследования» (Investigation specification), который позволяет определить такие «части» спецификации исследования, как: объект; предмет; цель; действия/методы. Приведен набор квалификационных вопросов данного паттерна, соответствующий паттерну фрагмент схемы реляционной базы данных, включающий 9 таблиц, и пример правила мэппинга.
Далее в [19] рассмотрено формирование индексов базы данных на основе квалификационного вопроса: «Какой метод планировалось применять для исследования данного объекта?» для паттерна «Спецификация исследования». Экспериментальная оценка применения технологии априорной индексации базы данных на основе квалификационных вопросов онтологических паттернов содержания проводилась на тестовом наборе данных (около 10 000 000 связанных экземпляров онтологии, представленных в 9 таблицах реляционной базы данных по 1000 000 строк в каждой). Эксперименты, заключавшиеся в выполнении серий SPARQL-запросов с помощью системы Ontop, показали, что среднее время выполнения запроса после индексации уменьшается в 7-8 раз.
Обработка SPARQL-запросов к онтологии с использованием программирования в ограничениях
Представление RDF-триплетов онтологии в виде специализированных матрицеподобных структур (С-систем) дает возможность рассматривать задачи вывода на онтологии как задачи удовлетворения нечисловых ограничений (CSP). Среди разработанных алгоритмов удовлетворения нечисловых ограничений особый интерес представляют алгоритмы распространения ограничений, которые позволяют преобразовать за полиномиальное время описание задачи CSP к более простому виду с сохранением всех решений, то есть сократить пространство поиска. Для случая, когда задача CSP выражена в виде совокупности С-систем,
сформулированы правила редукции, осуществляющие упомянутые преобразования [20].
Основная идея разработанного метода обработки SPARQL-запросов к онтологии состоит в том, чтобы анализу подвергается не вся исходная CSP целиком, а выбираются отдельные матрицы, которые соответствуют унарным и бинарным ограничениям (ограничениям на одну или две переменные). Анализ таких матриц позволяет обрабатывать меньшее число строк и/или столбцов, чем в исходной задаче. При этом выявление «лишних» значений в доменах атрибутов какой-либо матрицы влечет удаление этих же значений из доменов атрибутов всей задачи CSP, то есть влияет на все ограничения. В результате могут появляться новые унарные и бинарные ограничения, к которым вновь применяются алгоритмы распространения ограничений.
При распространении ограничений сначала обрабатываются унарные ограничения, поскольку с их помощью можно непосредственно «сузить» домены переменных. Затем активируются бинарные ограничения, поскольку их обработка более трудоемка. Активация ограничений осуществляется по событиям. К таким событиям, в частности, относится «усечение» домена.
Типовой SPARQL-запрос на извлечение данных, как правило, представляет собой длинную связку (join) шаблонов триплетов, включающих различные и труднопредсказуемые комбинации предикатов, что негативно влияет на скорость его выполнения. При больших объемах RDF-хранилищ применение разработанных методов удовлетворения ограничений позволяет ускорить обработку SPARQL-запросов по сравнению с традиционным подходом, базирующимся на динамическом программировании. Это обусловлено тем, что динамическое программирование предполагает реализацию стратегии поиска в «ширину», а методы удовлетворения ограничений используют поиск в «глубину».
Применение методов распространения ограничений, разработанных ранее одним из исполнителей проекта, для ускорения обработки SPARQL-запросов к онтологиям рассматривается в работе [21]. В качестве примера представлено формирование ответа на один из квалификационных вопросов онтологического паттерна содержания для понятия «Процесс исследования» (Investigation). Описаны ограничения, сопоставляемые каждой связи онтологии, которая фигурирует в рассматриваемом SPARQL-запросе, и их представление в виде С- систем с учетом введенных конкретных экземпляров классов. Описанная далее в работе [21] пошаговая схема процедуры распространения ограничений наглядно иллюстрирует механизм редукции пространства поиска в процессе вывода решения CSP.
Количественная оценка эффективности разработанных процедур распространения ограничений
Как показали исследования авторов [22], обработка качественных зависимостей, представленных в виде логических выражений и правил, в современных средах программирования в ограничениях недостаточно эффективна, и не может быть выполнена за приемлемое время даже при сравнительно небольшой размерности задачи. Отличие качественных (нечисловых) ограничений от числовых состоит в том, что переменные даже в рамках одного ограничения могут иметь различные конечные области определения, а сами ограничения, как правило, не являются бинарными.
Для реализации авторских алгоритмов вывода на ограничениях, представленных в виде специализированных матрицеподобных структур (C-систем), была выбрана библиотека Choco, которая является бесплатным программным обеспечением с открытым кодом, созданным для описания и решения задач удовлетворения ограничений [23]. На основе библиотеки Choco, был разработан набор классов, расширяющий функционал основной библиотеки для представления и решения задач CSP в виде набора С-систем. В отличие от типовых ограничений библиотеки Choco и их распространителей, работающих с присваиваниями переменных, распространитель на С-системах работает с компонентами системы, которые могут содержать несколько значений. В процессе распространения он упрощает саму С-систему, с каждой итерацией уменьшая объем обрабатываемой информации и увеличивая, тем самым, скорость нахождения решения.
Проведенные исследования, представленные в работе [22], продемонстрировали, что применение предложенного подхода к обработке качественных ограничений, частным случаем которых являются связи онтологии, дает существенный выигрыш времени по сравнению со встроенными в библиотеку Choco алгоритмами распространения качественных ограничений. В качестве тестовой была выбрана задача N-Queens, ввиду удобства ее масштабирования. Кроме того, данная задача также моделируется в виде совокупности бинарных С-систем, как и исследуемые онтологии. При решении задачи N-Queens, когда требовалось найти все ее решения с лимитом по времени в две минуты, реализуемый в рамках проекта подход позволил обработать пространство поиска размерности 12 в 12 степени. При этом, использование стандартных средств Choco не дало возможности исследовать пространство поиска более 9 в 9 степени . В случае, когда ставилась задача, найти хотя бы одно решение за фиксированное время (две минуты), стандартные средства Choco переставали укладываться в отведенное время уже при размерности пространства поиска, оцениваемого числом 19 в 19 степени. Предлагаемые же авторами методы справились с пространством поиска размерности 76 в 76 степени.
Заключение
Созданная и развиваемая исследовательская версия междисциплинарной онтологии Арктической зоны РФ обеспечивает возможности отработки методов, технологий и средств манипулирования формализованными междисциплинарными знаниями. При разработке онтологии использована технология онтологических паттернов. В развитии данной технологии исполнителями разработана технология автоматизированной генерации составного паттерна по требованиям пользователя. Использование наборов определяемых для паттернов квалификационных вопросов положено в основу разработанных механизмов оптимизации выполнения запросов доступа к данным в OBDA - системах.
Отличительной особенностью разрабатываемых в проекте решений является представление концептов и связей онтологии в виде матрицеподобных структур алгебры кортежей. Это дает возможность рассматривать задачи вывода на онтологии как задачи удовлетворения ограничений над конечными доменами. В настоящее время существует большое количество инструментальных сред программирования в ограничениях, однако, стандартов для подобного рода программных продуктов пока не существует, что свидетельствует об
актуальности и новизне исследований в рамках данного подхода, а также об актуальности поиска новых методов и способов программного представления ограничений. В проекте особое внимание уделяется работе с качественными ограничениями. Именно такой тип ограничений свойственен сложным системам, к которым, в частности, относятся и разнородные системы, локализованные в АЗРФ. Отличие качественных ограничений от числовых состоит в том, что переменные даже в рамках одного ограничения могут иметь различные области определения. Существующие на данный момент в теории удовлетворения ограничений методы, основанные на табличном представлении нечисловых ограничений, являются недостаточно эффективными для работы с ограничениями такого типа. Разрабатываемые методы и алгоритмы позволяют расширить область применения технологии программирования в ограничениях для организации процедур вывода на онтологиях. В частности, реализующий методологию программирования в ограничениях метод обработки SPARQL-запросов к онтологии междисциплинарных знаний обеспечивает поэтапное снижение размерности пространства поиска решения. При больших объемах RDF-хранилищ компактное представление онтологии в виде С-систем в сочетании с реализацией разработанных алгоритмов распространения ограничений позволяет значительно ускорить обработку запроса по сравнению с «традиционной» реализацией обработки на основе динамического программирования.
Литература
1. Web Ontology Language (OWL). - Режим доступа: https://www.w3.org/OWL
2. Ontolingua. - Режим доступа: http://www-ksl.stanford.edu/software/ontolingua
3. Resource Description Framework (RDF). - Режим доступа: https://www.w3 .org/RDF
4. Кулик, Б. А. Алгебраический подход к интеллектуальной обработке данных и знаний/ Б. А. Кулик, А. А.Зуенко, А. Я. Фридман - СПб.: Изд-во Политехнического ун-та, 2010. - 235 с.
5. Олейник, А.Г. Разработка онтологии интегрированного пространства знаний / А.Г. Олейник, П.А. Ломов // Онтология проектирования. - 2016. - Т. 6, №4(22). - С. 465-474.
6. Oleynik Andrey. Solutions for System Analysis and Information Support of the Various Activities in the Arctic / Andrey Oleynik, Pavel Lomov, Alexey Shemyakin, Alexey Avdeev// Czech Polar Reports, 2017. V. 7, № 2. - P. 271-279.
7. Ontology-Based Data Access: A Data Management Paradigm - Режим доступа: http : //www .obdasystems.com/obda.
8. Когаловский, M.P. Системы доступа к данным, основанные на онтологиях / М.Р. Когаловский // Программирование. 2012, №4. - С. 55-77.
9. Arp, R. Building Ontologies with Basic Formal Ontology/ Arp, R., Smith, B. Spear, A // The Mit Press, 2015 -- Режим доступа: https://mitpress.mit.edu/books/ building-ontologies-basic-formal-ontology
10.Smith, B. Aboutness: Towards Foundations for the Information Artifact Ontology / C. Werner, B.Smith, C. Werner // In Proceedings of the Sixth International Conference on Biomedical Ontology (ICBO). CEUR Vol. 1515 1-5. - Режим доступа: http://ceur-ws.org/Vol-1515/regular10.pdf
11.ГОСТ Р Проведение исследований в полярных регионах. Термины определения - Режим доступа: http://tk187.ru/gostr1
12. Gangemi, A. Ontology Design Patterns./ Aldo Gangemi, Valentina Presutti // In: Handbook on Ontologies. International Handbooks on Information Systems. Staab S., Studer R. (eds). Springer, Berlin, Heidelberg, 2009. - Режим доступа: https://doi.org/10.1007/978-3-540-92673-3_10.
13. Ломов, П.А. Автоматизация синтеза составных онтологических паттернов содержания / П.А. Ломов // Онтология проектирования. 2016. Т. 6, .№2(20). - С. 162172.
14.Yuksel, A.S. An Analysis of RDF Storage Models and Query Optimization Techniques/ Asim Sinan Yuksel, Ibrahim Arda Cankaya, Mehmet Erkan Yuksel// International Journal of Information Engineering and Electronic Business(IJIEEB). Vol. 7, No. 2, Mar. 2015. - P. 20-26.
15. Щербина О.А. Удовлетворение ограничений и программирование в ограничениях / О.А. Щербина // Интеллектуальные системы. 2011. Т.15, N 1-4. - С. 53-170.
16.A Direct Mapping of Relational Data to RDF - Режим доступа: https://www.w3.org/TR/2012/REC-rdb-direct-mapping-20120927
17.Ontop- Режим доступа: https://ontop.inf.unibz.it
18.Calvanese, D. Ontop: Answering SPARQL queries over relational databases / D. Calvanese, B. Cogrel, S. Komla-Ebri, R. Kontchakov, D. Lanti, M. Rezk, M. Rodriguez-Muro, G. Xiao // Semantic Web, 2017, Vol. 8, No. 3. - P. 471-487.
19.Ломов, Л.А. Технология применения паттернов онтологического проектирования для оптимизации выполнения запросов в системах обеспечения доступа к данным на основе онтологии / П.А. Ломов, А.Г. Олейник // Онтология проектирования. - 2017. - Т. 7, №4(26). - С. 443-452.
20.Зуенко А.А. Качественное моделирование технических систем на основе методов распространения ограничений / А.А. Зуенко. // Открытые семантические технологии проектирования интеллектуальных систем // Open Semantic Technologies for Intelligent Systems (OSTIS-2016): мат. VI Междунар. научн.-техн. конф., г. Минск, 18-20 февраля 2016 г. - Минск: БГУИР, 2016. -С.573-578.
21.Зуенко А.А. Применение методов распространения ограничений для ускорения обработки запросов к онтологиям/ А.А. Зуенко, П.А. Ломов, А.Г. Олейник // Труды СПИИРАН. 2017. № 1(50) - C. 112-136.
22. Zuenko, A. Programming of Algorithms of Matrix-Represented Constraints Satisfaction by Means of Choco Library / A. Zuenko, Y. Oleynik // Proceedings of the Third International Scientific Conference "Intelligent Information Technologies for Industry" (IITI'18), Advances in Intelligent Systems and Computing. Springer Nature Switzerland AG. Abraham et al. (Eds.): IITI 2018, - P. 1-10.
23.Choco Documentation - Режим доступа: http://www.choco-solver.org
Сведения об авторе
Олейник Андрей Григорьевич - д.т.н., главный научный сотрудник
e-mail: [email protected]
Andrey G. Oleynik - D. of Sci. (Eng.), chief researcher