Научная статья на тему 'Мультиагентный алгоритм построения остаточной схемы решения задачи в распределенных пакетах прикладных программ'

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

CC BY
49
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПРЕДЕЛЕННЫЙ ПАКЕТ ПРИКЛАДНЫХ ПРОГРАММ / СХЕМА РЕШЕНИЯ ЗАДАЧИ / МУЛЬТИАГЕНТНОЕ УПРАВЛЕНИЕ / ОТКАЗОУСТОЙЧИВОСТЬ / DISTRIBUTED APPLIED SOFTWARE PACKAGE / PROBLEM-SOLVING SCHEME / MULTI-AGENT MANAGEMENT / FAULT-TOLERANCE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Феоктистов Александр Геннадьевич, Костромин Роман Олегович, Сидоров Иван Александрович, Горский Сергей Алексеевич

В настоящее время базовые программные средства, реализующие технологии организации расчетов в высокопроизводительных вычислительных системах, обеспечивают потенциальную основу для массового создания и использования параллельных и распределенных приложений. Активно развиваются и применяются на практике инструментальные средства для создания пакетов прикладных программ, а также систем поддержки рабочих процессов (workflow). Однако анализ их практического применения позволяет сделать вывод о необходимости повышения отказоустойчивости процессов решения задач, включающих наборы взаимосвязанных подзадач, в распределенных пакетах прикладных программ. В особенности данная проблема актуализируются при решении задач в гетерогенной распределенной вычислительной среде, в качестве основных компонентов которой выступают кластеры, в том числе гибридные кластеры с разнородными узлами, а высокопроизводительные серверы, системы хранения данных, персональные компьютеры и другие вычислительные элементы дополняют инфраструктуру среды. В статье представлен адаптивный мультиагентный алгоритм, предназначенный для перераспределения заданий по ресурсам такой среды при возобновлении процесса решения задач в распределенных пакетах прикладных программ после отказов программных и аппаратных средств. Работа данного алгоритма базируется в отличие от известных на методах конкретизирующего программирования для построения и выполнения остаточной схемы решения задачи, а также метамониторинга ресурсов среды. Сравнительный анализ результатов эксперимента по полунатурному моделированию поддержки отказоустойчивости процесса выполнения схем решения задач распределенных пакетов прикладных программ различными метапланировщиками продемонстрировал преимущество предложенного подхода к мультиагентному управлению в гетерогенной распределенной вычислительной среде.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Феоктистов Александр Геннадьевич, Костромин Роман Олегович, Сидоров Иван Александрович, Горский Сергей Алексеевич

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

MULTI-AGENT ALGORITHM FOR CREATING A RESIDUAL PROBLEM-SOLVING SCHEME IN DISTRIBUTED APPLIED SOFTWARE PACKAGES

Nowadays, basic software tools that implement technologies for organizing computations in high-performance computing systems provide a potential basis for the mass creation and use of parallel and distributed applications. Tools for creating applied software packages and workflow support systems are being actively developed and applied in practice. However, an analysis of their practical application allows us to conclude that it is necessary to increase the fault-tolerance of problem-solving processes in distributed applied software packages for problems that include sets of interrelated subproblems. In particular, this problem becomes urgent when we solve problems in a heterogeneous distributed computing environment. Clusters, including hybrid clusters with heterogeneous nodes, are the main components of such an environment. High-performance servers, storage systems, personal computers, and other computing elements complement the infrastructure of the environment. The paper presents an adaptive multi-agent algorithm, which is intended for the redistribution of jobs on the resources of such an environment. The algorithm is used when restarting the problem-solving process in distributed applied software packages after the failure of software and hardware. In contrast to the well-known algorithms for maintaining fault-tolerance of distributed computing that are used in workflow management systems, the work of this algorithm is based on the use of program specialization methods for creating and executing a residual problem-solving scheme. It also actively applies meta-monitoring of computational resources. Comparative analysis of the experimental results on the semi-natural modeling the support of the fault-tolerance of the scheme-executing process for solving problems of distributed applied software packages by various meta-schedulers demonstrated the advantage of the proposed approach to multi-agent management in the heterogeneous distributed computing environment.

Текст научной работы на тему «Мультиагентный алгоритм построения остаточной схемы решения задачи в распределенных пакетах прикладных программ»

Раздел. II. Распределенные и облачные вычисления

УДК 004.4'2+004.89 DOI 10.23683/2311-3103-2018-8-59-69

А.Г. Феоктистов, Р.О. Костромин, И.А. Сидоров, С.А. Горский

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

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

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

A.G. Feoktistov, R.O. Kostromin, I.A. Sidorov, S.A. Gorsky

MULTI-AGENT ALGORITHM FOR CREATING A RESIDUAL PROBLEMSOLVING SCHEME IN DISTRIBUTED APPLIED SOFTWARE PACKAGES

Nowadays, basic software tools that implement technologies for organizing computations in high-performance computing systems provide a potential basis for the mass creation and use of parallel and distributed applications. Tools for creating applied software packages and workflow support systems are being actively developed and applied in practice. However, an analysis of their practical application allows us to conclude that it is necessary to increase the fault-tolerance of problem-solving processes in distributed applied software packages for problems that include

*

Исследование выполнено при поддержке РФФИ, проект № 16-07-00931-а, а также Президиума РАН, программа № 30, проект «Методы, алгоритмы и инструментальные средства децентрализованного группового решения задач в вычислительных и управляющих системах».

sets of interrelated subproblems. In particular, this problem becomes urgent when we solve problems in a heterogeneous distributed computing environment. Clusters, including hybrid clusters with heterogeneous nodes, are the main components of such an environment. High-performance servers, storage systems, personal computers, and other computing elements complement the infrastructure of the environment. The paper presents an adaptive multi-agent algorithm, which is intended for the redistribution of jobs on the resources of such an environment. The algorithm is used when restarting the problem-solving process in distributed applied software packages after the failure of software and hardware. In contrast to the well-known algorithms for maintaining fault-tolerance of distributed computing that are used in workflow management systems, the work of this algorithm is based on the use of program specialization methods for creating and executing a residual problem-solving scheme. It also actively applies meta-monitoring of computational resources. Comparative analysis of the experimental results on the semi-natural modeling the support of the fault-tolerance of the scheme-executing process for solving problems of distributed applied software packages by various meta-schedulers demonstrated the advantage of the proposed approach to multi-agent management in the heterogeneous distributed computing environment.

Distributed applied software package; problem-solving scheme; multi-agent management; fault-tolerance.

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

Схема решения задачи в распределенном пакете прикладных программ представляется абстрактной программой, тесно коррелирующей с понятием рабочего процесса (workflow [3]). В общем случае она описывает процесс решения набора взаимосвязанных подзадач. Как правило, подзадачи характеризуются различными требованиями к ресурсам среды и представляются отдельными вычислительными заданиями, связи между которыми определяются схемой решения задачи.

В системах, поддерживающих управление workflow, используются разные подходы к обеспечению отказоустойчивости: миграция [4-6] и перезапуск процессов [4-9] на уровне отдельных задач на кластере с использованием аппарата контрольных точек, использование альтернативных ресурсов [7-10], а также продолжение выполнение workflow в надежде, что отказавший ресурс, на котором выполнялась одна из подзадач этого workflow, будет восстановлен и продолжит выполнение вычислений [4-7, 10].

В статье предложен новый мультиагентный алгоритм для распределения заданий по ресурсам гетерогенной распределенной вычислительной среды (ГРВС), интегрирующей Grid и облачные вычисления [11], в случае отказа программно-аппаратного обеспечения в процессе выполнения схемы решения задачи и наличия незавершенных (остаточных) вычислений. Остаточная схема решения задачи формируется с использованием методов конкретизирующего программирования [12, 13]. В отличие от алгоритмов, используемых в вышеупомянутых системах управления workflow, предложенный алгоритм реализует адаптивное мультисце-нарное перераспределение заданий по ресурсам с использованием специальной системы метамониторинга [14], обеспечивающей выявление и частичное устранение отказов. Это позволяет существенно повысить отказоустойчивость вычислительного процесса [15].

Вычислительная модель. Обозначим через P, M и S соответственно множества параметров, программных модулей и схем решения задач вычислительной модели, описывающей предметную область пакета прикладных программ. Модули

из М реализуют отношения вычислимости на множестве параметров Р так, что с каждым модулем т е М связаны множества его входных и выходных параметров

рт, рои! с р, ц е 1, ^ . Множество рвключает параметры, значения которых должны быть известны, чтобы вычислить значения параметров, входящих во множество Р°и!.

Схема решения задачи 5 е £ определяется тройкой < М5, Х0,У0 >, где М с М - множество модулей, которые нужно выполнить в процесс решения задачи, хо с Р - множество исходных параметров, значения которых заданы, У с Р - множество целевых параметров, значения которых нужно вычислить.

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

На рис. 1 приведены примеры поливариантной схемы решения задачи (а) и двух ее специализированных вариантов: с использованием для решения задачи модуля т5 (б) и модуля т6 (в), которые вычисляют значения одного и того же параметра, но применяют разные алгоритмы или обладают различными требованиями к ресурсам и показателями эффективности решения задачи.

б в

Рис. 1. Схемы решения задачи: поливариантная (а), схема с использованием модуля т5 (б), схема с использованием модуля т6 (в)

Выполнение схемы решения задачи 5 осуществляется путем ее интерпретации. Пусть в процессе интерпретации схемы 5 выполнено множество м с М

модулей, М\ = т. Тогда множество Ми = Мя \ Ме будет включать модули схемы

5 , которые уже выполняются или ожидают своего запуска, М | = п . Схему 5И , определяемую тройкой < Ми, Хи, у >, будем называть остаточной схемой решения задачи (рис. 2). Множества Хи и У , представляющие соответственно ее входные и выходные параметры, определяются по следующим формулам

X = X и и Ро

1=1 ''

(

, У = У п

X и | Рои!

1=1 ''

V V //

Л

где ц е 1, пт : т е Ме. Следует отметить, что множество Хи представляет промежуточные результаты вычислений.

а

На рис. 2 изображен фрагмент исходной схемы (рис. 1,а) с параметрами и модулями, относящимися к остаточной схеме решения задачи. Параметры р — р6

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

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

Рис. 2. Остаточная схема решения задачи

Мультиагентная система. Управление вычислениями реализуется МАС [16]. Пользователь пакета формулирует постановку задачи на вычислительной модели. Агент пользователя строит схему решения задачи, формирует виртуальное сообщество агентов, представляющих вычислительные ресурсы, и генерирует задание по выполнению схемы для агентов виртуального сообщества. В виртуальное сообщество включаются агенты, которые представляют ресурсы, подходящие по своим характеристикам для выполнения модулей схемы решения задачи. Соответствие характеристик ресурсов свойствам модулей осуществляется на основе заданной классификации заданий [17]. Задание описывает требования к среде, определяемые выполняемой прикладной программой (модулем). Систему классификации заданий создает администратор среды на основе своего экспертного опыта и с учетом вычислительной истории заданий, выполнявшихся на ресурсах среды.

При формировании виртуального сообщества агентов автоматически строится топология его коммуникационной сети. Топология строится в виде ориентированного дерева G =< V,U >, где V - множество вершин графа, представляющих агентов, U - множество ребер графа, представляющих коммуникационные связи между этими агентами. Дерево G описывается булевой матрицей смежности B размерности па х na, элемент которой = 1 означает, что существует дуга ^ vi, Vj ^, п - число агентов виртуального сообщества. Ориентированность дерева позволяет исключить возможность коллизий при передаче сообщений между агентами.

С целью координации работы виртуального сообщества его агенты выбирают своего лидера. Работа алгоритма выбора лидера характеризуется следующими особенностями: алгоритм является модификацией распределенного древесного волнового алгоритма [18]; любой из агентов, которому соответствует листовая вершина дерева G, может инициировать работу алгоритма; агенты взаимодействуют посредством посылки сообщений через коммуникационные каналы; коммуникационные протоколы гарантируют невозможность пропажи сообщений из-за ошибок коммуникаций или отката к контрольной точке; агенты используют дополнительные служебные сообщения (например, подтверждения о

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

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

Таблица 1

Оценка сложности алгоритмов по числу сообщений

Алгоритм Топология коммуникационной среды Оценка

Древесный Дерево 2 х по — 2

Ченя - Робертса Кольцо О (П 1о8 П )

Петерсона/Долева -Клейва - Роде Кольцо 1.5 х па х 1о§ па

Угасания Топология заранее неизвестна к х па

«Задиры» Топология заранее неизвестна О (п2)

Алгоритм. Построение схемы решения задачи, назначение ресурсов для выполнения ее модулей и управление вычислительным процессом осуществляется МАС с использованием рыночных механизмов регулирования спроса и предложения ресурсов [16]. Для выполнения схемы формируется виртуальное сообщество агентов, представляющих ресурсы, которые наилучшим образом подходят по своим характеристикам модулям схемы.

За обнаружение отказов и их диагностику отвечает система метамониторин-га. Информационно -вычислительная модель системы диагностики представлена в виде следующей структуры £ =< О,Р,Т,Z,Е,Я,РЯ,Ь,I >, где О - множество исследуемых объектов в узлах, P - множество измеряемых характеристик (параметров) объектов, T - множество типов значений характеристик, Z - множество логических параметров, F - множество контрольно-диагностических операций (действий), R - множество типов операций, PR - множество продукций, L - журнал диагностики, I - периоды запуска диагностики вычислительного узла, соответствующие режимам эксплуатации узла в разные временные интервалы.

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

К основным типам отказов, идентифицируемых в системе метамониторинга относятся: нештатное завершение вычислительного процесса; нехватка оперативной памяти для выполнения процесса; сбои операций чтения/записи данных; недоступность требуемого объема свободного места в системе хранения данных для записи результатов вычислений; отсутствие доступа к предметным базам данных; нарушение взаимодействия с другими узлами и агентами среды (в том числе сбои передачи данных); отказы операционной системы узла, приводящие к потере его работоспособности; отказы аппаратных средств (систем охлаждения, сетевых интерфейсов, модулей памяти, процессоров и других устройств).

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

В соответствии с выделенными объектами учитываются следующие отказы: отказ узла (узел находится в нерабочем состоянии либо не отвечает в течение заданного периода времени); отказ агента (агент не отвечает в течение заданного периода времени); отказ модуля (аварийное завершение выполнения модуля или некорректное вычисление его выходных параметров). Эти отказы обобщают различные причины и признаки неисправностей рассматриваемых объектов. Отказы приводят к необходимости выполнения модуля схемы решения задачи в резервном узле или другим агентом, передачи управления модулем иному агенту или выполнения другого модуля.

На рис. 3 приведены основные этапы работы алгоритма: идентификация отказа, обработка отказа, выбор сценария поддержки отказоустойчивости процесса выполнения схемы решения задачи и построение остаточной схемы.

Этап I: Идентификация отказа

(выбор резервном узле иным агентом другим агентом модуля

сценария) . •

Сценарии поддержки откзоустойчивости

процесса выполнения Этап IV: Построение остаточной

схемы решения задачи схемы решения задачи

Рис. 3. Основные этапы работы алгоритма

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

Пусть Z - это множество простых и составных логических параметров, принимающих значения из множества {о,1,б},z с Р. Составной параметр реализует

логическое выражение, сформированное из простых параметров и логических операторов. Он не определен, если не определен хотя бы один из простых параметров. F и PR - это множества действий по обработке отказов и продукций, задающих условия применения действий: рг : 2 ^ /к, где ^ /к - ядро продукции, интерпретируемое как выбор действия у е Е по обработке отказа в соответствии с условием 2 е Z. Каждая продукция имеет приоритет.

Связи между продукциями и логическими параметрами в левых частях их

ядер представлены булевой матрицей W размерности п х п , где п - число

р 2 р

продукций, п - число логических параметров. Элемент матрицы ^ = 1 означа-

2 1 ,3

ет, что продукция рг использует параметр 2.. Связи между продукциями и действиями представлены булевой матрицей C размерности п х п^, где п^ - число действий. Элемент матрицы с. = 1 означает, что продукция рг. описывает условия выполнения действия у. Зависимости между действиями представим булевой матрицей D размерности п^ х п^. Элемент матрицы ^ = 1 означает, что действие зависит от действия у.

Работа алгоритма строится следующим образом:

1. Формулировка непроцедурной постановки задачи: «вычислить Y по X», где X - это множество параметров, содержащих информацию о диагностируемых объектах, а Y - множество параметров, содержащих информацию о результатах диагностики.

2. Формирование множества рЯ* =|рг , рг ,..., рг | продукций, для

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

.1 ' 32 ' * " ' Зц

W7 . = 1, УЪ = Та.

3. Если РЯ* = 0, то переход на шаг 7 (задача неразрешима).

4. Иначе УЪ = 1Ц ■

a. выполнение действия У ■ с = 1, Рп с X;

к ,к к —

b. если действие у выполнено, то X = X ^ Р°и', Е = Е \ {/к},

РЯ = РЯ \ {р1л}.

5. Если У с X, то переход на шаг 7 (задача решена).

6. Иначе переход на шаг 2.

7. Завершение работы алгоритма.

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

В процессе работы систем моделировались все рассматриваемые типы отказов, интенсивность которых составляла около одного сбоя в час. Хотя, их число превышает реальную интенсивность на кластере, такая частота позволяет нагляднее показать достоинства и недостатки каждой из систем. Рис. 4 демонстрирует успешную обработку отказов узлов всеми тремя системами. К окончанию работы модели, не было ни одной незавершенной схемы решения задачи. На рис. 5 показаны преимущества МАС по обработке отказов компонентов системы управления. В таких случаях агент-лидер брал на себя управление узлом отказавшего агента. Он продолжал выполнения модулей в узле без ожидания перезапуска отказавшего агента. В то же время GridWay и CondorDAGMan ожидали восстановления своих отказавших компонентов и в некоторых случаях перезапускали модули. В случае отказа модуля, только МАС поддерживала отказоустойчивость, когда в схеме был предусмотрен альтернативный алгоритм решения задачи. Эксперименты проводились в ГРВС, организованной на базе ресурсов Иркутского суперкомпьютерного центра СО РАН [20], с использованием до 700 ядер.

Рис. 4. Отказы узлов

Рис. 5. Отказы систем управления

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Бондаренко А.А., Якобовский М.В. Обеспечение отказоустойчивости высокопроизводительных вычислений с помощью локальных контрольных точек // Вестник ЮжноУральского государственного университета. Серия: Вычислительная математика и информатика. - 2014. - Т. 3, No. 3. - С. 20-36.

2. Феоктистов А.Г., Сидоров И.А., Горский С.А. Автоматизация разработки и применения распределенных пакетов прикладных программ // Проблемы информатики. - 2017, No. 4. - C. 61-78.

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

3. Banti A., KacsukP., KozlovszkyM. Classification of scientific workflows based on reproducibility analysis // Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPRO-2016). - Riejka: IEEE, 2016. - P. 327-331.

4. Mhashilkar P., Miller Z., Kettimuthu R., Garzoglio G., Holzman B., Weiss C., Duan X., Lacinski L. End-To-End Solution for Integrated Workload and Data Management using GlideinWMS and Globus Online // Journal of Physics: Conference Series. - 2012. - Vol. 396, No. 3. - P. 2076-2085.

5. Talia D. Workflow Systems for Science Concepts and Tools // ISRN Software Engineering.

- 2013. - Vol. 2013. - P. 1-15.

6. Deelman E., Peterka T., Altintas I., Carothers C.D., van Dam K.K., Moreland K., Parashar M., Ramakrishnan L., TauferM., Vetter J. The future of scientific workflows // The International Journal of High Performance Computing Applications. - 2017. Vol. 32, No. 1.1.

- P. 159-175.

7. Ostermann S., Plankensteiner K., Prodan R., Fahringer T., Iosup A. Workflow monitoring and analysis tool for ASKALON // Proceedings of 3rd CoreGRID Workshop on Grid Middleware. - Spain: Springer, 2008. - P. 73-86.

8. Zhao Y., Raicu I., Foster I. Scientific Workflow Systems for 21st Century, New Bottle or New Wine? // IEEE Congress on Services - Part I. - Honolulu, HI: IEEE, 2008. - P. 467-471.

9. Rodriguez M.A., Buyya R. Deadline Based Resource Provisioning and Scheduling Algorithm for Scientific Workflows on Clouds // IEEE Transactions on Cloud Computing. - 2014. Vol. 2, No. 2. - P. 222-235.

10. Anwar N., Deng H. Elastic Scheduling of Scientific Workflows under Deadline Constraints in Cloud Computing Environments // Future Internet. - 2018. - Vol. 10, No. 1. - P. 1-23.

11. Feoktistov A., Sidorov I., Sergeev V., Kostromin R., Bogdanova V. Virtualization of Heterogeneous HPC-clusters Based on OpenStack Platform // Вестник Южно-Уральского государственного университета. Серия: Вычислительная математика и информатика.

- 2017. - Т. 6, № 2. - С. 37-48.

12. ЕршовА.П. Научные основы доказательного программирования // Вестник АН СССР.

- 1984. - № 10. - С. 9-19.

13. ErshovA.P. On Mixed Computation: Informal Account of the Strict and Polyvariant Computation Schemes // Control Flow and Data Flow: Concepts of Distributed Programming. - Berlin A.O.: Springer-Verlag, 1985. - P. 107-120.

14. Sidorov I.A. Methods and Tools to Increase Fault Tolerance of High-Performance Computing Systems // Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPR0-2016). - Riejka: IEEE, 2016.

- P. 242-246.

15. Feoktistov A.G., Sidorov I.A. Logical-Probabilistic Analysis of Distributed Computing Reliability // Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPR0-2016). - Riejka: IEEE, 2016. - P. 247-252.

16. ФеоктистовА.Г., Костромин Р.О., Дядькин Ю.А. Управление заданиями в гетерогенной распределенной вычислительной среде на основе знаний // Вестник компьютерных и информационных технологий. - 2018. - № 2. - С. 10-17.

17. Bychkov I., Feoktistov A., Kostromin R., Sidorov I., Edelev A., Gorsky S. Machine Learning in a Multi-Agent System for Distributed Computing Management // Data Science. Information Technology and Nanotechnology 2018. CEUR-WS Proceedings. - 2018. - Vol. 2212. - P. 89-97.

18. Tel G. Introduction to Distributed Algorithms: Solutions and Suggestions. - Cambridge University Press, 2000. - 596 p.

19. Balaji P., Buntinas D., Kimpe D. Fault Tolerance Techniques for Scalable Computing // Scalable Computing and Communications: Theory and Practice. - Hoboken: Wiley-IEEE Press, 2013. - P. 212-245.

20. ЦКП Иркутский суперкомпьютерный центр СО РАН. - Режим доступа: http://hpc.icc.ru/ (дата обращения: 03.11.2018).

REFERENCES

1. Bondarenko A.A., Yakobovski M.V. Obespechenie otkazoustojchivosti vysokoproizvoditel'nyh vychislenij s pomoshch'yu lokal'nyh kontrol'nyh tochek [Fault tolerance for HPC by using local checkpoints], Vestnik Yuzhno-Ural'skogo gosudarstvennogo universiteta. Seriya: Vychislitel'naya matematika i informatika [Bulletin of the South Ural State University. Series: Computational Mathematics and Software Engineering], 2014, Vol. 3, No. 3, pp. 20-36.

2. Feoktistov A.G., Sidorov I.A. Gorky S.A. Avtomatizatsiya razrabotki i primeneniya raspredelennykh paketov prikladnykh programm [Automation of development and application of distributed applied software packages], Problemy informatiki [Problems of Informatics], 2017, No. 4, pp. 61-78.

3. Banti A., KacsukP., KozlovszkyM. Classification of scientific workflows based on reproduci-bility analysis, Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPRO-2016), Riejka: IEEE, 201б, pp. 327-331.

4. Mhashilkar P., Miller Z., Kettimuthu R., Garzoglio G., Holzman B., Weiss C., Duan X., Lacinski L. End-To-End Solution for Integrated Workload and Data Management using GlideinWMS and Globus Online, Journal of Physics: Conference Series, 2012, Vol. З9б, No. 3, pp. 2076-2085.

5. Talia D. Workflow Systems for Science Concepts and Tools, ISRN Software Engineering, 2013, Vol. 2013, pp. 1-15.

6. Deelman E., Peterka T., Altintas I., Carothers C.D., van Dam K.K., Moreland K., Parashar M., Ramakrishnan L., Taufer M., Vetter J. The future of scientific workflows, The International Journal of High Performance Computing Applications, 2017, Vol. 32, No. 1.1, pp. 159-175.

7. Ostermann S., Plankensteiner K., Prodan R., Fahringer T., Iosup A. Workflow monitoring and analysis tool for ASKALON, Proceedings of 3rd CoreGRID Workshop on Grid Middleware, Spain: Springer, 2009, pp. 73-86.

8. Zhao Y., Raicu I., Foster I. Scientific Workflow Systems for 21st Century, New Bottle or New Wine?, IEEE Congress on Services - Part I, Honolulu, HI: IEEE, 2008, pp. 467-471.

9. Rodriguez M.A., Buyya R. Deadline Based Resource Provisioning and Scheduling Algorithm for Scientific Workflows on Clouds IEEE Transactions on Cloud Computing, 2014, Vol. 2, No. 2, pp. 222-235.

10. Anwar N., Deng H. Elastic Scheduling of Scientific Workflows under Deadline Constraints in Cloud Computing Environments Future Internet, 2018, Vol. 10, No. 1, pp. 1-23.

11. Feoktistov A., Sidorov I., Sergeev V., Kostromin R., Bogdanova V. Virtualization of Heterogeneous HPC-clusters Based on OpenStack Platform, Vestnik Yuzhno-Ural'skogo gosudarstvennogo universiteta. Seriya: Vychislitel'naya matematika i informatika [Bulletin of the South Ural State University. Series: Computational Mathematics and Software Engineering], 2017, Vol. 6, No. 2, pp. 37-48.

12. Ershov A.P. Nauchnye osnovy dokazatel'nogo programmirovaniya [Scientific basis of evidence-based programming], Vestnik AN SSSR [Herald of the Russian Academy of Sciences], 1984, No. 10, pp. 9-19.

13. Ershov A.P. On Mixed Computation: Informal Account of the Strict and Polyvariant Computation Schemes, Control Flow and Data Flow: Concepts of Distributed Programming, Berlin A.O.: Springer-Verlag, 1985, pp. 107-120.

14. Sidorov I.A. Methods and Tools to Increase Fault Tolerance of High-Performance Computing Systems, Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPRO-2016), Riejka: IEEE, 2016, pp. 242-246.

15. Feoktistov A.G., Sidorov I.A. Logical-Probabilistic Analysis of Distributed Computing Reliability, Proceedings of the 39th International Convention on information and communication technology, electronics and microelectronics (MIPRO-2016), Riejka: IEEE, 2016, pp. 247-252.

16. FeoktistovA.G, Kostromin R.O., Dyadkin Y.A. Upravlenie zadaniyami v geterogennoy raspredelennoy vychislitel'noy srede na osnove znaniy [Knowledge Based Management of Jobs in Heterogeneous Distributed Computing Environment], Vestnik komp'iuternykh i informatsionnykh tekhnologii [Herald of computer and information technologies], 2018, No. 2, pp. 10-17.

17. Bychkov I., Feoktistov A., Kostromin R., Sidorov I., Edelev A., Gorsky S. Machine Learning in a Multi-Agent System for Distributed Computing Management, Data Science. Information Technology and Nanotechnology 2018, CEUR-WS Proceedings, 2018, Vol. 2212. pp. 89-97.

18. Tel G. Introduction to Distributed Algorithms: Solutions and Suggestions, Cambridge University Press, 2000, 59б p.

19. Balaji P., Buntinas D., Kimpe D. Fault Tolerance Techniques for Scalable Computing, Scalable Computing and Communications: Theory and Practice, Hoboken: Wiley-IEEE Press, 2013, pp. 212-245.

20. Irkutsk Supercomputer Centre of SB RAS. Available at: http://hpc.icc.ru/ (accessed 3 November 2018).

Статью рекомендовал к опубликованию д.т.н. А.В. Петров.

Феоктистов Александр Геннадьевич - Институт динамики систем и теории управления им. В.М. Матросова СО РАН; e-mail: agf65@yandex.ru; 664033, г. Иркутск, ул. Лермонтова, 134; тел.: +79247116704; к.т.н.; доцент; в.н.с.

Костромин Роман Олегович - e-mail: romang70055@gmail.com; тел.: +79041150109; аспирант.

Сидоров Иван Александрович - e-mail: yvan.sidorov@gmail.com; тел.: +79027668364; к.т.н.; научный сотрудник.

Горский Сергей Алексеевич - e-mail: gorskysergey@mail.ru®; тел.: +79149230010; к.т.н.

Feoktistov Aleksandr Gennadyevich - Matrosov Institute for System Dynamics and Control Theory of SB RAS; e-mail: agf65@yandex.ru; 134, Lermontov street, Irkutsk, 664033, Russia; phone: +79247116704; cand. of eng. sc.; associate professor; leading researcher.

Kostromin Roman Olegovich - e-mail: romang70055@gmail.com; phone: +79041150109; postgraduate student.

Sidorov Ivan Aleksandrovich - e-mail: yvan.sidorov@gmail.com; phone: +79027668364; cand. of eng. sc.; research officer.

Gorsky Sergey Alexeevich - e-mail: gorskysergey@mail.ru; phone: +79149230010; cand. of eng. sc.

УДК 007.52 БОТ 10.23683/2311-3103-2018-8-69-83

Л.А. Мартынова

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

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

* Работа выполнена при поддержке РФФИ, проект № 17-08-00666.

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