Core Concepts
The authors present constant-competitive algorithms for the List Update problem with time windows and delays, which generalize the classical List Update problem by allowing requests to have deadlines or delay penalties.
Abstract
The authors address the List Update problem, which is a fundamental problem in online algorithms and competitive analysis. In the classical List Update problem, a list of elements is given, and requests for these elements arrive over time. The goal is to fulfill these requests, incurring a cost proportional to the position of the requested element in the list. Additionally, the algorithm can swap any two consecutive elements at a cost of 1.
The authors consider two generalizations of the List Update problem:
List Update with Time Windows: In this variant, each request arrives with a specific deadline by which it must be served. The algorithm can process multiple requests simultaneously, accessing the corresponding elements in a single pass. The cost incurred is determined by the position of the farthest element accessed.
List Update with Delays: In this more general problem, the fixed deadlines are replaced with arbitrary delay functions. The cost includes not only the access and swapping costs, but also penalties for the delays incurred until the requests are served.
For the List Update with Time Windows problem, the authors present a natural 24-competitive algorithm. The algorithm serves all requests up to twice the position of the triggering element (the farthest element with an active request that just reached its deadline) and then moves that element to the beginning of the list.
For the List Update with Delays problem, the authors present a more sophisticated 336-competitive algorithm. The algorithm maintains two types of counters: request counters and element counters. The request counters increase over time at a rate proportional to the delay cost the request incurred, and are deleted at some point after the request has been served. The element counters increase over time at a rate proportional to the sum of delay costs of unserved requests to that element, and are zeroed when the element is moved to the front of the list.
The authors prove the competitiveness of their algorithms using novel potential functions that capture the differences between the online algorithm and the optimal offline algorithm, as well as the differences in the sets of served requests and the movement costs.