pm4py.algo.simulation.playout.process_tree.variants package
Submodules
pm4py.algo.simulation.playout.process_tree.variants.basic_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/>.
- class pm4py.algo.simulation.playout.process_tree.variants.basic_playout.Parameters[source]
Bases:
object
- NO_TRACES = 'num_traces'
- pm4py.algo.simulation.playout.process_tree.variants.basic_playout.apply(tree: pm4py.objects.process_tree.obj.ProcessTree, parameters: Optional[Dict[Union[str, pm4py.algo.simulation.playout.process_tree.variants.basic_playout.Parameters], Any]] = None) pm4py.objects.log.obj.EventLog [source]
Generate a log by a playout operation
- Parameters
tree – Process tree
parameters – Parameters of the algorithm, including: - Parameters.NO_TRACES: number of traces of the playout
- Returns
Simulated log
- Return type
log
pm4py.algo.simulation.playout.process_tree.variants.extensive 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.simulation.playout.process_tree.variants.extensive.Parameters(value)[source]
Bases:
enum.Enum
An enumeration.
- ACTIVITY_KEY = 'pm4py:param:activity_key'
- MAX_LIMIT_NUM_TRACES = 'max_limit_num_traces'
- MAX_LOOP_OCC = 'max_loop_occ'
- MAX_TRACE_LENGTH = 'max_trace_length'
- MIN_TRACE_LENGTH = 'min_trace_length'
- RETURN_SET_STRINGS = 'return_set_strings'
- pm4py.algo.simulation.playout.process_tree.variants.extensive.apply(tree: pm4py.objects.process_tree.obj.ProcessTree, parameters: Optional[Dict[Union[str, pm4py.algo.simulation.playout.process_tree.variants.extensive.Parameters], Any]] = None) pm4py.objects.log.obj.EventLog [source]
Performs an extensive playout of the process tree
- Parameters
tree – Process tree
parameters – Possible parameters, including: - Parameters.MIN_TRACE_LENGTH => minimum length of a trace (default: 1) - Parameters.MAX_TRACE_LENGTH => maximum length of a trace (default: min_allowed_trace_length) - Parameters.MAX_LOOP_OCC => maximum number of occurrences for a loop (default: MAX_TRACE_LENGTH) - Parameters.ACTIVITY_KEY => activity key - Parameters.MAX_LIMIT_NUM_TRACES => maximum number to the limit of traces; the playout shall stop when the number is reached (default: 100000)
- Returns
Event log
- Return type
log
- pm4py.algo.simulation.playout.process_tree.variants.extensive.flatten(x)[source]
Flattens a list of tuples
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_max_remaining_length(traces)[source]
Maximum remaining length (for sequential, parallel cut detection)
- Parameters
traces – Traces
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_min_remaining_length(traces)[source]
Minimum remaining length (for sequential, parallel cut detection)
- Parameters
traces – Traces
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_playout(node, playout_dictio, min_trace_length, max_trace_length, max_loop_occ, min_rem_dict, max_rem_dict, max_limit_num_traces)[source]
Performs a playout of an ode of the process tree, given the type
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_playout_leaf(node, playout_dictio, min_trace_length, max_trace_length, max_loop_occ, min_rem_dict, max_rem_dict, max_limit_num_traces)[source]
Performs the playout of a leaf (activity or invisible), returning the traces allowed by the tree
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_playout_loop(node, playout_dictio, min_trace_length, max_trace_length, max_loop_occ, min_rem_dict, max_rem_dict, max_limit_num_traces)[source]
Performs the playout of a loop node, returning the traces allowed by the tree
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_playout_parallel(node, playout_dictio, min_trace_length, max_trace_length, max_loop_occ, min_rem_dict, max_rem_dict, max_limit_num_traces)[source]
Performs the playout of an AND node, returning the traces allowed by the tree
- pm4py.algo.simulation.playout.process_tree.variants.extensive.get_playout_sequence(node, playout_dictio, min_trace_length, max_trace_length, max_loop_occ, min_rem_dict, max_rem_dict, max_limit_num_traces)[source]
Performs the playout of a sequence node, returning the traces allowed by the tree
pm4py.algo.simulation.playout.process_tree.variants.topbottom 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.simulation.playout.process_tree.variants.topbottom.Parameters(value)[source]
Bases:
enum.Enum
An enumeration.
- ACTIVITY_KEY = 'pm4py:param:activity_key'
- NO_TRACES = 'num_traces'
- pm4py.algo.simulation.playout.process_tree.variants.topbottom.apply(tree: pm4py.objects.process_tree.obj.ProcessTree, parameters: Optional[Dict[Union[str, pm4py.algo.simulation.playout.process_tree.variants.topbottom.Parameters], Any]] = None) pm4py.objects.log.obj.EventLog [source]
Gets the top-bottom playout of a process tree
- Parameters
tree – Process tree
parameters –
- Parameters of the algorithm, including:
Parameters.ACTIVITY_KEY: activity key
Parameters.NO_TRACES: number of traces that should be returned
- Returns
Event log
- Return type
log
- pm4py.algo.simulation.playout.process_tree.variants.topbottom.get_ex_seq(tree)[source]
Gets a trace from a process tree (top-bottom)
- Parameters
tree – Process tree
- Returns
Execution sequence
- Return type
ex_seq
- pm4py.algo.simulation.playout.process_tree.variants.topbottom.get_ex_seq_in_time(tree, ex_time)[source]
Gets the maximum number of execution sequences, doing the playout, in the given amount of time
- Parameters
tree – Process tree
ex_time – Maximum execution time
- Returns
Execution sequences
- Return type
ex_sec
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/>.