здании. Кроме того, оказывается возможным решение обратной задачи - выработки управленческих решений по оснащению объектов современными средствами спасения и эвакуации с высоты
список л
1. Брушлинский, Н.Н. Динамика и анализ рисков гибели детей и взрослых при пожарах в РФ за 1991-2008 гг. [Текст] / Н.Н. Брушлинский, С.В. Соколов, Е.А. Клепко [и др.] // Пожары и чрезвычайные ситуации: предотвращение, ликвидация. -2009. -№ 4. -С.21-26.
2. Технический регламент о требованиях пожарной безопасности [Текст] / Федеральный закон от
22.07.2008 №123-Ф3.
3. Об утверждении методики определения расчетных величин пожарного риска в зданиях, сооружениях и строениях различных классов функциональной пожарной опасности [Текст] / Приказ МЧС России от
30.06.2009 г. №382.
4. Матвеев, А.В. Системное моделирование управления риском возникновения чрезвычайных ситуаций: Дис. ...канд. техн. наук [Текст] / А.В. Матвеев. -СПб.: СПб УГПС МЧС России, 2007.
5. Матвеев, А.В. Методические подходы к анализу пожарного риска в зданиях [Текст] / А.В. Матвеев //
с целью обеспечения на объектах требуемого значения индивидуального пожарного риска.
Работа выполнена при поддержке Совета по грантам Президента РФ, грант № МК-15.2011.10.
гературь1
Матер. XV Всерос. науч.-метод. конф. Фундаментальные исследования и инновации в национальных исследовательских университетах: 12-13 мая 2011. -СПб.: Стратегия будущего. - 2011. -Т. 3.
6. Матвеев, А.В. Анализ уровня пожарной безопасности образовательных учреждений в Санкт-Петербурге [Текст] / А.В. Матвеев, М.В. Иванов // Матер. XIII Всерос. конф. Фундаментальные исследования и инновации в технических университетах по проблемам науки и высшей школы: 13-14 мая 2009. -СПб., 2009.
7. Yung, D. Principles of Fire Risk Assessment in Buildings [Text] / D. Yung. -N.Y.: J. Wiley & Sons, 2008.
8. Холщевников, В.В. Натурные наблюдения людских потоков: Учеб. пособие [Текст] / В.В. Холщев-никйов, Д.А. Самошин, И.И. Исаевич. -М.: Академия ГПС МЧС России, 2009. -191 с.
9. Пожарная безопасность зданий и сооружений [Текст] / СНиП 21-01-97*.
УДК 004.021
И.А. Ходырев, С.В. Попова
СРАВНЕНИЕ АЛГОРИТМОВ PROCESS MINING ДЛЯ ЗАДАЧИ ПОИСКА МОДЕЛЕЙ ПРОЦЕССОВ
Исследование процессов (process mining) - достаточно молодая область информатики [1]. Ее центральная задача - построение и верификация моделей процессов по журналам событий информационных систем. Область применения process mining в домене бизнес-процессов изображена на рис. 1.
На сегодняшний день существует множество алгоритмов по извлечению моделей процессов из журналов событий, описание большинства из которых можно найти в работе [2]. Наиболее широко из них используются следующие: а-алгоритм Ван Дер Аалста [3] («а»), эвристический алгоритм Вейтерса [4] («Н») и генетический алгоритм Медейрос [2] («G»). Характеристики
этих алгоритмов обычно комментируются на качественном уровне [2-5, 9], но в литературе мало внимания уделяется их численному сравнению. Известна единственная статья [5], посвященная данному вопросу, в которой предложено численное сравнение пяти алгоритмов, включая три упомянутых выше. Но их анализ представляется неполным. В нем отсутствует существенный для практического использования показатель времени работы; модели процессов фиксированы по размеру, что не позволяет оценить изменение качества результатов при увеличении сложности моделей; отсутствует тестирование на реальных журналах событий.
Рис. 1. Область применения process mining
В данной статье решена задача численного сравнения a, H и G алгоритмов process mining по следующим критериям: время работы; соответствие модели журналу событий; адекватность модели. Сравнение проведено на основании тестов над синтетическими моделями и реальными журналами событий.
Используемые понятия и обозначения. N - множество натуральных чисел. Комплектом над множеством S назовем отображение вида B(S): S ^ N , которое ставит в соответствие каждому элементу множества S натуральное число. Заметим, что любое множество может быть записано в виде комплекта, в котором каждому элементу поставлена в соответствие единица. Кортежем или последовательностью над множеством S назовем отображением вида ct(S) е {1, ..., n} ^ S , где n - длина кортежа. Множество всех множеств над S обозначим как 2S, множество всех комплектов над S - NS, множество всех кортежей над множеством S - S*. Мощностью множества |S| назовем число элементов в этом множестве. Для комплектов определим отношение < (B1 (S), B2 (S)) ^ Vs е S, B1 (s) < B2 (s).
Базовой единицей информации, используемой в дисциплине Исследование процессов, является «событие». Под событием (e) понимается любое изменение состояния процесса, которое фиксируется информационной системой. e е E , где E - множество всех событий.
В статье используются три связанных понятия: экземпляр процесса (ЭП), журнал событий (лог) и модель процесса (МП). Под ЭП понимается кортеж событий ст е Е . В ЭП последовательно накапливаются события, фиксируемые информационной системой предприятия, происходящие в рамках некоторого процесса. Например, если в качестве процесса выступает «ремонт оборудования», то экземплярами этого процесса могут быть «ремонт котла № 1», «ремонт конвейерной линии» и др., каждый из которых включает свои последовательности реально произошедших событий. ЭП могут быть завершенными или незавершенными. В первом случае предполагается, что произошло событие, после которого других событий поступать не будет, во втором - процесс накопления событий еще не закончен.
Логом будем называть комплект ЭП I е В(Е ), Ь - множество всех логов. В логах накапливается информация обо всех протекающих ЭП как завершенных, так и незавершенных. В данной статье определяем лог как комплект, поскольку для рассматриваемых алгоритмов важны количества различных ЭП, записанных в лог, в то время как порядок следования ЭП не важен.
Под МП понимаем инструмент для задания подмножества множества всех кортежей событий, М с Е . МП определяет множество допустимых ЭП для данного процесса. В настоящей статье для
задания МП используются маркированные сети Петри, определяемые далее.
Сеть Петри [3] (СП) - это ориентированный двудольный граф СП = (P, T, F, V, R), где P - конечное множество мест, T - конечное множество переходов, при этом P n T = 0, F ç (P x T) u (T x P) - множество направленных дуг, называемое отношением маршрутизации, V - множество строковых имен, в котором присутствует пустое имя "", а R(T) : T ^ V - функция именования переходов. Переход t называется скрытым, если R(t) = "", в противном случае переход называется явным.
Для описания динамических процессов используется понятие маркированной сети Петри МСП = (СП, М), где СП = (P, T, F, V, R) и M е B(P) - комплект над множеством мест, также называемый маркировкой. Каждый элемент этого комплекта назовем жетоном. Множество всех МСП обозначим Q.
Назовем элементы множества P u T узлами. Узел х является входящим узлом для y, если (х, y) е F . Множество входящих узлов для y задается как • y = {х | (х, y) е F}. Узел х является исходящим узлом для y, если (y, х) е F. Множество исходящих узлов для y задается как
y • = {х |( y, х) е F}.
Переход t е T является разрешенным, что обозначается как (СП, М) [t^ , тогда и только тогда, когда •t и М находятся в отношении < , то есть •t < M . Применение этого отношения возможно, поскольку, как упоминалось выше, любое множество может быть представлено в виде комплекта.
Чтобы описывать смену состояний для МСП вводится правило срабатывания. Правило срабатывания _ [ ç Q x T x Q - это отношение, выполняемое для любых (СП, M) е N и t е T если (СП, М) [t) ^ (СП, М) [t) (СП, (М\ • t) u t^). Последовательностью срабатываний переходов (ПСП) для МСП (СП, М0) будем называть кортеж ст = tj,t2, ..., tn в том случае, если Зп е N такое, что для маркировок Mp M2, ..., Mn и переходов tj, t2,..., tn для Vi е N и 0 < i < n выполняется (СП, М,) [О и M/= (M/ \ •t/+j) u tt• . В данной работе под МП будем понимать МСП (СП, М0), у которой множество строковых имен V состоит из названий событий из лога. М0 для такой модели будем называть начальной маркировкой. Достижимой из М0 маркировкой М назовем такую, для которой существует ПСП, приводящая из
М0 в М Маркировка называется конечной М^ тогда и только тогда, когда в ней не существует разрешенных переходов. М0^ будем обозначать конечную маркировку, которая достижима из начальной.
Алгоритмы process mining предназначены для извлечения МП из логов. Функция извлечения МП определяется в данной статье следующим образом: nA (L): L—>N, где A - название алгоритма.
Критерии сравнения. Для сравнения алгоритмов выбраны три критерия.
1. Время работы алгоритма (далее - TA). Это время, которое требуется алгоритму для окончания своей работы. Окончание работы идентифицируется по-разному для алгоритмов а, Н и G. Для а и Н работа алгоритма оканчивается, когда получена итоговая МП. Для G, поскольку он реализует стратегию перебора и теоретически может производить поиск очень долго, в данной работе окончанием считается достижение сотого поколения моделей, а полученной МП - наилучшая модель из сотого поколения. TA измеряется в секундах.
2. Соответствие модели журналам событий (далее - f )[6]. Этот критерий позволяет оценить насколько точно полученная в результате работы алгоритмов МП отражает ЭП исходного лога. Расчет этого критерия осуществляется следующим образом:
1) Берется исходный лог l, состоящий из комплекта ЭП l е B(E').
2) Из l формируется множество I по правилу: I = (ст | ст е /}, определяется мощность этого множества k = |l|.
3) Для каждого /-го ЭП ст. из I, где 1 < / < k, считается число раз, которое оно встретилось в логе nt = 1(ст.).
4) Для каждого /-го ЭП ст.. выполняется ПСП по полученной МП. Поскольку МП не всегда точно отражает лог, в процессе выполнения ПСП жетонов для удовлетворения правилу срабатывания может не хватать. Недостающие жетоны в этом случае добавляются и их число суммируется. Полученную сумму обозначим как mt. После выполнения ПСП вследствие неточности модели могут остаться лишние жетоны. Обозначим их сумму как r . В процессе выполнения ПСП число порожденных по правилу срабатывания жетонов обозначим ci, а число поглощенных по правилу срабатывания жетонов обозначим .
5) Критерий
вается
(
1
+ — 2
1 -
по
I
nr.
соответствия
(
. 1 . формуле f =— 1 -
Л 2
рассчиты-
Ек Л n.m.
i=1 • •
I k=,
n.w.
Zn.c.
1=1 ' '
Из формулы видно,
/
что
0 < f < 1, при этом чем ближезначение к нулю, тем меньше МП соответствует логу, и наоборот, чем ближе она к единице, тем соответствие логу больше.
3. Адекватность модели (далее - aaB) [6]. Критерий адекватности модели характеризует насколько точно модель отражает именно конкретный лог. Так, для одного и того же лога две разных модели могут иметь одинаковое значение соответствия. В этом случае более качественной моделью должна быть признана та, которая допускает как можно меньше других ЭП, помимо тех, которые встречаются в логе.
Расчет этого критерия осуществляется по той же схеме, что и расчет критерия соответствия до п. 3 включительно, а далее продолжается следующим образом:
4) Для каждого z'-го ЭП ot выполняется ПСП по полученной МП. При каждом срабатывании перехода фиксируется число разрешенных в данной маркировке переходов, которое затем суммируется. Обозначим сумму числа разрешенных переходов x.
5) По МП вычисляется количество явных переходов, обозначаемое как m.
6) Критерий адекватности рассчитывается
Ik n x -1)
по формуле aaB = 1--—-^-. Из форму-
(m - 1) -I _=! n лы видно, что 0 < aaB <1, при этом чем ближе значение к нулю, тем больше логов МП допускает помимо основного, и наоборот, чем оно ближе к единице, тем модель менее свободна и больше отражает те данные, на которых построена.
Данные для синтетических экспериментов. Проверка распознавания алгоритмами основных конструкций, используемых в МП, проведена на синтетических логах, сформированных в соответствии с синтетическими моделями. Рассматривалось распознавание следующих пяти конструкций маршрутизации процессов: параллельность (далее - Par), скрытые события - пропуск (далее -IE-Skip), скрытые события - маршрутизация (IE-SplitJoin), выбор (далее - Choice), короткий
цикл (далее - SLoop). Схемы указанных моделей представлены на рис. 2. Кроме того, изучалось влияние изменения сложности моделей на результаты экспериментов, поэтому для генерации синтетических логов использованы пятнадцать МП: по три порядка сложности для каждой из пяти исследуемых конструкций. Пример разных по сложности МП для конструкции Choice представлен на рис. 3.
Для порождения моделей с разной сложностью использован следующий алгоритм:
1) определить исходную МП с нулевой сложностью (МП-0) в терминах МСП, т. е. МП = ((P, T, F ,V, Л),М). Эта модель должна удовлетворять условию: Зд,p2 е P такие, что
М = 0, |p2 • = 0 = {д},М№ = {/>2};
2) в МП-0 определяется множество TR сГ переходов, которые используются для увеличения сложности МП так, что Vt е TR : ]•?] = 1, \t • = 1 (на рис. 2 и 3 названия t е TR подчеркнуты);
3) определяется целевой порядок сложности c е N;
4) если c > 0, то перейти к п. 5, иначе закончить;
5) сделать замену каждого перехода t е TR на МП-0 так, чтобы px из МП-0 совпало с •t, а Р2 совпало с t •, не сохраняя при этом маркировку вставленной МП-0, а также выполнить переименование всех явных переходов вставленной МП-0, добавив префикс: R(t)+"_", где + - операция конкатенации строк, а R - функция именования переходов;
6) Положить c = c -1, перейти к п. 4.
Синтетический лог на основе МП создается
по следующему алгоритму:
1) определяется требуемое число ЭП g е N;
2) если g > 0, перейти к п. 3, иначе закончить;
3) из M0 порождать ПСП пока не достигнуто MQZ, при этом если в некоторой маркировке M^, несколько переходов является разрешенными, то из них с равной вероятностью выбирается один, который в случае если он явный, присоединяется к ПСП;
4) сохранить полученную ПСП как завершенный ЭП в лог;
5) положить g = g -1, перейти к п. 2.
Для всех пятнадцати МП создаются два лога: рабочий lW и тестовый l Методика формирования логов идентична и описана выше, при этом логи различаются по функциям: lW предназначен
4
Рис. 2. Схемы МП для конструкций: Par, IE-Skip, IE-SplitJoin, Choice, SLoop
для формирования моделей алгоритмами, т. е. для ПА (¡ш), а 1Т используется для расчета критериев по полученным моделям. Для каждого лога было взято g = 500.
Реальные данные. Реальные логи были взяты для процессов продажи (далее - Са1^е11) и ремонта (далее - Car_Rep) автомобилей автоцентра, а также для процессов обслуживания обору-
дования (далее - Fac_Rep) парфюмерного завода. В табл. 1 представлены основные параметры реальных логов: период времени, за которое получен лог (ПФ); число ЭП в логе (Всего ЭП); число различных ЭП в логе (Разл. ЭП); число событий в логе (Всего соб.); число событий с различными именами (Разл. соб.).
Во все ЭП в реальные логи добавлены фик-
Таблица 1
Характеристики реальных журналов событий
Car_Sell Car_Rep Fac_Rep
ПФ 6 мес. 4 г. и 3 мес. 2 г.
Всего ЭП 6638 1202 (случайно выбран 1 % от общего числа за указанный период) 3391
Разл. ЭП 25 28 29
Всего соб. 28977 8079 25630
Разл. соб. 7 7 10
Рис. 3. I - исходная модель с нулевым порядком сложности; II - модель первого порядка сложности, полученная из I; III - модель второго порядка сложности, полученная из II
тивные события «START», предшествующие любому событию, и «END», завершающие любой ЭП, поскольку генетический алгоритм требует обязательного наличия идентичных стартового и конечного событий для всех экземпляров процесса [2]. Для реальных логов выполнено формирование рабочего lW и тестового наборов lT данных, путем разбиения исходного журнала событий в пропорции 50/50 %. Копии логов, использованных в экспериментах, можно найти
в [7].
Получение значений критериев. Значения критериев для каждой синтетической и реальной МП (описаны в разделе «Критерии сравнения») вычисляются по следующему алгоритму:
1) положить ex е N равным требуемому числу экспериментов, положить i = 1;
2) если i < ex , перейти к п. 3, иначе перейти к п. 6;
3) произвести построение МПа = na (lW), МП= nH (lW), МПа. = nG (lW) для алгоритмов a,
Н и G соответственно и сохранить абсолютное время работы каждого алгоритма ТА1 в секундах. Для Н и G дополнительно производится конвертация полученной модели в сеть Петри;
4) для каждой полученной модели для данного эксперимента рассчитываются критериии ааВ. с использованием I'
5) положить i = i + 1, перейти к п. 2;
6) рассчитать среднее по формуле y =
Zex
i=1 y
ex
где вместо y подставляются критерии TA, f и aaB.
Во всех экспериментах ex = 10.
Использованные для тестирования средства. Для создания синтетических журналов событий реализовано программное средство на языке программирования Java. Для получения МП по логам использовано программное средство ProM [8], в котором присутствуют реализации требуемых алгоритмов: a-miner, heuristic miner и genetic miner для a, эвристического и генетического алгоритмов соответственно. Эксперименты прово-
Таблица 2
Результаты экспериментов над синтетическими журналами событий
МП-0 МП-1 МП-2
a G H a G H a G H
f 1 1 1 1 1 1 0,94 0,88 1
13 рц aaB 1 1 1 1 0,90 1 1 0,54 1
TA 0,39 7,55 0,40 0,50 197,40 1,22 0,69 344 4,42
а f 0,89 1 1 0,92 1 1 0,94 0,95 1
¡>0 ■ W aaB 1 1 1 1 1 1 1 0,77 1
TA 0,54 1,33 0,50 0,62 8,6 0,65 0,39 763,10 0,70
13 'о f 1 1 1 0,88 0,97 0,97 0,84 0,94 0,97
"а ¡>0 aaB 1 0,75 1 1 0,75 1 1 0,66 1
W TA 0,37 18,30 0,41 0,58 481,97 0,36 0,35 540,55 0,35
f 1 1 1 1 1 1 1 0,99 1
Choic< aaB 1 1 1 1 1 1 1 0,88 1
TA 0,40 1,26 0,56 0,60 9,30 0,52 0,40 786,90 0,79
f 1 1 1 1 1 1 1 0,88 0,97
о о bJ ¡>0 aaB 1 0,62 0,62 1 0,75 0,75 1 0,56 0,71
TA 0,41 1,39 0,32 0,48 54,52 0,79 0,69 1944,70 2,66
дились с параметрами по умолчанию для этих алгоритмов.
Для среды Prom 6 на языке Java написан плагин, позволяющий оценивать время работы ука-
занных алгоритмов. Также ProM предоставляет плагин Conformance Checker, в котором реализованы алгоритмы для расчета критериев соответствия модели журналам событий, и адекватности
Таблица 3
Результаты экспериментов над реальными журналами событий
Car_Sell Car_Rep Fac_Rep
a G H a G H a G H
f 0,62 0,99 0,94 0,68 1 0,90 0,73 0,96 0,99
aaB 1 0,63 0,41 1 0,67 0,48 1 0,61 0,76
TA 1,18 2278,30 1,97 3,23 4719,90 5,66 2,01 2854,70 3,25
модели. Этот плагин использован для расчета соответствующих критериев при оценке качества моделей.
Тестирование проводилось на ПК ASUS N60DP, с процессором AMD Turion II Dual - Core Mobile M500 2,20 ГГц; 4 Гб ОЗУ; под управлением операционной системы Windows 7 Home Premium Edition SP1.
Результаты экспериментов. Результаты экспериментов над синтетическими логами представлены в табл. 2; над реальными - в табл. 3, полученные алгоритмами модели можно найти в [7].
В синтетических тестах результаты a алгоритма оказываются наилучшими во всех случаях, за исключением моделей Par, IE-Skip и IE-SplitJoin. Это связано с тем, что a алгоритм не имеет возможности обнаруживать скрытые переходы, что и повлияло на результаты для моделей IE-Skip и IE-SplitJoin, которые содержат их. Однако на реальных данных a алгоритм показал наихудшие результаты по параметру f среди остальных. Это связано с тем, что в реальных данных, с одной стороны, присутствует шум, а, с другой, могут присутствовать ситуации, которые невозможно смоделировать без скрытых переходов. Невозможность работать с шумом и скрытыми переходами существенно ухудшает показатели a алгоритма.
Стоит отметить, что a алгоритм всегда создает адекватные модели, т. е. модели, не допускающие иного поведения, чем поведение из лога, и, кроме того, он работает наиболее быстро по сравнению с другими рассмотренными алгоритмами.
G алгоритм в синтетических тестах в целом
показал наихудшие результаты. Это связано, во-первых, с небольшим числом ЭП в синтетических логах, а, во-вторых, с ограничением на количество популяций (максимум 100 популяций). Тем не менее, на реальных данных G алгоритм показывает наилучшие результаты по параметру /, но так же, как и в синтетических тестах, существенно проигрывает по времени работы. Это связано с тем, что, с одной стороны, в реальных логах существенно больше информации, и, с другой, что в отличие от остальных алгоритмов G производит последовательный перебор моделей, а не синтез единственной модели на основе априорных допущений.
Н алгоритм показывает наилучшие результаты в синтетических тестах в большинстве случаев. На реальных данных он несколько уступает G алгоритму по параметру / в двух тестах и незначительно превосходит его в третьем. При этом адекватность моделей, полученных Н алгоритмом, - низкая по сравнению с генетическим алгоритмом. С другой стороны, преимуществом Н алгоритма является время работы, которое сравнимо со временем работы а алгоритма.
Эксперименты показали, что наиболее целесообразным для практического использования будет комбинированный алгоритм на основе Н и G, в котором для G будет установлено временное ограничение на получение МП, и итоговая МП выбирается после сравнения наилучшей МП, полученной за отведенное время G, с МП, полученной с помощью Н.
список литературы
1. van der Aalst, W.M.P. Workow Mining: A Survey of Issues and Approaches [Text] / van der Aalst W.M.P., B.F. van Dongen, J. Herbst // Data and Knowledge Engineering. -2003. -№ 47 (2). -P. 237-267.
2. A.K.A. de Medeiros. Genetic Process Mining [Text] / de Medeiros A.K.A. // PhD Thesis. -Technische Universiteit Eindhoven, Eindhoven, The Netherlands, 2006.
3. van derAalst, W.M.P. Workow Mining: Discovering Process Models from Event Logs [Text] / W.M.P. van der Aalst, A.J.M.M. Weijters, L. Maruster // IEEE Transactions on Knowledge and Data Engineering. -2004. -№ 16 (9). -P. 1128-1142.
4. Weijters A.J.M.M. Process Mining: Discovering Workflow Models from Event-Based Data [Text] /
A.J.M.M. Weijters, W.M.P. van der Aalst // Proc. of the 13 th Belgium-Netherlands Conf. on Artificial Intelligence (BNAIC 2001). -BNVKI, Maastricht, 2001. -P. 283-290.
5. Weber, P. A framework for comparing process mining algorithms [Text] / P. Weber, B. Bordbar, P. Tino [et al.] // GCC Conf. and Exhibition (GCC). -2011. -P. 625-628.
6. Баскаков, Ю.Н. Алгоритмы верификации выполнения процессов в информационных системах по эталонным моделям [Текст] / Ю.Н. Баскаков, И.А. Ходырев // Междунар. конф. по мягким вычислениям и измерениям (SCM'2009). -СПб., 2009.
7. [Электронный ресурс] / Режим доступа: http:// dl.dropbox.com/u/11080654/_process_mining_testing.zip
8. van der Aalst, W.M.P. ProM 4.0: Comprehensive Support for Real Process Analysis [Text] / W.M.P. van der Aalst; Eds. J. Kleijn, A. Yakovlev [et al.] // Application and Theory of Petri Nets and Other Models of Concurrency (ICATPN 2007). -Springer-Verlag, Berlin, 2007. -Vol. 4546. -P. 484-494.
9. van der Aalst, W.M.P. Process Mining: A Two-Step Approach to Balance Between Underfitting and Overfitting [Text] / W.M.P. van der Aalst, V. Rubin, H.M.W. Verbeek [et al.] // Software and Systems Modelling (SoSyM). -2010. -Vol. 9 (1). -P. 87-111.