Class StochasticPetriNetUtils


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

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.Object[] cloneToPetrinet​(org.processmining.models.graphbased.directed.petrinet.StochasticNet stochasticNet, org.processmining.models.semantics.petrinet.Marking initialMarking, org.processmining.models.semantics.petrinet.Marking finalMarking)  
      static java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Place> collectInPlaces​(org.processmining.models.graphbased.directed.petrinet.elements.Transition transition, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
      Collect in places for a transition in the Petri net
      static java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition> collectOutTransitions​(org.processmining.models.graphbased.directed.petrinet.elements.Place place, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
      Collect out transitions for a place in the Petri net
      static java.lang.Object[] convertToPetrinetWithOneSourcePlace​(org.processmining.models.graphbased.directed.petrinet.StochasticNet stochasticNet, org.processmining.models.semantics.petrinet.Marking marking)
      Converting an arbitrary Petri net to a Petri net with a single source place
      static void convertToResemblingFreeChoice​(org.processmining.models.graphbased.directed.petrinet.StochasticNet petrinetGraph)
      Convert to resembling free-choice net
      static java.util.Map<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,​java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>> deleteResetArcs​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
      Delete reset arcs
      static void handleTransitionsWithoutIncomingFlows​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.graphbased.directed.petrinet.elements.Transition initialTransition)
      Handle transitions without incoming sequence flows
      static java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.bpmn.elements.Flow> rebuildPlaceConversionMap​(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.bpmn.elements.Flow> conversionMap, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.petrinet.elements.Place> placesMap)
      Rebuilding place conversion map to restore connections with the initial Petri net
      static java.util.Map<java.lang.String,​org.processmining.models.graphbased.directed.bpmn.elements.Activity> rebuildTransitionConversionMap​(java.util.Map<java.lang.String,​org.processmining.models.graphbased.directed.bpmn.elements.Activity> conversionMap, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,​org.processmining.models.graphbased.directed.petrinet.elements.Transition> transitionsMap)
      Rebuilding conversion map to restore connections with the initial Petri net
      static void removeDeadPlaces​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.graphbased.directed.petrinet.elements.Place initialPlace)
      Remove places without incoming sequence flows and corresponding output transitions
      static void restoreResetArcs​(java.util.Map<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,​java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>> resetArcs, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
      Restore reset arcs
      static org.processmining.models.graphbased.directed.petrinet.elements.Place retrieveSourcePlace​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)  
      static void splitNonFreePlaces​(org.processmining.models.graphbased.directed.petrinet.StochasticNet petrinetGraph, java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Place> nonFreePlaces)
      Split non-free places
      • Methods inherited from class java.lang.Object

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

      • StochasticPetriNetUtils

        public StochasticPetriNetUtils()
    • Method Detail

      • convertToPetrinetWithOneSourcePlace

        public static java.lang.Object[] convertToPetrinetWithOneSourcePlace​(org.processmining.models.graphbased.directed.petrinet.StochasticNet stochasticNet,
                                                                             org.processmining.models.semantics.petrinet.Marking marking)
        Converting an arbitrary Petri net to a Petri net with a single source place
        Parameters:
        stochasticNet -
        marking -
      • handleTransitionsWithoutIncomingFlows

        public static void handleTransitionsWithoutIncomingFlows​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet,
                                                                 org.processmining.models.graphbased.directed.petrinet.elements.Transition initialTransition)
        Handle transitions without incoming sequence flows
        Parameters:
        petriNet -
      • removeDeadPlaces

        public static void removeDeadPlaces​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet,
                                            org.processmining.models.graphbased.directed.petrinet.elements.Place initialPlace)
        Remove places without incoming sequence flows and corresponding output transitions
        Parameters:
        petriNet -
      • retrieveSourcePlace

        public static org.processmining.models.graphbased.directed.petrinet.elements.Place retrieveSourcePlace​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
      • rebuildTransitionConversionMap

        public static java.util.Map<java.lang.String,​org.processmining.models.graphbased.directed.bpmn.elements.Activity> rebuildTransitionConversionMap​(java.util.Map<java.lang.String,​org.processmining.models.graphbased.directed.bpmn.elements.Activity> conversionMap,
                                                                                                                                                               java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,​org.processmining.models.graphbased.directed.petrinet.elements.Transition> transitionsMap)
        Rebuilding conversion map to restore connections with the initial Petri net
        Parameters:
        conversionMap -
        transitionsMap -
        Returns:
      • rebuildPlaceConversionMap

        public static java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.bpmn.elements.Flow> rebuildPlaceConversionMap​(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.bpmn.elements.Flow> conversionMap,
                                                                                                                                                                                                          java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Place,​org.processmining.models.graphbased.directed.petrinet.elements.Place> placesMap)
        Rebuilding place conversion map to restore connections with the initial Petri net
        Parameters:
        conversionMap -
        placesMap -
        Returns:
      • convertToResemblingFreeChoice

        public static void convertToResemblingFreeChoice​(org.processmining.models.graphbased.directed.petrinet.StochasticNet petrinetGraph)
        Convert to resembling free-choice net
        Parameters:
        petrinetGraph -
      • splitNonFreePlaces

        public static void splitNonFreePlaces​(org.processmining.models.graphbased.directed.petrinet.StochasticNet petrinetGraph,
                                              java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Place> nonFreePlaces)
        Split non-free places
        Parameters:
        petrinetGraph -
        nonFreePlaces -
      • deleteResetArcs

        public static java.util.Map<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,​java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>> deleteResetArcs​(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
        Delete reset arcs
        Parameters:
        petrinetGraph -
        Returns:
      • restoreResetArcs

        public static void restoreResetArcs​(java.util.Map<org.processmining.models.graphbased.directed.petrinet.PetrinetNode,​java.util.Set<org.processmining.models.graphbased.directed.petrinet.PetrinetNode>> resetArcs,
                                            org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
        Restore reset arcs
        Parameters:
        petrinetGraph -
      • collectOutTransitions

        public static java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition> collectOutTransitions​(org.processmining.models.graphbased.directed.petrinet.elements.Place place,
                                                                                                                                     org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
        Collect out transitions for a place in the Petri net
        Parameters:
        place -
        petrinetGraph -
        Returns:
      • collectInPlaces

        public static java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Place> collectInPlaces​(org.processmining.models.graphbased.directed.petrinet.elements.Transition transition,
                                                                                                                          org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petrinetGraph)
        Collect in places for a transition in the Petri net
        Parameters:
        transition -
        petrinetGraph -
        Returns:
      • cloneToPetrinet

        public static java.lang.Object[] cloneToPetrinet​(org.processmining.models.graphbased.directed.petrinet.StochasticNet stochasticNet,
                                                         org.processmining.models.semantics.petrinet.Marking initialMarking,
                                                         org.processmining.models.semantics.petrinet.Marking finalMarking)