pm4py.algo.conformance.tokenreplay.variants.backwards module#
- class pm4py.algo.conformance.tokenreplay.variants.backwards.Parameters(*values)[source]#
Bases:
Enum- CASE_ID_KEY = 'pm4py:param:case_id_key'#
- ACTIVITY_KEY = 'pm4py:param:activity_key'#
- PARAMETER_VARIANT_DELIMITER = 'variant_delimiter'#
- VARIANTS = 'variants'#
- PLACES_SHORTEST_PATH_BY_HIDDEN = 'places_shortest_path_by_hidden'#
- THREAD_MAX_EX_TIME = 'thread_maximum_ex_time'#
- DISABLE_VARIANTS = 'disable_variants'#
- CLEANING_TOKEN_FLOOD = 'cleaning_token_flood'#
- IS_REDUCTION = 'is_reduction'#
- WALK_THROUGH_HIDDEN_TRANS = 'walk_through_hidden_trans'#
- RETURN_NAMES = 'return_names'#
- STOP_IMMEDIATELY_UNFIT = 'stop_immediately_unfit'#
- TRY_TO_REACH_FINAL_MARKING_THROUGH_HIDDEN = 'try_to_reach_final_marking_through_hidden'#
- CONSIDER_REMAINING_IN_FITNESS = 'consider_remaining_in_fitness'#
- ENABLE_PLTR_FITNESS = 'enable_pltr_fitness'#
- pm4py.algo.conformance.tokenreplay.variants.backwards.get_bmap(net, m, bmap)[source]#
Updates the B-map with the invisibles enabling marking m
- Parameters:
net – Petri net
m – Marking
bmap – B-map
- Returns:
List of invisibles that enable m
- Return type:
trans_list
- pm4py.algo.conformance.tokenreplay.variants.backwards.diff_mark(m, t)[source]#
Subtract from a marking the postset of t and adds the preset
- Parameters:
m – Marking
t – Transition
- Returns:
Difference marking
- Return type:
diff_mark
- pm4py.algo.conformance.tokenreplay.variants.backwards.explore_backwards(re_list, all_vis, net, m, bmap)[source]#
Do the backwards state space exploration
- Parameters:
re_list – List of remaining markings to visit using the backwards approach
all_vis – Set of visited transitions
net – Petri net
m – Marking
bmap – B-map of the net
- Returns:
List of transitions to enable in order to enable a marking (otherwise None)
- Return type:
list_tr
- pm4py.algo.conformance.tokenreplay.variants.backwards.tr_vlist(vlist, net, im, fm, tmap, bmap, parameters=None)[source]#
Visit a variant using the backwards token basedr eplay
- Parameters:
vlist – Variants list
net – Petri net
im – Initial marking
tmap – Transition map (labels to list of transitions)
bmap – B-map
parameters – Possible parameters of the execution
- Returns:
visited_transitions – List of visited transitions during the replay
is_fit – Indicates if the replay was successful or not
- pm4py.algo.conformance.tokenreplay.variants.backwards.apply(log: EventLog, net: PetriNet, initial_marking: Marking, final_marking: Marking, parameters: Dict[str | Parameters, Any] | None = None) List[Dict[str, Any]][source]#
Method to apply token-based replay
- Parameters:
log – Log
net – Petri net
initial_marking – Initial marking
final_marking – Final marking
parameters – Parameters of the algorithm
- pm4py.algo.conformance.tokenreplay.variants.backwards.get_diagnostics_dataframe(log: EventLog, tbr_output: List[Dict[str, Any]], parameters: Dict[str | Parameters, Any] | None = None) DataFrame[source]#
Gets the results of token-based replay in a dataframe
- Parameters:
log – Event log
tbr_output – Output of the token-based replay technique
- Returns:
Diagnostics dataframe
- Return type:
dataframe