Class ExactModel<T>
- Type Parameters:
T- the type representing the state space of the problem
ExactSolver
It specifies the
Problem instance to solve and optionally provides custom heuristics,
dominance relations, and debugging or verbosity configurations.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfrontier()Returns the frontier management strategy used to store and expand the current layer of the decision diagram.final StateRanking<T> ranking()Returns the ranking function used to order states within a layer.final Relaxation<T> Returns the relaxation of the model used to evaluate the nodes or layers of the decision diagram.final ReductionStrategy<T> Strategy to select which nodes should be merged together on a relaxed DD.final ReductionStrategy<T> Strategy to select which nodes should be dropped on a restricted DD.final StateDistance<T> final booleanuseCache()Indicates whether caching should be used during the diagram construction.final VariableHeuristic<T> Returns the heuristic used to determine the next variable to branch on during decision diagram compilation.final WidthHeuristic<T> Returns the width heuristic controlling the maximum number of nodes per layer.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.ddolib.modeling.DdoModel
disableDominance, disableLowerBound, exportDot, fixWidth, setCutSetType, toExactModel, useCache, useLNSMethods inherited from interface org.ddolib.modeling.Model
debugMode, dominance, lowerBound, problem, upperBound, verbosityLevel
-
Constructor Details
-
ExactModel
public ExactModel()
-
-
Method Details
-
relaxation
Description copied from interface:DdoModelReturns the relaxation of the model used to evaluate the nodes or layers of the decision diagram.The relaxation defines a simplified or approximate version of the problem, which helps bound the objective function or guide the search.
- Specified by:
relaxationin interfaceDdoModel<T>- Returns:
- the
Relaxationobject associated with this model
-
ranking
Description copied from interface:DdoModelReturns the ranking function used to order states within a layer.The default implementation imposes no specific order (always returns 0), meaning all states are considered equal in priority. Override this method to implement problem-specific ranking heuristics.
- Specified by:
rankingin interfaceDdoModel<T>- Returns:
- a
StateRankingcomparator between states
-
widthHeuristic
Description copied from interface:DdoModelReturns the width heuristic controlling the maximum number of nodes per layer.The default implementation uses a fixed width of 10.
- Specified by:
widthHeuristicin interfaceDdoModel<T>- Returns:
- a
WidthHeuristicinstance controlling diagram width
-
frontier
Description copied from interface:DdoModelReturns the frontier management strategy used to store and expand the current layer of the decision diagram.The default implementation creates a
SimpleFrontierbased onDdoModel.ranking()and usesCutSetType.LastExactLayeras the cut set. -
useCache
public final boolean useCache()Description copied from interface:DdoModelIndicates whether caching should be used during the diagram construction.Caching stores intermediate results to avoid redundant computations. By default, caching is disabled.
-
relaxStrategy
Description copied from interface:DdoModelStrategy to select which nodes should be merged together on a relaxed DD.- Specified by:
relaxStrategyin interfaceDdoModel<T>
-
restrictStrategy
Description copied from interface:DdoModelStrategy to select which nodes should be dropped on a restricted DD.- Specified by:
restrictStrategyin interfaceDdoModel<T>
-
stateDistance
- Specified by:
stateDistancein interfaceDdoModel<T>
-
variableHeuristic
Description copied from interface:ModelReturns the heuristic used to determine the next variable to branch on during decision diagram compilation.By default, this method returns a
DefaultVariableHeuristicinstance.- Specified by:
variableHeuristicin interfaceModel<T>- Returns:
- the
VariableHeuristicguiding variable selection
-