public class PILPDelegateAutomata extends org.processmining.plugins.astar.petrinet.impl.AbstractPILPDelegate<PAutomataTail> implements nl.tue.astar.impl.memefficient.CachedStorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
Modifier and Type | Field and Description |
---|---|
protected PAutomataTailCompressor |
tailCompressor |
INFEASIBLE, INFEASIBLE_INT, solvers, threads, useFastLowerbounds
act2cost, act2int, actIndex2trans, activities, arcs, classes, finalMarkings, headCompressor, INHIBITED, inhibitors, int2act, int2place, int2trans, log, net, NEV, place2int, places, resetArcs, sync2cost, trans2cost, trans2int, transIndex2act, transIndex2input, transIndex2output, transitions, unmapped
Constructor and Description |
---|
PILPDelegateAutomata(PetrinetWithAutomata net,
org.deckfour.xes.model.XLog log,
org.deckfour.xes.classification.XEventClasses classes,
org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping map,
java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapTrans2Cost,
java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> mapEvClass2Cost,
java.util.Map<DeclarativeArc,java.lang.Integer> mapConstraintToCost,
boolean allowViolatingConstraints,
int delta,
int threads,
org.processmining.models.semantics.petrinet.Marking... set) |
PILPDelegateAutomata(PetrinetWithAutomata net,
org.deckfour.xes.model.XLog log,
org.deckfour.xes.classification.XEventClasses classes,
org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping map,
java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapTrans2Cost,
java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> mapEvClass2Cost,
java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapSync2Cost,
java.util.Map<DeclarativeArc,java.lang.Integer> mapConstraintToCost,
boolean allowViolatingConstraints,
int delta,
int threads,
org.processmining.models.semantics.petrinet.Marking... set)
The following constructors accept mapping from sync moves to cost
|
Modifier and Type | Method and Description |
---|---|
protected org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> |
constructHeadCompressor(short places,
short activities)
Overrideable method to change head compressor
|
nl.tue.astar.util.ShortShortMultiset |
constructNewMarking(nl.tue.astar.util.ShortShortMultiset marking,
short transition) |
MPRecord |
createInitialRecord(org.processmining.plugins.astar.petrinet.impl.PHead head,
nl.tue.astar.Trace trace)
instantiates a record for the given head.
|
PAutomataTail |
createInitialTail(org.processmining.plugins.astar.petrinet.impl.PHead head)
creates the initial tail for the given head.
|
gnu.trove.set.TShortSet |
getActivitiesFor(short transition) |
gnu.trove.set.TShortSet |
getConstraintsBeingViolated(boolean terminating,
short transition,
short[] automataStates) |
int |
getCostFor(long currentState,
PAutomataHead nextHead,
int modelMove,
int activity) |
int |
getCostForConstraints(boolean terminating,
short[] automataStates,
short modelMove) |
int |
getCostForMoveLog(boolean terminating,
short[] automataStates,
short activity) |
int |
getCostForMoveModel(boolean terminating,
short[] automataStates,
short modelMove) |
int |
getCostForMoveSync(boolean terminating,
short[] automataStates,
short modelMove) |
DeclarativeArc |
getDeclarativeArc(short a) |
gnu.trove.list.TIntList |
getEnabledTransitionsChangingMarking(nl.tue.astar.util.ShortShortMultiset marking,
short[] automataStates) |
org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> |
getHeadDeflater()
additional requirement on the defater to allow for overwriting previously
written objects.
|
org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> |
getHeadInflater() |
short[] |
getInitialStatesAutomata() |
short |
getNextState(int automaton,
short currentState,
int modelMove) |
int |
getNumAutomata() |
nl.tue.storage.CompressedStore<nl.tue.astar.impl.State<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>> |
getStorage() |
gnu.trove.list.TIntList |
getSyncMoves(nl.tue.astar.util.ShortShortMultiset marking,
short[] states,
int activity) |
nl.tue.storage.Deflater<PAutomataTail> |
getTailDeflater() |
nl.tue.astar.impl.memefficient.TailInflater<PAutomataTail> |
getTailInflater() |
org.processmining.models.graphbased.directed.petrinet.elements.Transition |
getTransition(short i) |
boolean |
isAllowingViolationOfConstraints() |
boolean |
isEnabled(int transition,
nl.tue.astar.util.ShortShortMultiset marking,
short[] automataStates) |
boolean |
isFinal(nl.tue.astar.util.ShortShortMultiset marking,
short[] automataStates) |
boolean |
permanentlyViolatesConstraint(short constraint,
int transition,
short currentState) |
void |
setStateSpace(nl.tue.storage.CompressedHashSet<nl.tue.astar.impl.State<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>> statespace) |
boolean |
temporarilyViolatesConstraint(short constraint,
int transition,
short currentState) |
void |
updateAutomataStates(short[] states,
short modelMove)
update the states of the automata
|
deleteLPs, estimate, isUseInts, numFinalMarkings, setDebugMode, useFastLowerbounds
getActivityOf, getClassOf, getCostFor, getCostForMoveLog, getCostForMoveModel, getCostForMoveSync, getDelta, getEnabledTransitionsChangingMarking, getEpsilon, getEventClass, getFinalMarkings, getHeadBasedEqualOperation, getHeadBasedHashOperation, getIndexOf, getIndexOf, getIndexOf, getInputOf, getOutputOf, getPetrinet, getPlace, getTrace, getTransitions, hasEnabledTransitions, hasResetArc, initialize, isEnabled, isFinal, numEventClasses, numPlaces, numTransitions, setEpsilon
protected PAutomataTailCompressor tailCompressor
public PILPDelegateAutomata(PetrinetWithAutomata net, org.deckfour.xes.model.XLog log, org.deckfour.xes.classification.XEventClasses classes, org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping map, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapTrans2Cost, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> mapEvClass2Cost, java.util.Map<DeclarativeArc,java.lang.Integer> mapConstraintToCost, boolean allowViolatingConstraints, int delta, int threads, org.processmining.models.semantics.petrinet.Marking... set)
public PILPDelegateAutomata(PetrinetWithAutomata net, org.deckfour.xes.model.XLog log, org.deckfour.xes.classification.XEventClasses classes, org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping map, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapTrans2Cost, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> mapEvClass2Cost, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> mapSync2Cost, java.util.Map<DeclarativeArc,java.lang.Integer> mapConstraintToCost, boolean allowViolatingConstraints, int delta, int threads, org.processmining.models.semantics.petrinet.Marking... set)
public void setStateSpace(nl.tue.storage.CompressedHashSet<nl.tue.astar.impl.State<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>> statespace)
setStateSpace
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
setStateSpace
in class org.processmining.plugins.astar.petrinet.impl.AbstractPILPDelegate<PAutomataTail>
public gnu.trove.list.TIntList getEnabledTransitionsChangingMarking(nl.tue.astar.util.ShortShortMultiset marking, short[] automataStates)
public gnu.trove.list.TIntList getSyncMoves(nl.tue.astar.util.ShortShortMultiset marking, short[] states, int activity)
public boolean isEnabled(int transition, nl.tue.astar.util.ShortShortMultiset marking, short[] automataStates)
public gnu.trove.set.TShortSet getConstraintsBeingViolated(boolean terminating, short transition, short[] automataStates)
public boolean permanentlyViolatesConstraint(short constraint, int transition, short currentState)
public boolean temporarilyViolatesConstraint(short constraint, int transition, short currentState)
public boolean isFinal(nl.tue.astar.util.ShortShortMultiset marking, short[] automataStates)
public short getNextState(int automaton, short currentState, int modelMove)
protected org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> constructHeadCompressor(short places, short activities)
org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate
constructHeadCompressor
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public MPRecord createInitialRecord(org.processmining.plugins.astar.petrinet.impl.PHead head, nl.tue.astar.Trace trace)
nl.tue.astar.Delegate
createInitialRecord
in interface nl.tue.astar.Delegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
createInitialRecord
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public short[] getInitialStatesAutomata()
public boolean isAllowingViolationOfConstraints()
public PAutomataTail createInitialTail(org.processmining.plugins.astar.petrinet.impl.PHead head)
nl.tue.astar.Delegate
createInitialTail
in interface nl.tue.astar.Delegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
public org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> getHeadInflater()
getHeadInflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
getHeadInflater
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public org.processmining.plugins.astar.petrinet.impl.PHeadCompressor<PAutomataTail> getHeadDeflater()
nl.tue.astar.impl.memefficient.CachedStorageAwareDelegate
getHeadDeflater
in interface nl.tue.astar.impl.memefficient.CachedStorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
getHeadDeflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
getHeadDeflater
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public nl.tue.astar.impl.memefficient.TailInflater<PAutomataTail> getTailInflater()
getTailInflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
public nl.tue.storage.Deflater<PAutomataTail> getTailDeflater()
getTailDeflater
in interface nl.tue.astar.impl.memefficient.StorageAwareDelegate<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>
public int getCostFor(long currentState, PAutomataHead nextHead, int modelMove, int activity)
public int getCostForMoveLog(boolean terminating, short[] automataStates, short activity)
public int getCostForMoveSync(boolean terminating, short[] automataStates, short modelMove)
public int getCostForMoveModel(boolean terminating, short[] automataStates, short modelMove)
public int getCostForConstraints(boolean terminating, short[] automataStates, short modelMove)
public nl.tue.storage.CompressedStore<nl.tue.astar.impl.State<org.processmining.plugins.astar.petrinet.impl.PHead,PAutomataTail>> getStorage()
public DeclarativeArc getDeclarativeArc(short a)
public nl.tue.astar.util.ShortShortMultiset constructNewMarking(nl.tue.astar.util.ShortShortMultiset marking, short transition)
public void updateAutomataStates(short[] states, short modelMove)
states
- modelMove
- public gnu.trove.set.TShortSet getActivitiesFor(short transition)
getActivitiesFor
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public org.processmining.models.graphbased.directed.petrinet.elements.Transition getTransition(short i)
getTransition
in class org.processmining.plugins.astar.petrinet.impl.AbstractPDelegate<PAutomataTail>
public int getNumAutomata()