15 #ifndef PAAL_N_QUEENS_LOCAL_SEARCH_HPP 
   16 #define PAAL_N_QUEENS_LOCAL_SEARCH_HPP 
   18 #define BOOST_RESULT_OF_USE_DECLTYPE 
   33 template <
typename... Args>
 
   35     data_structures::NameWithDefault<GetMoves, n_queensget_moves>,
 
   36     data_structures::NameWithDefault<Gain, n_queens_gain>,
 
   55 template <
typename SearchStrategy, 
typename ContinueOnSuccess,
 
   56           typename ContinueOnFail, 
typename NQueensPositionsVector,
 
   59                                     SearchStrategy searchStrategy,
 
   60                                     ContinueOnSuccess on_success,
 
   61                                     ContinueOnFail on_fail,
 
   65                         std::move(on_success), std::move(on_fail),
 
   66                         std::move(nQueenscomponents)...);
 
   77 template <
typename NQueensPositionsVector, 
typename... 
components>
 
   82                                    std::move(nQueenscomponents)...);
 
   88 #endif // PAAL_N_QUEENS_LOCAL_SEARCH_HPP 
data_structures::components< GetMoves, Gain, Commit > components
Definition for the components class for local search usually this class is not directly used...
Adapts vector representing n queen problem to class able to efficiently compute gain of given move...
bool n_queens_solution_local_search(NQueensPositionsVector &pos, SearchStrategy searchStrategy, ContinueOnSuccess on_success, ContinueOnFail on_fail, components...nQueenscomponents)
n queen local search 
This structure can be passed on Names list and represents Name and the default type value...
void n_queens_solution_first_improving(NQueensPositionsVector &pos, components...nQueenscomponents)
n queen local search (simple version) 
data_structures::components< data_structures::NameWithDefault< GetMoves, n_queensget_moves >, data_structures::NameWithDefault< Gain, n_queens_gain >, data_structures::NameWithDefault< Commit, n_queens_commit >>::type< Args...> n_queens_local_search_components
NQueen Compoenents. 
bool local_search(Solution &solution, SearchStrategy searchStrategy, ContinueOnSuccess succ, ContinueOnFail fail, components...comps)
detail 
This strategy uses find_positive_predicate as stop condition.