public abstract class AbstractLinMultiObjOptimizer extends PseudoOptDecorator implements IMultiObjOptimizationProblem
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
initConstraintsSet |
protected IIntegerPBSolver |
integerSolver |
protected List<ObjectiveFunction> |
objs |
objectiveValue| Constructor and Description |
|---|
AbstractLinMultiObjOptimizer(IIntegerPBSolver solver) |
| Modifier and Type | Method and Description |
|---|---|
void |
addObjectiveFunction(ObjectiveFunction obj) |
boolean |
admitABetterSolution() |
boolean |
admitABetterSolution(IVecInt assumps) |
BigInteger[] |
getObjectiveValues()
Return the objective functions values through the last model found.
|
boolean |
hasNoObjectiveFunction() |
protected abstract void |
setGlobalObj()
Implement this method to set a global linear objective function, which
depends on the added objective functions and the initialization-added
constraints.
|
protected abstract void |
setInitConstraints()
Implement this method to add some constraints before the first call to
the solver.
|
void |
setObjectiveFunction(ObjectiveFunction objf)
Provide an objective function to the solver.
|
calculateObjective, discard, discardCurrentModel, discardCurrentSolution, forceObjectiveValueTo, getObjectiveValue, isOptimal, isSatisfiable, isSatisfiable, isSatisfiable, isSatisfiable, model, model, modelWithInternalVariables, nonOptimalMeansSatisfiable, removeSubsumedOptConstr, reset, setTimeout, setTimeoutForFindingBetterSolution, toStringaddAtLeast, addAtLeast, addAtMost, addAtMost, addExactly, addExactly, addPseudoBoolean, getObjectiveFunctionaddAllClauses, addAtLeast, addAtMost, addBlockingClause, addClause, addConstr, addExactly, addParity, clearDecorated, clearLearntClauses, createBlockingClauseForCurrentModel, decorated, expireTimeout, findModel, findModel, getLogPrefix, getOriginInModel, getSearchListener, getSolvingEngine, getStat, getTimeout, getTimeoutMs, isDBSimplificationAllowed, isSolverKeptHot, isVerbose, nConstraints, newVar, newVar, nextFreeVarId, nVars, primeImplicant, primeImplicant, printInfos, printInfos, printStat, printStat, printStat, realNumberOfVariables, registerLiteral, removeConstr, removeSubsumedConstr, setDBSimplificationAllowed, setDecorated, setExpectedNumberOfClauses, setKeepSolverHot, setLogPrefix, setSearchListener, setTimeoutMs, setTimeoutOnConflicts, setUnitClauseConsumer, setUnitClauseProvider, setVerbose, toString, unsatExplanationclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcalculateObjective, discard, discardCurrentSolution, forceObjectiveValueTo, getObjectiveValue, isOptimal, nonOptimalMeansSatisfiable, setTimeoutForFindingBetterSolutionfindModel, findModel, isSatisfiable, isSatisfiable, isSatisfiable, isSatisfiable, model, nConstraints, newVar, nVars, primeImplicant, primeImplicant, printInfos, printInfosmodeladdAllClauses, addAtLeast, addAtMost, addBlockingClause, addClause, addConstr, addExactly, addParity, clearLearntClauses, createBlockingClauseForCurrentModel, expireTimeout, getLogPrefix, getOriginInModel, getSearchListener, getSolvingEngine, getStat, getTimeout, getTimeoutMs, isDBSimplificationAllowed, isSolverKeptHot, isVerbose, newVar, nextFreeVarId, printStat, printStat, printStat, realNumberOfVariables, registerLiteral, removeConstr, removeSubsumedConstr, setDBSimplificationAllowed, setExpectedNumberOfClauses, setKeepSolverHot, setLogPrefix, setSearchListener, setTimeoutMs, setTimeoutOnConflicts, setUnitClauseConsumer, setUnitClauseProvider, setVerbose, unsatExplanationprotected final transient List<ObjectiveFunction> objs
protected boolean initConstraintsSet
protected final IIntegerPBSolver integerSolver
public AbstractLinMultiObjOptimizer(IIntegerPBSolver solver)
public void addObjectiveFunction(ObjectiveFunction obj)
addObjectiveFunction in interface IMultiObjOptimizationProblempublic void setObjectiveFunction(ObjectiveFunction objf)
IPBSolversetObjectiveFunction in interface IPBSolversetObjectiveFunction in class PseudoOptDecoratorobjf - the objective functionpublic BigInteger[] getObjectiveValues()
getObjectiveValues in interface IMultiObjOptimizationProblempublic boolean admitABetterSolution()
throws TimeoutException
admitABetterSolution in interface IOptimizationProblemadmitABetterSolution in class PseudoOptDecoratorTimeoutExceptionpublic boolean admitABetterSolution(IVecInt assumps) throws TimeoutException
admitABetterSolution in interface IOptimizationProblemadmitABetterSolution in class PseudoOptDecoratorTimeoutExceptionpublic boolean hasNoObjectiveFunction()
hasNoObjectiveFunction in interface IOptimizationProblemhasNoObjectiveFunction in class PseudoOptDecoratorprotected abstract void setInitConstraints()
protected abstract void setGlobalObj()
Copyright © 2020 Centre de Recherche en Informatique de Lens (CRIL). All rights reserved.