Create a M/D/1 model for a service time distribution that is degerate and compare it to a distribution with some variaiton.

Since the distribution will only give a single value, the standard deviation \(\sigma\) is 0. Therefore:

Eq.1 \[W_q = \frac{\lambda(\sigma^2+1/\mu^2)}{2(1-\lambda/\mu)} \rightarrow \frac{\lambda/\mu^2}{2(1-\lambda/\mu)} = \frac{\lambda}{2\mu(\mu-\lambda)}\]

So, using a M/D/1 model:

For a M/M/1 distribution with \(\lambda\) and \(\mu\) being the same form the M/D/1 model.

Comparing the M/D/1 and M/M/1 models:

This is a very unusual conclusion. With the steady state utilization \(\rho\) remaining constant across both models. The M/D/1 model has half the average queue time and half the average queue length when compared to the M/M/1 model. In addition the average time and length in the system is at least as short as and maybe almost up to half as short as the M/M/1 system.

Using the model created above (with \(\lambda = 1\)/minute and \(\mu = 1/0.9\) per minute), test the theory with a simulaiton in Simio and discuss the process and results.Create a M/D/1 model for a service time distribution that is degerate and compare it to a distribution with some variaiton.

Running the M/D/1 Simio model:

Using the process described above, the following results were produced:

The following table compares the theoretical vs the simulation.

c_names <- c("MetricEstimated", "Queueing", "Simulaiton", "Halfwidth")
r_names <- c("Utilizaiton (p)", "Number in System (L)", "Number in queue (Lq)",
             "Time in system (W)", "Time in queue (Wq)")
l <- 1
m <- 1/0.9

md1 <- data.frame(matrix(NA, nrow = length(r_names), ncol = length(c_names)))

names(md1) <- c_names
md1$MetricEstimated <- r_names
md1$Queueing <- c(l/m, (2*m*l-l^2)/(2*m*(m-l)), l^2/(2*m*(m-l)),
                 (2*m-l)/(2*m*(m-l)), l/(2*m*(m-l)))
md1$Simulaiton <-  c(0.9007, 4.9713, 4.0408, 4.9671, 4.0373)
md1$Halfwidth <- c(0.2447, 0.1355, 0.1334, 0.1244, 0.1244)
(md1)
##        MetricEstimated Queueing Simulaiton Halfwidth
## 1      Utilizaiton (p)     0.90     0.9007    0.2447
## 2 Number in System (L)     4.95     4.9713    0.1355
## 3 Number in queue (Lq)     4.05     4.0408    0.1334
## 4   Time in system (W)     4.95     4.9671    0.1244
## 5   Time in queue (Wq)     4.05     4.0373    0.1244

The 95% confidence interval catches the theoretical value almost on-center.

Running the M/M/1 Simio model:

Using the process described above, the following results were produced:

The following table compares the theoretical vs the simulation.

mm1 <- data.frame(matrix(NA, nrow = length(r_names), ncol = length(c_names)))

names(mm1) <- c_names
mm1$MetricEstimated <- r_names
mm1$Queueing <- c(l/m, l/(m-l), (l^2)/(m*(m-l)), 1/(m-l), l/(m*(m-l)))
mm1$Simulaiton <-  c(0.8977, 8.9315, 8.012, 8.9410, 8.004)
mm1$Halfwidth <- c(0.3115, 0.5117, 0.5087, 0.4890, 0.4882)
(mm1)
##        MetricEstimated Queueing Simulaiton Halfwidth
## 1      Utilizaiton (p)      0.9     0.8977    0.3115
## 2 Number in System (L)      9.0     8.9315    0.5117
## 3 Number in queue (Lq)      8.1     8.0120    0.5087
## 4   Time in system (W)      9.0     8.9410    0.4890
## 5   Time in queue (Wq)      8.1     8.0040    0.4882

Again, the 95% confidence interval catches the theoretical value almost on-center.

In conclusion, the theory matches almost exactly with the simulation under these circumstances.