Package jline.api.mdd
Class Mdd_closedqn
java.lang.Object
jline.api.mdd.Mdd_closedqn
Exact solve of a single-class closed exponential queueing network whose CTMC
state space (reachable occupancy vectors) is stored in a Multi-valued
Decision Diagram instead of an explicit state list.
Port of matlab/src/api/mdd/mdd_closedqn.m. The reachable set is generated
with Mdd_reachset and the generator matrix is assembled using the
MDD's O(K) state indexing (MDD.index(int[])), so no explicit (|S| x width)
state matrix is ever materialised during assembly -- the diagram is the
store. For single-class exponential stations the aggregated (occupancy)
chain is exact: the rate from n to n-e_i+e_j is mu_i * min(n_i, c_i) *
P(i,j) for n_i > 0, matching SolverCTMC on the same model, which makes
this the live exact oracle the Mdd_mcd aggregation is validated
against.
The reference's 'verbose' knob is not carried (the api layer is silent);
the same storage numbers are returned in MddClosedQnResult.stats.
-
Method Summary
Modifier and TypeMethodDescriptionstatic MddClosedQnResultmdd_closedqn(double[] mu, Matrix P, double[] servers, int N) static MddClosedQnResultmdd_closedqn(double[] mu, Matrix P, double[] servers, int N, MDD reuse)
-
Method Details
-
mdd_closedqn
- Parameters:
mu- per-station exponential service rates, length MP- M x M Markovian routing matrix (row-stochastic, irreducible)servers- servers per station; Double.POSITIVE_INFINITY for a delayN- closed population
-
mdd_closedqn
public static MddClosedQnResult mdd_closedqn(double[] mu, Matrix P, double[] servers, int N, MDD reuse) - Parameters:
reuse- an already-built reachable set (themddof a previous result on the same mu/P/servers/N) to skip regeneration
-