pm4py.algo.conformance.alignments.decomposed.variants package

Submodules

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal 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.conformance.alignments.decomposed.variants.recompos_maximal.Parameters(value)[source]

Bases: enum.Enum

An enumeration.

ACTIVITY_KEY = 'pm4py:param:activity_key'
BEST_WORST_COST = 'best_worst_cost'
ICACHE = 'icache'
MCACHE = 'mcache'
PARAMETER_VARIANT_DELIMITER = 'variant_delimiter'
PARAM_MAX_ALIGN_TIME = 'max_align_time'
PARAM_MAX_ALIGN_TIME_TRACE = 'max_align_time_trace'
PARAM_MODEL_COST_FUNCTION = 'model_cost_function'
PARAM_SYNC_COST_FUNCTION = 'sync_cost_function'
PARAM_THRESHOLD_BORDER_AGREEMENT = 'thresh_border_agreement'
PARAM_TRACE_COST_FUNCTION = 'trace_cost_function'
PARAM_TRACE_NET_COSTS = 'trace_net_costs'
SHOW_PROGRESS_BAR = 'show_progress_bar'
pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.align(trace, petri_net, initial_marking, final_marking, parameters=None)[source]
pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.apply(log: pm4py.objects.log.obj.EventLog, net: pm4py.objects.petri_net.obj.PetriNet, im: pm4py.objects.petri_net.obj.Marking, fm: pm4py.objects.petri_net.obj.Marking, parameters: Optional[Dict[Union[str, pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.Parameters], Any]] = None) List[Dict[str, Any]][source]

Apply the recomposition alignment approach to a log and a Petri net performing decomposition

Parameters
  • log – Event log

  • net – Petri net

  • im – Initial marking

  • fm – Final marking

  • parameters – Parameters of the algorithm

Returns

For each trace, return its alignment

Return type

aligned_traces

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.apply_from_variants_list(var_list, petri_net, initial_marking, final_marking, parameters=None)[source]

Apply the alignments from the specification of a list of variants in the log

Parameters
  • var_list – List of variants (for each item, the first entry is the variant itself, the second entry may be the number of cases)

  • petri_net – Petri net

  • initial_marking – Initial marking

  • final_marking – Final marking

  • parameters – Parameters of the algorithm (same as ‘apply’ method, plus ‘variant_delimiter’ that is , by default)

Returns

Dictionary that assigns to each variant its alignment

Return type

dictio_alignments

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.apply_from_variants_list_petri_string(var_list, petri_net_string, parameters=None)[source]
pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.apply_log(log, list_nets, parameters=None)[source]

Apply the recomposition alignment approach to a log and a decomposed Petri net

Parameters
  • log – Log

  • list_nets – Decomposition

  • parameters – Parameters of the algorithm

Returns

For each trace, return its alignment

Return type

aligned_traces

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.apply_trace(trace, list_nets, parameters=None)[source]

Align a trace against a decomposition

Parameters
  • trace – Trace

  • list_nets – List of Petri nets (decomposed)

  • parameters – Parameters of the algorithm

Returns

Alignment of the trace

Return type

alignment

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.get_acache(cons_nets)[source]

Calculates the A-Cache of the given decomposition

Parameters

cons_nets – List of considered nets

Returns

A-Cache

Return type

acache

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.get_alres(al)[source]

Gets a description of the alignment for the border agreement

Parameters

al – Alignment

Returns

Description of the alignment

Return type

alres

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.get_best_worst_cost(petri_net, initial_marking, final_marking, parameters=None)[source]
pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.order_nodes_second_round(to_visit, G0)[source]

Orders the second round of nodes to visit to reconstruct the alignment

Parameters
  • to_visit – Node to visit

  • G0 – Recomposition graph

Returns

Sorted list of nodes

Return type

to_visit

pm4py.algo.conformance.alignments.decomposed.variants.recompos_maximal.recompose_alignment(cons_nets, cons_nets_result)[source]

Alignment recomposition

Parameters
  • cons_nets – Decomposed Petri net elements

  • cons_nets_result – Result of the alignments on such elements

  • parameters – Parameters of the method

Returns

Recomposed alignment

Return type

alignment

Module contents

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/>.