OptaPlanner core 6.2.0.CR2

org.optaplanner.core.impl.score.director.incremental
Interface IncrementalScoreCalculator<Sol extends Solution>

Type Parameters:
Sol -
All Known Subinterfaces:
ConstraintMatchAwareIncrementalScoreCalculator<Sol>
All Known Implementing Classes:
AbstractIncrementalScoreCalculator

public interface IncrementalScoreCalculator<Sol extends Solution>

Used for incremental java Score calculation. This is much faster than EasyScoreCalculator but requires much more code to implement too.

Any implementation is naturally stateful.

See Also:
IncrementalScoreDirector

Method Summary
 void afterEntityAdded(Object entity)
           
 void afterEntityRemoved(Object entity)
           
 void afterVariableChanged(Object entity, String variableName)
           
 void beforeEntityAdded(Object entity)
           
 void beforeEntityRemoved(Object entity)
           
 void beforeVariableChanged(Object entity, String variableName)
           
 Score calculateScore()
           
 void resetWorkingSolution(Sol workingSolution)
          There are no beforeEntityAdded(Object) and afterEntityAdded(Object) calls for entities that are already present in the workingSolution.
 

Method Detail

resetWorkingSolution

void resetWorkingSolution(Sol workingSolution)
There are no beforeEntityAdded(Object) and afterEntityAdded(Object) calls for entities that are already present in the workingSolution.

Parameters:
workingSolution - never null

beforeEntityAdded

void beforeEntityAdded(Object entity)

afterEntityAdded

void afterEntityAdded(Object entity)

beforeVariableChanged

void beforeVariableChanged(Object entity,
                           String variableName)

afterVariableChanged

void afterVariableChanged(Object entity,
                          String variableName)

beforeEntityRemoved

void beforeEntityRemoved(Object entity)

afterEntityRemoved

void afterEntityRemoved(Object entity)

calculateScore

Score calculateScore()
Returns:
never null

OptaPlanner core 6.2.0.CR2

Copyright © 2006-2014 JBoss by Red Hat. All Rights Reserved.