Моделирование динамики потоков в многоагентных системах

УДК 519.876.5

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

Е. Г. Радченко, С. А. Юдицкий

Институт проблем управления им. В. А. Трапезникова, г. Москва

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

ВВЕДЕНИЕ

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

За подсистемами с такими свойствами закрепилось наименование “агент”, а соответствующие системы называют многоагентными (МС). Типичным примером МС служат организационные системы, в которых различают вертикальные и горизонтальные взаимодействия агентов. При вертикальных взаимодействиях от вышестоящего (управляющего) агента к нижестоящему (управляемому) агенту передаются распоряжения, указания, задания, а от нижестоящего к вышестоящему — отчеты, сводки и т. д. При горизонтальных взаимодействиях между агентами одного уровня распределяются ресурсы, передаются полуфабрикаты и продукция.

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

ментов (по принципу очереди) и одновременном их накоплении (организации заделов).

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

В статье рассмотрены два подхода к моделированию внутренней динамики МС — обобщенный (“грубый”) и детальный (“тонкий”), причем обобщенное моделирование, как правило, предшествует детальному. При обобщенном моделировании наблюдается количество ЭП, “пропущенных” через агент, выражаемое целочисленной неотрицательной переменной. При детальном моделировании каждому потоку в агенте сопоставляется определенный набор признаков — атрибутов, а каждый ЭП проходит через несколько последовательных состояний, образующих его “жизненный цикл”. Состоянию приписываются конкретные значения набора атрибутов, которые наблюдаются при моделировании.

Обобщенное моделирование внутренней динамики МС базируется на введенном в работе формальном аппарате — алгебре потокособытий, детальное моделирование — на аппарате матричных деревьев. Кроме того, при обоих подходах используется модификация булевых

Рис. 1. Структура триадной потоковой схемы агента

функций — индикаторные функции, и графы операций [3] — сети Петри [4, 5], “нагруженные” индикаторными функциями. Результат детального моделирования состоит в графическом описании маршрутов движения ЭП (с переходом от агента к агенту) в виде конвейерно-временной диаграммы [6].

На основе положений данной статьи разработана технология имитационного моделирования динамики потоков в МС, поддерживаемая программными средствами.

1. ОБОБЩЕННОЕ МОДЕЛИРОВАНИЕ ВНУТРЕННЕЙ ДИНАМИКИ ПОТОКОВ В АГЕНТАХ

Структура упомянутой триадной потоковой схемы агента приведена на рис. 1. Рассмотрим вначале способ описания и реализации блоков движения ЭП и управления потоками, а также взаимодействия между ними.

Изложение формального аппарата дается в следующем порядке:

— алгебра потокособытий как язык описания преобразования потоков;

— алгебра индикаторных функций;

— представление формул потокособытий потоковыми сетями Петри;

— графы операций и их взаимодействие с потоковыми сетями Петри.

1.2. Алгебра потокособытий

Пусть задано множество потоков Р ={ р1, Е = 1 ..., с}, выражаемых целочисленными неотрицательными переменными, значения которых соответствуют числу ЭП, и множество переходов — изменений состояния потоков

О = Ц-, j = 1, ..., @}.

Элементарное потокособытие (ЭПС) будем описывать выражением вида

-«1

О = Рс 1

, ..., р.

'«к

Ск

+ Р1 +Р N

Р*1 , .-, Ркг

где Р&;, ..., Рк — входные потоки, рк ..., рк — выходные потоки (с1, ..., як, К, ..., Иг е {1, ..., с}, с1 < < Ск,

к1 < ... < к1), пересечение множеств входных и выходных потоков в общем случае не пусто, показатели —а1, ..., —ак соответствуют числу ЭП, изымаемых при выполнении перехода д. из входных потоков, показатели + р1, , +Рг —

числу ЭП, вносимых в выходные потоки (а., , ак, р., ,

е {1, ••, е}>.

Выражение (1) отображает динамику входных рс (т) и

са

выходных рн (т) потоков на временной шкале т = 0, 1...:

Ря

а = 1, ..., к,

Рнь (т) = Риь (т — 1) + К ь = 1 г-

Потокособытием будем называть конечное множество элементарных потокособытий.

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

Пусть имеется множество потокособытий / = {о.}, у = 1, ..., N. Введем на множестве / два двухместных (бинарных) действия — объединение и совмещение, и одно одноместное (унарное) действие — альтернативный выбор.

Под объединением событий / = /1 и /2 понимается теоретико-множественное объединение ЭПС о1 е /1,

^2 е /2.

Совмещение событий / = /1* /2 заключается в формировании всех пар ЭПС о1, о2 и применении к каждой паре следующего правила:

• к набору входных (выходных) потоков ЭПС о1 приписывается набор входных (выходных) потоков ЭПС о2;

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

• горизонтальная стрелка, ведущая от входного к выходному набору потоков, помечается выражением М1 * м2;

• потоки во входном (выходном) наборе упорядочиваются слева направо по возрастанию их номеров. Результатом совмещения является множество из п1 X п2

ЭПС, где п1 и п2 — число элементов в множествах /1 и /2, соответственно.

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

Выражения (формулы) в алгебре потокособытий могут преобразовываться и упрощаться на основе тождественных соотношений [7].

Пример формулы в алгебре потокособытий:

/ = {( р? М

ґ -3 -1

и ( р 1 Рз

+ 2Ч / -1 -2 Р 5 )*(Р1 Р2

+ 2Ч , -1 Р7 )•(Р4

М2.

+ 2 \

р 6 ) и

+ 3 \ і V Ра Ж-

Формулы алгебры потокособытий преобразуются по следующему правилу:

• выражения в “альтернативных ” скобках {}v приводятся к нормализованному виду — объединению ЭПС;

• для каждого ЭПС формируется логическое условие;

• проверяется попарная ортогональность логических условий.

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

1.2. Алгебра индикаторных функций

Булевой называют переменную, принимающую два значения — 1 (ИСТИНА) и 0 (ЛОЖЬ), а булевой формулой — выражение, полученное путем применения конечное число раз к булевым переменным (а также константам 1 и 0) логических операций дизъюнкции (ИЛИ), конъюнкции (И) и отрицания (НЕ), обозначаемых соответственно V, л и чертой над выражением [7]. Булева формула описывает булеву функцию с областью значений {1, 0}.

Индикатором сравнения будем называть булеву переменную вида (р # а), где р — целочисленная неотрицательная переменная (имя потока), а — числовая константа, # — один из знаков =, ^, >, О, < и Р, принимающую значение

( р # =) =

1, если выполняется отношение #,

0, если выполняется противоположное отношение #.

Индикаторной формулой (ИФ) будем называть булеву формулу на базе индикаторов сравнения.

Пример ИФ (знак конъюнкции л опущен):

(Р1 >3)(Р1 > 1) V (р 1 > 3)(р2 > 1).

При преобразованиях ИФ наряду с принятыми равносильностями [7] применяются дополнительные “специфические” соотношения, приведенные в работе [8]. Преобразуем формулу (4). Согласно работе [8]

(Р1 > 3)(р1 > 1) = (р1 > 3), по правилу де Моргана

(Р1 > 3 )(Р 2 > 1) = (Р > 3 ) V (Р 2 > 1) = (р1 Р 3) V (Р2 Р 1).

Подставив выражения (4а) и (4б) в формулу (4), получим:

(Р1 >3) V (р1 Р 3) V (р2 Р 1) V (р2 Р 1) = 1.

Таким образом, ИФ (4) выражает единичную константу.

Владея формальным аппаратом ИФ, вернемся к формуле потокособытия (3) и преобразуем ее согласно описанной процедуре. Выражение в “альтернативных” скобках содержит два действия совмещения, выполнив которые, получим нормализованную формулу

/ = {( Р13 Р2 и (Р13 р31 р41 ^

+2 +2 Р 5 Р 6 ) и

+ 2 +3 Ч-.V

Р7 Р8 )Г-

Для каждого ЭПС в формуле (5) введем логическое условие, выражаемое индикаторной формулой над входными и (или) выходными потоками, например:

/

ЛМз * М4) = (Р1 Р 3)( Р5 О 4).

Логические условия (6) ортогональны:

/(М1 * М2) л /(м3 * М4) = ((Р1 > 3)(р1 Р 6) V

V (Р5 < 4)(Р7 < 4))(Р1 Р 3)(Р5 О 4) =

= (Р1 > 3)(Р1 Р 6)(Р1 Р 3)(Р5 О 4) V

V (Р5 < 4)(Р7 < 4)(Р1 Р 3)(Р5 О 4) =

= 0(Р1 Р 6)(Р5 О 4) V 0(Р7 < 4)(Р1 Р 3) = 0 V 0 = 0.

1.3. Представление потокособытий сетями Петри

Представим формулу потокособытия сетью Петри с кратными дугами [4], для чего применим следующее правило:

• каждой входной (выходной) потоковой переменной ЭПС сопоставим позицию сети Петри, а каждой горизонтальной стрелке — ее переход;

• из входной позиции в переход (из перехода в выходную позицию) проведем стрелки, число которых равно показателю степени в обозначении потока. Применение правила к формуле (5) дает сеть Петри

(рис. 2).

Полученные сети, называемые потоковыми сетями, отображают функционирование блоков движения ЭП в

Рис. 2. Представление формулы (5) сетью Петри

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

1.4. Графы операций и их взаимодействие с потоковыми сетями

Блок управления потоками (см. рис. 1), получая на вход данные — значения переменных, сопоставленных позициям потоковой сети (потоковых переменных), а также данные о состоянии внешней среды, обеспечивает определенный порядок выполнения управляющих воздействий — операций, инициирующих срабатывание переходов в потоковой сети, т. е. перемещение ЭП. Операции могут выполняться как последовательно, так и параллельно, предусматриваются возможность альтернативного выбора запускаемой операции в зависимости от ситуации, синхронизация параллельных операций, отсутствие конфликтов между ними и др.

Управление потоками в агенте моделируется графом операций, представляющим собой сеть Петри, переходам которой дополнительно приписаны логические ус-

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

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

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

Проиллюстрируем все вышесказанное на примере (рис. 3) с использованием потоковой сети, изображенной на рис. 2. Пусть в начальный момент т = 0 р1(0) = 3,

Р2(0) = 2, Р3(0) = 1, Р4(0) = 1, Р5(0) = 4,

Р6(0) = 2, р7(0) = 0, р8(8) = 0, метка находится в позиции и1 графа операций. При начальных значениях потоковых переменных принимает единичное значение ИФ, приписанная переходу г1 графа операций, переход г1 срабатывает, и метка перемещается из позиции и1 в позицию и2. При этом значения потоковых переменных не изменяются, но запускается таймер т. В момент т = 0, предваряющий изменение величины т, вычисляются значения ИФ, приписанных альтернативным переходам г2 и гу При этом функция для перехода г2 имеет нулевое значение ((р1(0) > 3) = 0, (р5(0) < 4) = = 0, а функция для перехода г3 — единичное ((Р1(0) Р 3) = 1, (Р5(0) О 4) = 1). Следовательно, срабатывает переход гъ, метка из позиции и2 переносится в позицию и4 на графе операций, и запускается переход Р2 потоковой сети.

В момент т и4, определяемый нормативной продолжительностью операции и4, получаем состояние потоковой сети:

Рис. 3. Взаимодействие потоковой сети Петри и графа операций

во

СОНТШ БСКНСЕБ № 0 • 2005

Р1(ти4 ) = 0, Р2(ти4 ) = 2 Р3(ти4 ) = 0 Р4(ти4 ) = 0 Р5(ти4 ) = 4, Р6(ти4 ) = 2 Р7(ти4 ) = 2 Р8(ти4 ) = 3

Единичное значение ИФ, приписанных переходам г4 и г5 графа операций, говорит о завершении срабатывания соответственно переходов Р1 и Р2 потоковой сети за время, не меньшее нормативного (т > т Uз, т > т и4). При

реализуемом, альтернативном варианте выполнения графа операций срабатывает переход г5, метка перемещается из позиции и4 в позицию и5, и производится сброс показаний таймера, контролируемый условием т = 0. По этому условию срабатывает переход и метка переносится из позиции и5 в исходную позицию и1.

Если во входные позиции Р1, ..., р4 потоковой сети извне поступит достаточное число ЭП, то цикл взаимодействия потоковой сети и графа операций будет повторен.

На основе модели “потоковая сеть — граф операций” могут быть выполнены как аналитические, так и имитационные исследования. При аналитическом исследовании методами теории сетей Петри [3—5] выявляются и устраняются аномалии при работе агентов и МС: “тупики” (“зависания”); циклы, не имеющие выхода (“ловушки”); повторные запуски операций во время их выполнения (“небезопасность”) и др.

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

2. ДЕТАЛЬНОЕ МОДЕЛИРОВАНИЕ ВНУТРЕННЕЙ ДИНАМИКИ ПОТОКОВ В АГЕНТАХ

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

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

элементам ЭП., . = 1, ..., х, находящимся в данный момент в данной стадии. На пересечении строки а{ и столбца ЭП. проставляется значение данного атрибута в данном элементе на данной стадии. Очевидно, что число столбцов в матрице, а также её заполнение изменяются во времени.

Введем на множестве матриц М = {Мк} бинарное отношение преемственности %, которое определим следующим образом: матрица Мкпреемственна относительно матрицы Мк1 (Мк1 рМк^, к1, к2 = 1, ..., К) при выполнении двух условий:

• если столбец ЭП. присутствует в матрице Мк , то он присутствует и в матрице Мк , т. е. из ЭП. е Мк следует ЭП. е Мк1;

• данные, внесенные в столбец ЭП. матрицы Мк , состоят из данных, наследуемых из матрицы М^, и “новых” данных, порождаемых в матрице Мк.

Отношение преемственности ассоциативно, не коммутативно, но транзитивно.

Графическое представление отношения преемственности между стадиями жизненного цикла ЭП дается в настоящей статье (см. далее) в форме специальной конструкции, названной нами матричным деревом (МД).

2.1. Пример матричного дерева

На рис. 4 (внизу) приведен пример МД для агента, выполняющего первичную обработку ЭП — заказов г, , = 1, ..., *. Жизненный цикл заказа состоит из стадий поступления, проверки, накопления принятых и отклоненных заказов (матрицы М1, ..., М4, соответственно). В корневой вершине дерева — матрице М1 присвоены значения атрибутам а1 и а2 всех заказов (имя заказа и дата его поступления), остальные атрибуты а3, ..., а5 (длительность первичной обработки, затраты, отметка о принятии/отклонении заказа) на этой стадии еще не определены, и соответствующие им клетки матрицы М1 оставлены пустыми.

Матрица М2 связана с матрицей М1 отношением преемственности, она наследует из неё значения атрибутов а1 и а2 всех заказов. Кроме того, в матрице М2 по результатам проверки заказов персоналом “означиваются” атрибуты а3, ..., а5 (а5 = 1, если заказ принят, а5 = 0, если отклонен).

Преемником матрицы М2 является матрица М3 или М4. Если на стадии проверки заказ г,- принят ((а5, г) = 1), то столбец полностью наследуется из М2 в матрицу М3, если заказ отклонен ((а5, = 0), то столбец насле-

дуется в матрицу М4.

Для каждого заказа существует только один путь на дереве из корневой в оконечную (терминальную) матрицу. Этот путь определяет маршрут движения в агенте соответствующего ЭП.

ПРОБЛЕМЫ УПРАВЛЕНИЯ № В • 2ВВ5

61

2.2. Взаимодействие матричного дерева и графа операций

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

В графе операций, показанном на рис. 4 (вверху), примем за начальную позицию (операцию) и1. В ней “означиваются” атрибуты а1 и а2 всех поступающих заказов. По истечении отведенного на операцию и1 времени т и 1 запускается операция и2, обрабатывающая мат-

рицу М2. Далее реализуется операция и3 или и4 (сортировка заказа), и цикл взаимодействия МД и графа операций повторяется.

3. ПРЕДСТАВЛЕНИЕ РЕЗУЛЬТАТОВ ДЕТАЛЬНОГО ПОТОКОВОГО МОДЕЛИРОВАНИЯ В ВИДЕ КОНВЕЙЕРНО-ВРЕМЕННОЙ ДИАГРАММЫ

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

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

Проиллюстрируем такую диаграмму примером (рис. 5). Она состоит из графика в системе координат “время—характеристика системы” и набора так называемых МЭП-шкал, размещенных под графиком параллельно оси времени. Каждая такая шкала соответствует маршруту одного МЭП. На ней кружками показываются граничные точки — моменты изменения фазы МЭП внутри агентов и его перехода от агента к агенту. Кружки тех граничных точек, в которых происходит изменение исследуемой характеристики системы, зачерняются.

Начальная и конечная точки шкалы обозначаются, соответственно, “н” и “к”. Точки перехода МЭП в корневую вершину дерева и из его терминальной вершины обозначаются символами этих вершин (матриц). Точки перехода МЭП от агента к агенту обозначаются через ti Слева шкала помечается идентификатором соответствующего МЭП.

Рис. 4. Взаимодействие матричного дерева и графа операций

62

CONTROL SCIENCES № В • 2ВВ5

.., z4 запускаются в

Рис. 5. Конвейерно-временная диаграмма для системы обслуживания заказов

В примере на рис. 5 в качестве характеристики системы взяты финансовые затраты на обслуживание заказов метаэлементов потока. Принято, что финансы расходуются в точках перехода заказов от агента к агенту (зачерненные кружки Р1). Шкала с идентификатором а11 = г1 соответствует маршруту заказа, обеспеченного товарным ресурсом. Заказ г1 в агенте А1 проходит жизненный цикл М11 — М15, после чего переходом Р1 передается агенту А2 и т. д.

Шкала с идентификатором а11 = г2 отображает маршрут отклоненного заказа (агентом А^. Шкала с идентификатором а11 = г3 соответствует маршруту необеспеченного заказа, который последовательно проходит через агенты А1, ..., А5. Шкала с идентификатором а11 = г4 повторяет шкалу для г1, т. е. заказ г4 также обеспечен товарным ресурсом.

Заказы г1, систему с некоторой задержкой один после другого, поэтому начальные точки соответствующих МЭП-шкал последовательно сдвинуты вправо по оси времени. Из взаимного расположения МЭП-шкал наглядно видно, какие заказы обслуживаются параллельно.

Зачерненные граничные точки шкал проецируются на временную ось графика /(т )в виде моментов т 1, ..., т п. Значения ординат графика (финансовые затраты) для моментов т,, , = 1, ..., п, определяются в ходе имитационного моделирования динамики потоков в агентах как значения соответствующих атрибутов.

Отметим, что в момент т значение ординаты графика может формироваться как результат воздействия нескольких параллельно обслуживаемых МЭП. В этом случае изменения характеристики системы, инициируемые разными МЭП, суммируются (на рис. 5 — для моментов т4, т6, т8). На интервалах между моментами, нанесенными на ось времени, затраты на обслуживание заказов не изменяются — график конвейерно-временной диаграммы представляет собой ступенчато возрастающую функцию.

ЗАКЛЮЧЕНИЕ

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

подходе [1, 2, 9] составляется “потоковый сценарий”, отображающий иерархию процессов, протекающих в системе, на основе языковых средств БАБТ (технологии структурного анализа и проектирования [10]) и расширений БАБТ [8].

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

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

При объектно ориентированном подходе к потоковому моделированию многоагентных систем агенты сопоставляются не виртуальным, а реальным целостным частям системы. Это позволяет разумно ограничить размерность системы и моделировать её однократно.

Предложенные в статье модели и методы “работают” как при процессно-, так и при объектно ориентированном подходе, однако более перспективным (примени-

ПРОБЛЕМЫ УПРАВЛЕНИЯ № Е • ZOOS

63

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

ЛИТЕРАТУРА

1. Юдицкий С. А., Радченко Е. Г. Моделирование движения потоков при предпроектном анализе сложных систем // Приборы и системы. Управление, контроль, диагностика. — 2003. — № 9.

2. Юдицкий С. А., Радченко Е. Г. Построение потоковых моделей многоагентных иерархических систем // Приборы и системы. Управление, контроль, диагностика. — 2004. — № 2.

3. Юдицкий С. А., Магергут В. 3. Логическое управление дискретными процессами. — М.: Машиностроение, 1987.

4. nume—сон Дж. Теория сетей Петри и моделирование систем. — М.: Мир, і984.

5. Котов В. Е. Сети Петри. — М.: Наука, І984.

6. Юдщкш С. А. Сценарный подход к моделированию поведения бизнес-систем. — М.: Синтег, 2ООІ.

7. Глушков В. M. Синтез цифровых автоматов. — М.: Физ-матгиз, І962.

8. Юдщкш С. А., Рaдченко Е. Г. Алгебра потокособытий и сети Петри — язык потокового моделирования многоагентных иерархических систем // Приборы и системы. Управление, контроль, диагностика. — 2ОО4. — № 9. — С. бі—бб.

9. Юдщкш С. А., Влaдucлaвлев П. Н. Основы предпроектно-го анализа организационных систем. — М.: Финансы и статистика, 2ОО4.

10. Mapкa Д., Maк-Гоyэн К. Методология структурного анализа и проектирования. — М.: Метатехнология, І99З.

в (O95) 334-87-61

E-mail: super_agent_OO7@rambler.ru

книги

Зайко А.И. Теория систем. Стохастические модели. — М.: МАИ, 2005. — 195 с.

Комарцова Л.Г., Максимов А.В. Нейрокомпьютеры. — М.: МГТУ им. Н.Э. Баумана, 2004. — 399 с.

Парусина М.Я. Инвариантный анализ и синтез в моделях с симметриями. — СПб.: СпбГУ ИТМО, 2004. — 144 с.

Новиков Д.А., Глотова Н.П. Модели и механизмы управления образовательными сетями и комплексами. — М.: Институт управления образованием РАО, 2004. — 142 с.

Пикфорд Д. Управление рисками. — М.: ООО "Вершина", 2004. — 350 с.

Скобелев В.Г. Анализ дискретных систем. — Донецк, 2002. — 172 с.

Фурасое В.Д. Задачи гарантированной идентификации. Дискретные системы. — М.: Бином. Лаборатория знаний, 2005. — 150 с.

Чайковский М.М., Курдюков А.П. Алгебраические уравнения Риккати и линейные матричные неравенства для систем дискретного времени. — М.: ИПУ РАН, 2005. — 94 с.

Карпов Ю. Имитационное моделирование систем. Введение в моделирование с Апу1одю 5. — СПб.: БХВ-Петербург, 2005. — 390 с. (+СО-КОМ).

Аттетков А.В. и др. Методы оптимизации. — М.: МГТУ им. Н.Э. Баумана, 2003. — 440 с.

Микрин Е.А. Бортовые комплексы управления космическими аппаратами и проектирование их программного обеспечения. — М.: МГТУ им. Н.Э. Баумана, 2003. — 335 с.

Пригожин И. Неравновесная статистическая механика. — М.: УРСС, 2005. — 312 с.

Аверченко В.И., Казаков Ю.М. Автоматизация проектирования технологических процессов. — Брянск: БГТУ, 2004. — 228 с.

Альтшулер С.И. Как установить, восстановить и настроить ШтСошэ ХР. — М.: Лучшие книги, 2005. — 176 с.

Бей И. Взаимодействие разноязыковых программ. — М.: Вильямс, 2005. — 880 с.

Брайант Р.Э., О'ХалларонД.Р. Компьютерные системы: архитектура и программирование. — СПб.: БХВ-Петербург, 2005. — 1086 с.

Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. СПб.: Питер, 2005. — 960 с.

Саттер Г., Александреску А. Стандарты программирования на С++. — М.: Вильямс, 2005. — 224 с.

Рыжиков Ю.И. Работа над диссертацией по техническим наукам. - СПб.: БХВ-Петербург, 2005. — 496 с.

64

CONTROL SCIENCES № Е • ZOOS