choco.cp.solver.preprocessor
Class PreProcessCPSolver

java.lang.Object
  extended by choco.cp.solver.CPSolver
      extended by choco.cp.solver.preprocessor.PreProcessCPSolver
All Implemented Interfaces:
IPretty, ISolutionDisplay, IMeasures, IOptimizationMeasures, IPreSolveMeasures, ISearchMeasures, ISolutionMeasures, Solver

public class PreProcessCPSolver
extends CPSolver


Field Summary
 
Fields inherited from class choco.cp.solver.CPSolver
configuration, FINEST, GOAL, mapconstraints, mapvariables, mod2sol, model, PROPAGATION, propagationEngine, readingTime, SEARCH, SILENT, SOLUTION, strategy, tempGoal
 
Fields inherited from interface choco.kernel.solver.Solver
DEFAULT_SOLUTION_CHECKER, LOGGER
 
Constructor Summary
PreProcessCPSolver()
           
PreProcessCPSolver(Configuration configuration)
           
PreProcessCPSolver(IEnvironment env, Configuration configuration)
           
 
Method Summary
 boolean contains(Constraint c)
           
 PPSearch getBBSearch()
           
 DisjunctiveModel getDisjModel()
           
 DisjunctiveSModel getDisjSModel()
           
 PPModelToCPSolver getMod2Sol()
           
 boolean initialPropagation()
          Perform initial propagarion and measure its time
 boolean isExtensionnal()
          return true if contains at least one extensional constraints
 void read(Model m)
          read of the black box solver
 boolean rootNodeSingleton(int timelimit)
          Apply a step of singleton consistency
<MC extends Constraint,SC extends SConstraint>
void
setCstr(MC c, SC sc)
           
 boolean setDomOverDeg(CPSolver s)
          set the DomOverDeg heuristic
 boolean setDomOverWeg(CPSolver s, int inittime)
          set the DomOverWDeg heuristic
 boolean setImpact(CPSolver s, int initialisationtime)
          set the Impact heuristic
 void setRandomValueOrdering(int seed)
           
<MV extends Variable,SV extends Var>
void
setVar(MV v, SV sv)
           
 boolean setVersatile(CPSolver s, int inittime)
          set a heuristic that automatically choose between impact and DomWdeg
 
Methods inherited from class choco.cp.solver.CPSolver
_to, _to, addConstraint, addConstraint, addGoal, addIntConstant, addIntVar, addNogood, addrealConstant, addRealVar, addSetVar, around, attachGoal, checkDecisionVariables, checkSolution, checkSolution, clear, clearGoals, constraintsToString, contains, cos, createBinTreeIntVar, createBinTreeIntVar, createBooleanVar, createBoundIntVar, createBoundSetVar, createEnumIntVar, createEnumIntVar, createEnumSetVar, createEquation, createFCLargeConstraint, createIntegerConstant, createIntVar, createIntVarAddCste, createIntVarTimeCste, createListIntVar, createListIntVar, createMakespan, createNotBooleanVar, createRealConstant, createRealCos, createRealIntegerPower, createRealIntervalConstant, createRealMinus, createRealMult, createRealPlus, createRealSin, createRealVal, createSetVar, createSetVar, createTaskVar, cst, cst, decisionOnExpression, eq, eq, eq, eq, eq, eq, eq, eq, eq, eq, eqCard, eqCard, eraseConstraint, existsSolution, feasiblePairAC, feasiblePairAC, feasibleTupleAC, feasibleTupleAC, feasibleTupleFC, feasPairAC, feasPairAC, feasPairAC, feasPairAC, feasTupleAC, feasTupleFC, flushLogs, generateDefaultGoal, generateDefaultIntGoal, generateDefaultRealGoal, generateSearchLoop, generateSearchStrategy, generateSetDefaultGoal, geq, geq, geq, geq, geq, geq, geq, geq, geqCard, geqCard, getBackTrackCount, getBooleanVariables, getConfiguration, getConstraintIterator, getCstr, getEncounteredLimit, getEnvironment, getFailCount, getFirstSolution, getHorizon, getIndexfactory, getInitialPropagationTimeCount, getIntConstant, getIntConstantSet, getIntConstraint, getIntConstraintIterator, getIntDecisionVars, getIntVar, getIntVarIndex, getIntVarIndex, getIntVarIterator, getIntVarQuick, getLoggingMaxDepth, getMakespan, getMakespanValue, getModel, getNbBooleanVars, getNbConstants, getNbConstraints, getNbIntConstants, getNbIntConstraints, getNbIntVars, getNbRealConstants, getNbRealVars, getNbSetVars, getNbSolutions, getNbTaskVars, getNbVars, getNodeCount, getNogoodStore, getObjective, getObjectiveValue, getOptimumValue, getPrecision, getPropagationEngine, getReadingTimeCount, getRealConstant, getRealConstantSet, getRealDecisionVars, getRealVar, getRealVarIndex, getRealVarIterator, getRealVarQuick, getRecomputationGap, getReduction, getRestartCount, getSearchStrategy, getSetDecisionVars, getSetVar, getSetVarIndex, getSetVarIterator, getSetVarQuick, getSolutionCount, getTaskDecisionVars, getTaskVar, getTaskVarIterator, getTaskVarQuick, getTimeCount, getVar, getVar, getVar, getVar, getVar, getVar, getVar, getVar, getVar, getVar, getWorldIndex, gt, gt, gt, infeasiblePairAC, infeasiblePairAC, infeasibleTupleAC, infeasibleTupleAC, infeasibleTupleFC, infeasPairAC, infeasPairAC, infeasPairAC, infeasPairAC, infeasTupleAC, infeasTupleFC, initNogoodBase, initReading, isCompletelyInstantiated, isConsistent, isEncounteredLimit, isFeasible, isObjectiveOptimal, isOptimizationSolver, isUniqueReading, launch, leq, leq, leq, leq, leq, leq, leqCard, leqCard, lt, lt, lt, makeBinRelation, makeBinRelation, makeBinRelation, makeBinRelation, makeConstantIntVar, makeConstantIntVar, makeEquation, makeLargeRelation, makeLargeRelation, makeMapespanConstraint, makeRelation, makeSConstraint, makeSConstraint, makeSConstraintAndOpposite, makeSConstraintAndOpposite, makeTupleAC, makeTupleFC, maximize, maximize, minimize, minimize, minus, minus, minus, minus, monitorBackTrackLimit, monitorFailLimit, monitorNodeLimit, monitorTimeLimit, mult, mult, neq, neq, neq, neq, neq, neq, nextSolution, occurence, optimize, plus, plus, plus, plus, plus, post, post, post, postCut, postMakespanConstraint, postRedundantSetConstraints, postTaskConsistencyConstraints, power, preceding, preceding, preceding, pretty, printRuntimeStatistics, propagate, recordSolution, reifiedIntConstraint, reifiedIntConstraint, relationPairAC, relationPairAC, relationTupleAC, relationTupleAC, relationTupleFC, resetSearchStrategy, restoreSolution, runtimeStatistics, scalar, scalar, setBackTrackLimit, setCardReasoning, setDoMaximize, setFailLimit, setFeasible, setFirstSolution, setGeometricRestart, setGeometricRestart, setHorizon, setIlogGoal, setLoggingMaxDepth, setLubyRestart, setLubyRestart, setMakespan, setMaximizationObjective, setMinimizationObjective, setModel, setNodeLimit, setObjective, setPrecision, setRandomSelectors, setRandomSelectors, setRandomSelectors, setRecomputation, setRecomputationGap, setRecordNogoodFromRestart, setReduction, setRestart, setRestartLimit, setSolutionDisplay, setSolutionPoolCapacity, setTimeLimit, setUniqueReading, setValIntIterator, setValIntSelector, setValRealIterator, setValRealSelector, setValSetIterator, setValSetSelector, setVarIntSelector, setVarRealSelector, setVarSetSelector, setVerbosity, sin, solutionToString, solve, solve, solveAll, sum, sum, summaryToString, toString, useRecomputation, varsToString, worldPop, worldPopDuringPropagation, worldPopUntil, worldPush, worldPushDuringPropagation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PreProcessCPSolver

public PreProcessCPSolver()

PreProcessCPSolver

public PreProcessCPSolver(Configuration configuration)

PreProcessCPSolver

public PreProcessCPSolver(IEnvironment env,
                          Configuration configuration)
Method Detail

getDisjModel

public final DisjunctiveModel getDisjModel()

getDisjSModel

public final DisjunctiveSModel getDisjSModel()

getMod2Sol

public PPModelToCPSolver getMod2Sol()

setRandomValueOrdering

public void setRandomValueOrdering(int seed)

read

public void read(Model m)
read of the black box solver

Specified by:
read in interface Solver
Overrides:
read in class CPSolver
Parameters:
m - model

setVersatile

public boolean setVersatile(CPSolver s,
                            int inittime)
set a heuristic that automatically choose between impact and DomWdeg

Parameters:
s - solver
inittime - init time
Returns:
true if the problem is still feasible

setDomOverDeg

public boolean setDomOverDeg(CPSolver s)
set the DomOverDeg heuristic

Parameters:
s - solver
Returns:
true if the problem was not detected infeasible in the process

setDomOverWeg

public boolean setDomOverWeg(CPSolver s,
                             int inittime)
set the DomOverWDeg heuristic

Parameters:
s - solver
inittime - init time
Returns:
true if the problem was not detected infeasible in the process

setImpact

public boolean setImpact(CPSolver s,
                         int initialisationtime)
set the Impact heuristic

Parameters:
s - solver
initialisationtime - init time
Returns:
true if the problem was not detected infeasible in the process

isExtensionnal

public boolean isExtensionnal()
return true if contains at least one extensional constraints

Returns:
a boolean

getBBSearch

public PPSearch getBBSearch()

setVar

public final <MV extends Variable,SV extends Var> void setVar(MV v,
                                                              SV sv)

setCstr

public final <MC extends Constraint,SC extends SConstraint> void setCstr(MC c,
                                                                         SC sc)

contains

public final boolean contains(Constraint c)

initialPropagation

public boolean initialPropagation()
Perform initial propagarion and measure its time

Returns:
true if the problem is still consistent at this stage

rootNodeSingleton

public boolean rootNodeSingleton(int timelimit)
Apply a step of singleton consistency

Parameters:
timelimit - the time limit to respect
Returns:
boolean


Copyright © 2012. All Rights Reserved.