The count asks and the price answers
A landmark search on a maze of 2,500 weighted cells needs landmarks, cells whose distances to every other cell are stored so the search can bound how far it still has to go. Starting from the corners found that a refitting placement does best to begin at the four corners, which cost nothing to keep, rather than from a full selection. A watch can do better while the traffic’s destination stays put: the candidates near where the queries end refitted one landmark near the destinations recent queries reached, and the refit pays when the destination stays long enough to use it. When the destination jumps every thousand queries, it never does, and the watch’s looking is wasted.
So the watch needs a switch. A switch that counts the jumps read the traffic’s pace as the mean spacing of the last few stretch ends — moments when the destination moved more than ten cells from where its stretch began — and kept the corners while the pace read fast. A silence that overrules the count let a long open spacing overrule a stale reading. A gap between off and on gave switching off a lower threshold than switching on. A margin the count sets itself made that gap the count’s own uncertainty, switching off only when the reading plus some multiple of its standard error was under 1,600, and found that every rule of this kind traded one pace against another: the margin at half a standard error on three stretch ends cost 117.8 cells a query at one jump in 2,500, where the watch alone cost 116.4, but at one jump in a thousand it cost more than the plain override’s 142.6.
Its closing section noticed what all these switches had in common. They read the traffic, and none read the money. The count is free because it reads the destinations of queries already served; but the watch, at every look, also prices placements on a sample of those queries, and a watch that switches itself off had once used that price directly — return to the corners when they would have been cheaper on the last few looks — and abandoned it because one look’s price was too noisy. The proposal joined the two. Let the count, with its margin of half a standard error, propose switching off, and require the watch’s last look to have priced the corners within a few cells a query of its own placement before accepting. The count would decide when to ask, the price would decide the answer. The prediction was that at a tolerance of about three cells the switch would keep the moderate pace’s 117.8 and recover the fast pace’s 142.6; the named risk was the price’s own noise.
The switch, as built
At every window of a thousand queries the watch looks, as before: it prices its placement and four candidates on the last sample of queries served, and refits if the best candidate’s saving over the window passes the price of a refit. The confirmed switch adds one more priced search at every look, the corners on the same sample — free when the corners are the placement — and remembers the difference, corners less placement, in cells a query. When the margin rule proposes returning to the corners, the switch accepts if that difference is at most the tolerance, and otherwise keeps watching. Keeping the corners, it stays there until the silence or the count says the traffic has slowed, as the margin rule does.
Everything else is the earlier essays’: four mazes, 30,000 queries a stream at one jump of the destination in 1,000, 2,500, 5,000 and 10,000 queries, and two streams that change pace halfway; every switch charged at the better of two watch windows, and every cell the watch searches charged to the stream.
Every stream, a cell dearer
Confirmed by the price at a tolerance of three cells, the switch costs 118.8 cells a query at one jump in 2,500 and 145.1 at one in 1,000 — not the predicted 117.8 and 142.6: on every stream it costs 0.8 to 2.1 cells more than the margin rule it confirms. Both halves of the prediction fail, and in the same direction. The switch does not recover the override’s fast-pace figure; it moves a further cell away from it. And it does not keep the margin rule’s moderate-pace figure; it loses a cell there too. The plate is as uniform as a result can be: on six streams, a cell or two dearer, with no stream where the confirmation helps.
That uniformity is the first clue. A confirmation that sometimes refused good proposals and sometimes refused bad ones would help on some streams and hurt on others. One that costs the same everywhere is paying a fixed price for something that is not changing what it decides.
A tolerance that does nothing
The tolerance does nothing: from nought to thirty cells a query the confirmed switch’s cost moves by at most half a cell on either pace and either count, and every setting sits above the margin rule alone by about a cell. The proposal expected a dial: too small a tolerance and the price would refuse the count’s correct proposals at the fast pace, too large and it would let through the misreadings at the moderate pace, and somewhere about three cells it would do both jobs. The dial is not connected. At a tolerance of nought the switch costs 145.2 at the fast pace; at thirty, 145.1.
A flat line can mean two things. Either the price at the moment of a proposal is almost always far from any tolerance — very negative or very positive — so that no setting between nought and thirty changes which proposals pass; or proposals are so rare that whatever passes hardly matters. The next two plates show it is both.
What the price said
When the count proposed, the last look had priced the corners at most three cells a query dearer than the placement 26 times in 34 — nine of them because the watch was still on the corners and the price was nought — so the confirmation agrees with the count three times in four, and the eight prices it refuses run from 3.5 to 64.5 cells dearer. The price is not noisy in the way the proposal feared. At most proposals it agrees with the count, and often emphatically: prices of −44, −46, −51 and −81 cells a query say the watch’s placement was far worse than the corners on its own last sample, which is what a placement fitted to a destination that has just jumped looks like. When the count says the traffic is fast, the money usually says so too.
A quarter of the agreements are not evidence of anything. When the watch has only just come back on after a spell at the corners, it has not yet refitted, its placement is the corners, and the price of returning to them is nought. The count often proposes switching off again within a window or two of the watch coming on — at the fast pace a silence is rarely long — and the confirmation then confirms a placement against itself.
The refusals are where the proposal’s idea would have to earn its keep, and there are eight of them over four maps and four streams. Five are at prices of twenty to sixty-five cells a query, which no tolerance between nought and thirty would have passed or refused differently; three are between three and twelve, near enough the tolerance to depend on it, and they are the half cell the flat lines move.
What the price costs
The confirmation’s price is the price itself: pricing the corners at every look adds about a cell a query of searching on every stream, including one jump in 10,000, where the count never proposes and the confirmed switch costs a cell more for nothing. This is the cell in the first plate. A look already searches the sample four times, once for each candidate — the placement’s own cost on the sample is read from the queries it served, for nothing — and pricing the corners is a fifth search of the same sample, charged like the others, and at a window of a thousand queries and a sample of several hundred it comes to a cell or two a query. The watch pays it at every look on every stream, whether or not the count ever asks.
On the slow streams that is the whole of the confirmation’s effect: it buys a price nobody uses. On the fast streams the price is used and mostly agrees, so it buys almost nothing there either. A watch that switches itself off paid the same search and found it too noisy to act on alone; here it is acted on only when the count asks, and turns out to be informative and redundant at once.
How often anyone asks
The count asks rarely and the price almost never refuses: over the six streams and two counts the margin rule proposed about twelve returns to the corners a stream in all and the price refused about two of them. The rarity changes how the whole design should be read. A switch that is consulted two or three times in a stream of 30,000 queries is not a rule that runs continuously, and a confirmation step attached to it should cost something only when it is consulted. This one costs at every look, a thousand queries apart, to be ready for the two or three moments that matter.
The fix that suggests itself is the obvious one, and it is the subject of the closing section: price the corners only when the count proposes, not at every look. That removes the fixed cell. Whether it then recovers anything depends on whether the refusals were right, which the plates do not decide, since eight refusals over four maps is too few to price.
A confirmation can only say no
The fast-pace half of the prediction could not have held, whatever the price had said, and the reason is in the structure of the rule rather than in its noise. At one jump in a thousand the override on three stretch ends costs 142.6 cells a query and the margin rule 144.1; the override is cheaper because it switches off sooner, with no margin, and keeps the corners 47% of the stream where the margin rule keeps them 43%. The cell and a half the margin rule loses there is lost to lateness: it waits for its reading to clear the threshold by half a standard error, and while it waits the watch keeps looking and refitting on traffic that has already moved.
A confirmation attached to the margin rule can do one thing to that: refuse. It cannot make the switch fire earlier than the margin rule proposes, because it is only consulted when a proposal arrives. So at the fast pace, where the margin rule’s fault is being late, the confirmation can only make it later or leave it as it was. The proposal’s hope that the price would “recover” the override’s figure needed the price to act before the count did, and the design gave it no way to.
At the moderate pace the margin rule’s job is the opposite: to refuse the count’s misreadings, the switch-offs that three stretch ends propose on traffic that is not actually fast. A confirmation there could help, by refusing what the margin let through. It refused half a proposal a stream, and the moderate pace’s cost rose by a cell, all of it the pricing. Whatever those refusals saved was smaller than a cell — too small, over four maps, to see.
Two readings of one choice
The proposal’s question was whether two noisy readings of the same choice, one of the traffic and one of its cost, together know what neither knows alone. On these streams they do not, because they are not independent. When the destination jumps, the traffic’s stretch ends cluster and the count reads fast; the watch’s placement, fitted to the old destination, prices badly against the corners on a sample that now includes the new one. Both readings respond to the same event. The count is cheaper and slightly earlier, and the price, a window later, mostly repeats it.
A refit priced before it is made is where the watch’s price came from, and it came from the opposite case. A counter that waited for recent queries to get dearer never fired on drifting traffic, because from the corners concentrated traffic raises no cost; only a price of what a refit would save could see the chance. There the price saw what a reading of the traffic’s cost could not. Here, on streams whose destination jumps, the count and the price see the same event, and the price sees it a window later.
A horizon the stream can supply is the reminder that all of these rules live on one family of streams: destinations that jump at random times. On a stream where the destination drifted, the count — which reads stretch ends — and the price — which reads the sample — would respond at different moments, and the two readings could disagree usefully.
What the streams do not settle
Four maps. Every figure is a mean over four mazes. Differences of half a cell are inside the map-to-map variation the earlier essays measured, which is why the tolerance plate is read as flat rather than as having a best setting.
One sample. The price uses the watch’s sample of recent queries, a few hundred. A larger sample would make the price less noisy and more expensive at every look; a smaller one the reverse.
Few refusals. Eight refusals over four maps is enough to say they are rare and not enough to say whether they were right.
Still open: a price paid only when asked
The confirmation costs a cell a query because it prices the corners at every look, and it is consulted two or three times a stream. A switch could price only when the count proposes. At the moment of a proposal the watch’s sample is in hand, and one extra search of it settles whether the corners would be dearer; at every other look the switch does exactly what the margin rule does. The cost of the confirmation then falls from a search every thousand queries to a search every ten thousand or so, and the remaining question is the one the plates left open — whether its refusals are worth anything.
The measurement that follows runs that lazy confirmation at tolerances from nought to thirty on every stream, and adds a stream on which the destination drifts a step at a time between jumps, so that the count and the price can respond at different moments. The prediction is that on the six jump streams it costs within a fifth of a cell of the margin rule, so that the confirmation is at last free, and that on the drifting stream it beats the margin rule by more than a cell, because there the price refuses proposals the count makes on drift alone. It could fail on the price’s timing: priced at the moment of the proposal, the sample may hold too few queries to the new destination to show the corners as cheaper, and the price would then refuse the count’s correct proposals. The question is whether a second reading pays only where it can disagree with the first, and whether a stream exists on which it does.
Named alongside this one
Essays reaching for the same objects. Nobody chose these; they are what the concept index makes visible.
- A switch that hears the traffic stop landmark · measured count · query distribution · regime · shortest path · stopping rule
- A placement after the traffic moved landmark · query distribution · regime · shortest path
- A refit that changes one landmark landmark · query distribution · regime · shortest path
- A watch that looks less landmark · query distribution · shortest path
- What the queries know that the map does not landmark · query distribution · shortest path
- Where the landmarks stand landmark · regime · shortest path
The objects this essay names
Each one links to every other essay that touches it.
LandmarkMeasured countQuery distributionRegimeShortest pathStopping rule