Class SolverQNS
-
- All Implemented Interfaces:
public class SolverQNS extends NetworkSolver
SolverQNS class implements a queueing network solver that wraps the external qnsolver tool. This solver provides various multiserver approximation methods for analyzing queueing networks.
-
-
Field Summary
Fields Modifier and Type Field Description public Networkmodelpublic NetworkStructsnpublic SolverAvgHandlesavgHandlespublic SolverTranHandlestranHandlespublic Modelmodelpublic Stringnamepublic SolverOptionsoptionspublic SolverResultresultpublic booleanenableCheckspublic Randomrandom
-
Constructor Summary
Constructors Constructor Description SolverQNS(Network model)Default constructor with network model SolverQNS(Network model, String method)Constructor with network model and method string SolverQNS(Network model, SolverOptions options)Constructor with network model and solver options SolverQNS(Network model, Array<Object> varargin)Constructor with network model and variable arguments
-
Method Summary
Modifier and Type Method Description static SolverOptionsparseOptions(Array<Object> varargin)Parse options from variable arguments static SolverOptionsdefaultOptions()Get the default options for the QNS solver static FeatureSetgetFeatureSet()Get the feature set supported by this solver booleansupports(Network model)Check if the solver supports the given model Array<String>listValidMethods()List valid methods for this solver voidrunAnalyzer()Run the analyzer for the QNS solver static booleanisAvailable()Check if the solver is available Ret.ProbabilityResultgetProbNormConstAggr()Returns the logarithm of the normalizing constant of state probabilities. Ret.ProbabilityResultgetProb(int node, Matrix state)Returns marginal state probabilities for a specific node and state. Ret.ProbabilityResultgetProb(int node)Returns marginal state probabilities for a specific node (all states). Ret.ProbabilityResultgetProbSys()Returns joint state probabilities for the entire system. Ret.ProbabilityResultgetProbAggr(int node, Matrix state_a)Returns aggregated marginal state probabilities for a specific node. Ret.ProbabilityResultgetProbAggr(int node)Returns aggregated marginal state probabilities for a specific node (all states). Ret.ProbabilityResultgetProbSysAggr()Returns aggregated joint state probabilities for the entire system. Ret.SampleResultsample(int node, int numEvents)Samples state trajectories for a specific node. Ret.SampleResultsampleAggr(int node, int numEvents)Samples aggregated state trajectories for a specific node. Ret.SampleResultsampleSys(int numEvents)Samples joint system state trajectories. Ret.SampleResultsampleSysAggr(int numEvents)Samples aggregated joint system state trajectories. Ret.DistributionResultgetCdfRespT(AvgHandle R)Returns cumulative distribution functions of response times at steady-state. Ret.DistributionResultgetCdfRespT()Returns cumulative distribution functions of response times at steady-state. Ret.DistributionResultgetTranCdfRespT(AvgHandle R)Returns cumulative distribution functions of response times during transient analysis. Ret.DistributionResultgetTranCdfRespT()Returns cumulative distribution functions of response times during transient analysis. Ret.DistributionResultgetCdfPassT(AvgHandle R)Returns cumulative distribution functions of passage times at steady-state. Ret.DistributionResultgetCdfPassT()Returns cumulative distribution functions of passage times at steady-state. Ret.DistributionResultgetTranCdfPassT(AvgHandle R)Returns cumulative distribution functions of passage times during transient analysis. Ret.DistributionResultgetTranCdfPassT()Returns cumulative distribution functions of passage times during transient analysis. -
Methods inherited from class jline.solvers.NetworkSolver
avg, avg, avg, avgArvR, avgArvRChain, avgArvRHandles, avgChain, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgHandles, avgNode, avgNodeArvRChain, avgNodeChain, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeQLenChain, avgNodeResidTChain, avgNodeRespTChain, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTputChain, avgNodeUtilChain, avgQLen, avgQLenChain, avgQLenHandles, avgResidT, avgResidTChain, avgResidTHandles, avgRespT, avgRespTChain, avgRespTHandles, avgSys, avgSysRespT, avgSysTable, avgSysTable, avgSysTable, avgSysTput, avgTable, avgTable, avgTable, avgTable, avgTable, avgTable, avgTput, avgTputChain, avgTputHandles, avgUtil, avgUtilChain, avgUtilHandles, avgWaitT, cdfPassT, cdfPassT, cdfRespT, cdfRespT, getAllSolvers, getAvg, getAvg, getAvg, getAvgArvR, getAvgArvRChain, getAvgArvRHandles, getAvgChain, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgHandles, getAvgNode, getAvgNodeArvRChain, getAvgNodeChain, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeQLenChain, getAvgNodeResidTChain, getAvgNodeRespTChain, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTputChain, getAvgNodeUtilChain, getAvgQLen, getAvgQLenChain, getAvgQLenHandles, getAvgResidT, getAvgResidTChain, getAvgResidTHandles, getAvgRespT, getAvgRespTChain, getAvgRespTHandles, getAvgSys, getAvgSys, getAvgSys, getAvgSysRespT, getAvgSysTable, getAvgSysTable, getAvgSysTable, getAvgSysTput, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTput, getAvgTputChain, getAvgTputHandles, getAvgUtil, getAvgUtilChain, getAvgUtilHandles, getAvgWaitT, getModel, getProbMarg, getProbMarg, getStageTable, getStageTable, getTranAvg, getTranHandles, hasAvgResults, hasDistribResults, hasTranResults, initHandles, model, print, prob, prob, probAggr, probAggr, probMarg, probMarg, probNormConstAggr, probSys, probSysAggr, runAnalyzerChecks, setAvgHandles, setAvgResults, setDistribResults, setLang, setModel, setTranAvgResults, setTranHandles, setTranProb, stageTable, tranAvg, tranCdfPassT, tranCdfPassT, tranCdfRespT, tranCdfRespT, tranHandles -
Methods inherited from class jline.solvers.Solver
getName, getOptions, getResults, hasResults, isJavaAvailable, isValidOption, listValidOptions, parseOptions, reset, resetRandomGeneratorSeed, setChecks, setOptions -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
SolverQNS
SolverQNS(Network model)
Default constructor with network model
-
SolverQNS
SolverQNS(Network model, SolverOptions options)
Constructor with network model and solver options
-
-
Method Detail
-
parseOptions
static SolverOptions parseOptions(Array<Object> varargin)
Parse options from variable arguments
-
defaultOptions
static SolverOptions defaultOptions()
Get the default options for the QNS solver
-
getFeatureSet
static FeatureSet getFeatureSet()
Get the feature set supported by this solver
-
listValidMethods
Array<String> listValidMethods()
List valid methods for this solver
-
runAnalyzer
void runAnalyzer()
Run the analyzer for the QNS solver
-
isAvailable
static boolean isAvailable()
Check if the solver is available
-
getProbNormConstAggr
Ret.ProbabilityResult getProbNormConstAggr()
Returns the logarithm of the normalizing constant of state probabilities. This is an abstract method that must be implemented by concrete solver subclasses.
- Returns:
result containing the log normalizing constant
-
getProb
Ret.ProbabilityResult getProb(int node, Matrix state)
Returns marginal state probabilities for a specific node and state. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index for which to compute probabilitiesstate- the state vector to query (optional, null for all states)- Returns:
result containing marginal state probabilities
-
getProb
Ret.ProbabilityResult getProb(int node)
Returns marginal state probabilities for a specific node (all states). This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index for which to compute probabilities- Returns:
result containing marginal state probabilities
-
getProbSys
Ret.ProbabilityResult getProbSys()
Returns joint state probabilities for the entire system. This is an abstract method that must be implemented by concrete solver subclasses.
- Returns:
result containing joint state probabilities
-
getProbAggr
Ret.ProbabilityResult getProbAggr(int node, Matrix state_a)
Returns aggregated marginal state probabilities for a specific node. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index for which to compute probabilitiesstate_a- the aggregated state vector to query (optional, null for all states)- Returns:
result containing aggregated marginal state probabilities
-
getProbAggr
Ret.ProbabilityResult getProbAggr(int node)
Returns aggregated marginal state probabilities for a specific node (all states). This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index for which to compute probabilities- Returns:
result containing aggregated marginal state probabilities
-
getProbSysAggr
Ret.ProbabilityResult getProbSysAggr()
Returns aggregated joint state probabilities for the entire system. This is an abstract method that must be implemented by concrete solver subclasses.
- Returns:
result containing aggregated joint state probabilities
-
sample
Ret.SampleResult sample(int node, int numEvents)
Samples state trajectories for a specific node. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index to sample fromnumEvents- the number of events to sample- Returns:
result containing sampled state trajectories
-
sampleAggr
Ret.SampleResult sampleAggr(int node, int numEvents)
Samples aggregated state trajectories for a specific node. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
node- the node index to sample fromnumEvents- the number of events to sample- Returns:
result containing sampled aggregated state trajectories
-
sampleSys
Ret.SampleResult sampleSys(int numEvents)
Samples joint system state trajectories. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
numEvents- the number of events to sample- Returns:
result containing sampled joint system state trajectories
-
sampleSysAggr
Ret.SampleResult sampleSysAggr(int numEvents)
Samples aggregated joint system state trajectories. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
numEvents- the number of events to sample- Returns:
result containing sampled aggregated joint system state trajectories
-
getCdfRespT
Ret.DistributionResult getCdfRespT(AvgHandle R)
Returns cumulative distribution functions of response times at steady-state. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
R- response time handles (optional)- Returns:
result containing CDFs for response times [stations x classes]
-
getCdfRespT
Ret.DistributionResult getCdfRespT()
Returns cumulative distribution functions of response times at steady-state. Uses default response time handles.
- Returns:
result containing CDFs for response times [stations x classes]
-
getTranCdfRespT
Ret.DistributionResult getTranCdfRespT(AvgHandle R)
Returns cumulative distribution functions of response times during transient analysis. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
R- response time handles (optional)- Returns:
result containing transient CDFs for response times
-
getTranCdfRespT
Ret.DistributionResult getTranCdfRespT()
Returns cumulative distribution functions of response times during transient analysis. Uses default response time handles.
- Returns:
result containing transient CDFs for response times
-
getCdfPassT
Ret.DistributionResult getCdfPassT(AvgHandle R)
Returns cumulative distribution functions of passage times at steady-state. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
R- response time handles (optional)- Returns:
result containing CDFs for passage times
-
getCdfPassT
Ret.DistributionResult getCdfPassT()
Returns cumulative distribution functions of passage times at steady-state. Uses default response time handles.
- Returns:
result containing CDFs for passage times
-
getTranCdfPassT
Ret.DistributionResult getTranCdfPassT(AvgHandle R)
Returns cumulative distribution functions of passage times during transient analysis. This is an abstract method that must be implemented by concrete solver subclasses.
- Parameters:
R- response time handles (optional)- Returns:
result containing transient CDFs for passage times
-
getTranCdfPassT
Ret.DistributionResult getTranCdfPassT()
Returns cumulative distribution functions of passage times during transient analysis. Uses default response time handles.
- Returns:
result containing transient CDFs for passage times
-
-
-
-