Weather Routing
Weather Routing is a numerical procedure
to minimize the time necessary to sail a given leg. It
combines weather forecasts (winds) with boatspeed/windspeed
data (polar charts). It is a "brute force" calculation:
to find the best possible solution, times for millions
of tracks are calculated and compared.
Tracks in a tree
A track can be represented by a collection
of course setting actions C1, C2 ,...Ci,
taken at times T1,T2, ...Ti. The set of
all possible tracks can be described in software by a
tree structure.
track tree (3 branches)
|
tree representing some
of the possible routes
|
The root node is the starting point (T0).
From the start, a number of branches (or track segments)
are added to the tree, pointing to different directions.
At T1 new branches are added to end of each
of the previous branches. Branching is done towards the
destination and branching cycles are repeated until the
destination is reached.
Explaining "towards the destination":
Sailing points are taken from the vertices of the
polar chart (rotated by wind direction). Wind angles below
30 are excluded. The angle closest to the direction of
the destination is used first. Them angles are added to
either side alternated. For example, using a eleven branch
tree, you get the main course, plus 5 courses in each
side (some 25 deg).
Testing only the vertices of polar
charts does not guarantee an optimal solution (but is
close). Neither do other simplifications to reduce the
count of possible tracks. So understanding the routing
process is important to validate results and choose at
least a good track.
Using a tree structure and recursive branching,
calculation can be done incrementally, building on previous
results without much redundancy.
Pruning the tree
It's easy to see that all this branching
can quickly produce a large tree, difficult to work with.
The number of branches grows exponentially. If you add
5 courses at each node, the tree will have 5 branches
at first, 25 in the 2nd segment, 125 in the 3rd and so
on. At the end of 10 segments we will have nearly 10 million
tracks, too many even for a modern computer.
|
Fortunately there are ways to tame tree growing
and avoid losing control. This is done by pruning
the slow tracks, keeping the ones that are real
candidates for best track.
Tracks that are in the wake of other
tracks are considered slow and pruned. In the figure
to the right, the green
boat is leading. The blue
boat is close behind, but not in the wake of the
green boat, so it is maintained. The red
boat, on the other hand, is in the wake of the green
boat and can pruned (i.e. removed).
|
 |
unpruned tree
|

pruned
|
Isochrones
The set of points that can be reached
at a certain time is called "isochrone".
Plotting isochrones in the chart is a great way to figure
the best strategy. Isochrone points are also a good opportunity
to analyze results and clear slow tracks. The vrtool weather
routing calculation looks like this:
- Add new branches to the tree until next isochrone
is reached
- Sort tracks using distance to destination as key.
This produces de list of best tracks up to the moment
(best on top).
- Prune slow tracks.
- Repeat steps 1,2,3 until destination is reached
(or until the final isochrone is reached)
Action points
Action points are points where we have to
adjust the boat course. Of course this can be done at
any time, but the route optimizer uses the following points:
|

|
1- Points
where the course crosses the wind grid. This is
the nearest point of either the vertical longitude
line or horizontal latitude line ( like point 1
in the figure to the left). |

|
2- Points
that are on the next isochrone (point 3 in the figure
to the left). Wind change points are action points
too, but they are already included in the isochrones.
|
Using vrtool weather routing module
|
To open the weather routing module, use menu option
>Tracks>Weather routing (or type Ctrl-W)
1. Set start and destination
positions (either by typing lat/lon or pointing
in the chart)
2. Check [x]Auto prune checkbox.
This must stay checked to automatically remove
slow tracks on each round (uncheck only for localized
experiments).
3. set # of tree branches:
10 or 12 will work for most cases. If this number
is too small, you may not get the optimal solution
because optimal wind angles may be not used. If
the number is too large, the tree will grow too
fast and blow out of control (default=10).
There is a 2 million points maximum
limit for the tree. If this number is reached,
calculation is interrupted.
4. max angle to destination
is the maximum acceptable angle between the track
segment and the destination direction. If the segment
points away from the destination more than the specified
angle, then the segment is discarded. (default=60
deg)
|

|
5. set "up to isochrone"
: Use this if you want to limit the number of calculated
isochrones.
Use 0 to calculate the whole leg. Or 12
to calculate only the present winds.
6. set "isochrone interval":
use 1 or 3 h (default=3)
7. Wake angle - Used for pruning
(default = 45 degrees)
8. Click [Build track tree] - This
will start the calculation of the tree. This may take
a long time, particularly if config parameters are set
too aggressively. So take care when messing with config.
Results- The results can be added
to current vrtool desktop. Use the buttons:
[Add best track] - This will add
the best track to vrtool desktop, named "WR_best".
The best track is:
-
if a final isochrone was especified
and destination was not reached, the best track is
the closest to destination (great circle distance).
-
if destination was reached, the best
leg is the one with smallest tracktime.
[Add isochrones] - this will add
the isochrones to vrtool desktop. The isochrone is a collection
of points, not a line. The point closest to the destination
in each isochrone is marked with the isochrone time (6h,
12h etc in small font). Note that the best track for one
isochrone is probably not the same in the next isochrone,
so don't try to connect the points..
[Add "some" tracks] - This
will add a number of tracks to the desktop. This may be
a large number of tracks. The top ten tracks are
always added. If there are too many, a maximum of 400
tracks are added (selected in a random fashion).
There is a button to [Clear WR tracks],
which will delete all tracks starting with 'WR'
in the desktop (i.e. weather routing generated tracks).
If you want to keep the best track, rename it before using
this button.
nov09:om: released
©Copr 2008-09 Omar
F. Reis