pm4py.analysis#
Functions
Checks if the input Petri net satisfies the WF-net conditions: 1. |
|
|
Check if a given Petri net is a sound WF-net. A Petri net is a WF-net iff: - it has a unique source place - it has a unique end place - every element in the WF-net is on a path from the source to the sink place A WF-net is sound iff: - it contains no live-locks - it contains no deadlocks - we are able to always reach the final marking For a formal definition of sound WF-net, consider: http://www.padsweb.rwth-aachen.de/wvdaalst/publications/p628.pdf In the returned object, the first element is a boolean indicating if the Petri net is a sound workflow net. The second element is a set of diagnostics collected while running WOFLAN (expressed as a dictionary associating the keys [name of the diagnostics] with the corresponding diagnostics). |
|
Apply clustering to the provided event log (method based on the extraction of profiles for the traces of the event log) based on a Scikit-Learn clusterer (default: K-means with two clusters) |
|
Computes the earth mover distance between two stochastic languages (for example, the first extracted from the log, and the second extracted from the process model. |
|
constructs the synchronous product net between a trace and a Petri net process model. |
|
Generate a marking for a given Petri net |
|
Gets the transitions enabled in a given marking |
|
Inserts the artificial start/end activities in an event log / Pandas dataframe |
|
Inserts the arrival/finish rates of the case in the dataframe. |
|
Inserts the service/waiting/sojourn times of the case in the dataframe. |
|
Calculate the maximal decomposition of an accepting Petri net. |
|
Reduce the number of invisibles transitions in the provided Petri net. |
Reduce the number of invisibles transitions in the provided Petri net. |
|
|
Computes the simplicity metric for a given Petri net model. |
|
Gets an heuristics value (underestimation of the cost of an alignment) between a trace and a synchronous product net using the extended marking equation with the standard cost function (e.g. sync moves get cost equal to 0, invisible moves get cost equal to 1, other move on model / move on log get cost equal to 10000), with an optimal provisioning of the split points. |
|
Solves the marking equation of a Petri net. |