PineForge HPO 0.1.0
Native hyperparameter optimization for PineForge strategies
Loading...
Searching...
No Matches
objective.hpp File Reference
#include <cstddef>
#include <functional>
#include <memory>
#include <stdexcept>
#include <string>
#include <unordered_map>
#include <vector>
#include "pineforge/hpo/types.hpp"

Go to the source code of this file.

Classes

struct  pineforge::hpo::EvaluationPolicy
 Policies controlling exceptional arithmetic during metric-expression evaluation. More...
 
struct  pineforge::hpo::ExpressionEvaluation
 Non-throwing result envelope returned by MetricExpression::evaluate(). More...
 
class  pineforge::hpo::ExpressionError
 Parse error raised while compiling a metric expression. More...
 
class  pineforge::hpo::MetricExpression
 Parsed metric expression that is compiled once and evaluated repeatedly. More...
 
struct  pineforge::hpo::Constraint
 Named scalar feasibility constraint with an absolute non-negative tolerance. More...
 
struct  pineforge::hpo::ObjectiveResult
 Objective values, constraints, and diagnostics produced for one observation. More...
 

Namespaces

namespace  pineforge
 
namespace  pineforge::hpo
 

Typedefs

using pineforge::hpo::MetricMap = std::unordered_map< std::string, double >
 Metric values keyed by canonical objective path.
 
template<typename Observation >
using pineforge::hpo::ObjectiveFn = std::function< ObjectiveResult(const Observation &, const TrialContext &)>
 Type-erased custom objective accepting an observation and immutable trial context.
 

Enumerations

enum class  pineforge::hpo::DivisionByZeroPolicy { pineforge::hpo::Reject , pineforge::hpo::Ieee754 }
 Behavior when an objective expression divides by zero. More...
 
enum class  pineforge::hpo::NonFinitePolicy { pineforge::hpo::Reject , pineforge::hpo::Allow }
 Behavior when a metric or expression result is not finite. More...
 
enum class  pineforge::hpo::EvaluationError {
  pineforge::hpo::None , pineforge::hpo::MissingMetric , pineforge::hpo::NonFiniteMetric , pineforge::hpo::DivisionByZero ,
  pineforge::hpo::NonFiniteResult
}
 Stable reason code for an invalid ExpressionEvaluation. More...
 
enum class  pineforge::hpo::ConstraintRelation { pineforge::hpo::LessEqual , pineforge::hpo::GreaterEqual , pineforge::hpo::Equal }
 Comparison relation applied by Constraint. More...