Научная статья на тему 'Инструментальные средства автоматизации разработки научных сервисов'

Инструментальные средства автоматизации разработки научных сервисов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
56
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МУЛЬТИАГЕНТНАЯ СИСТЕМА / СЕРВИС / МНОГОВАРИАНТНЫЕ РАСЧЕТЫ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Богданова Вера Геннадьевна, Пашинин Антон Алексеевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Богданова Вера Геннадьевна, Пашинин Антон Алексеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The article considers the tools for science services development automation that provide high performance resources remote access and parallel computing of user application in distributed computing environment based on multivariate calculations. Article also provides an example of the tools application for the task of linear regulator parametric synthesis for linear object.

Текст научной работы на тему «Инструментальные средства автоматизации разработки научных сервисов»

УДК 004.421+004.4'2+004.771

ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА АВТОМАТИЗАЦИИ РАЗРАБОТКИ НАУЧНЫХ СЕРВИСОВ Богданова Вера Геннадьевна

К.т.н., доцент, с.н.с., Институт динамики систем и теории управления имени В.М. Матросова Сибирского отделения Российской академии наук (ИДСТУ СО РАН), 664033 г. Иркутск ул. Лермонтова, 134, e-mail: bvg@icc.ru Пашинин Антон Алексеевич М.н.с., Институт динамики систем и теории управления имени В.М. Матросова Сибирского отделения Российской академии наук (ИДСТУ СО РАН), 664033 г. Иркутск ул. Лермонтова, 134, e-mail: apcrol@gmail.com

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

Ключевые слова: мультиагентная система, сервис, многовариантные расчеты.

Введение. В настоящее время представляется актуальным создание инструментальных средств, обеспечивающих разработку программных сред для доступа предметных специалистов к высокопроизводительным вычислительным ресурсам и использования этих ресурсов без необходимости углубленного знания вычислительных архитектур и низкоуровневых средств разработки приложений [5 - 7]. Одновременно прослеживаются тенденции, с одной стороны, использования сервис-ориентированного подхода, подразумевающего организацию сервисов доступа к вычислительным ресурсам посредством сети интернет, с другой стороны, применения мультиагентных технологий для управления вычислениями [11].

Цель исследования в рамках реализации такого подхода заключалась в разработке инструментальных средств автоматизации создания научных сервисов, обеспечивающих как доступ к высокопроизводительным ресурсам, так и управление параллельным выполнением приложения пользователя в распределенной вычислительной среде на основе организации многовариантных расчетов. В докладе представлена разработанная авторами система HpcSoMas Framework (High-performance Service-oriented Multi-agent system) [2], с помощью которой создается научный сервис на основе набора прикладных программ пользователя. Задачи, для решения которых целесообразно применять такой инструментарий, должны отвечать ряду условий, в том числе иметь возможность быть декомпозированными на подзадачи, которые могут выполняться независимо на отдельном вычислительном ресурсе. В настоящей работе рассмотрены примеры сервиса, разработанного для параметрического синтеза линейного регулятора замкнутой системы управления. В этом случае многовариантные расчеты организуются на основе числовой сетки, в каждой точке которой

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

HpcSoMas Framework. Рассматриваемый инструментарий предназначен для разработки мультиагентных систем (МАС), ориентированных на управление параллельным выполнением масштабируемых приложений пользователя в высокопроизводительной распределенной вычислительной среде (РВС). Инструментарий HpcSoMas (рис. 1) был разработан на основе сервис-ориентированной технологии, использование которой позволяет реализовать агентов в виде веб-сервисов.

Рис. 1. Структура HpcSoMaS Framework

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

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

на выполнение задания, уведомления пользователей, постановки задания в очередь системы управления заданиями (СУПЗ) вычислительного кластера (ВК), получения информации о состоянии ВК, декомпозиции заданий, расчета оценки состояния ВК, аутентификации пользователей и др. На основе прикладных программ пользователя с помощью подсистемы ABCSW (Agent Based Class Service Wizard) [3] создаются вычислительные сервисы, выполняющие предметно-ориентированные функции. Методика использования инструментария HpcSoMas для создания виртуального сообщества агентов (ВС), образующих научный сервис, изображена на рис. 2.

Рис. 2. Схема разработки научного сервиса

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

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

Инструментарий ABCSW предназначен для автоматизации описания программных интерфейсов web-сервисов при конвертировании комплекса прикладных программ пользователя в научный вычислительный сервис, управление которым осуществляется на основе мультиагентного подхода. Данный инструментарий делится на две части, программное обеспечение (ПО) для конфигурации агентов мультиагентных систем, создаваемых при помощи HpcSoMaS Framework и ПО для конфигурации вычислительных сервисов под конкретные задачи пользователей. На рисунке 3 представлен пример программы настройки агентов, при помощи которой пользователь может подготовить агента к работе с вычислительным ресурсом, подключить необходимые вычислительные сервисы, схемы постановок задач, а также объединить агенты в единую систему.

Рис. 3. Редактор агентов из инструментария ABCSW

Разработка системы HpcSoMaS была выполнена на кроссплатформенном языке программирования Java, а реализация агентов осуществлена при помощи веб-сервисов под управлением веб-сервера Apache Tomcat, что в совокупности позволяет гибко использовать эти средства на вычислительных ресурсах с разными операционными системами, а также использующих различные системы управления заданиями [4, 9]. Значительная часть параметров скомпилированных программ-сервисов вынесена в файлы конфигурации на

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

Пример применения. Для демонстрации представленного подхода разработан научный сервис параметрического синтеза линейного регулятора для линейного динамического объекта. В процессе исследований решались две такие задачи, а именно задачи о статическом (приведена в [10]) и динамическом регуляторах по выходу [1]. В докладе рассматривается пример решения задачи о динамическом регуляторе. Постановка задачи следующая. Для системы

х = Ах + В и , у = Сх, (1)

в которой х £ - состояние объекта, и £ Й - управление, у £ Й - измеряемый выход, нужно выяснить, можно ли ее стабилизировать обратной связью вида

х г = Агх г + В г у , и = С г х г + Б г у ,

где х г £ - состояние регулятора. На матрицы Аг, В г, С г, Б г наложены интервальные ограничения. Уравнение замкнутой системы при к 0 имеет вид хс = Асх с, где х = с о 1(х, х г). Блочная структура матрицы А с приведена в [10].

В рассматриваемом примере матрицы системы (1) имеют вид [1]:

*< ;>В=(0)^=(0).

Интервальные ограничения: .

Количество параметров регулятора первого порядка: п р = 4. Множество параметров регулятора: р = { р х = Аг ,р 2 = В г,р 3 = С г ,р 4 = Б г).

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

Для доступа к сервису вначале осуществляется авторизация в системе HpcSoMaS. Открывается панель управления сервисами, имеющая четыре вкладки: "сервисы", "задания", "результаты", "ресурсы". На первой вкладке выбирается необходимый сервис. Затем с помощью web-интерфейса пользовательского агента формулируется постановка задачи.

Агент-менеджер выполняет декомпозицию запроса пользователя на подзадачи и осуществляет распределение ресурсов на уровне приложения пользователя, взаимодействуя с локальными агентами ВК. С помощью кнопки "вычислительные задания" панели управления сервиса можно посмотреть, на какие ресурсы распределены подзадачи. Данные о доступных вычислительных ресурсах можно увидеть на вкладке "ресурсы". Статус запроса можно посмотреть на вкладке "задания". После завершения процесса вычислений можно получить результаты, перейдя на соответствующую вкладку.

В результате работы сервиса был получен искомый регулятор, описываемый уравнениями

хг = — 1 . 5 х г — 2у , и = — 0 . 1х г — 1 . 4у ,

матрица замкнутой системы при такой обратной связи имеет следующие собственные значения: —4. 15 3 3 Е — 0 2 ± ]0.529 7, — 1.4169.

На рис. 4 изображена веб-форма пользовательского агента, применяемая для формулирования постановки задачи на построение области устойчивости в окрестности точки сетки. Для найденной в результате работы сервиса точки устойчивости в ее окрестности была построена область устойчивости в пространстве трех параметров при фиксировании значения первого параметра. Результат работы сервиса построения области устойчивости приведен на рис. 5.

Система НРСБОМАБ 3.0, Лаборатория параллельных и распределенных вычислительных систем, ИДСТУ СО РАН, 2014-201 б

Рис. 4. Веб-интерфейс постановки задачи на построение области устойчивости

При проведении экспериментов использовались вычислительные ресурсы ИДСТУ СО РАН [8]. Применение высокопроизводительных вычислений дает возможность быстрого нахождения точек устойчивости за счет параллельной обработки точек сетки, при этом время вычислений линейно зависит от количества процессоров.

Рис. 5. Область устойчивости в окрестности точки (-1.5,-2;-0.1;-1.4), шаг варьирования параметров 0.05

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

СПИСОК ЛИТЕРАТУРЫ

1. Баландин Д.В., Коган М.Н. Синтез законов управления на основе линейных матричных неравенств. М.: Физматлит, 2007. 280 с.

2. Богданова В.Г., Пашинин А.А. Мультиагентная система управления распределенными вычислениями HpcSoMas // Свидетельство о государственной регистрации программы для ЭВМ № 2014661359 от 29.10.2014.

3. Богданова, А.А. Пашинин // Свидетельство об официальной регистрации программы для ЭВМ №2015661460. М.: Федеральная служба по интеллектуальной собственности, патентам и товарным знакам. 2015.

4. Бычков И.В., Опарин Г.А., Феоктистов А.Г., Богданова В.Г., Пашинин А.А. Мультиагентные методы и инструментальные средства управления в сервис-ориентированной распределенной вычислительной среде // Труды Института системного программирования РАН. 2014. Т. 26. Вып. 5. С. 65-82.

5. Бычков И.В., Опарин Г.А., Феоктистов А.Г., Богданова В.Г., Пашинин А.А.. Сервис-ориентированный подход к мультиагентному управлению распределенными вычислениями // Труды XII Всероссийского совещания по проблемам управления «ВСПУ-2014» (Москва, 16-19 июня 2014 г.). М.: ИПУ РАН, 2014. ISBN 978-5-91450-1515. С. 8942-8953.

6. Валуев И.А., Морозов И.В. Библиотека для управления заданиями на удаленных вычислительных ресурсах и распределенных системах // Тр. Междунар. суперкомпьютерной конф. «Научный сервис в сети Интернет: все грани параллелизма» (Новороссийск, 22-27 сентября 2013 г.). М.: Изд-во МГУ. 2013. С. 57-64.

7. Гергель В.П., Сенин А.В. Разработка системы управления интегрированной средой высокопроизводительных вычислений «метакластер» // Вестник НГУ. 2010. № 6. С. 186-194.

8. Иркутский суперкомпьютерный центр Сибирского отделения РАН // URL: http://hpc.icc.ru (дата обращения 25.05.2016).

9. Пашинин А.А., Богданова В.Г. Инструментальные средства организации мультиагентного подхода к управлению распределенными вычислениями // Труды XIX Байкальской Всерос. конф. с междунар. участием «Информационные и математические технологии в науке и управлении» (Иркутск-Байкал, 28 июня - 7 июля, 2014 г.). Иркутск: ИСЭМ СО РАН. 2014. С. 97-105.

10. Поляк Б.Г., Щербаков П.С. Трудные задачи линейной теории управления. Некоторые подходы к решению // Автоматика и телемеханика. 2005. № 5. С. 7-46.

11. Bogdanova V. G., Bychkov I. V., Korsukov A. S., Oparin G. A., and Feoktistov A. G. Multiagent Approach to Controlling Distributed Computing in a Cluster Grid System //Journal of Computer and Systems Sciences International, 2014. Vol. 53. No. 5. Pp. 713-722. DOI: 10.1134/S1064230714040030.

UDK 004.421+004.4'2+004.771

TOOLS FOR SCIENCE SERVICES DEVELOPMENT AUTOMATION

Vera G. Bogdanova1

Candidate of Engineering Sciences, Associate Professor, Senior researcher, e-mail: bvg@icc.ru

Anton A. Pashinin1 Junior researcher, e-mail: apcrol@gmail.com

1Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences (Lermontov str., 134, Post Box 292 664033, Irkutsk, Russia), e-mail:

idstu@icc.ru

Abstract. The article considers the tools for science services development automation that provide high performance resources remote access and parallel computing of user application in distributed computing environment based on multivariate calculations. Article also provides an example of the tools application for the task of linear regulator parametric synthesis for linear object.

Keywords: multiagent systems, service, multivariate calculations.

References

1. Balandin D.V., Kogan M.N. Sintez zakonov upravleniya na osnove linejnyh matrichnyh neravenstv [Synthesis of linear quadratic control laws on basis of linear matrix inequalitie ]. Moscow. Fizmatlit. 2007. P. 280 (in Russian)

2. Bogdanova V.G., Pashinin A.A. Mul'tiagentnaya sistema upravleniya raspredelennymi vychisleniyami HpcSoMas [A multi-agent distributed computing management system HpcSoMas] // Svidetel'stvo o gosudarstvennoj registracii programmy dlya EHVM № 2014661359. 2014. (in Russian)

3. Bogdanova, A.A. Pashinin Instrumental'nye sredstva avtomatizacii sozdaniya vychislitel'nyh servisov dlya mnogovariantnyh raschetov ABCSW [Automation tools ABCSW for creating multivariate calculations computing services] // Svidetel'stvo o gosudarstvennoj registracii programmy dlya EHVM № 2015661460. 2015. (in Russian)

4. Bychkov I.V., Oparin G.A., Feoktistov A.G., Bogdanova V.G., Pashinin A.A. Mul'tiagentnye metody i instrumental'nye sredstva upravleniya v servis-orientirovannoj raspredelennoj vychislitel'noj srede [Multiagent methods and tools for service-oriented distributed computing environment management] // Proceedings of Institute for System Programming of the Russian Academy of Sciences RAN. 2014. T. 26. No. 5. Pp. 65-82. (in Russian)

5. Bychkov I.V., Oparin G.A., Feoktistov A.G., Bogdanova V.G., Pashinin A.A.. Servis-orientirovannyj podhod k mul'tiagentnomu upravleniyu raspredelennymi vychisleniyami [Service-oriented approach for multi-agent distributed computing management] // Trudy XII Vserossijskogo soveshchaniya po problemam upravleniya «VSPU-2014» (Moscow, 16-19 june 2014). M.: IPU RAN, 2014. ISBN 978-5-91450-151-5. С. 8942-8953. (in Russian)

6. Valuev I.A., Morozov I.V. Biblioteka dlya upravleniya zadaniyami na udalennyh vychislitel'nyh resursah i raspredelennyh sistemah [Job queuing library for remote computing resources and and distributed systems] // Trudy Mezhdunar. superkomp'yuternoj konf. «Nauchnyj servis v seti Internet: vse grani parallelizma» (Novorossijsk, 22-27 September 2013). M.: Izd-vo MGU, 2013. Pp. 57-64.

7. Gergel' V.P., Senin A.V. The development of «Metacluster» system for high performance computing integrated environment management // Vestnik NGU. 2010. No. 6. Pp. 186-194. (in Russian)

8. Irkutsk Supercomputer Center of the Russian Academy of Sciences. Available at: http://hpc.icc.ru, accessed 25.05.2016). (in Russian)

9. Pashinin A.A., Bogdanova V.G. Instrumental'nye sredstva organizacii mul'tiagentnogo podhoda k upravleniyu raspredelennymi vychisleniyami [Tools for organizing multi-agent approach to the management of distributed computing] // Trudy XIX Bajkal'skoj Vseros. konf. s mezhdunar. uchastiem «Informacionnye i matematicheskie tekhnologii v nauke i upravlenii» (Irkutsk-Baikal, 28 june - 7 july, 2014). Irkutsk: ESI SB RAS. 2014. Pp. 97-105. (in Russian)

10. Polyak B.G., SHCHerbakov P.S. Hard Problems in Linear Control Theory: Possible Approaches to Solution // Autom Remote Control, 2005. No. 5. Pp. 7-46. DOI: 10.1007/s10513-005-0115-0.

Bogdanova V.G., Bychkov I.V., Korsukov A.S., Oparin G.A., and Feoktistov A. G. Multiagent Approach to Controlling Distributed Computing in a Cluster Grid System //Journal of Computer and Systems Sciences International, 2014. Vol. 53. No. 5. Pp. 713-722. DOI: 10.1134/S1064230714040030.

i Надоели баннеры? Вы всегда можете отключить рекламу.