Build simulation models for simple queuing systems and validate the simulation results using analytical formulas derived using queuing theory. Specifically build a simulation model for the following systems:

M/M/1

M/M/1/K

M/M/m/K

Input:

The arrival and service rates for each queuing system

When applicable the system capacity K.

When applicable the number of parallel servers m.

Output:

The average time spent by each customer in the system.

The average queue length.

For the finite capacity systems: The probability that an arriving customer is dropped

Report:

For all systems, plot the average delay and the average queue length as a function of the utilization. On the same figure, plot both the simulation as well as the analytical results.

For the M/M/1/K also plot the customer block probability as a function of the utilization for various values of K. On the same figure, plot both the simulation as well as the analytical results.

For the M/M/2/K also plot the customer block probability as a function of the utilization for various values of K. On the same figure, plot both the simulation as well as the analytical results.

For the M/M/1/K also plot the customer block probability as a function of K for various values of utilization. On the same figure, plot both the simulation as well as the analytical results.

For the M/M/2/K also plot the customer block probability as a function of K for various values of utilization. On the same figure, plot both the simulation as well as the analytical results.