Best map editing practice
Like Waze, this page is a community effort and a work in progress. Many helpful pages already exist on the responsibilities of an Area Manager, how to use Cartouche, identify and solve map problems, set standards for labeling roads, and a general FAQ. The purpose of this page is to help Area Managers & others design maps that work best for the end-user--the driving public--while minimizing the amount of (re)work you have to do because of common mistakes or subtle limitations of the tools.
At the moment, I am taking suggestions via PM for content for this page: topic suggestions are good, but links to insightful forum conversations, or even links to other Wiki pages, would be better. I won't be able to incorporate every suggestion, but I will appreciate all of them.
- 1 Overall Goals
- 2 In Practice
- 3 Cartouche Caveats
- 4 New Roads
When it comes to the map, the first & foremost goal of editing is to provide the driver with a map that is easy to follow on a small display, and to produce sensible verbal instructions when (and only when) they are needed.
It is not a goal to model the physical roadway lane-by-lane. Doing so often leads to unnecessary complexity--which means a cluttered map, confusing verbal directions, and lots and lots (and lots!) of extra map maintenance.
As a result of people driving over them, road segments retain certain information (e.g., average speed) that is used in route optimization. When a segment is deleted, that information is discarded. Given a choice between deleting a tangle of segments and creating new ones in their place, vs. untangling them and reusing them, it is often better to "recycle".
When (Not) to Split a Two-Way Road
It is rarely a good idea to split anything short of a freeway or major highway--which use nothing but ramps to enter/exit--into two one-way roads. If two roads cross at an intersection, don't even think about splitting either of them into two one-way roads. Intersections become needlessly complicated--which means the client display gets cluttered, and the verbal prompts become confusing and nonsensical.
When you have a surface road--even a multi-lane surface road with a curb or a divider in the middle--turn on the "Separating line" checkbox, and use connectivity to prevent Waze from trying to send people on left turns across the center divider.
Some more formal guidelines - A road should be split if:
- There is at least 5 meters of non-drivable surface between directions of travel. (This means a median of some type like cement, planter boxes, trees, or just grass.
- GPS tracks show a clearly definable gap/blank area between the color-by-azimuth arrows at the 100m zoom level.
A road should not be split because:
- There is a curb or non-drivable media less than 5m wide between lanes of travel. This means a turn lane, even a wide one, between directions of travel, does not count because it is drivable.
- There are a lot of roads intersecting which can only turn onto the nearest direction of travel.
- Google Maps or other mapping source show it as a split road
(I strongly believe that, for every mile of road that an AM wants to split into one-way roads, he should first merge a mile of split roads back into a two-way road. Check out what's involved. It builds character.)
How to "Un-Split" two One-Way Roads
Sorry to say it, but there is no easy way to merge two one-way roads back into a two-way road--which is why you should always give a lot of thought before splitting a road in the first place. And then think some more.
When you come across a road in your area that has been split but shouldn't have been--just look for the highest concentration of problem reports, and you'll find them!--you have some major map surgery ahead of you. Basically, for the length of the road, you're going to:
- delete road segments on one side or the other*, including segments that connect the two sides;
- remove all "orphaned" junctions;
- change the direction of the preserved segments to two-way, and check the "Separating line" box;
- check/fix the connectivity of all the roads already connect to the side you kept;
- connect (and set connectivity) of all the roads that used to be connected to the other side;
- make sure all the new two-way segments are connected; and
- adjust the geometry to move the two-way road segments to the middle of the road.
'*' It usually saves time to preserve whichever side is already connected to more roads, so you may want to delete one side in some places, and the other side in other places. Just remember to re-connect them later.
It isn't difficult once you have gone through the process a couple times.
Caveat: if you decide to be clever and edit the road properties of multiple segments at a time, familiarize yourself with the known problems with mass-editing first. It can be done--but if you're not careful, you'll find that all the road segments have reverted to Streets...in Alabama...and any alternate road names will be lost. I wish I were kidding.
Highways and Ramps
Useful long-range navigation is impossible with Waze if the highways are broken. Since limited-access roads--typically Freeways & Major Highways--offer more to think about (and more opportunities to mess them up) than typical surface-road work, this section is very important.
The term "limited-access road" here refers to a road that is multi-laned in each direction, with a physical barrier between directions, and which can be entered & exited solely by ramps. Such roads almost always should be mapped as separate one-way segments--and other roads almost never should be.
As stated elsewhere, off-ramps should be named according to their exit number if they have one, as well as whatever is on the actual exit sign; e.g., "Exit 7 - Rte 3 S / Braintree / Cape Cod". On-ramps should be named "to" whatever they lead to; e.g., "to I-93 S / Quincy / Providence RI". Ramps should always be locked to preserve directionality, since they often run especially close to other ramps that flow in the opposite direction. (Not locking ramps means you will end up coming back later to fix a ramp that has become two-way--and has started directing traffic accordingly.) Remember to check connectivity and turn restrictions while you're there.
Overpasses & Underpasses
Recent experience has changed my thinking regarding road levels. Given the current editor limitations, I have found that it is more important to know that road level is an issue for a particular segment (e.g., a mile-long stretch of highway that extends well beyond the screen boundaries), than what its actual value is, or of maintaining a consistent level across multiple segments of the same road.
I use level 0 as a "sentinel value" that signifies that a segment has no overpasses or underpasses. When editing an over/underpass, if either segment is at level 0, set it to a non-zero value that reflects its relative level. If both levels are already non-zero, either they are already correct--in which case no further action is required--or they are incorrect, in which case the area needs to be studied carefully, so as not to "break" other intersections that have already been evaluated and assigned.
In many cases, the conflict can be resolved simply by adjusting one segment's level, or perhaps several segments will need to be adjusted. Proceed with caution. In really complicated situations, it might help to draw a picture, or to start by looking for the top-most or bottom-most segment. Or perhaps take a course in Topology at your local community college.
Occasionally you will run into a situation in which no set of values will work. For example, three segments named A, B and C: A crosses over B, B crosses over C, and C crosses over A. So A > B > C > A... now what? Either pretend that one of the segments crosses over both of the others, or add a junction to one of the segments so that it can have two different levels as needed--and hope nobody deletes that "unnecessary" junction without investigating why it might be there. (In this example it might even make sense to add junctions to all three segments, just to make it clearer to the next AM what you're trying to accomplish.)
Caveat re. Levels
No matter what levels road segments are assigned, if you pin a junction through them, they now form a navigable intersection, and Waze will instruct people to turn off of bridges and onto the cross-streets below. If you are looking at an over/underpass, and there is a junction where the roads cross, get rid of it. First, make sure the levels of the road segments are correct, and that all the other info. of each pair of road segments match. At that point, deleting the junction will most likely work. If not (perhaps because a ramp or another road segment prevents you from deleting it), you can try:
Select the two segments that cross over/under the intersection, then click on the "Bridge" link. If all goes well, the selected segments will be separated from the underlying junction, consolidated into a single segment, and their level increased by 1. Failing that, you may have to disconnect both sides of the over/underpassing road from the junction, make sure their levels are correct, and then re-connect them.
When to Use Ramps in an Intersection
As the driver approaches an intersection, Waze has usually given at least one warning that a turn is imminent, and we can assume that the driver is already looking for turn lanes. For most intersections, that is enough to guide the driver into the proper lane and to turn at the proper time; in other words, it is enough that the two roads intersect without separate turning ramps.
There are only a few situations in which ramps are called for in an intersection:
- when the turn lane physically separates from the main road well in advance of the intersection;
- when the ramp is far enough from the point of intersection on the map (due to the size of the intersection or the angle at which the roads meet) that the driver might overshoot while waiting for a delayed "turn" audible, or that the Waze client might become confused and disrupt navigation
- when the area is "busy" enough that the driver may not get any advance warning that a turn is coming up--in which case a ramp lets you notify the driver a little earlier
When in doubt, leave it out. Each ramp complicates the map and adds to your workload when the time comes to check connectivity, direction, name, etc.. As an AM, if you get a user complaint that the audible was too late, or that the map should have shown a ramp, that's your cue to put one in.
When to Create a Roundabout
In the author's editing and driving experience, once you learn how to create a roundabout in Cartouche, it is always the right time to replace an ad hoc traffic circle (built from regular road segments) with a proper roundabout. The voice cues produced by an ad-hoc circle can be terribly misleading, and the client display almost always looks unprofessionally sloppy. Replacing this with a roundabout is an instant, orders-of-magnitude improvement on both counts.
Every tool, however good, has its limitations, and Cartouche is no exception. For general editing, what you see is usually what you get, and if you read the copious online documentation in advance, you will be able to make sense of (and extricate yourself from) most situations that you run into when editing the map. But there are a few things to watch out for, that can result in a lot of extra work for you if you miss them.
Road Geometry and Alternate Names
Simply put: when you edit the geometry of a road, any Alternate names assigned to it are gone. It makes no sense, people have been aware of this for ages and it has not been fixed. Perhaps it will be addressed in the next incarnation of Cartouche. Until then: Nothing to see here, move along. (Just remember to go back and restore the Alt names after the geometry is set. Copy & paste are your friends...)
Note that this only affects the segment whose geometry is actually being modified, and not any roads that might be connected to it via junctions. So if you have a road with an Alt name (e.g., a minor highway), you may be able to adjust its geometry without disturbing its Alt name assignment by editing the geometry of adjoining roads instead.
Editing Multiple Segments
Directionality & Locking
If Waze sees enough people driving along a road in a certain direction, it will conclude that travel in that direction is allowed, and update the map accordingly. The problem is, client GPS signals can be inaccurate, and Waze can mistakenly think that you are on one road when you are really on another. When this happens, one-way roads suddenly become two-way. When this happens on a highway or one of its ramps, it can have far-reaching effects on navigation.
According to the FAQ, locking a road segment has three effects, one of which is to lock directionality. Whenever you work on a major highway, make sure that each of your carefully-placed and connected road/ramp sections are locked, so that you don't have to come back later and fix what a few messy GPS tracks broke.
UPDATE: Waze has changed its heuristics to make it more difficult for road directionality to change as described above, once it has been set via the editor. Therefore, in order to allow automatic geometry adjustments, it is now better to leave roads unlocked after assigned them to be one-way.
The Turn Restrictions Layer is Broken
Until they fix it, just leave this layer off and use the Highlight Connectivity feature instead.
Just because two roads are touching where there is a junction, don't assume they are connected. Because you have "Highlight Connectivity" turned on (see above), you should notice pretty quickly that a segment is not connected. To fix, either:
- Highlight the disconnected segment and the one to which it needs to connect, in from-to order where one-way roads are involved, and use "Connect roads in order of selection" (or the 'c' keyboard shortcut)
- add a junction on top of the existing junction. The new one will replace the old one. Most of the time you will want the "Allow all turns" mode on, but sometimes when working with one-way roads it is easier to turn that option off and enable turns individually.
Reducing Junctions / Consolidating Segments
You will often see junctions in the middle of roads, where there is no intersection. These "extra" junctions are often the result of editing attempts gone awry, and seem to be a magnet for ill-connected and incorrectly-named roads. They multiply the number of segments that you need to maintain, and I'm sure they're not helpful to the routing servers. In short, unnecessary junctions indicate problems, and should almost always be eliminated. (The only exceptions are when they mark a change of city, or when you know that you will be connecting a road there very soon.)
When deleting a junction, remember that the segments on either side of the junction have to match road type, name, city, state, and have compatible directions. If both segments are two-way, or one-way in the same directions, it will work. If they are both "no entrance", it will fail. IMO this is a bug; just remember to change them to two-way beforehand, and then change the consolidated segment back to "no entrance" afterward.
After the junctions are removed, you may need to adjust the consolidated segment's geometry to account for the missing junctions.
Please note that there are currently bugs can occur when deleting junctions.
How to Remove Multiple Junctions
During the interval after pressing the 'y' key (to confirm removing a junction) and before Cartouche returns control to the Edit Panel, it is possible to click on additional junctions and use the 'y' key to delete them as well. This often results in faster deletions because Cartouche is effectively deleting them in parallel; However, there is one known bug and one suspected bug associated with this practice, so its use is highly discouraged:
- Deleting adjacent junctions in this manner often causes nearby road segments to vanish, and need to be re-created. I suspect this is due to a race condition. Deleting adjacent junctions means you are deleting the junctions at both ends of a segment. If the first junction is deleted, and then before the segment can be merged with its neighbor, the second junction is deleted, the road segment between them ends up being deleted.
- The workaround for this bug is to make sure you never multi-delete adjacent junctions. However, I have started to suspect another bug that has sworn me off of multi-deleting junctions at all, adjacent or not:
- Also probably due to a race condition, I believe that using this technique may corrupt the segment IDs of the road segments involved, causing route highlighting problems when using the Waze client to navigate.
Recorded via Client
Once you start editing a road, it changes from red (a new road) to the colour of a road type (by default a white street) and will then appear on the next update of the Live Map which will go out to all Waze users.
So it is less than helpful if you do an incomplete job. At least if the road is red, then someone else knows that it needs work. If it is white, perhaps even with a street name, then it may look correct. But Waze may not realise it is driveable.
Follow these simple steps, as best you can, and get it right the first time. Map Editing explains how to carry out these steps.
- Align the geometry of the road to the aerial image unless that is not appropriate in your area
- Enter the correct name and road type for your road, following the standards for your country
- Make sure the road has the correct directionality. Most roads should be Two Way.
- Add junctions where the road intersects with other roads. By default tick "Enable all turns". Restrict any turns that are not allowed. If a junction appears, just add a junction over the top. Chances are it does not have all turns enabled. Waze automatically handles turn restrictions for one way roads.
Even though a proper roundabout (i.e., produces "at the roundabout..." verbal cues) can only be created in Cartouche, when it is first created, the segments are configured as new roads. They will need to be edited as above before they will become part of the live map.