pm4py.discovery.discover_powl#
- pm4py.discovery.discover_powl(log: EventLog | DataFrame, variant=None, filtering_weight_factor: float = 0.0, order_graph_filtering_threshold: float = None, activity_key: str = 'concept:name', timestamp_key: str = 'time:timestamp', case_id_key: str = 'case:concept:name') POWL [source]#
Discovers a POWL (Partially Ordered Workflow Language) model from an event log.
Reference paper: Kourani, Humam, and Sebastiaan J. van Zelst. “POWL: partially ordered workflow language.” International Conference on Business Process Management. Cham: Springer Nature Switzerland, 2023.
- Parameters:
log – Event log or Pandas DataFrame.
variant – Variant of the POWL discovery algorithm to use.
filtering_weight_factor (
float
) – Factoring threshold for filtering weights, accepts values 0 <= x < 1 (default: 0.0).order_graph_filtering_threshold (
float
) – Filtering threshold for the order graph, valid for the DYNAMIC_CLUSTERING variant, accepts values 0.5 < x <= 1 (default: None).activity_key (
str
) – Attribute to be used for the activity (default: “concept:name”).timestamp_key (
str
) – Attribute to be used for the timestamp (default: “time:timestamp”).case_id_key (
str
) – Attribute to be used as case identifier (default: “case:concept:name”).
- Returns:
A POWL object representing the discovered POWL model.
- Return type:
POWL
import pm4py log = pm4py.read_xes('tests/input_data/receipt.xes') powl_model = pm4py.discover_powl( log, activity_key='concept:name' ) print(powl_model)