Class RepairConfiguration


  • public class RepairConfiguration
    extends java.lang.Object
    Parameter object for Uma_RepairModel_Plugin
    Author:
    dfahland
    • Field Summary

      Fields 
      Modifier and Type Field Description
      boolean alignAlignments
      Use in conjunction with subprocess detection detectSubProcesses.
      boolean detectLoops
      If set to 'true', the plugin will apply a few heuristics to detect whether the event log contains cyclic behavior (repetitions) of a certain number of steps where the process model contains no cycle with all these steps.
      boolean detectSubProcesses
      If set to 'true', the plugin will extend the process model in two ways.
      int globalCost_maxIterations
      Parameter used by computation of a global cost alignment (globalCostAlignment).
      boolean globalCostAlignment
      If set to 'true', the plugin analyzes the deviations between model and log on a global level to identify the smallest set of process steps that are missing or should be skipped.
      int loopModelMoveCosts
      A technical parameter used during loop detection (detectLoops).
      int remove_keepIfAtLeast
      The threshold value for when a node is considered 'infrequent' in the removal of infrequent nodes (removeInfrequentNodes ).
      boolean removeInfrequentNodes
      If set to 'true', the plugin identifies process steps which are never or rarely executed according to the log and removes any step that is infrequent without breaking the flow in the model.
      boolean repairFinalMarking
      Repair may modify the structure of the model in a way that invalidates the final marking of the net.
    • Method Summary

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • detectLoops

        public boolean detectLoops
        If set to 'true', the plugin will apply a few heuristics to detect whether the event log contains cyclic behavior (repetitions) of a certain number of steps where the process model contains no cycle with all these steps. If such a cycle is found, the plugin tests whether introducing a single "loop back" transitions increases fitness of the log to the model. If yes, the transition is added, if not, the model remains unchanged. This parameter is optional and reduces the number of sub-processes added due to detectSubProcesses.
      • loopModelMoveCosts

        public int loopModelMoveCosts
        A technical parameter used during loop detection (detectLoops). When set to '0' (default value), loop detection will ignore that some iterations of a loop may require to skip certain process steps within the loop. If set to a value >= 1, loop detection will balance between the 'skip transitions' that have to be added if the loop is added and the sub-process that has to be added if the loop is not added. Generally, the parameter should be set to '0' to ease loop detection and preserve similarity to the original model. However, if the possible loop has a complex inner structure, the analysis for loops may incur very running times. In this case, set a value >= 1 to ensure faster completion.
      • detectSubProcesses

        public boolean detectSubProcesses
        If set to 'true', the plugin will extend the process model in two ways. (1) If the log requires certain process steps to be skipped (by a model move in the alignment), the plugin adds a 'skip' transition for this step that allows to proceed in the process without taking the process step. (2) If the log requires additional process steps that are currently not in the model (due to log moves in the alignment), the plugin identifies the exact locations where consecutive sequences of additional steps should be added and inserts subprocesses that fit the missing behavior. This parameter is mandatory to obtain a model that perfectly fits the given log.
      • removeInfrequentNodes

        public boolean removeInfrequentNodes
        If set to 'true', the plugin identifies process steps which are never or rarely executed according to the log and removes any step that is infrequent without breaking the flow in the model. Use Parameter_6 set the threshold for when a node is considered infrequent. This parameter is optional and should be used to obtain a simpler model.
      • remove_keepIfAtLeast

        public int remove_keepIfAtLeast
        The threshold value for when a node is considered 'infrequent' in the removal of infrequent nodes (removeInfrequentNodes ). The threshold is specified as the absolute number of occurrences of a process step in the log. Set to '1' (default) to remove only process steps which never occur in the log (this ensures a fitting model); set to > 0 to also remove parts of the model used only infrequently (gives a simpler model that does not show all behaviors of the log); set to '0' to preserve all process steps (regardless of used or not).
      • globalCostAlignment

        public boolean globalCostAlignment
        If set to 'true', the plugin analyzes the deviations between model and log on a global level to identify the smallest set of process steps that are missing or should be skipped. This parameter is optional. It causes higher runtime cost in the deviation analysis as several alignments are computed, but it results in simpler models with a higher similarity to the original model. In both cases, the resulting model will perfectly fit the log (if detectSubProcesses is set to 'true')
      • globalCost_maxIterations

        public int globalCost_maxIterations
        Parameter used by computation of a global cost alignment (globalCostAlignment). It specifies the number of analysis iterations done to identify the smallest number of process steps in the model that require a repair. Usually, the smallest number is found after one global analysis (default value '1').
      • alignAlignments

        public boolean alignAlignments
        Use in conjunction with subprocess detection detectSubProcesses. If set to 'true', the identified sequences of steps that have to be added to the model as sub-processes are analyzed for similarities. Subsequences of similar events are grouped together which leads to smaller subprocesses that are inserted at more specific locations in the process. This parameter is optional and may lead to simpler models with a higher similarity to the original model. In both cases, the resulting model will perfectly fit the log (if detectSubProcesses is set to 'true').
      • repairFinalMarking

        public boolean repairFinalMarking
        Repair may modify the structure of the model in a way that invalidates the final marking of the net. If this parameter is set to 'true', the repair will try to infer a final marking whenever existing final places of the model are modified or new final places are created.
    • Constructor Detail

      • RepairConfiguration

        public RepairConfiguration()