Class RecursiveProjectionMiner


  • public class RecursiveProjectionMiner
    extends java.lang.Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.processmining.acceptingpetrinet.models.AcceptingPetriNet discover​(org.processmining.contexts.uitopia.UIPluginContext context, org.deckfour.xes.model.XLog log, AcceptingPetriNetWrapper acceptingPetriNetWrapper)  
      protected java.util.HashMap<org.processmining.models.graphbased.directed.petrinet.elements.Place,​java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition>> findOneLoopingPlaces​(org.processmining.models.graphbased.directed.petrinet.Petrinet net)  
      void insertSubnet​(boolean optionalSubnet, org.processmining.acceptingpetrinet.models.AcceptingPetriNet toBeInserted, org.processmining.acceptingpetrinet.models.AcceptingPetriNet origNet, org.processmining.models.graphbased.directed.petrinet.elements.Place projectionPlace, java.util.Collection<org.processmining.models.graphbased.directed.petrinet.elements.Transition> oneLoopingTransitions)  
      protected boolean isSubnetContainingNewInformation​(java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition> loopingTransitions, org.processmining.acceptingpetrinet.models.AcceptingPetriNet minedSubnet)  
      protected boolean isSubnetContainingNewInformation​(java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition> loopingTransitions, AcceptingPetriNetWrapper minedSubnet)
      Checks whether the new Petri net contains some new transitions considering the labels.
      protected boolean placeContainsSameActivities​(java.util.HashSet<java.lang.String> activitiesToBeChecked, org.processmining.models.graphbased.directed.petrinet.elements.Place place, org.processmining.models.graphbased.directed.petrinet.Petrinet net)
      Checks for a set of activities and a place in a given net, whether that place has one-looping transitions that have the activities as labels.
      protected void removeNodeFromNet​(org.processmining.models.graphbased.directed.petrinet.Petrinet net, org.processmining.models.graphbased.directed.petrinet.PetrinetNode node)
      Removes a node from the net by removing the ingoing and outgoing edges of the transition.
      org.deckfour.xes.model.XLog restrictOneTracePerVariant​(org.deckfour.xes.model.XLog log)  
      • Methods inherited from class java.lang.Object

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

      • discover

        public org.processmining.acceptingpetrinet.models.AcceptingPetriNet discover​(org.processmining.contexts.uitopia.UIPluginContext context,
                                                                                     org.deckfour.xes.model.XLog log,
                                                                                     AcceptingPetriNetWrapper acceptingPetriNetWrapper)
                                                                              throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException
      • isSubnetContainingNewInformation

        protected boolean isSubnetContainingNewInformation​(java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition> loopingTransitions,
                                                           AcceptingPetriNetWrapper minedSubnet)
        Checks whether the new Petri net contains some new transitions considering the labels.
        Parameters:
        loopingTransitions - The looping transitions of a place.
        minedSubnet - A discovered net for the projected log.
        Returns:
        True, if the discovered subnet contains further information.
      • isSubnetContainingNewInformation

        protected boolean isSubnetContainingNewInformation​(java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition> loopingTransitions,
                                                           org.processmining.acceptingpetrinet.models.AcceptingPetriNet minedSubnet)
      • placeContainsSameActivities

        protected boolean placeContainsSameActivities​(java.util.HashSet<java.lang.String> activitiesToBeChecked,
                                                      org.processmining.models.graphbased.directed.petrinet.elements.Place place,
                                                      org.processmining.models.graphbased.directed.petrinet.Petrinet net)
        Checks for a set of activities and a place in a given net, whether that place has one-looping transitions that have the activities as labels.
        Parameters:
        activitiesToBeChecked - The activities to be found.
        place - The place to be checked in the net.
        net - The net that contains the place to be checked.
        Returns:
        True, if the activities are a subset of the set of labels of the one-looping transitions of the place.
      • removeNodeFromNet

        protected void removeNodeFromNet​(org.processmining.models.graphbased.directed.petrinet.Petrinet net,
                                         org.processmining.models.graphbased.directed.petrinet.PetrinetNode node)
        Removes a node from the net by removing the ingoing and outgoing edges of the transition.
        Parameters:
        net - The Petri net to be modified.
        node - The node object to be removed from the Petri net.
      • findOneLoopingPlaces

        protected java.util.HashMap<org.processmining.models.graphbased.directed.petrinet.elements.Place,​java.util.ArrayList<org.processmining.models.graphbased.directed.petrinet.elements.Transition>> findOneLoopingPlaces​(org.processmining.models.graphbased.directed.petrinet.Petrinet net)
      • restrictOneTracePerVariant

        public org.deckfour.xes.model.XLog restrictOneTracePerVariant​(org.deckfour.xes.model.XLog log)
      • insertSubnet

        public void insertSubnet​(boolean optionalSubnet,
                                 org.processmining.acceptingpetrinet.models.AcceptingPetriNet toBeInserted,
                                 org.processmining.acceptingpetrinet.models.AcceptingPetriNet origNet,
                                 org.processmining.models.graphbased.directed.petrinet.elements.Place projectionPlace,
                                 java.util.Collection<org.processmining.models.graphbased.directed.petrinet.elements.Transition> oneLoopingTransitions)