Page 192 -
P. 192

174                                 6  Advanced Process Discovery Techniques

            Fig. 6.11 Every position in a
            trace corresponds to a state,
            e.g., the state after executing
            the first nine events of a trace
            consisting of 16 events. To
            characterize the state, the past
            and/or future can be used as
            “ingredients”

            State-based regions can be used to construct a Petri net from a transition system.
            Language-based regions can be used to construct a Petri net from a prefix-closed
            language. Synthesis approaches using language-based regions can be applied di-
            rectly to event logs. To apply state-based regions, one first needs to create a transi-
            tion system.



            6.4.1 Learning Transition Systems


            To construct a Petri net using state-based regions, we first need to discover a transi-
            tion system based on the traces in the event log. Recall that a transition system can
            be described by a triplet TS = (S,A,T ) where S is the set of states, A ⊆ A is the
            set of activities, and T ⊆ S × A × S is the set of transitions. S start  ⊆ S is the set of
            initial states. S end  ⊆ S is the set of final states. (See Sect. 2.2.1 for an introduction
            to transition systems.)
              How to construct TS = (S,A,T ) based on some simple event log L over A , i.e.,
                   ∗
            L ∈ B(A )? An obvious choice is to take A to be the set of activities in the simple
            event log. In order to determine the set of states, each “position” in each trace in the
            log needs to be mapped onto a corresponding state. This is illustrated by Fig. 6.11.

              Let σ = a,b,c,d,c,d,c,d,e,f,a,g,h,h,h,i ∈ L be a trace in the event log.
            Every position in this trace, i.e., before the first event, in-between two events, or after
            the last event should correspond to a state in the transition system. Consider, for ex-

            ample, the state shown in Fig. 6.11. The partial trace σ past  = a,b,c,d,c,d,c,d,e
            describes the past of the corresponding case. σ     = f,a,g,h,h,h,i  describes
                                                 future
            the future of this case. A state representation function l state () is a function that,
            given some sequence σ and a number k indicating the number of events of σ that
            have occurred, produces some state, e.g., the set of activities that have occurred in
            the first k events.
                                                                        k
              Let σ = a 1 ,a 2 ,...,a n  ∈ L be a trace of length n. l state (σ,k) = hd (σ) =
                                                            1
                                                                          k
             a 1 ,a 2 ,...,a k   is an example of a state representation function. Recall that hd (σ)
            was defined in Sect. 4.2; the function returns the “head” of the sequence σ consist-
            ing of the first k elements. l state (σ,k) describes the current state by the full history
                                  1

            of the case after k events. For instance, l state (σ ,9) = a,b,c,d,c,d,c,d,e .
                                            1
              l state (σ,k) = tl n−k (σ) = a k+1 ,a k+2 ,...,a n   is another example of a state rep-
               2
            resentation function. l 2 state (σ,k) describes the current state by the full future of the
            case after k events. l state (σ ,9) = f,a,g,h,h,h,i .

                            2
   187   188   189   190   191   192   193   194   195   196   197