Class PNUnfoldedSimulator
- java.lang.Object
-
- org.processmining.plugins.stochasticpetrinet.simulator.PNSimulator
-
- org.processmining.plugins.stochasticpetrinet.simulator.PNUnfoldedSimulator
-
public class PNUnfoldedSimulator extends PNSimulator
Idea: Use one unfolded model for multiple traces. Same semantics, but different log (we need to treat each "lane" in the model as an instance). The lanes are dependent by resource connections.There is only one big run of the model emitting all the traces.
- Author:
- Andreas Rogge-Solti
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringRESOURCE_SEPARATOR-
Fields inherited from class org.processmining.plugins.stochasticpetrinet.simulator.PNSimulator
arrivalDistribution, cachedDurations, CONCEPT_INSTANCE, CONCEPT_NAME, CONCEPT_SIMULATED, lastFiringTime, LIFECYCLE_TRANSITION, LOCATION_ROOM, logProbabilityOfCurrentTrace, oneMarking, random, SIMULATED_LOG_PROBABILITY, TIME_TIMESTAMP, TRANSITION_COMPLETE, transitionRemainingTimes, useOnlyPastTrainingData
-
-
Constructor Summary
Constructors Constructor Description PNUnfoldedSimulator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.deckfour.xes.model.XEventcreateSimulatedEvent(org.processmining.models.graphbased.directed.petrinet.elements.Transition transition, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, long firingTime, java.lang.String instance)static java.lang.String[]getResources(java.lang.String resourceString)static java.lang.StringgetResourceString(java.util.Set<java.lang.String> resources)org.deckfour.xes.model.XLogsimulate(org.processmining.contexts.uitopia.UIPluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.semantics.Semantics<org.processmining.models.semantics.petrinet.Marking,org.processmining.models.graphbased.directed.petrinet.elements.Transition> semantics, PNSimulatorConfig config, org.processmining.models.semantics.petrinet.Marking initialMarking, org.processmining.models.semantics.petrinet.Marking finalMarking)Performs a simulation according to a given configurationPNSimulatorConfigjava.lang.ObjectsimulateOneTrace(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.semantics.Semantics<org.processmining.models.semantics.petrinet.Marking,org.processmining.models.graphbased.directed.petrinet.elements.Transition> semantics, PNSimulatorConfig config, org.processmining.models.semantics.petrinet.Marking initialMarking, long traceStart, long constraint, int i, boolean useTimeConstraint, org.processmining.models.semantics.petrinet.Marking finalMarking)Performs a simple simulation of the Petri net (mostly used forStochasticNets, but can also simulate a PN without stochastic annotations) See#simulateTraceEnd(PetrinetGraph, Semantics, PNSimulatorConfig, Marking, Date, int, Map, boolean)for an implementation that does not generate costly XIDs required for XES log files.-
Methods inherited from class org.processmining.plugins.stochasticpetrinet.simulator.PNSimulator
addAllDifferentTracesToLog, createTrace, getEndPlaces, getLogProbabilityOfLastTrace, getNextArrivalDate, getOnlyImmediateTransitions, getReturnObject, getTransitionRemainingTime, getTransitionWithIndex, insertEvent, isFinal, isOneBounded, pickTransition, pickTransitionAccordingToWeights, sampleDurationForTransition, setUseOnlyPastTrainingData, simulate, simulate, simulateOneTrace, transitionsContainTimingInfo, updateTransitionMemoriesAfterFiring
-
-
-
-
Field Detail
-
RESOURCE_SEPARATOR
public static final java.lang.String RESOURCE_SEPARATOR
- See Also:
- Constant Field Values
-
-
Method Detail
-
simulate
public org.deckfour.xes.model.XLog simulate(org.processmining.contexts.uitopia.UIPluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.semantics.Semantics<org.processmining.models.semantics.petrinet.Marking,org.processmining.models.graphbased.directed.petrinet.elements.Transition> semantics, PNSimulatorConfig config, org.processmining.models.semantics.petrinet.Marking initialMarking, org.processmining.models.semantics.petrinet.Marking finalMarking)Performs a simulation according to a given configurationPNSimulatorConfig- Overrides:
simulatein classPNSimulator- Parameters:
context-UIPluginContextProM plugin contextpetriNet- a petri net (preferable with stochastic timing informationsemantics- aSemanticsaccording to which simulation should be performedconfig-PNSimulatorConfiginitialMarking-finalMarking-- Returns:
-
createSimulatedEvent
protected org.deckfour.xes.model.XEvent createSimulatedEvent(org.processmining.models.graphbased.directed.petrinet.elements.Transition transition, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, long firingTime, java.lang.String instance)- Overrides:
createSimulatedEventin classPNSimulator
-
getResourceString
public static java.lang.String getResourceString(java.util.Set<java.lang.String> resources)
-
getResources
public static java.lang.String[] getResources(java.lang.String resourceString)
-
simulateOneTrace
public java.lang.Object simulateOneTrace(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph petriNet, org.processmining.models.semantics.Semantics<org.processmining.models.semantics.petrinet.Marking,org.processmining.models.graphbased.directed.petrinet.elements.Transition> semantics, PNSimulatorConfig config, org.processmining.models.semantics.petrinet.Marking initialMarking, long traceStart, long constraint, int i, boolean useTimeConstraint, org.processmining.models.semantics.petrinet.Marking finalMarking)Performs a simple simulation of the Petri net (mostly used forStochasticNets, but can also simulate a PN without stochastic annotations) See#simulateTraceEnd(PetrinetGraph, Semantics, PNSimulatorConfig, Marking, Date, int, Map, boolean)for an implementation that does not generate costly XIDs required for XES log files.- Parameters:
petriNet-PetrinetGraphthe modelsemantics-Semanticsthe semanticsconfig-PNSimulatorConfigthe configurationPNSimulatorConfiginitialMarking-Markingthe initial MarkingtraceStart- long the date time to start the traceconstraint- long the date time that all simulated events should be greater thani- int trace iduseTimeConstraint- boolean stores whether created events are constrained to be later than traceStartfinalMarking- Marking a final marking can be set to terminate the simulation, when it is reached... ignored, if null- Returns:
-
-