Модель мультиагентных процессов преобразования ресурсов (МППР)

В разделе рассматривается предметная область МППР [25-26, 36, 55], охватывающая такие классы процессов, как производственные, технологические, организационные, бизнес-процессы (БП) и цепочки поставок, и рассматривается возможность применения данного подхода для решения задачи технико-экономического проектирования (ТЭП) и бизнес-моделирования мультисервисных сетей связи (МСС).

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

Сложные процессы преобразования ресурсов, с точки зрения структурного подхода, могут быть представлены в виде иерархии последовательных декомпозиций процесса на подпроцессы |36].

На рис. 9 представлен фрагмент модели деятельности оператора сотовой связи, с точки зрения МППР.

Процесс выхода оператора сотовой связи в новый регион

Рис. 9. Процесс выхода оператора сотовой связи в новый регион

МППР реализована в результате интеграции ИМ, экспертного и ситуационного моделирования к области процессов преобразования ресурсов [36, 55]. МППР описывается следующей кортежной модели [36]:

M—self>, (9)

где Name — имя модели; desc — описание модели; О — объекты (элементы), ресурсы, средства, преобразователи, сигналы, заявки, цели, параметры, агенты, сообщения; Relation — связи; Ase,f — собственные атрибуты модели.

Модель МППР 136; 55 ] является развитием модели, предложенной Аксеновым К. А. и Клебановым Б. И. [25-26]. Основными объектами модели МППР являются (рис. 10): операции (Ор), ресурсы {RES), команды управления (U), средства {МЕСН), процессы (PR), источники {Sender) и приемники ресурсов {Receiver), перекрестки {Junction), параметры {Р), агенты (Agent). Описание причинно-следственных связей между элементами преобразования и ресурсами задается объектом «связь» {Relation). Существование агентов предполагает наличие ситуаций (Situation) и решений (планов действий) (Decision) [36].

Объекты модели МППР Агенты управляют объектами процесса преобразования ресурса. Агент выполняет следующие действия (рис. 11)

Рис. 10. Объекты модели МППР Агенты управляют объектами процесса преобразования ресурса. Агент выполняет следующие действия (рис. 11): 1) анализирует текущую ситуацию; 2) диагностирует ситуацию, обра-

47

щается к БЗ. В случае определения соответствующей ситуации агент пытается найти решение (сценарий действий) в БЗ или выработать его самостоятельно; 3) вырабатывает (принимает) решение; 4) определяет (переопределяет) цели; 5) контролирует достижение целей; 6) делегирует цели своим и чужим объектам процесса преобразования ресурсов, а также другим агентам; 7) обменивается сообщениями.

Диаграмма прецедентов

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

Модель интеллектуального агента следующего вида 1361:

где Name — имя агента; G_Ag — цели агента; prior — приоритет агента; KB Ag — база знаний агента; М_1п — количество входящих сообщений; M Out — количество исходящих сообщений; SPA — сценарии поведения; Control О — множество управляемых объектов процесса преобразования ресурсов; AU — множество агентов «начальников»; AD — множество агентов подчиненных.

Для построения ядра моделирующей системы был использован аппарат продукционных систем 136]. Структура продукционной системы МППР следующая:

текущее состояние ресурсов, средств, заявок, сигналов, сообщений, команд управления, целей (рабочая память);

Bps — множество правил преобразования ресурсов и действий агентов (база знаний);

Ips — машина вывода, состоящая из планировщика и машины логического вывода по БЗ агентов.

Определена структура правила преобразования, которая соответствует структуре операции процесса преобразования ресурсов (Op J:

где Сп'(t) — условие запуска правила; А;дг (tcJ — действия по захвату входных ресурсов (AinRES (tcJ) и захвату средств тМЕСН (tcJ); Atack (tIj0ck) — действия по прерыванию операции: освобождению захваченных средств 1жкМЕСИ (tIiKlJ), которое может сопровождаться соответствующими затратами ресурсов; (ALockRES (tLmJ — затраты ресурсов, включая ресурс времени, необходимые для выполнения остановки операции OpJ; AUnLock (tUnLock) — действия по продолжению выполнения операции: захвату свободных средств (AunLockMECH &unLoc^’ который может сопровождаться соответству- ющими затратами ресурсов (AUnLockRES (tUnLock) — затраты ресурсов, включая ресурс времени, необходимые для продолжения выполнения операции Op); A0UT (tEnd) — действия по формированию выходных ресурсов (AjnRES (tEnJ) и освобождению средств (AinMECH (tEnd)); StatusRULE- {wait, active, lock, done} — состояние правила, определенное на конечном множестве состояний: wait — ожидание, active — выполнение, lock — прерывание, done — выполнена; timeIWLE длительность выполнения правила преобразования; prior — приоритет правила; kind_prior — тип приоритета (относительный, абсолютный); break_off — {true, false} — признак запрета прерывания.

Средство Mechv, обладающее моделью поведения, дополнительно отнесено к правилу преобразования, которому соответствует следующая структура [36]:

где t^*e — время создания; StatusMech = {wait,active, lock, other) — состояние средства, определенное на конечном множестве состояний: wait — ожидание, active — выполнение, lock — прерывание, other — набор расширяемых состояний, который может быть связан с различными видами возникаемых поломок и действий по их устранению; Ат'п действие по запуску средства в момент начала преобразования; Атои1 — действие по остановке средства в момент окончания преобразования; Ат115е действие по выполнению преобразования; Ат,оск действие по остановке средства в момент прерывания преобразования; Атип,оск действие по запуску средства в момент продолжения преобразования; Amother действие по устранению поломки; ther — периодичность возникновения поломки (может быть задана функцией); productv — производительность средства в единицу времени (может быть задана функцией от расхода ресурсов).

За основу модели интеллектуального агента в МППР [36] взята обобщенная модель интеллектуального агента (ОМИА), предложенная Швецовым А. Н. Данная модель адаптирована к предметной области процессов преобразования ресурсов. В основе правил поведения агентов взят специализированный объектно-ориентированный язык RADL (Reticular Agent Definition Language). Применительно к предметной области процессов преобразования ресурсов структура правил поведения агентов выглядит следующим образом [361:

Name <Имя правила>

If < Message Conditions, RCP Conditions, G_Ag Conditions >

Then < G_Ag Changes; Message Actions; Private Actions>, где Message Conditions — условия, относящиеся к сообщениям; RCP Conditions — условия, относящиеся к преобразователям и ресурсам (RCP — Resources conversion process)', G_Ag Conditions — условия, относящиеся к целям;

G_Ag Changes — действия по изменению текущих целей агента; Message Actions — действия по формированию сообщений; Private Actions — действия (план действий), связанные с преобразователями и ресурсами, направленные на достижение поставленных целей. Части правил могут быть представлены в виде предикатов первого порядка.

Алгоритм работы агента состоит из следующих действий [36]:

1. Анализ мира включает:

i. Чтение сообщений «Агента-начальника» и «Аген- тов-подчиненных» (функция When), если таковые есть.

Agent.Mess_In_Count := Mess_Buffer.Check_MessiAgent.name) IF Agent.Mess_In_Count > 0 THEN Agent.R_Mess

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

ii. Обзор (анализ) ближайшего окружения, элементов процесса преобразования, которыми он управляет непосредственно.

iii. Контроль выполнения целей.

2. Диагностирование ситуаций и Поиск решения.

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

В случае если найдено несколько решений, то для каждого решения агент проводит оценку его достижимости (моделирует поведение всех элементов, принадлежащих данному модельному множеству для поиска пути к цели ga' на глубину в gp шагов). Полагаем, что параметр gp определяется выбранной стратегией s', и вводим два счетчика: счетчик модельных шагов Cmgp и счетчик актуальных шагов Cagp. Выполняем модельные шаги для модельных множеств на глубину gp. После каждого шага вычисляем предполагаемую оценку состояния МА-мира для всех моделируемых ИО (элементов процесса преобразования) и делаем следующий модельный шаг. Повторяем модельные шаги до достижения Cmgp =gp. Затем сравниваем оценки достижения цели текущего решения с предыдущим, запоминаем решение с лучшей оценкой. Далее вычисляем предполагаемую оценку преобразований целей для всех ИО и отклонение от целей (меру близости к цели):

Таким образом, перебрав все решения, выбираем единственное.

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

Если ситуация не изменилась, то переходим к следующему шагу.

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

3. Корректировка целей. Агент, диагностировав ситуацию и выбрав решение, корректирует свои цели и цели вверенных ему объектов. Вычисляет оценки состояния целей от достигнутого состояния МА-мира и определяет отклонения от цели. Поскольку целей может быть несколько (в случае j > 1), необходимо сформировать комплексную оценку положения интеллектуального агента в пространстве целей

учитывающую значимость целей, а. — весовые коэффициенты важности целей, п — мощность множества активных целей.

Проводим сравнение с допустимым комплексным отклонением Ad с помощью следующих правил:

при выполнении условия Ак> Ad переходим к шагу (2), изменяя при этом стратегию, т.е. переоцениваем стратегию формирования целей; если же ДД Ad, то продолжается функционирование интеллектуального агента в той же стратегии.

  • 4. Формирование модели мира данного агента (прогнозирование состояния на следующем шаге) FV (t+1). Формируем новое текущее состояние МА-мира с помощью вычисления значений целей. FV — функция формирования информационного пространства.
  • 5. Выполнение активных действий агента происходит на текущем шаге модельного времени

Execute : AD{Agenti): GA —> VO,

где Execute — функция выполнения действий агента. К активным действиям также относится функция отправки сообщений

IF Agent.Mess_Out_Count > 0 THEN Agent.W_ Mess

6. Окончание выполнения действий агента на данном шаге.

На рис. 12 приведена схема работы интеллектуального агента.

В качестве модели представления знаний в МППР используется фреймово-семантическое представление. Для построения концептуальной модели предметной области и решения задачи сокращения затрат на разработку программного обеспечения (ПО), в [36] использован подход, основанный на совмещении фреймоподобных структур с конструкциями концептуальных графов.

Блок-схема работы интеллектуального агента

Рис. 12. Блок-схема работы интеллектуального агента

Алгоритм имитатора состоит из следующих основных этапов [36, 55]: определения текущего момента времени SysTime = min TV, j e RULE; обработки действий агентов (диагностирования текущих ситуаций, выработки команд управления); формирования очереди правил преобразования; выполнения правил преобразования и изменения состояния рабочей памяти (ресурсов и средств). Для диагностирования текущих ситуаций и выработки команд управления имитатор обращается к модулю экспертной системы.

Более подробней остановимся на данном алгоритме.

С целью минимизации вычислений, выполняемых машиной вывода, предлагается использовать алгоритм, в котором учет модельного времени организован с использованием централизованного календаря событий. За основу взят алгоритм, предложенный в [25-26] и доказавший свою эффективность и быстродействие при решении практических задач в системе BPsim. В процессе работы машина вывода Ips взаимодействует со следующими очередями [36]:

Календарь (Calendar) — очередь, содержащая упорядоченный по модельному времени перечень правил, которые должны выполнить одно из действий в определенный момент времени (проверить условие запуска Са ft), выполнить действие А, (t), действие Аоит ft)) или действие агента АЛкпи ft):

Список активизированных правил {Active_Rules) представляет собой перечень правил, которые должны в данный момент времени выполнить действие Аоит (t):

Очередь правил (Wait&Lock_Rules), состоящая из «операций», «перекрестков», «источников» и «приемников» — правил, у которых будет выполняться в данный момент действие А(,а ft), для правил с признаком прерывания CaMech ft) и для действий агентов А^, ft):

Для реализации методов ситуационного управления дополнительно в алгоритм введены следующие очереди:

Список агентов (Agent_list) — перечень всех агентов, упорядоченный по приоритету. Агенты с наивысшим приоритетом обрабатываются в первую очередь. Приоритет изменяется от О до М, причем 0 — наивысший приоритет.

Дляработы с очередями введем следующие операторы:

Aj -> Rules _Queues добавление в S-ю очередь у-го действия правила:

DEL

Rules_QueueR —» А, — удаление из R-й очереди j-ro действия правила, которое было выполнено;

REMOVE

Rules_Queue0 —> Rules_Queuew — перемещение о-го

Ло

действия правила из Q-й очереди в W-ю;

Clear (Rules_Queuex) — очистка Х-и очереди от элементов;

Count (Rules _Queuec) — функция, которая определяет количество элементов в очереди.

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

ExecuteiActive _ Rules) — функция выполнения действий (изменение состояний ресурсов, механизмов, заявок и сообщений) правил W-й очереди. Последовательность обработки действий определяется приоритетом правил.

Машина вывода выполняет в момент запуска подготовительный этап — устанавливает значение модельного времени SysTime, равное нулю или моменту, задаваемому пользователем. В дальнейшем машина вывода циклически выполняет следующую последовательность шагов1361:

1. Определение текущего момента времени — определяется ближайший момент завершения активности по календарю:

SysTime = min Т,

^ j^^CaUndar 3 *

В случае моделирования непрерывных процессов преобразования ресурсов SysTime—SysTime+Dt, т. е. имеем пошаговый способ продвижения по модельному времени.

  • 2. Определение списка активизированных событий для момента времени SysTime, в том числе:
  • 1) список завершения активности экземпляров «перекресток» с заданным временем синхронизации:

2) список завершения активности экземпляров «операция»:

3) список завершения активности экземпляров «источник» и «приемник»:

3. Обработка списка агентов. Если в модели присутствует хоть один агент, то Планировщик последоватально, согласно приоритетам, совершает обход агентов (с передачей им полномочий), работает со списком Agent_List. При выполнении 5-го шага алгоритма агента машина вывода помещает действия агента в очередь правил или в календарь (если действие не будет выполняться в текущем такте). Список выполнения действий экземпляров «агент», запланированных на данный момент системного времени, следующий:

4. Исполнение действий ("соответствующих активизированным правилам и определенным на предыдущем шаге) и фиксация изменений в рабочей памяти. Завершение активизированных правил Execute^Active Rules). Для экземпляров «источник»,

«приемник», «операция», «агент», условием запуска которых является функция от времени, — определение (вычисление) следующего момента F‘,me активизации и записи его в календарь:

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

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

  • 5. Проверка рабочей памяти. Если состояние памяти изменилось Count (ChangesjQueue) > 0, то происходит переход к следующему шагу, иначе — переход на 10-й шаг.
  • 6. Формирование очереди правил.

Если такт не первый, то машина вывода из списка изменившихся ресурсов и средств формирует очередь правила (используя Rules _of_use).

Если такт первый, то машина вывода выбирает все правила. Очередь формируется в следующей последовательности:

1) правила экземпляров «агент»:

2) правила экземпляров «перекресток»:

3) правила не активизированных и не попавших в календарь экземпляров «источник» и «приемник»:

4) пассивные правила (т. е. события, которые активизируются не в определенный момент времени, а при выполнении определенного условия) экземпляров «процесс» и «операция» и правила, находящиеся в очереди прерываний.

При формировании очереди внутри каждого типа правила выстраиваются в соответствии с приоритетом.

  • 7. «Обнуление» изменений области рабочей памяти (снятие признаков изменения состояния ресурсов и средств,); Clear (Changes_Queue).
  • 8. Обработка очереди правил и фиксация изменений в рабочей памяти Execute (Wait&Lock JRules):
  • 1) проверка исполнения правил экземпляров «агент», в случае выполнения правила — запуск активности «агента»;
  • 2) проверка исполнения правил экземпляров «перекресток», в случае выполнения правила — запуск активности «перекрестка» (блокировка или удаление входных сообщений и формирование выходных);
  • 3) проверка исполнения пассивных правил и тех, которые не попали в календарь экземпляров «источник» и «приемник», в случае выполнения правила — запуск активности (блокировка или удаление входных сообщений и формирование выходных);
  • 4) проверка исполнения пассивных правил экземпляров «процесс» и «операция» и правил с признаком прерывания (с последующей блокировкой механизмов). В случае выполнения правила экземпляр будет активизирован (захват входных ресурсов и средств, расчет времени окончания работы) и правило «удаляется» из очереди.

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

  • 8.1. Текущее правило. Начало обработки правила. Если текущее правило имеет признак прерывания, то переходим к следующему шагу, если правило не имеет признака прерывания, то используем шаг 8.3, а если правил больше нет — шаг 2.
  • 8.2. Условие запуска правила на входных ресурсах выполняется? Если да, то переходим к следующему шагу, иначе — переходим к шагу 8.8.
  • 8.3. Условие запуска на средствах выполняется? Если да, то переходим к шагу 8.5, иначе — переходим к шагу 8.4.
  • 8.4. Правило с абсолютным приоритетом (АП)? Если правило с АП, то переходим на шаг 8.6, иначе — шаг 8.8.
  • 8.5. Обработка правила и фиксация изменений в рабочей памяти (РП). Переход к шагу 8.8.
  • 8.6. Есть ли правила с меньшим приоритетом, использующие недостающие средства? Выбор активизированных правил с меньшим приоритетом и не имеющих признака прерывания, использующих необходимые средства в нужном количестве. Если такие правила есть, то происходит переход к шагу 8.7, иначе — переходим к шагу 8.8.
  • 8.7. Выполнение прерывания, обработка правила АП и фиксация изменений в РП. Происходит прерывание правил, определенных на предыдущем этапе (установление признака прерывания). Выполнение правила с абсолютным приоритетом и фиксирование изменений в рабочей памяти.
  • 8.8. Следующее правило. Если есть необработанные правила, то осуществляется переход к обработке текущего правила — к шагу 8.1, иначе — переходим к шагу 2.

Фиксация изменений рабочей памяти происходит вместе с активизацией события и записью момента окончания в календарь.

  • 9. Изменился ли текущий момент? Определение разницы между ближайшим и текущим моментом времени в календаре. Если разница больше нуля, то происходит переход на следующий шаг (шаг 10), иначе — переход на шаг 2 (для завершения «нулевых» работ).
  • 10. Проверка условия окончания имитации. В зависимости от режима остановки имитации:
    • • окончание времени;
    • • достижение определенного значения параметра;
    • • «Если делать НЕЧЕГО».

Если условие окончания имитации выполнено, то моделирование завершено, иначе — машина вывода переходит на следующий цикл (шаг 1).

Модель МППР 1481 разработана ее авторами на основе расширения модели процесса преобразования ресурсов (ППР) интеллектуальными агентами и предназначена для моделирования организационно-технических и бизнес-процессов и поддержки принятия управленческих решений. Агент модели МППР имеет гибридную архитектуру InteRRap [83], представленную на рис. 13.

Гибридная архитектура агента МППР

Рис. 13. Гибридная архитектура агента МППР

Классификация агентов процесса преобразования ресурсов

На основе архитектуры гибридного агента МППР можно создавать следующие виды агентов для решения различных прикладных задач [55]:

  • - реактивные агенты, поведение которых определяется реактивной подсистемой и описывается только диаграммой деятельности (конечным автоматом). Данный вид агентов используется для задач динамического моделирования МППР;
  • - реактивно-интеллектуальные агенты, поведение которых определяется реактивной подсистемой и описывается только продукционной базой знаний (тактической). Данный вид агентов используется для задач динамического моделирования МППР, описания моделей ЛПР, управляющих процессами;
  • - интеллектуальные агенты, поведение и логика работы которых определяется только планирующей подсистемой, и знания хранятся в фреймовой базе знаний (стратегической). Данный вид агентов используется для построения проблемно-ориентированных интеллектуальных систем на основе аппарата фреймовых экспертных систем (задачи диагностики, проектирования, построения советующих ЭС и систем технико-экономического проектирования);
  • - гибридные агенты, полностью реализующие функцио- нальность архитектуры гибридного агента МППР. Данный вид агентов используется для построения сложных, интеллектуальных систем управления и планирования, контур которых состоит из двух элементов: 1) динамической модели процесса управления и 2) блока (модуля), реализующего поиск решения многопараметрической задачи и выработки (генерации) управляющего воздействия на модель процесса управления.

Модаль МППР реализована в СДМС BPsim.MAS [25-26,36,55].

Заканчивая обзор и анализ методов моделирования, необходимо отметить то, что задачам технико-экономического проектирования ТЭП ОТС и моделирования бизнеса компании по функциональности и используемым методам наиболее соответствует СДМС BPsim.MAS, реализующая модель МППР, которая обеспечивает выполнение следующих требований:

  • - описание ситуационной модели в виде дискретной ситуационной сети, как наиболее соответствующей процессам преобразования ресурсов;
  • - декомпозицию ситуационной модели;
  • - описание процессов преобразования ресурсов;
  • - представление информации и моделей с использованием когнитивной графики;
  • - описание моделей ЛПР в виде интеллектуального агента;
  • - вывод на знаниях;
  • - имитационное дискретно-событийное моделирование.
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >