A general buffer scheme for the windows scheduling problem

  • Authors:
  • Amotz Bar-Noy;Richard E. Ladner;Jacob Christensen;Tami Tamir

  • Affiliations:
  • Brooklyn College, Bedford Avenue Brooklyn, NY;University of Washington, Seattle, WA;University of Washington, Seattle, WA;The Interdisciplinary Center, Herzliya, Herzliya, Israel

  • Venue:
  • Journal of Experimental Algorithmics (JEA)
  • Year:
  • 2009

Quantified Score

Hi-index 0.01

Visualization

Abstract

Broadcasting is an efficient alternative to unicast for delivering popular on-demand media requests. Broadcasting schemes that are based on windows scheduling algorithms provide a way to satisfy all requests with both low bandwidth and low latency. Consider a system of n pages that need to be scheduled (transmitted) on identical channels an infinite number of times. Time is slotted, and it takes one time slot to transmit each page. In the windows scheduling problem (WS) each page i, 1 ≤ i ≤ n, is associated with a request window wi. In a feasible schedule for WS, page i must be scheduled at least once in any window of wi time slots. The objective function is to minimize the number of channels required to schedule all the pages. The main contribution of this paper is the design of a general buffer scheme for the windows scheduling problem such that any algorithm for WS follows this scheme. As a result, this scheme can serve as a tool to analyze and/or exhaust all possible WS-algorithms. The buffer scheme is based on modelling the system as a nondeterministic finite state machine in which any directed cycle corresponds to a legal schedule and vice-versa. Since WS is NP-hard, we present some heuristics and pruning-rules for cycle detection that ensure reasonable cycle-search time. By introducing various rules, the buffer scheme can be transformed into deterministic scheduling algorithms. We show that a simple page-selection rule for the buffer scheme provides an optimal schedule to WS for the case where all the wi's have divisible sizes, and other good schedules for some other general cases. By using an exhaustive-search, we prove impossibility results for other important instances. We also show how to extend the buffer scheme to more generalized environments in which (i) pages are arriving and departing on-line, (ii) the window constraint has some jitter, and (iii) different pages might have different lengths.