|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectchoco.AbstractEntity
choco.AbstractSolver
choco.search.AbstractGlobalSearchSolver
choco.real.search.AbstractRealOptimize
public abstract class AbstractRealOptimize
J-CHOCO Copyright (C) F. Laburthe, 1999-2003
An open-source Constraint Programming Kernel for Research and Education Created by: Guillaume on 20 juil. 2004
Field Summary | |
---|---|
boolean |
doMaximize
a boolean indicating whether we want to maximize (true) or minize (false) the objective variable |
double |
lowerBound
the lower bound of the objective value. |
RealVar |
objective
the variable modelling the objective value |
double |
targetLowerBound
a tentative lower bound |
double |
targetUpperBound
a tentative upper bound |
double |
upperBound
the upper bound of the objective value This value comes from the problem definition; it is strengthened by the search history (solutions found & no-goods) |
Fields inherited from class choco.search.AbstractGlobalSearchSolver |
---|
baseWorld, currentTraceIndex, DOWN_BRANCH, encounteredLimit, INIT_SEARCH, limits, loggingMaxDepth, mainGoal, nbSolutions, nextMove, OPEN_NODE, stopAtFirstSol, traceStack, UP_BRANCH |
Fields inherited from class choco.AbstractSolver |
---|
logger, maxNbSolutionStored, solutions |
Fields inherited from class choco.AbstractEntity |
---|
hook, problem |
Constructor Summary | |
---|---|
protected |
AbstractRealOptimize(RealVar obj,
boolean maximize)
constructor |
Method Summary | |
---|---|
double |
getBestObjectiveValue()
|
double |
getObjectiveTarget()
the target for the objective function: we are searching for a solution at least as good as this (tentative bound) |
double |
getObjectiveValue()
v1.0 accessing the objective value of an optimization problem (note that the objective value may not be instantiated, while all other variables are) |
void |
initBounds()
initialization of the optimization bound data structure |
void |
postDynamicCut()
we use targetBound data structures for the optimization cuts |
void |
postTargetBound()
propagating the optimization cuts from the new target bounds |
void |
postTargetLowerBound()
|
void |
postTargetUpperBound()
|
void |
recordSolution()
TODO |
void |
setBound()
resetting the optimization bounds |
void |
setTargetBound()
resetting the values of the target bounds (bounds for the remaining search) |
protected void |
setTargetLowerBound()
|
protected void |
setTargetUpperBound()
|
Methods inherited from class choco.search.AbstractGlobalSearchSolver |
---|
endTreeNode, endTreeSearch, getEncounteredLimit, incrementalRun, isEncounteredLimit, newTreeNode, newTreeSearch, nextSolution, popTrace, popTraceUntil, printRuntimeStatistics, pushTrace, run, setLoggingMaxDepth, topTrace |
Methods inherited from class choco.AbstractSolver |
---|
existsSolution, makeSolutionFromCurrentState, restoreBestSolution, showSolution, storeSolution |
Methods inherited from class choco.AbstractEntity |
---|
getProblem, pretty |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public boolean doMaximize
public RealVar objective
public double lowerBound
public double upperBound
public double targetUpperBound
public double targetLowerBound
Constructor Detail |
---|
protected AbstractRealOptimize(RealVar obj, boolean maximize)
obj
- the objective variablemaximize
- maximization or minimization ?Method Detail |
---|
public double getObjectiveValue()
public double getBestObjectiveValue()
public double getObjectiveTarget()
public void initBounds()
public void recordSolution()
recordSolution
in class AbstractGlobalSearchSolver
public void setBound()
public void setTargetBound()
protected void setTargetLowerBound()
protected void setTargetUpperBound()
public void postTargetBound() throws ContradictionException
ContradictionException
public void postTargetLowerBound() throws ContradictionException
ContradictionException
public void postTargetUpperBound() throws ContradictionException
ContradictionException
public void postDynamicCut() throws ContradictionException
postDynamicCut
in class AbstractGlobalSearchSolver
ContradictionException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |