Remix.run Logo
gwt4life 5 hours ago

Explain to me like im 5.

FabHK 2 hours ago | parent | next [-]

I didn't understand it either, but now given the sibling posts I'll give it another shot:

Assume you have a number of hot dog vendors in a stadium, and over time randomly people get hungry and want a hot dog. One of the hot dog vendors needs to come to them, covering a certain distance, and "serve" them their hotdog. (After that, the vendor will idle around there.)

Assume there is a central controller with a radio that oversees the whole thing, noticing requests, then picks a hot dog vendor when a request comes in and sends them on the way. After the game, all the hot dog vendors together walked a certain distance: that's the cost (which of course you'd like to minimise).

Crucial question now is which hot dog vendor to pick for each request, and there are many algorithms (you could always pick the closest one, for example).

However, now comes the trick: Suppose the controller knows in advance all the requests - who will want to have a hotdog when and where. He still, anytime a request comes in, needs to pick a vendor to send them to the request. But now, knowing the entire future, the controller can make better choices, leading to a smaller total cost. (That's the offline version; getting to know the requests only "as they come in" is the online version.)

The question now is: Compare the actual cost an "online" algorithm incurs with the "super optimal" that would have been feasible with full foresight ("offline"). It was proven that, for k hotdog vendors, it is at least k times higher (that's the "competitive ratio") worst case (plus a constant). On average, the online algo can do much better, but worst case it would be at least k times worse.

Here, the authors of the paper prove the conjecture, namely that it is also at most k times higher. (So, even if an evil genius plans the sequence of requests against this algo, it can't make it more than k times worse.)

zygentoma 5 hours ago | parent | prev | next [-]

It's not really like you're 5, but the third sentence of the introduction makes it really understandable:

> The problem’s definition is simple: There are k servers located at points of a metric space. At each time step, a request arrives at a point of the metric space. An online algorithm must serve the request immediately by moving a server to the requested location, without knowledge of future requests. The goal is to minimize the total distance traveled by servers.

So metric space is anything where you can measure a distance, so you know the distances between all servers and the distance from the request to all servers. Could be direct distance, could be travel time …

Easiest to just imagine just some (eg. n=5) servers on a plane. A request pops up somewhere on the plane. Which server do you move there, such that the total distance moved by servers is as low as possible in the end after a sequence of requests.

abecedarius an hour ago | parent [-]

Fair enough, but the abstract really is too opaque imo.

> The k-server conjecture states that a deterministic online algorithm can achieve competitive ratio k on every metric space.

I was like "algorithm for what?" when I knew what every one of those terms meant. Lots of things use k servers. Lots of problems involve metric spaces.

fxwin 5 hours ago | parent | prev [-]

I feel like the paper itself does a fairly good job:

> The [k-server] problem’s definition is simple: There are k servers located at points of a metric space. At each time step, a request arrives at a point of the metric space. An online algorithm must serve the request immediately by moving a server to the requested location, without knowledge of future requests. The goal is to minimize the total distance traveled by servers.

> The k-server conjecture states that a deterministic online algorithm can achieve competitive ratio k on every metric space.

I only had to look up what "competitive" means in this context, and wikipedia [0] had this to say about it:

> An algorithm is competitive if its competitive ratio—the ratio between its performance and the offline algorithm's performance—is bounded.

The ratio by which this performance is bounded for a k-competitive algorithm is k (plus some constant) [1]. We can consider the analogy of k support technicians ("servers) located in different (physical) locations ("in metric space"): The conjecture/theorem states that in any metric space (Not necessarily two- or three-dimensional), there exists an online algorithm that results in travelled distances of no more than roughly k times that of the optimal distance if all requests were known in advance.

[0] https://en.wikipedia.org/wiki/Competitive_analysis_(online_a...

[1] https://www14.in.tum.de/personen/albers/papers/brics.pdf Section 1.1

fn-mote 3 hours ago | parent | next [-]

There’s a difference between “pretty good” and understandable.

The phrase “metric space” (more or less) disqualifies anyone without an undergraduate degree in mathematics.

Fortunately a sibling to the parent explains that.

adw an hour ago | parent | next [-]

I’d be shocked if anyone with any kind of post-secondary education in any numerate discipline couldn’t give you at least an informal definition of a metric space. Certainly all the physicists, all the geneticists, all the ML people.

fxwin 3 hours ago | parent | prev [-]

I should have added "for a technical paper". They are generally not written for five year olds, and "metric space" is a term I've seen introduced anywhere between semesters 1 and 3 in most technical Bachelor's degrees.

saghm 2 hours ago | parent | prev [-]

I want to meet the 5 year olds who you think will easily understand all of that

fxwin 2 hours ago | parent [-]

I take ELI5 in hackernews comments to mean: "Explain like i'm someone with a vaguely technical background but no knowledge in this particular field", not "I'm a literal five year old". I think it's probably close to impossible to explain this adequately to an actual five year old while staying true to the essence of the paper.

saghm an hour ago | parent [-]

I would expect someone commenting ELI5 on Hacker News to mean that they didn't understand the article directly, so pasting several paragraphs verbatim is not particularly helpful to them. If you think that the article is clear, and they're still asking for clarification, it's a sign that you've probably overestimated the clarity to someone with less experience in the subject (as always, relevant xkcd for this: https://xkcd.com/2501/)

fxwin an hour ago | parent [-]

That's fair, I had assumed they hadn't read the article at all ;) If they have, it would have been nice to know which parts of the problem definition the paper describes as "simple" they struggled with, otherwise I default to "I haven't read the article and would like a summary for a technically inclined layman"

saghm an hour ago | parent [-]

I would expect someone who says ELI5 to have found pretty much all of it hard to understand. The paper calling something "simple" is either them talking to other experts or an instance of the same phenomenon I called out where experts vastly underestimate how approachable things are to non-expert. At least personally, I had never heard the term "metric space" before. I assumed it didn't mean "three dimensional space measured in units that are an exponent of meters", but I didn't know how to tell the difference between whether it was a specific nuanced mathematical concept or if it just meant "space that can be measured". I could google it, but when I have to do that before I've gotten through the first sentence that the paper describes as "simple", it does not give me any confidence that the paper is written with an audience like me in mind.