LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::infer::ParamEstimator Class Reference

#include <line/inference/param_estimator.h>

Collaboration diagram for line::infer::ParamEstimator:

Public Types

using Samples = std::vector<std::vector<std::vector<SampledMetric>>>
using AggregateSamples = std::vector<std::vector<SampledMetric>>
using Estimator

Public Member Functions

 ParamEstimator (qn::Network< double > &model, const EstimatorOptions &options=EstimatorOptions())
void add_samples (const SampledMetric &sample)
Samplesget_data ()
const Samplesget_data () const
AggregateSamplesget_data_aggr ()
const AggregateSamplesget_data_aggr () const
SampledMetricget_arvr (std::size_t node, std::size_t jobclass)
SampledMetricget_util (std::size_t node, std::size_t jobclass)
SampledMetricget_respt (std::size_t node, std::size_t jobclass)
SampledMetricget_tput (std::size_t node, std::size_t jobclass)
SampledMetricget_aggr_util (std::size_t node)
SampledMetricget_aggr_qlen (std::size_t node, const ConditionEvent *event=nullptr)
std::vector< SampledMetric * > get_qlen (std::size_t node, std::size_t jobclass, const ConditionEvent *event=nullptr)
std::string auto_method ()
void interpolate ()
void register_estimator (const std::string &method, const Estimator &estimator)
bool has_estimator (const std::string &method) const
Matrix< double > estimate_at (const std::vector< std::size_t > &nodes)

Static Public Member Functions

static EstimatorOptions default_options ()
static std::string get_required_metrics (const std::string &method)

Public Attributes

EstimatorOptions options
Samples samples
AggregateSamples samples_aggr

Detailed Description

Definition at line 270 of file param_estimator.h.

Member Typedef Documentation

◆ AggregateSamples

Definition at line 273 of file param_estimator.h.

◆ Estimator

Initial value:
std::function<Matrix<double>(ParamEstimator&, const std::vector<std::size_t>&)>
ParamEstimator(qn::Network< double > &model, const EstimatorOptions &options=EstimatorOptions())

Definition at line 274 of file param_estimator.h.

◆ Samples

using line::infer::ParamEstimator::Samples = std::vector<std::vector<std::vector<SampledMetric>>>

Definition at line 272 of file param_estimator.h.

Constructor & Destructor Documentation

◆ ParamEstimator()

line::infer::ParamEstimator::ParamEstimator ( qn::Network< double > & model,
const EstimatorOptions & options = EstimatorOptions() )
inlineexplicit

Definition at line 277 of file param_estimator.h.

References options, ParamEstimator(), register_estimator(), samples, and samples_aggr.

Referenced by ParamEstimator().

Member Function Documentation

◆ add_samples()

void line::infer::ParamEstimator::add_samples ( const SampledMetric & sample)
inline

◆ auto_method()

std::string line::infer::ParamEstimator::auto_method ( )
inline

◆ default_options()

EstimatorOptions line::infer::ParamEstimator::default_options ( )
inlinestatic

Definition at line 487 of file param_estimator.h.

◆ estimate_at()

◆ get_aggr_qlen()

SampledMetric * line::infer::ParamEstimator::get_aggr_qlen ( std::size_t node,
const ConditionEvent * event = nullptr )
inline

Definition at line 353 of file param_estimator.h.

References line::lang::QLen.

◆ get_aggr_util()

SampledMetric * line::infer::ParamEstimator::get_aggr_util ( std::size_t node)
inline

Definition at line 350 of file param_estimator.h.

References line::lang::Util.

◆ get_arvr()

SampledMetric * line::infer::ParamEstimator::get_arvr ( std::size_t node,
std::size_t jobclass )
inline

Definition at line 338 of file param_estimator.h.

References line::lang::ArvR.

◆ get_data() [1/2]

Samples & line::infer::ParamEstimator::get_data ( )
inline

Definition at line 333 of file param_estimator.h.

References samples.

◆ get_data() [2/2]

const Samples & line::infer::ParamEstimator::get_data ( ) const
inline

Definition at line 334 of file param_estimator.h.

References samples.

◆ get_data_aggr() [1/2]

AggregateSamples & line::infer::ParamEstimator::get_data_aggr ( )
inline

Definition at line 335 of file param_estimator.h.

References samples_aggr.

◆ get_data_aggr() [2/2]

const AggregateSamples & line::infer::ParamEstimator::get_data_aggr ( ) const
inline

Definition at line 336 of file param_estimator.h.

References samples_aggr.

◆ get_qlen()

std::vector< SampledMetric * > line::infer::ParamEstimator::get_qlen ( std::size_t node,
std::size_t jobclass,
const ConditionEvent * event = nullptr )
inline

Definition at line 357 of file param_estimator.h.

References line::lang::QLen, and samples.

◆ get_required_metrics()

std::string line::infer::ParamEstimator::get_required_metrics ( const std::string & method)
inlinestatic

Definition at line 489 of file param_estimator.h.

◆ get_respt()

SampledMetric * line::infer::ParamEstimator::get_respt ( std::size_t node,
std::size_t jobclass )
inline

Definition at line 344 of file param_estimator.h.

References line::lang::RespT.

◆ get_tput()

SampledMetric * line::infer::ParamEstimator::get_tput ( std::size_t node,
std::size_t jobclass )
inline

Definition at line 347 of file param_estimator.h.

References line::lang::Tput.

◆ get_util()

SampledMetric * line::infer::ParamEstimator::get_util ( std::size_t node,
std::size_t jobclass )
inline

Definition at line 341 of file param_estimator.h.

References line::lang::Util.

◆ has_estimator()

bool line::infer::ParamEstimator::has_estimator ( const std::string & method) const
inline

Definition at line 426 of file param_estimator.h.

◆ interpolate()

void line::infer::ParamEstimator::interpolate ( )
inline

◆ register_estimator()

void line::infer::ParamEstimator::register_estimator ( const std::string & method,
const Estimator & estimator )
inline

Definition at line 422 of file param_estimator.h.

Referenced by ParamEstimator().

Member Data Documentation

◆ options

EstimatorOptions line::infer::ParamEstimator::options

Definition at line 319 of file param_estimator.h.

Referenced by auto_method(), estimate_at(), and ParamEstimator().

◆ samples

Samples line::infer::ParamEstimator::samples

◆ samples_aggr

AggregateSamples line::infer::ParamEstimator::samples_aggr

The documentation for this class was generated from the following file: