choco.palm.benders
Class BendersSolver
java.lang.Object
choco.AbstractEntity
choco.Solver
choco.palm.benders.BendersSolver
- All Implemented Interfaces:
- Entity
public class BendersSolver
- extends Solver
A solver for the benders algorithm
Fields inherited from class choco.Solver |
doMaximize, firstSolution, loggingMaxDepth, nodeLimit, objective, PROPAGATION, restart, SEARCH, SILENT, SOLUTION, solver, timeLimit, valIterator, valSelector, varSelector |
Methods inherited from class choco.Solver |
addGoal, attachGoal, flushLog, flushLogs, generateGoal, getEncounteredLimit, getFirstSolution, getNbSolutions, getSearchSolver, isEncounteredLimit, launch, setDoMaximize, setFirstSolution, setLoggingMaxDepth, setNodeLimit, setObjective, setRestart, setTimeLimit, setValIterator, setValSelector, setVarSelector, setVerbosity, setVerbosity |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
public static java.util.logging.Logger logger
subVarSelector
protected java.util.ArrayList subVarSelector
- Branching heuristics for each sub-problem
subValIterator
protected java.util.ArrayList subValIterator
subValSelector
protected java.util.ArrayList subValSelector
objectives
protected IntDomainVar[] objectives
relation
protected MasterSlavesRelation relation
- Objective function
BendersSolver
public BendersSolver(AbstractProblem pb)
initHeuristic
public void initHeuristic(java.util.ArrayList heuri)
setSubVarSelector
public void setSubVarSelector(int i,
IVarSelector varSelector)
- Sets the variable selector the search solver should use.
setSubValIterator
public void setSubValIterator(int i,
IValIterator valIterator)
- Sets the value iterator the search should use
setSubValSelector
public void setSubValSelector(int i,
IValSelector valSelector)
- Sets the value selector the search should use
generateSearchSolver
public void generateSearchSolver(AbstractProblem pb)
- Overrides:
generateSearchSolver
in class Solver
generateMasterGoal
protected void generateMasterGoal(AbstractProblem pb)
attachMasterGoal
protected void attachMasterGoal(AbstractIntBranching branching)
generateSubGoals
protected void generateSubGoals(AbstractProblem pb)
attachSubGoal
protected void attachSubGoal(int i,
AbstractIntBranching branching)
setRelation
public void setRelation(MasterSlavesRelation relation)
setObjectives
public void setObjectives(IntDomainVar[] objectives)
getOptimumValue
public java.lang.Number getOptimumValue()
- Overrides:
getOptimumValue
in class Solver