public interface Move
The aim of the component, unlike other ones, is not to prune the search space but rather to to explore it.
Created by cprudhom on 01/09/15. Project: choco.
Modifier and Type | Method and Description |
---|---|
boolean |
extend(Solver solver)
Performs a move when the CSP associated to the current node of the search space is not proven to be not consistent.
|
List<Move> |
getChildMoves()
Returns the child moves or null
Some Move only accepts one single move as child.
|
<V extends Variable> |
getStrategy()
Returns the search strategy in use.
|
boolean |
init()
Called before the search starts.
|
boolean |
repair(Solver solver)
Performs a move when the CSP associated to the current node of the search space is proven to be not consistent.
|
void |
setChildMoves(List<Move> someMoves)
Overrides this child moves (if possible and if any).
|
<V extends Variable> |
setStrategy(AbstractStrategy<V> aStrategy)
Defines a search strategy, that is, a service which computes and returns decisions.
|
void |
setTopDecisionPosition(int position)
Indicates the position of decision made just before selecting this move.
|
boolean init()
boolean extend(Solver solver)
solver
- reference the solvertrue
if an extension can be done, false
when no more extension is possible.boolean repair(Solver solver)
solver
- reference the solvertrue
if a reparation can be done, false
when no more reparation is possible.<V extends Variable> AbstractStrategy<V> getStrategy()
V
- the type of variable managed by the strategy<V extends Variable> void setStrategy(AbstractStrategy<V> aStrategy)
V
- the type of variable managed by the strategyaStrategy
- a search strategyList<Move> getChildMoves()
void setChildMoves(List<Move> someMoves)
someMoves
- a new child moveUnsupportedOperationException
- when the size of Move expected is not respected.void setTopDecisionPosition(int position)
extend(Solver)
and is checked on repair(Solver)
.position
- position of the last decision taken before applying this moveCopyright © 2018. All rights reserved.