Feature Selection Toolbox FST4
UTIA · Czech Academy of Sciences
Loading...
Searching...
No Matches
search_exhaustive_threaded.hpp
Go to the documentation of this file.
1#ifndef FSTSEARCHEXHAUSTIVETHREADED_H
2#define FSTSEARCHEXHAUSTIVETHREADED_H
3 /*
21=========================================================================
22Copyright and license:
23 * FST4 software (with the exception of any bundled or externally linked
24 third-party components) is Copyright (C) 2000-present Institute of
25 Information Theory and Automation of the Czech Academy of Sciences (UTIA).
26 * FST4 is free software: you can redistribute it and/or modify it under
27 the terms of the GNU Affero General Public License as published by the
28 Free Software Foundation, version 3. The full text of the license is in
29 the file LICENSE in the distribution root and at
30 https://www.gnu.org/licenses/agpl-3.0.html.
31 * FST4 is distributed in the hope that it will be useful, but WITHOUT ANY
32 WARRANTY; without even the implied warranty of MERCHANTABILITY or
33 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
34 License for more details.
35 * Closed-source use without the AGPL's copyleft obligations requires a
36 commercial license from UTIA; in case of interest write to
37 utia@utia.cas.cz. LICENSING.md in the distribution root explains both
38 options, the contributor license agreement that every contribution
39 requires, and the contacts (technical questions and pull requests:
40 somol@utia.cas.cz, with "FST" in the subject line).
41========================================================================== */
42
43#include <cassert>
44#include "error.hpp"
45#include "global.hpp"
46#include "search_exhaustive.hpp"
48
49namespace FST {
50
61template<class RETURNTYPE, typename DIMTYPE, class SUBSET, class CRITERION>
62class Search_Exhaustive_Threaded : public Search_Exhaustive<RETURNTYPE,DIMTYPE,SUBSET,CRITERION>{
63public:
68 explicit Search_Exhaustive_Threaded(const unsigned int max_threads=2)
69 :Search_Exhaustive<RETURNTYPE,DIMTYPE,SUBSET,CRITERION>(PEvaluatorEngine(new Candidate_Evaluator_Threaded<RETURNTYPE,DIMTYPE,SUBSET,CRITERION>(max_threads)))
70 {assert(max_threads>0); notify("Search_Exhaustive_Threaded constructor.");}
71 virtual ~Search_Exhaustive_Threaded() {notify("Search_Exhaustive_Threaded destructor.");}
72};
73
74} // namespace
75#endif // FSTSEARCHEXHAUSTIVETHREADED_H ///:~
Implements concurrent evaluation of a criterion on a set of subset candidates.
Implements concurrent evaluation of a criterion on a set of subset candidates.
Definition candidate_evaluator_threaded.hpp:156
DEPRECATED shim: threaded version of exhaustive (optimal) search.
Definition search_exhaustive_threaded.hpp:62
parent::PEvaluatorEngine PEvaluatorEngine
Definition search_exhaustive_threaded.hpp:65
Search_Exhaustive_Threaded(const unsigned int max_threads=2)
Constructs a Search_Exhaustive configured with a Candidate_Evaluator_Threaded engine of max_threads w...
Definition search_exhaustive_threaded.hpp:68
Search_Exhaustive< RETURNTYPE, DIMTYPE, SUBSET, CRITERION > parent
base class: the merged exhaustive search this shim configures with a threaded engine
Definition search_exhaustive_threaded.hpp:64
std::shared_ptr< EVALUATORENGINE > PEvaluatorEngine
shared pointer to the evaluation engine
Definition search_exhaustive.hpp:114
Search_Exhaustive(PEvaluatorEngine engine=PEvaluatorEngine())
Constructs the search with the given candidate-evaluation engine; a default-constructed engine falls ...
Definition search_exhaustive.hpp:117
FST4 specific error passing class.
Global definitions.
The Feature Selection Toolbox 4 library: every library component – data access, criteria and classifi...
Definition data_accessor.hpp:80
void notify(const std::string msg)
Prints msg followed by a newline via syncout::print(); a no-op unless the preprocessor macro DEBUG is...
Definition global.hpp:112
Implements exhaustive (optimal) search over all feature subsets.
Copyright © 2000–present ÚTIA, Institute of Information Theory and Automation of the Czech Academy of Sciences · Contacts · This site sets no cookies and uses no analytics.