УДК 65.012.122
ПРИМЕНЕНИЕ АГЕНТНОГО ПОДХОДА К ИМИТАцИОННОМу
моделированию бизнес-процессов в нотации EEPC
Е.А. Ланцев, М.Г. Доррер
ФГБОУ ВПО «Сибирский государственный технологический университет», 660049, Красноярск, пр. Мира, 82, е-mail: [email protected]
Предложен и разработан теоретико-множественный аппарат описания моделей бизнес-процессов предприятия в методологии ARIS eEPC и агентных имитационных моделей AnyLogic. Разработан метод трансляции модели в нотации eEPC в агентную имитационую модель AnyLogic. Поставлен эксперимент по трансляции модели в нотации eEPC в агент-ную имитационную модель AnyLogic на основе разработанного метод.
Ключевые слова: eEPC, ARIS, агентное моделирование, имитационное моделирование, AnyLogic
Proposed and developed a set-theoretic formalism for describing models of business processes in ARIS eEPC methodology and AnyLogic agent-based simulation models. The method in the broadcast model notation eEPC in agent-based Simulation model of AnyLogic. An experiment on the broadcast model in the notation eEPC in agent-based simulation model based on AnyLogic developed method.
Eey words: eEPC, ARIS, agent-based modeling, simulation modeling, AnyLogic
На сегодняшний день уже существуют разработки в области стыковки между формальным описанием бизнес-процессов и имитационным моделированием. Работы в этой области используют в большинстве своем дискретно-событийную или агентную парадигму имитационного моделирования, причем в основном распространены подходы основывающиеся на дискретно-событийной парадигме, в силу того, что агентная парадигма имитационного моделирования исторически появилась позже дискретно-событийной. В качестве целевой имитационной модели может использоваться как модель в формате существующей имитационной системы (Arena, GPSS, CPN Tools), так и формат для системы имитационного моделирования собственной разработки. В отличии от существующих разработок. В данной статье используется более общий подход теоретически применимый и к другим событийным моделям бизнес-процессов.
Бизнес-процесс - связанная совокупность подпроцессов и/или бизнес-операций и/или бизнес-функций, в ходе выполнения которой потребляются определенные ресурсы и создаётся продукт (вещественный или нематериальный результат человеческого труда: предмет, услуга, научное открытие, идея), представляющая ценность для потребителя (Калянов , 2006).
Имитационное моделирование процесс конструирования модели реальной системы и постановки экспериментов на этой модели с целью либо понять поведение системы, либо оценить (в рамках органичений, накладываемых некоторым критерием или совокупностью критериев) различные стратегии, обеспечивающие функционирование данной системы(Шеннон, 1978).
Нотация ARIS eEPC расшифровывается как extended Event Driven Process Chain - расширенная
нотация описания цепочки процесса (Шеер, 1999), управляемого событиями и предназначена для детального описания бизнес-процесса и отражает логику его выполнения. Бизнес-процесс в нотации eEPC представляет собой поток последовательно выполняемых работ, расположенных в порядке их выполнения. Модель бизнес-процесса представляет собой граф, состоящий из вершин - объектов модели, а также дуг (направленная связь) и рёбер (ненаправленная связь) - связей между ними, которые не только соединяют объекты модели, но и служат для определения отношения между ними.
Модель в нотации eEPC (extended Event Driven Process сЬят) определим как (Доррер, 2011):
G = {X, V},
где X - непустое множество объектов модели (вершин графа), V - непустое множество дуг Vn и рёбер Vr, таких что V = Vn u Vr.
Объекты модели (вершины графа):
X = {S, F, D, I, P, R},
где S - множество объектов типа «событие», F - множество объектов типа «функция», D - множество объектов типа «документ» и «информационный носитель», I - множество объектов типа «Должность», «Организационная единица», P - множество объектов типа «Продукт/услуга», R - множество объектов типа «правило» XOR, OR, AND задающих логику ветвления/слияния бизнес-процесса.
Множество объектов типа «событие» S состоит из множеств: Ss u Sf u Sm , где Ss - непустое множество начальных событий определяется как Ss = {s. |s( e S: - 3 Sj e S: j < i}, Sf- непустое множество конечных событий определяется как Sf = {s. | s. e S: -3 sj e S: j > i}, Sm - множество событий внутри модели, определяется как Sm = { s. | s. e S: 3 sj e S: j > i }, где s. - i-ое событие модели.
Множество правил ветвления R состоит из элементов множества R и R и R , , где R - множество
xor or and 7 xor
правил ветвления типа XOR, где R - множество правил ветвления типа OR, где Rand - множество правил ветвления типа AND.
Множество объектов типа I состоит из элементов I и I , где I - множество объектов типа «Долж-
pos org pos ^
ность», Iorg - множество объектов типа «Организационная единица».
Множество объектов типа D состоит из элементов Ddoc и D.nJ, где Ddoc - множество объектов типа «Документ», D - множество объектов типа «Информационный объект».
Множество дуг Vn определяется как: Vn = { Vsf , Vfs , Vsr , Vrs , Vfr , Vrf , Vfp , Vpf }, где Vsf = {(s.,f)| si e S, f e F} - множество дуг имеющих направление от события к функции, V = {f,
UJs 1
e F, s. e S} - множество дуг имеющих направление от функции к событию, V¡r = {(s., r )| s. e S, r e R} - множество дуг имеющих направление от события к объекту типа «правило ветвления», Vrs = {(r, s)| r. e R, s. e S} - множество дуг имеющих направление от объекта типа «правило ветвления» к событию, Vfr = {f, r)lf e F, r. e R} - множество дуг имеющих направление от функции к событию типа «правило ветвления», Vrf = {(r, f)| r. e R, f.e F} - множество дуг имеющих направление от объекта типа «правило ветвления» к функции, Vp = {f, p)lf e F, p . e P} - множество дуг имеюшцх направление от функции к продукту/услуге, Vff = {(p,, f)|p¡ e P,f.e F} - множество дуг имеющих направление от продукта/услуги к функции. Множество рёбер Vr определяется как: Vr = {Vfi, Vfd},
где Vfi = {(i, f)| i. e I, f e F} - множество соединяющих функции и должности, Vdd = {f, d^f.e F, d . e D} - множество соединяющих функции и документы.
Агентное моделирование - метод имитационного моделирования, исследующий поведение децентрализованных агентов и то, как такое поведение определяет поведение всей системы в целом.
AnyLogic - многоподходный инструмент имитационного моделирования, позволяющий создавать модели с применением следующих методов: системная динамика; дискретно-событийное (процессное) моделирование; агентное моделирование. В среде имитационного моделирования AnyLogic можно разрабатывать модели экономических и бизнес-процессов, компьютерных сетей, инвестиционных и производственных систем, систем массового обслуживания и др. сложных процессов и систем (Карпов, 2006).
Агентная модель в AnyLogic реализовывается с помощью базового объекта - активного объекта. Активный объект имеет параметры, переменные, которые можно считать памятью агента, стейтчарты выражают поведение: состояния объекта и изменение состояний под воздействием событий и условий.
Определим агентную модель AnyLogic как:
ABM = {E, A},
где: E - множество объектов составляющих окружение агента, A - множество агентов (активных объектов).
Множество объектов E составляющих окружение агента определим как:
E = {Tm, Var, Ds},
где Tm - множество таймеров, Var - множество переменных, Ds - множество таблиц для сохранения статистических данных о работе модели и синхронизации.
Множество агентов A определим как:
A = {Sch Par, Var, Fn},
где Sch - непустое множество стейтчартов, Par -множество параметров агента, Fn - множество функций агента.
Множество стейтчартов Sch определим как:
Sch = {Bc, St, Tm},
где Bc - непустое множество указателей начального состояния, St - непустое множество состояний, Trn - множество переходов.
Перевод графических элементов модели в нотации eEPC в агентную имитационную модель AnyLogic производится согласно таблице 1.
Таблица 1. Описание соответствия объектов модели нотации eEPC и элементов агентной имитационной модели на языке AnyLogic
Объект модели eEPC
Графическое обо-
Соответствующий элемент AnyLogic
Описание элемента AnyLogic
1
3
4
Функция (Function) FeXeO
Начальное событие
(Event)
SseSeXeG
Событие (Event) Sm ,Sf eSeXeG
Function
Event
Состояние (State)
SteScheAeABM
ÉtitiT
Таймер (Timer) ТтеЕеЛВМ C^timerl-
Переход
(Transition)
TrneScheAeABM
Простое состояние стейтчарта.
Наступление начальных событий определяется таймером по заданному расписанию.
Переход из гиперсостояния стейтчарта в простое состояние .
1 2 3 4
Количественные ресурсы
Документ, Информационный носитель (Document) DeXeG
Продукт/ Услуга (Product/
Service)
PeXeG
Document
Переменная (Variable) Var eEeABM
Product/Service
Переменные, используются для моделирования изменяющихся характеристик и для хранения результатов моделирования. Изменение количественных ресурсов происходит в состоянии стейтчарта.
Ресурсы мощности
Должность (Position) IposeleXeG
Организационная единица (Organizational unit) Iorg&I&X&G
Position
Класс активного объекта (Active Object)
AeABM
Поведение активного объекта описывается с помощью стейтчарта.
Правила ветвления
Правило ИЛИ (OR rule) RoreReXeG
Правило исключающего ИЛИ
(XOR rule) RxoreReXeG
Правило И (AND rule) RandeReXeG
Переход
(Transition)
TmeScheAeABM
При переходе из простого состояния стейтчарта в гиперсостояние, в методе перехода «Action» на языке Java программируется логика перехода к следующему состоянию: вычисляются вероятности наступления событий, происходит генерация заявки для её передачи агентам на обработку.
В качестве прототипа агентов используются организационные единицы еЕРС ( должность, организационная единица и другие). Заявки на обслуживание в агентной модели поступают при помощи таймеров (таким образом моделируются начальные события моделей еЕРС), которые генерируют их по заданному расписанию, а также сами агенты генерируют заявки друг для друга.
У каждого из агентов имеется своя очередь из заявок, которая обрабатывается, когда освобождается необходимое количество агентов. Поведение агента задается стейтчартом. Простые состояния стейтчарта соответствуют функциям еЕРС. Стейт-чарт агента состоит из одного гиперсостояния и нескольких простых состояний. В гиперсостоянии есть одно состояние - начальное, в котором агент
находится в самом начале моделирования, а также переходит после выполнения каждой функции.
Вероятностная логика правил ветвления (OR и XOR) реализуется в методе перехода «Action» на языке Java при смене состояний (простого состояния на гиперсостояние и наоборот). Синхронизация правила ветвления AND происходит при помощи таблиц, в которых записывается состояние выполненных функций или произошедших событий.
В качестве примера перевода рассмотрим модель бизнес-процесса «Формирование заказа на поставку товара» описанного в нотации eEPC (рисунок 1).
Определим численные характеристики объектов модели eEPC необходимые для имитационного моделирования (таблицы 2, 3, 4).
^Заказ-на^ поставку .^товара^
^Заказ-на^ поставку _^говара_
Маршрутный лист
Бланк заказа на поставку
Заказ на поставку товара передан в Руд ел выписки
Constant( 0000:00:01:00 )
- " ть 1
'запрос в СБ-
для проверки клиента на ДЗ
Клиент не имеет дебеторской задо
задолженности
Constant( 0000:00:20:00 )
Сформировать
заказ на отгрузку товара
Заказ на отгрузку товара сформирован
Constant( 0000:00:06:00 )
г "-ч
Переслать заказ отгрузку тов!1ра-
-на
Í Заказ на \ узку товара получен 1 спетчероМ
Constant( 0000:00:06:00 )
ЯФ
ормировать маршрутный лист
испетчер
Маршрутный лист сформирован
Клиент имеет дебиторскую задолженность
Constant( 0000:00:16:00 )
Отменить формировани заказа
е
Формирование заказа на поставку товара отменено
3
3
3
1
3
1
1
Рисунок 1 - Формирование заказа на поставку товара
Таблица 2 - Численные характеристики функций для имитационной модели
Функция Время выполне- Использование ресурсов,
ния, мин количество единиц
Сформировать запрос в СБ для проверки клиента на ДЗ 5 Отдел выписки - 1
Проверка клиента на дебиторскую задолженность 5 Служба безопасности - 1
Сформировать заказ на отгрузку товара 20 Отдел выписки - 1
Отменить формирование заказа 15 Отдел выписки - 1
Переслать заказ на отгрузку товара диспетчеру 5 Отдел выписки - 1
Сформировать маршрутный лист 5 Диспетчер - 1
Сформировать товарно-транспортные накладные 10 Диспетчер - 1
Таблица 3. Количество единиц ресурсов мощности для имитационной модели
Ресурс
Количество единиц ресурсов
Отдел выписки Служба безопасности Диспетчер
Таблица 4. Вероятности наступления событий в правиле ветвления XOR
Событие
Вероятность наступления
Клиент не имеет дебиторской задолженности Клиент имеет дебиторскую задолженность
0,95
0,05
Фрагменты созданной агентной имитационной модели AnyLogic на основе модели еЕРС представлены на рисунках 2, 3.
Для верификации полученной агентной имитационной модели AnyLogic, сравним её выходные данные с выходными данными имитационной модели встроенного в ARIS ToolSet имитатора ARIS тиМюп.
Рисунок 3 - Пример стейтчарта для программирования поведения агента
Сравним выходные данные по использованию ресурсов мощности после имитации в системах AnyLogic и ARIS Simulation за одинаковый модельный промежуток времени (8 модельных часов), и с одинаковыми входными данными после одинакового
- fijk Model
- fß agentjestl - ® Dispetcher Щ Code ■yl isldle ^ Statechart Main Ш Code + ffii animation V. DJimelnSyst) V; Disp_ntilizatio V. SB_ntili:ation V_iitili:ation Ö SB_depart Ш Code ^ isldle ^ Statechart É © V_depart Ш Code ^ isldle statechart Q Transact Experiments ^ Simulation
ФОРМИРОВАНИЕ ЗАКАЗА НА ПОСТАВКУ TO В A PA
- а ч а ль но e срытие "3:a к аз hö C^^ä ПЗ cHo ст^ - 2 töTpyДник а ■ поставку товара передан в отдел
в ы писки" генер иру ются та йм ер о к e B_d ер a rt" по: заданно ну расписанию
(^IritialEventl
О canceled Ordere OttnCount
Odc:
Qtr_al
Отд&л выписки -; 3 сотрудника v_deparf
Qqueue5B_depan QqueueSE_depar1:Lcn QqueueV_depart QqueueV_departLen QqueueDispetcher QqueueDispetcherLer
Диспетчер -1 сотрудник dispetcher1
QV_departBusy GSB_departBusy QDispetcherBusy
Рисунок 2 - Активные объекты и их окружение в агентной имитационной модели AnyLogic
количества экспериментов - всего проводилось 10 экспериментальных прогонов моделей в каждой из систем AnyLogic и ARIS Simulation (табл.5 - 8).
Таким образом, сравнивая сводные данные по использованию ресурсов мощности (табл. 7), а также сводные усреднённые данные по выполненным/
отменённым заказам (табл. 8) полученные для одной и той же преобразованной модели eEPC делаем вывод, что имитационная модель ARIS Simulation и модель AnyLogic, полученная посредством перевода по предложенному методу, показывают одинаковые результаты при одинаковых исходных данных.
Таблица 5 - Статистика по выполненным/отменённым заказам полученная с помощью AnyLogic для агентной имитационной модели
№ эксперимента/Ресурс 12 3 4 5 6 7 8 9 10 Среднее
Выполнено заказов 18 18 17 18 17 18 17 20 19 18 18
Отменено 3 1 4 1 335 2 53 3
Таблица 6 - Статистика по выполненным/отменённым заказам полученная с помощью ARIS Simulation
№ эксперимента/Ресурс 1 2 3 4 5 6 7 8 9 10 Среднее
Выполнено заказов 18 18 17 18 18 18 19 18 18 17 18
Отменено 1 1 1 0 1 0 1 2 1 2 1
Таблица 7 - Сводные усреднённые данные по использованию ресурсов мощности
ARIS Simulation, AnyLogic, % %
Отдел выписки 97,90 98,40
Служба безопасности 88,30 83,80
Диспетчер 55,60 58,40
Таблица 8 - Сводные усреднённые данные по выполненным/отменённым заказам
ARIS Simulation, % AnyLogic, %
Выполнено заказов 18 18
Отменено 1 3
Установлена возможность взаимной связи элементов модели в нотации еЕРС и агентной модели AnyLogic, разработан алгоритм трансляции. Проведенный эксперимент по трансляции модели из описа-
ния модели из нотации eEPC в агентную имитационную модель AnyLogic показал совпадение выходных данных по ключевых характеристикам исследуемых моделей в системах ARIS Simulation и AnyLogic.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК:
Доррер М.Г., Ланцев Е.А., Шаргаева А.И. Событийный анализ бизнес процессов в нотации eEPC // Тр. XV Международной ЭМ конференции по эвентологической математике и смежным вопросам / СФУ, НИИППБ, КГТЭИ. -Красноярск, 2011. - С. 89 - 96. Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов. - М.: Финансы и статистика, 2006. - 240 с. Карпов Ю. Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. - СПб.: БХВ-Петербург, 2006. - 400 с. Шеер А.В. Бизнес-процессы. Основные понятия. Теория.
Методы. - М.: Весть-МетаТехнология, 1999. - 182 с. Шеннон Р. Имитационное моделирование систем - искусство и наука . - М.: Мир, 1978. - 418 с.
Поступила в редакцию 01 ноября 2012 г. Принято к печати 07 декабря 2012 г.