diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2011-11-12 17:50:41 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2011-11-12 17:50:41 -0800 |
commit | df3e23ae3a20d0f6b8a1d3512e322b98057eb136 (patch) | |
tree | 5ee7c1c6a2618fad81211dd4312dfa9b9a923bb2 /src/sat/bsat | |
parent | fa96b8d7988da75e38d45b719d21a64e5ecbdb9c (diff) | |
download | abc-df3e23ae3a20d0f6b8a1d3512e322b98057eb136.tar.gz abc-df3e23ae3a20d0f6b8a1d3512e322b98057eb136.tar.bz2 abc-df3e23ae3a20d0f6b8a1d3512e322b98057eb136.zip |
Enabled skipping random decisions in PBA, which are performed by default.
Diffstat (limited to 'src/sat/bsat')
-rw-r--r-- | src/sat/bsat/satSolver.c | 2 | ||||
-rw-r--r-- | src/sat/bsat/satSolver.h | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/sat/bsat/satSolver.c b/src/sat/bsat/satSolver.c index ac2202dc..d4726b81 100644 --- a/src/sat/bsat/satSolver.c +++ b/src/sat/bsat/satSolver.c @@ -967,7 +967,7 @@ static lbool sat_solver_search(sat_solver* s, ABC_INT64_T nof_conflicts, ABC_INT int* levels = s->levels; double var_decay = 0.95; double clause_decay = 0.999; - double random_var_freq = 0.02; + double random_var_freq = s->fNotUseRandom ? 0.0 : 0.02; ABC_INT64_T conflictC = 0; veci learnt_clause; diff --git a/src/sat/bsat/satSolver.h b/src/sat/bsat/satSolver.h index a33c7240..a67e829a 100644 --- a/src/sat/bsat/satSolver.h +++ b/src/sat/bsat/satSolver.h @@ -175,6 +175,7 @@ struct sat_solver_t Sat_MmStep_t * pMem; int fSkipSimplify; // set to one to skip simplification of the clause database + int fNotUseRandom; // do not allow random decisions with a fixed probability int * pGlobalVars; // for experiments with global vars during interpolation // clause store @@ -228,6 +229,13 @@ static int sat_solver_set_runtime_limit(sat_solver* s, int Limit) return nRuntimeLimit; } +static int sat_solver_set_random(sat_solver* s, int fNotUseRandom) +{ + int fNotUseRandomOld = s->fNotUseRandom; + s->fNotUseRandom = fNotUseRandom; + return fNotUseRandomOld; +} + ABC_NAMESPACE_HEADER_END #endif |