Package jline.api.pfqn.mva
Class Pfqn_ab_amvaKt
-
- All Implemented Interfaces:
public final class Pfqn_ab_amvaKt
-
-
Method Summary
Modifier and Type Method Description final static Ret.pfqnAMVAMSab_amva(Matrix serviceTimes, Matrix N, Matrix V, Matrix nservers, List<SchedStrategy> schedStrategies, Boolean fcfsSchmidt, String marginalProbMethod)Akyildiz-Bolch AMVA method for multi-server BCMP networks. final static Ret.pfqnAMVAab_linearizer(Integer K, Integer M, Matrix population, Matrix nservers, List<SchedStrategy> type, Matrix v, Matrix s, Boolean fcfsSchmidt, String marginalProbMethod)Akyildiz-Bolch linearizer method for multi-server BCMP networks. final static Ret.pfqnAMVApfqn_ab_core(Integer K, Integer M, Matrix population, Matrix nservers, List<SchedStrategy> type, Matrix v, Matrix s, Integer maxiter, Array<Array<DoubleArray>> D, Matrix lIn, Boolean fcfsSchmidt, String marginalProbMethod)Akyildiz-Bolch core method for multi-server BCMP networks. final static Map<Integer, Double>findMarginalProbs(Double avgJobs, Integer numServers, Matrix population, Integer classIdx, String marginalProbMethod)Finds marginal probabilities using specified method. -
-
Method Detail
-
ab_amva
final static Ret.pfqnAMVAMS ab_amva(Matrix serviceTimes, Matrix N, Matrix V, Matrix nservers, List<SchedStrategy> schedStrategies, Boolean fcfsSchmidt, String marginalProbMethod)
Akyildiz-Bolch AMVA method for multi-server BCMP networks.
An approximate MVA algorithm using the Akyildiz-Bolch linearizer technique for closed queueing networks with multi-server stations.
- Parameters:
serviceTimes- Service time matrix (M x K)N- Population vector (1 x K)V- Visit ratio matrix (M x K)nservers- Number of servers at each station (M x 1)schedStrategies- Scheduling strategies for each stationfcfsSchmidt- Whether to use Schmidt formula for FCFS stationsmarginalProbMethod- Method for marginal probability calculation ("ab" or "scat")- Returns:
pfqnAMVAMS result containing Q, U, R, C, X, and iteration count
-
ab_linearizer
final static Ret.pfqnAMVA ab_linearizer(Integer K, Integer M, Matrix population, Matrix nservers, List<SchedStrategy> type, Matrix v, Matrix s, Boolean fcfsSchmidt, String marginalProbMethod)
Akyildiz-Bolch linearizer method for multi-server BCMP networks.
- Parameters:
K- Number of classesM- Number of stationspopulation- Population vectornservers- Number of servers at each stationtype- Scheduling discipline at each stationv- Visit matrixs- Service time matrixfcfsSchmidt- Whether to use Schmidt formula for FCFSmarginalProbMethod- Method for marginal probability ("ab" or "scat")- Returns:
pfqnAMVA result with performance measures
-
pfqn_ab_core
final static Ret.pfqnAMVA pfqn_ab_core(Integer K, Integer M, Matrix population, Matrix nservers, List<SchedStrategy> type, Matrix v, Matrix s, Integer maxiter, Array<Array<DoubleArray>> D, Matrix lIn, Boolean fcfsSchmidt, String marginalProbMethod)
Akyildiz-Bolch core method for multi-server BCMP networks.
- Parameters:
K- Number of classesM- Number of stationspopulation- Population vector (1D matrix of size K)nservers- Number of servers at each stationtype- Scheduling discipline at each stationv- Visit matrixs- Service time matrixmaxiter- Maximum number of iterationsD- Fractional changes matrixlIn- Initial queue length matrixfcfsSchmidt- Whether to use Schmidt formula for FCFSmarginalProbMethod- Method for marginal probability- Returns:
pfqnAMVA result with performance measures
-
findMarginalProbs
final static Map<Integer, Double> findMarginalProbs(Double avgJobs, Integer numServers, Matrix population, Integer classIdx, String marginalProbMethod)
Finds marginal probabilities using specified method.
- Parameters:
avgJobs- Average number of jobsnumServers- Number of serverspopulation- Population vectorclassIdx- Class indexmarginalProbMethod- Method ("scat" or "ab")- Returns:
Map of job count to probability
-
-
-
-