Package org.jbpt.mining.repair
Class RepairRecommendationSearch
- java.lang.Object
-
- org.jbpt.mining.repair.RepairRecommendationSearch
-
- Direct Known Subclasses:
BruteForceRepairRecommendationSearch,BruteForceRepairRecommendationSearchWithOptimization,GoldrattRepairRecommendationSearch,GreedyRepairRecommendationSearch,KnapsackRepairRecommendationSearch
public abstract class RepairRecommendationSearch extends java.lang.Object- Author:
- Artem Polyvyanyy
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classRepairRecommendationSearch.AlignmentLabelclassRepairRecommendationSearch.AlignmentStep
-
Field Summary
Fields Modifier and Type Field Description protected intalignmentComputationsprotected DummyUIPluginContextcontextprotected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer>costFuncMOSprotected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer>costFuncMOTprotected booleandebugprotected org.deckfour.xes.classification.XEventClassifiereventClassifierprotected org.processmining.models.semantics.petrinet.Marking[]finalMarkingsprotected org.processmining.models.semantics.petrinet.MarkinginitMarkingprotected org.deckfour.xes.model.XLoglogprotected org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMappingmappingprotected intmaxNumOfStatesprotected org.processmining.models.graphbased.directed.petrinet.PetrinetGraphnetprotected intoptimalAlignmentCostprotected java.util.Set<RepairRecommendation>optimalRepairRecommendationsprotected java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition>restrictedTrans
-
Constructor Summary
Constructors Modifier Constructor Description protectedRepairRecommendationSearch(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.processmining.models.semantics.petrinet.Marking initMarking, org.processmining.models.semantics.petrinet.Marking[] finalMarkings, org.deckfour.xes.model.XLog log, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> costMOS, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> costMOT, org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping mapping, org.deckfour.xes.classification.XEventClassifier eventClassifier, boolean debug)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description intcomputeAlignmentCost()intcomputeAlignmentCost(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)intcomputeAlignmentCost(RepairRecommendation rec)protected booleancomputeImpactOfLabelsOnOptimalAlignmentCost(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> frequencies, RepairRecommendation r, RepairConstraint constraint, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)protected java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Integer>computeImpactOfLabelsOnOptimalAlignmentCost(java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> frequencies, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)protected java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double>computeImpactPerRepairResource(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, RepairConstraint constraint)java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer>computeMovementFrequencies(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer>computeMovementFrequenciesAndAlignmentCost(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)java.util.Set<RepairRecommendation>computeOptimalRepairRecommendations(RepairConstraint constraint)abstract java.util.Set<RepairRecommendation>computeOptimalRepairRecommendations(RepairConstraint constraint, boolean singleton)protected voidfilterImpacts(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, RepairRecommendation r)protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer>getAdjustedCostFuncMOS(java.util.Set<java.lang.String> labels)protected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer>getAdjustedCostFuncMOT(java.util.Set<java.lang.String> labels)intgetNumberOfAlignmentComputations()intgetOptimalAlignmentCost()protected voidminimizeOptimalRepairRecommendations()protected voidpreserveMinimalOptimalRepairRecommendations()org.processmining.models.graphbased.directed.petrinet.PetrinetGraphrepair(RepairRecommendation rec)voidserializeNet(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph pn, java.lang.String name)
-
-
-
Field Detail
-
log
protected org.deckfour.xes.model.XLog log
-
net
protected org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net
-
initMarking
protected org.processmining.models.semantics.petrinet.Marking initMarking
-
finalMarkings
protected org.processmining.models.semantics.petrinet.Marking[] finalMarkings
-
eventClassifier
protected org.deckfour.xes.classification.XEventClassifier eventClassifier
-
context
protected DummyUIPluginContext context
-
mapping
protected org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping mapping
-
maxNumOfStates
protected int maxNumOfStates
-
restrictedTrans
protected java.util.Set<org.processmining.models.graphbased.directed.petrinet.elements.Transition> restrictedTrans
-
costFuncMOS
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> costFuncMOS
-
costFuncMOT
protected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> costFuncMOT
-
alignmentComputations
protected int alignmentComputations
-
optimalAlignmentCost
protected int optimalAlignmentCost
-
optimalRepairRecommendations
protected java.util.Set<RepairRecommendation> optimalRepairRecommendations
-
debug
protected boolean debug
-
-
Constructor Detail
-
RepairRecommendationSearch
protected RepairRecommendationSearch(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph net, org.processmining.models.semantics.petrinet.Marking initMarking, org.processmining.models.semantics.petrinet.Marking[] finalMarkings, org.deckfour.xes.model.XLog log, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> costMOS, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> costMOT, org.processmining.plugins.connectionfactories.logpetrinet.TransEvClassMapping mapping, org.deckfour.xes.classification.XEventClassifier eventClassifier, boolean debug) throws java.lang.Exception- Throws:
java.lang.Exception
-
-
Method Detail
-
computeOptimalRepairRecommendations
public java.util.Set<RepairRecommendation> computeOptimalRepairRecommendations(RepairConstraint constraint)
-
computeOptimalRepairRecommendations
public abstract java.util.Set<RepairRecommendation> computeOptimalRepairRecommendations(RepairConstraint constraint, boolean singleton)
-
getNumberOfAlignmentComputations
public int getNumberOfAlignmentComputations()
-
getOptimalAlignmentCost
public int getOptimalAlignmentCost()
-
preserveMinimalOptimalRepairRecommendations
protected void preserveMinimalOptimalRepairRecommendations()
-
minimizeOptimalRepairRecommendations
protected void minimizeOptimalRepairRecommendations()
-
getAdjustedCostFuncMOS
protected java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> getAdjustedCostFuncMOS(java.util.Set<java.lang.String> labels)
-
getAdjustedCostFuncMOT
protected java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> getAdjustedCostFuncMOT(java.util.Set<java.lang.String> labels)
-
repair
public org.processmining.models.graphbased.directed.petrinet.PetrinetGraph repair(RepairRecommendation rec)
-
serializeNet
public void serializeNet(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph pn, java.lang.String name) throws org.jbpt.throwable.SerializationException- Throws:
org.jbpt.throwable.SerializationException
-
computeAlignmentCost
public int computeAlignmentCost(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)
-
computeAlignmentCost
public int computeAlignmentCost()
-
computeAlignmentCost
public int computeAlignmentCost(RepairRecommendation rec)
-
computeMovementFrequencies
public java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> computeMovementFrequencies(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)
-
computeMovementFrequenciesAndAlignmentCost
public java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> computeMovementFrequenciesAndAlignmentCost(java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)
-
computeImpactOfLabelsOnOptimalAlignmentCost
protected java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Integer> computeImpactOfLabelsOnOptimalAlignmentCost(java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> frequencies, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)
-
computeImpactOfLabelsOnOptimalAlignmentCost
protected boolean computeImpactOfLabelsOnOptimalAlignmentCost(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, java.util.Map<RepairRecommendationSearch.AlignmentStep,java.lang.Integer> frequencies, RepairRecommendation r, RepairConstraint constraint, java.util.Map<org.processmining.models.graphbased.directed.petrinet.elements.Transition,java.lang.Integer> transitions2costs, java.util.Map<org.deckfour.xes.classification.XEventClass,java.lang.Integer> events2costs)
-
computeImpactPerRepairResource
protected java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> computeImpactPerRepairResource(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, RepairConstraint constraint)
-
filterImpacts
protected void filterImpacts(java.util.Map<RepairRecommendationSearch.AlignmentLabel,java.lang.Double> labels2impacts, RepairRecommendation r)
-
-