pm4py.objects.dfg.utils package¶
Submodules¶
pm4py.objects.dfg.utils.dfg_alignment 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.objects.dfg.utils.dfg_playout 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.objects.dfg.utils.dfg_utils 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.objects.dfg.utils.dfg_utils.add_to_most_probable_component(comps, act2, ingoing, outgoing)[source]¶ Adds a lost component in parallel cut detection to the most probable component
Parameters: - comps – Connected components
- act2 – Activity that has been missed
- ingoing – Map of ingoing attributes
- outgoing – Map of outgoing attributes
Returns: Fixed connected components
Return type: comps
-
pm4py.objects.dfg.utils.dfg_utils.filter_dfg_on_act(dfg, listact)[source]¶ Filter a DFG graph on a list of attributes (to produce a projected DFG graph)
Parameters: - dfg – Current DFG graph
- listact – List of attributes to filter on
-
pm4py.objects.dfg.utils.dfg_utils.get_activities_direction(dfg, activities)[source]¶ Calculate activities direction (in a similar way to Heuristics Miner)
Parameters: - dfg – Directly-follows graph
- activities – (if provided) activities of the subtree
Returns: Dictionary that contains for each direction a number that goes from -1 (all ingoing edges) to 1 (all outgoing edges)
Return type: direction
-
pm4py.objects.dfg.utils.dfg_utils.get_activities_dirlist(activities_direction)[source]¶ Form an ordered list out of a dictionary that contains for each activity the direction (going from -1 if all ingoing edges, to 1 if all outgoing edges)
Parameters: activities_direction – Dictionary that contains for each direction a number that goes from -1 (all ingoing edges) to 1 (all outgoing edges) Returns: Sorted list of couples of activity plus the direction Return type: dirlist
-
pm4py.objects.dfg.utils.dfg_utils.get_activities_from_dfg(dfg)[source]¶ Get the list of attributes directly from DFG graph
Parameters: dfg – Directly-Follows graph Returns: List of activities that are present in the DFG graph Return type: list_activities
-
pm4py.objects.dfg.utils.dfg_utils.get_activities_self_loop(dfg)[source]¶ Get attributes that are in self-loop in this subtree
Parameters: dfg – Directly-follows graph Returns: Activities of the graph that are in subloop Return type: self_loop_act
-
pm4py.objects.dfg.utils.dfg_utils.get_all_activities_connected_as_input_to_activity(dfg, activity)[source]¶ Gets all the activities that are connected as input to a given activity
Parameters: - dfg – Directly-follows graph
- activity – Activity
Returns: All activities connected as input to a given activities
Return type: all_activities
-
pm4py.objects.dfg.utils.dfg_utils.get_all_activities_connected_as_output_to_activity(dfg, activity)[source]¶ Gets all the activities that are connected as output to a given activity
Parameters: - dfg – Directly-follows graph
- activity – Activity
Returns: All activities connected as output to a given activity
Return type: all_activities
-
pm4py.objects.dfg.utils.dfg_utils.get_connected_components(ingoing, outgoing, activities, force_insert_missing_acti=True)[source]¶ Get connected components in the DFG graph
Parameters: - ingoing – Ingoing attributes
- outgoing – Outgoing attributes
- activities – Activities to consider
- force_insert_missing_acti – Force the insertion of a missing activity
-
pm4py.objects.dfg.utils.dfg_utils.get_dfg_np_matrix(dfg)[source]¶ Gets a Numpy matrix describing the DFG graph, along with a dictionary making correspondence between indexes and activities names
Parameters: dfg – Directly-Follows graph Returns: - matrix – Matrix describing the DFG
- index_corresp – Dictionary making correspondence between indexes and activities names
-
pm4py.objects.dfg.utils.dfg_utils.get_dfg_sa_ea_act_from_variants(variants, parameters=None)[source]¶ Gets the DFG, the start and end activities, and the activities from the dictionary/set/list of variants in the log
Parameters: - variants – Dictionary/set/list of variants
- parameters – Parameters of the algorithm, including: - variants_sep: the delimiter splitting activities in a variant
Returns: - dfg – DFG
- list_act – List of different activities
- start_activities – Start activities
- end_activities – End activities
-
pm4py.objects.dfg.utils.dfg_utils.get_ingoing_edges(dfg)[source]¶ Get ingoing edges of the provided DFG graph
-
pm4py.objects.dfg.utils.dfg_utils.get_inputs_of_outside_activities_reached_by_end_activities(initial_dfg, dfg, activities)[source]¶ Get inputs of outside activities going to start activities
Parameters: - initial_dfg – Initial DFG
- dfg – Directly-follows graph
- activities – Activities contained in the DFG
-
pm4py.objects.dfg.utils.dfg_utils.get_max_activity_count(dfg, act)[source]¶ Get maximum count of an ingoing/outgoing edge related to an activity
Parameters: - dfg – Directly-Follows graph
- act – Activity
Returns: Maximum count of ingoing/outgoing edges to attributes
Return type: max_value
-
pm4py.objects.dfg.utils.dfg_utils.get_outgoing_edges(dfg)[source]¶ Gets outgoing edges of the provided DFG graph
-
pm4py.objects.dfg.utils.dfg_utils.get_outputs_of_outside_activities_going_to_start_activities(initial_dfg, dfg, activities)[source]¶ Get outputs of outside activities going to start activities
Parameters: - initial_dfg – Initial DFG
- dfg – Directly-follows graph
- activities – Activities contained in the DFG
-
pm4py.objects.dfg.utils.dfg_utils.get_predecessors(dfg, activities_model=None)[source]¶ Gets the predecessors of any node of the DFG graph
Parameters: - dfg – DFG
- activities_model – Activities of the process model (if None, it is inferred from the process model)
Returns: Dictionary associating to each node all the ascendants
Return type: predecessors
-
pm4py.objects.dfg.utils.dfg_utils.get_successors(dfg, activities_model=None)[source]¶ Gets the successors of any node of the DFG graph
Parameters: - dfg – DFG
- activities_model – Activities of the process model (if None, it is inferred from the process model)
Returns: Dictionary associating to each node all the descendants
Return type: successors
-
pm4py.objects.dfg.utils.dfg_utils.get_transitive_relations(dfg, alphabet)[source]¶ Parameters: dfg – directly follows relation (counter describing activity pairs) Returns: - tuple with two dicts.
- first argument maps an activit on all other activities that are able to reach the activity (‘transitive pre set’)
- second argument maps an activity on all other activities that it can reach (transitively) (‘transitive post set’)
-
pm4py.objects.dfg.utils.dfg_utils.infer_end_activities(dfg)[source]¶ Infer end activities from a Directly-Follows Graph
Parameters: dfg – Directly-Follows Graph Returns: End activities in the log Return type: end_activities
-
pm4py.objects.dfg.utils.dfg_utils.infer_end_activities_from_succ_connections_and_current_dfg(initial_dfg, dfg, activities, include_self=True)[source]¶ Infer the end activities from the previous connections
Parameters: - initial_dfg – Initial DFG
- dfg – Directly-follows graph
- activities – List of the activities contained in DFG
-
pm4py.objects.dfg.utils.dfg_utils.infer_start_activities(dfg)[source]¶ Infer start activities from a Directly-Follows Graph
Parameters: dfg – Directly-Follows Graph Returns: Start activities in the log Return type: start_activities
-
pm4py.objects.dfg.utils.dfg_utils.infer_start_activities_from_prev_connections_and_current_dfg(initial_dfg, dfg, activities, include_self=True)[source]¶ Infer the start activities from the previous connections
Parameters: - initial_dfg – Initial DFG
- dfg – Directly-follows graph
- activities – List of the activities contained in DFG
-
pm4py.objects.dfg.utils.dfg_utils.max_occ_all_activ(dfg)[source]¶ Get maximum ingoing/outgoing sum of values related to attributes in DFG graph
-
pm4py.objects.dfg.utils.dfg_utils.max_occ_among_specif_activ(dfg, activities)[source]¶ Get maximum ingoing/outgoing sum of values related to attributes in DFG graph (here attributes to consider are specified)
-
pm4py.objects.dfg.utils.dfg_utils.negate(dfg)[source]¶ Negate relationship in the DFG graph
Parameters: dfg – Directly-Follows graph Returns: Negated Directly-Follows graph (for parallel cut detection) Return type: negated_dfg
-
pm4py.objects.dfg.utils.dfg_utils.sum_activities_count(dfg, activities, enable_halving=True)[source]¶ Gets the sum of specified attributes count inside a DFG
Parameters: - dfg – Directly-Follows graph
- activities – Activities to sum
- enable_halving – Halves the sum in specific occurrences
Returns: Return type: Sum of start attributes count
-
pm4py.objects.dfg.utils.dfg_utils.sum_end_activities_count(dfg)[source]¶ Gets the sum of end attributes count inside a DFG
Parameters: dfg – Directly-Follows graph Returns: Return type: Sum of start attributes count
-
pm4py.objects.dfg.utils.dfg_utils.sum_ingoutg_val_activ(dictio, activity)[source]¶ Gets the sum of ingoing/outgoing values of an activity
Parameters: - dictio – Dictionary
- activity – Current examined activity
Returns: Return type: summ
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/>.