Программные системы и комплексы
УДК 004.421+004.4'2+004.771 DOI:10.25729/ESI.2024.34.2.015
Инструментальные средства автоматизации разработки и применения пакета прикладных микросервисов
Опарин Геннадий Анатольевич, Богданова Вера Геннадьевна, Пашинин Антон Алексеевич
Институт динамики систем и теории управления им. В.М. Матросова СО РАН, Россия, Иркутск, apcrol@gmail.com
Аннотация. Представлены результаты, связанные с применением разработанного ранее метода булевых ограничений для исследования динамики и параметрического синтеза систем управления, в частности, булевых сетей, в микросервисной инфраструктуре с использованием методов и средств построения баз знаний. В качестве базы знаний выступает вычислительная модель предметной области, под которой понимается совокупность сведений об объектах предметной области и отношениях между ними. Каждое функциональное отношение реализуется вычислительным микросервисом, созданным на основе программного модуля, вычисляющего значения выходных параметров по заданным значениям входных параметров. Набор вычислительных микросервисов составляет функциональное наполнение пакета прикладных микросервисов. Системное наполнение составляют сервисы постановки задачи, планирования и мониторинга вычислений, управления данными, обработки результатов. Управление вычислениями (децентрализованное, централизованное или иерархическое) осуществляется агентами пакета прикладных микросервисов в зависимости от постановки задачи и способа организации базы знаний. В связи с переходом к исследованию новых классов булевых сетей (управляемых, сингулярных, неявных, асинхронных, двудольных и других) выполняется расширение созданного ранее на основе вышеизложенного подхода пакета прикладных микросервисов, предназначавшегося для задач качественного исследования автономных булевых сетей. Целью исследования является разработка нового инструментария микросервисной интеллектуальной вычислительной платформы HPCSOMAS-MSC для создания, настройки и доступа к вычислительным микросервисам, позволяющего взаимодействовать с микросервисами функционального наполнения напрямую через веб-интерфейс. Реализован веб-интерфейс описания предметной области в дополнение к существующему описанию на языке JSON. Новый инструментарий позволяет как ускорить разработку и отладку микросервисов, так и сделать дальнейшие взаимодействие более удобным для пользователя-предметника.
Ключевые слова: булевы сети, метод булевых ограничений, качественный анализ, пакет прикладных микросервисов
Цитирование: Опарин Г.А. Инструментальные средства автоматизации разработки и применения пакета прикладных микросервисов / Г.А. Опарин, В.Г. Богданова, А.А. Пашинин // Информационные и математические технологии в науке и управлении. - 2024. - № 2(34). - С. 155-168. -DOI:10.25729/ESI.2024.34.2.015.
Введение. Спектр приложения двоичных динамических моделей необычайно широк, и с каждым годом количество объектов и задач, где требуется их использование, только возрастает. К современным приложениям двоичных динамических моделей относятся задачи искусственного интеллекта, биоинформатики, экологии, социологии, робототехники, криптографии, классификации, исследования отказоустойчивости компьютерных сетей, а также разнообразные задачи во многих других предметных областях. В этой связи актуальной является проблема создания эффективной технологии качественного исследования динамических свойств различных классов двоичных моделей высокого порядка на конечном интервале времени. Основой такой технологии является разработанный авторами метод булевых ограничений (Boolean Constraint Method, BCM) [1], позволяющий свести исходную задачу к задаче булевой выполнимости (SAT) или к задаче проверки истинности квантифицированной булевой формулы (QSAT). Обе задачи являются вычислительно
трудоемкими и требуют для своего решения дальнейшего развития микросервисной интеллектуальной вычислительной платформы HPCSOMAS-MSC [2, 3], обеспечивающей глубокое распараллеливание задачи и ориентированной на ее применение конечным пользователем в гибридной микросервисной вычислительной инфраструктуре (ГМВИ). Платформа HPCSOMAS-MSC предоставляет следующие базовые средства:
- Программные средства, включающие библиотеку классов для создания агентов и микросервисов.
- Средства мультиагентного управления, включающие стандартный набор конфигурируемых системных агентов, который используется при настройке свойств уже скомпилированных агентов на конкретный вычислительный ресурс. В этот набор входят пользовательский агент, серверная программа-агент (менеджер-агент), вычислительные агенты (реализованные в виде микросервисов) и специализированные агенты организации двухуровневого параллельного выполнения вычислений [3].
- Инструментальные средства, включающие утилиты ABCSW (Agent Based Class Service Wizard) для автоматизации процессов создания агентов программным путем, конфигурирования агентов и MSCDT (Micro-Services Creating Deployment Testing) c набором мастеров для создания микросервисов на основе библиотеки классов, их развертывания и тестирования, а также подготовки вычислительных узлов.
- Языковые средства спецификации объектов ПО в текстовом формате JSON. Основной целью работы является дальнейшее развитие инструментальных средств
HPCSOMAS-MSC, автоматизирующих процессы создания и применения пакета прикладных микросервисов (applied microservices package, AMP, [2]) для исследования динамики и параметрического синтеза разнообразных систем управления, в том числе булевых сетей (двоичных динамических систем (ДДС)), в гибридной облачной среде с использованием методов и средств построения баз знаний. В качестве базы знаний (БЗ) выступает вычислительная модель предметной области (ПО), состав объектов которой и множество отношений между ними детально приводятся в [4]. Каждое функциональное отношение реализуется вычислительным микросервисом, созданным на основе программного модуля, вычисляющего значения выходных параметров по заданным значениям входных параметров. Набор вычислительных микросервисов составляет функциональное наполнение AMP. В состав системного наполнения входят сервисы постановки задачи, планирования и мониторинга вычислений, управления данными, обработки результатов. Управление вычислениями (децентрализованное, централизованное или иерархическое) осуществляется агентами AMP в зависимости от постановки задачи и способа организации базы знаний.
1. Краткий обзор методов и средств качественного исследования ДДС. Кроме BCM, к ДДС применимы и другие, также имеющие переборный характер, методы качественного анализа. В [1] рассматриваются достоинства и недостатки дедуктивного анализа [5], проверки модели [6], метода редукции [7, 8] и приводятся преимущества BCM, при использовании которого проблема сокращения перебора решается путем применения современных эффективных решателей SAT и QSAT задач. В [9] рассматриваются особенности качественного исследования свойства наблюдаемости ДДС с помощью метода полутензорного произведения [10], главным недостатком которого является необходимость
оперировать с матрицами размерности 2n х 2n (n - размерность вектора состояния булевой системы) при его использовании [11]. Публикации, посвященные вопросам распараллеливания этого метода, отсутствуют. В [12] приведена оценка допустимого значения размерности n (n<25). В работе [13] предложен подход к исследованию этого свойства, основанный на идее представления ДДС в полиномиальной форме. Как отмечено в [1 3],
используемое в этом методе вычисление базиса Грёбнера [14] приводит в общем случае к двойной экспоненциальной сложности.
Существующие в настоящее время инструментальные средства качественного анализа двоичных динамических моделей не обеспечивают требуемой глубины параллелизма, а также достаточной степени автоматизации исследования динамических моделей в ГМВИ. Так, веб-инструмент Analysis of Dynamic Algebraic Models (ADAM) [15] автоматически преобразует ряд типов дискретных моделей в полиномиальные динамические системы и анализирует их динамику, используя инструменты компьютерной алгебры. Интерактивный блокнот CoLoMoTo [16] предоставляет веб-интерфейс доступа к ряду консольных программных средств для качественного исследования моделей биологических сетей. Кроссплатформенный инструмент BoolSi, использующий высокопроизводительные вычисления для распределенного моделирования синхронных булевых сетей, является консольным приложением [17]. Сервис-ориентированные приложения, разработанные на основе платформы HPCSOMAS-MSC, предназначены для работы в высокопроизводительной гибридной среде, являются кроссплатформенными, имеют веб- и API- интерфейсы, а мультиагентное управление обеспечивает возможность проведения распределенных параллельных и конвейерно-параллельных вычислений. В состав узлов гибридной вычислительной среды могут входить как облачные, так и локальные ресурсы, в том числе кластеры, выделенные серверы, персональные компьютеры. В отличие от перечисленных выше средств [15-17], для исследования различных классов булевых сетей используется декларативный подход на основе BCM, позволяющий за счет естественного параллелизма по данным (путем расщепления булевой модели) существенно увеличить размерность вектора состояния булевой сети и промежуток времени ее функционирования при решении задач качественного анализа в высокопроизводительной вычислительной среде.
2. Новые компоненты HPCSOMAS-MSC. Научные исследования, в которых применяется предлагаемая технология создания AMP, проводятся нами в нескольких направлениях. Первое направление связано с построением области требуемой динамики в пространстве параметров регулятора замкнутой системы управления и задачами параметрического синтеза регулятора для различных классов линейных динамических объектов. Второе направление относится к качественному анализу ДДС на основе метода булевых ограничений. Третье направление связано с параметрическим синтезом обратной стабилизирующей связи для ДДС на основе логического подхода. На предыдущих этапах исследований для решения задач в рамках двух последних направлений был разработан AMP BCM-QABDS (BCM-based Qualitative Analysis of Boolean Dynamic Systems) [18], предназначенный для качественного анализа автономных синхронных ДДС. В настоящее время выполняется расширение этого пакета вычислительными микросервисами (обозначаемыми далее для краткости как CMS - Computational Micro-Service) для качественного анализа и параметрического синтеза новых классов булевых сетей (управляемых, сингулярных, неявных, асинхронных, двудольных и других). Соответственно расширяется и набор системных сервисов AMP, предоставляемых новыми компонентами инструментальных средств платформы HPCSOMAS-MSC, а именно, мастером спецификации ПО (рис. 1) и мастером композиции CMS (рис. 2).
2.1. Мастер спецификации ПО. Мастер спецификации ПО предоставляет следующие средства:
- системные веб-сервисы (в дополнение к вышеупомянутым языковым средствам) для содержательного описания объектов ПО, в частности параметров и микросервисов, с последующим сохранением этого описания в формате JSON в базе знаний AMP;
- системный веб-сервис для конфигурирования автономного режима работы CMS.
Рис. 1. Мастер спецификации ПО Рис. 2. Мастер композиции CMS
Параметрами ПО являются выделенные уникальные, возможно структурированные, переменные математической модели и алгоритмов ее исследования, посредством которых реализуются связи между вычислительными микросервисами. Спецификатор параметров автоматически поддерживает уникальность их ключевых имен, задаваемых разработчиком AMP. В перечень спецификаций параметра входят также тип параметра, его содержательное описание, и название разрабатываемого AMP, к которому он относится.
Интерфейс спецификатора микросервисов для разработчика (или администратора) приведен на рис. 3. В этом интерфейсе на вкладке «Main settings» вводятся ключевое имя, содержательное описание и базовые настройки вычислительного микросервиса, в частности, привязка к менеджеру-агенту AMP (AMPMA), разрешения на внешний доступ, пути к папкам. Набор входных и выходных параметров CMS указывается на вкладке «IO parameters». Для каждого параметра указывается ключевое имя («Unique id») из словаря параметров БЗ AMP, имя-идентификатор («Programmed id») из программного кода микросервиса, имя AMP («Package»), к которому относится параметр, тип параметра («Type») и содержательное описание параметра («Description»).
Рис. 3. Веб-интерфейс для ввода спецификаций микросервисов ПО
Интерфейс автономного режима работы микросервиса используется либо на этапе предварительного автономного тестирования уже разработанного и специфицированного вычислительного микросервиса, либо для обеспечения его автономного запуска с возможностью самостоятельного (без жесткой привязки к AMPMA) получения заданий от внешних программных систем. По существу, с помощью конфигурирования микросервиса создается упрощенный вариант менеджера-агента, способного получить задание, запустить микросервис и предоставить результаты работы.
На рис. 4 и 5 приведены базовая и модифицированная схемы взаимодействия пользователя и объектов AMP.
Рис. 4. Базовая схема взаимодействия
Рис. 5. Модифицированная схема взаимодействия 2.2. Мастер композиции CMS. Одним из преимуществ сервис-ориентированных вычислений является возможность объединять несколько сервисов для решения более сложных задач [19, 20]. Составной веб-сервис может быть создан либо про-активно, либо реактивно [21]. В первом случае сервисы-компоненты составного веб-сервиса собираются заранее. Во втором случае такой веб-сервис создается динамически по запросу пользователя. Консолидированная и целостная структура анализа моделей, языков, методов, платформ и инструментов композиции сервисов приведена в [22, 23].
Под композитным сервисом далее мы будем иметь в виду композицию микросервисов в статическом режиме и ансамбль микросервисов в динамическом. Композитные сервисы предназначены для решения рассмотренных во введении научных задач и ориентированы на использование в ГМВИ, в состав которой входят как локальные, так и облачные ресурсы. Мастер композиции предоставляет два способа создания композитного сервиса:
- на основе построения плана вычислений по постановке задачи (ПЗ) с получением схемы сервиса, представляющей собой упорядоченную последовательность (композицию) или ансамбль CMS (в случае непроцедурной ПЗ на распределенной БЗ AMP [24]);
- с использованием графического редактора, позволяющего перестроить схему сервиса из БЗ AMP или создать новую схему на основе хранящихся в БЗ спецификаций микросервисов и параметров.
Получение схемы сервиса, в зависимости от ПЗ и способа организации БЗ AMP, выполняется следующим образом:
- для процедурной ПЗ на основе последовательности требуемых для решения задачи CMS и их семантического описания, хранящегося в БЗ AMP в виде фрагментов отношений, описывающих взаимосвязи микросервисов с параметрами, выполняется информационное планирование [24];
- для непроцедурной ПЗ и распределенной БЗ AMP на основе динамического подхода ансамбль CMS собирается группой распределенных вычислительных агентов на основе логического вывода [24];
- для непроцедурной ПЗ и централизованной БЗ AMP используется булева модель построения планов вычислительных действий в виде системы дифференциальных булевых уравнений, решения которых при заданных начальных условиях (согласованных с непроцедурной ПЗ) определяют разрешимость поставленной задачи и дают конструктивные планы ее решения (в том числе и параллельные) [25]. Графический редактор для построения схемы сервиса в виде графа реализован с
использованием библиотеки baklavajs (https://github.com/newcat/baklavajs). В вершинах графа ставятся микросервисы (рис. 6), из спецификации автоматически добавляются параметры, связываются входы и выходы CMS, отмечаются параметры, выносимые на веб-интерфейс композитного сервиса.
Рис. 6. Графическая визуализация схемы композитного сервиса
С помощью разработанных средств состав AMP BCM-QABDS дополнен CMS, требуемыми при решении следующих задач качественного анализа сингулярных, неявных и асинхронных булевых сетей:
- Построение булевых моделей (в виде SAT или QSAT задач) локальных динамических свойств, свойства периодичности траекторий и следующих свойств типа управляемости: основного свойства управляемости, свойства управляемости относительно пары состояний, свойства полной управляемости; свойства ^-наблюдаемости. Для приведения булевых выражений в моделях динамических свойств к КНФ используются преобразование Цейтина [26], преобразование Плейстеда-Гринбаума [27] и преобразование булева уравнения АНФ=0 к виду КНФ=1 [28].
- Проверка выполнимости полученных булевых моделей осуществляется с помощью SAT и QSAT решателей, как разработанных ранее авторами в процессе исследований, так и внешних. Обзор SAT и QSAT решателей приведен в [29, 30].
В основе построения булевых моделей динамического свойства (первого этапа ее построения) для автономных, управляемых, сингулярных и асинхронных булевых сетей лежат функции одношагового и ^-шагового переходов, соответственно L и Ф k, отражающие
динамику функционирования сети. На втором этапе булева модель дополняется спецификацией свойства. Булевы модели одного и того же динамического свойства различны для разных классов булевых сетей. В табл. 1 приведены для сравнения математические модели и функции одношагового перехода L для сингулярной [31] и асинхронной булевых сетей.
Таблица 1. Математическая модель и функция L сингулярной и
асинхронной сетей
Класс булевой сети Математическая модель Функция одношагового перехода L
Сингулярная xt+1 = F (xt, zt), H (x', z') = 0 L(x0, x1, z0) = Vn=1 (xj Ф F (xz0)) v H(x0, z0) = 0
Асинхронная ^ = F(xt-1, u'-1) L(x0, x1, g0) = vn=1(x1 Ф (/ (x0) • gi v xi • g0)) v С(g0) = 0
В приведенных в табл. 1 моделях общими являются следующие обозначения: t e T = {1,2,..., к} - дискретное время (номер шага), x = col(x1,x2,..., xn) e Bn- и-мерный вектор
состояния, Xj e B = {0,1}, x0 e Bn - начальное состояние.
Для математической модели сингулярной булевой сети, представленной в табл. 1, z е B1 - вектор вспомогательных переменных, F(x, z), H(x, z) - векторные функции алгебры логики, называемые функцией переходов и функцией ограничений соответственно:
( F: Bn х Bl ^ Bn, H: Bn x Bl ^ B ). Для математической модели асинхронной булевой сети, приведенной в табл. 1, и eU = {1,2,..., n} - управляющее воздействие (номер обновляемой переменной вектора состояния x), U - множество допустимых состояний управления и, F(x, и) = col(F1(x, и), F2(x, и),..., Fn (x, и)) - логическая вектор-функция, называемая
глобальной функцией обновления ( F : Bn х U ^ Bn ). Координаты функции F определяются следующим образом:
Г Л (x), if i = и,
Vx е Bn, Vu e U, F (x, и) = I j
[x¿, if i ф и
где fi (x) (/j : Bn ^B, i = 1,2,..., n ) - локальная булева функция обновления по /-той переменной вектора состояния. Математическая модель для k=1 имеет вид:
, Г / (x0), if i = и 0,
x) =г ^ i = 1,2,..., n. (1)
[x¿ , if i Ф и
Из (1) следует, что любые два смежных состояния xt-1, xt (teT) траектории различаются значением не более, чем по одной переменной вектора состояния. При формировании функции L каждый целочисленный элемент и из множества U представлен в виде характеристического вектора g = col(g1,g2,..., gn) так, что gi = 1, если i = и и gi = 0
для всех i Ф и . Тогда с учетом замены множества U на множество G система уравнений (1) будет эквивалентна системе уравнений
x1 = / (x0) • g0 V x0 • g0, i = 1,2,..., n
(2)
при условии, что вектор g 0 удовлетворяет ограничению
/-»/ 0\ п-1 п 0 0 А — 0 п
С ) = V г=1 V г+1 • я ° V А = 0
7 , (3)
гарантирующему наличие в характеристическом векторе одной и только одной единицы, а функция Ь приобретает вид, представленный в табл. 1. Функция ^-шагового перехода (к > 1)
имеет следующий вид: Ф к (х0, х1,..., хк, я0, я1,..., як-1) = V к=1 Ь(х{, X-1, я'-1) = 0.
Особый класс представляют собой неявные булевы сети - ДДС, функция переходов в которых определена неявным булевым уравнением относительно вектора переменных
текущего состояния и векторов переменных нескольких (следующих за текущим) состояний [32]. С точки зрения динамики неявной булевой сети основным является свойство продолжаемости ее локальных решений. В силу существенных различий в построении булевых моделей динамических свойств средства решения задач качественного анализа различных классов булевых сетей распределены по разным подсистемам AMP BCM-QABDS. 3. Демонстрационный пример. Рассмотрим более подробно разработку композитного
сервиса для проверки свойства управляемости относительно пары состояний асинхронных
*
булевых сетей, когда необходимо синтезировать такое управление g , которое переводит
0 0 * систему (2, 3) из заданного начального состояния x = c в целевое состояние c за k шагов,
к *
т.е. x = c . Необходимое управление - схема обновления переменных состояния
к-1
* 0 1 к—1 g = ( g , g,.., g ) - является решением булева уравнения:
Фк (x0,x1,..., xk,g0,g1,..., gk-1 )
оо x =c
= 0 (4)
относительно неизвестных векторов переменных х1,..., хк 1,g0,ggk 1.
Для построения булевой модели свойства управляемости асинхронной булевой сети относительно пары состояний БЗ BCM-QABDS с помощью мастера спецификации дополнены следующими параметрами:
- ABN_DD - описание динамики сети;
- ABN_L и ABN_ФK - булевы ограничения в виде КНФ в формате DIMACS (https://logic.pdmi.ras.ru/~basolver/dimacs.html), соответствующие функциям L (табл. 1)
и Ф к;
- NX - размерность n вектора состояния x;
О *
- IS, ST - начальное и целевое состояния, соответствующие c и c ;
- SK - дискретное время (номер шага к);
- ABN_BM_CPPS - булева модель рассматриваемого свойства в формате КНФ;
- SAT_X_R - результат работы ALLSAT решателя;
- ABN_CSPS - управляющая последовательность.
В функциональное наполнение AMP включены следующие CMS:
- ABN_BL - формирование функции L в виде КНФ в формате DIMACS;
- ABN_BFK - формирование функции Фk в виде КНФ в формате DIMACS;
- ABN_BBM_CPPS - формирование булевой модели ABN_BM_CPPS;
- ABN_CPPS_SSP - обработка результатов проверки выполнимости модели ABN_BM_CPPS.
Интерфейс для ввода параметров и микросервисов приведен при описании мастера спецификации ПО. Для проверки выполнимости булевой модели рассматриваемого свойства используется вычислительный микросервис BM_SAT_X, разработанный ранее на основе последовательного и параллельного ALLSAT решателей [33]. Требуемая компоновка микросервисов строится с помощью мастера композитных сервисов. Схему сервиса можно получить в планировщике по процедурной или непроцедурной постановке задачи, а также составить (или отобразить уже полученную) в графическом редакторе (см. рис. 6).
k * xK =c
В качестве примера конкретной асинхронной булевой сети используется модель динамики одношаговых переходов вида (1, 2), описываемая следующей системой уравнений (n=3, х = col (Xj, x2, x3) ):
x¡ = (X0 V X0 v X30) • g0 V X0 • g0 X2 = X3 • g2 V X2 • g20
х1 = X0 • g30 v X30 • g30 . ()
0 0 0 0 0 0 —0 —0 —0 A gl • g2 V g 1 • g3 V g2 • g3 V g 1 • g2 • g3 = 0
»-»0 *
Проверим управляемость системы (5) для пары состояний c = 0 1 0 и c = 1 0 1. По описанию динамики (5) с помощью микросервиса ABN_BL формируется функция L в виде
КНФ в формате DIMACS (рис. 7). Переменным xj0, x°, x°, gj0, g2, g°, x¡, x2, x^ в этом формате соответствуют коды 1, 2, 3, 4, 5, 6, 7, 8, 9. Для переменных с отрицанием перед кодом ставится знак «-». Код «0» является разделителем дизъюнктов.
Рис. 7. Функция Ь для системы (5) в формате DIMACS
Микросервис ABN_BФK получает на основе Ь для заданного к > 1 функцию Ф к,
дублируя ограничения к раз с увеличением кодов очередного дубля на 6 • (к -1) . Микросервис
ABN_BBM_PCCS завершает формирование булевой модели, добавляя к функции Ф к
спецификацию свойства (4). Для очередного к микросервисом BM_SAT_X проверяется выполнимость булевой модели. Для к=3 находятся два решения:
- -1 2 -3 -4 -5 6 -7 8 9 -10 11 -12 -13 -14 15 16 -17 -18 19 -20 21 0;
- -1 2 -3 4 -5 -6 7 8 -9 -10 -11 12 13 14 15 -16 17 -18 19 -20 21 0.
Микросервис ABN_CPPS_SSP обрабатывает этот результат и выдает окончательный ответ в следующем виде: 010(3) ^ 011(2) ^ 001(1) ^ 101; 010(1) ^ 110(3) ^ 111(2) ^ 101. В
скобках указано значение управления и0 (равное значению индекса единичного элемента
вектора g0). Таким образом, для начального состояния с0 = 010 и целевого состояния
с* = 101 система (5) управляема для к=3, что подтверждается диаграммой переходов (рис. 8).
Рис. 8. Диаграмма переходов управляемой асинхронной булевой сети (4) Технология решения задач с помощью разработанных инструментальных средств, представленная в демонстрационном примере, применялась для качественного анализа двоичных динамических моделей объектов в различных предметных областях. В частности, в [9] при решении практических задач в области биоинформатики проверялось наличие свойства к-наблюдаемости сети активации Т-клеток, двоичная динамическая модель которой
представлена в [13, пример 2]. Построены неявные булевы модели для решения задач искусственного интеллекта о планировании действий и о минимальном покрытии множества, имеющих большое количество приложений. Результаты вычислительных экспериментов для этих моделей приведены соответственно в [32] и [34].
Заключение. В статье представлены новые средства автоматизации создания и применения пакета прикладных микросервисов для решения задач качественного исследования разнообразных классов булевых сетей на основе метода булевых ограничений. С помощью этих средств функциональное наполнение пакета BCM-QADBS расширено микросервисами для проверки динамических свойств сингулярных, неявных и асинхронных булевых сетей. Практическая значимость разработанного инструментария обусловлена широким применением булевых сетей в качестве двоичных моделей объектов в разнообразных предметных областях и состоит в повышении эффективности исследования этих моделей путем автоматизации всех этапов его проведения.
Благодарности. Исследование выполнено при поддержке Министерства науки и высшего образования Российской Федерации, проект № 121032400051-9.
Список источников
1. Oparin G.A., Bogdanova V.G., Pashinin A.A. Qualitative analysis of autonomous synchronous binary dynamic systems. Mathematics in engineering, science and aerospace, 2019, vol. 10, no. 3, pp. 407-419.
2. Oparin G.A., Bogdanova V.G., Pashinin A.A. et al. Microservice-oriented approach to automation of distributed scientific computations. 42nd International convention on information and communication technology, electronics and microelectronics (MIPRO), IEEE, 2019, pp. 236-241, DOI: 10.23919/MIPRO.2019.8757053.
3. Опарин Г.А. Технология качественного исследования двоичных динамических систем в микросервисной инфраструктуре / Г.А. Опарин, В.Г. Богданова, А.А. Пашинин // Информационные и математические технологии, 2022. - № 4(28). - С. 137-148. DOI: 10.38028/ESI.2022.28.4.011.
4. Опарин Г.А. Управление конвейерно-параллельными вычислениями при решении задач качественного исследования двоичных динамических систем на основе метода булевых ограничений / Г.А. Опарин, В.Г. Богданова, А.А. Пашинин // Информационные и математические технологии в науке и управлении, 2019. - №3(15). - С. 79-90. - DOI: 10.25729/2413-0133-2019-3-07.
5. Маслов Ю.С. Теория дедуктивных систем и ее применения / Ю.С. Маслов. -М.: Радио и связь, 1986.
6. Jhala R., Majumdar R. Software model checking. ACM Comput. Surv, 2015, vol. 41, no. 4, pp. 21:1-21:54.
7. Vassilyev S.N. Method of reduction and qualitative analysis of dynamic systems: I. J. Comput. Syst. Sci. Int., 2006, vol. 45, pp. 17-25.
8. Vassilyev S. N. Method of reduction and qualitative analysis of dynamic systems: II. J. Comput. Syst. Sci. Int., 2006, vol. 45, pp. 167-179.
9. Oparin G.A., Bogdanova V.G., Pashinin A.A. Investigation of observability property of controlled binary dynamical systems: a logical approach. Proc. of the 2nd International Workshop on information, computation, and control systems for distributed environments, Irkutsk, Russia, July 6-7, 2020. CEUR-WS Proceedings, 2021, vol. 2913, pp. 129-138, DOI:10.47350/ICCS-DE.2021.11.
10. Cheng D., Qi H., Li Z. Analysis and control of Boolean networks: A semi-tensor product approach. Springer, London, 2011.
11. Hochma G., Margaliot M., Fornasini E. et al. Symbolic dynamics of Boolean control networks. Automatica, 2013, vol. 49, no. 8, pp. 2525-2530, DOI: 10.1016/j.automatica.2013.05.004.
12. Zhao Y., Qi H., Cheng D. Input-state incidence matrix of Boolean control networks and its applications. Sys. Contr. Lett., 2010, vol. 59, no. 12, pp. 767-774.
13. Li R., Yang M., Chu T. Controllability and observability of Boolean networks arising from biology. Chaos, 2015, vol. 25, no. 2, 023104 p.
14. Bardet M. Faugere C., Salvy B. On the complexity of the F5 Grobner basis algorithm. Journal of symbolic computation, 2015, vol. 70, pp. 49-70.
15. Hinkelmann F., Brandon M., Guang B. et al. ADAM: Analysis of discrete models of biological systems using computer algebra. BMC bioinformatics, 2011, vol. 12:295, DOI: 10.1186/1471-2105-12-295.
16. Naldi A., Hernandez C., Levy N. et al. The CoLoMoTo Interactive notebook: accessible and reproducible computational analyses for qualitative biological networks. Frontiers in physiology, 2018, vol. 9, article 680, DOI: 10.3389/fphys.2018.00680.
17. Oles V., Kukushkin A. BoolSi: a tool for distributed simulations and analysis of Boolean networks. Journal of open research software, 2020, vol. 8, iss. 1, article 26, D01:10.5334/jors.308.
18. Oparin G.A., Bogdanova V.G., Pashinin A.A. Microservice approach to the qualitative study of attractors of binary dynamic systems based on the Boolean constraint method. 43rd International Convention on information and communication technology, electronics and microelectronics, IEEE, 2020, pp. 1904-1909, D0I:10.23919/MIPR048935.2020.9245300.
19. Huhns M.N., Sing M.P. Service-oriented computing: key concepts and principles. IEEE Internet computing, 2005, vol. 9, iss. 1, pp. 75-81.
20. Rao J., Su X. A survey of automated web service composition methods. In Cardoso J., Sheth A. (eds) Semantic Web services and Web process composition. SWSWPC 2004. Lecture Notes in computer science, Springer, Berlin, Heidelberg, 2005, vol. 3387, pp. 43-54, DOI: 10.1007/978-3-540-30581-1_5.
21. Rawat M.K., Upadhayay D.C. Invoking web services with software agents. IJERT, 2012, vol.1, iss.4. D0I:10.17577/IJERTV1IS4041.
22. Lemos A.L., Daniel F., Benatallah B. Web service composition: a survey of techniques and tools. ACM computing surveys, 2015, vol. 48, iss. 3, article 33, pp. 1-41, DOI: 10.1145/2831270.
23. Huf A., Siqueira F. Composition of heterogeneous web services: A systematic review. Journal of network and computer applications, 2019, vol. 143, pp. 89-110, DOI: 10.1016/j.jnca.2019.06.008.
24. Oparin G.A., Bogdanova V.G., Pashinin A.A. Automated tools for the development of microservice compositions for hybrid scientific computations. Proceedings of the 2nd International Workshop on information, computation, and control systems for distributed environments, CEUR-WS Proceedings, 2020, pp 201-213.
25. Oparin G.A., Bogdanova V.G., Pashinin A.A. Binary dynamic models of structural synthesis of programs. 46th International Convention on information and communication technology, electronics and microelectronics, 2023, pp. 1173-1178.
26. Tseitin G.S. On the complexity of derivation in propositional calculus. In Siekmann J.H., Wrightson G. (eds) Automation of reasoning. symbolic computation. Springer, Berlin, Heidelberg, 1983, pp. 466-483, DOI: 10.1007/978-3-642-81955-1_28.
27. Plaisted D.A., Greenbaum S. A structure preserving clause form translation. Symbolic computation, 1986, vol. 2, iss. 3, pp. 293-304.
28. Sage 9.8. Reference manual. An ANF to CNF Converter using a dense/sparse strategy. Available at: https://doc.sagemath.org/html/en/reference/sat/sage/sat/converters/polybori.html (accessed: 05/29/2023).
29. Gong W., Zhou X. A survey of SAT solver. AIP conference proceedings, 2017, vol. 1836, p. 020059.
30. Marin P., Massimo Narizzano M., Pulina L. et al. Twelve years of QBF evaluations: QSAT Is PSPACE-hard and it shows. Fundam. Informaticae, 2016, vol. 149, iss. 1-2, pp. 133-158.
31. Oparin G.A., Bogdanova V.G., Pashinin A.A. The Boolean constraint method application for qualitative analysis of the dynamical properties of singular Boolean networks. Computational technologies, 2023, vol. 28, no. 1. pp. 48-60, DOI: 10.25743/ICT.2023.28.1.006.
32. Oparin G. A., Bogdanova V. G., Pashinin A. A. Implicit Boolean network for planning actions. 45th Jubilee international convention on information, communication and electronic technology (MIPRO), IEEE, 2022, pp. 871-876, DOI: 10.23919/MIPRO55190.2022.9803418.
33. Toda T., Soh T. Implementing efficient all solutions SAT solvers. ACM Journal of experimental algorithmics, 2016, vol. 21, no. 1.12, pp. 1-44, DOI: 10.1145/2975585.
34. Oparin G.A., Bogdanova V.G., Pashinin A.A. Implicit Boolean networks and their application to combinatorial problems. Mathematics in engineering, science and aerospace, 2022, vol. 13, no. 1, pp. 25-35.
Опарин Геннадий Анатольевич. Доктор технических наук, профессор, главный научный сотрудник лаборатории 5.1 Параллельных и распределенных вычислительных систем, заведующий отделением вычислительных и управляющих систем, Институт динамики систем и теории управления им. В.М. Матросова СО РАН, AuthorID: 1498, SPIN: 4544-2804, ORCID: 0000-0002-3757-6041, prn51@icc.ru, 664033, Россия, г. Иркутск, ул. Лермонтова, 134.
Богданова Вера Геннадьевна. Кандидат технических наук, доцент, старший научный сотрудник лаборатории 5.1 Параллельных и распределенных вычислительных систем, Институт динамики систем и теории управления им. В.М. Матросова СО РАН, AuthorID: 1536, SPIN: 9123-3563, ORCID: 0000-0002-5763-6849, bvg@icc.ru, 664033, Россия, г. Иркутск, ул. Лермонтова, 134.
Пашинин Антон Алексеевич. Младший научный сотрудник лаборатории 5.1 Параллельных и распределенных вычислительных систем, Институт динамики систем и теории управления им. В.М. Матросова СО РАН, AuthorID: 776425, SPIN: 9325-0914, ORCID: 0000-0002-1205-7595, apcrol@gmail.com, 664033, Россия, г. Иркутск, ул. Лермонтова, 134.
Опарин Г.А., Eогданоeа B.F, narnunun A.A.
UDC 004.421+004.4'2+004.771 DOI:10.25729/ESI.2024.34.2.015
Automating tools for the development and application of an applied microservices package
Gennady A. Oparin, Vera G. Bogdanova, Anton A. Pashinin
Matrosov institute for system dynamics and control theory SB RAS, Russia, Irkutsk, apcrol@gmail.com
Abstract. Results related to the developed earlier Boolean constraint method for studying the dynamics and parametric synthesis of control systems, namely, Boolean networks, in a microservice infrastructure using knowledge base tools, are presented. The computational model of the subject area acts as a knowledge base, which is understood as a set of information about the subject area objects and the relationships between them. Each functional relationship is implemented by a computational microservice created based on a software module that calculates the values of the output parameters from the given values of the input parameters. A set of computational microservices constitutes the functional software of an applied microservices package. The system software consists of services for setting the task, planning and monitoring calculations, data management, and processing results. Agents of the applied microservices package, depending on the problem statement and the knowledge base organization, carry out computing management (decentralized, centralized or hierarchical). In connection with the studying of new classes of Boolean networks (controlled, singular, implicit, asynchronous, bipartite, and others), we are extending the earlier created applied microservices package based on the above approach and intended for solving the problems of qualitative analysis of autonomous Boolean networks. The aim of the study is to develop a new toolkit for the HPCSOMAS-MSC microservice intelligent computational platform for creating, configuring and accessing computational microservices, which allows interacting with package microservices directly through a web interface. A web interface for the subject area description is implemented in addition to the existing one based on the JSON language. The new toolkit allows both to speed up the development and debugging of microservices, and to make further interaction more convenient for the subject area specialist. Keywords: boolean network, qualitative analysis, Boolean constraint method, applied microservices package
Acknowledgements: the study was supported by the Ministry of Science and Higher Education of the Russian Federation, project no. 121032400051-9.
References
1. Oparin G.A., Bogdanova V.G., Pashinin A.A. Qualitative analysis of autonomous synchronous binary dynamic systems. Mathematics in engineering, science and aerospace, 2019, vol. 10, no. 3, pp. 407-419.
2. Oparin G.A., Bogdanova V.G., Pashinin A.A. et al. Microservice-oriented approach to automation of distributed scientific computations. 42nd International convention on information and communication technology, electronics and microelectronics (MIPRO), IEEE, 2019, pp. 236-241, DOI: 10.23919/MIPRO.2019.8757053.
3. Oparin G.A., Bogdanova V.G., Pashinin A.A. Tehnologija kachestvennogo issledovanija dvoichnyh dinamicheskih sistem v mikroservisnoj infrastrukture [Technology of qualitative study of binary dynamic systems in microservice infrastructure]. Informatsionnye i matematicheskie tekhnologii v nauke i upravlenii [Information and mathematical technologies in science and management], 2022, vol. 4, no. 28, pp. 137-148, DOI: 10.38028/ESI.2022.28.4.011.
4. Oparin G.A., Bogdanova V.G., Pashinin A.A. Upravlenie konvejerno-parallel'nymi vychislenijami pri reshenii zadach kachestvennogo issledovanija dvoichnyh dinamicheskih sistem na osnove metoda bulevyh ogranichenij [Management of pipeline-parallel computations for solving problems of qualitative study of binary dynamic systems based on the Boolean constraint method]. Informatsionnye i matematicheskie tekhnologii v nauke i upravlenii [Information and mathematical technologies in science and management], 2019, vol. 3, no. 15, pp. 7990, DOI: 10.25729/2413-0133-2019-3-07.
5. Maslov S. Ju. Teorija deduktivnyh sistem i ee primenenie [Deductive systems theory and its applications]. M., Radio i svjaz' [Radio and communications], 1986.
6. Jhala R., Majumdar R. Software model checking. ACM Comput. Surv, 2015, vol. 41, no. 4, pp. 21:1-21:54.
7. Vassilyev S.N. Method of reduction and qualitative analysis of dynamic systems: I. J. Comput. Syst. Sci. Int., 2006, vol. 45, pp. 17-25.
8. Vassilyev S. N. Method of reduction and qualitative analysis of dynamic systems: II. J. Comput. Syst. Sci. Int., 2006, vol. 45, pp. 167-179.
9. Oparin G.A., Bogdanova V.G., Pashinin A.A. Investigation of observability property of controlled binary dynamical systems: a logical approach. Proc. of the 2nd International Workshop on information, computation, and control systems for distributed environments, Irkutsk, Russia, July 6-7, 2020. CEUR-WS Proceedings, 2021, vol. 2913, pp. 129-138, DOI:10.47350/ICCS-DE.2021.11.
10. Cheng D., Qi H., Li Z. Analysis and control of Boolean networks: A semi-tensor product approach. Springer, London, 2011.
11. Hochma G., Margaliot M., Fornasini E. et al. Symbolic dynamics of Boolean control networks. Automatica, 2013, vol. 49, no. 8, pp. 2525-2530, DOI: 10.1016/j.automatica.2013.05.004.
12. Zhao Y., Qi H., Cheng D. Input-state incidence matrix of Boolean control networks and its applications. Sys. Contr. Lett., 2010, vol. 59, no. 12, pp. 767-774.
13. Li R., Yang M., Chu T. Controllability and observability of Boolean networks arising from biology. Chaos, 2015, vol. 25, no. 2, 023104 p.
14. Bardet M. Faugère C., Salvy B. On the complexity of the F5 Gröbner basis algorithm. Journal of symbolic computation, 2015, vol. 70, pp. 49-70.
15. Hinkelmann F., Brandon M., Guang B. et al. ADAM: Analysis of discrete models of biological systems using computer algebra. BMC bioinformatics, 2011, vol. 12:295, DOI: 10.1186/1471-2105-12-295.
16. Naldi A., Hernandez C., Levy N. et al. The CoLoMoTo Interactive notebook: accessible and reproducible computational analyses for qualitative biological networks. Frontiers in physiology, 2018, vol. 9, article 680, DOI: 10.3389/fphys.2018.00680.
17. Oles V., Kukushkin A. BoolSi: a tool for distributed simulations and analysis of Boolean networks. Journal of open research software, 2020, vol. 8, iss. 1, article 26, DOI:10.5334/jors.308.
18. Oparin G.A., Bogdanova V.G., Pashinin A.A. Microservice approach to the qualitative study of attractors of binary dynamic systems based on the Boolean constraint method. 43rd International Convention on information and communication technology, electronics and microelectronics, IEEE, 2020, pp. 1904-1909, DOI:10.23919/MIPRO48935.2020.9245300.
19. Huhns M.N., Sing M.P. Service-oriented computing: key concepts and principles. IEEE Internet computing, 2005, vol. 9, iss. 1, pp. 75-81.
20. Rao J., Su X. A survey of automated web service composition methods. In Cardoso J., Sheth A. (eds) Semantic Web services and Web process composition. SWSWPC 2004. Lecture Notes in computer science, Springer, Berlin, Heidelberg, 2005, vol. 3387, pp. 43-54, DOI: 10.1007/978-3-540-30581-1_5.
21. Rawat M.K., Upadhayay D.C. Invoking web services with software agents. IJERT, 2012, vol.1, iss.4. DOI:10.17577/IJERTV1IS4041.
22. Lemos A.L., Daniel F., Benatallah B. Web service composition: a survey of techniques and tools. ACM computing surveys, 2015, vol. 48, iss. 3, article 33, pp. 1-41, DOI: 10.1145/2831270.
23. Huf A., Siqueira F. Composition of heterogeneous web services: A systematic review. Journal of network and computer applications, 2019, vol. 143, pp. 89-110, DOI: 10.1016/j.jnca.2019.06.008.
24. Oparin G.A., Bogdanova V.G., Pashinin A.A. Automated tools for the development of microservice compositions for hybrid scientific computations. Proceedings of the 2nd International Workshop on information, computation, and control systems for distributed environments, CEUR-WS Proceedings, 2020, pp 201-213.
25. Oparin G.A., Bogdanova V.G., Pashinin A.A. Binary dynamic models of structural synthesis of programs. 46th International Convention on information and communication technology, electronics and microelectronics, 2023, pp. 1173-1178.
26. Tseitin G.S. On the complexity of derivation in propositional calculus. In Siekmann J.H., Wrightson G. (eds) Automation of reasoning. symbolic computation. Springer, Berlin, Heidelberg, 1983, pp. 466-483, DOI: 10.1007/978-3-642-81955-1_28.
27. Plaisted D.A., Greenbaum S. A structure preserving clause form translation. Symbolic computation, 1986, vol. 2, iss. 3, pp. 293-304.
28. Sage 9.8. Reference manual. An ANF to CNF Converter using a dense/sparse strategy. Available at: https://doc.sagemath.org/html/en/reference/sat/sage/sat/converters/polybori.html (accessed: 05/29/2023).
29. Gong W., Zhou X. A survey of SAT solver. AIP conference proceedings, 2017, vol. 1836, p. 020059.
30. Marin P., Massimo Narizzano M., Pulina L. et al. Twelve years of QBF evaluations: QSAT Is PSPACE-hard and it shows. Fundam. Informaticae, 2016, vol. 149, iss. 1-2, pp. 133-158.
31. Oparin G.A., Bogdanova V.G., Pashinin A.A. The Boolean constraint method application for qualitative analysis of the dynamical properties of singular Boolean networks. Computational technologies, 2023, vol. 28, no. 1. pp. 48-60, DOI: 10.25743/ICT.2023.28.1.006.
32. Oparin G. A., Bogdanova V. G., Pashinin A. A. Implicit Boolean network for planning actions. 45th Jubilee international convention on information, communication and electronic technology (MIPRO), IEEE, 2022, pp. 871-876, DOI: 10.23919/MIPRO55190.2022.9803418.
33. Toda T., Soh T. Implementing efficient all solutions SAT solvers. ACM Journal of experimental algorithmics, 2016, vol. 21, no. 1.12, pp. 1-44, DOI: 10.1145/2975585.
34. Oparin G.A., Bogdanova V.G., Pashinin A.A. Implicit Boolean networks and their application to combinatorial problems. Mathematics in engineering, science and aerospace, 2022, vol. 13, no. 1, pp. 25-35.
Oparin Gennady Anatol'evich. Doctor of technical sciences, professor, chief researcher of the laboratory 5.1. of Parallel and distributed computing systems, head of computing and control systems department, institute of system dynamics and control theory named after V.M. Matrosov SB RAS, AuthorID: 1498, SPIN: 4544-2804, ORCID: 00000002-3757-6041, prn51@icc.ru, 664033, Russia, Irkutsk, st. Lermontov, 134.
Bogdanova Vera Gennad'evna. PhD in technical sciences, associate professor, senior researcher of the laboratory 5.1. of parallel and distributed computing systems, institute of system dynamics and control theory named after V.M. Matrosov SB RAS, AuthorID: 1536, SPIN: 9123-3563, ORCID: 0000-0002-5763-6849, bvg@icc.ru, 664033, Russia, Irkutsk, st. Lermontov, 134.
Pashinin Anton Alekseevich. Junior researcher of the laboratory 5.1. of parallel and distributed computing systems, institute of system dynamics and control theory named after V.M. Matrosov SB RAS, AuthorID: 776425, SPIN: 9325-0914, ORCID: 0000-0002-1205-7595, apcrol@gmail.com, 664033, Russia, Irkutsk, st. Lermontov, 134.
Статья поступила в редакцию 22.06.2023; одобрена после рецензирования 08.04.2024; принята к публикации 30.05.2024.
The article was submitted 06/22/2023; approved after reviewing 04/08/2024; accepted for publication 05/30/2024.