Class DecreaseProcessingRateImpl
- java.lang.Object
-
- de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.AbstractTactic
-
- de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.impl.AbstractProcessingRateTactic
-
- de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.impl.DecreaseProcessingRateImpl
-
- All Implemented Interfaces:
ITactic
public class DecreaseProcessingRateImpl extends AbstractProcessingRateTactic
This class implements an IHeuristic which decreases the processing rate of hardly utilized processing resources. XXX increase or decrease processing rate by a randomized demand, e.g. normally distributed around the given parameter value?
-
-
Field Summary
-
Fields inherited from class de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.impl.AbstractProcessingRateTactic
logger
-
Fields inherited from class de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.AbstractTactic
copy, individualFactory
-
-
Constructor Summary
Constructors Constructor Description DecreaseProcessingRateImpl(org.opt4j.operator.copy.Copy<org.opt4j.core.Genotype> copy, DSEIndividualFactory individualFactory, DSEWorkflowConfiguration configuration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
doesMatchPrecondition(DSEIndividual i, UtilisationResultCacheAndHelper resultsCache)
double
getCandidateWeight(org.palladiosimulator.analyzer.resultdecorator.resourceenvironmentdecorator.UtilisationResult utilisationResult)
List<TacticsResultCandidate>
getHeuristicCandidates(DSEIndividual individual, UtilisationResultCacheAndHelper resultCache)
Generates candidates based on given individualprotected int
getUpdatedNumberOfCores(DiscreteRangeChoice discreteChoice, NumberOfCoresDegree numberOfCoresDegree)
protected double
getUpdatedProcessingRate(ContinousRangeChoice continousRangeChoice, ContinuousProcessingRateDegree processingRateDegree)
-
Methods inherited from class de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.impl.AbstractProcessingRateTactic
addNewNumberOfCoresCandidate, addNewProcRateCandidate
-
Methods inherited from class de.uka.ipd.sdq.dsexplore.opt4j.optimizer.heuristic.operators.AbstractTactic
doesNotImprove, getHeuristicWeight, getNumberOfGeneratedCandidates, improves, increaseCounterOfGeneratedCandidates, setHeuristicWeight
-
-
-
-
Constructor Detail
-
DecreaseProcessingRateImpl
public DecreaseProcessingRateImpl(org.opt4j.operator.copy.Copy<org.opt4j.core.Genotype> copy, DSEIndividualFactory individualFactory, DSEWorkflowConfiguration configuration)
-
-
Method Detail
-
doesMatchPrecondition
public boolean doesMatchPrecondition(DSEIndividual i, UtilisationResultCacheAndHelper resultsCache)
-
getHeuristicCandidates
public List<TacticsResultCandidate> getHeuristicCandidates(DSEIndividual individual, UtilisationResultCacheAndHelper resultCache)
Generates candidates based on given individual- Parameters:
Indivdual
- used to apply heuristic- Returns:
- Collection of generated candidates.
-
getUpdatedProcessingRate
protected double getUpdatedProcessingRate(ContinousRangeChoice continousRangeChoice, ContinuousProcessingRateDegree processingRateDegree)
- Specified by:
getUpdatedProcessingRate
in classAbstractProcessingRateTactic
- Parameters:
continousRangeChoice
-processingRateDegree
-- Returns:
-
getCandidateWeight
public double getCandidateWeight(org.palladiosimulator.analyzer.resultdecorator.resourceenvironmentdecorator.UtilisationResult utilisationResult)
- Specified by:
getCandidateWeight
in classAbstractProcessingRateTactic
-
getUpdatedNumberOfCores
protected int getUpdatedNumberOfCores(DiscreteRangeChoice discreteChoice, NumberOfCoresDegree numberOfCoresDegree)
- Specified by:
getUpdatedNumberOfCores
in classAbstractProcessingRateTactic
-
-