Class HelperFunctions


  • public class HelperFunctions
    extends java.lang.Object
    • Constructor Detail

      • HelperFunctions

        public HelperFunctions()
    • Method Detail

      • getCompatibilityBetweenPTandLog

        public static boolean getCompatibilityBetweenPTandLog​(org.processmining.processtree.ProcessTree processTree,
                                                              org.deckfour.xes.model.XLog InputLog,
                                                              java.util.Map<java.lang.String,​java.lang.String> eventCharacterMap)
      • displayDataStructure

        public static void displayDataStructure​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                java.lang.Boolean displayOldValue)
      • displayNode

        public static void displayNode​(NodeDetailStore nodeNDS)
      • populateFrequencyMaps

        public static void populateFrequencyMaps​(org.deckfour.xes.model.XLog InputLog,
                                                 Parameters parameters)
      • populateEventCharacterMaps

        public static void populateEventCharacterMaps​(org.deckfour.xes.model.XLog InputLog,
                                                      Parameters parameters)
      • populateEventVariantFrequency

        public static void populateEventVariantFrequency​(Parameters parameters)
      • ConvertToTextTree

        public static java.lang.String ConvertToTextTree​(java.lang.String sTree)
      • getEncodedNodeName

        public static java.lang.String getEncodedNodeName​(org.processmining.processtree.ProcessTree tree,
                                                          org.processmining.processtree.Node node,
                                                          java.util.Map<java.lang.String,​java.lang.String> eventCharacterMap)
      • mapPTtoNodeDetailStructure

        public static java.util.Map<java.util.UUID,​NodeDetailStore> mapPTtoNodeDetailStructure​(org.processmining.processtree.ProcessTree processTree,
                                                                                                     org.processmining.processtree.Node node,
                                                                                                     java.util.UUID parentID,
                                                                                                     java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                     Parameters parameters)
      • setActivityFrequenciesOnLoopNode

        public static java.util.Map<java.util.UUID,​NodeDetailStore> setActivityFrequenciesOnLoopNode​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • removeActivityFrequenciesOnLoopNode

        public static java.util.Map<java.util.UUID,​NodeDetailStore> removeActivityFrequenciesOnLoopNode​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • getActivityFrequency

        public static int getActivityFrequency​(NodeDetailStore nodeNDS,
                                               java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                               Parameters parameters)
                                        throws org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
        Throws:
        org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
      • cloneLinkedHashMap

        public static java.util.Map<java.lang.String,​java.lang.Integer> cloneLinkedHashMap​(java.util.Map<java.lang.String,​java.lang.Integer> linkedHashMapToClone)
      • subtractVariantFrequency

        public static java.util.Map<java.lang.String,​java.lang.Integer> subtractVariantFrequency​(java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency1,
                                                                                                       java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency2)
      • aggregateVariantFrequency

        public static java.util.Map<java.lang.String,​java.lang.Integer> aggregateVariantFrequency​(java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency1,
                                                                                                        java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency2)
      • maxVariantFrequency

        public static java.util.Map<java.lang.String,​java.lang.Integer> maxVariantFrequency​(java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency1,
                                                                                                  java.util.Map<java.lang.String,​java.lang.Integer> variantWithFrequency2)
      • getVariantWiseActivityFrequency

        public static java.util.Map<java.lang.String,​java.lang.Integer> getVariantWiseActivityFrequency​(NodeDetailStore nodeNDS,
                                                                                                              java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                              Parameters parameters)
                                                                                                       throws org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
        Throws:
        org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
      • getVariantWiseCaseFrequency

        public static java.util.Map<java.lang.String,​java.lang.Integer> getVariantWiseCaseFrequency​(NodeDetailStore nodeNDS,
                                                                                                          java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                          Parameters parameters)
      • computeVariantWiseFrequencyForEvent

        public static void computeVariantWiseFrequencyForEvent​(Parameters parameters)
      • setNodeInitialFrequencies

        public static java.util.Map<java.util.UUID,​NodeDetailStore> setNodeInitialFrequencies​(NodeDetailStore nodeNDS,
                                                                                                    java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                    Parameters parameters)
                                                                                             throws org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
        Throws:
        org.processmining.plugins.InductiveMiner.efficienttree.UnknownTreeNodeException
      • getAncestorAndsLeafChildren

        public static java.util.List<java.lang.String> getAncestorAndsLeafChildren​(java.util.List<java.lang.String> allAncestorAndLeafChildren,
                                                                                   NodeDetailStore nodeNDS,
                                                                                   java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • getLoopExitFrequencyBasedOnTraces

        public static org.processmining.logfiltering.plugins.Sabya.Pair getLoopExitFrequencyBasedOnTraces​(java.util.Map<java.lang.String,​java.lang.Integer> variantFrequency,
                                                                                                          java.util.List<java.lang.String> allAncestorAndLeafChildren,
                                                                                                          java.util.List<java.lang.String> doLeafChildren,
                                                                                                          java.util.List<java.lang.String> loopLeafChildren)
      • getPatternMatchCount

        public static java.lang.Integer getPatternMatchCount​(java.lang.String patternToCheck,
                                                             java.lang.String variant)
      • createXlogAndSubPTBasedOnPatterns

        public static org.processmining.processtree.ProcessTree createXlogAndSubPTBasedOnPatterns​(NodeDetailStore andNode,
                                                                                                  java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                  Parameters parameters,
                                                                                                  org.deckfour.xes.model.XLog InputLog,
                                                                                                  org.processmining.processtree.ProcessTree mainProcessTree,
                                                                                                  java.lang.String modificationType)
      • getVariantsForNode

        public static java.lang.Object[] getVariantsForNode​(java.util.Map<java.lang.String,​java.lang.Integer> variantWiseFrequency,
                                                            java.lang.String leafChildren)
      • updateFrequencyInDSToConvertVariant

        public static Parameters updateFrequencyInDSToConvertVariant​(Parameters parameters,
                                                                     java.lang.String variantToDelete,
                                                                     java.lang.String similarVariant)
      • updateFrequencyInDSToRemoveVariant

        public static Parameters updateFrequencyInDSToRemoveVariant​(Parameters parameters,
                                                                    java.lang.String variantToDelete)
      • createXlogAndSubPTBasedOnPatterns2

        public static org.processmining.processtree.ProcessTree createXlogAndSubPTBasedOnPatterns2​(NodeDetailStore andNode,
                                                                                                   java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                   Parameters parameters,
                                                                                                   org.deckfour.xes.model.XLog InputLog,
                                                                                                   org.processmining.processtree.ProcessTree mainProcessTree,
                                                                                                   java.lang.Boolean modificationTypeIsConvert)
      • getAndPatternsFromVariant

        public static java.util.List<java.lang.String> getAndPatternsFromVariant​(java.lang.String variantWithOnlyAndChildren)
      • createProcessTreeWithRemainingVariants

        public static org.processmining.processtree.ProcessTree createProcessTreeWithRemainingVariants​(org.processmining.processtree.ProcessTree processTree,
                                                                                                       org.deckfour.xes.model.XAttributeMap inputLogAttribute,
                                                                                                       java.util.Map<java.lang.String,​java.lang.Integer> remainingVariants,
                                                                                                       java.util.Map<java.lang.String,​java.lang.String> characterEventMap,
                                                                                                       java.lang.Integer charCounter)
      • addTracesToXLog

        public static org.deckfour.xes.model.XLog addTracesToXLog​(org.deckfour.xes.model.XLog subLog,
                                                                  java.lang.String traceInChar,
                                                                  java.lang.Integer charCounter,
                                                                  java.util.Map<java.lang.String,​java.lang.String> characterEventMap)
      • computeCaseFrequencyForNodes

        public static java.util.Map<java.util.UUID,​NodeDetailStore> computeCaseFrequencyForNodes​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                       Parameters parameters)
      • setProbability

        public static java.util.Map<java.util.UUID,​NodeDetailStore> setProbability​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                         int totalFrequency)
      • isFrequencyChanging

        public static boolean isFrequencyChanging​(int newFrequency,
                                                  NodeDetailStore NodeDetailStoreChild)
      • getLeafChildren

        public static java.util.List<java.lang.String> getLeafChildren​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                       NodeDetailStore nodeNDS)
      • cloneList

        public static java.util.List<java.lang.String> cloneList​(java.util.List<java.lang.String> listOfString)
      • changeNodeName

        public static org.processmining.processtree.ProcessTree changeNodeName​(org.processmining.processtree.ProcessTree processTree,
                                                                               java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • getNodesToDeleteBasedOnProbability

        public static java.util.List<NodeDetailStore> getNodesToDeleteBasedOnProbability​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                         double thresholdProbability,
                                                                                         java.lang.String probabilityType,
                                                                                         java.lang.String frequencyType)
      • updateVariantFrequencyOfNode

        public static java.util.Map<java.util.UUID,​NodeDetailStore> updateVariantFrequencyOfNode​(NodeDetailStore nodeNDSBeingDeleted,
                                                                                                       java.lang.String variantToDelete,
                                                                                                       java.lang.String similarVariant,
                                                                                                       java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                       NodeDetailStore nodeNDS,
                                                                                                       java.util.List<NodeDetailStore> toBeDeletedNodesExtended)
      • alterTreeAndRemove

        public static org.processmining.processtree.ProcessTree alterTreeAndRemove​(org.processmining.processtree.ProcessTree processTree,
                                                                                   java.util.List<NodeDetailStore> toBeDeletedNodes,
                                                                                   java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                   Parameters parameters)
      • modififyTreeBasedOnNodeProbability

        public static org.processmining.processtree.ProcessTree modififyTreeBasedOnNodeProbability​(org.processmining.processtree.ProcessTree processTree,
                                                                                                   java.util.List<NodeDetailStore> toBeDeletedNodes,
                                                                                                   java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                   Parameters parameters,
                                                                                                   java.lang.Boolean modificationTypeIsConvert)
      • alterTreeAndConvert

        public static org.processmining.processtree.ProcessTree alterTreeAndConvert​(org.processmining.processtree.ProcessTree processTree,
                                                                                    java.util.List<NodeDetailStore> toBeDeletedNodes,
                                                                                    java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                    java.util.Map<java.lang.String,​java.lang.String> variantsToChange,
                                                                                    java.util.Map<java.lang.String,​java.lang.Integer> updatedVariantFrequency)
      • removeNode

        public static org.processmining.processtree.ProcessTree removeNode​(NodeDetailStore nodeNDS,
                                                                           org.processmining.processtree.ProcessTree processTree,
                                                                           java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • cloneEdgeList

        public static java.util.List<org.processmining.processtree.Edge> cloneEdgeList​(java.util.List<org.processmining.processtree.Edge> listOfEdges)
      • removeChildrenNodeAndEdgesFromPT

        public static org.processmining.processtree.ProcessTree removeChildrenNodeAndEdgesFromPT​(org.processmining.processtree.ProcessTree processTree,
                                                                                                 NodeDetailStore toRemoveNDS,
                                                                                                 java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • setNodeSuretyToFalse

        public static java.util.Map<java.util.UUID,​NodeDetailStore> setNodeSuretyToFalse​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq)
      • replaceWithSubtree

        public static java.lang.Object[] replaceWithSubtree​(org.processmining.processtree.ProcessTree processTree,
                                                            org.processmining.processtree.ProcessTree subProcessTree,
                                                            NodeDetailStore nodeNDSToRemove,
                                                            java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                            Parameters parameters)
      • setFrequenciesOnProcessTree

        public static java.util.Map<java.util.UUID,​NodeDetailStore> setFrequenciesOnProcessTree​(java.util.Map<java.util.UUID,​NodeDetailStore> treeNodeFreq,
                                                                                                      org.processmining.processtree.ProcessTree processTree,
                                                                                                      Parameters parameters)
      • setProcessTree

        public static void setProcessTree​(org.processmining.processtree.ProcessTree processTree,
                                          org.processmining.processtree.Node node)
      • findMostSimilarVariant

        public static java.lang.String findMostSimilarVariant​(java.lang.String variantToMatch,
                                                              java.util.Map<java.lang.String,​java.lang.Integer> variantWiseCF,
                                                              java.util.Map<java.lang.String,​java.lang.Integer> excludeVariantWiseCF)
      • calculateLD

        public static int calculateLD​(java.lang.String x,
                                      java.lang.String y)
      • costOfSubstitution

        public static int costOfSubstitution​(char a,
                                             char b)
      • min

        public static int min​(int... numbers)