The Parameters DictionaryΒΆ
In order to fully define a queueing network simulation, the following need to be defined:
- Number of nodes (service stations)
- Number of customer classes
- Simulation run time
Every node must have the following defined globally (independent of customer class):
- Number of servers
- Queue capacity
Then, for every node and every class the following must be defined:
- Arrival rates
- Service distribution
And then each customer class requires:
- Transition matrix
A full example of the parameters dictionary for a three node network with two classes of customer is shown below:
>>> {'Arrival_rates': {'Class 1': [1.0, 1.8, 7.25],
'Class 0': [6.0, 4.5, 2.0]},
... 'Number_of_nodes': 3,
... 'detect_deadlock': False,
... 'Simulation_time': 2500,
... 'Number_of_servers': [2, 1, 1],
... 'Queue_capacities': ['Inf', 'Inf', 10],
... 'Number_of_classes': 2,
... 'Service_rates': {'Class 1': [['Exponential', 8.5], ['Triangular', 0.1, 0.8, 0.95], ['Exponential', 3.0]],
... 'Class 0': [['Exponential', 7.0], ['Exponential', 5.0], ['Gamma', 0.4, 0.6]]},
... 'Transition_matrices': {'Class 1': [[0.7, 0.05, 0.05], [0.5, 0.1, 0.4], [0.2, 0.2, 0.2]],
... 'Class 0': [[0.1, 0.6, 0.2], [0.0, 0.5, 0.5], [0.3, 0.1, 0.1]]}}
Notice that:
Queue_capacities
can be set to"Inf"
.When
Queue_capacities
aren’t set to"Inf"
blocking rules apply. Type I (blocked after service) blocking applies here.Number_of_servers
may be set to “Inf” also.To obtain no arrivals, set
Arrival_rates
to 0.There are many service distributions available, see Service Time Distributions.
The
Transition_matrices
forClass 0
section represents the following transition matrix:[[0.1, 0.6, 0.2], [0.0, 0.5, 0.5], [0.3, 0.1, 0.1]]
In this transition matrix the (i,j) th element corresponds to the probability of transitioning to node j after service at node i.
There are numerous other features, please see Features for more information.
The keys of this dictionary may also be used as keyword arguments when defining a simulation. ASQ features a function that will load in these parameters from a file, please read The Parameters File.