pm4py.algo.evaluation.precision.variants package#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

Submodules#

pm4py.algo.evaluation.precision.variants.align_etconformance module#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

class pm4py.algo.evaluation.precision.variants.align_etconformance.Parameters(value)[source]#

Bases: Enum

An enumeration.

ACTIVITY_KEY = 'pm4py:param:activity_key'#
CASE_ID_KEY = 'pm4py:param:case_id_key'#
TOKEN_REPLAY_VARIANT = 'token_replay_variant'#
CLEANING_TOKEN_FLOOD = 'cleaning_token_flood'#
SHOW_PROGRESS_BAR = 'show_progress_bar'#
MULTIPROCESSING = 'multiprocessing'#
CORES = 'cores'#
pm4py.algo.evaluation.precision.variants.align_etconformance.apply(log: Union[EventLog, EventStream, DataFrame], net: PetriNet, marking: Marking, final_marking: Marking, parameters: Optional[Dict[Union[str, Parameters], Any]] = None) float[source]#

Get Align-ET Conformance precision

Parameters#

log

Trace log

net

Petri net

marking

Initial marking

final_marking

Final marking

parameters
Parameters of the algorithm, including:

Parameters.ACTIVITY_KEY -> Activity key

pm4py.algo.evaluation.precision.variants.align_etconformance.transform_markings_from_sync_to_original_net(markings0, net, parameters=None)[source]#

Transform the markings of the sync net (in which alignment stops) into markings of the original net (in order to measure the precision)

Parameters#

markings0

Markings on the sync net (expressed as place name with count)

net

Petri net

parameters

Parameters of the algorithm

Returns#

markings

Markings of the original model (expressed as place with count)

pm4py.algo.evaluation.precision.variants.align_etconformance.align_fake_log_stop_marking(fake_log, net, marking, final_marking, parameters=None)[source]#

Align the ‘fake’ log with all the prefixes in order to get the markings in which the alignment stops

Parameters#

fake_log

Fake log

net

Petri net

marking

Marking

final_marking

Final marking

parameters

Parameters of the algorithm

Returns#

alignment

For each trace in the log, return the marking in which the alignment stops (expressed as place name with count)

pm4py.algo.evaluation.precision.variants.align_etconformance.build_sync_net(trace, petri_net, initial_marking, final_marking, parameters=None)[source]#

Build the sync product net between the Petri net and the trace prefix

Parameters#

trace

Trace prefix

petri_net

Petri net

initial_marking

Initial marking

final_marking

Final marking

parameters

Possible parameters of the algorithm

pm4py.algo.evaluation.precision.variants.etconformance_token module#

This file is part of PM4Py (More Info: https://pm4py.fit.fraunhofer.de).

PM4Py is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

PM4Py is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with PM4Py. If not, see <https://www.gnu.org/licenses/>.

class pm4py.algo.evaluation.precision.variants.etconformance_token.Parameters(value)[source]#

Bases: Enum

An enumeration.

ACTIVITY_KEY = 'pm4py:param:activity_key'#
CASE_ID_KEY = 'pm4py:param:case_id_key'#
TOKEN_REPLAY_VARIANT = 'token_replay_variant'#
CLEANING_TOKEN_FLOOD = 'cleaning_token_flood'#
SHOW_PROGRESS_BAR = 'show_progress_bar'#
MULTIPROCESSING = 'multiprocessing'#
CORES = 'cores'#
pm4py.algo.evaluation.precision.variants.etconformance_token.apply(log: EventLog, net: PetriNet, marking: Marking, final_marking: Marking, parameters: Optional[Dict[Union[str, Parameters], Any]] = None)[source]#

Get ET Conformance precision

Parameters#

log

Trace log

net

Petri net

marking

Initial marking

final_marking

Final marking

parameters
Parameters of the algorithm, including:

Parameters.ACTIVITY_KEY -> Activity key