public class ExplainingObjective extends ExplainingCut implements IMonitorInitPropagation, IMonitorUpBranch
This neightborhood is specific in the sense that it needs to compute explanation on a solution.
Furthermore, the fixSomeVariables method creates and applies decision, so that the explanation recorder can infer.
mExplanationEngine, random
Constructor and Description |
---|
ExplainingObjective(Solver aSolver,
int level,
long seed) |
Modifier and Type | Method and Description |
---|---|
protected void |
_fixVar() |
void |
afterInitialPropagation() |
void |
afterUpBranch() |
void |
beforeInitialPropagation() |
void |
beforeUpBranch() |
protected void |
explain()
Force the failure, apply decisions to the last solution + cut => failure!
|
void |
recordSolution()
Record values of decision variables to freeze some ones during the next LNS run
|
fixSomeVariables, isSearchComplete, restrictLess
activeFastRestart, fastRestart
public ExplainingObjective(Solver aSolver, int level, long seed)
public void recordSolution()
INeighbor
recordSolution
in interface INeighbor
recordSolution
in class ExplainingCut
protected void _fixVar()
_fixVar
in class ExplainingCut
public void beforeInitialPropagation()
beforeInitialPropagation
in interface IMonitorInitPropagation
public void afterInitialPropagation()
afterInitialPropagation
in interface IMonitorInitPropagation
public void beforeUpBranch()
beforeUpBranch
in interface IMonitorUpBranch
beforeUpBranch
in class ExplainingCut
public void afterUpBranch()
afterUpBranch
in interface IMonitorUpBranch
afterUpBranch
in class ExplainingCut
protected void explain()
ExplainingCut
explain
in class ExplainingCut
Copyright © 2015. All rights reserved.