Class markov::TabuWalker
Tabu walker.
Inherited Members
Constructors
TabuWalker()
Create a TabuWalker instance with uninitialized model and state.
Declaration
markov::TabuWalker<Model>::TabuWalker()
Methods
init()
Must be called after the rng_
and model_
have been set. It initializes the walker to a random state and precomputes its current cost.
Note
This is typically the only direct call to calculate_cost
; from here the current cost_
is updated from the computed difference at each step.
Declaration
void markov::TabuWalker<Model>::init() override
accept()
Decide whether to accept a given cost increase.
Declaration
bool markov::TabuWalker<Model>::accept(const typename Model::Cost_T&cost_diff) override
make_sweep()
Declaration
void markov::TabuWalker<Model>::make_sweep()
set_tenure()
Set tabu tenure parameter.
Declaration
void markov::TabuWalker<Model>::set_tenure(unsigned int tabu_tenure)
memory_estimate()
Estimate memory consumption using model parameters.
Declaration
static size_t markov::TabuWalker<Model>::memory_estimate(const Model&model)
clear_tabu_list()
Declaration
std::enable_if<std::is_same<TT, size_t>::value, void>::type markov::TabuWalker<Model>::clear_tabu_list(void)
clear_tabu_list()
Declaration
std::enable_if<!std::is_same<TT, size_t>::value, void>::type markov::TabuWalker<Model>::clear_tabu_list(void)
get_transition()
Declaration
std::enable_if<std::is_same<TT, size_t>::value, TT>::type markov::TabuWalker<Model>::get_transition(size_t i)
get_transition()
Declaration
std::enable_if<!std::is_same<TT, size_t>::value, TT>::type markov::TabuWalker<Model>::get_transition(size_t)
local_search_init()
Declaration
void markov::TabuWalker<Model>::local_search_init()
local_search_sweep()
Declaration
void markov::TabuWalker<Model>::local_search_sweep()