public abstract class AbstractMovePreferenceAwarePetrinetReplayer<T extends nl.tue.astar.Tail,D extends AbstractPDelegate<T>> extends java.lang.Object implements IPNPartialOrderAwareReplayAlgorithm
Modifier and Type | Class and Description |
---|---|
static class |
AbstractMovePreferenceAwarePetrinetReplayer.Representative |
static class |
AbstractMovePreferenceAwarePetrinetReplayer.Result |
Modifier and Type | Field and Description |
---|---|
protected org.deckfour.xes.classification.XEventClassifier |
classifier |
protected org.processmining.models.semantics.petrinet.Marking[] |
finalMarkings |
protected org.processmining.models.semantics.petrinet.Marking |
initMarking |
protected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> |
mapEvClass2Cost |
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> |
mapSync2Cost |
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> |
mapTrans2Cost
Imported parameters
|
protected int |
maxNumOfStates |
protected int |
queuedStates |
protected int |
traversedArcs |
protected boolean |
usePartialOrderEvents |
protected int |
visitedStates |
Constructor and Description |
---|
AbstractMovePreferenceAwarePetrinetReplayer() |
Modifier and Type | Method and Description |
---|---|
protected int |
addReplayResults(org.processmining.framework.plugin.Progress progress,
D delegate,
org.deckfour.xes.model.XTrace trace,
AbstractMovePreferenceAwarePetrinetReplayer.Result r,
gnu.trove.list.TIntList unUsedIndices,
gnu.trove.map.TIntIntMap trace2orgTrace,
gnu.trove.map.TIntObjectMap<AbstractMovePreferenceAwarePetrinetReplayer.Representative> doneMap,
org.deckfour.xes.model.XLog log,
java.util.List<SyncReplayResult> col,
int traceIndex,
int minCostMoveModel) |
protected boolean |
compareEventClassList(D d,
org.deckfour.xes.model.XTrace t1,
org.deckfour.xes.model.XTrace t2) |
protected PHead |
constructHead(D delegate,
org.processmining.models.semantics.petrinet.Marking m,
org.deckfour.xes.model.XTrace xtrace) |
IPNReplayParamProvider |
constructParamProvider(org.processmining.framework.plugin.PluginContext context,
org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping)
construct GUI in which the parameter for this algorithm can be obtained
|
protected abstract D |
getDelegate(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
org.deckfour.xes.classification.XEventClasses classes,
TransEvClassMapping mapping,
int delta,
int threads) |
java.lang.String |
getHTMLInfo()
HTML explanation of the algorithm
|
protected nl.tue.astar.util.LinearTrace |
getLinearTrace(org.deckfour.xes.model.XLog log,
int trace,
AbstractPDelegate<?> delegate,
gnu.trove.list.TIntList unUsedIndices,
gnu.trove.map.TIntIntMap trace2orgTrace)
get list of event class.
|
protected int |
getMinBoundMoveModel(nl.tue.astar.AStarThread.Canceller canceller,
int delta,
nl.tue.astar.impl.memefficient.MemoryEfficientAStarAlgorithm<PHead,T> aStar,
D delegateD)
get cost if an empty trace is replayed on a model
|
PartialOrderBuilder |
getPartialOrderBuilder()
Returns the current partial order builder
|
protected void |
importParameters(CostBasedCompleteParam parameters)
Assign values of private attributes as given in parameters
|
boolean |
isAllReqSatisfied(org.processmining.framework.plugin.PluginContext context,
org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping,
IPNReplayParameter parameter)
Return true if all replay inputs are correct
|
boolean |
isParameterReqCorrect(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping,
IPNReplayParameter parameter)
Return true if all replay inputs are correct: parameter type is correct
and non empty (no null); all transitions are mapped to cost; all event
classes (including dummy event class, i.e.
|
boolean |
isReqWOParameterSatisfied(org.processmining.framework.plugin.PluginContext context,
org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping)
Return true if input of replay without parameters are correct
|
protected SyncReplayResult |
recordToResult(AbstractPDelegate<?> d,
org.deckfour.xes.model.XTrace trace,
nl.tue.astar.Trace filteredTrace,
PRecord r,
int traceIndex,
int stateCount,
boolean isReliable,
long milliseconds,
int queuedStates,
int minCostMoveModel,
gnu.trove.list.TIntList unUsedIndices,
gnu.trove.map.TIntIntMap trace2orgTrace) |
PNRepResult |
replayLog(org.processmining.framework.plugin.PluginContext context,
org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping,
IPNReplayParameter parameter)
Replay log assuming GUI exist (progress bars, etc)
|
PNRepResult |
replayLog(org.processmining.framework.plugin.PluginContext context,
org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net,
org.deckfour.xes.model.XLog log,
TransEvClassMapping mapping,
IPNReplayParameter parameters,
java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition> preferredTransitions)
Replay log assuming GUI exist (progress bars, etc).
|
void |
setPartialOrderBuilder(PartialOrderBuilder poBuilder)
Set the partial order builder for any implementation of the IPN
algorithm.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
toString
protected int visitedStates
protected int queuedStates
protected int traversedArcs
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapTrans2Cost
protected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> mapEvClass2Cost
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapSync2Cost
protected org.deckfour.xes.classification.XEventClassifier classifier
protected int maxNumOfStates
protected org.processmining.models.semantics.petrinet.Marking initMarking
protected org.processmining.models.semantics.petrinet.Marking[] finalMarkings
protected boolean usePartialOrderEvents
public AbstractMovePreferenceAwarePetrinetReplayer()
public boolean isAllReqSatisfied(org.processmining.framework.plugin.PluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping, IPNReplayParameter parameter)
isAllReqSatisfied
in interface IPNReplayAlgorithm
public boolean isReqWOParameterSatisfied(org.processmining.framework.plugin.PluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping)
isReqWOParameterSatisfied
in interface IPNReplayAlgorithm
public boolean isParameterReqCorrect(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping, IPNReplayParameter parameter)
protected void importParameters(CostBasedCompleteParam parameters)
parameters
- public IPNReplayParamProvider constructParamProvider(org.processmining.framework.plugin.PluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping)
constructParamProvider
in interface IPNReplayAlgorithm
protected SyncReplayResult recordToResult(AbstractPDelegate<?> d, org.deckfour.xes.model.XTrace trace, nl.tue.astar.Trace filteredTrace, PRecord r, int traceIndex, int stateCount, boolean isReliable, long milliseconds, int queuedStates, int minCostMoveModel, gnu.trove.list.TIntList unUsedIndices, gnu.trove.map.TIntIntMap trace2orgTrace)
protected nl.tue.astar.util.LinearTrace getLinearTrace(org.deckfour.xes.model.XLog log, int trace, AbstractPDelegate<?> delegate, gnu.trove.list.TIntList unUsedIndices, gnu.trove.map.TIntIntMap trace2orgTrace)
trace
- unUsedIndices
- trace2orgTrace
- classes
- mapEvClass2Trans
- listMoveOnLog
- public java.lang.String getHTMLInfo()
IPNReplayAlgorithm
getHTMLInfo
in interface IPNReplayAlgorithm
public PNRepResult replayLog(org.processmining.framework.plugin.PluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping, IPNReplayParameter parameter) throws nl.tue.astar.AStarException
IPNReplayAlgorithm
replayLog
in interface IPNReplayAlgorithm
nl.tue.astar.AStarException
public PNRepResult replayLog(org.processmining.framework.plugin.PluginContext context, org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, TransEvClassMapping mapping, IPNReplayParameter parameters, java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition> preferredTransitions) throws nl.tue.astar.AStarException
context
- net
- log
- mapping
- parameters
- preferredTransitions
- nl.tue.astar.AStarException
protected PHead constructHead(D delegate, org.processmining.models.semantics.petrinet.Marking m, org.deckfour.xes.model.XTrace xtrace)
protected int getMinBoundMoveModel(nl.tue.astar.AStarThread.Canceller canceller, int delta, nl.tue.astar.impl.memefficient.MemoryEfficientAStarAlgorithm<PHead,T> aStar, D delegateD) throws nl.tue.astar.AStarException
context
- net
- mapping
- classes
- delta
- threads
- aStar
- delegateD
- nl.tue.astar.AStarException
protected abstract D getDelegate(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.deckfour.xes.model.XLog log, org.deckfour.xes.classification.XEventClasses classes, TransEvClassMapping mapping, int delta, int threads)
protected int addReplayResults(org.processmining.framework.plugin.Progress progress, D delegate, org.deckfour.xes.model.XTrace trace, AbstractMovePreferenceAwarePetrinetReplayer.Result r, gnu.trove.list.TIntList unUsedIndices, gnu.trove.map.TIntIntMap trace2orgTrace, gnu.trove.map.TIntObjectMap<AbstractMovePreferenceAwarePetrinetReplayer.Representative> doneMap, org.deckfour.xes.model.XLog log, java.util.List<SyncReplayResult> col, int traceIndex, int minCostMoveModel)
protected boolean compareEventClassList(D d, org.deckfour.xes.model.XTrace t1, org.deckfour.xes.model.XTrace t2)
public void setPartialOrderBuilder(PartialOrderBuilder poBuilder)
IPNPartialOrderAwareReplayAlgorithm
setPartialOrderBuilder
in interface IPNPartialOrderAwareReplayAlgorithm
public PartialOrderBuilder getPartialOrderBuilder()
IPNPartialOrderAwareReplayAlgorithm
getPartialOrderBuilder
in interface IPNPartialOrderAwareReplayAlgorithm