public class Bank2Queues extends CTMDP<examples.jmdp.BankQueues,examples.jmdp.BankServers>
Constructor and Description |
---|
Bank2Queues(States<examples.jmdp.BankQueues> initial,
double clientMinuteCost,
double userMinuteCost,
double clientProbability,
double lambda,
double mu,
int maxCapacity,
int maxServers)
Builds a Bank2Queues
|
Modifier and Type | Method and Description |
---|---|
double |
computeMOPs(examples.jmdp.BankQueues i,
examples.jmdp.Bank2Queues.Measure m)
Computes the measure of performance m of queue i
|
double |
continuousCost(examples.jmdp.BankQueues i,
examples.jmdp.BankServers a)
Cost incurred continuously in time until the next transition
from state i given that action a is taken.
|
Actions<examples.jmdp.BankServers> |
feasibleActions(examples.jmdp.BankQueues i)
Returns the set of actions available at this state.
|
double |
length() |
double |
lumpCost(examples.jmdp.BankQueues i,
examples.jmdp.BankServers a)
Cost incurred instantaneously in the moment when action a is
taken from state i.
|
static void |
main(java.lang.String[] args)
This method just tests the class.
|
double |
rate(examples.jmdp.BankQueues i,
examples.jmdp.BankQueues j,
examples.jmdp.BankServers a)
Rate of going from state i to state j by taking the action a
|
States<examples.jmdp.BankQueues> |
reachable(examples.jmdp.BankQueues i,
examples.jmdp.BankServers a)
Set of States that can be reached from this state i, after
taking the action a.
|
getAllStates, getMaxRate, getSteadyStateProbabilities, setConverter, solve
getNumStates, getSolver
debug, debug, debug, getDebugLevel, getOptimalPolicy, getOptimalValueFunction, getReporter, isFinite, isSolved, operation, printSolution, printSolution, setDebugLevel, setReporter, setSolver, solve
public Bank2Queues(States<examples.jmdp.BankQueues> initial, double clientMinuteCost, double userMinuteCost, double clientProbability, double lambda, double mu, int maxCapacity, int maxServers)
initial
- Initial state in the systemclientMinuteCost
- The cost that is charged to clients with commercial relation
with the bank per minute they stay in queueuserMinuteCost
- The cost that is charged to users with no commercial relation
with the bank per minute they stay in queueclientProbability
- Probability that the next client has a commercial relation
with the banklambda
- Arrival rate to the bankmu
- Service rate of tellersmaxCapacity
- Queues capacitymaxServers
- Maximum number of tellers available in the bankpublic double computeMOPs(examples.jmdp.BankQueues i, examples.jmdp.Bank2Queues.Measure m)
i
- Specify which queue bank is wanted to measurem
- Measure of performance requiredpublic double lumpCost(examples.jmdp.BankQueues i, examples.jmdp.BankServers a)
CTMDP
public double continuousCost(examples.jmdp.BankQueues i, examples.jmdp.BankServers a)
CTMDP
continuousCost
in class CTMDP<examples.jmdp.BankQueues,examples.jmdp.BankServers>
i
- Statea
- Actionpublic States<examples.jmdp.BankQueues> reachable(examples.jmdp.BankQueues i, examples.jmdp.BankServers a)
CTMDP
public double rate(examples.jmdp.BankQueues i, examples.jmdp.BankQueues j, examples.jmdp.BankServers a)
CTMDP
public Actions<examples.jmdp.BankServers> feasibleActions(examples.jmdp.BankQueues i)
InfiniteMDP
feasibleActions
in class InfiniteMDP<examples.jmdp.BankQueues,examples.jmdp.BankServers>
i
- Current Statepublic double length() throws SolverException
SolverException
public static void main(java.lang.String[] args) throws SolverException
args
- Not usedSolverException