org.drools.planner.core.localsearch.decider.acceptor.tabu
Class AbstractTabuAcceptor
java.lang.Object
org.drools.planner.core.localsearch.event.LocalSearchSolverPhaseLifecycleListenerAdapter
org.drools.planner.core.localsearch.decider.acceptor.AbstractAcceptor
org.drools.planner.core.localsearch.decider.acceptor.tabu.AbstractTabuAcceptor
- All Implemented Interfaces:
- EventListener, Acceptor, LocalSearchSolverPhaseLifecycleListener
- Direct Known Subclasses:
- MoveTabuAcceptor, PropertyTabuAcceptor, SolutionTabuAcceptor
public abstract class AbstractTabuAcceptor
- extends AbstractAcceptor
Abstract superclass for all Tabu Acceptors.
- See Also:
Acceptor
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
completeTabuSize
protected int completeTabuSize
partialTabuSize
protected int partialTabuSize
aspirationEnabled
protected boolean aspirationEnabled
assertTabuHashCodeCorrectness
protected boolean assertTabuHashCodeCorrectness
tabuToStepIndexMap
protected Map<Object,Integer> tabuToStepIndexMap
tabuSequenceList
protected List<Object> tabuSequenceList
AbstractTabuAcceptor
public AbstractTabuAcceptor()
getCompleteTabuSize
public int getCompleteTabuSize()
setCompleteTabuSize
public void setCompleteTabuSize(int completeTabuSize)
setPartialTabuSize
public void setPartialTabuSize(int partialTabuSize)
setAspirationEnabled
public void setAspirationEnabled(boolean aspirationEnabled)
setAssertTabuHashCodeCorrectness
public void setAssertTabuHashCodeCorrectness(boolean assertTabuHashCodeCorrectness)
phaseStarted
public void phaseStarted(LocalSearchSolverPhaseScope localSearchSolverPhaseScope)
- Specified by:
phaseStarted
in interface LocalSearchSolverPhaseLifecycleListener
- Overrides:
phaseStarted
in class LocalSearchSolverPhaseLifecycleListenerAdapter
calculateAcceptChance
public double calculateAcceptChance(MoveScope moveScope)
- Description copied from interface:
Acceptor
- TODO the use for an acceptChance between 0.0 and 1.0 is unproven. A boolean instead of a double is sufficient?
- Parameters:
moveScope
- not null
- Returns:
- never negative; if rejected 0.0; if accepted higher than 0.0 (usually 1.0)
calculatePartialTabuAcceptChance
protected double calculatePartialTabuAcceptChance(int partialTabuTime)
stepTaken
public void stepTaken(LocalSearchStepScope localSearchStepScope)
- Specified by:
stepTaken
in interface LocalSearchSolverPhaseLifecycleListener
- Overrides:
stepTaken
in class LocalSearchSolverPhaseLifecycleListenerAdapter
findTabu
protected abstract Collection<? extends Object> findTabu(MoveScope moveScope)
findNewTabu
protected abstract Collection<? extends Object> findNewTabu(LocalSearchStepScope localSearchStepScope)
Copyright © 2001-2011 JBoss by Red Hat. All Rights Reserved.