Traffic data: Difference between revisions Discussion View history

 
(87 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{ForumLink|Traffic Data|119004}}
Along with every routable segment, Waze stores separate data about how long it takes to cross that segment in both directions and transition (straight, right, left, exit, keep) to every other segment that is junctioned to it. It stores similar information related to the entry and exit segments to [[junction box]]es and the junction box that connects them. This information is used by the [[Routing server|routing servers]] to figure out the fastest way to get to a destination. If a segment is deleted, then the information about the time it takes to cross it or enter it from another segment is also deleted. Some types of changes at nodes can also cause loss of information about the transition from one segment to another through this node.
This is all very unformed, and I have probably got most of it wrong, or out of context.


Do not use the information found here to make any decisions about Waze editing.
This article explains what traffic data is stored and what happens to it when the map is changed.
==Summary: How to preserve traffic data while editing==
*Avoid creating [[Segment_length#Too_short|too-short]] segments (less than {{:Segment length/Minimum}})
*Avoid deleting segments. If you delete a segment, Waze loses all traffic data for that segment.
*Avoid disconnecting segments. If you disconnect a segment from the junction node where it joins another segment, and reconnect it in a different place, then Waze loses all traffic information about crossing to / turning onto the next segment.
*Follow established procedures for creating a divided roadway in place of a 2-way street. Use pieces of the 2-way segment to create both new parallel one-way segments to preserve the speed data in both directions and to preserve the "most important" turn wait times.
*Follow appropriate procedure for "undividing" a roadway. Use both one-way segments to create a single new 2-way segment so it can carry the speeds from both one-way segments.  Preserve the "most important" turn wait times.
*To preserve junction box data when it is necessary to delete and recreate a junction box, preserve as many of the segment IDs as possible by minimizing cutting or merging of segments.


Over time, I will refine this information by asking questions of those who know more than I do. When the information is closer to correct, I will change the disclaimer at the top.
==Why Waze stores traffic data==
Waze uses a [http://en.wikipedia.org/wiki/Pathfinding routing algorithm] to search for the quickest route from the start point ot the end point. These types of algorithms all construct a route from [[Glossary#endnote_Node-Junction node|node]] to node on the map, using traffic data along the way to figure out the quickest node-to-node travel times that will get you to your destination. The [[Routing_server|Waze routing server]] uses uses Waze's proprietary algorithms and the traffic data you transmit every time you use the waze app to figure out the fastest route on the waze map.


This article is about how editing roads affects the stored traffic data and Waze routing. For information on what Waze does with your personal information and how that can affect you, please read [http://www.waze.com/legal/privacy the Waze privacy policy] and [[Privacy_issues|a community-created discussion of how this can affect you]] for more information on your privacy while using waze.
If a portion of the route goes from node 1 to node 2 to node 3, using segments 100 and 200 along the way, Waze uses its stored traffic data to figure out how long it takes to travel the length of segment 100, through node 2 to segment 200, and then the entire length of segment 200 all the way to node 3. If the route begins or ends somewhere in the middle of a segment, Waze uses the traffic data to estimate just the portion of total travel time for that segment you will use along the part of the segment you will travel.


=What Waze Map Editors Need to know about how traffic data is stored=
For drives in the US and Canada, the Waze routing server always uses default data for travel on [[Road_types#Parking_Lot_Road|parking lot segments]]. This means there is no accounting for different wait times for outbound turns in different directions, or at different intersections. Traffic data from actual wazers is used in routing over all other segment types.
The Waze map editor's motto is "usability, simplicity, retention". What we want to retain is the traffic data the Waze servers use for determining the best routes.  In order to develop useful guidelines and best practices, we must understand what information is stored and what happens to it when we junction,disconnect, cut, merge, shrink, stretch, add or remove geometry nodes, change the direction (unknown, one way, reverse direction, two-way). Of course, Waze chooses to keep some details about its routing algorithms (and the data those algorithms use) secret, so you won't find those details here.
==Glossary==
;Segment cross speed
:The average speed at which wazers traverse the segment from A to B or from B to A during each time slice (fraction of day / day of week), not counting the additional time it takes to transition from one segment to the next.
;Segment cross time
:The average time it takes for a wazer to traverse the segment from A to B or from B to A during each time slice (fraction of day / day of week). Calculated from segment cross speed and segment length.
;Transition time
:The average additional time it takes to transition from one segment to another, in addition to the segment cross time.  If the average segment cross for segment 1 time is 30s and the transition time from segment 1 to segment 2 is 30s, then the average total time it takes to enter segment 1 until entering segment 2 is 60s (during that time slice).


==What information is stored==
[[File:Segment cross times.png|thumbnail|right|Traffic data is stored for every way out of each segment.]]
* For each segment, an average speed to traverse the segment in each direction (A to B and B to A) is stored, for many different times of day and each day of the week (time slices). In the past, Waze has referred to these as Forward Cross Speed and Backwards Cross Speed. Scripts like route speeds can get the speed for every half hour for every day of the week. From livemap, we can get routes for any half-hour time period during the day. WME Scripts like route speeds can obtain these cross speeds.
* In addition, we have been told that "transition time" is stored. This is the additional time it takes to go from the segment to any one of the other segments the current segment is connected to at a specific junction node. We do not know of any way access to these transition times via scripts like route speeds.
* Time to traverse a segment can be calculated from speed times length. The total time to cross segment 1 in the A-B direction and get to segment 2 is the segment 1 Forward Cross Speed + transition time to segment 2.
* We do not now how these numbers are calculated, what happens when wazers leave a segment before they get to the end, turn off their phone, or lose cell service.  We don't know whether waze stores a lot of historical speeds and times or just keeps a running average, and whether it keeps data for more times of day then the 48 half-hour periods it shares with us.


==What happens to traffic data when you make changes to the roads==
==What traffic data is stored==
* When you delete a segment (let's call it segment 100)
*As you drive, the Waze app (client) on your mobile device collects data about your GPS location and when you were there.  It sends that data to the Waze server.
**its cross times and transition times to other segments is deleted.
*The Waze server uses this data to figure out which nodes you travelled through, which segments you used to travel between them, your average speed, and how long it took you to make it through the segment.
**all transition times from other segments to that segment are lost; waze does not remember "turning left from segment 101 is a long wait" it remembers "the transition time from segment 101 to segment 100 is 3 minutes at 5:30 PM". If you delete segment 100, it can no longer use that information.
* This data is collected even on drivable segment types for which the Waze routing server does not use that data.
** When you delete and replace a segment, waze has to start from scratch collecting data on segment cross time and also time to make turns from other segments onto that segment.
* Traffic data collected on [[Segment_length#Too_short|short segments]] (less than {{:Segment length/Minimum}}) is less accurate.
* When you shift the position of a junction without disconnecting anything, changing the lengths of several segments
*Waze averages together everyone's information during the same time slice from the last several months so it can figure out how long it took to get from one node to another, through it, and onto a new segment
** The cross speeds are not changed.
* It keeps track of this information in the forward (A to B) and reverse (B to A) direction, and for every possible exit from the segment at the node it is joined to. So if segment 100 is junctioned to segments 201, 202, and 203 at its B junction node, It can figure 3 different cross times in the A->B direction - for 100->201, 100->202, and 100->203.
** Cross times calculations will change because the lengths of the segments has changed
*If the segment has a [[Carpool,_HOV,_Transit_lanes#Enter.2Fexit_anywhere_HOT.2FExpress_lanes|restricted lane]] (Bus, Express, HOV, etc) , the same type of information is stored for one "extra" lane. So if segment 100 also has a left HOV lane, then Waze will be able to figure out 3 more cross times in the same direction - for 100HOV -> 201, 100HOV->202, 100HOV->203.
** Transition times are not affected.
*Nodes are the primary way Waze routing server looks at routes. All data about transition between two segments is stored with the ID of the node involved, as well as the two segments connected to it.


==When is traffic data lost?==
[[File:Junction Box 5.png|right]]
* When you delete a segment, all traffic data involving that segment is lost
* When you disconnect a segment at a junction, all transition (turn wait time) data into and out of that end of the segment is lost.


==Questions; what happens when==
==Junction boxes and traffic data==
* Change the segment's length without moving the ends,  as by stretching out a geometry node. 
{{Further|Junction Box}}
** Same cross speed is used, so the calculated cross time will change (?)
When a junction box is created, Waze begins to calculate and store junction box traffic data in addition to the data associated with the segments and nodes. In this example, for traffic entering the junction box on segment F, Waze will begin keeping track of traffic data for traffic exiting at B (left turn), A (straight) and E (right turn).  This allows Waze to keep better track of the difference in speeds for traffic backed up past node D to turn left versus traffic moving quickly through to go straight. Junction boxes function something like a node. Where they are present, Waze routing servers use the junction box traffic data instead of the underlying segment and node traffic data, though it continues to collect both sets of data.
** transition times are unaffected.
* Turn a turn green arrow red -- does anything happen to the already-stored transition time or cross speed?  Does anything change about how data related to that segment is collected and stored when that red arrow transition is traversed?
* Turn a red arrow green.  See above.
* Change a 2-way  segment to 1 way.
* After a period of time (minute, day, month, year,) reverse  the direction of the 1-way segment
* Cut a segment into 2 shorter segments without changing either of the 2 original junctions
* 2 segments junction; no other segments connected to that junction -- delete the junction -- what happens to cross speed.  What happens to the "lost" transition times? What happens to the transition times that are not lost?
* disconnect a segment from a junction
** and reconnect it before saving.
** and save it disconnected, but reconnect it and save again before the next tile update
** and save it disconnected through the next tile update, then reconnect directly after tile update.
** for a few days, weeks, or months -- as a way to close a road during construction.
*** and then reconnect it to the same junction (nothing else having changed at that junction in the meantime)
* Connect a segment to a junction
** a former "dead-end" node of an existing segment
* Snap two junctions together, creating one junction where there were formerly 2 junctions, without disconnecting any of the segments from either of the junctions.
* convert a bow tie junction to a "H" junction by the following method
*# disconnect segment 1 from the bow tie junction
*# connect segment 1 to the cross segment to create a new junction
*# disconnect segment 2 from the bow tie junction
*# connect segment 2 to the new junction.
* convert a bow tie junction to a "H" junction by the following method
*# bridge segment 1 to segment 2
*# move the joined segment to the new junction location on the cross segment  
*# reduce the elevation to ground and use the "junction" icon to create the new junction.


==Things I've heard about traffic data==
If a junction box is deleted and then recreated using the same segments before too much time passes, the Waze routing servers can use the previously stored junction box data for any segment IDs that have not been deleted.


A segment stores average traverse speed to each of the connected segments, for each available time slot. When <s>split</s> cut , that speed is <s>split</s> cut by ??? percentage wise and applied to both new segments, same when stretched, the speed is kept proportionated to the original.
==Where does this information come from==
* When a new segment is created, initial traffic data are created based on a default average speed for the road type and a transition time to each segment it is junctioned to. These values will be updated as soon as waze records traffic using the segment and the junction nodes.
* Waze frequently updates traffic data by analyzing the traffic that has travelled on each segment at each time slice of the week. Those real-life traffic data are averaged to come up with the stored values. There are a lot of details we do not know about how traffic data is analyzed, and how the traffic calculations take into account loss of cell service, wazers stopping on the side of the road or entering or leaving a segment in the middle, etc. LiveMap shows us 48 time slices per day (every hour and half hour), and we don't know whether that has anything to do with the number of time slices Waze uses in its calculations.


??? Kept proportional to original, or speed is copied to the newly -created segments?
==Glossary==
;segment :One piece of road. Every segment has a unique segment ID, an A and B end, and might have some geometry points between.  Every segment is connected to a node at both ends, and has a forward (A to B) and reverse (B to A) direction of travel.
;node :Nodes are found at both ends of every segment. The Waze routing engine uses the information associated with the segments and nodes to determine how long it takes to travel between two nodes. If two segments are joined to the same node, the node is often referred to as a junction node.  If only one segment is attached to the node, the node is often referred to as an end node. An end node may become a junction node if another segment is joined to it, and a junction node may become an end node if all but one attached segments are removed from it.
;Time slice :A specific day of week and portion of a day.  A time slice might cover an hour or half hour of the day, or it might cover a different length of time.
;Segment cross time :The time it takes a wazer to enter the the segment, cross it, and exit the segment in one of the possible exit directions. This cross time includes the average time spent "waiting for the light to change", "waiting to make a turn", or "waiting at the 4-way stop". For a 2-way segment connected to a 4-way intersection at each end, there are 4 segment cross times in the A->B direction (straight, left, right, and u-turn) and 4 more in the B->A direction. For segments marked as having an additional reserved lane (HOV, Express, motorcycle, etc) in the right/middle/left lane, there is one more additional set(s) of cross times associated with the restriction (for more on this, please see [[Carpool,_HOV,_Transit_lanes|Carpool, HOV, Transit lanes]].


[[File:DividingRoad.jpg|thumbnail]]
;Segment cross speed :segment cross time divided by length.
;Traversal Time :A "base" time to cross a segment in the A->B or B->A direction, not including transition times to cross from one segment to one of the other segments it is junctioned to. Might be used to calculate new segment cross times when an existing segment is cut into two new segments.
;Transition Time :A calculated "wait" time to transition from one segment to another, not counting the Traversal time. Might be used to calculate new segment cross times when an existing segment is cut into two new segments.


==What information we can see==
Scripts like route speeds can retrieve segment cross times for an hour or half hour, any day of the week, along any of the routes the routing server gave it. These scripts can calculate speeds based on these cross times.


If [I] understand things correctly, the speed data for a segment is not exactly portable. It's very junction dependent. In other words, it's not just the time lapse of traversing the segment in a particular direction, but what happens as a particular segment transitions to another particular segment. Once you detach and connect to another junction, Waze no longer knows comparative times to turn left, right, or continue. For this reason, there can be strategic decisions in terms of which ends of segments to leave connected and which to move around.
==When is traffic data lost?==
* When a segment is deleted, all traffic data involving that segment is lost.
* When a node is deleted, then all the data about transitions between segments connected to that node is lost.
* If a segment is disconnected from a node and saved, then data about transitions between that segment and the remaining segments still connected to that node will eventually be lost.
* If a junction box is deleted and recreated, but the entry and exit segments to the junction box are different, then some traffic data will be lost.
* If no traffic is assigned to a segment or a direction on a segment then the old traffic data for that direction will be retained for a week or two. After that, it will be lost.


 
==What happens to traffic data when you make changes to the roads==
Q: [Are you going to ]lose turn data by disconnecting and reconnecting to the same junction?<br/>
* When you delete a segment (let's call it segment 100)
A: by disconnecting and reconnecting to the same junction? I doubt that very much
**All traffic data for that segment is deleted
or at least sorta much
**All traffic data for other segments coming INBOUND to that segment is lost
 
**All traffic data OUTBOUND to other segments is lost.
 
**If you delete a segment and replace it with a newly-drawn segment, waze has to start from scratch with default values for segment speeds and turns and collect new traffic data.
portability of speed data, ... [has Waze said?] in so many words that it is not, and that that is why it is VERY much discouraged for us to disconnect things if we ever plan to reconnect them.
* When you shift the position of a junction without disconnecting anything, changing the lengths of several segments
 
** The speed on the segments can be used - cross times will change to account for the fact that the junction has moved.
thats different ... disconnecting through hte course of tile builds
** Over time, the stored traffic data will change to bring segment cross times back into line with reality.
 
* When you cut a segment (let's call it segment 100) into 2 shorter segments without changing anything else at the 2 original junctions (Examples, connecting a PLR to segment 100 or having a change in speed limit along segment 100.)
if you are <s>splitting</s> dividing a road properly, you will not save with anything disconnected, let alone allow it through a tile build ... suppose it's more important for transition speeds
** Two new segments are created with brand-new segment IDs (let's call them 201 and 202)
 
** The segment and the segment ID (100) from the segment you cut is deleted.
There are methods of closing roads that don't require any data loss.
** A junction node is created where the two new segments are joined.
** The segment cross times of the original segment are used to calculate new cross times for the new segments, including cross times connecting the two new segments.
** Over time, the stored traffic data will change to adjust the new transition times in line with reality.
* When you merge two segments (let's call them segments 201 and 202) into one longer segment by deleting the junction node connecting them (node 999)
** A new segment is created with a brand-new segment ID (let's call it segment 300)
** The segment cross times of segments 201 and 202 through node 999 are used to calculate new cross times for segment 300
** Node 999 is deleted.
** Segments 201 and 202 are deleted.
* If you move one end of a segment (connected to node 999) and connect it to another node, the node that was not moved will be used for the new junction.
** If node 999 was connected to an additional segment, it will remain in place.
** If node 999 was only connected to the segment end you moved, it will be deleted.
* When you disconnect a single segment from a junction:
** the node remains connected to the unmoved segment and
** a new node is created on the moved end of the moved segment.
** Therefore, If you move a segment end away from a junction node and then move that same segment end back to the same junction node, you will preserve the original node ID and all associated traffic data
** But if you move a segment end away from a junction node, and then move the other segment(s) away from the old junction to join the new node ID, you will lose the original node ID and all associated traffic data.
* When you move segments from one junction node to another junction node
** All traffic data which passed through the first junction node are lost, because they were associated with the two connected segment IDs and the node connecting them.
** Traffic speed on the segment is still usable.
** New traffic data connecting the same segments through the new junction node are created using default values because traffic data connecting two segments depends on the two segment IDs and the junction node ID.
** If you begin with two segments, 101 and 102, disconnect them, save, reconnect them through a new junction node, and save again, the original transition times between 101 and 102 will be lost. They will be replaced by new default values.
** Over time, transition times between the two segments will be adjusted to reflect the new traffic data.
* Traffic data corresponding to a restricted (red) transition arrow between segment 200 and 201 will still be collected as long as traffic can be assigned to a route from segment 200 to 201 (see below)
* Improperly divided roads
** Traffic data corresponding to the "wrong direction" on a one-way segment will not be collected if the traffic data is assigned to other nearby segments. If no traffic is assigned to a segment direction, the old traffic data will be retained for a week or two.
** If a 2-way segment is improperly divided by drawing a new one-way segment parallel to the old segment, and the old segment is made one-way, then the stored "wrong way" traffic data on the old segment will be retained for a period of a week or two. New traffic data in that direction will be collected on the new one-way segment.
** If you find an improperly divided road w/in a few days (red road(s) for the new section(s)/not connected segments/improper turn restrictions) then turn the original sections back to two way and properly divide the road. This will retain the older data vice having to restart the data collection from scratch.
** This is why it is best to use pieces of the existing 2-way road for constructing both new one-way roads when it is necessary to divide a roadway (create a dual carriageway)

Latest revision as of 15:03, 30 January 2020

Along with every routable segment, Waze stores separate data about how long it takes to cross that segment in both directions and transition (straight, right, left, exit, keep) to every other segment that is junctioned to it. It stores similar information related to the entry and exit segments to junction boxes and the junction box that connects them. This information is used by the routing servers to figure out the fastest way to get to a destination. If a segment is deleted, then the information about the time it takes to cross it or enter it from another segment is also deleted. Some types of changes at nodes can also cause loss of information about the transition from one segment to another through this node.

This article explains what traffic data is stored and what happens to it when the map is changed.

Summary: How to preserve traffic data while editing

  • Avoid creating too-short segments (less than 19.69 ft (6 m))
  • Avoid deleting segments. If you delete a segment, Waze loses all traffic data for that segment.
  • Avoid disconnecting segments. If you disconnect a segment from the junction node where it joins another segment, and reconnect it in a different place, then Waze loses all traffic information about crossing to / turning onto the next segment.
  • Follow established procedures for creating a divided roadway in place of a 2-way street. Use pieces of the 2-way segment to create both new parallel one-way segments to preserve the speed data in both directions and to preserve the "most important" turn wait times.
  • Follow appropriate procedure for "undividing" a roadway. Use both one-way segments to create a single new 2-way segment so it can carry the speeds from both one-way segments. Preserve the "most important" turn wait times.
  • To preserve junction box data when it is necessary to delete and recreate a junction box, preserve as many of the segment IDs as possible by minimizing cutting or merging of segments.

Why Waze stores traffic data

Waze uses a routing algorithm to search for the quickest route from the start point ot the end point. These types of algorithms all construct a route from node to node on the map, using traffic data along the way to figure out the quickest node-to-node travel times that will get you to your destination. The Waze routing server uses uses Waze's proprietary algorithms and the traffic data you transmit every time you use the waze app to figure out the fastest route on the waze map.

If a portion of the route goes from node 1 to node 2 to node 3, using segments 100 and 200 along the way, Waze uses its stored traffic data to figure out how long it takes to travel the length of segment 100, through node 2 to segment 200, and then the entire length of segment 200 all the way to node 3. If the route begins or ends somewhere in the middle of a segment, Waze uses the traffic data to estimate just the portion of total travel time for that segment you will use along the part of the segment you will travel.

For drives in the US and Canada, the Waze routing server always uses default data for travel on parking lot segments. This means there is no accounting for different wait times for outbound turns in different directions, or at different intersections. Traffic data from actual wazers is used in routing over all other segment types.

Traffic data is stored for every way out of each segment.

What traffic data is stored

  • As you drive, the Waze app (client) on your mobile device collects data about your GPS location and when you were there. It sends that data to the Waze server.
  • The Waze server uses this data to figure out which nodes you travelled through, which segments you used to travel between them, your average speed, and how long it took you to make it through the segment.
  • This data is collected even on drivable segment types for which the Waze routing server does not use that data.
  • Traffic data collected on short segments (less than 19.69 ft (6 m)) is less accurate.
  • Waze averages together everyone's information during the same time slice from the last several months so it can figure out how long it took to get from one node to another, through it, and onto a new segment.
  • It keeps track of this information in the forward (A to B) and reverse (B to A) direction, and for every possible exit from the segment at the node it is joined to. So if segment 100 is junctioned to segments 201, 202, and 203 at its B junction node, It can figure 3 different cross times in the A->B direction - for 100->201, 100->202, and 100->203.
  • If the segment has a restricted lane (Bus, Express, HOV, etc) , the same type of information is stored for one "extra" lane. So if segment 100 also has a left HOV lane, then Waze will be able to figure out 3 more cross times in the same direction - for 100HOV -> 201, 100HOV->202, 100HOV->203.
  • Nodes are the primary way Waze routing server looks at routes. All data about transition between two segments is stored with the ID of the node involved, as well as the two segments connected to it.

Junction boxes and traffic data

When a junction box is created, Waze begins to calculate and store junction box traffic data in addition to the data associated with the segments and nodes. In this example, for traffic entering the junction box on segment F, Waze will begin keeping track of traffic data for traffic exiting at B (left turn), A (straight) and E (right turn). This allows Waze to keep better track of the difference in speeds for traffic backed up past node D to turn left versus traffic moving quickly through to go straight. Junction boxes function something like a node. Where they are present, Waze routing servers use the junction box traffic data instead of the underlying segment and node traffic data, though it continues to collect both sets of data.

If a junction box is deleted and then recreated using the same segments before too much time passes, the Waze routing servers can use the previously stored junction box data for any segment IDs that have not been deleted.

Where does this information come from

  • When a new segment is created, initial traffic data are created based on a default average speed for the road type and a transition time to each segment it is junctioned to. These values will be updated as soon as waze records traffic using the segment and the junction nodes.
  • Waze frequently updates traffic data by analyzing the traffic that has travelled on each segment at each time slice of the week. Those real-life traffic data are averaged to come up with the stored values. There are a lot of details we do not know about how traffic data is analyzed, and how the traffic calculations take into account loss of cell service, wazers stopping on the side of the road or entering or leaving a segment in the middle, etc. LiveMap shows us 48 time slices per day (every hour and half hour), and we don't know whether that has anything to do with the number of time slices Waze uses in its calculations.

Glossary

segment
One piece of road. Every segment has a unique segment ID, an A and B end, and might have some geometry points between. Every segment is connected to a node at both ends, and has a forward (A to B) and reverse (B to A) direction of travel.
node
Nodes are found at both ends of every segment. The Waze routing engine uses the information associated with the segments and nodes to determine how long it takes to travel between two nodes. If two segments are joined to the same node, the node is often referred to as a junction node. If only one segment is attached to the node, the node is often referred to as an end node. An end node may become a junction node if another segment is joined to it, and a junction node may become an end node if all but one attached segments are removed from it.
Time slice
A specific day of week and portion of a day. A time slice might cover an hour or half hour of the day, or it might cover a different length of time.
Segment cross time
The time it takes a wazer to enter the the segment, cross it, and exit the segment in one of the possible exit directions. This cross time includes the average time spent "waiting for the light to change", "waiting to make a turn", or "waiting at the 4-way stop". For a 2-way segment connected to a 4-way intersection at each end, there are 4 segment cross times in the A->B direction (straight, left, right, and u-turn) and 4 more in the B->A direction. For segments marked as having an additional reserved lane (HOV, Express, motorcycle, etc) in the right/middle/left lane, there is one more additional set(s) of cross times associated with the restriction (for more on this, please see Carpool, HOV, Transit lanes.
Segment cross speed
segment cross time divided by length.
Traversal Time
A "base" time to cross a segment in the A->B or B->A direction, not including transition times to cross from one segment to one of the other segments it is junctioned to. Might be used to calculate new segment cross times when an existing segment is cut into two new segments.
Transition Time
A calculated "wait" time to transition from one segment to another, not counting the Traversal time. Might be used to calculate new segment cross times when an existing segment is cut into two new segments.

What information we can see

Scripts like route speeds can retrieve segment cross times for an hour or half hour, any day of the week, along any of the routes the routing server gave it. These scripts can calculate speeds based on these cross times.

When is traffic data lost?

  • When a segment is deleted, all traffic data involving that segment is lost.
  • When a node is deleted, then all the data about transitions between segments connected to that node is lost.
  • If a segment is disconnected from a node and saved, then data about transitions between that segment and the remaining segments still connected to that node will eventually be lost.
  • If a junction box is deleted and recreated, but the entry and exit segments to the junction box are different, then some traffic data will be lost.
  • If no traffic is assigned to a segment or a direction on a segment then the old traffic data for that direction will be retained for a week or two. After that, it will be lost.

What happens to traffic data when you make changes to the roads

  • When you delete a segment (let's call it segment 100)
    • All traffic data for that segment is deleted
    • All traffic data for other segments coming INBOUND to that segment is lost
    • All traffic data OUTBOUND to other segments is lost.
    • If you delete a segment and replace it with a newly-drawn segment, waze has to start from scratch with default values for segment speeds and turns and collect new traffic data.
  • When you shift the position of a junction without disconnecting anything, changing the lengths of several segments
    • The speed on the segments can be used - cross times will change to account for the fact that the junction has moved.
    • Over time, the stored traffic data will change to bring segment cross times back into line with reality.
  • When you cut a segment (let's call it segment 100) into 2 shorter segments without changing anything else at the 2 original junctions (Examples, connecting a PLR to segment 100 or having a change in speed limit along segment 100.)
    • Two new segments are created with brand-new segment IDs (let's call them 201 and 202)
    • The segment and the segment ID (100) from the segment you cut is deleted.
    • A junction node is created where the two new segments are joined.
    • The segment cross times of the original segment are used to calculate new cross times for the new segments, including cross times connecting the two new segments.
    • Over time, the stored traffic data will change to adjust the new transition times in line with reality.
  • When you merge two segments (let's call them segments 201 and 202) into one longer segment by deleting the junction node connecting them (node 999)
    • A new segment is created with a brand-new segment ID (let's call it segment 300)
    • The segment cross times of segments 201 and 202 through node 999 are used to calculate new cross times for segment 300
    • Node 999 is deleted.
    • Segments 201 and 202 are deleted.
  • If you move one end of a segment (connected to node 999) and connect it to another node, the node that was not moved will be used for the new junction.
    • If node 999 was connected to an additional segment, it will remain in place.
    • If node 999 was only connected to the segment end you moved, it will be deleted.
  • When you disconnect a single segment from a junction:
    • the node remains connected to the unmoved segment and
    • a new node is created on the moved end of the moved segment.
    • Therefore, If you move a segment end away from a junction node and then move that same segment end back to the same junction node, you will preserve the original node ID and all associated traffic data
    • But if you move a segment end away from a junction node, and then move the other segment(s) away from the old junction to join the new node ID, you will lose the original node ID and all associated traffic data.
  • When you move segments from one junction node to another junction node
    • All traffic data which passed through the first junction node are lost, because they were associated with the two connected segment IDs and the node connecting them.
    • Traffic speed on the segment is still usable.
    • New traffic data connecting the same segments through the new junction node are created using default values because traffic data connecting two segments depends on the two segment IDs and the junction node ID.
    • If you begin with two segments, 101 and 102, disconnect them, save, reconnect them through a new junction node, and save again, the original transition times between 101 and 102 will be lost. They will be replaced by new default values.
    • Over time, transition times between the two segments will be adjusted to reflect the new traffic data.
  • Traffic data corresponding to a restricted (red) transition arrow between segment 200 and 201 will still be collected as long as traffic can be assigned to a route from segment 200 to 201 (see below)
  • Improperly divided roads
    • Traffic data corresponding to the "wrong direction" on a one-way segment will not be collected if the traffic data is assigned to other nearby segments. If no traffic is assigned to a segment direction, the old traffic data will be retained for a week or two.
    • If a 2-way segment is improperly divided by drawing a new one-way segment parallel to the old segment, and the old segment is made one-way, then the stored "wrong way" traffic data on the old segment will be retained for a period of a week or two. New traffic data in that direction will be collected on the new one-way segment.
    • If you find an improperly divided road w/in a few days (red road(s) for the new section(s)/not connected segments/improper turn restrictions) then turn the original sections back to two way and properly divide the road. This will retain the older data vice having to restart the data collection from scratch.
    • This is why it is best to use pieces of the existing 2-way road for constructing both new one-way roads when it is necessary to divide a roadway (create a dual carriageway)