public final class HeuristicForgetModule extends Object implements ForgetListener, ExplanationListener, BackjumpListener
Modifier and Type | Field and Description |
---|---|
double |
FORGET_THRESHOLD
threshold of activity under which a clause is removed
|
int |
LEARNT_CLAUSES_NUMBER_THRESHOLD |
Constructor and Description |
---|
HeuristicForgetModule() |
Modifier and Type | Method and Description |
---|---|
void |
initialize(Core core)
initializes the component with the given solver.
|
void |
onBackjump(int oldLevel,
int newLevel)
Called when the solver backtracks.
|
void |
onExplain(MapClause explanation)
called when the conflict clause is explained
|
void |
onForget()
When a forget() event occurs, this component will try to find clauses
that can be forgotten, i.e.
|
void |
onRestart(int level)
when a restart occurs, it may be a good occasion to forget clauses
|
boolean |
shouldTriggerForget()
should we forget now ? Will always return false if the current level
is not 0
|
public int LEARNT_CLAUSES_NUMBER_THRESHOLD
public double FORGET_THRESHOLD
public void onForget()
onForget
in interface ForgetListener
public void onRestart(int level)
onRestart
in interface BackjumpListener
level
- the level at which the solver was before restartingpublic void onBackjump(int oldLevel, int newLevel)
BackjumpListener
components that want to be warned about backjumps should put themselves in Core.backjumpModules.
onBackjump
in interface BackjumpListener
oldLevel
- the level at which the solver was before backtrackingnewLevel
- the level to which the solver backtrackspublic void onExplain(MapClause explanation)
ExplanationListener
onExplain
in interface ExplanationListener
explanation
- the explanation clausepublic final boolean shouldTriggerForget()
public void initialize(Core core)
SolverComponent
initialize
in interface SolverComponent
core
- core component to initializeCopyright © 2022. All rights reserved.