Modifier and Type | Field and Description |
---|---|
protected ICounter |
counter
Restart counter
|
protected Move |
move
the strategy required to complete the generated fragment
|
protected Neighbor |
neighbor
Neighbor to used
|
protected org.chocosolver.solver.search.loop.move.MoveLNS.PropLNS |
prop |
protected long |
solutions
Number of solutions found so far
|
Constructor and Description |
---|
MoveLNS(Move move,
Neighbor neighbor,
ICounter restartCounter)
Create a move which defines a Large Neighborhood Search.
|
Modifier and Type | Method and Description |
---|---|
boolean |
extend(Solver solver)
Return false when:
the underlying search has no more decision to provide,
|
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.
|
void |
loadFromSolution(Solution solution,
Solver solver)
Give an initial solution to begin with if called before executing the solving process
or erase the last recorded one otherwise.
|
boolean |
repair(Solver solver)
Return false when :
move.repair(searchLoop) returns false and neighbor is complete.
|
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.
|
protected Move move
protected Neighbor neighbor
protected long solutions
protected ICounter counter
protected org.chocosolver.solver.search.loop.move.MoveLNS.PropLNS prop
public boolean init()
Move
public boolean extend(Solver solver)
Return true when:
Restart when:
public boolean repair(Solver solver)
Restart when:
public void loadFromSolution(Solution solution, Solver solver)
solution
- a solution to recordsolver
- that manages the LNSpublic void setTopDecisionPosition(int position)
Move
Move.extend(Solver)
and is checked on Move.repair(Solver)
.setTopDecisionPosition
in interface Move
position
- position of the last decision taken before applying this movepublic <V extends Variable> AbstractStrategy<V> getStrategy()
Move
getStrategy
in interface Move
V
- the type of variable managed by the strategypublic <V extends Variable> void setStrategy(AbstractStrategy<V> aStrategy)
Move
setStrategy
in interface Move
V
- the type of variable managed by the strategyaStrategy
- a search strategypublic List<Move> getChildMoves()
Move
getChildMoves
in interface Move
public void setChildMoves(List<Move> someMoves)
Move
setChildMoves
in interface Move
someMoves
- a new child moveCopyright © 2018. All rights reserved.