Class ParamEstimator
-
- All Implemented Interfaces:
public final class ParamEstimatorService demand estimator for queueing network models.
Manages sampled data and dispatches to specific estimation methods including UBR, UBO, ERPS, EKF, MCMC, MLE, MLPS, FMLPS, QMLE, and Gibbs.
-
-
Field Summary
Fields Modifier and Type Field Description private final Array<Array<List<SampledMetric>>>samplesprivate final Array<List<SampledMetric>>samplesAggrprivate final Networkmodelprivate final EstimatorOptionsoptions
-
Constructor Summary
Constructors Constructor Description ParamEstimator(Network model, EstimatorOptions options)
-
Method Summary
Modifier and Type Method Description final Array<Array<List<SampledMetric>>>getSamples()Per-class samples indexed by classIndex final Array<List<SampledMetric>>getSamplesAggr()Aggregate samples indexed by nodeIndex final NetworkgetModel()final EstimatorOptionsgetOptions()final UnitaddSamples(SampledMetric sampleData)Add a sampled metric to the estimator. final Array<Array<List<SampledMetric>>>getData()Retrieve per-class sampled data. final Array<List<SampledMetric>>getDataAggr()Retrieve aggregate sampled data. final SampledMetricgetArvR(Node node, JobClass jobClass)Get the first ArvR dataset for a given node and class. final SampledMetricgetUtil(Node node, JobClass jobClass)Get the first Util dataset for a given node and class. final SampledMetricgetRespT(Node node, JobClass jobClass)Get the first RespT dataset for a given node and class. final SampledMetricgetAggrUtil(Node node)Get the first aggregate Util dataset for a given node. final List<SampledMetric>getQLen(Node node, JobClass jobClass, ConditionEvent ev)Get QLen datasets for a given node and class. final SampledMetricgetAggrQLen(Node node, ConditionEvent ev)Get the first aggregate QLen dataset for a given node. final SampledMetricgetTput(Node node, JobClass jobClass)Get the first Tput dataset for a given node and class. final StringautoMethod()Automatically select the best estimation method based on available data. final Unitinterpolate()Interpolate all data across all the available timestamps using spline interpolation. final MatrixestimateAt(List<Station> nodes)Run the estimation at the specified nodes and update the model parameters. final Pair<Network, Queue>buildClosedEquivalentForPS(Queue node)Build a closed equivalent model for open/mixed networks with PS stations. final static EstimatorOptionsdefaultOptions()Create default estimator options. final static StringgetRequiredMetrics(String method)Return description of metrics required by each estimation method. -
-
Constructor Detail
-
ParamEstimator
ParamEstimator(Network model, EstimatorOptions options)
- Parameters:
model- the Network model to estimate parameters foroptions- estimator configuration options
-
-
Method Detail
-
getSamples
final Array<Array<List<SampledMetric>>> getSamples()
Per-class samples indexed by classIndex
-
getSamplesAggr
final Array<List<SampledMetric>> getSamplesAggr()
Aggregate samples indexed by nodeIndex
-
getOptions
final EstimatorOptions getOptions()
-
addSamples
final Unit addSamples(SampledMetric sampleData)
Add a sampled metric to the estimator.
-
getData
final Array<Array<List<SampledMetric>>> getData()
Retrieve per-class sampled data.
-
getDataAggr
final Array<List<SampledMetric>> getDataAggr()
Retrieve aggregate sampled data.
-
getArvR
final SampledMetric getArvR(Node node, JobClass jobClass)
Get the first ArvR dataset for a given node and class.
-
getUtil
final SampledMetric getUtil(Node node, JobClass jobClass)
Get the first Util dataset for a given node and class.
-
getRespT
final SampledMetric getRespT(Node node, JobClass jobClass)
Get the first RespT dataset for a given node and class.
-
getAggrUtil
final SampledMetric getAggrUtil(Node node)
Get the first aggregate Util dataset for a given node.
-
getQLen
final List<SampledMetric> getQLen(Node node, JobClass jobClass, ConditionEvent ev)
Get QLen datasets for a given node and class. If ev is provided, returns only the conditional match. Otherwise returns all QLen datasets (or the single one if there's only one).
-
getAggrQLen
final SampledMetric getAggrQLen(Node node, ConditionEvent ev)
Get the first aggregate QLen dataset for a given node.
-
getTput
final SampledMetric getTput(Node node, JobClass jobClass)
Get the first Tput dataset for a given node and class.
-
autoMethod
final String autoMethod()
Automatically select the best estimation method based on available data.
-
interpolate
final Unit interpolate()
Interpolate all data across all the available timestamps using spline interpolation.
-
estimateAt
final Matrix estimateAt(List<Station> nodes)
Run the estimation at the specified nodes and update the model parameters.
- Parameters:
nodes- list of stations to estimate- Returns:
estimated demands matrix (nNodes x nClasses)
-
buildClosedEquivalentForPS
final Pair<Network, Queue> buildClosedEquivalentForPS(Queue node)
Build a closed equivalent model for open/mixed networks with PS stations.
-
defaultOptions
final static EstimatorOptions defaultOptions()
Create default estimator options.
-
getRequiredMetrics
final static String getRequiredMetrics(String method)
Return description of metrics required by each estimation method.
-
-
-
-