103  explicit FuzzyTuning(std::string fuzzyRuleFileName);
 
  105  [[nodiscard]] TuningStrategyOption 
getOptionType() 
const override;
 
  113  bool reset(
size_t iteration, 
size_t tuningPhase, std::vector<Configuration> &configQueue,
 
  135  [[nodiscard]] 
const std::map<std::string, std::shared_ptr<OutputMapper>> &
getOutputMappings() 
const;
 
  143  [[nodiscard]] 
static std::tuple<
 
  144      std::shared_ptr<FuzzyControlSettings>, std::vector<std::shared_ptr<LinguisticVariable>>,
 
  145      std::map<std::string, std::shared_ptr<OutputMapper>>, std::map<std::string, std::shared_ptr<FuzzyControlSystem>>>
 
  146  parse(
const std::string &fuzzyRuleFilename);
 
  178  void updateQueueInterpretOutputAsIndividualSystems(std::vector<Configuration> &configQueue);
 
  206  void updateQueueInterpretOutputAsSuitability(std::vector<Configuration> &configQueue);
 
  211  std::string _fuzzyRuleFileName;
 
  216  std::map<std::string, double> _currentLiveInfo;
 
  221  std::shared_ptr<FuzzyControlSettings> _fuzzyControlSettings;
 
  226  std::map<std::string, std::shared_ptr<FuzzyControlSystem>> _fuzzyControlSystems;
 
  231  std::map<std::string, std::shared_ptr<OutputMapper>> _outputMappings;
 
Class containing multiple options that form an algorithm configuration for the pairwise iteration.
Definition: Configuration.h:24
Class to manage all evidence.
Definition: EvidenceCollection.h:21
Helper class that associates a measurement with the iteration when it was taken.
Definition: Evidence.h:15
A tuning strategy that uses fuzzy logic to make predictions about the performance of configurations.
Definition: FuzzyTuning.h:97
bool needsLiveInfo() const override
Returns whether this tuning strategy wants to get a LiveInfo object passed before a new tuning phase.
Definition: FuzzyTuning.cpp:82
const std::map< std::string, std::shared_ptr< OutputMapper > > & getOutputMappings() const
Getter for the output mappings.
void addEvidence(const Configuration &configuration, const Evidence &evidence) override
Notifies the strategy about empirically collected information for the given configuration.
Definition: FuzzyTuning.cpp:102
bool optimizeSuggestions(std::vector< Configuration > &configQueue, const EvidenceCollection &evidenceCollection) override
Optimizes the queue of configurations to process.
Definition: FuzzyTuning.cpp:131
const std::map< std::string, std::shared_ptr< FuzzyControlSystem > > & getFuzzyControlSystems() const
Getter for the fuzzy control systems.
TuningStrategyOption getOptionType() const override
Get this object's associated TuningStrategyOption type.
Definition: FuzzyTuning.cpp:140
std::shared_ptr< FuzzyControlSettings > getFuzzyControlSettings() const
Getter for the fuzzy control settings.
bool reset(size_t iteration, size_t tuningPhase, std::vector< Configuration > &configQueue, const autopas::EvidenceCollection &evidenceCollection) override
Reset all internal parameters to the beginning of a new tuning phase.
Definition: FuzzyTuning.cpp:104
void receiveLiveInfo(const LiveInfo &value) override
Virtual method that subclasses can override to receive the LiveInfo object before a tuning phase if t...
Definition: FuzzyTuning.cpp:84
This class is able to gather and store important information for a tuning phase from a container and ...
Definition: LiveInfo.h:33
Interface for tuning strategies for the auto tuner.
Definition: TuningStrategyInterface.h:23
Namespace that contains the fuzzy logic framework used by the FuzzyTuning-strategy.
Definition: namespaces.h:112
This is the main namespace of AutoPas.
Definition: AutoPasDecl.h:32