Self-Learning Threshold-Based Load Balancing
We consider a large-scale service system where incoming tasks have to be instantaneously dispatched to one out of many parallel server pools. The dispatcher uses a threshold for balancing the load and keeping the maximum number of concurrent tasks across server pools low. We demonstrate that such a policy is optimal on the fluid and diffusion scales for a suitable threshold value, while only involving a small communication overhead. In order to set the threshold optimally, it is important, however, to learn the load of the system, which may be uncertain or even time-varying. For that purpose, we design a control rule for tuning the threshold in an online manner. We provide conditions which guarantee that this adaptive threshold settles at the optimal value, along with estimates for the time until this happens.
READ FULL TEXT