Skip to main content

Serve or skip: the power of rejection in online bottleneck matching


We consider the online matching problem, where n server-vertices lie in a metric space and n request-vertices that arrive over time each must immediately be permanently assigned to a server-vertex. We focus on the egalitarian bottleneck objective, where the goal is to minimize the maximum distance between any request and its server. It has been shown that while there are effective algorithms for the utilitarian objective (minimizing total cost) in the resource augmentation setting where the offline adversary has half the resources, these are not effective for the egalitarian objective. Thus, we propose a new Serve-or-Skip (SoS) bicriteria analysis model, where the online algorithm may reject or skip up to a specified number of requests, and propose two greedy algorithms: GriNN(t) and \({{\textsc {Grin}}^*(t)}\). We show that the SoS model of resource augmentation analysis can essentially simulate the doubled-server-capacity model, and then examine the performance of GriNN(t) and \({\textsc {Grin}^*(t)}\).

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5


  • Anthony BM, Chung C (2014) Online bottleneck matching. J Comb Optim 27(1):100–114 (preliminary version appeared in COCOA, pp. 257–268, 2012)

    MathSciNet  Article  MATH  Google Scholar 

  • Chung C, Pruhs K, Uthaisombut P (2008) The online transportation problem: on the exponential boost of one extra server. In: LATIN, pp 228–239

  • Devanur NR, Hayes TP (2009) The adwords problem: online keyword matching with budgeted bidders under random permutations. In: Proceedings of the 10th ACM conference on electronic commerce, EC ’09, pp 71–78

  • Fernandes CG, Schouery RCS (2014) Second-price ad auctions with binary bids and markets with good competition. Theor Comput Sci 540–541:103–114

    MathSciNet  Article  MATH  Google Scholar 

  • Fuchs B, Hochstättler W, Kern W (2005) Online matching on a line. Theor Comput Sci 332(1–3):251–264

    MathSciNet  Article  MATH  Google Scholar 

  • Gabow HN, Tarjan RE (1988) Algorithms for two bottleneck optimization problems. J Algorithm 9(3):411–417

    MathSciNet  Article  MATH  Google Scholar 

  • Garfinkel RS (1971) An improved algorithm for the bottleneck assignment problem. Oper Res 19(7):1747–1751

    Article  MATH  Google Scholar 

  • Goel G, Mehta A (2008) Online budgeted matching in random input models with applications to adwords. In: Proceedings of the nineteenth annual ACM-SIAM symposium on discrete algorithms, SODA ’08, pp 982–991

  • Goldberg AV, Hartline JD, Wright A (2001) Competitive auctions and digital goods. In: Proceedings of the 12th annual ACM-SIAM symposium on discrete algorithms, SODA ’01, pp 735–744

  • Gu A, Gupta A, Kumar A (2013) The power of deferral: maintaining a constant-competitive Steiner tree online. In: Proceedings of the 45th annual ACM symposium on theory of computing, pp 525–534. ACM

  • Gupta A, Kumar A, Stein C (2014) Maintaining assignments online: Matching, scheduling, and flows. In: Proceedings of the 25th annual ACM-SIAM symposium on discrete algorithms, SODA 2014, pp 468–479

  • Hartline JD, Roughgarden T (2009) Simple versus optimal mechanisms. In: ACM conference on electronic commerce, pp 225–234

  • Idury R, Schaffer A (1992) A better lower bound for on-line bottleneck matching, manuscript.

  • Kalyanasundaram B, Pruhs K (1993) Online weighted matching. J Algorithm 14(3):478–488 (preliminary version appeared in SODA, pp. 231–240, 1991)

    MathSciNet  Article  MATH  Google Scholar 

  • Kalyanasundaram B, Pruhs K (2000a) Speed is as powerful as clairvoyance. J ACM 47:617–643 (preliminary version appeared in FOCS, pp. 214–221, 1995)

    MathSciNet  Article  MATH  Google Scholar 

  • Kalyanasundaram B, Pruhs K (2000b) The online transportation problem. SIAM J Discret Math 13(3):370–383 (preliminary version appeared in ESA, pp 484–493, 1995)

    MathSciNet  Article  MATH  Google Scholar 

  • Kalyanasundaram B, Pruhs KR (2000c) An optimal deterministic algorithm for online b-matching. Theor Comput Sci 233(1):319–325

    MathSciNet  Article  MATH  Google Scholar 

  • Khuller S, Mitchell SG, Vazirani VV (1994) On-line algorithms for weighted bipartite matching and stable marriages. Theor Comput Sci 127:255–267

    MathSciNet  Article  MATH  Google Scholar 

  • Megow N, Skutella M, Verschae J, Wiese A (2012) The power of recourse for online MST and TSP. In: Proceedings of automata, languages, and programming—39th international colloquium, ICALP 2012, Part I, pp 689–700

  • Mehta A, Saberi A, Vazirani U, Vazirani V (2007) Adwords and generalized online matching. J ACM 54(5):22:1–22:19

  • Phillips CA, Stein C, Torng E, Wein J (2002) Optimal time-critical scheduling via resource augmentation. Algorithmica 32(2):163–200 (preliminary version appeared in STOC, pp 140–149, 1997)

    MathSciNet  Article  MATH  Google Scholar 

  • Roughgarden T, Tardos É (2002) How bad is selfish routing? J ACM 49(2):236–259 (preliminary version appeared in FOCS, pp 93–102, 2000)

    MathSciNet  Article  MATH  Google Scholar 

Download references


A preliminary version of this work was published in the proceedings of the 8th Annual International Conference on Combinatorial Optimization and Applications, COCOA 2014. We would like to thank the anonymous reviewers for their careful reading of our manuscript and their many insightful comments and suggestions.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Barbara M. Anthony.


Appendix 1: Limitations on requests \({{\textsc {Grin}}^*(t)}\) can skip

We formalize some observations about which requests \({{\textsc {Grin}}^*(t)}\) can and cannot skip. These observations may be useful in obtaining better bounds on the performance of \({{\textsc {Grin}}^*(t)}\), or provide insight into algorithms which may be more promising in the \(\hbox {SoS}(p)\) model. As noted in Lemma 1, \(r_1\) must be assigned by \({{\textsc {Grin}}^*(t)}\). We now show that \({{\textsc {Grin}}^*(t)}\) for \(t \ge 2\) cannot pass on both requests \(r_2\) and \(r_3\).

Lemma 6.1

There is no instance in which \(\textsc {Grin}^*(t)\) for \(t \ge 2\) passes on both requests \(r_2\) and \(r_3\).


Note that if \(p < 2\), then the model itself immediately precludes passing on two requests. Thus we may assume \(p \ge 2\) for the remainder of the proof.

We may restrict our proof to the case of \(n=3\), since additional servers/requests only allow for more potential assignments. We know that \(r_1\) is assigned (as guaranteed by Lemma 1). We then assume \(r_2\) and \(r_3\) are not assigned, and show that leads to a contradiction.

Our requests are thus labeled \(r_1, r_2, r_3\) in order of arrival. Our servers are labeled \(s_a, s_b, s_c\). Without loss of generality we let \(r_1\) be assigned to \(s_a\). Thus, \(d(r_1, s_a) = \textsc {OPT}_1\).

Since \(r_2\) is not assigned by Grin \(^*(t)\), the available servers must be outside of the threshold bound, and thus

$$\begin{aligned} d(r_2, s_b)> & {} {t\textsc {OPT}_2} \text {, and} \end{aligned}$$
$$\begin{aligned} d(r_2, s_c)> & {} {t\textsc {OPT}_2}. \end{aligned}$$

Similarly, \(r_3\) is not assigned by \({{\textsc {Grin}}^*(t)}\), so

$$\begin{aligned} d(r_3, s_b)> & {} t\textsc {OPT}_3 \text {, and} \end{aligned}$$
$$\begin{aligned} d(r_3, s_c)> & {} {t\textsc {OPT}_3}. \end{aligned}$$

Consider the assignments made by \(\textsc {OPT}_2\). Since \(r_2\) is not assigned by \(\textsc {Grin}^*(t)\), \(\textsc {OPT}_2\) must assign \(r_2\) to \(s_a\). (If not, \(\textsc {Grin}^*(t)\) would have made the same assignment of \(r_2\) as \(\textsc {OPT}_2\).) Hence, \(r_1\) must be assigned to either \(s_b\) or \(s_c\) by \(\textsc {OPT}_2\), giving

$$\begin{aligned} \min \{d(r_1, s_b), d(r_1, s_c)\} \le {\textsc {OPT}_2}. \end{aligned}$$

Now consider the assignments made by \(OPT_3\). Since \(r_3\) is not assigned by \(\textsc {Grin}^*(t)\), \(OPT_3\) must assign \(r_3\) to \(s_a\), giving \(d(r_3, s_a) \le OPT_3\). Thus, \(OPT_3\) must assign \(r_2\) to either \(s_b\) or \(s_c\). Hence, at least one of \(d(r_2, s_b)\) and \(d(r_2, s_c)\) is at most \(OPT_3\). Since both \(d(r_2, s_b)\) and \(d(r_2, s_c)\) are at least \(t\cdot OPT_2\), this guarantees that

$$\begin{aligned} OPT_3 > t\cdot OPT_2. \end{aligned}$$

By triangle inequality, \(d(r_3, s_b) \le d(r_3, s_a) + d(s_a, r_1) + d(r_1, s_b)\). Likewise, \(d(r_3, s_c) \le d(r_3, s_a) + d(s_a, r_1) + d(r_1, s_c)\). Combining the observations that \(d(r_3, s_a)\) is at most \(OPT_3\), \(d(s_a, r_1)\) is at most \(OPT_1\), and that at least one of \(d(r_1, s_b), d(r_1, s_c) \le OPT_2\) gives that at least one of \(d(r_3, s_b)\) and \(d(r_3, s_c)\) is at most \(OPT_3 + OPT_1 + OPT_2\). Since the \(OPT_i\) are nondecreasing, \(OPT_3 + OPT_1 + OPT_2 \le OPT_3 + 2OPT_2\), and using the fact that \(OPT_3 > t\cdot OPT_2\), we get that at least one of \(d(r_3, s_b)\) and \(d(r_3, s_c)\) is at most \(2\cdot OPT_3\), which (since \(t \ge 2\)) contradicts the previous observation that \(d(r_3, s_b) > t\cdot OPT_3\) and \(d(r_3, s_c) > t\cdot OPT_3\). \(\square \)

It is natural to consider extensions of this lemma, such as the analogous statement about \(r_4\) and \(r_5\) and subsequent pairings, and to ask whether the parameter t may dictate what fraction of the requests may be skipped at any point in time. We show, however, that it is not in fact true that \(\textsc {Grin}^*(t)\) for \(t \ge 2\) in the SoS(p) model cannot pass on both requests \(r_4\) and \(r_5\). (This also invalidates the more general possibility that by request k, \(\textsc {Grin}^*(t)\) can have skipped at most \(\lfloor {k/t}\rfloor \) requests.)

We now show by example, illustrated in Fig. 6, that \(\textsc {Grin}^*(2)\) for in the SoS(p) model can in fact pass on both requests \(r_4\) and \(r_5\). Observe that \(\textsc {OPT}_1 = 1, \textsc {OPT}_2 = 1+\epsilon , \textsc {OPT}_3 = 2, \textsc {OPT}_4 = 2 + 3\epsilon , \textsc {OPT}_5 = 2 + 3\epsilon \). In the final OPT, that is, \(\textsc {OPT}_5\), \(r_i\) is assigned to \(s_i\) for \(i=1,\ldots , n\). \(\textsc {Grin}^*(2)\) assigns \(r_1\) to \(s_5\). Since \(\textsc {OPT}_2\) is \(1+\epsilon \), \(\textsc {Grin}^*(2)\) skips request \(r_2\) since the nearest available server is at \(2+3\epsilon > 2\cdot (1+\epsilon )\) away. Request \(r_3\) is then greedily assigned to \(s_4\), a distance of 1 away. Request \(r_4\) is skipped since there are no available servers within \(2\cdot (2+3\epsilon )\), as is \(r_5\) for the same reason. Thus, not only are both \(r_4\) and \(r_5\) skipped, but also three requests were skipped out of five, indicating that there are instances where more than half of the total requests are skipped by \(\textsc {Grin}^*(2)\).

Fig. 6
figure 6

An instance where \(n=5\) in which more than half the requests are skipped by \(\textsc {Grin}^*(2)\). Requests skipped by \(\textsc {Grin}^*(2)\) are highlighted

Appendix 2: Upper bound for the basic greedy algorithm

The proof of the following theorem closely echos that of the proof of Theorem 2 in Sect. 3. This theorem essentially closes the gap that remained in Anthony and Chung (2014) between the lower bound on the competitiveness of Greedy (of \(2^{n-1}\)) and the upper bound.

Theorem 7

The basic algorithm Greedy, which simply assigns requests to the closest available server, is \(2^n-1\)-competitive for online minimum bottleneck matching, and this is tight. (Note that this guarantee is without the aid of resource augmentation.)


We will show inductively that the assignment cost of \(r_i\) is at most \((2^i-1) \cdot \textsc {OPT}\) for \(i=1,\ldots , n\).

Base case: \(i=1\). By definition of Greedy, the first request \(r_1\) is always assigned with a cost of at most OPT, which satisfies the claim.

Inductive case: Assume the assignment cost of \(r_j\) is at most \((2^j-1) \cdot \textsc {OPT}\) for all \(1 \le j \le i\). Consider the assignment cost of \(r_{i+1}\). Let \(s_{i+1}\) be the server that \(\text {OPT}_{i+1}\) assigns to \(r_{i+1}\). If \(s_{i+1}\) is available, the assignment cost is at most \(\textsc {OPT}_{i+1} \le \textsc {OPT}\).

Thus, we may assume that \(s_{i+1}\) is not available, and is hence used by some \(r_j\) with \(j \le i\). We thus consider the graph consisting of \(i+1\) edges of \(\mathrm{OPT}_{i+1}\) and the i edges assigned thus far by Greedy. Since \(r_{i+1}\) is not yet matched by Greedy, there must be a path in this graph from \(r_{i+1}\) to some \(s_a\) that is used by \(\mathrm{OPT}_{i+1}\) but not currently matched by Greedy. Observe that said path must begin with an edge in \(\mathrm{OPT}_{i+1}\) and alternate between edges in \(\mathrm{OPT}_{i+1}\) and edges in Greedy, terminating with an edge in \(\mathrm{OPT}_{i+1}\).

We can thus use triangle inequality to compute the distance from this available \(s_a\) to \(r_{i+1}\), giving an upper bound on the assignment cost of \(r_{i+1}\). Since all distances are nonnegative, additional edges either cause the total cost to increase or stay the same. Thus, in the worst case, the path includes all of the i assignments already made, as well as the \(i+1\) edges in \(\textsc {OPT}_i\).

By strong induction, the total cost of the i assignments already made is at most

$$\begin{aligned} \sum _{h=1}^{i}(2^h-1) \cdot \textsc {OPT} = \left( 2^{i+1}-i-2\right) \cdot \textsc {OPT}. \end{aligned}$$

Since the \(\textsc {OPT}_i\) are non-decreasing, the cost of the \(i+1\) edges from \(\textsc {OPT}_{i+1}\) is no more than \((i+1)\cdot \textsc {OPT}\). Adding this to the cost above gives an upper bound on the total distance (and thus assignment cost) of \(r_{i+1}\) to \(s_a\) of \((2^{i+1}-1)\cdot \textsc {OPT}\), completing the inductive proof. \(\square \)

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Anthony, B.M., Chung, C. Serve or skip: the power of rejection in online bottleneck matching. J Comb Optim 32, 1232–1253 (2016).

Download citation

  • Published:

  • Issue Date:

  • DOI:


  • Online algorithms
  • Bottleneck matching
  • Resource augmentation
  • Approximation algorithms
  • Matching