автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Математическое и программное обеспечение интеллектуальных сервис-ориентированных систем на основе использования языков дескриптивной логики

кандидата технических наук
Курдюков, Николай Станиславович
город
Рязань
год
2014
специальность ВАК РФ
05.13.11
Автореферат по информатике, вычислительной технике и управлению на тему «Математическое и программное обеспечение интеллектуальных сервис-ориентированных систем на основе использования языков дескриптивной логики»

Автореферат диссертации по теме "Математическое и программное обеспечение интеллектуальных сервис-ориентированных систем на основе использования языков дескриптивной логики"

На правах рукописи

Курдюков Николай Станиславович

МАТЕМАТИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИНТЕЛЛЕКТУАЛЬНЫХ СЕРВИС-ОРИЕНТИРОВАННЫХ СИСТЕМ НА ОСНОВЕ ИСПОЛЬЗОВАНИЯ ЯЗЫКОВ ДЕСКРИПТИВНОЙ ЛОГИКИ

Специальность 05.13.11 -«Математическое и программное обеспечение вычислительных

машин,

комплексов и компьютерных сетей»

1 9 ФЕВ 2015

Автореферат диссертации на соискание ученой степени кандидата технических наук

Рязань 2014

005559242

005559242

Работа выполнена на кафедре «Вычислительная и прикладная математика» ФГБОУ ВПО «Рязанский государственный радиотехнический университет» (ФГБОУ ВПО «РГРТУ»),

Научный Каширин Игорь Юрьевич, доктор технических

руководитель: наук, профессор, профессор каф. ВПМ ФГБОУ

ВПО «РГРТУ»

Романчук Виталий Александрович, кандидат технических наук, доцент, ФГБОУ ВПО Официальные «Рязанский государственный университет

оппоненты: имени С.А. Есенина», заместитель декана по

науке физико-математического факультета

Сальников Игорь Иванович, доктор технических наук, профессор, ФГБОУ ВПО «Пензенский государственный технологический университет», заведующий кафедрой «Вычислительные машины и системы»

Ведущая организация:

Федеральное государственное бюджетное учреждение науки Институт программных систем им. А.К. Айламазяна Российской академии наук

Защита состоится "25" марта 2015 г. в 12.00 часов на заседании диссертационного совета Д212.211.01 в ФГБОУ ВПО «Рязанский государственный радиотехнический университет» по адресу: 390005, г. Рязань, ул. Гагарина, д. 59/1.

С диссертацией можно ознакомиться в библиотеке ФГБОУ ВПО «Рязанский государственный радиотехнический университет».

Автореферат разослан " 10" февраля 2015 г.

Ученый секретарь диссертационного совета кандидат технических наук, доцент

В.Н. Пржегорлинский

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы

Рост популярности за последние годы в сети Internet таких технологий, как облачные вычисления (cloud computing), семантические сети и Semantic Web, демонстрирует актуальность задачи организации взаимодействия Internet-pecypcoB между собой. Обеспечить такое взаимодействие позволяет сервис-ориентированная архитектура (SOA) разработки программного обеспечения. SOA-системы легко масштабируются, а их сервисные структуры облегчают повторное использование компонентов. SOA-архитектура обеспечивает создание прикладных программных систем, построенных посредством распределенных взаимодействующих сервисов.

На данный момент существует множество систем для создания web-приложений с SOA архитектурой: IBM Lotus Notes, Microsoft .NET, Oracle SOA Suite. В то же время не существует эффективных систем, способных автоматически строить интерфейсы и превращать популярные сайты прежнего поколения в элементы композитных служб или сервисных кластеров. Необходимость таких систем обусловливается проблемами реализации EAI (Enterprise Application Integration - интеграции корпоративных приложений).

EAI является интеграционной архитектурой, состоящей из набора технологий и методов для интеграции систем и приложений в масштабах корпоративных архитектур. Приложения управления цепочками поставок, документооборота, управления

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

В 2003 году стало известно, что 70 % всех ЕА1-проектов потерпело неудачу. Председатель европейского консорциума по интеграции Стив Краггс отметил проблемы реализации EAI-систем.

Главная проблема заключается в том, что элементы ЕА1-системы постоянно изменяются. Требуются ресурсы на постоянное переделывание EAI-системы и ее расширение.

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

Построение эффективной SOA-системы, лишенной или частично лишенной проблем реализации EAI-систем, целесообразно решить с помощью применения парадигмы основанного на онтологиях доступа к данным (OBDA - Ontology-Based Data Access), продвигаемых благодаря ученому из Италии Диего Кальванезе. OBDA - доступ к данным через высокоуровневый интерфейс онтологии. Центральным процессом основанного на онтологиях доступа к данным является представление базы данных на языке дескриптивной логики (ДЛ). Такой подход позволяет использовать преимущества онтологий и ДЛ. Развитие технологии языков дескриптивной логики связано с такими учеными, как Ф.Баадер, Д.Кальванезе, И.Ю.Каширин, Я.Хоррокс, К.Луц, Р.Контчаков. Вследствие применения OBDA-технологий упростилась работа по изменению структуры SOA-системы по сравнению с ведущими SOA-системами, указанными ранее. Стало достаточно для изменения структуры SOA-системы отредактировать онтологию системы, что не составляет труда для человека без специального образования, с помощью редактора онтологий. При этом открывается возможность построения интерфейсов на базе семантической сервис-ориентированной архитектуры (SSOA) продвигаемой создателем всемирной паутины Тимоти Бернерс-Ли, чем обеспечивается дальнейшее эффективное развитие технологии Semantic Web.

Цель работы

Целью диссертационной работы является создание формализма описания взаимодействия сервисов и алгоритмов построения интерфейсов \\еЬ-сервисов для реализации эффективной SOA-системы с применением парадигмы основанного на онтологиях доступа к данным.

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

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

Для реализации SOA-системы необходимо создать формализм для описания процессов системы с помощью онтологии и эффективные алгоритмы или усовершенствовать существующие OBDA-алгоритмы под работу с SOA-системами.

Основные задачи

Для достижения цели диссертации необходимо решение следующих задач.

1. Провести анализ основных видов структур взаимодействия SOA-сервисов. Привести краткий обзор экспериментальных реализаций систем OBDA, работающих с семейством языков дескриптивной логики DL-Lite. Подтвердить практическое применение дескриптивной логики и языков web-онтологий в целях предоставления онтологического доступа к данным.

2. Создать формализм для описания и анализа концептуальной модели SOA-системы, ориентированный на онтологический подход и позволяющий адекватно описывать взаимодействие web-сервисов.

3. Спроектировать алгоритмы автоматизированного построения интерфейсов web-сервисов для SOA-архигектуры, дающие возможность автоматизированно строить интерфейсы web-сервисов на основе онтологии.

4. Разработать программную реализацию SOA-системы, использующую полученные алгоритмы автоматизированного построения интерфейсов взаимодействия web-сервисов. Для перехода системы на SSOA-архитектуру структура онтологии, необходимой для работы системы, должна иметь OWL-разметку стандарта Semantic Web.

5. Обосновать теоретически сложность и завершаемость принятых решений

Объект исследования

Объектом исследования настоящей диссертации являются SOA-системы, а также их оптимизация с помощью парадигмы основанного на онтологиях доступа к данным.

Методы исследования

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

Научная новизна

1. Получен математический формализм, описывающий функционирование сервис-ориентированной системы. На основе предложенного формализма разработаны алгоритмы построения web-сервисов, использующие языки дескриптивной логики и работающие быстрее аналогов на 24 — 41%.

2. Получен метод оптимизации алгоритмов трансформации запросов под SIR-систему, отличающийся от сторонних алгоритмов трансформации запросов более быстрой работой за счет игнорирования несущественных элементов входных данных. Разница в скорости работы между полученным алгоритмом трансформации запросов и аналогами зависит от количества несущественных элементов в онтологии.

3. Доказаны теоремы о завершаемое™ и вычислительной сложности SIR-алгоритмов для онтологических SOA-систем.

4. Доказана корректность и сложностные оценки построенных алгоритмов

На защиту выносятся

1. Формализм для описания и анализа концептуальной модели SOA-системы, ориентированный на онтологический подход и позволяющий описывать взаимодействие \\7еЬ-сервисов.

2. Новые алгоритмы автоматизированного построения интерфейсов web-сервисов для SOA-архитектуры, дающие возможность автоматизированно строить интерфейсы web-сервисов.

3. Программная реализация SOA-системы, предназначенная для использования в основе систем автоматизированного построения интерфейсов взаимодействия \уеЬ-сервисов.

4. Структура онтологии, необходимой для работы SOA-системы, имеющая OWL-разметку стандарта Semantic Web.

5. Сложностные оценки алгоритмов

Теоретическая значимость

1. Получена точная семантика SOA-системы, дающий возможность описывать SOA-системы в языках дескриптивной логики. Показана эффективность математического формализма для задач

логического анализа прикладных онтологии и описания сервис-ориентированных систем.

2. Показана необходимость применения алгоритмов автоматического построения web-интерфейсов.

3. Доказаны теоремы о низкой вычислительной сложности, разрешимости и конечности SIR-алгоритмов.

Практическая значимость

Получена система SIRSystem, показывающая состоятельность систем автоматизированного построения интерфейсов взаимодействия web-сервисов. Структура онтологии, необходимой для работы системы, имеет OWL-разметку стандарта Semantic Web. Этот фактор открывает возможность перехода системы на базу семантической сервис-ориентированной архитектуры (SSOA), ориентированной на Semantic Web сервисы. Результаты тестирования подтверждают корректность полученной реализации SOA-системы. Использование дескриптивных логик гарантирует динамичность и простоту масштабирования системы, разработанной на базе представленных в диссертации алгоритмов. Небольшое количество времени, требуемое для работы SIR алгоритма, и приемлемое количество порожденных запросов доказывают эффективность алгоритма системы автоматизированного построения интерфейсов взаимодействия web-сервисов.

Реализация н внедрение результатов диссертационной работы

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

- подсистема, реализующая SIR алгоритм автоматического построения интерфейсов веб-сервисов;

- автоматизированная программная система «Система SIRSystem v. 1.0»;

- онтология «SAMAO».

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

Результаты исследований, полученные в диссертации Курдюкова Н.С., внедрены в учебный процесс по направлениям 231000 - «Программная

инженерия» и 230700 «Прикладная информатика». Разработанные в диссертационной работе алгоритмы автоматического построения интерфейсов \\теЬ-сервисов посредством логического анализа онтологий, использованы в дисциплинах «Проектирование систем искусственного интеллекта», «Информационные технологии», «Мировые информационные технологии», что подтверждается соответствующими актами.

Кроме того, была проведена государственная регистрация программы SIRGen генерации и отправки SOAP-отчетов для системы SIRSystem v. 1.0, что подтверждается свидетельством о государственной регистрации программы для ЭВМ № 2014660476, Роспатент, 2014.

Апробация работы

Основные положения диссертационной работы отражены в докладах:

~ Международной научно-практической конференции «Общество, современная наука и образование: проблемы и перспективы» (Тамбов, 2012);

— 8-й Международной научно-практической конференции «Achievement of high school» (Болгария, София, 2012);

— VIII Международной научно-практической конференции «Wyksztalcenie I nauka bez granic» (Польша, Пшемысль, 2012);

— XVIII Всероссийской научно-технической конференции студентов, молодых ученых и специалистов «Новые информационные технологии в научных исследованиях» (Рязань, 2013);

— X Международной научно-практической конференции «Strategiczne pytania swiatowej nauki - 2014» (Польша, Пшемысль, 2014).

Публикации. Основные результаты диссертации опубликованы в 16 работах. В том числе: 3 статьи в изданиях, рекомендуемых ВАК, 4 статьи в сборниках научных трудов, 9 тезисов докладов на международных и всероссийских конференциях.

Структура н объем диссертации. Диссертация состоит из введения (8 е.), 4-х глав (110 с. - 30 рисунков и 12 таблиц). Библиографический список включает 101 наименование (10 е.).

СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе приведен анализ современных технологий для проектирования в рамках парадигмы SOA. Приведена классификация аналогичных технологий и подходов. Рассмотрены языки описания взаимодействия элементов SOA-систем. Выявлены недостатки существующих подходов к проектированию интерфейсов web-сервисов и EAI-систем. Проанализированы основные виды структур взаимодействия SOA-сервисов.

Преимущество SOA-технологий заключается в многократном использовании программного кода для создания сложносоставных распределённых программных систем. Сервис-ориентированная архитектура обеспечивает кроссплатформенность и независимость от средств разработки, позволяя легко управлять и интегрировать создаваемые программные системы. Например, программные реализации компонентов SOA-системы, написанные на языке программирования Java, могут без труда быть вызваны компонентами, написанными на языке программирования С# в рамках одной или нескольких SOA-систем. Основным преимуществом SOA-архитектуры является способность к масштабируемости - управлению ростом корпоративных систем, способность предоставления и использования услуг в масштабах сети Internet, способность к сокращению затрат на организацию взаимодействия систем. Ниже приведены примеры проекта, для которого подходит SOA-архитектура. Крупной компании, которая приобретает другие небольшие компании, необходимо определить, как интегрировать приобретенные ИТ-инфраструктуры в свой проект. Для этого можно построить интерфейсы между этими инфраструктурами, тогда такие инфраструктуры целесообразно представлять в виде сервисов. Или существует большое количество web-ресурсов, которые должны взаимодействовать между собой в автоматическом или автоматизированном режиме. Тогда для каждого из web-pecypcoB целесообразно построить web-сервис и рассматривать взаимодействие сервисов как сервис-ориентированную систему(80А-систему). Благодаря способности к масштабированию и интеграции SOA-архитектура позволяет проектам адаптироваться к нуждам конкретной предметной области или процессам, проходящим в рамках этой предметной области. Инфраструктура SOA способствует также

более гибкой и оперативной работе системы, чем цельная система, построенная на огромном числе парных интерфейсов. Таким образом, SOA-архитектура обеспечивает прочную основу для систем, отвечающих условиям бизнес-гибкости и адаптивности.

Центральным понятием SOA-архитектуры является сервис (service - услуга). Существительное «услуга» определяется в словарях как «выполнение работ (функций) друг для друга». Однако надо помнить, что термин сочетает в себе следующие взаимосвязанные идеи:

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

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

- предложение выполнить работу для клиента.

Описание сервисов также передает информацию о задачах службы

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

Основанный на онтологиях доступ к данным как эффективный интерфейс для представления данных web-сервисов в формате Semantic Web является перспективной областью научно-практического исследования. Реализация данного интерфейса должна обеспечивать эффективное выполнение запросов, не уступающее по скорости запросам к современным системам управления базами данных (СУБД) при более абстрактном представлении баз данных. Это даст возможность использовать неопределенные ранее отношения и позволит обнаруживать противоречивость данных.

Для того чтобы придать формальную семантику свойствам стандартных концептуальных моделей, таких как ER и UML-диаграммы, и обеспечить эффективный доступ к большому объему данных, хранящихся в базах данных, было введено семейство дескриптивных логик DL-Lite. Из этих фактов следует, что DL-Lite подходит для задач основанного на онтологиях доступа к данным. Вычислительная сложность всех задач логического анализа в основных логиках семейства DL-Lite не превосходит полиномиальной за счет низкой выразительной силы, достаточной для описания ER-моделей. Для ответа на запросы сложность не превышает LogSpace за счет алгоритмов переписывания запросов. Под переписыванием

запросов подразумевается преобразование запроса в объединение конъюнктивных запросов на отношениях реляционной базы данных.

Рассмотрены вопросы экспериментальной реализации систем OBDA, работающих с семейством дескриптивных логик DL-Lite. Наличие таких реализаций подтверждает практическое применение дескриптивных логик и языков web-онтологий в целях предоставления онтологического доступа к данным. Поставлена задача диссертации.

Вторая глава посвящена созданию формализма для описания и анализа концептуальной модели SOA-системы, ориентированного на онтологический подход. В качестве основной теоретической концепции используется сервис-ориентированная архитектура (SOA), являющаяся парадигмой разработки программного обеспечения посредством использования распределённых слабо связанных компонентов. При разработке системы для сети Internet основным объектом концепции SOA выступает web-сервис — идентифицируемая web-адресом программная система, оснащённая стандартизированными интерфейсами для взаимодействия по стандартизированным протоколам. Основой работы web-сервисов может послужить предоставление определенных данных БД web-сервиса. В том случае если сервис предлагает услуги по обработке данных, он может запрашивать данные у другого сервиса и обрабатывать эти данные.

Для построения интерфейса ¡soa между двумя web-сервисами необходимо иметь следующую информацию в виде тройки значений:

isoa = <cs<qs'ss>>

где Cs - переменная, содержащая адрес web-сервиса, запрашивающего

информацию (адрес клиентской части); Qs - множество

запрашиваемых информационных ресурсов; Ss - переменная, содержащая адрес web-сервиса, предоставляющего информацию (адрес серверной части).

Тогда ServI(Cs,Qs,Ss) - соответствие интерфейсов взаимодействия web-сервисов Cs и Ss, выражающее структуру интерфейсов, реализованных между сервисом по адресу Cs и сервисом по адресу Ss, и передающей информацию Qs между ними.

Автоматизированное построение интерфейсов выражается в виде следующего соответствия (р\.

Соответствие (pi является отображением области определения

ServIRend(Cs,Qs,Ss) в область значений

где Сй <9Л - более общие параметры для множественного создания сервисов; - частные параметры для создания сервисов; ¡ЗОА -

элемент множества /50/1; 1ЮА - множество интерфейсов, которые подходят по данным параметрам.

Для работы системы авто построения интерфейсов \\геЬ-сервисов необходимо описать концептуальную модель взаимодействия \veb-сервисов.

На рис. 1 приведен пример композитных сервисов и сервисных кластеров в БОА-системе.

Рис. 1. Пример композитных сервисов и сервисных кластеров управления бизнес процессами

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

интерпретации конструкций дескриптивной логики, эквивалентные конструкциям языка теории множеств для элементов 80А-архитектуры, приведенным ранее. Результат сопоставления отображен в таблице.

Интерпретация I в дескриптивной логике - двойка /=<Д />,

где А - домен данной интерпретации, являющийся непустым множеством; — интерпретирующая функция, сопоставляющая любому атомарному концепту А некоторое подмножество А1 £ А и любой атомарной роли 11 некое подмножество К'еДхД.

Если сервисы Ьх Ь^, Ь52 — элементы множества В^ определенные категории Д., Вз1, Вз2, Вз3 - множества, входящие в универсальное множество и, интерфейс Нц - отношение, то система множеств, описывающая 80Л-архитектуру. подпадает под следующие ограничения (см. таблицу).

Синтаксис языка SOA-отношений

Теоретико- Эквивалентные Синтаксис языка

множественное выражения дескриптивной

описание элементов интерпретации / в логики сЯСС

концептуальной языке дескриптивной

модели БОА- логики <А£С

архитектуры

Ь3 е В, ь1 ев1 В(Ь)

В*, £ В$2 S/cß,' В,^В2

В,, Я В.?2ПВ;3 В,1 я в2'г\в3' В,^В2 П Вз

В,, и В,.: с В,а в/ и В2' £ в3' В¡U В2£ Вз

В;, и В.;2 - 0 В^иВг^Ф. BjU В2^±

(Ь;,, Ьх2) ЕЯ (b,\ b2') ей' R(bh Ъ2)

Далее необходимо усовершенствовать формальное описание 80Л-системы до возможности поддержки нюансов деления на АВох (набор утверждений) и ТВох (набор аксиом) в дескриптивной логике. Следовательно, необходимо расширить язык БОА-отношений элементом конструкции полного экзистенциального ограничения роли 3R.Bc семантикой {е 6 А | существует с! 6 А такой, что <е,с1> £ и с16 В1}, для присваивания отношений к концептам.

Требуется установить необходимую выразительность языка дескриптивной логики для формального описания вОА-системы на основе необходимых элементов конструкции: - включение концептов;

- пересечение с правой стороны аксиомы;

- объединение с левой стороны аксиомы;

- дизъюнкция концептов;

- полное экзистенциальное ограничение.

Из таблицы следует, что необходимая выразительность формального описания БОА-системы соответствует выразительности логики <Л£С.

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

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

При построении онтологической модели БОА-системы следует учесть активную работу БОА-архитектуры с базами данных (БД) и возможность использования БД для обработки больших объемов данных. Такую систему можно построить с помощью технологии ОВБА. Этот подход использует преимущества ДЛ для работы с онтологиями с целью извлечения запросов к БД. Основной принцип работы систем ОВЭА заключается в трансформации (переписывания) запросов к базе знаний в соответствующие запросы к БД. Базы данных в технологии ОВЕ>А являются структурой АВох дескриптивной логики.

Конъюнктивный запрос к базе знаний К - конъюнктивный запрос, атомы которого имеют вид А (г) или Р(хъ г2), где А и Р -соответственно атомарные концепты и атомарные роли в К\ г, гь 72 -константы в К или переменные. Пусть запрос д - конъюнктивный запрос или объединение конъюнктивных запросов. Ответ на ^ к базе

знаний К есть множество ат(д, К) кортежей а из констант, входящих

в К, таких что аМ 6 С]М для каждой модели Мс в Кс. По определению ат(д, К) конечно, так как база знаний К конечна, и число констант,

входящих в К, конечно. Отметим также, что кортеж ^ может быть

пустым в случае, в котором q является булевым конъюнктивным запросом. В этом случае множество ans(q, К) состоит из единственного пустого кортежа тогда и только тогда, когда формула q верна в каждой модели К.

Формальное обозначение конъюнктивного запроса q(x')<-conj'(x',y'\ где conj'(x',y') - список атомов в conj{x,y), полученный после

приравнивания переменных X , У в соответствии с равенством в COnj(x,y). Элемент конструкции q(x') является заголовком запроса q, в то время как conj\x\y') - телом. Переменные в х' называются распознаваемыми переменными. Переменные в у

являются нераспознаваемыми переменными.

Обозначения дизъюнкции конъюнктивных запросов в формате хранилищ данных обозначаются в виде множества:

q = {ql,...,q„),

где каждый q, - выражение, соответствующее конъюнктивному запросу:

qt = {х 13y,.conj(x,yt)},i = 1,2,...,и.

Входными значениями Cs,Qs,Ss для SeivIRetid(Cs,Qs,Ss) будут конъюнктивные запросы следующего вида: Cs(x'c)^conj'(,x'c,y\:),

QA )coni\. Tq )>

sax's) i-conjXx's J's), где x'c , y'c- переменные запроса C„ x'Q, }>'Q- переменные запроса Qs, x's, y's - переменные запроса Ss.

Выходными данными отображения в область значения

являются:

{JSen'IXCi,q,s,),

isP

где для каждого элемента с, из ans(C, К) между парой с, и s, из ans(S, К) строится интерфейс, по котором}' передается обработанная структура в виде множества ans(0, К). Тогда

PsOA = aans*bans>

где Psoa - количество элементов множества ISoa, ааш - количество элементов множества ans(C, К): а Ьат - количество элементов множества ans[S, К).

Значения для области определения соответствия называются входными параметрами с зависимыми условиями, если х е хс, х е xs\ где х — произвольный элемент условия запроса. В остальных случаях значения для соответствия называются входными параметрами без зависимых условий.

Далее представлена оптимизация множества ans для соответствия ServIRend. Роли в онтологической SOA-модели используются для регистрирования информации о добавляемых интерфейсах. Определим множество аксиом и утверждений базы знаний К, содержащих роли, как RBox. При обработке входных параметров соответствия ServIRend информации о ролях не требуется. Следовательно, нет необходимости учитывать RBox при выполнении реализации представления ServIRend. Рассмотрим интерпретацию ответа на запрос к базе данных без учета RBox. Пусть запрос q - конъюнктивный запрос или объединение конъюнктивных запросов, а база знаний Кс = K/RBox, тогда ответ на q

к Кс есть множество servAns(q, Кс) кортежей Ü из констант, входящих в Кс, таких что аМс е qMc, для каждой модели Мс в Кс.

Отсутствие RBox по определению уменьшает размер ТВох и АВох, что частично решает проблему разрастания запроса при ответе на OBDA-запрос.

Для описания OBDA-онтологий используется язык DL-Liteji семейства логик DL-Lite. Этот язык подходит для задач OBDA. На логике DL-Liteji основан язык OWL 2 QL консорциума W3C и входящего в состав формального инструментария технологий Semantic Web.

Язык DL-Lite л в отличие от языка логики Л£С оптимизирован для работы с OBDA. Класс вычислительной сложности логики DL-Liten меньше, чем логики сЯСС. Вследствие этих факторов для описания онтологической SOA-модели эффективнее использовать логику DL-Lite л. DL-Liten обладает низкой выразительностью. В то же время для редукции до поддерживаемых языком конструкций можно использовать приведение к доступным элементам конструкции без увеличения вычислительной сложности. Далее представлены выражения, доступные при редукции:

Вх ü в2 = с —т B¡ Е С, В2 Е С;

В Е С, П С2 =т В Е С,, В Е СУ,

B¡ = В2 =т В, Е В2, В2 Е В,\

В Е 3R.T =т В Е Эй;

В Е ЗЛ.1 =т В Е -3Л;

В Е ЭRo-C =т В Е 3R,,R¡ SRo, ЭR ~¡ Е С,

где =т - таксономическая эквивалентность. Для удобной визуализации можно преобразовывать онтологии в формат логики Л£С. В связи с наличием в Л£С полного экзистенционального ограничения появляется возможность отображать онтологии стандартными классификаторами и редакторами онтологии.

Далее представляются преимущества онтологического подхода к построению SOA-системы по сравнению с существующими аналогами.

1. Скорость выполнения алгоритмов для задач логического вывода у технологий дескриптивной логики выше, чем у структурированных алгоритмов.

2. Возможность взаимодействия SOA-системы с другими алгоритмами логического вывода, онтологиями и языками ДЛ. Как показано на примере использования логик DL-Liten и <А£С для разных задач, благодаря схожести принципов их организации, можно использовать эффективность определенных инструментариев этих логик для определенных задач.

3. Интеграция SOA-системы с реализациями технологии Semantic Web и последующее их развитие. Интеграция возможна благодаря подобию языка web-онтологий OWL 2 QL и логики DL-Liten. Актуальность технологии Semantic Web описана в разделе 1.3 диссертации.

4. Удобство и простота расширения SOA-системы. При увеличении количества элементов сервис-ориентированной системы не требуется расширения алгоритмов новыми структурами, требуется только расширение онтологии необходимыми аксиомами и у т вер жд ениями.

Далее обусловливается необходимость применения алгоритмов авто-построения интерфейсов \\'еЬ-сервисов.

В третьей главе приведены описание и принципы работы SIR-алгоритмов. Далее представлено описание нового алгоритма SIR1 для обработки входных параметров построения интерфейсов. Алгоритм возвращает U,ep Serv,{cbq,s¡) для последующего построения интерфейсов взаимодействия web-сервисов. Входными параметрами алгоритма запросов к онтологии являются ТВох Т и тройка /scw(C, Q,

S), называющаяся далее SIR-трнплет. Выходными данными алгоритма является ооъедш1ение(^7/?&/) SI R-тр и пл сто в (SIR Trip) с запросами к БД. На рис. 2 представлена блок-схема алгоритма SIR1, основанного на алгоритме SIR.

с, s, Q, т

иС := RewWR(C, Г)

uQ := RewWR(g, Т)

DTDic := DTRew(C, иС, S)

I 1 !

Ч____

-Нет—

(' forEach_l N иС' in иС [

uC'S := j

RewWR(DrDfc[uC T) |

forEach_2 uC'S'aiuC'S

| SIRSet SIRSet U | ! SIRTrip(uC', uQ, iiC'S*) I

forEach 2

forEach 1

< DTDic = 0

-Да-

uS := RewWR(5, T)

forEach 3 uC' in uC

| SIRSet := SIRSet U I SIRTripOiC', uQ, US')

! forEach_3

\....................................../

......t.....

SIRSet

i Конец i:

\__У

Рис. 2. Блок-схема алгоритма SIR!

Далее представлен принцип работы алгоритма SIR 1. За переписывание запросов отвечает алгоритм RewWR. Алгоритм SIR1 состоит из следующих действий.

1. Посредством алгоритма переписывания запросов переписать множество С и поместить объединение запросов в множество иС.

2. Переписать запрос Q и поместить объединение запросов в множество uQ.

Если входные параметры не содержат зависимых элементов, то произведутся следующие действия.

1. Переписать запрос S и поместить объединение запросов в множество uS.

2. Для каждого иС' из иС создать SIR-триплет, где утверждение о клиенте в АВох = нС\ утверждение о передаваемой информации в АВох = uQ' из множества иО, утверждение о сервисе в АВох = г/5" из множества uS.

3. Поместить триплет в массив SIRSet.

Если входные параметры содержат зависимые элементы, то произведутся следующие действия.

1. Для обработки параметров с зависимыми элементами будет использоваться функция DTRew, представленная ранее.

2. После завершения работы функции для каждого элемента иС' из множества иС переписать запрос DTDic\uC] и поместить результат в множество иС 'S.

3. Для каждого uC'S' из uC'S создать SIR-триплет, где утверждение о клиенте в АВох = нС', утверждение о передаваемой информации в АВох = = uQ' из нО, утверждение о сервисе в АВох = иС 'S' из множества иС 'S.

В разделе 3.3 диссертации работы доказывается лемма о завершаемое™ алгоритма SIR I.

В разделе 3.3 диссертации доказывается лемма о том, что время выполнения алгоритма SIR 1 является полиномиально зависимым от размера Т.

В разделе 3.3 диссертации доказывается лемма о том, что вычислительная сложность алгоритма SIR 1 для параметров без зависимых элементов не превысит полиномиальную сложность от размера ТВох.

Далее требуется реализовать в SOA-системе возможность использования CRUD (Create Read Update Delete). CRUD -сокращенное название стандартных операций при работе с хранением данных: создание, просмотр, обновление и удаление.

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

Пусть К = <Т, А> - база знаний логики ИЬ-ЬНеж, С, О, Б -конъюнктивные запросы. На рис. 3 представлен алгоритм БШСгеМе с входными параметрами: С, 51, <2, Т, А.

! Начало !

у

. ' 1 * \ / С, S, Q, Т, / /А /

^Нет—<;'Consistent(r,ii>--fla—

restilt := SIR1(C, О, S, Т)

..........

addRolc(re.™//, T)

............ v ........................

addInAbox(resH//, A)

__________* ____

sendServices( j dbA (result, A))

Y............

/ «true»

!

V

Конец

Рис. 3. Блок-схема алгоритма SIRCreate

Функция Consistent реализует проверку базы знаний на непротиворечивость. Если БД оказывается противоречивой, то нет смысла проводить дальнейшие действия и алгоритм завершается.

Процедура addRole добавляет информацию о новых интерфейсах в ТВох Т. Процедура addlnAbox добавляет информацию о новых интерфейсах в АВох А. Функция dbA выполняет запросы в триплете над АВох А, являющемся базой данных. Процедура sendServices отвечает за формирование кода с запросами под БД web-сервисов и его отправку по адресам клиента и сервера на основе ответа АВох SOA-системы.

В разделе 3.5 доказывается теорема о завершаемости алгоритма SIRCreate на основе леммы 3.6 из раздела 3.3 диссертации.

В разделе 3.5 доказывается теорема о том, что алгоритм SIRCreate является полиномиально зависимым от размера БЗ К на основе леммы 3.7 из раздела 3.3.

В четвертой главе представлена программная реализация онтологической SOA-системы SIRSystem. Программный код системы написан на языке программирования Java. Он тестировался на ОС CentOS, 3 ГБ ОЗУ, AMD Phenomena) II N850 Triple-Core Processor 2,20 Гц. Данные из АВох в этой реализации хранятся в СУБД MySQL. Для основных задач логического анализа онтологий использовался классификатор HermiT. Для описания интерфейсов web-сервисов использованы стандарты SOAP и WSDL. Для сравнения использовались 3 SIR-алгоритмa: SIRR с использованием стороннего алгоритма PerfectRef; SIRR, с использованием стороннего алгоритма Requiem и алгоритм SIR], оптимизированный под работу с SOA-системами.

Тестовые данные, на которых тестировался алгоритм, состоят из онтологий, написанных или адаптированных под язык OWL 2 QL для тестирования алгоритмов логического анализа (рис. 4) и онтологии SAMAO (рис. 5). SAMAO — онтология государственных и муниципальных учреждений, разработанная специально для системы автоматизированного построения интерфейсов взаимодействия web-сервисов.

g Js® 3

£ ЫЖ

1 «

ж :<хю ■

Рис. 4. Диаграма сравнения скорости работы алгоритмов с онтологией \TCODI (слева) и StockExchange (справа)

Рис. 5. Диаграма сравнения скорости работы алгоритмов с онтологией 8АМАО без зависимых условий (слева) и с зависимыми условиями

(справа)

В результате экспериментов зафиксировано среднее увеличение эффективности созданных web-сервисов на базе web-сайтов примерно на 23 %.

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

Основные результаты работы

1. Проведен анализ современных технологий для проектирования в рамках парадигмы SOA. Приведена классификация аналогичных технологий и подходов. Рассмотрены языки описания взаимодействия элементов SOA-систем. Выявлены недостатки существующих подходов к проектированию интерфейсов web-сервисов и EAI-систем. Проанализированы основные виды структур взаимодействия SOA-сервисов. Приведен краткий обзор экспериментальных реализаций систем OBDA, работающих с семейством дескриптивных логик DL-Lite. Наличие таких реализаций подтверждает практическое применение дескриптивных логик и языков web-онтологий в целях предоставления онтологического доступа к данным.

2. Разработан новый формализм для описания и анализа концептуальной модели SOA-системы, ориентированный на онтологический подход и позволяющий описывать взаимодействие web-сервисов.

3. Получены новые алгоритмы автоматизированного построения интерфейсов web-сервисов и CRUD-алгоритмы для SOA-архитектуры, дающие возможность автоматизированно строить интерфейсы web-сервисов. Алгоритмы отличаются от аналогов скоростью построения и более общей моделью. Новый алгоритм трансформации запросов под

8Ш.-систему отличается от более общих алгоритмов трансформации запросов более быстрой работой за счет игнорирования несущественных элементов входных данных. Разница в скорости работы между полученным алгоритмом и аналогами зависит от количества несущественных элементов в онтологии.

4. Получены эффективные проектные решения программной реализации ЭШ-алгоритмов на основе ООП.

5. Доказаны теоремы о завершаемое™ и вычислительной сложности Бт-алгоритмов для онтологических БОА-систем.

Список публикаций по теме диссертации

Статьи в изданиях по списку' ВАК:

1. Каширин И.Ю., Курдюков Н.С. SIR - алгоритм автоматического построения интерфейсов взаимодействия web-сервисов //Вестник РГРТУ, № 3 (выпуск 45), Рязань, 2013. С. 75 — 79.

2. Каширин И.Ю., Курдюков Н.С. Доказательство эффективности SIR алгоритма авто-построения интерфейсов взаимодействия web-сервисов // Фундаментальные исследования № 6. Часть 2. Научный журнал. Издательский дом «Академия Естествознания». 2013. С. 267 -273.

3. Курдюков Н.С. Доказательство эффективности алгоритма SIRCreate // Электронный научный журнал «Современные проблемы науки и образования» № 2, 2014. Режим доступа: http://\v\vvv. science -education.ru/

Статьи в сборниках научных трудов:

4. Курдюков Н.С. Интеллектуальный анализ неструктурированных текстов как средство автоматизации процесса расширения ресурсов Semantic Web // Математическое и программное обеспечение вычислительных систем: Межвуз. сб. науч. Тр. / Под ред. А.Н. Пылькина - Рязань: РГРТУ, 2012. С. 64 - 67.

5. Курдюков Н.С. Доказательство эффективности алгоритма SIRDelete // Международный научно-исследовательский журнал, №2 (21) Часть 1. -Екатеринбург : МНИЖ, 2014. С.99- 101.

6. Курдюков Н.С. Средства технологии Semantic Web /У Математическое и программное обеспечение вычислительных систем: Межвуз. сб. науч. Тр. / Под ред. А.Н. Пылькина - Рязань(РГРТУ), декабрь 2013. С.32 - 35.

7. Курдюков Н.С. Описание ER-модели доступа к услугам web-сервисов средствами дескриптивных логик. // Отраслевые аспекты технических наук. -М.: ООО «ИНГН», 2012. -№ 12 (24). С.71-72.

Тезисы докладов на международных и всероссийских

конференциях:

8. Курдюков Н.С. Основанный на онтологиях доступ к данным формата Semantic Web // Общество, современная наука и образование: проблемы и перспективы: сборник науч. тр. по материалам Международной научно-практической конференции. Часть 5. Тамбов. Бизнес - Наука - Общество, 2012. С. 67 - 68.

9. Курдюков Н.С. Вычислительная сложность как критерий выбора дескриптивной логики для описания онтологий в среде Semantic Web // Achievement of high school: материали за 8-a международна научна практична конференция,- Том 10. Икономики. Съвременни технологии на информации. «Бял ГРАД-БГ» ООД. -София, 2012. С. 57-59.

10. Курдюков Н.С. Анализ вычислительной сложности логического вывода для языков web-онтологий // Wyksztalcenie I nauka bez granic. Materialy VIII miedzynarodovej naukowi-praktycznej konferencji. Vol. 34. Przemysl. Nauka i studia, 2012. P. 18 -20.

11. Курдюков Н.С. Реализации основанного на онтологиях доступа к данным формата Semantic Web // Общество, современная наука и образование: проблемы и перспективы: сборник научных трудов по материалам Международной научно-практической конференции. Часть 5. Тамбов. Бизнес-Наука-Общество, 2012. С. 68 -70.

12. Курдюков Н.С. SOA-системы в технологиях Internet и Semantic Web // Новые информационные технологии в научных исследованиях: материалы XVIII Всероссийской научно-технической конференции студентов, молодых ученых и специалистов. Рязанский государственный радиотехнический университет, 2013. 344 с.

13. Курдюков Н.С. Запросы при описании SOA-архитектуры в рамках OBDA-технологии // Materialy X Mi?dzynarodowej naukowi-praktycznej konferencji «Strategiczne pytania swiatowej nauki - 2014» Vol. 33. Przemysl, 2014. P. 9-11.

14. Курдюков Н.С. Логический анализ онтологий SOA-систем // Материали за X международна научна практична конференция «НАЙНОВИТЕ НАУЧНИ ПОСТИЖЕНИЯ - 2014». - Том 30. Съвременни технологии на информации. - София. «Бял ГРАД-БГ» ООД, 2014. С. 19-20.

15. Igor Yu. Kashirin, Nikolaу S. Kurdyitkov. Efficiency Proof of Sirread Algorithm //Proceedings of ICCTPEA-2014, Saint Petersburg State University, Edited by: E. I. Veremey, Saint-Petersburg, Russia, June 30 -July 04, 2014. P. 75.

16. Курдюков H.C. Алгоритм проверки непротиворечивости баз знаний SOA-систем // Materialy X Mifdzynarodowej naukowi-praktycznej konferencji «Dynamika naukowych badan - 2014» Vol. 8. Przemysl, Nauka i studia, 2014. P. 90 - 92.

Курдюков Николай Станиславович

МАТЕМАТИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИНТЕЛЛЕКТУАЛЬНЫХ СЕРВИС-ОРИЕНТИРОВАННЫХ СИСТЕМ НА ОСНОВЕ ИСПОЛЬЗОВАНИЯ ЯЗЫКОВ

ДЕСКРИПТИВНОЙ логики

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

Подписано в печать 26.12.2014. Формат бумаги 60x84 1/16. Бумага офсетная. Печать трафаретная. Усл. печ. л. 1,0. Тираж 100 экз.

Рязанский государственный радиотехнический университет. 390005, г. Рязань, ул. Гагарина, 59/1. Редакционно-издательский центр РГРТУ