optimization is that in our model, the problem the oracle needs to solve is often computationally
intractable. For example, if the set of scenarios in a robust set cover problem is given by an
upper bound on the number of active clients, the oracle needs to find a subset of k clients
whose minimum cost of covering is maximized. We call this problem the max-min set cover
problem, and will observe that it is computationally hard. Considering the hardness of the
oracle problem, the algorithms designed for the oracle model need to be able to work with an
approximate oracle as well. Furthermore, in order to solve a robust optimization problem in
the model where the scenarios are given by an upper bound on the number of active clients,
in addition to designing an algorithm for the oracle model, we need to give an approximation
algorithm for the max-min version of the problem.
1.2 Our Contribution
In this paper, we mostly focus on the model where the scenarios are given implicitly by an
upper bound on the number of active scenarios. This is motivated by real-world situations
where a good estimate of the total number of clients who will show up is available, but we do
not exactly know where they appear. We will also give a general LP-based algorithm for the
oracle model, assuming that the oracle gives a good approximation of the worst-case scenario
with respect to the fractional solution.
A naive idea to solve the robust optimization problems is a buy-at-once algorithm: either
cover all items in the first round in which case nothing needs to be done in the second round. Or
do nothing in the first round and construct a solution in the second round, after the adversary
makes its choices. The choice of which of the two options to use is based on a polynomial-
time test that is problem specific. We study this algorithm in Section 4 and prove that when
the inflation factor is the same for all scenarios the approximation ratio of this algorithm
for robust unweighted set cover, vertex cover, and edge cover problems are max(log m, log n),
2, and 2 respectively. However, the following example shows that for the weighted version
of robust vertex cover, any buy-at-once algorithm (even with unbounded computing power)
performs poorly. The input of the robust vertex cover problem are a node-weighted graph G,
a parameter k (for number of edges to be chosen by adversary), and an inflation factor λ > 1.
Consider a clique on n vertices, with k = 1 and λ =
√
n. All vertices have weight 1, except for
one vertex that has weight w =
√
n. The buy-at-once algorithm will either pay at least n in
the first round, or at least λw = n in the second round. However, an optimal algorithm can
choose only the heavy vertex in the first round, and then pay at most w +λk = 2
√
n. Hence the
approximation ratio of the buy-at-once algorithm for weighted robust vertex cover is no better
than Ω(
√
n). This example indicates the need for more sophisticated approximation algorithms
for robust two-stage optimization problems.
In Section 2, we give a general LP-based framework for solving robust covering problems
given access to an oracle that solves the max-min problem (or the adversary’s problem) and
another oracle that rounds the LP solution for the classical (i.e., non-robust) optimization
problem. More precisely, the separation oracle for this exponential LP’s, we need to solve a
max-min variant of the fractional covering problem. For example, in the max-min fractional
set cover problem, given a collection of subsets S
1
, S
2
, . . . , S
m
of a universe F each with a cost
c(S
i
) and a parameter k, we need to find a subset T ⊆ F of size at most k for which the cost of
3