conformance: Conformance between an Event Log and a Petri net

Description Usage Arguments Value Examples

Description

Conformance between an Event Log and a Petri net

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
conformance_alignment(
  eventlog,
  petrinet,
  initial_marking,
  final_marking,
  parameters = default_parameters(eventlog),
  variant = variant_state_equation_a_star(),
  convert = TRUE
)

variant_state_equation_a_star()

variant_dijkstra_no_heuristics()

Arguments

eventlog

A bupaR or PM4PY event log.

petrinet

A bupaR or PM4PY Petri net.

initial_marking

A R vector with the place identifiers of the initial marking or a PM4PY marking. By default the initial marking of the bupaR Petri net will be used if available.

final_marking

A R vector with the place identifiers of the final marking or a PM4PY marking.

parameters

PM4PY conformance parameter. By default the activity_key from the bupaR event log is specified using param_activity_key.

variant

The conformance variant to be used.

convert

TRUE to automatically convert Python objects to their R equivalent. If you pass FALSE you can do manual conversion using the r-py-conversion function.

Value

A data frame describing the conformance result. In case of conformance_alignment a data frame of log and model moves.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
if (pm4py_available()) {
  library(eventdataR)
  data(patients)

  # As Inductive Miner of PM4Py is not life-cycle aware, keep only `complete` events:
  patients_completes <- patients[patients$registration_type == "complete", ]

  # Discover a Petri net
  net <- discovery_inductive(patients_completes)

  # Align event log and Petri net
  a <- conformance_alignment(patients_completes,
                             net$petrinet,
                             net$initial_marking,
                             net$final_marking)

  # Alignment is returned as data frame
  head(a)
}

pm4py documentation built on Jan. 8, 2020, 1:08 a.m.