Научная статья на тему 'Сравнительный анализ имитационного моделирования бизнеспроцессов при помощи агентного и процессного подходов'

Сравнительный анализ имитационного моделирования бизнеспроцессов при помощи агентного и процессного подходов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
267
50
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / SIMULATION MODELING / СОБЫТИЙНЫЙ АНАЛИЗ / EVENT ANALYSIS / АГЕНТНОЕ МОДЕЛИРОАНИЕ / ANYLOGIC / EEPC / ARIS / AGENT-BASED MODELING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Ланцев Е.А.

Целью работы является разработка метода трансляции формальной модели бизнес-процесса в нотации ARIS eEPC в дискретно-событийную и агентную имитационную модель AnyLogic. В работе приведено формальное описание моделей eEPC и AnyLogic, а также метод перевода из модели в нотации eEPC в имитационные модели AnyLogic на основе процессной и агентной парадигмы. Поставлен эксперимент по трансляции формальной модели eEPC в имитационные модели, AnyLogic на основе разработанных методов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The aim is to develop an algorithm broadcast formal business process model in ARIS eEPC notation in discrete event and agent-based simulation model AnyLogic. We give a formal description of the models and eEPC AnyLogic, and translation algorithm from the model in the notation eEPC in AnyLogic simulation models based on process-and agent-based paradigm. An experiment on the broadcast of the formal model in eEPC simulations, AnyLogic based algorithms.

Текст научной работы на тему «Сравнительный анализ имитационного моделирования бизнеспроцессов при помощи агентного и процессного подходов»

УДК 65.012.122

сравнительный анализ имитационного моделирования бизнес-процессов при помощи агентного и процессного подходов

Е.А. Ланцев

ФГБОУ ВПО «Сибирский государственный технологический университет», 660049, Красноярск, Россия

Целью работы является разработка метода трансляции формальной модели бизнес-процесса в нотации ARIS eEPC в дискретно-событийную и агентную имитационную модель AnyLogic. В работе приведено формальное описание моделей eEPC и AnyLogic, а также метод перевода из модели в нотации eEPC в имитационные модели AnyLogic на основе процессной и агентной парадигмы. Поставлен эксперимент по трансляции формальной модели eEPC в имитационные модели, AnyLogic на основе разработанных методов.

Ключевые слова: имитационное моделирование, событийный анализ, агентное моделироание, AnyLogic, eEPC, ARIS.

The aim is to develop an algorithm broadcast formal business process model in ARIS eEPC notation in discrete event and agent-based simulation model AnyLogic. We give a formal description of the models and eEPC AnyLogic, and translation algorithm from the model in the notation eEPC in AnyLogic simulation models based on process-and agent-based paradigm. An experiment on the broadcast of the formal model in eEPC simulations, AnyLogic based algorithms.

Eeywords: simulation modeling, event analysis, agent-based modeling, AnyLogic, eEPC, ARIS,

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

Принято различать три уровня абстракции имитационного моделирования: высокий (стратегический), средний (тактический) и низкий (оперативный). На самом низком уровне мы имеем так называемое "физическое" моделирование, где рассматриваются конкретные материальные объекты с их точными размерами, расстояниями, скоростями, ускорениями и временами. Таким образом, примерами могут быть модели систем управления, меха-тронных систем, уличное и пешеходное движение, моделируемое на микро-уровне и т.д. На среднем уровне абстракции абстрагируются от индивидуальных свойств объектов моделирования в основном рассматривая их потоки. Обычно на этом уровне характерны задачи создания моделей систем массового обслуживания и моделей бизнес-процессов [1]. Подходами, соответствующим низкому и среднему уровню абстракции, являются дискретно-событийное моделирование. Следует отметить, что агентные имитационные модели являются более универсальными по сравнению с дискретно-событийными, так как могут применяться на любом уровне абстракции. Агенты могут представлять пешеходов, автомобили или роботов в физическом пространстве, клиента или продавца на среднем уровне, или же конкурирующие компании на высоком.

Нотация ARIS eEPC расшифровывается как extended Event Driven Process Chain - расширенная нотация описания цепочки процесса, управляемого событиями [2] и предназначена для детального описания бизнес-процесса и отражает логику его выполнения. Бизнес-процесс в нотации eEPC представляет собой поток последовательно выполняемых работ, расположенных в порядке их выполнения. Модель бизнес-процесса представляет собой граф, состоящий из вершин - объектов модели, а также дуг (направленная связь) и рёбер (ненаправленная связь) - связей между ними, которые не только соединяют объекты модели, но и служат для определения отношения между ними.

Модель в нотации eEPC определим как [3]:

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 uSf u Sm , где Ss - непустое множество начальных событий, Sf - непустое множе-

ство конечных событий оп, Sm - множество событий внутри модели.

Множество правил ветвления R состоит из элементов множества Rxor u Ror и Rand , где Rxor

- множество правил ветвления типа XOR, где Ror

- множество правил ветвления типа OR, где Rand -множество правил ветвления типа AND.

Множество объектов типа I состоит из элементов Ipos и Iorg, где Ipos - множество объектов типа «Должность», Iorg - множество объектов типа «Организационная единица».

Множество объектов типа D состоит из элементов Ddoc и Dinf, где Ddoc - множество объектов типа «Документ», Dinf - множество объектов типа «Информационный объект».

Множество дуг Vn определяется как: Vn = { Vsf, Vfs , Vsr , Vrs , Vfr, Vrf, Vfp , Vpf }, где Vsf - множество дуг, имеющих направление от события к функции; Vfs - множество дуг, имеющих направление от функции к событию; Vsr -множество дуг, имеющих направление от события к объекту типа «правило ветвления»; Vrs - множество дуг, имеющих направление от объекта типа «правило ветвления» к событию; Vfr - множество дуг, имеющих направление от функции к событию типа «правило ветвления»; Vrf - множество дуг, имеющих направление от объекта типа «правило ветвления» к функции; Vfp - множество дуг, имеющих направление от функции к продукту/услуге; Vpf - множество дуг, имеющих направление от продукта/услуги к функции.

Множество рёбер Vr определяется как: Vr = {Vfi, Vfd},

где Vfi - множество рёбер соединяющих функции и должности, Vfd - множество рёбер соединяющих функции и документы.

Агентная модель в 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, Trn},

где Bc - непустое множество указателей начального состояния, St - непустое множество состояний, Trn - множество переходов.

Для моделирования бизнес-процессов в AnyLogic на основе процессного подхода будем пользоваться библиотекой дискретно-событийного моделирования Enterprise Library.

Определим дискретно-событийную модель AnyLogic как:

ALM = {Oper, Res, Var},

где: Oper = {Source, Sink, Exit, Enter, SelectOutput, Split} - множество объектов, пересылающих заявку, Res = {Resource, SeizeQ, Release, ProcessQ} -множество объектов для работы с ресурсами, Var

- множество переменных.

Сравнение методов трансляции графических элементов модели в нотации eEPC в дискретно-событийную и агентную имитационную модель AnyLogic приведено таблице 1.

Таблица 1 - Описание соответствия объектов модели нотации еЕРС имитационной модели на языке AnyLogic.

и конструкции процессной и агентнои

Объект Графи- Соответст Описание Соответствую Описание

модели ческое вующий элемента щий элемент элемента

eEPC обозначе- элемент AnyLogic AnyLogic AnyLogic

ние eEPC AnyLogic (процесс.) (агент.) (агент.)

(процесс.)

1 2 3 4 5 6

Функция (Function)

Событие (Event)

Function

Event

Event

Function

Function

Документ

(Docume

nt) Информационный носитель

( Event )

Document

ProcessQ ProcessQ

processQ * *

□ □

ГА\ imL

SeizeQ seizeQ.

Release

release

■ T ■ ■El-

Source

source

ШШП

Sink

sink

й^Ш

INTEEAR.R.

Variable

Qvariable

ERes

IP □

Состояние Простое

(State) состояние

Ste Scheme AB стейтчарта. M States

SeizeQeRes

занимает для

заявки

заданное

количество

ресурсов

определенног

о типа.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Releasee Res

освобождает

ресурсы,

ранее занятые

заявкой.

Переход Переход из

(Transition) гиперсостояния

TrneSch еАеАВ стейтчарта в

М простое

состояние.

SourceeOper Таймер Наступление

генерирует (Timer) начальных

заявки. TmeEgABM событий

■(^timerl определяется таймером по заданному расписанию.

Sinke Oper Transition Переход в

удаляет 1-4 начальное

поступающие состояние

заявки. стейтчарта для ожидания

Variable eVar Переменная Переменные,

переменные (Variable) используются

используются Var e Eg ABM для

для O^ariable моделирования

моделирования изменяющихся

изменяющихся характеристик и

характеристик для хранения результатов

Объект Графи- Соответст Описание Соответствую Описание

модели ческое вующий элемента щий элемент элемента

eEPC обозначе- элемент AnyLogic AnyLogic AnyLogic

ние eEPC AnyLogic (процесс.) (агент.) (агент.)

(процесс.)

1 2 3 4 5 6

Продукт / Услуга (Product/ Service)

Должно

сть (Position)

PfoHuct/Se

Position

Resource

resource

Организ

ационная Organizational

единица (Organiz ational unit)

и для хранения результатов моделирования

Resource <=Res

предоставляет

ресурсы,

которые

могут

понадобиться заявкам.

Класс активного объекта (Active Objeci) АеАВМ *

agent"

моделирования.

Изменение

количественных

ресурсов

происходит в

состоянии

стейтчарта.

Поведение

активного объекта

описывается с

помощью

стейтчарта.

Правило ИЛИ (OR rule)

Правило исключа ющего ИЛИ (XOR rule)

Function

SelectOut put

Event / Ever

selectOutput

■ ■ ■ ■aпод- ■

■ ж ■ *

ExiteOper принимает поступающие заявки.

Entere Oper добавляет в блок-схему заявки, созданные в других блоках

SelectOutput eOper

в зависимости от заданного условия пересылает заявку на один из выходных портов.

Transition 1-И

При переходе из

простого

состояния

стейтчарта в

гиперсостояние,

в методе

перехода

«Action» на

языке Java

программируетс

я логика

перехода к

следующему

состоянию:

вычисляются

вероятности

наступления

событий,

происходит

генерация заявки

для её передачи

агентам на

обработку.

i

Объект Графи- Соответст Описание Соответствую Описание

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

модели ческое вующий элемента щий элемент элемента

eEPC обозначе- элемент AnyLogic AnyLogic AnyLogic

ние eEPC AnyLogic (процесс.) (агент.) (агент.)

(процесс.)

1 2 3 4 5 6

ExiteOper принимает поступающие заявки.

Entere Oper

добавляет в

блок-схему

заявки,

созданные в

других блоках

Splite Oper

создает

заданное

число заявок

- копий

поступившей

заявки.

ExiteOper

принимает

поступающие

заявки.

Entere Oper добавляет в блок-схему заявки, созданные в других блоках

В качестве примера трансляции в имитационные товара», описанного в нотации eEPC (рисунок 1). модели по предложенным алгоритмам рассмотрим Зададим атрибуты объектов модели eEPC, необ-

модель бизнес-процесса «Сбор заявок на поставку ходимые для имитационного моделирования.

Таблица 2. Атрибуты функций модели eEPC

Функция Время выполнения, мин Использование ресурсов, количество единиц

Заполнить заявку на поставку товара 25 Торговый представитель - 1

Проверить заявку на поставку товара 10 Отдел выписки - 1

Уточнение заявки 5 Торговый представитель - 1

Проверить заявку на поставку товара полученную напрямую от 15 Отдел выписки - 1

клиента

Возврат заявки клиенту 1 Отдел выписки - 1

Exit

Exit

Enter

Enter

Правило И (AND rule)

Split

split

■ ■ ■

Event Event

Exit

Exit

Enter

Enter

Таблица 3 - Атрибуты ресурсов модели еЕРС

Ресурс Количество единиц ресурсов

Отдел выписки 3

Торговый представитель 5

Таблица 4 - Вероятности наступления событий в развилках

Функция Событие Вероятность

наступления

Исключающее ИЛИ после функции «Прове- Заявка, полученная от торгового представителя не- 0,10

рить заявку на поставку товара» корректна

Заявка, полученная от торгового представителя корректна 0,90

Исключающее ИЛИ после функции «Про- Заявка, полученная от клиента некорректна 0,05

верить заявку на поставку товара полученную Заявка, полученная от клиента корректна 0,95

напрямую от клиента»

Торговый представитель прибыл дляоформление заявки

Заявка на поставку

ктоюрГ^1

Constant( 0000:00:25:00 )

^Заполнить

1 Торговый

пр едставитель

Заявка на поставку

0,90

Заявка на поставку Ljo^pa^

Constant( 0000:00:05:00 ) 1

/По e-mail пришла заявк От клиента

Constant( 0000:00:15:00 )

Проверить заявку

-напОставку товара

полученную

0,05 0,95

Заявка корректн

Constant( 0000:00:00:01 )

Возврат 1

заявки

клиенту \

Заявка на поставку товара

Заявка на поставку

Уточнение заявки

Торговый представитель

Заявка принята в работу

5

3

3

5

Рисунок 1 - Модель бизнес-процесса «сбор заявок на поставку товара»

Фрагменты созданной имитационной модели AnyLogic на основе модели eEPC представлены на рисунках 2-4.

Project

Д X

- ^ Model I- gp agentjestl

- lí£l Main Ш Code

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

+ animation j?.". TP_utfaa& Vjjtilizatior

- ® Torg_pred ш Code yl isldle % statechart

- 8) V_depart Ш Code Yl isldle % statechart

Q Transact

- ^ Experiments

^sS Simulation

QO Transact [3 Main ffii Main @ v'_depart [§] Torg _pred ^Torgju ed. statechart

РЕГИСТРАЦИЯ ЗАЯВОК НА ПОСТДВКУТОВАРОВ

Начальное событие "ТоргоЕЫУ гредсгаЕ^тель прибы/дгя оформление ззяек к1 i-a- поставку товара"-^■InltlalJTP

Начальное событие '-'По- e-mail пришла заявка от клиента" (5;Iritial_email

ртдьп выписка - 3 сотрудника v_departI

GOrders_RetToCliert Qttn Counts Qtr_all OqueueTF_dep3rt OqueueTF_dep3rtLen QqueueV_depart QqueueV_departLer

OV_departBusy OTP_departBusy -----

Рисунок - 2 Активные объекты и их окружение агентной имитационной модели AnyLogic

ТоргоЕый предстаЕггель - 5 сотруДн^коЕ torg_pred":

Рис. 3. Стейтчарт для описания поведения агента «Торговый представитель»

Рис. 4. Стейтчарт для описания поведения агента «сотрудник отдела выписки»

Созданная процессная имитационная модель на языке AnyLogic представлена на рисунке 5.

Рисунок 5 - Процессная имитационная модель AnyLogic

Сравним выходные данные после имитации в часов) с одинаковыми входными данными после 10 системах AnyLogic и ARIS Simulation за одинако- экспериментальных прогонов моделей. Результаты вый модельный промежуток времени (8 модельных представлены в таблицах 5-7.

Таблица 5 - Статистика по использованию ресурсов мощности полученная с помощью AnyLogic для агентной имитационной модели, в %

№/Ресурс 1 2 3 4 5 6 7 8 9 10 Среднее

Отдел выписки 98 98 96 98 98 97 97 98 98 97 97,5

Торговый представитель 97 97 98 97 96 97 97 96 95 97 96,7

Таблица 6 - Статистика по использованию ресурсов мощности полученная с помощью AnyLogic для процессной

имитационной модели, в %

№/Ресурс 1 2 3 4 5 6 7 8 9 10 Среднее

Отдел выписки 99 98 99 99 99 98 99 99 99 99 98,8

Торговый представитель 98 99 98 98 98 99 98 98 98 98 98,2

Таблица 7. Статистика по использованию ресурсов мощности полученная с помощью ARIS Simulation, в %

№/Ресурс 1 2 3 4 5 6 7 8 9 10 Среднее

Отдел выписки 97 96 97 97 97 97 97 97 97 97 96,9

Торговый представитель 95 95 94 95 96 94 95 94 95 94 94,7

Таблица 8. Сводные данные по использованию ресурсов мощности, в %

ARIS simulation Модель AnyLogic

Процессная | Агентная

Отдел выписки 96,9 98,8 97,5

Торговый представитель 94,7 98,2 96,7

На основе результатов имитационных экспериментов по использованию ресурсов мощности (табл. 8) для одной и той же модели eEPC сделаем вывод, что имитационные модели ARIS Simulation и Anylogic (процессная и агентная), полученные посредством трансляции по предложенным алгоритмам, показывают одинаковые результаты при одинаковых исходных данных.

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

БИБЛИОГРАФИЧЕСКИй СПИСОК

Борщёв А. От системной динамики и традиционного ИМ - к практическим агентным моделям: причины, технология, инструменты. - Электрон. Дан. - Режим доступа: www.gpss.ru/ paper/borshevarc.pdf, с. 3.

Доррер М.Г., Ланцев Е.А., Шаргаева А.И. Событийный анализ бизнес процессов в нотации еЕРС // Тр. XV Международной ЭМ конференции по эвентологической математике и смежным вопросам / СФУ НИИППБ, КГТЭИ. - Красноярск, 2011. - с. 89 - 96

Калянов Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов: Учебное пособие. М.: Финансы и статистика, 2006. -240 с.

Карпов Ю. Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5 — СПб: БХВ-Петербург, 2006. — 400 с.

Шеер, А.-В. Бизнес-процессы. Основные понятия. Теория. Методы / А.-В.Шеер.- М.: Весть-МетаТехнология, 1999. - 182 с.

Поступила в редакцию 01 ноября 2012 г. Принято к печати 07 декабря 2012 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.