We improve Chandra's bound, as he conjectured was possible, giving an approximation algorithm that opens $f(k,\epsilon)=O(k\log (1/\epsilon))$ facilities to obtain assignment cost at most $1+\epsilon$ times the optimal with $k$ facilities.
Theorem 1. There is a polynomial-time algorithm that, given any metric $k$-medians instance, returns a solution that uses $O(k\log(1/\epsilon))$ facilities with assignment cost $1+O(\epsilon)$ times the optimum with $k$ facilities.
Proof. We use the same idea that Chandra does, but instead of using Lin and Vitter's filtering technique, we adapt the improved rounding scheme from K-medians, facility location, and the Chernoff-Wald bound.
Fix any optimal solution $(x, y)$ to the standard $k$-median linear-program relaxation:
$$
\begin{align*}
& & \min \textstyle \sum_{j\in C}\sum_{f\in L} d(j, f) x_{jf} \\
& (\forall j\in C) & \textstyle \sum_{f\in L} x_{jf} = 1, \\
& & \textstyle \sum_{f\in L} y_f = k, \\
& (\forall j\in C, f\in L) & 0 \le x_{jf} \le y_f.
\end{align*}
$$
Let $\alpha_j = \sum_{f\in L} d(j, f) x_{jf}$ be the assignment cost incurred by $(x, y)$ for client $j$.
Let OPT $= \sum_j \alpha_j$ be the total assignment cost.
The LP is a relaxation of the actual instance, so the true optimum is at least OPT.
The rounding scheme has two phases.
In the first phase it generates a set $S\subseteq L$ of facilities and a partial assignment of clients to facilities in $S$, by sampling $h=\lceil k\ln(1/\epsilon)\rceil$ times as follows:
- for $t=1,2,\ldots, h$:
- $~~~~$ sample a random facility $f_t\in L$ from the distribution defined by $y/k$
- $~~~~$ for each unassigned client $j\in C$, with probability $x_{jf_t}/y_{f_t}$, assign $j$ to facility $f_t$
- let $A$ be the set of assigned clients
In each iteration, the chance of assigning a given unassigned client $j$ to a given facility $f$ is $\frac{y_f}{k} \frac{x_{jf}}{y_f} = \frac{x_{jf}}{k}$.
In each iteration, the probability of assigning a given unassigned client $j$ to some facility is $\sum_{f} \frac{x_{jf}}{k} = \frac 1 k$. So the chance that any given client is not in $A$ (not assigned during the first phase) is $p = (1-1/k)^h \le \exp(-h/k) \le \epsilon$.
For any given client $j$, conditioned on $j$ being in $A$ (assigned to some facility during the first phase), the expected cost of its assignment is $\sum_f x_{jf} d(j, f) = \alpha_j$.
Thus the expected cost of the first phase is $\sum_j (1-p)\alpha_j = (1-p)$OPT.
In the second phase, (following Chandra's approach) use any existing $O(1)$-approximation algorithm to find an $O(1)$-approximate solution (w.r.t. the induced LP, and using here that the problem is metric) to the $k$-medians instance obtained from the given instance by removing all clients that were assigned in the first phase. This step opens at most $k$ facilities and (because the induced LP's solution costs at most $\sum_{j\not \in A} \alpha_j$)
incurs assignment cost $O(\sum_{j\not\in A} \alpha_j)$.
So by linearity of expectation the expected cost of this phase is
$O(\sum_j \Pr[j\not\in A] \alpha_j) = O(\sum_j p \alpha_j) = O(p \,\text{OPT})$.
Thus, in total at most $k + 1 + k\ln(1/\epsilon)$ facilities are opened, and the expected assignment cost is at most
$(1-p)\text{OPT} + O(p\,\text{OPT}) = (1+O(\epsilon))$OPT.
$~~~\Box$