Danijel Maraž (2018) Analysis of the k-server problem. EngD thesis.
Abstract
The k-server problem is an optimization problem of a relatively simple and intuitive nature. In this problem the algorithm must control the movements of a set of k servers, represented as points of a metric space, to service a set of requests, also represented by points of a metric space. As a new request arrives the algorithm must choose an appropriate server and move it to the requests location for servicing. The main goal of the algorithm is to minimize the total distance travelled by all the servers. Requests appear in a sequential manner so the algorithm only sees the current request at any one time. In practice it appears many times in the fields of servicing different kinds of requests. For example it is a common problem of delivery companies, police precincts and in the field of computer science by content delivery networks. The main goal of the thesis was to test the efficiency of the most popular solutions to the problem and make a comparison between these. To achieve this goal we made use of evaluation methods practiced by seasoned researches on this topic. We also implemented and tested each algorithm in the Java programming language. Noteworthy was also our usage of real data in contrast to similar studies which only utilized randomly generated data for testing. In the end we manage to get an interesting picture of the strong and weak points of the most popular solutions to the problem.
Actions (login required)