=Paper= {{Paper |id=Vol-3673/paper3 |storemode=property |title=Simulating Event Logs from Object Lifecycle Processes (short paper) |pdfUrl=https://ceur-ws.org/Vol-3673/paper3.pdf |volume=Vol-3673 |authors=Marius Breitmayer,Lisa Arnold,Manfred Reichert |dblpUrl=https://dblp.org/rec/conf/zeus/Breitmayer0R24 }} ==Simulating Event Logs from Object Lifecycle Processes (short paper)== https://ceur-ws.org/Vol-3673/paper3.pdf
                                Simulating Event Logs from Object Lifecycle
                                Processes
                                Marius Breitmayer1,∗ , Lisa Arnold1 and Manfred Reichert1
                                1
                                    Institute of Databases and Information Systems, Ulm University, Germany


                                              Abstract
                                              Process Mining leverages event data to discover, analyze, and optimize business processes. Consequently,
                                              the availability and quality of event logs is crucial for the applicability as well as the development of
                                              process mining algorithms. However, obtaining such event logs from real-world scenarios is limited and
                                              costly. In this paper, we present an approach for simulating event logs from object lifecycle processes.
                                              Overall, the approach is capable of simulating event logs for object lifecycle processes that may be used
                                              to validate process mining algorithms.

                                              Keywords
                                              Event Log Simulation, Object-centric Processes, Object Lifecycle Processes, Flexibility




                                1. Introduction
                                Process mining is becoming more and more important for enterprises, as it provides a transparent
                                and data-driven view on operational workflows while also offering insights into inefficiencies,
                                bottlenecks as well as possible compliance issues. In general, process mining leverages event data
                                to discover process models, check the conformance between models and event logs, or enhance
                                the model [1]. In real-world scenarios, such event logs are often unavailable, inappropriate, or
                                costly to obtain, consequently hindering the development and testing of new process mining
                                algorithms [2].
                                   In other domains, simulation provides a possible solution towards this problem by substituting
                                or complementing real-world with simulated data [3, 4, 5].
                                   In object-centric scenarios, the behavior of objects is defined in terms of object lifecycle
                                processes. At runtime, however, objects may deviate from the behavior specified in object
                                lifecycle processes due to flexibility [6]. Such deviations may include removing or adding both
                                states and steps as well as executing them in a different order. Consequently, the simulation of
                                event logs must account for such flexible behavior to ensure that the event logs are comparable
                                to their real-world counterparts.
                                   Overall, the simulation of event logs from object lifecycle processes presented in this paper
                                facilitates the application and testing of process mining algorithms in object-centric scenarios
                                by providing suitable event logs.

                                16th Central European Workshop on Services and their Composition, February 29– June 01, 2024, Ulm, Germany
                                ∗
                                    Corresponding author.
                                Envelope-Open marius.breitmayer@uni-ulm.de (M. Breitmayer); lisa.arnold@uni-ulm.de (L. Arnold);
                                manfred.reichert@uni-ulm.de (M. Reichert)
                                Orcid 0000-0003-1572-4573 (M. Breitmayer); 0000-0002-2358-2571 (L. Arnold); 0000-0003-2536-4153 (M. Reichert)
                                            © 2022 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).




                                S. Böhm and D. Lübke (Eds.): 16th ZEUS Workshop, ZEUS 2024, Ulm, Germany, 29
                                February–1 March 2024, published at http://ceur-ws.org



CEUR
                  ceur-ws.org
Workshop      ISSN 1613-0073
Proceedings
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


  The paper is structured as follows: Section 2 introduces object lifecycle processes. Section 3
describes the approach for simulating event logs. Section 4 evaluates the presented approach,
and Section 5 discusses related work. Finally, Section 6 summarizes the paper and provides an
outlook.


2. Fundamentals
In object-centric processes, the behavior of objects is specified in terms of a state-based object
lifecycle process. Fig. 1 depicts the object lifecycle process for object Submission. An object
lifecycle process comprises the states of the object as well as state transitions (see states Edit,
Submit, Rate, and Rated in Fig. 1). Each state, in turn, comprises several steps (see Exercise,
E-Mail, and Files in State Edit in Fig. 1) defining which object attributes are required before
completing a state and transition to the next one. Note that we also support predicate steps to
enable different execution paths through the object lifecycle process.

                                    State
 Attributes                                              Backwards Transition
                      Object
Exercise : Relation                                      Edit                                 Submit           Rate     Rated


E-Mail : String                             Exercise     E-Mail            Files                               Points
                       Submission

Files: FileList
                       Lifecycle
Points: Number         Process                                    External Transition
                                    Step                                                Automatic Transition
                                            Transition




Figure 1: (simplified) Object Lifecycle Process Object Submission


    During process execution, multiple objects (of the same or different type) may exist, and
their instances are dynamically generated [7]. For each of these objects, their different object
behavior may be observed on both the state level (i.e., how does an object change between its
states), and the step level (i.e., how is data provided). Tab. 1 summarizes the guided, tolerated,
and deviating behavior on both granularity levels.
    On the state level, guided behavior corresponds to the object reaching its end state without
returning to a previous state using a backwards transition. Tolerated behavior, in turn, includes
backwards transitions. Deviating behavior on the state level is associated with skipping states
(i.e., non-reachable) or reaching states not specified in the object lifecycle process model.
    On the step level, guided behavior is observed if the steps of a state are provided in the
order specified by the object lifecycle process. Tolerated behavior, in turn, only requires that all
steps are provided (i.e., the order is not relevant). Deviating behavior on the step level includes
skipping steps (i.e., not providing certain attributes) or providing additional steps in a particular
state of the object lifecycle process model.




                                                                                                                                15
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


Table 1
Object Behavior on state and step level [8]
 Level       Behavior       Description
             Guided         The end state is reached without following any backwards transitions.
 State       Tolerated      The end state is reached, but backwards transitions were chosen.
             Deviating      The lifecycle transitions to a non-reachable or unspecified state during its execution.
             Guided         All steps of a lifecycle state are provided according to the pre-specified order.
 Step        Tolerated      All steps have been filled prior to state completion.
             Deviating      Steps have been skipped or additional steps have been added.


3. Event Log Simulation
The event log simulation must be capable of simulating guided, tolerated, and deviating behavior
on both the state as well as the step level (see Tab. 1). To be more precise, simulated event
logs must be able to represent all 3 behaviors regarding the state as well as the step level. Due
to their well-defined syntax and replay capabilities, we decided to represent object lifecycle
processes in terms of Petri nets [9].

3.1. Object Lifecycle Process Representation
We enable the simulation of different behavior by representing each object lifecycle process
as two Petri nets. One of these Petri nets corresponds to the guided behavior. In other words,
this Petri net only allows for the object lifecycle process to be executed exactly as modeled.
The other Petri net represents the tolerated behavior by allowing for additional (tolerated)
behavior. This behavior includes, for example, providing object attributes in an order different
from the one specified by the object lifecycle process model, while also ensuring that all required
attributes are provided. The representation of object lifecycle processes in terms of Petri nets
enables the application of token-based simulation on both nets.
   Figs. 2 and 3 depict two Petri nets generated for state Edit of object Submission (see Fig. 1).
In a nutshell, we represent guided behavior by accounting for the sequence in which steps (and
states) are modeled in the object lifecycle process, whereas we allow for tolerated behavior
using an AND-split syntax within the state. Note that, we only depict the guided and tolerated
nets for state Edit of object Submission, however, we concatenate the guided and tolerated Petri
nets for each state to represent the state level and include backwards transitions if necessary.


        Exercise                                                                   Exercise



                                                                                                  Edit to
                   E-Mail         Files                                             E-Mail
                                                                                                  Submit



                                          Edit to
                                                                                    Files
                                          Submit




Figure 2: Guided Petri Net State Edit                         Figure 3: Tolerated Petri Net State Edit




                                                                                                            16
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


3.2. Trace Generation
After representing object lifecycle processes, we generate traces for individual objects. Alg. 1
describes the generation of traces in pseudocode. First, we check which transitions are enabled
by the Petri net and check if the current marking equals the final marking. If not, we randomly
choose an enabled transition, add it to the trace, and execute it. This updates the current
marking. The trace generation terminates if no more enabled transitions exist, or the final
marking is reached. In the latter case, the trace is added to the list of traces. Otherwise, the trace
is discarded. This is repeated while the counter is smaller than the number of requested traces.
In other words, we apply a token-based simulation in which tokens are propagated through the
Petri net and the transitions passed are recorded as events in the event log. In a post-processing
step, deviating behavior may be introduced to the generated event log by adding or removing
corresponding events (i.e., writing (additional) attributes or transitioning to (additional) states).

Algorithm 1 Trace Generation
Require: PetriNet                                                  ▷ guided or tolerated net
 1: visitedTransitions = []
 2: marking ← copy(initialMarking)
 3: while True do
 4:     if not semantics.enabled_transitions(PetriNet, marking) then
 5:          Break
 6:     end if
 7:     enabledTransitions ← semantics.enabled_transitions(PetriNet, marking)
 8:     if marking == finalMarking then
 9:          Break
10:     else
11:          transition ← randomElement(enabledTransitions)
12:     end if
13:     if transition.label is not None then
14:          visitedTransitions.append(transition)
15:     end if
16:     marking ← semantics.execute(transition,PetriNet,marking)
17: end while
18: if marking = finalMarking then
19:     allVisitedTransitions.append(visitedTransitions)
20:     counter ← counter +1
21: end if

4. Evaluation
The evaluation of the presented approach for simulating event logs from object lifecycle pro-
cesses is two-fold. First, we implemented a proof-of-concept prototype capable of simulating
event logs from object lifecycle processes and applied it to two different scenarios (E-learning
and Recruitment). Second, we checked the conformance of the simulated event logs with the
models used for their generation and calculated resulting fitness values using alignments [8, 10].



                                                                                                  17
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


On a scale from 1 (perfect fitness) to 0 (bad fitness), fitness measures to which degree a model
allows for the behavior recorded in an event log. The proof-of-concept prototype as well as the
event logs simulated during the evaluation are publicly available1 .

4.1. Conformance Checking
For every object in both the e-learning and recruitment scenario, we simulated 18 event logs
(i.e., one log per possible configuration), each comprising 100 traces. In total, this results in 198
event logs from 11 different objects.
    Tab. 2 describes the conformance categories into which the simulated traces are categorized
for object Submission [8].
    The event logs simulated for guided behavior configuration show the respective behavior
in 100% of cases. Moreover, the event logs generated for the tolerated behavior show guided
behavior in 17% of the cases and tolerated behavior in 83 % of cases. The inclusion of guided
behavior within tolerated behavior is intended, as it generalizes guided behavior. Regarding
deviating behavior (i.e., skipping or adding states and steps) all traces simulated with the
respective configuration are correctly simulated with deviations.
Table 2
Categorization of Simulated Event Logs for Object Submission
                                         Guided Log   Tolerated Log   Deviating Log
                    Guided Behavior        100 %           17 %            0%
                   Tolerated Behavior        0%            83 %            0%
                   Deviating Behavior        0%             0%            100%

  We further checked conformance of the simulated event logs regarding the state (i.e., how
does the object instance change states?) and the step level (i.e., how are attributes written?). On
the state level, this allows further verifying the deviations (e.g., additional states, unspecified
backwards transitions, or state changes not allowed by the object lifecycle process model).
We checked the conformance between the object lifecycle process model and the event logs
simulated with additional states as well as steps in every trace on both the state and step level
individually (see Tab. 3). In other words, the event log contained deviations on both the state
and step level. Note that we only show the results for state Edit of object Submission for brevity.
Table 3
Object Submission on State and Step level
                                       State Level                   Step Level (State Edit)
                           Average Fitness Value % of traces   Average Fitness Value % of traces
      Guided Behavior              0.31             0%                 0.46                 0%
     Tolerated Behavior            0.58             0%                 0.67                 0%
     Deviating Behavior             NA             100 %                NA                100 %

  Overall, the approach for generating event logs from object lifecycle processes is capable of
reproducing all possible behavior based on the specification selected in the proof-of-concept
implementation.
1
    https://cloudstore.uni-ulm.de/s/M4AmamPLWZHniZ6




                                                                                                  18
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


5. Related Work
The approach presented in this paper is related to the generation of event logs.
   [11] presents the PURpose-guided Log gEnerator (PURPLE) capable of generating event logs
conforming to a process model (i.e., a BPMN model or Petri net), including noise (i.e., skipping,
adding, or reordering events). In contrast, the presented approach considers granularity and
uses data-driven object behavior specified in object lifecycle process models as input.
   [12] introduce the Data Aware event Log Generator (DALG) that can generate event logs from
a Petri net. DALG offers several capabilities for temporal constraints and writing variables,
however, no capabilities regarding deviations in the event logs are available.
   The Straightforward Petri Net-based Event Log Generation plugin available in ProM [13]
generates event logs based on Petri nets using token-based simulation. In contrast to the
presented approach, it does not differentiate between guided and tolerated behavior and does
not generate deviating event logs.
   Event log generation in the context of Internet of Things devices is presented in [2]. A Petri
net is used to generate guided event logs as well as event logs containing noise. In contrast to
the presented approach, different granularity levels are not supported.
   [14] can generate event logs from BPMN models and is available in the process mining
framework ProM. The presented approach leverages data-driven object lifecycle processes
rather than activity-centric BPMN models.
   Other approaches leverage relational databases to generate event logs based on the data
available in the database [15]. In this approach, a case table with a unique case ID has to be
chosen. Users then recommend other tables that could provide additional events. These tables,
however, have to contain the case ID as foreign keys. The approach presented in this paper
can produce guided, tolerated and deviating behavior on both state and step level and it may
generate event logs of different objects as well as multiple instances of each object.


6. Summary & Outlook
This paper presented an approach for simulating event logs from object lifecycle processes,
while considering the behavior of objects on both the state and the step level. The approach
is capable of simulating guided, tolerated, and deviating object behavior and document the
behavior in event logs using multiple Petri nets derived from object lifecycle processes. It has
been evaluated using a publicly available proof-of-concept implementation which has been
successfully applied to simulate event logs from different scenarios. Event logs simulated
using the presented approach reliably conform with the specification set out, facilitating the
development and testing of new process mining algorithms by providing suitable event logs for
a variety of scenarios. In future work, we plan to extend the approach in multiple directions.
First, we want to incorporate coordination constraints between objects of different types (i.e.,
object A may only reach state 𝑆𝐴 if object B is in state 𝑆𝐵 ). Second, the actual object attribute
values documented in the event log are currently generic placeholders. We plan to replace
them with more realistic, process-specific values. Finally, we plan to provide the event logs in
additional formats (e.g., OCEL [16] or XES [17]) instead of the currently used CSV-format.




                                                                                               19
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


Acknowledgments This work is part of the ProcMape project, funded by the KMU Innovativ
Program of the Federal Ministry of Education and Research, Germany (F.No. 01IS23045B)


References
 [1] W. M. P. van der Aalst, Process Mining: Data Science in Action, 2 ed., Springer, Heidelberg,
     2016.
 [2] Y. Zisgen, D. Janssen, A. Koschmider, Generating synthetic sensor event logs for process
     mining, in: International Conference on Advanced Information Systems Engineering,
     Springer, 2022, pp. 130–137.
 [3] J. Chen, D. Chun, M. Patel, E. Chiang, J. James, The validity of synthetic clinical data:
     a validation study of a leading synthetic data generator (synthea) using clinical quality
     measures, BMC medical informatics and decision making 19 (2019) 1–9.
 [4] N. Patki, R. Wedge, K. Veeramachaneni, The synthetic data vault, in: 2016 IEEE Interna-
     tional Conference on Data Science and Advanced Analytics (DSAA), 2016, pp. 399–410.
 [5] J. Tremblay, A. Prakash, D. Acuna, M. Brophy, V. Jampani, C. Anil, T. To, E. Cameracci,
     S. Boochoon, S. Birchfield, Training deep networks with synthetic data: Bridging the
     reality gap by domain randomization, in: Proceedings of the IEEE conference on computer
     vision and pattern recognition workshops, 2018, pp. 969–977.
 [6] K. Andrews, S. Steinau, M. Reichert, Enabling runtime flexibility in data-centric and
     data-driven process execution engines, Information Systems 101 (2021) 101447. URL:
     https://www.sciencedirect.com/science/article/pii/S0306437919304995. doi:https://doi.
     org/10.1016/j.is.2019.101447 .
 [7] S. Steinau, K. Andrews, M. Reichert, Executing lifecycle processes in object-aware process
     management, in: Data-Driven Process Discovery and Analysis, Lecture Notes in Business
     Information Processing, Springer, 2017, pp. 25–44.
 [8] M. Breitmayer, L. Arnold, M. Reichert, Enabling conformance checking for object life-
     cycle processes, in: Research Challenges in Information Science, Springer International
     Publishing, Cham, 2022, pp. 124–141.
 [9] J. L. Peterson, Petri nets, ACM Computing Surveys (CSUR) 9 (1977) 223–252.
[10] W. M. P. van der Aalst, A. Adriansyah, B. van Dongen, Replaying history on process
     models for conformance checking and performance analysis, WIREs Data Mining and
     Knowledge Discovery 2 (2012) 182–192.
[11] A. Burattin, B. Re, L. Rossi, F. Tiezzi, Purple: a purpose-guided log generator, in: Pro-
     ceedings of the ICPM Doctoral Consortium and Demo Track 2022, CEUR Workshop
     Proceedings, CEUR-WS, 2022.
[12] D. Jilg, Generating synthetic procedural multi-perspective electronic healthcare treatment
     cases, 2022.
[13] S. Vanden Broucke, J. Vanthienen, B. Baesens, Straightforward petri net-based event log
     generation in prom, SSRN 2489051 (2014).
[14] A. A. Mitsyuk, I. S. Shugurov, A. A. Kalenkova, W. M. P. van der Aalst, Generating event
     logs for high-level process models, Simulation Modelling Practice and Theory 74 (2017)
     1–16.




                                                                                             20
Breitmayer et al.: Simulating Event Logs from Object Lifecycle Processes


[15] R. Andrews, C. G. J. van Dun, M. T. Wynn, W. Kratsch, M. Röglinger, A. H. ter Hofstede,
     Quality-informed semi-automated event log generation for process mining, Decision
     Support Systems 132 (2020) 113265.
[16] A. F. Ghahfarokhi, G. Park, A. Berti, W. M. P. van der Aalst, Ocel: A standard for object-
     centric event logs, in: L. Bellatreche, M. Dumas, P. Karras, R. Matulevičius, A. Awad,
     M. Weidlich, M. Ivanović, O. Hartig (Eds.), New Trends in Database and Information
     Systems, Springer International Publishing, Cham, 2021, pp. 169–175.
[17] Ieee standard for extensible event stream (xes) for achieving interoperability in event logs
     and event streams, IEEE Std 1849-2016 (2016) 1–50. doi:10.1109/IEEESTD.2016.7740858 .




                                                                                              21