Информационные технологии Вестник Нижегородского университета им. Н.И. Лобачевского, 2014, № 2 (1), с. 218-222
УДК 519.65, 004.75
МОДЕЛИРОВАНИЕ ПРОЦЕССОВ САМООРГАНИЗАЦИИ РАСПРЕДЕЛЕННЫХ ПРОСТРАНСТВЕННО-ВРЕМЕННЫХ РЕСУРСОВ
© 2014 г. Д.В. Жевнерчук
Нижегородский государственный технический университет им. Р.Е. Алексеева
Поступила в редакцию 27.12.2013
Предложен подход к моделированию и исследованию свойств открытых гетерогенных вычислительных сетей с применением механизмов самоорганизации биологических систем.
Ключевые слова: мультиагентная система, моделирование, гетерогенная информационная система, самоорганизация.
Введение
Одной из важнейших проблем, стоящих на сегодняшний день в области сетевых технологий, является отсутствие методологии и эффективных моделей, которые могут быть применены для определения оптимальных структурных и функциональных свойств гетерогенных вычислительных систем, обладающих как внутренней, так и внешней интероперабельностью [1]. Как правило, на практике до сих пор многие вопросы решаются методом проб и ошибок, что приводит к проблемам:
- слабого анализа бизнес-процессов, на поддержку которых нацелена вычислительная система;
- взаимодействия с другими, ранее созданными системами;
- недостаточности или избыточности аппаратного ресурса;
- дальнейшего развития системы.
В лучшем случае применяются методы и средства системного анализа, а также аналитические и имитационные модели, разработка которых с нуля в каждом частном случае представляет собой отдельную научную задачу. Особый интерес представляют модели, построенные с применением некоторых механизмов самоорганизации биологических систем [2-7]. Под самоорганизацией понимаем процесс, ведущий к возникновению, поддержанию и изменению организации системы без явного внешнего управления во время ее работы [8]. В этом определении подчеркивается, что самоорганизация - это динамический процесс, в котором организация возникает и изменяется только за счет внутренних взаимодействий.
Особенностями рассмотренных в данной статье механизмов являются:
- ориентация на технически однородные вычислительные сети;
- способность большей части моделируемых систем к адаптации;
- невозможность изменения объемов ресурсов отдельных компонент рассматриваемых вычислительных сетей в процессе функционирования;
- жесткая привязка к свойствам программно-аппаратных систем;
- исключение неконтролируемых процессов, которые приводят к флуктуациям.
Предложена методика моделирования процесса самоорганизации пространственных временных ресурсов в системах с большим числом элементов. Обоснована ее применимость для решения задач оптимизации программно-аппаратного ресурса открытых вычислительных систем.
Методика основывается на следующих принципах:
1. Ресурс моделирует программно-аппаратный сервис, используемый для обработки запросов потребителей.
2. Потребитель обладает активным веществом, концентрация которого определяет степень его голода из-за отказов и задержек в обслуживании.
3. Ресурсы предоставляются объектами, называемыми источниками.
4. В случае высокой концентрации активного вещества у нескольких потребителей они могут образовать эмбрион будущего ресурса.
5. Потребитель использует множество агентов для передачи запросов.
6. Агенты обладают активным веществом, определяющим степень недовольства обслуживанием на ресурсе.
7. Источник обладает феромоном, концентрация которого определяет уровень загрузки и, следовательно, общую привлекательность для потребителей.
Исследование процессов самоорганизации
в распределенных системах управления вычислительным ресурсом
В системе выделим источники ресурсов г1,г2,...,гп и их потребителей (клиентов). Все ресурсы могут быть разделены на две группы: пространственные и временные. Источники ресурсов - объекты системы, которые предоставляют ресурс и могут контролировать его свойства. Все источники обладают способностью привлечения к своим ресурсам с помощью феромонов, концентрация Сг которых зависит от загруженности ресурсов в каждый момент времени.
Потребители существуют за счет ресурсов, для получения которых они формируют запрос и пересылают его со своим агентом. Запрос
—
включает требования к пространственным Rчd ,
—
временным R‘l ресурсам, а также время потребления ресурсов в монопольном режиме. Агенты ориентируются в пространстве источников с помощью выделяемых ими феромонов. Агент передает источнику часть энергии, которая определяет предельно допустимый объем ресурса.
При попадании на сервер агент уменьшает объем пространственного ресурса согласно требованиям Rd = Rd - Rчd . Потребление временного ресурса в общем случае определяется дополнительными параметрами агента и алгоритмами распределения ресурсов внутри источника. Все агенты, запрашивающие временной ресурс, разделяются источником на приоритетные группы. Приоритет определяет квант времени потребления ресурса типа ^ и зависит от таких характеристик, как оплата ресурсов клиентом, тип запроса (краткосрочный, долгосрочный) и от других:
Р^, TQ, ОР), где S - размер оплаты ресурсов клиентом, TQ -
——
тип запроса агента, ОР - вектор параметров, характерных при планировании обслуживания источником.
В простейшем случае приоритет определяется параметром S, причем для одних агентов приоритет масштабируется в случае перегрузки временного ресурса, а для других определяет фиксированную часть времени его использования. Таким образом, выделяем масштабируе-
мый и фиксированный приоритеты. Агенты с фиксированным приоритетом уменьшают объем временного ресурса согласно требованиям Яа = Яа - . Эта величина выражена в процен-
тах. Агенты с масштабируемым приоритетом потребляют временной ресурс следующим образом:
п / т
= Рк(1 -Е к V £ Р‘,
ї=і / /=1
где Рк - динамический приоритет агента, долю потребления временного ресурса которого требуется определить, т - количество агентов с динамическим приоритетом, п - количество агентов со статическим приоритетом, к, - статический приоритет /-го агента, Рj - динамический приоритет j-го агента.
В случае имеющегося резерва временного ресурса агент удовлетворяет свои потребности полностью. Каждый ресурс характеризуется двумя динамическими параметрами: скоростью поглощения V и объемом V. Источники выделяют феромоны, сигнализирующие о доступности временных и пространственных ресурсов.
Для описания увеличения или уменьшения концентрации феромона были выбраны сигмоидные функции вида:
Sinc (x) = a
Л
-1
.. . . + d
\К1 + Є У У
Sdec (x) = -a
,(bx-c ) -1
Л
1 + e
(bx—c)
+ d
(1a)
(1b)
где a, b, c, d - параметры, позволяющие гибко настроить вид зависимости.
Индекс inc указывает на возрастание функции, а dec — на убывание. Функции (1a) и (1b) также используются для описания изменения концентрации активного вещества, регулирующего ряд важнейших процессов на источниках и потребителях, о чем подробно будет сказано ниже.
Концентрация феромона привлекательности временного ресурса определяется по формуле
Cr (t +1, p) = Cr (t ) + S,
—
Выбрана убывающая функция изменения концентрации феромона, которая определяется уровнем загрузки временного ресурса. Величина за-
т
грузки равна сумме приоритетов ^ р1 агентов,
i=1
которые обслуживаются источником. В оптимальной точке загрузки временного ресурса
Л
S
^ pt = 0 . Чем больше загруженность, тем
меньше феромона формируется, и наоборот,
чем больше время простоя ресурса (меньше загрузка), тем больше феромона выделяет источник в единицу времени. Феромон определяет привлекательность ресурса, чем выше уровень феромона, тем больше вероятность обнаружения его клиентами. Разные источники могут обладать разной скоростью испарения феромона vC.
Кроме того, для каждого источника существует параметр, определяющий уровень энергии Е, который имеет некоторое начальное значение в момент зарождения и в процессе жизни источника постоянно уменьшается со скоростью уЕ. Процесс уменьшения уровня энергии описывается следующей итерацией:
Е ^ +1) = е ^) - vEj (ул),
——
где vE (¥к) - скорость изменения энергии ^го
источника. Чем больше объем ресурсов, тем выше расход энергии источника.
Агенты, обслуживаемые источниками ресурсов, обладают активным веществом, определяющим степень удовлетворения обслуживанием:
+1, Д) = м>() + (Дт), (2)
где Дt - вектор значений интервалов задержки между обслуживанием, Дт - средний интервал ожидания между обслуживанием.
Очевидно, чем больше Дт, тем сильнее будет недовольство агента.
Агенты, поступающие на сервер, передают ему некоторую заранее оговоренную часть энергии, для того чтобы получить необходимый ресурс, причем момент передачи энергии обязательно следует только после получения ресурса в полном объеме. При увеличении интервалов времени ожидания обслуживания происходит снижение частоты передачи энергии источнику. Передачу энергии можно описать следующим образом:
Е^/ = Е^/ + ДЕЯ,
т
ДЕЯ = 0, если ^ Я ^ Я,,
k=1 т
МК = ^ если ^ Як > Яа,
k=1
где Як - часть ресурса, получаемая агентом за одну итерацию цикла обслуживания, Я^ - суммарный ресурс, который необходимо передать агенту, Еа - объем энергии, зависящий от времени получения агентом требуемого ресурса в необходимом объеме.
Потребители ресурсов, в свою очередь, обладают активным веществом, определяющим
степень голода. Определим функцию изменения концентрации активного вещества в моменты поступления заявки на ресурсы и при возвращении агента от источника:
gh (t +1) = gh (t) + рДТ, (3а)
gh (t + 1) = gh (t) - а(ДТ)РДТ + Sinc (nX (3b)
а(ДТ) = 1, если ДТ < ДТсги, а(ДТ) = Sinc (ДТ), если ДТ > ДТсги, где а(ДТ), Р - параметры, определяющие величину изменения концентрация активного вещества, ДТ - интервал времени возвращения агента, Tcrit - требуемый средний интервал времени возвращения агентов, n - количество ожидаемых агентов.
Потребители ресурсов начинают испытывать голод с момента формирования заявки на определенный ресурс. Каждая заявка должна быть реализована в течение интервала времени ДТ для i-го агента. В начальном состоянии клиент обладает некоторым уровнем концентрации активного вещества голода gh0. В момент отправки агента концентрация вещества увеличивается на некоторую величину РДТ. Если агент возвращается в течение требуемого периода времени, то уровень гормона голода понижается на величину f (ДТ). В противном случае эта величина уменьшается за счет а, причем коэффициент определен на интервале [0; 1] и стремится к 0 с ростом ДТ.
Чтобы держать уровень феромона и энергии в устойчивом состоянии, источник может корректировать его объем. Увеличение ресурса начинает происходить при увеличении количества агентов с высокой концентрацией активного вещества, определяющего степень удовлетворения обслуживанием w, которая рассчитывается по формуле (2). Величина прироста ресурса также зависит от количества энергии источника E и текущего объема ресурса, который определяет скорость расхода энергии:
V (t +1) = V (t) + a(E)Sinc (K), где K - количество агентов с концентрацией
W Wcontr ,
причем K > Kcrit,
a(E) = 1, если E > Ecrit,
a(E) = Sdec (E) если E < Ecri,.
Если количество энергии опускается до некоторого предельного значения Eminfix, то источник выгружает все агенты, которые получают оставшиеся ресурсы у других источников. Далее источник в течение интервала времени timeout самостоятельно восстанавливает энергию. Если количество энергии варьируется в диапазоне от Ecrit до Eminfix, то появляется дополнительный коэффициент, который регулирует объем добав-
ляемого ресурса в зависимости от степени близости к минимально возможной энергии.
В случае уменьшения количества агентов с высокой концентрацией w источник уменьшает объем предоставляемого ресурса:
V (t +1) = V (t) -Д Vmm, где ДУШп - заранее определенный минимальный объем ресурса, который отдает источник в случае, когда количество недовольных агентов становится ниже некоторого граничного значения, подобранного эмпирически или с помощью дополнительных методов.
Объем ресурса варьируется на протяжении всего жизненного цикла источника. Активные вещества голода, удовлетворения агента, а также феромон источника определяют эволюционное развитие всей системы.
Выделим 8 основных процессов, происходящих в рассматриваемой системе:
1. Источник инициирует выгрузку агента.
2. Агент самостоятельно покидает источник, получив только часть ресурса.
3. Агент самостоятельно определяет наиболее привлекательный источник ресурсов.
4. Потребитель самостоятельно определяет других голодных потребителей.
5. Образуется новый источник ресурсов.
6. Уничтожается источник ресурсов.
7. Увеличивается объем ресурса на источнике.
8. Уменьшается объем ресурса на источнике.
Результаты экспериментальной проверки
Для исследования модели была разработана мультиагентная система в среде Anylogic. Испытания проводились для разного числа клиентов N е [10, 100]. Использованы задачи с фиксированным и масштабируемым статусом. Процесс формирования заявок на ресурс описан пуассоновским потоком. Интервал обслуживания агентов в однозадачном режиме составлял до 10 единиц времени источника. Также с клиента поступали заявки на долгосрочное обслуживание. Каждая следующая заявка передавалась в момент завершения обслуживания предыдущей. Интервал времени обслуживания составлял ДТегу е [103,105] единиц времени. Параметры a, b, c, d для функций Sinc, Sdec, Pa,b(x) подбирались экспериментально.
В ходе серии экспериментов удалось добиться сходимости к конечному значению количества
источников ресурсов. При этом вариация ресурса в устойчивом состоянии составила в среднем от 7% до 19% от разброса между максимальным и минимальным количеством ресурса, наблюдаемым за весь период моделирования.
Заключение
Построена методика моделирования процесса самоорганизации распределенных пространственно-временных ресурсов. Проведена серия экспериментов, выявлены комбинации параметров, которые показали сходимость к некоторому количеству источников, а также наличие аттракторов, определяющих диапазон объема используемых ресурсов.
Список литературы
1. Батоврин В.К., Гуляев Ю.В., Олейников А.Я. Обеспечение интероперабельности - основная тенденция в развитии открытых систем // Информационные технологии и вычислительные системы. 2009. № 5.
2. Mamei M., Menezes R., Tolksdorf R. et al. Case Studies for Self-Organization in Computer Science // J. System Architecture. 2006. V. 52. № 8-9. P. 443-460.
3. Omicini A., Gardelli L. Self-Organisation and MAS: An Introduction. http://unibo.lgardelli.com/ teach-ing/2007-selforg-mas.pdf (дата обращения 08.12.2012).
4. Городецкий В.И., Бухвалов О.Л. Управление нагрузкой грид на основе многоагентной модели самоорганизации. Ч. 1. Многоагентная модель и механизм самоорганизации // Мехатроника, Автоматизация, Управление. 2011. № 3. С. 40-46.
5. Bernon C., Gleizes M.-P., Peyruqueou S. et al. ADELFE: a methodology for adaptive multi-agent systems engineering // Series Lecture Notes in Computer Science. Eds. P. Petta, R. Tolksdorf, F. Zambonelli. Springer, 2002. V. 2577. P. 156-169.
6. Di Caro G., Ducatelle F., and Gambardella L. An-tHocNet: An adaptive nature-inspired algorithm for routing in mobile ad hoc networks // Europ. Transactions on Telecommunications. Special Issue on Self-Organization in Mobile Networking. 2005. V. 16. № 5. P. 443-455.
7. Jelasity M. and Babaoglu O. T-Man: Gossip-Based Overlay Topology Management // Series Lecture Notes in Artificial Intelligence. Eds. S. Brueckner, G. Di Marzo Serugendo, D. Hales, et al. Springer, 2006. V. 3910. P. 1-15.
8. Marzo Serugendo G., Gleizes M.-P., Karageorgos A. Self-organisation in multi-agent systems // Rapport de recherche IRIT/2005-18-R, IRIT. Universite Paul Sabatier, Toulouse. http://www.irit.fr/TFGSO/DOCS/ TFG2/ TFGIISO_LongReport.pdf (дата обращения
08.12.2012).
MODELING OF SELF-ORGANIZATION PROCESSES IN DISTRIBUTED SPATIO-TEMPORAL RESOURCES OF OPEN COMPUTER SYSTEMS
D. V. Zhevnerchuk
The article describes an approach to modeling and study of the properties of open heterogeneous computing networks using self-organizing mechanisms of biological systems.
Keywords: multi-agent system, modeling, heterogeneous information system, self-organization.
References
1. Batovrin V.K., Gulyaev Yu.V., Olejnikov A.Ya. Obespechenie interoperabel'nosti - osnovnaya tenden-ciya v razvitii otkrytyh sistem // Informacionnye tekhno-logii i vychislitel'nye sistemy. 2009. № 5.
2. Mamei M., Menezes R., Tolksdorf R. et al. Case Studies for Self-Organization in Computer Science // J. System Architecture. 2006. V. 52. № 8-9. P. 443-460.
3. Omicini A., Gardelli L. Self-Organisation and MAS: An Introduction. http://unibo.lgardelli.com/ teach-ing/2007-selforg-mas.pdf (data obrashcheniya
08.12.2012).
4. Gorodeckij V.I., Buhvalov O.L. Upravlenie na-gruzkoj grid na osnove mnogoagentnoj modeli samoor-ganizacii. Ch. 1. Mnogoagentnaya model' i mekhanizm samoorganizacii // Mekhatronika, Avtomatizaciya, Upravlenie. 2011. № 3. S. 40-46.
5. Bernon C., Gleizes M.-P., Peyruqueou S. et al. ADELFE: a methodology for adaptive multi-agent sys-
tems engineering // Series Lecture Notes in Computer Science. Eds. P. Petta, R. Tolksdorf, F. Zambonelli. Springer, 2002. V. 2577. P. 156-169.
6. Di Caro G., Ducatelle F., and Gambardella L. Ant-HocNet: An adaptive nature-inspired algorithm for routing in mobile ad hoc networks // Europ. Transactions on Telecommunications. Special Issue on SelfOrganization in Mobile Networking. 2005. V. 16. № 5. P. 443-455.
7. Jelasity M. and Babaoglu O. T-Man: Gossip-Based Overlay Topology Management // Series Lecture Notes in Artificial Intelligence. Eds. S. Brueckner, G. Di Marzo Serugendo, D. Hales, et al. Springer, 2006. V. 3910. P. 1-15.
8. Marzo Serugendo G., Gleizes M.-P., Karageorgos A. Self-organisation in multi-agent systems // Rapport de recherche IRIT/2005-18-R, IRIT. Universite Paul Sabatier, Toulouse. http://www.irit.fr/TFGSO/DOCS/ TFG2/ TFGIISO_LongReport.pdf (data obrashcheniya
08.12.2012).