# A Study Comparing Waiting Times in Global and Local Queuing Systems with Heterogeneous Workers
## 4 Simulation Results
### Local Queues Systems with Heterogeneity--Aware Routing Policies  
We improved the performance by collecting a better routing policy to select the next worker in tie-breaking cases. First, we checked the FIFO tie-breaking; if several workers had the same conditions, ties were broken using the FIFO order. In this case, there was a timestamp for each worker's queue, which held the latest time when the queue changed its length. For example, assume there are three workers, W1, W2, and W3, with queue lengths of two tasks, and their timestamps are 1, 2, and 3 accordingly, showing the times their queue changed to two. In this case, the task will be assigned to W1. We discovered that there is no advantage to FIFO TB and that the waiting times in global random TB are lower than the waiting times. Random TB and FIFO TB policies improve the average waiting time of the homogenous local queue model. Still, when there are heterogeneous groups of workers, heterogeneity-aware routine policies are required to minimize the waiting time of each worker even though they are assigned to a slow worker.  
For the heterogeneity-aware routine policies, we used similar algorithms described in the literature. In the global queue architecture, when there is more than one idle worker, GHT fastest selects the fastest worker among the other workers. This method is known in the literature as the Fast Server First (FSF) allocation strategy. We used the JSQ fast TB (Figure 4), WJSQ (Figure 5) and WJSQL (Figure 6) in the local queue architecture.  
WJSQ (Figure 5) is a weighted JSQ version that assigns the next task to the worker with the shortest weighted queue. The weighted queue i with queue length Li and the processing rate Si is Li divided by Si. Worker i has the shortest weighted queue if this weighted queue is shorter than the weighted queue of the other workers. Our WJSQ is slightly different than the traditional shortest expected delay (SED) since we added category awareness dispatching and online learning capabilities. Assuming three processing-rate categories to  
Figure 4: JSQ fast TB routing policy.  
be slow, medium, and fast, the processing rates for slow, medium, and fast workers in each group were Ps, Pm, and Pf, respectively (assuming Pf:Pm:Ps \(\rightarrow\) 4:2:1). The processing rate ratio between medium and slow was Pm/Ps, the processing rate ratio between fast and slow was Pf/Ps, and the processing rate ratio between fast and medium was Pf/Pm. The queue length ratio between medium and slow queues was Lm/Ls, between fast and slow queues was Lf/Ls, and between fast and medium queues was Lf/Lm.  
The WJSQ policy cannot be used as is since there is no way to know workers' processing rates in advance or assume their distribution. In the following method, termed WJSQL (weighted JSQ with processing rate learning), each worker is monitored, and their average work rate is measured over time and considered appropriately at the time of the dispatcher's selection. The WJSQL routing policy, which is invoked at the arrival of a new task, is presented in Figure 6.