pm4py.algo.conformance.alignments.process_tree.variants.approximated package

Submodules

pm4py.algo.conformance.alignments.process_tree.variants.approximated.calculate_a_sa_ea_sets 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/>.

pm4py.algo.conformance.alignments.process_tree.variants.approximated.calculate_a_sa_ea_sets.initialize_a_sa_ea_tau_sets(pt: pm4py.objects.process_tree.obj.ProcessTree, a_sets=None, sa_sets=None, ea_sets=None, tau_sets=None)[source]

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

Bases: enum.Enum

An enumeration.

ACTIVITY_KEY = 'pm4py:param:activity_key'
MAX_PROCESS_TREE_HEIGHT = 'max_process_tree_height'
MAX_TRACE_LENGTH = 'max_trace_length'
PARAMETER_VARIANT_DELIMITER = 'variant_delimiter'
PARAM_MAX_ALIGN_TIME = 'max_align_time'
PARAM_MAX_ALIGN_TIME_TRACE = 'max_align_time_trace'
SUBTREE_ALIGN_CACHE = 'subtree_align_cache'
pm4py.algo.conformance.alignments.process_tree.variants.approximated.matrix_lp.apply(obj: Union[pm4py.objects.log.obj.Trace, pm4py.objects.log.obj.EventLog], pt: pm4py.objects.process_tree.obj.ProcessTree, parameters=None)[source]

Returns approximated alignments for a process tree

Parameters
  • obj – Event log or trace (a conversion is done if necessary)

  • pt – Process tree

  • parameters – Parameters of the algorithm

Returns

  • alignments – Approximated alignments

  • param obj:

  • param pt:

  • param parameters:

  • return:

pm4py.algo.conformance.alignments.process_tree.variants.approximated.matrix_lp.apply_from_variants_list(var_list, tree, 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)

  • tree – Process tree

  • parameters – Parameters of the algorithm

Returns

Dictionary that assigns to each variant its alignment

Return type

dictio_alignments

pm4py.algo.conformance.alignments.process_tree.variants.approximated.matrix_lp.apply_from_variants_tree_string(var_list, tree_string, parameters=None)[source]

Apply the alignments from the specification of a list of variants in the log. The tree is specified as a PTML input

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)

  • tree_string – PTML string representing the tree

  • parameters – Parameters of the algorithm

    Returns

  • ————–

  • dictio_alignments – Dictionary that assigns to each variant its alignment

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

Bases: enum.Enum

An enumeration.

ACTIVITY_KEY = 'pm4py:param:activity_key'
MAX_PROCESS_TREE_HEIGHT = 'max_process_tree_height'
MAX_TRACE_LENGTH = 'max_trace_length'
PARAMETER_VARIANT_DELIMITER = 'variant_delimiter'
PARAM_MAX_ALIGN_TIME = 'max_align_time'
PARAM_MAX_ALIGN_TIME_TRACE = 'max_align_time_trace'
pm4py.algo.conformance.alignments.process_tree.variants.approximated.original.apply(obj: Union[pm4py.objects.log.obj.Trace, pm4py.objects.log.obj.EventLog], pt: pm4py.objects.process_tree.obj.ProcessTree, parameters=None)[source]

Returns approximated alignments for a process tree

Parameters
  • obj – Event log or trace (a conversion is done if necessary)

  • pt – Process tree

  • parameters – Parameters of the algorithm

Returns

  • alignments – Approximated alignments

  • param obj:

  • param pt:

  • param parameters:

  • return:

pm4py.algo.conformance.alignments.process_tree.variants.approximated.original.apply_from_variants_list(var_list, tree, 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)

  • tree – Process tree

  • parameters – Parameters of the algorithm

Returns

Dictionary that assigns to each variant its alignment

Return type

dictio_alignments

pm4py.algo.conformance.alignments.process_tree.variants.approximated.original.apply_from_variants_tree_string(var_list, tree_string, parameters=None)[source]

Apply the alignments from the specification of a list of variants in the log. The tree is specified as a PTML input

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)

  • tree_string – PTML string representing the tree

  • parameters – Parameters of the algorithm

    Returns

  • ————–

  • dictio_alignments – Dictionary that assigns to each variant its alignment

pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities 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/>.

exception pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.AlignmentNoneException[source]

Bases: Exception

class pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.EfficientTree(tree)[source]

Bases: pm4py.objects.process_tree.obj.ProcessTree

class pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.Parameters(value)[source]

Bases: enum.Enum

An enumeration.

CLASSIC_ALIGNMENTS_VARIANT = 'classic_alignments_variant'
CONVERSION_VERSION = 'petri_conversion_version'
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.add_fitness_and_cost_info_to_alignments(alignment: List, pt: pm4py.objects.process_tree.obj.ProcessTree, trace: pm4py.objects.log.obj.Trace, parameters=None) List[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.apply_standard_cost_function_to_alignment(align: List) int[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.calculate_optimal_alignment(pt: pm4py.objects.process_tree.obj.ProcessTree, trace: pm4py.objects.log.obj.Trace, parameters=None)[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.concatenate_traces(t1: pm4py.objects.log.obj.Trace, t2: pm4py.objects.log.obj.Trace) pm4py.objects.log.obj.Trace[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.empty_sequence_accepted(pt: pm4py.objects.process_tree.obj.ProcessTree) bool[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.get_activity_labels_from_trace(trace: pm4py.objects.log.obj.Trace) Set[str][source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.list_of_str_to_trace(activities: List[str]) pm4py.objects.log.obj.Trace[source]
pm4py.algo.conformance.alignments.process_tree.variants.approximated.utilities.trace_to_list_of_str(t: pm4py.objects.log.obj.Trace) List[str][source]

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