Scientific journal
Modern high technologies
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,899

SERVICE-ORIENTED APPROACH TO SIMULATING INFRASTRUCTURAL OBJECTS FUNCTIONING

Feoktistov A.G. 1 Kostromin R.O. 1 Sidorov I.A. 1
1 Matrosov Institute for System Dynamics and Control Theory of SB RAS
Nowadays, methods and tools for simulation are widely used in studying the properties and functioning of infrastructure objects. Such objects form the basis of the vital activity of various technical, economic, cultural, social, and other systems. Therefore, the results of modeling infrastructure objects often make it possible to significantly improve the efficiency of the functioning of such systems and ensure the adoption of optimal decisions on their creation and development. However, an analysis of the modern evolution of frameworks for the design and application of simulation models of infrastructure facilities shows a number of problems. Among them are the complexity of developing the models, organizing parameter sweep computations using distributed computing, ensuring the efficient use of resources of a heterogeneous computing environment, supporting flexible and convenient end-user access to simulation models in order to prepare and carry out large-scale experiments. In this regard, the paper proposes a new approach to simulating infrastructure objects based on the service-oriented paradigm. We consider the architecture of the system for designing and applying models. In addition, the principles and tools of their specification are described. Finally, we demonstrate an example of a service for evaluating the economic efficiency in functioning an infrastructural object of the Baikal natural territory.
infrastructure objects
simulation modeling
distributed computing
heterogeneous environment
service-oriented approach

В настоящее время имитационное моделирование широко применяется в качестве одного из основных инструментов поддержки принятия решений в управлении разнообразными техническими, экономическими, культурно-социальными и другими системами [1]. В рамках такого управления решается широкий круг практических задач. В их числе стратегическое принятие решений, планирование, контроль и оперативное регулирование и совершенствование бизнес-процессов, а также внедрение новых технологий [2], включая природосберегающие технологии [3]. Имитационное моделирование обеспечивает получение информации о результатах выполнения бизнес-процессов, их производительности и эффективности для разных конфигураций инфраструктур. Эта информация необходима для выбора оптимальных конфигураций.

Использование гибких и удобных средств разработки и применения имитационных моделей является одним из наиболее важных аспектов в процессе подготовки и проведения экспериментов по изучению свойств и динамики работы вышеупомянутых систем [4]. В связи с этим следует отметить повсеместный рост роли сервисов в управлении сложными системами, за счет внедрения которых эти системы получают существенные конкурентные преимущества [5]. Известные стандарты имитационного моделирования, такие как Distributed Interactive Simulation (DIS) [6] и High Level Architecture (HLA) [7], по-прежнему широко используются, однако поддерживаемые ими архитектуры и концептуальные основы базируются на технологиях, которые в той или иной степени развиваются в течение нескольких последних десятилетий. Поэтому они часто достигают пределов своих возможностей при их применении в рамках современной цифровизации исследуемых систем. В этой связи разработка новых инструментальных средств имитационного моделирования является чрезвычайно актуальной [8]. Причем особое внимание должно быть уделено разработке и внедрению моделей и методов многокритериального анализа результатов моделирования в рамках таких средств [9].

Целью исследования является разработка новых сервис-ориентированных средств подготовки и проведения крупномасштабных научных экспериментов с имитационными моделями инфраструктурных объектов сложных систем, разработанными с помощью широко используемой системы General Purpose Simulation System (GPSS) [10]. В рамках таких экспериментов процесс моделирования организуется с использованием многовариантных вычислений и многокритериального выбора оптимальных результатов расчетов. Автоматизация разработки и конфигурирования сервисов моделирования базируется, в отличие от известных, на применении специальной спецификации имитационных моделей.

Принципы работы и аспекты реализации сервис-ориентированных средств

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

Выполнение GPSS-моделей. GPSS работает под управлением операционных систем (ОС) семейства Windows. Одним из недостатков GPSS является невозможность выполнения моделирования в многопоточном режиме. Однако GPSS позволяет проводить моделирование в пакетном режиме. Поэтому в ОС всегда есть возможность запуска нескольких экземпляров GPSS c разными вариантами входных данных моделей на разных ядрах процессора. При этом, в отличие от другой популярной системы имитационного моделирования AnyLogic [11], в которой параллельные вычисления привязаны к собственному облаку этой системы, параллельное выполнение экземпляров GPSS может быть осуществлено в любой распределенной вычислительной среде. Автоматический запуск моделей на выполнение осуществляется посредством оболочки PoweShell для Windows, доступ к которой возможен по протоколу SSH. Удаленное выполнение команд реализовано с помощью менеджера WinRM. Сервер OpenSSH устанавливается штатными средствами PowerShell из репозитория модулей для Windows.

Общие принципы создания, конфигурирования и использования сервиса имитационного моделирования. В качестве основы для реализации сервиса выбран REST-подход. В таком случае на стороне сервера размещается приложение (node.js), которое принимает запросы по протоколу HTTP. Для взаимодействия с сервисом разработан веб-интерфейс с личным кабинетом пользователя. В соответствии с запросами средствами node.js происходит выполнение скриптов на языке BASH от имени непривилегированного пользователя. Данные скрипты осуществляют запуск виртуальных машин (ВМ) в очереди вычислительного ресурса, а также запуск процесса имитационного моделирования.

Компоненты сервиса выполнены в рамках микросервисной архитектуры. Каждый этап проведения эксперимента выделен в отдельное приложение (микросервис). Это обеспечивает их интеграцию в другие приложения посредством взаимодействия с другими сервисами через HTTP-запросы. Схема создания, конфигурирования и применения сервиса имитационного моделирования приведена на рисунке 1. На нижнем уровне архитектуры расположены виртуализированные ресурсы. Для выполнения моделирования осуществляется запуск ВМ. Управление ВМ реализуется средствами гипервизора OpenStack. Агент управления ресурсами осуществляет запуск и настройку необходимого числа ВМ на основе сведений об их состоянии, предоставляемых системой метамониторинга [12], и запросов агента диспетчеризации вычислений. Настройка ресурсов выполняется средствами Ansible. Агент диспетчеризации вычислений получает из очереди новые задания и обновляет статусы запущенных через API (запросы GET и PUT). Для новых заданий осуществляется запрос ресурсов у их агента. Далее происходит удаленный запуск заданий на выделенных ресурсах. В БД хранится текущая очередь и список завершенных экспериментов. Каждая ВМ имеет доступ к сетевому хранилищу, где после ее запуска в каталоге входных данных соответствующего эксперимента размещается актуальный файл модели. Аналогично обеспечивается доступ к каталогу результатов расчетов. После завершения работы модели ВМ уничтожается. Информация об эксперименте размещается в БД экспериментов.

Разработчик создает модели GPSS и с помощью файла спецификации в формате JSON описывает входные параметры, их тип, диапазоны значений и вариации данных. Готовые модели и спецификации помещаются в БД спецификаций. С помощью веб-интерфейса пользователя формируются новые вычислительные эксперименты через запросы к API сервиса управления экспериментами. Из личного кабинета доступна история запуска имитационных моделей, а также соответствующие им выходные файлы. Для уже завершенных экспериментов есть возможность повторного его проведения с новыми значениями параметров. Отдельная подсистема предназначена для работы с БД спецификаций, доступ к которой реализуется средствами специального API. К нему разработчик обращается через веб-интерфейс конфигурирования сервисов имитационного моделирования.

feokt1.tif

Рис. 1. Схема создания, конфигурирования и использования сервиса

Сервис. В качестве примера применения разработанных инструментальных средств рассмотрим сервис, реализующий методику оценки экономической эффективности функционирования туристической базы отдыха, расположенной на прибрежной территории озера Байкал, с использованием природосберегающей технологии его снабжения электрической энергией с помощью тепловых насосов [13]. Разработчик модели формирует ее спецификацию (рис. 2). Данная спецификация в формате JSON, которая передается сервису через API, содержит следующие основные поля: id (идентификатор эксперимента); name (название эксперимента); model (модель); title (заголовок файла эксперимента); description (описание эксперимента); resources (массив ресурсов, на которых предстоит выполнить эксперимент); parameters (массив параметров модели); command (команда запуска). Разработчик конфигурирует сервисы, указывая программу генерации вариантов исходных данных, каталоги для данных и результатов счета с помощью веб-формы (рис. 3).

{ "id": "wf_021248",

"name": "Model Retro",

"model": "retro.gps",

"title": "Имитационная модель Model Retro ",

"description": "Модель оценки работы инфраструктурного объекта",

"resources": [

{"id": "001", "name": "VM_Win", "address": "10.10.0.12"},

{"id": "023", "name": "VM_Win10", "address": "10.10.0.221"}],

"parameters": {

"dataPath": "~/models/Model Retro/",

"input": [ {

"type": "number",

"name": "temp_in",

"title": "Температура внутри здания",

"value": "20.0",

"variable": "true",

"step": "1",

"minValue": "20",

"maxValue": "24" },{

"type": "number",

"name": "prop_coef",

"title": "Коэффициент пропорциональности",

"value": "1.978263",

"variable": " false "},{

"type": "number",

"name": "hour_need",

...

"output": [{

"type": "string",

"name": "result",

"title": "Отчет GPSS",

"resultPath": "~/models/Model Retro/out"}]},

"commands": {

"start": "./start.sh ${input_num} ${input_text}"}}

Рис. 2. Фрагмент спецификации модели

feokt3.tif

Рис. 3. Веб-форма «Конфигурирование»

Наблюдаемые переменные реализуются в модели в виде сохраняемых ячеек и описываются в спецификации модели. Раздел стандартного отчета GPSS, представляющий информацию о сохраняемых ячейках, является областью многокритериального анализа. Специальный микросервис реализует три метода данного анализа: лексикографический, мажоритарный и Парето-оптимальный [9]. На рис. 4 приведен скриншот веб-формы для подготовки и запуска эксперимента. Она обеспечивает возможность выбора модели, задания ее входных параметров и определения используемого метода многокритериального анализа. После задания всей необходимой информации осуществляется запуск задания в вычислительной среде. Сведения о процессе выполнения задания доступны на веб-форме, представленной на рис. 5. Кнопка «Скачать архив отчетов» позволяет скачать отчеты GPSS, созданные в процессе моделирования для каждого экземпляра модели. Результаты многокритериального анализа отображаются на специальной веб-форме (рис. 6). Моделирование выполнено для различных климатических условий помещений объекта. В результате получены требуемые оценки стоимости использования природосберегающей технологии снабжения этого объекта электрической энергией.

feokt4.tif

Рис. 4. Веб-форма «Подготовка и запуск эксперимента»

feokt5.tif

Рис. 5. Веб-форма «Результаты моделирования»

feokt6.tif

Рис. 6. Веб-форма «Результаты многокритериального анализа»

Заключение

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

Работа выполнена при финансовой поддержке РФФИ и правительства Иркутской области, проект № 20-47-380002-р_а (регистрационный № АААА-А20-120021090008-7).