Reduce strategy used during solving. More...
#include <solver_strategies.h>
Public Types | |
enum | Algorithm { reduce_linear = 0, reduce_stable = 1, reduce_sort = 2, reduce_heap = 3 } |
Reduction algorithm to use during solving. More... | |
enum | EstimateSize { est_dynamic = 0, est_con_complexity = 1, est_num_constraints = 2, est_num_vars = 3 } |
enum | Score { score_act = 0, score_lbd = 1, score_both = 2 } |
Score to measure "activity" of learnt constraints. More... | |
Public Member Functions | |
ReduceStrategy () | |
Static Public Member Functions | |
static uint32 | asScore (Score sc, const Clasp::Activity &act) |
static int | compare (Score sc, const Clasp::Activity &lhs, const Clasp::Activity &rhs) |
static uint32 | scoreAct (const Activity &act) |
static uint32 | scoreBoth (const Activity &act) |
static uint32 | scoreLbd (const Activity &act) |
Public Attributes | |
uint32 | algo: 2 |
uint32 | estimate: 2 |
uint32 | fReduce: 7 |
uint32 | fRestart: 7 |
uint32 | glue: 8 |
uint32 | noGlue: 1 |
uint32 | score: 2 |
Reduce strategy used during solving.
A reduce strategy mainly consists of an algorithm and a scoring scheme for measuring "activity" of learnt constraints.
Definition at line 220 of file solver_strategies.h.
Reduction algorithm to use during solving.
Definition at line 222 of file solver_strategies.h.
Definition at line 234 of file solver_strategies.h.
Score to measure "activity" of learnt constraints.
score_act |
Activity only: how often constraint is used during conflict analysis. |
score_lbd |
Use literal block distance as activity. |
score_both |
Use activity and lbd together. |
Definition at line 229 of file solver_strategies.h.
Clasp::ReduceStrategy::ReduceStrategy | ( | ) | [inline] |
Definition at line 243 of file solver_strategies.h.
static uint32 Clasp::ReduceStrategy::asScore | ( | Score | sc, |
const Clasp::Activity & | act | ||
) | [inline, static] |
Definition at line 250 of file solver_strategies.h.
static int Clasp::ReduceStrategy::compare | ( | Score | sc, |
const Clasp::Activity & | lhs, | ||
const Clasp::Activity & | rhs | ||
) | [inline, static] |
Definition at line 244 of file solver_strategies.h.
static uint32 Clasp::ReduceStrategy::scoreAct | ( | const Activity & | act | ) | [inline, static] |
Definition at line 240 of file solver_strategies.h.
static uint32 Clasp::ReduceStrategy::scoreBoth | ( | const Activity & | act | ) | [inline, static] |
Definition at line 242 of file solver_strategies.h.
static uint32 Clasp::ReduceStrategy::scoreLbd | ( | const Activity & | act | ) | [inline, static] |
Definition at line 241 of file solver_strategies.h.
uint32 Clasp::ReduceStrategy::algo |
One of Algorithm.
Definition at line 259 of file solver_strategies.h.
How to estimate problem size in init.
Definition at line 260 of file solver_strategies.h.
Fraction of nogoods to remove in percent.
Definition at line 256 of file solver_strategies.h.
Fraction of nogoods to remove on restart.
Definition at line 257 of file solver_strategies.h.
uint32 Clasp::ReduceStrategy::glue |
Don't remove nogoods with lbd <= glue.
Definition at line 255 of file solver_strategies.h.
Do not count glue clauses in limit.
Definition at line 261 of file solver_strategies.h.
uint32 Clasp::ReduceStrategy::score |
One of Score.
Definition at line 258 of file solver_strategies.h.