public class OptimalModelIterator extends PBSolverDecorator
| Modifier and Type | Field and Description |
|---|---|
protected long |
nbModelFound |
| Constructor and Description |
|---|
OptimalModelIterator(IPBSolver solver)
Create an iterator over the solutions available in
solver. |
OptimalModelIterator(IPBSolver solver,
long bound)
Create an iterator over a limited number of solutions available in
solver. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
isSatisfiable() |
boolean |
isSatisfiable(IVecInt assumps) |
int[] |
model() |
void |
reset() |
addAtLeast, addAtLeast, addAtMost, addAtMost, addExactly, addExactly, addPseudoBoolean, getObjectiveFunction, setObjectiveFunctionaddAllClauses, addAtLeast, addAtMost, addBlockingClause, addClause, addConstr, addExactly, addParity, clearDecorated, clearLearntClauses, createBlockingClauseForCurrentModel, decorated, discardCurrentModel, expireTimeout, findModel, findModel, getLogPrefix, getOriginInModel, getSearchListener, getSolvingEngine, getStat, getTimeout, getTimeoutMs, isDBSimplificationAllowed, isSatisfiable, isSatisfiable, isSolverKeptHot, isVerbose, model, modelWithInternalVariables, nConstraints, newVar, newVar, nextFreeVarId, nVars, primeImplicant, primeImplicant, printInfos, printInfos, printStat, printStat, printStat, realNumberOfVariables, registerLiteral, removeConstr, removeSubsumedConstr, setDBSimplificationAllowed, setDecorated, setExpectedNumberOfClauses, setKeepSolverHot, setLogPrefix, setSearchListener, setTimeout, setTimeoutMs, setTimeoutOnConflicts, setUnitClauseConsumer, setUnitClauseProvider, setVerbose, toString, toString, unsatExplanationclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddAllClauses, addAtLeast, addAtMost, addBlockingClause, addClause, addConstr, addExactly, addParity, clearLearntClauses, createBlockingClauseForCurrentModel, discardCurrentModel, expireTimeout, getLogPrefix, getOriginInModel, getSearchListener, getSolvingEngine, getStat, getTimeout, getTimeoutMs, isDBSimplificationAllowed, isSolverKeptHot, isVerbose, modelWithInternalVariables, newVar, nextFreeVarId, printStat, printStat, printStat, realNumberOfVariables, registerLiteral, removeConstr, removeSubsumedConstr, setDBSimplificationAllowed, setExpectedNumberOfClauses, setKeepSolverHot, setLogPrefix, setSearchListener, setTimeout, setTimeoutMs, setTimeoutOnConflicts, setUnitClauseConsumer, setUnitClauseProvider, setVerbose, toString, unsatExplanationfindModel, findModel, isSatisfiable, isSatisfiable, nConstraints, newVar, nVars, primeImplicant, primeImplicant, printInfos, printInfosmodelpublic OptimalModelIterator(IPBSolver solver)
solver.
The iterator will look for one new model at each call to isSatisfiable()
and will discard that model at each call to model().solver - a solver containing the constraints to satisfy.isSatisfiable(),
SolverDecorator.isSatisfiable(boolean),
isSatisfiable(IVecInt),
SolverDecorator.isSatisfiable(IVecInt, boolean),
model()public OptimalModelIterator(IPBSolver solver, long bound)
solver. The iterator will look for one new model at each
call to isSatisfiable() and will discard that model at each call to
model(). At most bound calls to models() will be allowed
before the method isSatisfiable() returns false.solver - a solver containing the constraints to satisfy.bound - the maximum number of models to return.isSatisfiable(),
SolverDecorator.isSatisfiable(boolean),
isSatisfiable(IVecInt),
SolverDecorator.isSatisfiable(IVecInt, boolean),
model()public int[] model()
model in interface IProblemmodel in class SolverDecorator<IPBSolver>public boolean isSatisfiable()
throws TimeoutException
isSatisfiable in interface IProblemisSatisfiable in class SolverDecorator<IPBSolver>TimeoutExceptionpublic boolean isSatisfiable(IVecInt assumps) throws TimeoutException
isSatisfiable in interface IProblemisSatisfiable in class SolverDecorator<IPBSolver>TimeoutExceptionpublic void reset()
reset in interface ISolverreset in class SolverDecorator<IPBSolver>Copyright © 2020 Centre de Recherche en Informatique de Lens (CRIL). All rights reserved.