Package jline.solvers.ag.handlers
Class Solver_ag_inap
java.lang.Object
jline.solvers.ag.handlers.Solver_ag_inap
-
Method Summary
Modifier and TypeMethodDescriptionstatic MatrixagentGenerator(int k, Matrix x, Matrix[] Aa, Matrix[] Pb, Matrix[] L, int[] ACT, int[] PSV, int numActions, int[] N) Agent k's generator at the current reversed rates.static MatrixagentStationary(Matrix Qk, RCATModel rcat, int k) Agent k's stationary vector, given its generator.static MatrixagentStationaryOf(Matrix Qk, int mph, int nlev, int[] level) The same solve from the agent's layout given explicitly, for a worker that holds one agent rather than the whole RCATModel.static INAPResultsolver_ag_inap(RCATModel rcat) static INAPResultsolver_ag_inap(RCATModel rcat, double tol, int maxiter) static INAPResultsolver_ag_inap(RCATModel rcat, double tol, int maxiter, int seed) static INAPResultsolver_ag_inap(RCATModel rcat, double tol, int maxiter, int seed, String method) static INAPResultsolver_ag_inap(RCATModel rcat, double tol, int maxiter, int seed, String method, AgExec exec) The reversed-rate fixed point, with the agents of each sweep evaluated byexec.static INAPResultsolver_ag_inapinf(RCATModel rcat, boolean[] isOpenProc, double tol, int maxiter) Matrix-geometric INAP ('inapinf'): the isolated OPEN components are solved directly on their infinite state space by a scalar matrix-geometric (QBD / catastrophe) decomposition -- the marginal is geometric pi_n = (1-rho) rho^n with rho the sub-unit root of the QBD characteristic equation, and any catastrophe drain to the empty state folds into the local outflow.
-
Method Details
-
solver_ag_inap
public static INAPResult solver_ag_inap(RCATModel rcat, double tol, int maxiter, int seed, String method) -
solver_ag_inap
public static INAPResult solver_ag_inap(RCATModel rcat, double tol, int maxiter, int seed, String method, AgExec exec) The reversed-rate fixed point, with the agents of each sweep evaluated byexec. A null backend is the serial loop and is the reference the others are asserted against. -
solver_ag_inap
-
solver_ag_inap
-
solver_ag_inap
-
solver_ag_inapinf
public static INAPResult solver_ag_inapinf(RCATModel rcat, boolean[] isOpenProc, double tol, int maxiter) Matrix-geometric INAP ('inapinf'): the isolated OPEN components are solved directly on their infinite state space by a scalar matrix-geometric (QBD / catastrophe) decomposition -- the marginal is geometric pi_n = (1-rho) rho^n with rho the sub-unit root of the QBD characteristic equation, and any catastrophe drain to the empty state folds into the local outflow. Closed components remain finite. The reversed rate is updated by the weighted-mean formula Eq. (4) evaluated in closed form on the geometric tail, and the RCAT product-form residual (Remark 2) is returned. Mirrors solver_ag.m (inap_inf). Reference: A. Marin, S. Rota Bulo, S. Balsamo, "A Numerical Algorithm for the Decomposition of Cooperating Structured Markov Processes", MASCOTS 2012. -
agentGenerator
public static Matrix agentGenerator(int k, Matrix x, Matrix[] Aa, Matrix[] Pb, Matrix[] L, int[] ACT, int[] PSV, int numActions, int[] N) Agent k's generator at the current reversed rates.Split from the stationary solve because the halves cost different orders: assembling the generator is O(N^2) and solving it is O(N^3). The cluster backend therefore ships only the stationary vector back and rebuilds the generator on the coordinator -- sending an N-by-N matrix per agent per sweep to save the cheaper half would cost more on the wire than it saves on the worker.
-
agentStationary
Agent k's stationary vector, given its generator. Shared by every backend. -
agentStationaryOf
The same solve from the agent's layout given explicitly, for a worker that holds one agent rather than the whole RCATModel.
-