УДК 004.75
МУЛЬТИАГЕНТНАЯ СИСТЕМА ДЛЯ ОПТИМИЗАЦИИ ФУНКЦИОНИРОВАНИЯ СЛОЖНЫХ ОБСЛУЖИВАЮЩИХ КОМПЛЕКСОВ
С.А. Олейникова
Объектом исследования в данной работе являются сложные многостадийные системы с несколькими центрами обслуживания и взаимной зависимостью между работами, длительность выполнения которых является случайной величиной. Целью является оптимизация функционирования таких систем путем формирования план-графика их функционирования. В качестве критерия оптимальности выбран критерий, позволяющий рационализировать использование ресурсов во времени. В работе была сформулирована оптимизационная задача, учитывающая наличие нескольких обслуживающих центров, взаимную зависимость между работами, их случайное время выполнения, а также временные и ресурсные ограничения. Анализ возможных подходов к ее решению показал целесообразность использования мультиагентных технологий. С учетом особенностей задачи была предложена структура мультиагентной системы, включающая агента предварительного планирования, осуществляющего подготовительную стадию формирования расписания, интеллектуальных агентов, выполняющих составление план-графика для закрепленного за ними центра обслуживания, и агента координации. В работе приведены основные функции для агентов всех категорий. Особое внимание уделено специфике их взаимодействия.
Таким образом, получен подход к оптимизации функционирования многостадийных обслуживающих комплексов путем составления расписания их работы, основанный на использовании взаимодействующих интеллектуальных агентов и позволяющий получить субоптимальное решение за приемлемое время
Ключевые слова: мультиагентная система, оптимизационная задача, составление расписания
Введение
Эффективность функционирования сложных обслуживающих комплексов во многом зависит от качества составленного расписания. Для больших систем, когда для обслуживания заявки необходимо завершить около сотни взаимно-зависимых работ, выполняемых в разных центрах, в случае ресурсных и временных ограничений, а также случайной длительности выполнения, данная задача требует эффективных алгоритмов планирования, которые бы выполнялись за приемлемое время.
В настоящее время множество проблем в области управления проектами, к которой относится рассматриваемая задача, уже исследовано и широко изучено. В частности, получены решения для некоторых многокритериальных задач составления расписаний [1, 2]. Достаточно распространенным является критерий скорейшего завершения работ или критерий максимизации прибыли [3, 4]. Однако для целого класса практических задач время целесообразно учесть в виде ограничений, а в качестве целевой функции использовать критерий, позволяющий рационализировать объем используемых ресурсов во времени. При наличии нескольких центров обслуживания такая задача будет являться многокритериальной. Учитывая также случайную длительность выполнения взаимно-зависимых работ и временные ограничения, данную задачу можно отнести к классу МР-полных, что требует особых подходов к ее решению.
Для ее решения предлагается подход, основанный на использовании мультиагентных
Олейникова Светлана Александровна - ВГТУ, д-р техн. наук, доцент, е-тай: [email protected]
технологий [5]. Целесообразность его применения обусловлена наличием нескольких центров с индивидуальным оборудованием, сотрудниками и расписанием работы. В связи с этим, за формирование графика для каждого центра будет отвечать свой интеллектуальный агент, взаимодействие которых позволит учесть взаимную зависимость работ и составить расписание работы для всего комплекса.
1. Постановка задачи и ее особенности Рассматривается задача составления расписания для сложных обслуживающих комплексов. Он задается своими центрами обслуживания
5 = &,..., SL). (1)
Каждый центр j (]=1,...,и) обладает множеством ресурсов нескольких типов:
^ ^...Д^. (2)
Здесь Ц - количество типов ресурсов в центре j, Я^,..., RJkJ - объем ресурсов каждого типа.
Каждая заявка Рт, поступающая на вход, представляет собой множество взаимно-зависимых работ Wm со случайной длительностью обслуживания. Кроме работ, заявка еще задается директивным временем Тт, к которому необходимо завершить ее обслуживание:
р = р (т W ) (3)
т * т V т' ' 'т/' У-*'
Любая работа wieWm задается следующим набором характеристик:
= (5, МЩ, R1 ,РГ ) (4)
Здесь Si - центр, в котором выполняется работа ц dliti - ориентировочное время обслуживания; Ri=(Ri1,..., Rlki) - объемы ресурсов, необходимые для выполнения; Рг1 - множество работ, непосредственно предшествующих выполнению работы 1, с помощью которого задается взаимная зависимость работ.
Оцениваемые параметры математической модели.
Важным параметром, подлежащим оценке, является длительность выполнения работ w1.dlit. Ее оценкой будет являться математическое ожидание случайной величины, распределенной по закону бета с неизвестными параметрами р и q и известными параметрами а и Ь.
w1 мг=м^г. (5)
Варьируемые параметры математической модели.
К параметрам, которыми можно варьировать для достижения оптимума целевой функции отнесем время начала работ w1.tнач. В отличие от раннего времени начала работ, эта характеристика может меняться в пределах ограничений на взаимную зависимость работ.
Целевая функция.
Опишем соответствующую оптимизационную задачу. В качестве критерия оптимизации рассмотрим обобщенный ресурсный критерий [6]. Введем в рассмотрение также функцию ^ f j уЮ), определяющую наиболее целесообразный объем ресурсов, используемых в момент времени t в центре j. Занятость системы обслуживанием заявок, поступивших ранее, в центре j описывается вектором:
^сп ] () = ^исп ] 1 (г),...,Rисп j к1 ()) . (6)
Тогда целевая функция для каждого центра будет минимизировать отклонение фактического объема ресурсов, полученного при решении задачи планирования, от заданного в данный момент времени объема:
( \2
II
г г=1
II
I
^:w;eW, ° з 1
WJ Гг + Яисп 1 к1
(г)- /и (г)
^ тт
(7)
I w} Г + Rисп L к1
/:w;eW, ° з 1
(г)- /ь г (г)
^ тт
Ограничения.
Время начала работ необходимо определять в условиях ресурсных ограничений. Они подразумевают, что для каждого центра j формировать множество работ Wt, которым будет назначено время начала t, можно лишь таким образом, чтобы суммарный объем ресурсов этих работ (по каждому типу отдельно) совместно с еще незавершенными работами, время выполнения которым назначили раньше, не превосходил общего объема ресурсов данного типа Rj1:
I wи Гг + Rиcп j 1 (г )< Rj 1 (г),1 = l,...,kj. (8)
Кроме того, следует учесть ограничение на взаимную зависимость работ:
^нач ^ ^нач + wk.dlгt, ^к 6 Ргг . (9)
Другой важной особенностью задачи является ограничение на длительность проекта. Данное
ограничение можно описать с помощью следующего неравенства:
Тг _ факт < Т . (10)
Здесь Т1_факт - фактическое время, затраченное на обслуживание заявки 1. Его можно определить по формуле:
Тг _факт = тах(1^ ./^ + w] ЛШ). (11)
Необходимо составить график обслуживания заявок, оптимальный с точки зрения критерия (7).
2. Структура мультиагентной системы
Рассмотрим специфику решения задачи с учетом ее особенностей. С учетом временных ограничений время, затрачиваемое на процесс планирования задач, является одним из определяющих факторов. В связи с этим, необходим поиск численных методов, позволяющих сократить это время без существенного ухудшения качества решения.
Одной из особенностей задачи является наличие нескольких центров обслуживания, каждый из которых специализируется в выполнении определенных работ. Отметим, что закрепление работ за каждым центром дает ему относительную автономность в процессе составления расписания. В частности, каждый центр может самостоятельно осуществлять деятельность по процессу формирования расписания для своих работ. Однако, взаимная зависимость, существующая между работами (в том числе, и из разных центров) и наличие ограничений обуславливает необходимость координации действий по планированию. В частности, если работу в одном центре перенести на следующий период, то, очевидно, следующие непосредственно на ней работы (в том числе, и в других центрах) также надо будет перенести на более поздний срок. Необходимо также отметить, что каждый центр будет осуществлять процесс планирования в соответствии со своей критериальной функцией. Исходя из этого, каждый центр можно наделить целенаправленной активностью, на основании которой он будет принимать решения о времени выполнения своих задач с учетом данных, полученных от других центров. Таким образом, каждый центр обслуживания обладает следующими свойствами:
- возможность самостоятельного составления расписания для задач, закрепленных за данным центром, т.е. активность или способность к организации и реализации действий по планированию;
- относительная автономность в процессе планирования от других центров;
- частичная зависимость в процессе принятия решений от других центров и, как следствие, необходимость взаимодействия с ними;
- наличие определенной цели и формирование расписания (а также реакция на сообщения от других центров), исходя из этой цели.
2
С учетом данных свойств, наиболее целесообразным подходом для формирования расписания будет являться мультиагентный подход. Мультиагентные системы являются наиболее эффективным инструментов решения сложных задач в тех случаях, когда их можно распределить в виде заданий, выполнением каждого из которых будет заниматься отдельный агент [5]. В общем случае считается, что агент обладает лишь частью знаний о задаче, достаточных для выполнения своего задания. В этом случае, организовав деятельность каждого агента и взаимодействие между ними, можно получить решение всей задачи, которое бы удовлетворяло целям (в той или иной степени) всех агентов. Фактически, технология мультиагентных систем является развитием результатов как в области искусственного интеллекта, так и в области параллельных вычислений и распределенной обработки данных.
С учетом возможности распараллеливания алгоритма решения задачи, поручим планирование работ некоторого центра I, 1=1,...^ интеллектуальному агенту А1. Он должен выполнять следующие функции:
- формировать план-график для своего обслуживающего центра с учетом имеющихся в нем ресурсов, существующего расписания и критерия оптимальности;
- оценивать время завершения проекта после каждого этапа планирования;
- учитывать данные от других центров о возможном изменении сроков завершения проекта, а также о необходимости корректировать расписание для своих работ;
- синхронизировать работу с другими интеллектуальными агентами.
Каждый агент имеет доступ ко всей информации базы данных, которая касается непосредственно его центра; информация о работах других центров для него недоступна.
Для согласования действий агентов после каждого временного интервала, синхронизации действий их работы в систему целесообразно добавить еще одного агента мета-уровня, который будет отвечать за координацию между агентами.
С учетом определения всех агентов, архитектура их взаимодействия будет определена следующим образом (рис. 1).
Здесь АПП - агент предварительного планирования (который отвечает за предварительное расписание с учетом взаимной зависимости работ, но без учета ресурсов); ИА1 -интеллектуальный агент планирования работ для центра I, 1=1,.АК - агент координации агентов ИАл
После предварительного планирования дальнейший процесс составления расписания выполняется агентами ИАЬ..., ИАЬ которые работают автономно в пределах очередного временного интервала.
Рис. 1. Структура мультиагентной системы
После завершения формирования графика на данном этапе идет процесс согласования с помощью АК. В результате такого согласования агенты узнают о возможном сдвиге во времени работ для своего центра, а также о необходимости возврата на более ранние этапы. Если планирование для всех центров в данное время прошло успешно, то осуществляется переход к следующему этапу, иначе - возврат на некоторый предыдущий интервал.
Проанализируем специфику взаимодействия агентов более подробно. В первую очередь, агент должен оповестить остальных агентов об окончании планирования на данном этапе и выборе для себя следующего момента планирования. Переход к следующему временному интервалу начинается только в том случае, когда агент получит соответствующее сообщение. Данный интервал выбирается как наименьший из всех моментов, определенных агентами. Если у некоторого агента нет в данное время работ для планирования, то он пропускает этот момент и ожидает. Другим важным сообщением является необходимость о сдвиге работ на следующий временной интервал. В этом случае необходимо найти всех агентов, отвечающих за участки с работами, непосредственно следующими за перенесенной работой, и оповестить их. Очевидно, что время выполнения таких работ необходимо тоже начинать позже. Однако, деятельность агентов на данном временном интервале от этого зависеть не будет. В результате планирования своих работ некоторым агентом возможно увеличение времени проекта. Здесь могут быть две ситуации:
- увеличено время проекта, однако оно не превысило критического значения (в этом случае необходимо оповестить всех агентов о новом времени, чтобы они могли пересчитать временные резервы для своих работ);
- время проекта увеличено настолько, что оно превышает критическое значение (в этом случае
посылается информация о возврате на предыдущие этапы).
Завершив планирование всех своих работ агент посылает соответствующее сообщение и переходит в состояние пассивного ожидания, поскольку может возникнуть ситуация с возвратом на предыдущие этапы и необходимостью корректировки графика из-за невыполнения ограничений у других агентов. Он должен получить одно из двух сообщений: или планирование у всех агентов завершено или возникла необходимость возврата. Таким образом, можно выделить следующие сообщения, которые будет отправлять агент:
- завершение планирования на данном интервале и момент следующего временного интервала;
- увеличение времени проекта (без нарушения временных ограничений);
- сообщение о необходимости сдвига работ на более поздний момент времени;
- сообщение о необходимости возврата на более ранние этапы и момент времени для возврата;
- завершение планирования.
Исходя из анализа возможных сообщений, диаграмма деятельности данного агента представлена на рис. 2.
(5
1
1 Кг гучить сообщение от агента и проанализировать его
5
\/
I Завершение на дан ним интерл
V
Все окончили планирование'
I Определить след. момент
3
I Завершение планирования
[ Уве,-
Увеличение времени проекта
V
Вис окончили планирование'
3
(5
5
|^3аис]
У
Завершение работы
V
Сроки нарушены','
С
Оповестить об завершении нлан-1
[перенос рииош^ _±_
^Определить с/тел, лгентпн^
V
3
Нет
^Определи'
ть след. агентов
Да
Определить время возврата
5
Сформировать и отправить сообщение
Рис. 2. Диаграмма деятельности агента координации
Выводы
Целью работы являлась оптимизация функционирования многостадийных
обслуживающих комплексов путем составления расписания на основе мультиагентного подхода.
В результате были решены следующие задачи:
1. Сформулирована математическая
постановка задачи, учитывающая наличие нескольких центров, обобщенный ресурсный
критерий, а также временные и ресурсные ограничения.
2. Обоснована целесообразность использования мультиагентного подхода к решению данной задачи.
3. Разработана структура мультиагентной системы и определены основные функции агентов, а также специфика их взаимодействия
Предложенный подход составил основу алгоритмического программного обеспечения, предназначенного для оптимизации
функционирования сложных систем с несколькими центрами обслуживания путем составления расписания их работы.
Литература
1. Прилуцкий, М.Х. Многокритериальные многоиндексные задачи объемно-календарного планирования / М.Х. Прилуцкий // Известия Российской академии наук. Теория и системы управления. 2007. №1. С.83-87.
2. Prilutskij M.Kh. Multikriterial distribution of a homogeneous recourse in hierarchical systems / M.Kh. Prilutskij // Автоматика и телемеханика. 1996. № 2. С. 139-146.
Воронежский государственный технический университет
MULTIAGENT SYSTEM FOR OPTIMIZATION OF COMPLEX SERVICE COMPLEXES
FUNCTIONING
S.A. Oleinikova
Full Doctor, Associate Professor, Voronezh State Technical University, Voronezh, Russian Federation
e-mail: [email protected]
The subject matter of this study in this paper are complex multistage systems with several service centers and mutual inter-dependence between tasks, the duration of which is of random value. The goal of the study is to optimize the operations of such systems by creating a schedule for their functioning. The criterion that makes it possible to use the resources rationally time-wise was chosen as a criterion of optimality. The paper formulated an optimization task that takes into account the existence of several service centers, mutual dependence between tasks, their random execution time and resource constraints. Analysis of different possible approaches to the above task showed the expediency of using multi-agent technologies. Taking into account the peculiarities of the problem, the special structure of the multi-agent system was proposed. It includes a preplanning agent, performing the preparatory stage of forming of the schedule, intelligent agents who execute a schedule for the service center assigned to them, and the coordination agent. The paper outlines the main functions for agents of all categories. Particular attention is paid to the specific features of their interaction.
Thus, the optimization approach to the functioning of multi-stage service complexes by scheduling their work, based on the use of interacting intellectual agents and the possibility to make a sub-optimal decision within acceptable time limits was developed
Key words: multi-agent system, optimization task, scheduling
References
1. Prilutskij M. Kh. "Multi-criteria and multi-index resource scheduling problems', Russian Academy of Science Journal: Theory and Systems of Control, 2007, vol. 46, no. 1, pp. 78-82 pp
2. Prilutskij M. Kh. "Multi-criteria distribution of a homogeneous recourse in hierarchical systems", Automatics and Remote Control, 1996, no. 2, 139-146 pp.
3. Burkov V.N., Novikov D.A. "How to manage projects" ("Kak upravlyat proektami") Moscow, Sinteg Publisher, 1997, 188
p.
4. Burkov V.N., Novikov D.A. "Theory of active systems: Their state and prospects" ("Teoriya aktivnyh system: Sostoyaniya I perspektivi"), Moscow, Sinteg Publisher, 1999, p.
5. Tarasov V.B. "From Multiagent Systems to Intellectual Organizations: Philosophy, Psychology, Informatics" ("Ot mnogoagentnykh sistem k intellektual'nym organizatsiyam: filosofiya, psikhologiya, informatika"), Moscow, Editorial URSS Publ., 2002, 352 p.
6. Oleinikova S.A. "Mathematical model and optimization problem of scheduling for multi-project system with time and resource constrains and criteria of uniform download", Bulletin of Voronezh State Technical University, 2013, vol. 9, no. 6-3, 58-61 pp.
3. Бурков, В.Н. Как управлять проектами / В.Н. Бурков, Д.А. Новиков. - М.: Синтег, 1997. - 188 с.
4. Бурков, В.Н. Теория активных систем: Состояние и перспективы / В.Н. Бурков, Д.А. Новиков. -М.: Синтег, 1999. - 128 с.
5. Тарасов, В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика/ В.Б. Тарасов. - М.: Едиториал УРСС, 2002. - 352 с.
6. Олейникова, С.А. Математическая модель и оптимизационная задача составления расписания для мультипроектной системы с временными и ресурсными ограничениями и критерием равномерной загрузки/ С.А. Олейникова // Вестник Воронежского государственного технического университета. - 2013. - Т.9. - №6.3. - С. 5861.