Научная статья на тему 'Логико-вероятностные аспекты алгоритма управления распределенными вычислениями'

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

CC BY
42
6
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МУЛЬТИАГЕНТНОЕ УПРАВЛЕНИЕ / РАСПРЕДЕЛЕННЫЕ ВЫЧИСЛЕНИЯ / DISTRIBUTED COMPUTING / НАДЕЖНОСТЬ / RELIABILITY / MULTI-AGENT MANAGEMENT

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

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

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

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

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

Logical-probabilistic aspects of the algorithm for a management of distributed computing

The aim of the study is to develop the tools for planning the computations in a heterogeneous distributed computing environment and implement the environment resources allocating tools based on indicators of time or cost of the plan for solving problem, and reliability of the computational process. In the paper the multiagent algorithm for computations management in a heterogeneous distributed computing environment is described. The algorithm is based on the usage of economic mechanisms for regulating supply and demand of the computational environment resources. Architecture of the multiagent system, and functions of the agents are considered. Particular attention is paid to the calculation of reliability of the plan for solving problem on the basis of a logical-probabilistic method. This method is based on the implementation of the transition from the description of the reliability conditions of the problem solving plan using Boolean functions to the probability function to determine parameters of reliability. Improving the reliability of a plan for solving the problem is carried out by resource reservation. Resource reservation achieves the reliability index of the computational process, as close as possible given the criterion reliability with the restrictions on the number allocated to each agent backup resources. An example of construction problem solving plans, bidding for the right to perform computing operations and calculating their reliability are presented. In conclusion, the important features of the algorithm are discussed.

Текст научной работы на тему «Логико-вероятностные аспекты алгоритма управления распределенными вычислениями»

Вычислительные технологии

Том 21, № 3, 2016

Логико-вероятностные аспекты алгоритма управления распределенными вычислениями

А. Г. ФЕОКТИСТОВ

Институт динамики систем и теории управления им. В.М. Матросова СО РАН,

Иркутск, Россия

Контактный e-mail: agf@icc.ru

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

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

Введение

Сегодня особое внимание специалистов в области облачных инфраструктур и Grid-систем уделяется развитию фундаментальных основ организации распределенных вычислений при решении крупномасштабных научных задач в различных предметных областях, а также разработке новых методов и алгоритмов управления вычислениями в разнородной вычислительной среде (РВС), узлы которой имеют сложную гибридную структуру. Гибридный узел включает вычислительные модули (аппаратные компоненты), поддерживающие различные технологии параллельного программирования и различающиеся своими вычислительными характеристиками. Разнородность вычислительных сред, наличие в их составе гибридных узлов, широкий спектр решаемых задач и необходимость обеспечения масштабируемости вычислительных процессов обусловливают разнообразие алгоритмов управления распределенными вычислениями [1-5]. Причем достаточно хорошую эффективность показывают децентрализованные муль-тиагентные алгоритмы [6, 7], а также алгоритмы, базирующиеся на использовании элементов экономической теории [8, 9].

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

© ИВТ СО РАН, 2016

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

В статье рассматривается мультиагентный подход к управлению распределенными вычислениями с учетом показателей надежности ресурсов РВС. Предполагается, что ресурсы представлены программными сущностями (агентами), которые наделяются необходимыми административными правами и обязанностями и объединяются в виртуальные сообщества для выполнения заданий пользователей. Задание представляет собой спецификацию процесса решения задач, содержащую информацию о требуемых ресурсах, исполняемых программах, входных и выходных данных, а также другие необходимые сведения. Если в задании требуется выполнить ряд взаимосвязанных программ (модулей), то вычислительный процесс осуществляется в соответствии с планом решения задачи, определяющим порядок выполнения модулей. Расчет надежности плана решения задачи производится на основе логико-вероятностного метода [11], базирующегося на реализации перехода от описания условий надежности функционирования сложной системы с помощью функций алгебры логики к вероятностным функциям для определения показателей этой надежности.

Резервирование — один из простых и достаточно эффективных методов повышения надежности вычислительных систем [12]. В нашем случае резервирование заключается в использовании виртуальным сообществом агентов дополнительных узлов, которые в случае отказа основных узлов при выполнении плана решения задачи могут взять на себя их функции. Дополнительные узлы являются нагруженным резервом и в такой же степени, что и основные узлы, применяются в РВС. Использование нагруженного резерва обусловлено тем, что другие виды резервирования, такие как ненагруженный резерв, горячий резерв или многоверсионная реализация задания [13], приводят к существенным накладным расходам и больше подходят для систем реального времени. Виртуальным сообществом агентов используется резервирование конкретного узла тем агентом, который выделил этот узел. Поскольку при таком резервировании для достижения требуемого показателя надежности может потребоваться слишком большое число узлов, в статье рассматривается задача формирования дополнительного набора узлов, обеспечивающих достижение показателя надежности вычислительного процесса, максимально близкого заданному критерию надежности с учетом ограничений на число выделяемых каждым агентом узлов.

1. Постановка задачи

Концептуальная модель РВС описывается структурой

M =< F, Z, N, A, Rin, Rout, Raf, Ran >,

где F — множество программных модулей; Z — множество параметров модулей; N — множество узлов РВС; A — множество агентов; Rin С Z х F, Rout С Z х F, Raf С A х F

и Ran С A х N — отношения между элементами множеств F, Z, N и A. Отношения Rin и Rout типа "многие-ко-многим" задают соответственно множества входных и выходных параметров модулей и тем самым определяют информационно-логические связи между модулями. Отношение Raf типа "многие-ко-многим" устанавливает связь между агентами и модулями, которые могут быть выполнены агентами. Отношение Ran типа "один-ко-многим" определяет узлы агентов. Вычислительные кластеры РВС объединяют однородные узлы. Узлы разных кластеров обладают различной степенью надежности. В системе управления вычислениями РВС кластеры представлены агентами.

В РВС поступает запрос пользователя в непроцедурной форме: "вычислить значения параметров из подмножества Zout С Z по значениям параметров из подмножества Zin С Z". В общем случае в модели РВС может существовать множество S планов решения этой задачи. Каждый из этих планов определяет, какие модули из F и в каком порядке должны быть выполнены.

Требуется построить множество S, выбрать из этого множества единственный план s Е S, определить агентов из A, которые примут участие в его выполнении, и назначить узлы из N, в которых будут выполняться модули плана s. Процесс вычислений должен удовлетворять заданным временным или стоимостным критериям эффективности решения задачи, а также стремиться к определенному показателю надежности — вероятности p*(t) выполнения плана решения задачи (вычислительного задания) в момент времени t поступления задания. В данной постановке задача планирования вычислений и назначения ресурсов является NP (Non-deterministic Polynomial)-трудной [14].

С целью поддержки общности дальнейших рассуждений в множестве F вводятся два фиктивных модуля /1 и /2, моделирующих постановку задачи. Начальный модуль /1 имеет пустое множество входных параметров, а в качестве выхода использует подмножество параметров Zin С Z, определяя тем самым условие задания исходных данных постановки задачи. Целевой модуль /2 получает на вход подмножество параметров Zout С Z, определяя тем самым условие задания искомых величин постановки задачи, и имеет пустое множество выходных параметров.

Множество S планов решения задачи можно представить двудольным ориентированным графом G =< V, U >. Множество V включает подмножества VZ и Vp вершин, соответствующих параметрам из Z и модулям из F, включенным в планы из S. Множество U имеет два типа дуг между вершинами из Vz и Vp: входную дугу, соединяющую вершину из Vz с вершиной из Vp и определяющую связь модуля с его входным параметром, и выходную дугу, соединяющую вершину из Vp с вершиной из Vz и определяющую связь модуля с его выходным параметром.

Будем считать, что информационно-логические связи между модулями плана s описываются булевой матрицей W размерности nf х nf, где nf — число модулей, включенных в план s. Элемент матрицы wi,k = 1 означает, что модуль f зависит по входу от модуля /к.

2. Алгоритм управления вычислениями

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

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

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

Алгоритм построения плана решения задачи базируется на использовании модели тендера вычислительных работ [15] при распределении ресурсов РВС и проведении логико-вероятностного анализа надежности формируемого плана [11]. Совмещение процедур выбора координатора и проведения торгов существенно повышает эффективность взаимодействия агентов и скорость принятия решения.

Приведем основные этапы данного алгоритма.

1. Действия агента планирования вычислений.

1.1. Построение множества Б планов решения задачи.

1.2. Формирование виртуального сообщества агентов распределения ресурсов, которые могут участвовать в выполнении полученного множества планов.

1.3. Отправка множества Б сформированному виртуальному сообществу агентов.

2. Действия агентов распределения ресурсов.

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

2.2. Отправка сформированной информации другим агентам виртуального сообщества в соответствии с модифицированным древесным волновым алгоритмом [16] коммуникационного взаимодействия агентов.

2.3. Определение агента-координатора.

3. Действия агента-координатора.

3.1. Определение победителей торгов в соответствии с заданным критерием эффективности решения задачи — выбор единственного плана в Е Б и определение агентов, которые примут участие в его выполнении.

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

3.3. Рассылка результатов торгов агентам.

4. Действия агентов распределения ресурсов. Выполнение модулей плана в в соответствии с результатами распределения ресурсов.

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

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

3. Логико-вероятностная модель надежности плана решения задачи

Пусть в — план решения задачи, выбранный по результатам торгов, па — число агентов виртуального сообщества, предполагающих участие в выполнении плана в, а х — набор булевых переменных хг,,,к, отражающих события выполнения (хг,,,к =1) или невыполнения (хг,,,к = 0) модуля ¡г в к-м узле, выделенном агентом а,, г = 1,П/, 3 = 1,па. Индекс к переменной хг,,,к определяет соответственно основной (к = 1) и резервные (к > 2) узлы агента а,, выделяемые для выполнения модуля ¡г. Каждый агент а, может выделить с, резервных узлов для модулей плана в. Предполагается, что все узлы одного и того же агента являются однородными. Возможность запуска модулей в основных или резервных узлах обусловливает различные сценарии выполнения плана в.

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

Ш(х) = 1, (1)

. . I Л.г(х), если г = 2,

уг(х) = г(): () . >; (2)

I х, дДг(х), если г > 2, ^(х) = Д У к(х) (3)

Vk:wi,fc = 1

где г Е 1, П/, к = 1, П/, з Е 1, Па. Первоначально в данной схеме агент а, выделяет для выполнения модуля ¡г основной узел.

Булева функция у2(х), определяющая условия выполнения целевого модуля, представляет показатель надежности плана в. После выполнения всех подстановок по формулам (1)-(3) функция у2 (х) принимает вид

У2(х) = Д xi,ji,1,

г=з

где з Е 1, Па.

Для вычисления показателя надежности плана в производится переход [18] с помощью соответствующих правил (табл. 1) от функции у2(х) к вероятностной функции Р(¿) следующего вида:

Р(*) = П .

г=з

Функция Р(¿) вычисляет вероятность выполнения единственного имеющегося сценария выполнения плана в. Если Р(¿) < р*(¿), то требуется преобразование функции у2(х) путем улучшения показателей надежности элементов ее структуры. Функция у2(х),

Таблица 1. Правила перехода от булевой функции к вероятностной функции

Элемент булевой Элемент формулы

формулы расчета вероятности

Хг,3,к Рг,3,к О

Хг,3,к 1 - Рг,з,к

Л

V +

определенная формулой (4), представлена в дизъюнктивной нормальной форме без отрицаний и, следовательно, является монотонной. Это свойство обеспечивает отсутствие в ее структуре элементов, для которых улучшение показателей надежности ухудшает показатели надежности плана в (исследуемой системы) в целом [19].

Пусть / = {] : Сз = 0, ] Е 1,иа} — множество индексов агентов, у которых нет резервных узлов. Процесс преобразования функции у2(х), соответствующей плану в без резервирования узлов, в функцию у'2(х), соответствующую плану в с резервированием узлов, включает следующие этапы.

1. Если

£

з = 0,

3 = 1

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

нп (1 - П (1

Ш \ 1=1

к = аг^шт | 1 - [[ (1 - р

где е = Нг,з1, Нг,з1 — число узлов, выделенных агентом азг модулю /г.

2. Уменьшение 3 на единицу.

3. Осуществление резервирования дополнительного узла агента азк для модуля /к путем замены элемента хк,зк,е преобразуемой булевой формулы элементом хк,зк,е V хк,зк,е+1, где е = ик,зк, ик,зк — число узлов, выделенных агентом а^к модулю /к.

4. Увеличение ик,зк на единицу.

5. Приведение функции у'2(х), полученной в результате преобразования, к виду

п

У2 (х) = V К, (5)

1=1

п! п! Па

К1 = Л Хг,к,е, и = П £ ,

г=3 г=3 3=1

где е = 3, к^ Е 1,пгз1. Каждая элементарная конъюнкция в формуле (5) представляет собой один из сценариев возможного выполнения плана в. Элементарные конъюнкции функции у2 (х) пронумерованы от 1 до и в соответствии с их рангом по возрастанию. С целью обеспечения несовместности этих сценариев выполняется ортогонализация функции у'2 (х) с помощью алгоритма, предложенного в [18]. Функция у2 (х), ортогональная функции у'2 (х), принимает вид

у2 (х) = К1 V К1К2 V ■ ■ ■ V К1К2 ... Кп-1Кп

6. Упрощение функции у/(х) путем удаления тождественно равных нулю и поглощаемых конъюнкций. _

7. Переход с помощью соответствующих правил (табл. 1) от функции у/ (х) к вероятностной функции Р1 (£) следующего вида:

п

р1 (*) = Е р (*),

г=1

где р' (£) — вероятность выполнения ¿-го сценария выполнения плана 5.

8. Вычисление показателя надежности плана 5 с помощью функции Р1 (£).

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

9. Если Р1 (£) < р*(£), то переход на этап 1. Иначе — завершение преобразования. Рассмотренный выше процесс резервирования узлов обеспечивает достижение показателя надежности вычислительного процесса, максимально близкого заданному критерию надежности с учетом ограничений на число выделяемых каждым агентом узлов. Данные ограничения гарантируют сходимость процесса резервирования узлов.

4. Пример

Рассмотрим множество 5 планов решения задачи "вычислить г4 по " (см. рисунок), включающее планы 51 : /1,/3 - /4,/в ,/2, : /1,/з - /4 ,/7 ,/2, 5з : /1,/3 - /5, / ,/2 и 54 : /1, /3 — /5, /7, /2. В спецификациях планов конструкция " /, /" означает, что модули / и / должны выполняться последовательно, а конструкция "/ — /" определяет, что модули / и / могут выполняться параллельно. Задан показатель надежности плана р* (£) = 0.995.

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

Пусть в результате торгов получены предложения агентов, представленные в табл. 3, где ка — коэффициент, отражающий намерения агентов по выполнению модулей, ¿а — прогнозируемое агентами время выполнения модулей, са — стоимость выполнения модулей, предложенная агентами, и pf — вероятность выполнения модулей в узлах агентов. Значения ¿а и са приведены в условных единицах измерения. По результатам торгов при минимизации времени выполнения наилучшим является план 51 (время его выполнения равно 4.00), при минимизации стоимости наилучшим является план 52 (стоимость его выполнения равна 7.20). Распределение модулей агентами представлено в табл. 4.

Двудольный ориентированный граф, представляющий множество £ планов решения задачи

Таблица 2. Логические схемы надежности планов $1 - 34 решения задачи

$1 $2 $3 $4

У1 = 1 У1 = 1 У1 = 1 У1 = 1

У3 = У^зД У3 = У^зД У3 = У 1х3,^з,1 У3 = У1х3,^з,1

У4 = У1х4,^4,1 У4 = У1х4,^4,1 У5 = У 1^5,^5,1 У5 = У1х5,^5,1

Уб = У3У4Х6,^6,1 У7 = У3У4х7,^7,1 Уб = У3У5Х6,^6,1 У7 = У3У5Х7,^7,1

У2 = Уб = У2 = У7 = У2 = Уб = У2 = У7 =

— х3,^'з,1х4,^4,1хб,^б,1 — Х3,^'з,1х4,^4,1х7,^7,1 — х3,^'з,1х5,^5,1хб,^б,1 — Х3,^'з,1Х5,^5,1Х7,^7,1

Таблица 3. Предложения агентов

Агент Агент

Модуль 1 2 3 4 5 1 2 3 4 5

ка ta, ед.

/3 0.60 0.60 1.00 1.00 0.10 5.00 5.00 2.50 3.50 7.50

/4 0.60 0.60 0.20 0.20 1.00 2.00 2.00 1.00 1.40 2.70

/5 0.90 1.00 0.40 0.50 0.50 3.00 3.00 1.50 2.10 4.50

/б 0.90 1.00 0.40 0.50 0.50 3.00 3.00 1.50 2.10 4.50

/7 0.60 0.60 1.00 1.00 0.20 4.00 4.00 2.00 2.80 6.00

Са, ед. Pf

/3 8.33 8.33 2.50 3.50 75.00 0.999 0.999 0.9999 0.9999 0.99

/4 3.33 3.33 5.00 7.00 2.73 0.999 0.999 0.9999 0.9999 0.99

/5 3.33 3.00 3.75 4.20 9.00 0.999 0.999 0.9999 0.9999 0.99

/б 3.33 3.00 3.75 4.20 9.00 0.999 0.999 0.9999 0.9999 0.99

/7 6.67 6.67 2.00 2.80 30.00 0.999 0.999 0.9999 0.9999 0.99

Таблица 4. Распределение модулей агентами

План Модуль Агент

1 2 3 4 5

/3 - - + - -

$1 /4 - + - - -

/5 - - + - -

/3 - - + - -

$2 /4 - - - - +

/7 - - + - -

Вероятности выполнения планов 51 и з2 без резервирования узлов соответственно равны 0.9988 и 0.9898. Таким образом, в плане з2 необходимо произвести резервирование дополнительного узла.

Функция у2(х), соответствующая плану з2, после распределения модулей агентами имеет вид

У2(х) = ^3,3,1X4,5,1X7,3,1.

Резервирование выполняется пятым агентом, так как его ресурсы обеспечивают минимальную вероятность выполнения модуля /4 по сравнению с вероятностями выполнения модулей /3 и /7. После резервирования функции у'2 (х) и у2 (ж) принимают вид

у2 (х) = х3,3,1х4,5,1х7,3,1 V х3,3,1х4,5,2х7,3,1, У2 (х) = х3,3,1х4,5,1х7,3,1 V х3,3,1х4,5,2х7,3,1х4,5,1.

Далее осуществляются переход к вероятностной функции P'(¿) и расчет показателя надежности плана s2:

P'(t) = Р3,3,1 P4,5,1P7,3,1 + P3,3,lP4,5,2P7,3,l(1 - P4,5,l) = 0.9997. Так как P'(t) > p*(t), процесс резервирования узлов завершен.

Заключение

Вопросам разработки мультиагентных систем управления распределенными вычислениями посвящена обширная литература (например, [6-8, 15, 17, 20-22]), в которой в той или иной степени затрагиваются различные аспекты их проектирования, реализации и применения. Анализ результатов этих исследований показывает, что пока еще нет окончательно сформировавшихся и устоявшихся технологий организации проблемно-ориентированных РВС с мультиагентным управлением вычислениями.

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

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

Благодарности. Исследование выполнено при финансовой поддержке РФФИ, проекты № 15-29-07955-офи_м и 16-07-00931-а.

Автор выражает признательность Г.А. Опарину за обсуждение работы и ценные замечания.

Список литературы / References

[1] Коваленко В.Н., Коваленко Е.И., Любимский Э.З., Корягин Д.А. Основные положения метода опережающего планирования для Грид вычислительного типа // Вест. СамГУ. Естественнонаучная серия. 2006. № 4. С. 238-264.

Kovalenko, V.N., Kovalenko, E.I., Lyubimskij, E.Z., Koryagin, D.A. Basic principles of lookahead scheduling method for computational Grid // Vestnik of Samara State Univ. Natural Science Series. 2006. No. 4. P. 238-264. (In Russ.)

[2] Коновалов М.Г., Малашенко Ю.Е., Назарова И.А. Управление заданиями в гетерогенных вычислительных системах // Изв. РАН. Теория и системы управления. 2011. № 2. С. 43-61.

Konovalov, M.G., Malashenko, Yu.E., Nazarova, I.A. Job control in heterogeneous computing systems // J. of Computer and Systems Sci. Intern. 2011. Vol. 50, No. 2. P. 220-237.

[3] Топорков В.В. Управление заданиями в распределенных средах с неотчуждаемыми ресурсами // Изв. РАН. Теория и системы управления. 2011. № 3. С. 62-78. Toporkov, V.V. Job control in distributed environments with non-dedicated resources // J. of Computer and Systems Sci. Intern. 2011. Vol. 50, No. 3. P. 413-428.

[4] Шамакина А.В. Обзор технологий распределенных вычислений // Вест. ЮжноУральского гос. ун-та. Вычисл. математика и информатика. 2014. Т. 3, № 3. С. 51-85. Shamakina, A.V. Survey on distributed computing technologies // Bulletin of the South Ural State Univ. Computational mathematics and software engineering. 2014. Vol. 3, No. 3. P. 51-85. (In Russ.)

[5] Фраленко В.П., Агроник А.Ю. Средства, методы и алгоритмы эффективного распараллеливания вычислительной нагрузки в гетерогенных средах // Программные системы: теория и приложения. 2015. Т. 6, № 3(26). С. 73-92.

Fralenko, V., Agronik, A. Tools, methods and algorithms for the efficient parallelization of computational loading in heterogeneous environments // Program Systems: Theory and Applications. 2015. Vol. 6, No. 3(26). P. 73-92. (In Russ.)

[6] Каляев А.И. Метод и алгоритмы адаптивной организации распределенных вычислений в децентрализованной Grid // Вест. компьютерных и информ. технологий. 2012. № 4. С. 28-33.

Kalyaev, A.I. Method and algorithms of the adaptive organization for distributed calculations in decentralized Grid // Herald of Computer and Information Technologies. 2012. No. 4. P. 28-33. (In Russ.)

[7] Каляев А.И. Метод и алгоритмы адаптивной организации распределенных вычислений в децентрализованной Grid. (Окончание) // Вест. компьютерных и информ. технологий. 2012. № 5. С. 37-41.

Kalyaev, A.I. Method and algorithms of the adaptive organization for distributed calculations in decentralized Grid (The Termination) // Herald of Computer and Information Technologies. 2012. No. 5. P. 37-41. (In Russ.)

[8] Buyya, R., Bubendorfer, K. Market-oriented Grid and utility computing. Wiley & Sons, 2010. 643 p.

[9] Топорков В.В., Емельянов Д.М. Экономическая модель планирования и справедливого разделения ресурсов в распределенных вычислениях // Программирование. 2014. Т. 40, № 1. С. 54-65.

Toporkov, V.V., Yemelyanov, D.M. Economic model of scheduling and fair resource sharing in distributed computations // Programming and Computer Software. 2014. Vol. 40, No. 1. P. 35-42.

[10] Menasce, D.A., Casalicchio, E. QoS in Grid computing // IEEE Internet Computing. 2004. Vol. 8, No. 4. P. 85-87.

[11] Рябинин И.А., Черкесов Г.Н. Логико-вероятностные методы исследования надежности структурно-сложных систем. М.: Радио и связь, 1981. 264 с.

Ryabinin, I.A., Cherkasov, G.N. Logical-probabilistic research methods of structure-complex systems reliability. Moscow: Radio i svyaz', 1981. 264 p. (In Russ.)

[12] Ушаков И.А. Вероятностные модели надежности информационно-вычислительных систем. М.: Радио и связь, 1991. 132 с.

Ushakov, I.A. Probabilistic models for reliability of computer information systems. Moscow: Radio i svyaz', 1991. 132 p. (In Russ.)

[13] Зорин Д.А., Костенко В.А. Алгоритм синтеза архитектуры вычислительной системы реального времени с учетом требований к надежности // Изв. РАН. Теория и системы управления. 2012. № 3. С. 76-83.

Zorin, D.A., Kostenko, V.A. Algorithm for synthesis of real-time systems under reliability constraints // J. of Computer and Systems Sci. Intern. 2012. Vol. 51, No. 3. P. 410-417.

[14] Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. М.: Мир, 1982. 416 с.

Garey, M.R., Johnson, D.S. Computer and intractability. A guide to the theory of NP-completeness. W.H. Freeman and Company, 1979. 339 p.

[15] Богданова В.Г., Бычков И.В., Корсуков А.С., Опарин Г.А., Феоктистов А.Г.

Мультиагентный подход к управлению распределенными вычислениями в кластерной Grid-системе // Изв. РАН. Теория и системы управления. 2014. № 5. С. 95-105. Bogdanova, V.G., Bychkov, I.V., Korsukov, A.S., Oparin, G.A., Feoktistov, A.G. Multiagent approach to controlling distributed computing in a cluster Grid system // J. of Computer and Systems Sci. Intern. 2014. Vol. 53, No. 5. P. 713-722.

[16] Тель Ж. Введение в распределенные алгоритмы. М.: МЦНМО, 2009. 616 с.

Tel, G. Introduction to distributed algorithms. Second Edition. Cambridge Univ. Press, 1995. 546 p.

[17] Бычков И.В., Опарин Г.А., Феоктистов А.Г., Кантер А.Н. Мультиагентный алгоритм распределения вычислительных ресурсов на основе экономического механизма регулирования их спроса и предложения // Вест. компьютерных и информ. технологий. 2014. № 1. С. 39-45.

Bychkov, I.V., Oparin, G.A., Feoktistov, A.G., Kanter, A.N. Multiagent algorithm for resources allocation based on the economic mechanism of regulating their supply and demand // Herald of Computer and Information Technologies. 2014. No. 1. P. 39-45. (In Russ.)

[18] Поспелов А.А. Логические методы анализа и синтеза схем. М.; Л.: Энергия, 1964. 320 с. Pospelov, A.A. Logical methods for syntesis and analysis of circuits. Moscow: Energiya, 1964. 320 p. (In Russ.)

[19] Можаев А.С. Современное состояние и некоторые направления развития логико-вероятностных методов анализа систем // Теория и информ. технология моделирования безопасности сложных систем. Препринт № 101. СПб.: ИПМАШ РАН, 1994. С. 23-53. Mozhaev, A.S. Current state and some fields of development of logical-probabilistic methods for systems analysis // The Theory and Information Technology for Simulation of Complex Systems Security. Preprint № 101. Saint-Petersburg: IPMASh RAN, 1994. P. 23-53. (In Russ.)

[20] Durfee, E.H. Distributed problem solving and planning // Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence / Ed G. Weiss. Cambridge: MIT Press, 1999. P. 121-164.

[21] Altameem, T., Amoon, M. An agent-based approach for dynamic adjustment of scheduled jobs in computational Grids // Изв. РАН. Теория и системы управления. 2010. № 5. С. 87-94.

Altameem, T., Amoon, M. An agent-based approach for dynamic adjustment of scheduled jobs in computational Grids // J. of Computer and Systems Sci. Intern. 2010. Vol. 49, No. 5. P. 765-772.

[22] Городецкий В.И. Самоорганизация и многоагентные системы. I. Модели многоагентной самоорганизации // Изв. РАН. Теория и системы управления. 2012. № 2. С. 92-120. Gorodetskii, V.I. Self-organization and multiagent systems: I. Models of multiagent self-organization // J. of Computer and Systems Sci. Intern. 2012. Vol. 51, No. 2. P. 256-281.

[23] Николенко С.И. Теория экономических механизмов. М.: Бином. Лаборатория знаний, 2009. 207 с.

Nikolenko, S.I. Theory of economical mechanisms. Moscow: Binom, 2009. 207 p. (In Russ.)

Поступила в 'редакцию 11 января 2016 г.

Logical-probabilistic aspects of the algorithm for a management of distributed computing

Feoktistov, Alexander G.

Matrosov Institute for System Dynamics and Control Theory of SB RAS, Irkutsk, 664033, Russia

* Corresponding author: Feoktistov, Alexander G., e-mail: agf@icc.ru

The aim of the study is to develop the tools for planning the computations in a heterogeneous distributed computing environment and implement the environment resources allocating tools based on indicators of time or cost of the plan for solving problem, and reliability of the computational process. In the paper the multiagent algorithm for computations management in a heterogeneous distributed computing environment is described. The algorithm is based on the usage of economic mechanisms for regulating supply and demand of the computational environment resources. Architecture of the multiagent system, and functions of the agents are considered.

Particular attention is paid to the calculation of reliability of the plan for solving problem on the basis of a logical-probabilistic method. This method is based on the implementation of the transition from the description of the reliability conditions of the problem solving plan using Boolean functions to the probability function to determine parameters of reliability. Improving the reliability of a plan for solving the problem is carried out by resource reservation. Resource reservation achieves the reliability index of the computational process, as close as possible given the criterion reliability with the restrictions on the number allocated to each agent backup resources. An example of construction problem solving plans, bidding for the right to perform computing operations and calculating their reliability are presented.

In conclusion, the important features of the algorithm are discussed. Keywords: multiagent management, distributed computing, reliability.

Acknowledgements. This research was partly supported by RFBR (grants No. 1529-07955 and 16-07-00931).

Author is grateful to G.A. Oparin for discussions and valuable comments.

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

Received 11 January 2016

© ICT SB RAS, 2016

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