vt::vrt::collection::balance::LinearModel struct

Predict an object's load with a linear regression model.

Base classes

class ComposedModel
Utility class to support implementation of composable load modeling components.

Public static variables

static unsigned int default_past_len constexpr

Constructors, destructors, conversion operators

LinearModel(std::shared_ptr<balance::LoadModel> base, unsigned int in_past_len = default_past_len) explicit
Construct a linear model predictor.

Public functions

auto getModeledLoad(ElementIDStruct object, PhaseOffset when) const -> LoadType override
Provide an estimate of the given object's load during a specified interval.
auto getNumPastPhasesNeeded(unsigned int look_back) const -> unsigned int override
Compute how many phases of past load statistics need to be kept available for the model to use.

Function documentation

vt::vrt::collection::balance::LinearModel::LinearModel(std::shared_ptr<balance::LoadModel> base, unsigned int in_past_len = default_past_len) explicit

Construct a linear model predictor.

Parameters
base in the base model
in_past_len in (optional) the past number of phases for prediction

LoadType vt::vrt::collection::balance::LinearModel::getModeledLoad(ElementIDStruct object, PhaseOffset when) const override

Provide an estimate of the given object's load during a specified interval.

Parameters
object in The object whose load is desired
when in The interval in which the estimated load is desired
Returns How much computation time the object is estimated to require

The updateLoads method must have been called before any call to this.

unsigned int vt::vrt::collection::balance::LinearModel::getNumPastPhasesNeeded(unsigned int look_back) const override

Compute how many phases of past load statistics need to be kept available for the model to use.

Parameters
look_back in How many phases into the past the caller intends to query
Returns How many phases of past load statistics will be needed to satisfy the requested history