Стратегии планирования действий агентов многоагентных систем

УДК 519.8

Миргалеев А.Т., Миргалеева Д.Т., Петряев Н.М.

СТРАТЕГИИ ПЛАНИРОВАНИЯ ДЕЙСТВИИ АГЕНТОВ МНОГОАГЕНТНЫХ СИСТЕМ

Систематизированы виды проблем планирования действий агентов многоагентных систем формирования описаний угроз локальной безопасности субъектов РФ. Предложена классификация проблем составления расписания действий агентов как проблем планирования управления проектами.

В работе [1] предложено осуществлять сбор и обработку данных в информационно-телекоммуникационных системах органов власти субъектов РФ на базе многоагентных технологий. В работе [2] предложена концептуальная модель многоагентных систем формирования описаний угроз локальной безопасности субъектов РФ. В работе [3] предложен алгоритм их функционирования. В основу алгоритма положено сочетание планирования процессов сбора и обработки данных "в пространстве состояний" и "в пространстве задач".

Вместе с тем в работе [4] показано, что планирование действий агентов по сбору и обработке данных (координация действий агентов) по своей природе сходно с планированием работ при управлении проектами в распределенных системах.

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

144

Анализ работ [5, 6] показал, что управление проектами включает в себя два процесса: планирование и составление расписания. Под планированием понимается процесс определения работ, порядка их выполнения и ресурсов, необходимых для решения определенной задачи. Результатом планирования является план, представленный в определенном виде (например, в форме PERT-диаграммы). Вторая часть планирования - составление расписания - состоит в поиске оптимального плана. Этот план должен быть наилучшим с точки зрения уменьшения стоимости выполнения задачи и учитывать любые ограничения, в том числе времени и ресурсов. Расписание, получаемое при этом, может быть динамическим, то есть учитывать возможность изменения состояния ресурсов, временных рамок выполнения работ или состава работ.

Определим место процесса планирования и составления расписания в общем процессе решения задач в распределенных системах. Процесс решения задачи в распределенных системах включает в себя следующие этапы [5, 6]:

1) декомпозиция задачи на подзадачи - разбиение сложной задачи на подзадачи;

2) распределение подзадач - разделение задач между элементами системы, ответственными за решение каждой подзадачи;

3) решение подзадач - решение элементами системы назначенных им задач;

4) интеграция решений - объединение результатов решения подзадач с целью получения решения сложной задачи.

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

Рассмотрим стратегии планирования, используемые в распределенных системах. Согласно [6] в распределенных системах может использоваться три стратегии:

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

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

145

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

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

Этапы стратегии централизованного планирования распределенных планов представлены в работе [7]. В основе этой стратегии лежит марковский процесс решения задачи на основе использования модели взаимодействий агентов и среды.

В работе [8] приведено описание стратегии второго вида. Эта работа посвящена проблеме, где множество элементов системы должны найти последовательную комбинацию действий с учетом некоторых ограничений. Ограничения накладываются на возможность реализации этих действий. Эта проблема предусматривает распределение ресурсов и называется «проблемой удовлетворения распределенных ограничений» (Distributed CSP). В проблеме DCSP, переменные и ограничения распределены среди элементов распределенной системы. Элементы системы решают задачи, находя набор значений распределенных переменных, который удовлетворяет всем распределенным ограничениям.

В работе [9] рассматривается стратегия распределенного планирования распределенных планов на примере так называемых «вычислительных рынков». При этом моделируется множество элементов, которые формируют свои планы по производству или потреблению товаров. Цель моделирования состоит в том, чтобы достичь сбалансированного распределения производства и потребления товаров между агентами.

Следует отметить, что рассмотренные стратегии могут быть использованы в комбинации. Один из примеров такого комбинирования приведен в работе [9].

Выбор стратегии планирования влечет за собой анализ возникающих проблем составления расписания. Напомним, что исходными данными при составлении расписания являются определенные на этапе планирования задачи или действия.

В соответствии с [10] и [11] проблема составления расписания состоит в назначении ограниченных ресурсов работам во времени и оптимизации одной или более целей. В работе [11] приведена постановка задачи составления расписания следующего вида: R - набор ресурсов (машин, механизмов и т.д.) (rb Г2,..., rm}, и J- набор задач jj'2,..., jn} (также на-

146

зываемых операциями или действиями). При этом понятие «работа» используется вместо понятия «задача». Это означает, что работа состоит из нескольких действий или операций. Тогда, проблема составления расписания состоит в назначении последовательности задач J времени t при использовании ресурсов R наилучшим образом.

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

Потребность известное распределение ресурсов открытое цеховое планирование цеховое планирование единичного производства потоковое цеховое планирование

и наличие ресурсов неизвестное распределение потоковое планирование с перестройками [13]

ресурсов

малые [10]

Размерность средние большие

Внешняя среда динамические статические [12, 13]

[12]

Цель

Приоритет

Распределенность-

выполнимость частичная выполнимость

с приоритетом без приоритета

распределенные

централизованные

[12]

[13, 14]

комбинаторные

аукционы

[15]

Рис. 1 - Классификация проблем составления расписания

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

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

147

сурсов для работ в течение определенного времени, не превышая при этом ограничения ресурсов. Требуемые ресурсы для каждой работы известны. Этот класс проблем в соответствии с [12] может быть разделен на четыре подгруппы:

1. Открытое цеховое планирование (Open Shop Scheduling - OSS). Отсутствуют ограничения, связанные с упорядочиванием ресурсов (машин) для операций каждой работы. Работы не имеют предопределенной последовательности машин.

2. Цеховое планирование единичного производства (Job Shop Scheduling - JSS) Каждая работа или набор активностей должна использовать ресурсы (машины) в определенном порядке, который может быть различным для каждой из них. Каждая работа имеет свой маршрут, который определяет отношения предпочтения между операциями работ.

3. Потоковое цеховое планирование (Flow-Shop Scheduling - FSS) Работы используют ресурсы в любом порядке. Это - частный случай Job Shop Scheduling. Имеется n работ и m машин, каждая работа состоит из m операций на разных машинах. Эти n работ должны быть выполнены в одной и той же последовательности на m машинах, т.е. каждая работа должна быть выполнена на всех пригодных машинах в одном порядке 1,..., m и каждая машина может выполнять только одну работу в данный момент времени t.

4. Потоковое планирование с перестройками (Permutation Flow-Shop Scheduling - PFSS). Работы используют ресурсы в одном порядке, и ресурсы обрабатывают работы в том же порядке. Это - частный случай предыдущего варианта Flow-Shop с перестройками. Изучена задача n by m варианта Flow-Shop с перестройками. Здесь n работ должны быть выполнены в одном порядке на m машинах без конкуренции. Любая машина может выполнять только одну работу в данный момент времени, и процесс должен быть закончен инициативно. Более того, машина j+1 не может начать обработку до тех пор, пока машина j не закончит процесс выполнения этой же работы.

При неизвестном распределении ресурсов проблема составления расписания состоит в назначении задач ресурсам так, чтобы все работы были выполнены в заданное время [12, 13]. При этом известен набор доступных операций и для каждой из них известен набор ресурсов. Определенный тип ресурса используется для определенной операции, причем использование различных ресурсов одного и того же типа может предполагать различное время выполнения операции. Конкретное имя ресурса неизвестно.

148

Размерность проблемы. План выполнения проекта может включать большое количество (тысячи) работ. С этой точки зрения выделяют «малые», «средние» и «большие» проблемы составления расписания. В работе [10] показано, что расписания могут иметь размерность nm, где n -число работ, m - количество ресурсов. Такая размерность зависит от вида производимого продукта и наличия ресурсов. Следует отметить, что проблема составления расписания с числом работ и ресурсов порядка 1000 считается большой.

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

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

Статическое расписание не меняется с течением времени. В работе [14] представлены методы комбинирования статических и динамических расписаний для управления движением транспортных средств.

Цель. В зависимости от цели составления расписания выделяют:

- проблемы с жесткими ограничениями, которые должны быть полностью удовлетворены (выполнимость).

- проблемы с ограничениями, которые могут быть смягчены или частично выполнены (частичная выполнимость или определенная степень выполнимости).

На практике при составлении расписаний одновременно возникают обе проблемы. При этом для практики важно, чтобы расписание можно было получить за приемлемое время. Однако как показано в работе [13] поиск оптимального расписания для удовлетворения жестких ограничений может занять длительное время (это связано с перебором всех воз -можных решений).

Составление расписания в случае мягких ограничений позволяет пренебречь оптимальностью с целью получения качественного решения за приемлемое время.

Приоритет. Приоритет определяет, что в расписании есть операции, которые могут быть прерваны во время t и закончены во время t+d (d>0). В этом смысле выделят два вида проблем составления расписания: с приоритетными и с не приоритетными операциями [13].

149

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

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

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

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

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

Библиографический список

1. Миргалеев А.Т., Ющенко С.П., Потапов А.В. Многоагентный способ организации формирования описаний угроз локальной безопасности. //Телекоммуникации, М.: Машиностроение, 2003. №11.

2. Миргалеев А.Т., Ющенко С.П., Захаров И.С. Концептуальная модель многоагентной системы формирования описаний угроз локальной безопасности субъектов РФ //Телекоммуникации, М.: Машиностроение, 2004. №1.

150

3. Миргалеев, А.Т., Ющенко С.П., Потапов А.В. Алгоритм функционирования многоагентной системы формирования описаний угроз локальной безопасности субъектов РФ //Материалы междунар. конф. «Системные проблемы качества, математического моделирования, информационных, электронных и лазерных технологий», Москва, 2003 г. М.: Радио и связь, 2003.

4. Suarez Baron S.A. Resource and Task Allocation in Distributed Environments. A Multi-Agent System Approach. Research work report. Girona, Spain, 2004.

5. Fox Mark S. and Norman Sadeh. Why is Scheduling Difficult? A CSP Perspective. ECAI 1990.

6. Wooldridge Michael. An Introduction to MultiAgent Systems. Published in February 2002 by John Wiley & Sons (Chichester, England). ISBN 047149691X, 2002.

7. Bernstein D.S., Zilberstein S., and Immerman N. The complexity of Decentralized Control of Markov Decision Processes. In Proc. of the 16th Conf. on Uncertainty in Artificial Intelligence, 2000.

8. Wkatsutoshi H., Makoto Y. An Approach to Over-constrained Distributed Constraint Satisfaction Problems: Distributed Hierarchical Constraint Satisfaction. In proceedings of ICMAS 2000, 2000.

9. Wellman M. A market-oriented Programming Environment and its Application to Distributed Multicommodity Flow Problems. Journal of Artificial Intelligence Research 1, 1993.

10. Kuhn N., Muller H.J. and Muller J.P. Task decomposition in Dynamic Agent Societies. Autonomous Decentralized Systems, 1993. Proceedings. ISADS 93., International Symposium on Artificial Intelligence, 1993.

11. Baker Kenneth R., Elements of Sequencing and Scheduling. ISBN: 09639746-1-0 / 0963974610. Revised edition, 1995.

12. Escolano F.R., Cazorla M.A., Alfonso M.I., Colomina, O., Lozano M.A. Inteligencia artificial. Modelos, Tecnicas y Areas de Aplicacion. Thomson, 2003.

13. Smith Stephen. Coordinating Activity in Knowledge-Intensive Dynamic Systems. KIMAS 2003, October 1-3, 2003, Boston, MA, USA, 2003.

14. Sandstrom Kristian, Eriksson Christer, and Fohler Gerhard. Handling Interrupts with Static Scheduling in an Automotive Vehicle Control System. Real-Time Computing Systems and Applications, 1998. Proceedings. Fifth International conference on ,27-29 Oct. 1998.

15. Walsh William, Wellman Michael, Wurman Peter and MacKie-Mason Jeffrey. Some Economics of Market-Based Distributed Scheduling. In proceed-

151

ings of the Eighteenth International Conference on Distributed Computing Systems (ICDCS-98), Amsterdam, The Netherlands, May 1998.

16. Michael L. Fredley. A decomposition approach for the multi-modal, resource-constrained, multi-project scheduling problem with generalized precedence and expediting resources. PhDissertation, Department of the air force air university, 2001.

152