This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Better and Simpler Learning-Augmented Online Caching

Alexander Wei Harvard University weia@college.harvard.edu
Abstract.

Lykouris and Vassilvitskii (ICML 2018) introduce a model of online caching with machine-learned advice, where each page request additionally comes with a prediction of when that page will next be requested. In this model, a natural goal is to design algorithms that (1) perform well when the advice is accurate and (2) remain robust in the worst case a la traditional competitive analysis. Lykouris and Vassilvitskii give such an algorithm by adapting the Marker algorithm to the learning-augmented setting. In a recent work, Rohatgi (SODA 2020) improves on their result with an approach also inspired by randomized marking. We continue the study of this problem, but with a somewhat different approach: We consider combining the BlindOracle algorithm, which just naïvely follows the predictions, with an optimal competitive algorithm for online caching in a black-box manner. The resulting algorithm outperforms all existing approaches while being significantly simpler. Moreover, we show that combining BlindOracle with LRU is in fact optimal among deterministic algorithms for this problem.

1. Introduction

Traditionally, the study of online algorithms focuses on worst-case robustness, with algorithms providing the same competitive guarantee against the offline optimal over all inputs. In recent years, however, there has been a surge of interest in studying online algorithms in the presence of structured inputs [MV17, LV18, PSK18, GP19, KPS+19, KPS+20, Roh20, LLM+20, Mit20]. A principal motivation for these works is the philosophy of beyond worst-case analysis [KP00, Rou19]: Many practical settings have inputs that follow restricted patterns, making classical worst-case competitive analysis too pessimistic to inform practice. In particular, the worst-case examples classical competitive analyses guard against often do not materialize. Furthermore, algorithms designed with the worst case in mind can be hamstrung by these considerations, ending up unnatural and losing performance on “nice” inputs.

Learning-augmented online algorithms, introduced by [LV18, PSK18], is a beyond worst-case framework motivated by the powerful predictive abilities of modern machine learning. The structure of the input is assumed to come in the form of a machine-learned predictor that provides predictions of future inputs. A concern with this setup may be that machine learning models typically have few worst-case guarantees. Nonetheless, with learning-augmented algorithms, we want the best of both worlds: Given a predictor, the objective is to design algorithms that (1) perform well in the optimistic scenario, where the predictor has low error, and (2) remain robust in the classical worst-case sense, when the predictor can be arbitrarily bad. That is, we would like our algorithm to be c(η)c(\eta)-competitive against the offline optimal on all inputs, where cc is a function of the predictor error η\eta such that maxηc(η)γ\max_{\eta}c(\eta)\leq\gamma for some γ1\gamma\geq 1. Such an algorithm is said to be γ\gamma-robust.

The focus of our work is learning-augmented online caching [LV18, Roh20]. In the online caching (a.k.a. online paging) problem, one seeks to maintain a cache of size kk online while serving requests for pages that may or may not be in the cache. For simplicity, we assume that pages must always be served from the cache and that bringing a page into the cache has unit cost. (In particular, if the cache is full, bringing a page into the cache requires also evicting a page already in the cache.) Thus, we seek to minimize the number of requests for which the page is not already in the cache, i.e., the number of cache misses. This is a classical online problem that has been the subject of extensive study over the past several decades (see [BE98] for an overview). From the worst-case perspective, this problem is well-understood for not only the version stated above [ST85, FKL+91, ACN00], but also for weighted generalizations [BBN12, BBN12a].

Online caching in the learning-augmented context was first considered by [LV18]. They introduce a model of prediction where the predictor, upon the arrival of each page, predicts the next time that this page will be requested. They show that the BlindOracle algorithm, which follows the predictor naïvely and evicts the page with the latest predicted arrival time, can have unbounded competitive ratio (i.e., is non-robust). They then give a different algorithm, PredictiveMarker, based on the Marker algorithm of [FKL+91], that achieves a competitive ratio of

2+O(min(η𝖮𝖯𝖳,logk)),2+O\left\lparen\min\left\lparen\sqrt{\frac{\eta}{\mathsf{OPT}}},\log k\right\rparen\right\rparen,

where η\eta is the 1\ell_{1} error of the predictor and 𝖮𝖯𝖳\mathsf{OPT} is the cost of the offline optimal. (See Section 2.1 for precise definitions.) In [Roh20], Rohatgi introduces the LNonMarker algorithm, which is also based on randomized marking (but eschews the framework somewhat), and shows that this algorithm obtains a competitive ratio of

O(1+min(logkkη𝖮𝖯𝖳,logk)).O\left\lparen 1+\min\left\lparen\frac{\log k}{k}\frac{\eta}{\mathsf{OPT}},\log k\right\rparen\right\rparen.

This bound is obtained by first constructing a non-robust algorithm and then using a black-box combination technique discussed in [LV18] to combine this non-robust algorithm with the Marker algorithm. Rohatgi also provides a lower bound of

Ω(min(log(1klogkη𝖮𝖯𝖳),logk))\Omega\left\lparen\min\left\lparen\log\left\lparen\frac{1}{k\log k}\frac{\eta}{\mathsf{OPT}}\right\rparen,\log k\right\rparen\right\rparen

for the competitive ratio of any learning-augmented online algorithm for caching in terms of kk, 𝖮𝖯𝖳\mathsf{OPT}, and η\eta.

1.1. Our Contribution

We show that the strikingly simple approach of combining BlindOracle with an O(logk)O(\log k)-competitive online caching algorithm (e.g., Marker) in a black-box fashion obtains a competitive ratio bound of

O(1+min(1kη𝖮𝖯𝖳,logk)),O\left\lparen 1+\min\left\lparen\frac{1}{k}\frac{\eta}{\mathsf{OPT}},\log k\right\rparen\right\rparen,

improving on that of LNonMarker. Thus, although BlindOracle is non-robust [LV18], we show that it should not be abandoned entirely. In fact, it has excellent performance when η/𝖮𝖯𝖳\eta/\mathsf{OPT} is small. So when this algorithm is combined with a O(logk)O(\log k)-competitive algorithm, we start seeing performance improvement over the robust algorithm starting at η/𝖮𝖯𝖳=O(klogk)\eta/\mathsf{OPT}=O(k\log k).

And although our improvement in the competitive ratio is slight, previous approaches for learning-augmented online caching [LV18, Roh20] have relied on much more intricate constructions based on randomized marking. We therefore believe that our simple approach may yield better practical performance and may generalize more readily to other learning-augmented settings. (Indeed, we note that the deterministic combining algorithm is particularly simple: Just “follow” the algorithm with the better performance thus far.)

We also give precise bounds on the constant factors in the competitive ratios that we obtain. [FKL+91, BB00] provide optimal bounds for combining online algorithms online in a black-box manner, with better constants than the approach discussed in [LV18] and applied in [Roh20]. By composing a careful competitive analysis of BlindOracle with these “combiners,” we obtain constants in the competitive ratio that are lower than those of previous work.

Finally, we show that combining BlindOracle with a kk-competitive deterministic algorithm (e.g., LRU [ST85]) is the best one could hope to do among deterministic algorithms for learning-augmented online caching. In particular, we show that a linear dependence on η/(k𝖮𝖯𝖳)\eta/(k\cdot\mathsf{OPT}) in the competitive ratio is necessary. Therefore, if a logarithmic dependence on η/(k𝖮𝖯𝖳)\eta/(k\cdot\mathsf{OPT}) is to be achieved, as in Rohatgi’s lower bound, then randomization is needed, (perhaps surprisingly) even in the regime where η/(k𝖮𝖯𝖳)\eta/(k\cdot\mathsf{OPT}) is bounded.

Stated formally, our main result analyzing BlindOracle is the following:

Theorem 1.1 (restate=maintheorem,label=theorem:main).

For learning-augmented online caching, BlindOracle obtains a competitive ratio of

min(1+2η𝖮𝖯𝖳,2+4k1η𝖮𝖯𝖳),\min\left\lparen 1+2\frac{\eta}{\mathsf{OPT}},2+\frac{4}{k-1}\frac{\eta}{\mathsf{OPT}}\right\rparen,

where η\eta is the 1\ell_{1} loss incurred by the predictor and 𝖮𝖯𝖳\mathsf{OPT} is the offline optimal cost. (For precise definitions, see Section 2.1.)

Plugging this bound into the results of [FKL+91, BB00] for competitively combining online algorithms online (see Section 2.2) yields the following corollaries:

Corollary 1.2 (restate=firstcorollary,label=corollary:det).

There exists a deterministic algorithm for learning-augmented online caching that achieves a competitive ratio of

2min(min(1+2η𝖮𝖯𝖳,2+4k1η𝖮𝖯𝖳),k).2\min\left\lparen\min\left\lparen 1+2\frac{\eta}{\mathsf{OPT}},2+\frac{4}{k-1}\frac{\eta}{\mathsf{OPT}}\right\rparen,k\right\rparen.
Corollary 1.3 (restate=secondcorollary,label=corollary:rand).

There exists a randomized algorithm for learning-augmented online caching that achieves a competitive ratio of

(1+ε)min(min(1+2η𝖮𝖯𝖳,2+4k1η𝖮𝖯𝖳),Hk)(1+\varepsilon)\min\left\lparen\min\left\lparen 1+2\frac{\eta}{\mathsf{OPT}},2+\frac{4}{k-1}\frac{\eta}{\mathsf{OPT}}\right\rparen,H_{k}\right\rparen

for any ε(0,1/4)\varepsilon\in(0,1/4).111The trade-off in ε\varepsilon and the additional cost is additive; thus, it does not factor into the competitive ratio. (Here, Hk=1+12+13++1k=ln(k)+O(1)H_{k}=1+\frac{1}{2}+\frac{1}{3}+\cdots+\frac{1}{k}=\ln(k)+O(1) is the kk-th harmonic number.)

Finally, we state our matching lower bound for LABEL:corollary:det on deterministic algorithms for learning-augmented online caching:

Theorem 1.4 (restate=lowerboundtheorem,label=theorem:lower).

The competitive ratio bound for any deterministic learning-augmented online caching algorithm must be at least

1+Ω(min(1kη𝖮𝖯𝖳,k)).1+\Omega\left\lparen\min\left\lparen\frac{1}{k}\frac{\eta}{\mathsf{OPT}},k\right\rparen\right\rparen.

1.2. Related Work

In addition to the predecessor works by [LV18, Roh20] on learning-augmented online caching, there have been several other recent papers in the space of learning-augmented online algorithms: [MV17] study repeated posted-price auctions, [PSK18, GP19] study the ski rental problem, and [PSK18, LLM+20, Mit20] study online scheduling. Of these, the scheduling algorithm of [PSK18] is the most similar in spirit to this present work: Both algorithms are based on combining a naïve and optimistic algorithm with a robust algorithm.

Other threads of research falling under beyond worst-case online algorithms include work on combining multiple algorithms with different performance characteristics [FKL+91, BB00, MNS12, GP19], designing online algorithms with distributional assumptions (e.g., stochasticity) on the input [KP00, BS12, MGZ12], and semi-online algorithms, where the input is assumed to have a predictable offline component and an adversarial online component [KPS+19, KPS+20].

The idea of learning-augmentation has also been explored in many other algorithmic and data structural settings in recent years. These include learned indices [KBC+18], bloom filters [Mit18], frequency estimation in streams [HIK+19], and nearest neighbor search [DIR+19], among others.

Finally, advice for online algorithms has also been considered with a more complexity theoretic spirit through the study of advice complexity of online algorithms; see the survey of [BFK+17].

1.3. Recent Developments

Recently, in work done independently of and concurrently with this paper, [ACE+20] also study a BlindOracle-like algorithm, which they term FollowThePrediction, in the more general setting of learning-augmented metrical task systems; they also use the “combiner” of [BB00] to make this algorithm robust. However, their prediction model, when specialized to online caching, is incomparable to that of [LV18] (which we follow).222Namely, their algorithms expect predictions to be in a different form: They expect predictions to be cache states (i.e., the set of pages in the cache at time tt) rather than next arrival times of pages. Moreover, there exist sequences of “corresponding” inputs for each of these two models such that the predictor error approaches infinity in one model while remaining constant in the other. Thus, the theoretical results proved in these two models do not imply each other.

2. Preliminaries

2.1. Setup and Notation

In the online caching problem, we receive a sequence σ=(σ1,,σn)\sigma=(\sigma_{1},\ldots,\sigma_{n}) of page requests online, and our goal is to serve these requests using a cache of size kk while minimizing cost. In this problem, pages must be served from the cache and can be served at no cost; however, evicting a page from the cache has unit cost.333Note that this is equivalent to the “standard” version, where each cache miss has unit cost, up to a constant of kk.

We will establish competitive bounds comparing the performance of two online caching algorithms 𝒜\mathcal{A} and \mathcal{B}. More precisely, we will show bounds of the form

𝖠𝖫𝖦(σ)γ𝖠𝖫𝖦𝒜(σ)+O(1),\mathsf{ALG}_{\mathcal{B}}(\sigma)\leq\gamma\cdot\mathsf{ALG}_{\mathcal{A}}(\sigma)+O(1),

where 𝖠𝖫𝖦𝒜(σ)\mathsf{ALG}_{\mathcal{A}}(\sigma) and 𝖠𝖫𝖦(σ)\mathsf{ALG}_{\mathcal{B}}(\sigma) are the costs of 𝒜\mathcal{A} and \mathcal{B}, respectively, as measured in number of evictions made while serving a sequence σ\sigma of page requests. We will also compare our costs to the offline optimal algorithm 𝖮𝖯𝖳\mathsf{OPT}, whose cost 𝖮𝖯𝖳(σ)\mathsf{OPT}(\sigma) is the minimum possible cost of serving request sequence σ\sigma. We will omit the argument σ\sigma when the context is clear (i.e., just writing 𝖠𝖫𝖦𝒜\mathsf{ALG}_{\mathcal{A}} to represent 𝖠𝖫𝖦𝒜(σ)\mathsf{ALG}_{\mathcal{A}}(\sigma)).

In our analysis, we use AtA_{t} and BtB_{t} to denote the cache states of 𝒜\mathcal{A} and \mathcal{B}, respectively, just before the tt-th request. Formally, AtA_{t} and BtB_{t} are subsets of {1,,t1}\{1,\ldots,t-1\} of size at most kk, containing for each cached page the index at which it was last served. That is, when serving the tt-th request, we remove some old request index tt^{\prime} from the cache and insert tt. Thus, if tt^{\prime} is such that σt=σt\sigma_{t}=\sigma_{t^{\prime}}, this operation is free; otherwise, it has unit cost. In the sequel, we will also refer to these indices tt as page requests.

In the learning-augmented online caching problem, the tt-th page request comes with a prediction hth_{t} for the next time page σt\sigma_{t} is requested. That is, at the time of the tt-th request, our algorithm receives the pair (σt,ht)(\sigma_{t},h_{t}). Let h=(h1,,hn)h=(h_{1},\ldots,h_{n}) be the tuple of all nn predictions. To define a notion of loss, let yty_{t} denote for each tt the next time page tt is actually requested, with yt=n+1y_{t}=n+1 if page σt\sigma_{t} is never requested again. The 1\ell_{1} loss is then defined to be

η(σ,h)=t|htyt|.\eta(\sigma,h)=\sum_{t}|h_{t}-y_{t}|.

We will omit arguments to η\eta if the context is clear. Note that if η(σ,h)=0\eta(\sigma,h)=0, then the offline optimal can be obtained, as the optimal algorithm always evicts the page that is next requested furthest into the future.

In stating our bounds, the essential quantity is often η/𝖮𝖯𝖳\eta/\mathsf{OPT}. To make this clear, we take ε=η/𝖮𝖯𝖳\varepsilon=\eta/\mathsf{OPT} and state our bounds in terms of ε\varepsilon in the sequel.

2.1.1. Inversions

Call a pair (i,j)(i,j) of page requests an inversion if yi<yjy_{i}<y_{j} but hihjh_{i}\geq h_{j}. Let M(σ,h)M(\sigma,h) denote the total number of inversions between the pair of sequences σ\sigma and hh. And as above, we will omit the arguments to MM when the context is clear.

2.1.2. BlindOracle

We now formally define the BlindOracle algorithm as follows: For each page request, if the requested page is already in the cache, do nothing. Otherwise, evict the page request pp whose predicted next arrival time hph_{p} is furthest away among all pAtp\in A_{t}, with ties broken consistently (e.g., by always evicting the least recently used page with maximal hph_{p}).

2.2. Combining Online Algorithms Competitively

In this section, we state some classical bounds on competitively combining online algorithms, due to [FKL+91] and [BB00]. This type of “black-box” combination was also considered by [LV18], but their approach has a worst constant than that of [FKL+91]. We also note that results of a similar flavor are proven by [PSK18, MNS12], but for other online problems.

The question of combining multiple online algorithms while remaining competitive against each was first considered in the seminal paper of [FKL+91]. They consider combining nn online algorithms 𝒜1,,𝒜n\mathcal{A}_{1},\ldots,\mathcal{A}_{n} for the online caching problem into a single algorithm 𝒜\mathcal{A} such that 𝒜\mathcal{A} is CiC_{i}-competitive against 𝒜i\mathcal{A}_{i} for each ii. They show that such an 𝒜\mathcal{A} is achievable if and only if

i=1n1Ci1.\sum_{i=1}^{n}\frac{1}{C_{i}}\leq 1.

We will need only the special case of n=2n=2 and C1=C2=2C_{1}=C_{2}=2, which we state below:

Theorem 2.1 ([FKL+91], special case).

Given any two algorithms 𝒜\mathcal{A} and \mathcal{B} for the online caching problem, there exists an algorithm 𝒞\mathcal{C} such that

𝖠𝖫𝖦𝒞(σ)2min(𝖠𝖫𝖦𝒜(σ),𝖠𝖫𝖦(σ))+O(1).\mathsf{ALG}_{\mathcal{C}}(\sigma)\leq 2\min(\mathsf{ALG}_{\mathcal{A}}(\sigma),\mathsf{ALG}_{\mathcal{B}}(\sigma))+O(1).

Moreover, if 𝒜\mathcal{A} and \mathcal{B} are deterministic, so is 𝒞\mathcal{C}.

Indeed, we note that that this can be done deterministically with a “follow-the-leader” approach, in which we simulate both algorithms and at each step evict any page that is not in the cache of the better performing algorithm (as measured by total number of evictions after serving the current request).

[BB00] show that one can obtain a better approximation factor using a randomized scheme, namely multiplicative weights.444The result of [BB00] in fact holds for general metrical task systems. That is, at each point in time, the probability that the combined algorithm is following one of the nn algorithms is given by a probability distribution over the nn algorithms governed by the multiplicative weights update rule. For n=2n=2, their result can be stated as follows:

Theorem 2.2 ([BB00], special case).

Given any two algorithms 𝒜\mathcal{A} and \mathcal{B} for the online caching problem and any ε\varepsilon, 0<ε<1/40<\varepsilon<1/4, there exists an algorithm 𝒞\mathcal{C} such that

𝖠𝖫𝖦𝒞(σ)(1+ε)min(𝖠𝖫𝖦𝒜(σ),𝖠𝖫𝖦(σ))+O(ε1k).\mathsf{ALG}_{\mathcal{C}}(\sigma)\leq(1+\varepsilon)\min(\mathsf{ALG}_{\mathcal{A}}(\sigma),\mathsf{ALG}_{\mathcal{B}}(\sigma))+O(\varepsilon^{-1}k).
Remark.

Although we do not state the versions of these results for n>2n>2, one could imagine that they can be useful wishes to combine multiple machine-learned predictors.

2.3. From 1\ell_{1} Loss to Inversions

We now state a lemma of [Roh20] that relates 1\ell_{1} loss to the number of inversions, letting us lower bound the 1\ell_{1} loss η(σ,h)\eta(\sigma,h) by lower bounding the number of inversions M(σ,h)M(\sigma,h). Thus, instead of reasoning in terms of 1\ell_{1} loss, we will reason in terms of inversions.

Lemma 2.3 ([Roh20]).

For any σ\sigma and hh, η(σ,h)12M(σ,h)\eta(\sigma,h)\geq\frac{1}{2}M(\sigma,h).

With this lemma, it suffices (up to a factor of 22) to give our competitive ratio upper bounds in terms of the number of inversions MM.

3. A First Analysis of BlindOracle

In this section, we give a first analysis of BlindOracle, showing that it gets very good performance when the ratio ε=η/𝖮𝖯𝖳\varepsilon=\eta/\mathsf{OPT} is very small. In particular, our analysis shows that as ε0\varepsilon\to 0, the competitive ratio achieved approaches 11.

Let 𝒜\mathcal{A} be the offline optimal algorithm (i.e., such that 𝖠𝖫𝖦𝒜=𝖮𝖯𝖳\mathsf{ALG}_{\mathcal{A}}=\mathsf{OPT}). Let \mathcal{B} be BlindOracle. Note that we can think of each of 𝖠𝖫𝖦𝒜\mathsf{ALG}_{\mathcal{A}}, 𝖠𝖫𝖦\mathsf{ALG}_{\mathcal{B}}, and MM as functions of the time tt, i.e., they are the cost of 𝒜\mathcal{A}, the cost of \mathcal{B}, and the number of inversions, respectively, on the prefix consisting of the first t1t-1 requests.555This indexing is to be consistent with the definitions of AtA_{t} and BtB_{t}. We use the Δ\Delta operator to denote the change (in a function of tt) from time tt to time t+1t+1. For example, Δ𝖠𝖫𝖦𝒜=1\Delta\mathsf{ALG}_{\mathcal{A}}=1 if 𝖠𝖫𝖦𝒜\mathsf{ALG}_{\mathcal{A}} evicts an element upon the tt-th request.

In our analysis, we maintain a matching XtX_{t} between AtA_{t} and BtB_{t} at all times tt. Call a matching valid if it consists only of pairs (a,b)At×Bt(a,b)\in A_{t}\times B_{t} such that the next arrival of bb is no later than the next arrival of aa. Indeed, our matching XtAt×BtX_{t}\subseteq A_{t}\times B_{t} will be valid throughout the execution of the algorithm.

We now proceed with a potential function analysis, taking our potential Φ\Phi (as a function of AtA_{t}, BtB_{t}, and XtX_{t}) to be the number of unmatched pages in BtB_{t}. For notational simplicity, we will simply denote Φ(At,Bt,Xt)\Phi(A_{t},B_{t},X_{t}) by Φ(t)\Phi(t). Given this setup, we show:

Proposition 3.1.

There exists a valid matching XnX_{n} such that

𝖠𝖫𝖦+Φ(n)𝖮𝖯𝖳+M.\mathsf{ALG}_{\mathcal{B}}+\Phi(n)\leq\mathsf{OPT}+M.
Proof.

We induct on the length nn of the input and perform a case analysis to show that we can maintain a valid matching XtX_{t} such that at each time step, the right-hand side increases at least as much as the left-hand side, i.e., Δ𝖠𝖫𝖦+ΔΦΔ𝖮𝖯𝖳+ΔM\Delta\mathsf{ALG}_{\mathcal{B}}+\Delta\Phi\leq\Delta\mathsf{OPT}+\Delta M.

For our base case, note that A1=B1A_{1}=B_{1}, so we may take X1X_{1} to be the identity matching.

Now, upon a request at time tt, we update XtX_{t} according to the following cases (and with the consequences listed for each case):

  1. (1)

    The requested page pp is in both AtA_{t} and BtB_{t}.

    1. (a)

      The cached pages are matched to each other.

      • Do nothing.

    2. (b)

      Otherwise:

      1. (i)

        Both cached pages are matched.

        • Remove the pairs (c,p)(c,p) and (p,d)(p,d) from XtX_{t}.

        • Add the pairs (p,p)(p,p) and (c,d)(c,d) to XtX_{t}.

        • As a result:

          • ΔΦ=0\Delta\Phi=0.

      2. (ii)

        Otherwise:

        • Remove any pairs involving pp from XtX_{t}. (There is at most one such pair.)

        • Add the pair (p,p)(p,p) to XtX_{t}.

        • As a result:

          • ΔΦ0\Delta\Phi\leq 0.

  2. (2)

    The requested page pp is in BtB_{t} only.

    • Remove any pairs involving the evicted page aa from XtX_{t}. (There is at most one such pair.)

    • Remove any pairs involving the requested page pp from XtX_{t}. (There is at most one such pair.)

    • Add the pair (p,p)(p,p) to XtX_{t}.

    • As a result:

      • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

      • ΔΦ1\Delta\Phi\leq 1.

  3. (3)

    The requested page pp is in AtA_{t} only.

    1. (a)

      The evicted page bBtb\in B_{t} is unmatched.

      • Add the pair (p,p)(p,p) to XtX_{t}. (The arriving page pAtp\in A_{t} cannot be in any valid matching.)

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • ΔΦ=1\Delta\Phi=-1.

    2. (b)

      The evicted page bBtb\in B_{t} is matched.

      1. (i)

        bb arrives later than all unmatched pages in BtB_{t}.

        • Remove the pair (c,b)(c,b) involving the evicted page bb from XtX_{t}.

        • Add the pair (c,b)(c,b^{\prime}) to XtX_{t}, where bBtb^{\prime}\in B_{t} is any unmatched page.

        • Add the pair (p,p)(p,p) to XtX_{t}. (The arriving page pAtp\in A_{t} cannot be in any valid matching.)

        • As a result:

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

          • ΔΦ=1\Delta\Phi=-1.

      2. (ii)

        There is an unmatched page bBtb^{\prime}\in B_{t} arriving later than bb.

        • Remove the pair (c,b)(c,b) involving the evicted page bb from XtX_{t}.

        • Add the pair (p,p)(p,p) to XtX_{t}. (The arriving page pAtp\in A_{t} cannot be in any valid matching.)

        • As a result:

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

          • ΔΦ=0\Delta\Phi=0.

          • ΔM=1\Delta M=1, as there is an inversion between bb and bb^{\prime}. (Note that we do not count this inversion ever again, as bb gets evicted.)

  4. (4)

    The requested page pp is in neither AtA_{t} nor BtB_{t}.

    1. (a)

      𝒜\mathcal{A} evicts an unmatched page aAta\in A_{t}.

      1. (i)

        \mathcal{B} evicts an unmatched page bBtb\in B_{t}.

        • Add the pair (p,p)(p,p) to XtX_{t}.

        • As a result:

          • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

          • ΔΦ=1\Delta\Phi=1.

      2. (ii)

        \mathcal{B} evicts a matched page bBtb\in B_{t}.

        • Remove the pair (c,b)(c,b) involving bb from XtX_{t}.

        • Add the pair (p,p)(p,p) to XtX_{t}.

        • As a result:

          • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

    2. (b)

      𝒜\mathcal{A} evicts a matched page aAta\in A_{t}.

      1. (i)

        \mathcal{B} evicts an unmatched page bBtb\in B_{t}.

        • Remove the pair (a,d)(a,d) involving aa from XtX_{t}.

        • Add the pair (p,p)(p,p) to XtX_{t}.

        • As a result:

          • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

      2. (ii)

        \mathcal{B} evicts a matched page bBtb\in B_{t}.

        • Remove the pair (a,d)(a,d) involving aa from XtX_{t}.

        • Remove the pair (c,b)(c,b) involving bb from XtX_{t}.

        • Add the pair (p,p)(p,p) to XtX_{t}.

        • As a result:

          • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

          • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

          • Note that either bb arrives after dd, in which case we can add (c,d)(c,d) to XtX_{t} and ΔΦ=0\Delta\Phi=0, or the pair (b,d)(b,d) forms an inversion, in which case ΔΦ=1\Delta\Phi=1 and ΔM=1\Delta M=1. (As before, since bb is getting evicted, we will not count this pair twice.)

It is not hard to verify that the change in the left-hand side of the bound is no more than the change in the right-hand side in each of the cases listed above, from which the proposition follows. ∎

Proposition 3.2.

The competitive ratio of algorithm \mathcal{B} is at most 1+2ε1+2\varepsilon.

Proof.

Note that 2η2\eta is bounded below by the number of inversions MM of (σ,h)(\sigma,h) by Lemma 2.3. By Proposition 3.1, 𝖠𝖫𝖦𝒜𝖮𝖯𝖳+M\mathsf{ALG}_{\mathcal{A}}\leq\mathsf{OPT}+M, so 𝖠𝖫𝖦𝒜/𝖮𝖯𝖳1+M/𝖮𝖯𝖳1+2ε\mathsf{ALG}_{\mathcal{A}}/\mathsf{OPT}\leq 1+M/\mathsf{OPT}\leq 1+2\varepsilon. ∎

4. A More Careful Analysis

In this section, we give an asymptotically better (in kk) bound for the performance of BlindOracle. A more careful analysis is needed to show an upper bound with a 1/k1/k coefficient on the ratio ε=η/𝖮𝖯𝖳\varepsilon=\eta/\mathsf{OPT}. We use the same high-level approach for the proof as before, but with a more complicated potential function. Again, 𝒜\mathcal{A} is the offline optimal algorithm and \mathcal{B} is the BlindOracle algorithm, and also as before, we use Δ\Delta to denote change (in functions of tt) from request tt to request t+1t+1.

We maintain in this proof a matching XtX_{t} over pairs of page requests (a,b)At×Bt(a,b)\in A_{t}\times B_{t} such that hahbh_{a}\geq h_{b} for each time step tt. Our potential function Φ\Phi will be a function of AtA_{t}, BtB_{t}, and XtX_{t}. For notational simplicity, we will simply denote Φ(At,Bt,Xt)\Phi(A_{t},B_{t},X_{t}) by Φ(t)\Phi(t).

Given AtA_{t}, BtB_{t}, and XtX_{t} at time tt, define Φ0(t)\Phi_{0}(t) to be the number of bBtb\in B_{t} that are unmatched. Define Φ1(t)\Phi_{1}(t) to be the number of bBtb\in B_{t} such that (b,b)Xt(b,b)\not\in X_{t}. In other words, Φ1\Phi_{1} counts how many page requests in BtB_{t} are not matched to the same page request in AtA_{t}. Let za(t)z_{a}(t) be the number of pages in BtB_{t} predicted to appear no later than hah_{a}, with tie-breaking done in a consistent manner (e.g., by the last time the page was requested). Next, define

Φ2(t)=(a,b)Xt(zb(t)za(t))=(a,b)Xt(φaA(t)+φbB(t)),\Phi_{2}(t)=\sum_{(a,b)\in X_{t}}(z_{b}(t)-z_{a}(t))=\sum_{(a,b)\in X_{t}}\big{\lparen}\varphi^{A}_{a}(t)+\varphi^{B}_{b}(t)\big{\rparen},

where φaA(t)=(k1)za(t)\varphi^{A}_{a}(t)=(k-1)-z_{a}(t) and φbB(t)=zb(t)(k1)\varphi^{B}_{b}(t)=z_{b}(t)-(k-1). Finally, we take

Φ(t)=(k1)Φ0(t)+(k1)Φ1(t)+Φ2(t)\Phi(t)=(k-1)\Phi_{0}(t)+(k-1)\Phi_{1}(t)+\Phi_{2}(t)

as our overall potential function.

Proposition 4.1.

For any input (σ,h)(\sigma,h), there exists a matching XnAn×BnX_{n}\subseteq A_{n}\times B_{n} consisting only of pairs (a,b)(a,b) satisfying hahbh_{a}\geq h_{b} such that

(k1)𝖠𝖫𝖦+Φ(n)2(k1)𝖮𝖯𝖳+2M.(k-1)\mathsf{ALG}_{\mathcal{B}}+\Phi(n)\leq 2(k-1)\mathsf{OPT}+2M.
Proof.

We again induct on the length nn of the input, and we again perform a case analysis to show that we can maintain a matching XtX_{t} consisting only of pairs (a,b)(a,b) satisfying hahbh_{a}\geq h_{b} such that at each time step, the right-hand side increases at least as much as the left-hand side.

For our analysis, we split the serving of each page request into two phases:

  1. (1)

    Matching. Update XtX_{t} so that the page requests in AtA_{t} and BtB_{t} that are to be removed are unmatched. (Note that page requests are removed either because the corresponding page was requested again or because the corresponding page was evicted.)

  2. (2)

    Updating. Replace a page request from each of AtA_{t} and BtB_{t} with the new request and insert the new page request pair (t,t)(t,t) into XtX_{t}.

We first analyze how updating affects the potential Φ\Phi. This operation always decreases Φ0\Phi_{0} and Φ1\Phi_{1} each by 11, since we remove an unmatched pair. Next, for Φ2\Phi_{2}, observe that for a matched pair (a,b)(a,b), the difference zbzaz_{b}-z_{a} increases on the tt-th request only if there exists a pBtp\in B_{t} such that σp=σt\sigma_{p}=\sigma_{t} and hb<hphah_{b}<h_{p}\leq h_{a}. In this case, the pair (p,b)(p,b) also forms an inversion. Any inversion (p,b)(p,b) is counted at most once this way because pp is evicted from bb. Thus, we have ΔΦ2ΔM\Delta\Phi_{2}\leq\Delta M.

We now analyze the matching phase with a case analysis:

  1. (1)

    The requested page is in both AtA_{t} and BtB_{t}.

    • The previous page requests for σt\sigma_{t} in AtA_{t} and BtB_{t} are matched to each other, so we can just unmatch them.

    • As a result:

      • ΔΦ0=1\Delta\Phi_{0}=1.

      • ΔΦ1=1\Delta\Phi_{1}=1.

      • ΔΦ2=0\Delta\Phi_{2}=0, since the pages were matched to each other.

  2. (2)

    The requested page is in AtA_{t} only.

    1. (a)

      The previous request pAtp\in A_{t} for the requested page is matched as (p,d)(p,d) and the page request bBtb\in B_{t} evicted by \mathcal{B} is matched as (c,b)(c,b).

      • Unmatch (p,d)(p,d) and (c,b)(c,b) and then match (c,d)(c,d). The latter is okay since hchbhdh_{c}\geq h_{b}\geq h_{d}. Note that pdp\neq d.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • ΔΦ11\Delta\Phi_{1}\leq 1.

        • ΔΦ2=zp(k1)\Delta\Phi_{2}=z_{p}-(k-1), since φbB=0\varphi^{B}_{b}=0 and φpA=(k1)zp\varphi^{A}_{p}=(k-1)-z_{p}.

        • ΔMzp\Delta M\geq z_{p}, since the arrival of σp\sigma_{p} also generates zpz_{p} inversions of the form (p,b)(p,b^{\prime}) for all bBtb^{\prime}\in B_{t} such that hphbh_{p}\geq h_{b^{\prime}}.

    2. (b)

      The previous request pAtp\in A_{t} for the requested page is matched as (p,d)(p,d) and the page request bBtb\in B_{t} evicted by \mathcal{B} is unmatched.

      • Unmatch (p,d)(p,d). Note that pdp\neq d.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • ΔΦ1=0\Delta\Phi_{1}=0.

        • ΔΦ2zp\Delta\Phi_{2}\leq z_{p}, since φpA=(k1)zp\varphi^{A}_{p}=(k-1)-z_{p} and φdB=zd(k1)(k1)\varphi^{B}_{d}=z_{d}-(k-1)\geq-(k-1).

        • ΔMzp\Delta M\geq z_{p}, since the arrival of σp\sigma_{p} also generates zpz_{p} inversions of the form (p,b)(p,b^{\prime}) for all bBtb^{\prime}\in B_{t} such that hphbh_{p}\geq h_{b^{\prime}}.

    3. (c)

      The previous request pAtp\in A_{t} for the requested page is unmatched and the page request bBtb\in B_{t} evicted by \mathcal{B} is matched as (c,b)(c,b).

      • Unmatch (c,b)(c,b) and match (c,d)(c,d) for an arbitrary unmatched dBt{b}d\in B_{t}\setminus\{b\}. Doing so is okay because hchbhdh_{c}\geq h_{b}\geq h_{d}.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • ΔΦ0=0\Delta\Phi_{0}=0.

        • ΔΦ11\Delta\Phi_{1}\leq 1.

        • ΔΦ20\Delta\Phi_{2}\leq 0, since φbB=0\varphi^{B}_{b}=0 and φdB=(k1)zd0-\varphi^{B}_{d}=(k-1)-z_{d}\geq 0.

    4. (d)

      The previous request pAtp\in A_{t} for the requested page is unmatched and the page request bBtb\in B_{t} evicted by \mathcal{B} is unmatched.

      • Do nothing.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

  3. (3)

    The requested page is in BtB_{t} only.

    1. (a)

      The previous request pBtp\in B_{t} for the requested page is matched as (c,p)(c,p) and the page request aAta\in A_{t} evicted by 𝒜\mathcal{A} is matched as (a,d)(a,d).

      • Unmatch (c,p)(c,p) and (a,d)(a,d). Note that cpc\neq p.

      • As a result:

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=2\Delta\Phi_{0}=2.

        • If a=da=d, then ΔΦ1=1\Delta\Phi_{1}=1 and φaA+φdB=0\varphi^{A}_{a}+\varphi^{B}_{d}=0; otherwise, ada\neq d, in which case ΔΦ1=0\Delta\Phi_{1}=0 and φaA+φdB(k1)\varphi^{A}_{a}+\varphi^{B}_{d}\geq-(k-1).

        • Moreover, φcA+φpB(k1)\varphi^{A}_{c}+\varphi^{B}_{p}\geq-(k-1).

    2. (b)

      The previous request pBtp\in B_{t} for the requested page is matched as (c,p)(c,p) and the page request aAta\in A_{t} evicted by 𝒜\mathcal{A} is unmatched.

      • Unmatch (c,p)(c,p). Note that cpc\neq p.

      • As a result:

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • ΔΦ1=0\Delta\Phi_{1}=0.

        • ΔΦ2k1\Delta\Phi_{2}\leq k-1, since φcA+φpB(k1)\varphi^{A}_{c}+\varphi^{B}_{p}\geq-(k-1).

    3. (c)

      The previous request pBtp\in B_{t} for the requested page is unmatched and the page request aAta\in A_{t} evicted by 𝒜\mathcal{A} is matched as (a,d)(a,d).

      • Unmatch (a,d)(a,d).

      • As a result:

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • If a=da=d, then ΔΦ1=1\Delta\Phi_{1}=1 and φaA+φdB=0\varphi^{A}_{a}+\varphi^{B}_{d}=0; otherwise, ada\neq d, in which case ΔΦ1=0\Delta\Phi_{1}=0 and φaA+φdB(k1)\varphi^{A}_{a}+\varphi^{B}_{d}\geq-(k-1).

    4. (d)

      The previous request pBtp\in B_{t} for the requested page is unmatched and the page request aAta\in A_{t} evicted by 𝒜\mathcal{A} is unmatched.

      • Do nothing.

      • As a result:

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

  4. (4)

    The requested page is in neither AtA_{t} nor BtB_{t}.

    1. (a)

      The previous request aAta\in A_{t} evicted by 𝒜\mathcal{A} is matched as (a,d)(a,d) and the page request bBtb\in B_{t} evicted by \mathcal{B} is matched as (c,b)(c,b).

      • Unmatch (a,d)(a,d) and (c,b)(c,b) and then match (c,d)(c,d). The latter is okay because hchbhdh_{c}\geq h_{b}\geq h_{d}.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • ΔΦ12\Delta\Phi_{1}\leq 2.

        • ΔΦ20\Delta\Phi_{2}\leq 0, since φaA0\varphi^{A}_{a}\geq 0 and φbB=0\varphi^{B}_{b}=0.

    2. (b)

      The previous request aAta\in A_{t} evicted by 𝒜\mathcal{A} is matched as (a,d)(a,d) and the page request bBtb\in B_{t} evicted by \mathcal{B} is unmatched.

      • Unmatch (a,d)(a,d).

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=1\Delta\Phi_{0}=1.

        • If a=da=d, then ΔΦ1=1\Delta\Phi_{1}=1 and φaA+φdB=0\varphi^{A}_{a}+\varphi^{B}_{d}=0; otherwise, ada\neq d, in which case ΔΦ1=0\Delta\Phi_{1}=0 and φaA+φdB(k1)\varphi^{A}_{a}+\varphi^{B}_{d}\geq-(k-1).

    3. (c)

      The previous request aAta\in A_{t} evicted by 𝒜\mathcal{A} is unmatched and the page request bBtb\in B_{t} evicted by \mathcal{B} is matched as (c,b)(c,b).

      • Unmatch (c,b)(c,b) and match (c,d)(c,d).

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

        • ΔΦ0=0\Delta\Phi_{0}=0.

        • ΔΦ11\Delta\Phi_{1}\leq 1.

        • ΔΦ20\Delta\Phi_{2}\leq 0, since φbB=0\varphi^{B}_{b}=0 and φdB=(k1)zd0-\varphi^{B}_{d}=(k-1)-z_{d}\geq 0.

    4. (d)

      The previous request aAta\in A_{t} evicted by 𝒜\mathcal{A} is unmatched and the page request bBtb\in B_{t} evicted by \mathcal{B} is unmatched.

      • Do nothing.

      • As a result:

        • Δ𝖠𝖫𝖦=1\Delta\mathsf{ALG}_{\mathcal{B}}=1.

        • Δ𝖮𝖯𝖳=1\Delta\mathsf{OPT}=1.

Since Φ1\Phi_{1} and Φ2\Phi_{2} each decrease by 11 in the updating phase, we have 2(k1)2(k-1) in extra potential that we can use to pay for costs in the matching phase. Indeed, one can verify that this is sufficient for all of the cases described above—the tight cases are 2(a), 2(b), 2(c), 3(a), and 4(a). Thus, the proposition follows. ∎

Proposition 4.2.

The competitive ratio of algorithm \mathcal{B} is at most 2+4ε/(k1)2+4\varepsilon/(k-1).

Proof.

Compose Proposition 4.1 with Lemma 2.3. ∎

Remark.

This analysis of BlindOracle is tight in the constant term—we can make ε/(k1)\varepsilon/(k-1) arbitrarily small while having a competitive ratio of 22. (However, for very small ε\varepsilon, the bound of the previous section is better—in particular, if ε<12+1k3\varepsilon<\frac{1}{2}+\frac{1}{k-3}.)

5. Proofs of Upper Bounds

We are now ready to prove the results stated in Section 1: \maintheorem*

Proof.

From the analysis of the previous two sections, the desired bound immediately follows from taking the minimum of the bounds in Propositions 3.2, LABEL: and 4.2. ∎

\firstcorollary

*

Proof.

Combine BlindOracle with LRU using the “combiner” from Theorem 2.1, with the performance of BlindOracle being bounded by LABEL:theorem:main. ∎

\secondcorollary

*

Proof.

Like in the proof above, combine BlindOracle with algorithm Equitable of [ACN00]666We use Equitable because it achieves the optimal worst-case competitive ratio of HkH_{k} for online caching; Marker has a competitive ratio of 2Hk12H_{k}-1 [ACN00]., this time using the “combiner” from Theorem 2.2. ∎

6. Deterministic Lower Bound

We now show that combining BlindOracle with LRU gets an optimal competitive ratio bound (in terms of η\eta, 𝖮𝖯𝖳\mathsf{OPT}, and kk) among all deterministic algorithms for learning-augmented online caching by proving LABEL:theorem:lower:

\lowerboundtheorem

*

Proof.

Let 𝒜\mathcal{A} be any deterministic algorithm for learning-augmented online caching.

We show there exists a family of inputs (σ,h)(\sigma,h) with ε/k\varepsilon/k ranging from 0 to kk and 𝖮𝖯𝖳\mathsf{OPT} arbitrarily large such 𝖠𝖫𝖦𝒜𝖮𝖯𝖳+Cη/k\mathsf{ALG}_{\mathcal{A}}\geq\mathsf{OPT}+C\eta/k, for some constant C>0C>0. That is, for ε/k\varepsilon/k ranging from 0 to kk, we will show that we can make this inequality hold as 𝖮𝖯𝖳\mathsf{OPT}\to\infty with ε/k\varepsilon/k fixed. Dividing through by 𝖮𝖯𝖳\mathsf{OPT} then implies the theorem.

We now construct such inputs (σ,h)(\sigma,h). First, fix j<kj<k. Let P1,,Pk,Q0P_{1},\ldots,P_{k},Q_{0} be k+1k+1 distinct pages. We make the following sequence of requests, which we call a phase:

  1. (1)

    Repeat kk times the following:

    1. (a)

      Make requests to P1,,PkP_{1},\ldots,P_{k} in order, predicting each page to next appear kk requests from now except during the last iteration, where we predict each page to next appear k+j+1k+j+1 requests from now.

  2. (2)

    Make a request to Q0Q_{0} and predict that it will next appear k2+j+1k^{2}+j+1 pages from now.

  3. (3)

    For i=1,,ji=1,\ldots,j:

    1. (a)

      Request the page evicted by in 𝒜\mathcal{A} during the previous request, if it exists. Otherwise, request an arbitrary page. For each page, provide the same prediction as the last time this page was requested.

We repeat the above as many times as needed.

In a single phase, observe that 𝖮𝖯𝖳\mathsf{OPT} makes at most two evictions—once to evict Q0Q_{0} and once upon the arrival of Q0Q_{0}. On the other hand, I claim 𝒜\mathcal{A} makes at least j+1j+1 evictions. First, if the cache of 𝒜\mathcal{A} after (1) does not consist of P1,,PkP_{1},\ldots,P_{k}, then 𝒜\mathcal{A} must have incurred cost at least kj+1k\geq j+1 during (1). Thus, we may assume that 𝒜\mathcal{A}’s cache consists of P1,,PkP_{1},\ldots,P_{k} after (1). If so, 𝒜\mathcal{A} has to evict a page for each of the remaining j+1j+1 requests in the phase, as the arrival of Q0Q_{0} forces an eviction and by induction, each arrival of (3) forces an eviction. Finally, observe that all the predictions are accurate except those for pages arriving in (3), in which case they are off by at most k+j+12kk+j+1\leq 2k. Thus, over a single phase, η2jk\eta\leq 2jk. Putting all of these observations together, we get 𝖠𝖫𝖦𝒜j+1𝖮𝖯𝖳+j1\mathsf{ALG}_{\mathcal{A}}\geq j+1\geq\mathsf{OPT}+j-1, with j1=Ω(η/k)j-1=\Omega(\eta/k).

To make 𝖮𝖯𝖳\mathsf{OPT} arbitrarily large, note that we can simply repeat the above phase multiple times in sequence; the same analysis holds, with all the values scaling linearly. Hence we have 𝖠𝖫𝖦𝒜𝖮𝖯𝖳+Ω(η/k)\mathsf{ALG}_{\mathcal{A}}\geq\mathsf{OPT}+\Omega(\eta/k) for arbitrarily large 𝖮𝖯𝖳\mathsf{OPT} over the desired range of ε/k\varepsilon/k, so the theorem follows. ∎

Acknowledgments

I would like to thank Jelani Nelson for advising this project and Bailey Flanigan for providing many helpful references.

References

  • [ACE+20] Antonios Antoniadis et al. “Online metric algorithms with untrusted predictions” In CoRR abs/2003.02144, 2020
  • [ACN00] Dimitris Achlioptas, Marek Chrobak and John Noga “Competitive analysis of randomized paging algorithms” In Theor. Comput. Sci. 234.1-2, 2000, pp. 203–218
  • [BB00] Avrim Blum and Carl Burch “On-line Learning and the Metrical Task System Problem” In Mach. Learn. 39.1, 2000, pp. 35–58
  • [BBN12] Nikhil Bansal, Niv Buchbinder and Joseph Naor “A Primal-Dual Randomized Algorithm for Weighted Paging” In J. ACM 59.4, 2012, pp. 19:1–19:24
  • [BBN12a] Nikhil Bansal, Niv Buchbinder and Joseph Naor “Randomized Competitive Algorithms for Generalized Caching” In SIAM J. Comput. 41.2, 2012, pp. 391–414
  • [BE98] Allan Borodin and Ran El-Yaniv “Online computation and competitive analysis” Cambridge University Press, 1998
  • [BFK+17] Joan Boyar et al. “Online Algorithms with Advice: A Survey” In ACM Comput. Surv. 50.2, 2017, pp. 19:1–19:34
  • [BS12] Sébastien Bubeck and Aleksandrs Slivkins “The Best of Both Worlds: Stochastic and Adversarial Bandits” In COLT 2012 - The 25th Annual Conference on Learning Theory, June 25-27, 2012, Edinburgh, Scotland, 2012, pp. 42.1–42.23
  • [DIR+19] Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn and Tal Wagner “Learning Sublinear-Time Indexing for Nearest Neighbor Search” In CoRR abs/1901.08544, 2019
  • [FKL+91] Amos Fiat et al. “Competitive Paging Algorithms” In J. Algorithms 12.4, 1991, pp. 685–699
  • [GP19] Sreenivas Gollapudi and Debmalya Panigrahi “Online Algorithms for Rent-Or-Buy with Expert Advice” In Proceedings of the 36th International Conference on Machine Learning, ICML 2019, 9-15 June 2019, Long Beach, California, USA, 2019, pp. 2319–2327
  • [HIK+19] Chen-Yu Hsu, Piotr Indyk, Dina Katabi and Ali Vakilian “Learning-Based Frequency Estimation Algorithms” In 7th International Conference on Learning Representations, ICLR 2019, New Orleans, LA, USA, May 6-9, 2019, 2019
  • [KBC+18] Tim Kraska et al. “The Case for Learned Index Structures” In Proceedings of the 2018 International Conference on Management of Data, SIGMOD Conference 2018, Houston, TX, USA, June 10-15, 2018, 2018, pp. 489–504
  • [KP00] Elias Koutsoupias and Christos H. Papadimitriou “Beyond Competitive Analysis” In SIAM J. Comput. 30.1, 2000, pp. 300–317
  • [KPS+19] Ravi Kumar et al. “Semi-Online Bipartite Matching” In 10th Innovations in Theoretical Computer Science Conference, ITCS 2019, January 10-12, 2019, San Diego, California, USA, 2019, pp. 50:1–50:20
  • [KPS+20] Ravi Kumar, Manish Purohit, Zoya Svitkina and Erik Vee “Interleaved Caching with Access Graphs” In Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020, 2020, pp. 1846–1858
  • [LLM+20] Silvio Lattanzi, Thomas Lavastida, Benjamin Moseley and Sergei Vassilvitskii “Online Scheduling via Learned Weights” In Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020, 2020, pp. 1859–1877
  • [LV18] Thodoris Lykouris and Sergei Vassilvitskii “Competitive Caching with Machine Learned Advice” In Proceedings of the 35th International Conference on Machine Learning, ICML 2018, Stockholmsmässan, Stockholm, Sweden, July 10-15, 2018, 2018, pp. 3302–3311
  • [MGZ12] Vahab S. Mirrokni, Shayan Oveis Gharan and Morteza Zadimoghaddam “Simultaneous approximations for adversarial and stochastic online budgeted allocation” In Proceedings of the Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2012, Kyoto, Japan, January 17-19, 2012, 2012, pp. 1690–1701
  • [Mit18] Michael Mitzenmacher “A Model for Learned Bloom Filters and Optimizing by Sandwiching” In Advances in Neural Information Processing Systems 31: Annual Conference on Neural Information Processing Systems 2018, NeurIPS 2018, 3-8 December 2018, Montréal, Canada, 2018, pp. 462–471
  • [Mit20] Michael Mitzenmacher “Scheduling with Predictions and the Price of Misprediction” In 11th Innovations in Theoretical Computer Science Conference, ITCS 2020, January 12-14, 2020, Seattle, Washington, USA, 2020, pp. 14:1–14:18
  • [MNS12] Mohammad Mahdian, Hamid Nazerzadeh and Amin Saberi “Online Optimization with Uncertain Information” In ACM Trans. Algorithms 8.1, 2012, pp. 2:1–2:29
  • [MV17] Andres Muñoz Medina and Sergei Vassilvitskii “Revenue Optimization with Approximate Bid Predictions” In Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems 2017, 4-9 December 2017, Long Beach, CA, USA, 2017, pp. 1858–1866
  • [PSK18] Manish Purohit, Zoya Svitkina and Ravi Kumar “Improving Online Algorithms via ML Predictions” In Advances in Neural Information Processing Systems 31: Annual Conference on Neural Information Processing Systems 2018, NeurIPS 2018, 3-8 December 2018, Montréal, Canada, 2018, pp. 9684–9693
  • [Roh20] Dhruv Rohatgi “Near-Optimal Bounds for Online Caching with Machine Learned Advice” In Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020, 2020, pp. 1834–1845
  • [Rou19] Tim Roughgarden “Beyond worst-case analysis” In Commun. ACM 62.3, 2019, pp. 88–96
  • [ST85] Daniel Dominic Sleator and Robert Endre Tarjan “Amortized Efficiency of List Update and Paging Rules” In Commun. ACM 28.2, 1985, pp. 202–208