Class OptimizationOptions

Class Documentation

class OptimizationOptions

Type to describe an optimization (minimization) problem

Public Functions

OptimizationOptions() = default
std::unique_ptr<Optimizer> createOptimizer() const

Optimizer factory method depending on OptimizationOptions::optimizer

std::string toString()
int getIntOption(const std::string &key)
double getDoubleOption(const std::string &key)
std::string getStringOption(const std::string &key)
void setOption(const std::string &key, int value)
void setOption(const std::string &key, double value)
void setOption(const std::string &key, std::string value)
template<typename T>
inline void for_each(std::function<void(const std::pair<const std::string, const std::string>, T)> f, T arg) const

Public Members

optimizerName optimizer = optimizerName::OPTIMIZER_IPOPT

Optimizer to use

char *logFile = nullptr

Optimizer log file

bool printToStdout = true

Print progress to stdout

int maxOptimizerIterations = 100

Maximum number of optimizer iterations

int numStarts = 1

Number of starts for local optimization (only used for multi-start optimization

int retryOptimization = false

Retry optimization in case of infeasibility (only used for multi-start optimization

int hierarchicalOptimization = true

use hierarchical optimization if respective configuration is available see hierarchicalOptimization.cpp

int multistartsInParallel = true

Public Static Functions

static std::unique_ptr<OptimizationOptions> fromHDF5(std::string const &fileName)
static std::unique_ptr<OptimizationOptions> fromHDF5(const H5::H5File &file, const std::string &path = "/optimizationOptions")
static std::vector<double> getStartingPoint(const H5::H5File &file, int index)