In short. We compared our weather routing with the software used by sailors and their routers. The method is the same, isochrones, but three flaws set us apart. The way the computation sorted its points lost precision as it moved away from the start, to the point that some boats no longer reached the finish within the forecast. The polar ignored wind strength. And the route changed tack too often. All three are fixed together. Replayed over five days of racing, the new version brings the computed route closer to the boats' real positions: the median gap drops from 89 to 83 miles at 24 hours, and from 55 to 49 miles at 12 hours. The gain is real but modest, and the routed arrival time barely changes. Here is what changed, what we measured, and what we set aside.

Our routing next to the professionals'

Recognised routing software, qtVlm, Expedition, Adrena or OpenCPN's routing plugin, all rely on the isochrone method, like ours. They differ not in the algorithm but in everything around it: how fine the computation is, real polars, the cost of manoeuvres, several wind models, currents.

On one point we were already ahead: none of these programs displays a measure of its own accuracy. The sailor has to judge. Ours keeps every route it computes and compares it, hour after hour, with the boat's real position. That measurement showed us where to look. The wind had little to do with it: with the wind actually measured on site, the gap did not shrink. Two thirds of it came from the speed attributed to the boats, the last third from the skippers' routing choices.

1. Sectors of constant width in miles

An isochrone router tries headings from every point reached, then keeps only the best points for the next step. Without this sorting, their number would explode. Ours split the horizon, seen from the starting point, into 1° sectors, and kept in each only the point farthest from the start.

The flaw is geometric. One degree seen from the start is 9 miles wide at 500 miles, but 35 miles wide at 2,000 miles. Far from the start, a single point therefore survives across a 35-mile band. When the route curves, for instance to skirt the Azores high, the point farthest from the start is not necessarily the best placed for what follows. The sorting threw away promising points.

The old router's 1° sectors, drawn from Saint-Malo towards Guadeloupe (one line per degree, one sector in colour). Seen from the start, they widen with distance: 9 miles wide at 500 miles, 35 miles at 2,000 miles. Since the router keeps only one point per sector, its sorting becomes coarse in mid-Atlantic. The new version uses sectors 10 miles wide, whatever the distance.

The fix is the one used by professional software: sectors of a constant 10-mile width along the frontier, whatever the distance from the start. The sectors therefore get finer as the boat moves away.

The effect shows mostly on long routes. On the morning of 6 November, with the old sectors, 5 Ocean Fifty boats out of 8 did not reach the finish within the five-day forecast. The end of their route was then extrapolated, and badly: Basile Bourgnon was routed 160 hours from the finish, when his recent speed gave about 69. With 10-mile sectors, all eight boats arrive, between 84 and 114 hours. On a synthetic wind that reproduces a moving high, the Ultim's route also gains 7.6% on the old one.

This setting does not make the computation perfect. With a 30-minute step instead of one hour, the router still finds slightly slower routes, whereas a finer computation should do at least as well. The cause is the sorting rule itself: keeping the point farthest from the start discards better-placed points when the route curves, and the more steps there are, the more these sortings add up. The site computes with a one-hour step, the one at which the setting was measured, but this limit remains to be lifted.

2. A polar that depends on wind strength

The polar gives a boat's speed according to the wind. Ours came down to two figures per class and one shape shared by each hull family, then a single factor calibrated it on the speed of the leading boats. That single factor could not fix everything. On a beam reach, between 60 and 90° to the wind, the polar was 10 to 25% too fast. In light air, under 10 knots, it was 30 to 70% too slow. One coefficient cannot correct two errors in opposite directions.

The shape of the polar is now learned during the race, cell by cell. For each class, we split wind strength into six bands (boundaries at 8, 12, 16, 20 and 25 knots) and the wind angle into seven, then, in each cell, compare the boats' real speed with what the original polar gave. Recent measurements count more: a three-day-old measurement weighs half as much as a fresh one.

Two safeguards keep it from chasing noise. A cell that has seen fewer than 12 measurements stays pulled towards the original polar: without data, nothing is corrected. And no correction goes beyond 40% either way. The overall level is still calibrated at each run on the speed of the leading boats of the class.

3. A tack or a gybe costs time

Without a penalty, the suggested route changed tack as soon as a heading gained a few tenths of a knot. On our synthetic wind, an IMOCA's route could tack or gybe 25 times during the crossing. No solo skipper sails like that: on a boat 12 to 32 metres long, a gybe takes time and strength, and costs speed.

The router now counts 15 minutes lost at each change of tack, for every class. Changing tack is only worth it when the gain justifies it. On the replayed race routes, the median number of tack changes over 80 hours falls from 3 to 2, and from 6 to 4 for the Ultims. The arrival time barely moves: it is mostly the line drawn on the map that becomes credible.

We also narrowed the fan of headings tried, from 110° to 90° either side of the direction of the goal. The wider headings were almost never used. Despite finer sectors, each route now needs about 35% less computation.

What we measured

The test bench replays the site's real code from real race positions, with the GFS run the site had at that moment, retrieved from NOAA's public archives. It covers the top 5 boats of the 6 classes, starting from 17 moments spread from 2 to 6 November, and follows each route for 80 hours. It compares the routed position with the boat's real position, and the routed arrival with the time actually taken.

This bench is broader than our first test, which only covered the top three of each class on 5 November alone and gave 20, 40 and 67 miles. Its gaps are larger, because neither the boats nor the days are the same. What counts is the comparison between the two versions, from the same starting points.

Median position gap Old version New version
at 6 h 31 miles 28 miles
at 12 h 55 miles 49 miles
at 24 h 89 miles 83 miles

The gap falls by 7 to 11% depending on the horizon. The learned polar does most of the work over these 80 hours: sectors in miles change almost nothing at such short range, and their effect shows on complete routes, like the Ocean Fifty ones.

The routed arrival time, however, barely changes. The router remains somewhat optimistic: in median, boats take 6% longer than forecast at 24 hours, and 11 to 13% longer at 48 hours. Our estimated finish times rule, which keeps the later of the recent-speed estimate and the routed arrival, does not move either: a 14% gap at 24 hours and 10% at 48 hours, before and after.

These figures have their limits. The five replayed days saw a single weather pattern, and boats in the same class faced the same wind: the comparisons are not independent. Polar cells that have seen few measurements, such as strong wind upwind, stay close to the original polar.

What we tried, then set aside

  • Calibrating speed on the progress of the last 24 hours, rather than on the instantaneous speed of the leaders. The idea was to account for a solo sailor's rest and manoeuvres. A pace recomputed continuously for each class does worse.
  • A fixed coefficient, around 0.9, on speed. It almost removes the router's optimism, and brings the position 1 mile closer at 24 hours. But it degrades our estimated finish times at 48 hours, from a 10.4 to an 11.5% gap. We left it aside.
  • Sectors in miles alone, without the learned polar, change nothing over 80 hours. The two go together.

What changes on the map

The way routing is displayed does not change. The Routing button on the live map still shows the dashed route, its daily markers, its corridor and the routed arrival. But the route more often reaches the finish, zigzags less, and relies on a speed learned from the race.

The corridor and the legend's Measured accuracy block are computed from the gaps measured during the race. So as not to mix the two versions of the router, these measurements start again from zero with the new version. Until there are enough of them, the legend shows the test bench figures.

What remains to be done

Other leads exist that we have not started yet. The race's exclusion zones are not taken into account yet. Beyond five days, the route is extrapolated instead of following the GFS model's longer forecast. Ensemble forecasts, some twenty variants of the same model, would show the real strategic options, such as the choice between passing north or south of the high. Currents and sea state would matter a little for the slowest boats.

Others have been ruled out. Switching wind models would bring little, since the wind does not explain our gaps. A polar specific to each boat was tried twice and always does worse: a few hours of measurements say little about a boat.

The routing remains indicative. Skippers have their real polars, other wind models and what they see on the water. But it is now closer to what professional software does, and we keep publishing its accuracy, good or not.

Frequently asked questions

What changed in Offshore Races' weather routing?

Three things, released together. The computation sorts its points in sectors 10 miles wide, instead of 1° seen from the start. The shape of the polar is learned during the race, according to wind strength and angle. And each tack or gybe costs 15 minutes, which limits zigzags.

Why are 1° sectors a problem?

To limit computation, an isochrone router keeps only one point per sector at each step. If sectors are angles seen from the start, they widen with distance: at 2,000 miles, a 1° sector is 35 miles wide. The sorting then throws away well-placed points, and the route found is slower than it should be.

What is a tacking penalty?

It is the time a router counts as lost at each change of tack, whether a tack or a gybe. Without it, the computation changes tack whenever that gains a little speed, which no skipper does. Professional routing software expresses it in minutes per manoeuvre; we count 15 minutes.

Is the routing more accurate now?

A little. Over five replayed days of racing, the median gap between the computed route and the real position falls from 89 to 83 miles at 24 hours, and from 31 to 28 miles at 6 hours. The routed arrival time is no more accurate than before.

Does the routing show the route the skipper will follow?

No. Our route is the one a router would find with approximate polars and the GFS model's wind. The corridor shows the observed gap: the boat stays in it three times out of four.