ocpa.algo.conformance.constraint_monitoring package

Subpackages

Submodules

ocpa.algo.conformance.constraint_monitoring.algorithm module

ocpa.algo.conformance.constraint_monitoring.algorithm.apply(cg: ocpa.objects.graph.constraint_graph.obj.ConstraintGraph, ocel: ocpa.objects.log.ocel.OCEL, diag: Dict, variant='log_based', parameters=None)

Monitoring the violation of constraints by analyzing object-centric event logs. The constraints are represented as object-centric constraint graphs. For each violation of the constraint, it provides the analysis of the violation.

Parameters
  • cg – Object-centric constraint graph

  • ocel (Dict) – Object-centric event log

  • diag – performance measures per activity, e.g., {‘Act1’: {‘Measure1’: value, ‘Measure2: value, …}, ‘Act2’: {…}, …}. Value has different formats depending on the performance measure, e.g., the one for ‘act_freq’ is Integer, the one for ‘object_count’, ‘pooling_time’, ‘lagging_time’, and ‘synchronization_time’ is a nested dictionary (e.g., {‘ObjectType1’: {‘mean’: Real, ‘median’: Real, …}, ‘ObjectType2’: {…}, …}), the one for ‘waiting_time’, ‘service_time’, ‘sojourn_time’, and ‘flow_time’ is a dictionary (e.g., {‘mean’: Real, ‘median’: Real, …}).

Returns

Violated, A List of diagnostics for the violation. Violated is a Boolean value where True denotes that the constraint is violated and False denotes that the constraint is not violated. Diagnostics explains why the constraint is violated by analyzing each edge of the constraint graph.

Return type

Boolean, List

Module contents