The online set cover problem

Let <i>X=[1,2,•••,n]</i> be a ground set of <i>n</i> elements, and let <i>S</i> be a family of subsets of <i>X</i>, <i>|S|=m</i>, with a positive cost <i>c<sub>S</sub></i> associated with each <i>S ∈ S</i>.Consider the following online version of the set cover problem, described as a game between an algorithm and an adversary. An adversary gives elements to the algorithm from <i>X</i> one-by-one. Once a new element is given, the algorithm has to cover it by some set of <i>S</i> containing it. We assume that the elements of <i>X</i> and the members of <i>S</i> are known in advance to the algorithm, however, the set <i>X' ⊆ X</i> of elements given by the adversary is not known in advance to the algorithm. (In general, <i>X'</i> may be a strict subset of <i>X</i>.) The objective is to minimize the total cost of the sets chosen by the algorithm. Let <i>C</i> denote the family of sets in <i>S</i> that the algorithm chooses. At the end of the game the adversary also produces (off-line) a family of sets <i>C<sub>OPT</sub></i> that covers <i>X'</i>. The performance of the algorithm is the ratio between the cost of <i>C</i> and the cost of <i>C<sub>OPT</sub></i>. The maximum ratio, taken over all input sequences, is the <i>competitive ratio</i> of the algorithm.We present an <i>O(log m log n)</i> competitive deterministic algorithm for the problem, and establish a nearly matching <i>Ω(log n log m/log log m + log log n)</i> lower bound for all interesting values of <i>m</i> and <i>n</i>. The techniques used are motivated by similar techniques developed in computational learning theory for online prediction (e.g., the WINNOW algorithm) together with a novel way of converting the fractional solution they supply into a deterministic online algorithm.