User:Voludu2/Traffic data View history

(→‎What happens when: that last was already on the list.)
 
(34 intermediate revisions by the same user not shown)
Line 1: Line 1:
This is all very informed, and I have probably got most of it wrong, or out of context.
{{ForumLink|Traffic Data|119004}}
This page is under construction.


Do not use the information found here to make any decisions about Waze editing.
=What Waze Map Editors Need to know about how traffic data is stored=
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 and understand 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). Wait times at traffic signals or other intersections to turn or go straight contribute to transition time.


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.
==What information is stored==
* For each segment, the Segment cross speed 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.
* In addition, we have been told that "transition time" is stored. This is the additional time it takes to go from the segment, through a specific junction node it is connected to, to another segment also connected to that junction node. We do not know of any way to get these directly.
* 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.


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.
==What information we can see==
Scripts like route speeds can get the total time/speed to cross from one segment to the next for every half hour for every day of the week. They cannot get the cross speeds and transitions separately, but we can see the different times it takes if a route goes left, right, or straight when leaving the segment.


=What Waze Map Editors Need to know about how traffic data is stored=
==When is traffic data lost?==
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.
* When you delete a segment, all traffic data involving that segment is lost
==Glossary==
* 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.
* Junction transition speed
 
* Junction transition time
==What happens to traffic data when you make changes to the roads==
* When you delete a segment (let's call it segment 100)
**its cross times and transition times to other segments is deleted.
**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.
** 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 to and from that segment.
* When you shift the position of a junction without disconnecting anything, changing the lengths of several segments
** The cross speeds are not changed.
** Cross times calculations will change because the lengths of the segments has changed
** Transition times are not affected.
* When you cut a segment into 2 shorter segments without changing anything else at the 2 original junctions
** The cross speed of the original segment is used for both of the new segments
** Transition times at the 2 original junctions are applied to the new segments
** What are the transition times between the 2 new segments across the new junction.
* When you disconnect all segments from a junction node and save.
** The junction node is deleted and replaced by a new junction node ID
** The transition times passing through that junction node are lost
* When you move segments from one junction node to another junction node
** All transition times which passed through the first junction node are lost.
** New transition times connecting the same segments through the new junction node are created.


==What information is stored==
=Questions=
* segment traversal
==What happens when==
** What is stored?
* Drag one junction node with two segments on top of another junction node with another 2 segments. Are the s1->s2 and s3->s4 transition times retained at the new junction node?
*** time to traverse + length of segment? or calculated average speed of traversal?
* Change the segment's length without moving the ends,  as by stretching out a geometry node.
*** Are some large number of recent traversals stored? some max # or going back a certain # of days? With actual time stamps?
** Same cross speed is used, so the calculated cross time will change (?)
*** ... or is it some kind of running average information?  er hour, or down to the second?
** transition times are unaffected.
*** For different times of day?  Different days of the week? Different times of year? Does it know which days are holidays?
* stopping  -- what if a car stops -- how does its data contribute
** waze is still running (as in a traffic jam)
** ... for a long time (bad traffic jam or wazer has parked the car on the shoulder)
** wazer hits pause
** wazer turns waze off
** waze crashes
* exiting and re-entering the same segment
** drives through an unmapped area such as a parking lot, then rejoins the same segment before finishing the traversal
* reverses direction in the middle of a segment
** by leaving the segment and reentering it
** but making a u-turn or 3-point turn in the middle of the segment.
* segment non-traversal -- a wazer leaves the segment where there is no junction.
** Stops nearby, and turns off waze
** turns off waze while driving
** pauses waze while driving
** waze crashes while in use
** connection to waze servers lost while in use (phone/cell/internet issues)  
** drives through an unmapped area and eventually joins another segment.
* What is "straight-through" and what is "turn", or does it matter?
* Does waze keep separate stats for A-B and turn s1, A-B turn s2, A-B turn s, and so on?
* what is junction transition speed, junction transition time?


==what happens when you make changes to the roads==
* Create 1 segment from 2 by deleting the junction joining them.
* Make a segment shorter or longer (for example, but shifting a junction without disconnecting it)
** Cross speed?
* change the direction of the road
** Transition times at the nodes on either end of the new segment?
**From "unknown" to something known
** Transition time between the 2 segments that have been joined to create the new segment?
** from 2-way to one-way
* 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?
** from A->B to B->A or vice-versa.
* Turn a red arrow green.  See above.
* Add geometry nodes, without changing the shape of the road
* Change a 2-way segment to 1 way, so that the turn arrow is no longer visible.
* change the shape of the road without changing the length (bending without stretching at a geometry node)
* After a period of time (minute, day, month, year,) reverse  the direction of the 1-way segment
* cut a segment into two smaller segments -- two completely new segment ids are created. What data do the two "child" segments inherit?
* join two segments into one longer segment -- a completely new segment id is created.
* disconnect a segment from a junction
* disconnect a segment from a junction
** just long enough to facilitate fixing something like segment overlap.
** and reconnect it before saving.
** long enough that a tile upload happens while it is disconnected.
** 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.
** 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
* Connect a segment to a junction
** a former "dead-end" node of an existing segment
** 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 (one of the junction ids is retained, while the other is lost)
* convert a bow tie junction to a "H" junction by the following method
==Things I've heard about traffic data==
*# disconnect segment 1 from the bow tie junction  
 
*# connect segment 1 to the cross segment to create a new junction
A segment stores average traverse speed to each of the connected segments, for each available time slot. When split , that speed is split by ??? percentage wise and applied to both new segments, same when stretched, the speed is kept proportionated to the original.
*# disconnect segment 2 from the bow tie junction
 
*# connect segment 2 to the new junction.
??? Kept proportional to original, or speed is copied to the newly -created segments?
* 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  
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.
*# reduce the elevation to ground and use the "junction" icon to create the new junction.
 
 
[Are you going to ]lose turn data by disconnecting and reconnecting to the same junction<br/>
by disconnecting and reconnecting to the same junction? I doubt that very much
or at least sorta much
 
 
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.
 
thats different ... disconnecting through hte course of tile builds
 
if you are splitting 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
 
There are methods of closing roads that don't require any data loss.

Latest revision as of 14:12, 25 February 2016

You can bring up comments or questions about this in
 Traffic Data forum topic.

This page is under construction.

What Waze Map Editors Need to know about how traffic data is stored

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 and understand 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). Wait times at traffic signals or other intersections to turn or go straight contribute to transition time.

What information is stored

  • For each segment, the Segment cross speed 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.
  • In addition, we have been told that "transition time" is stored. This is the additional time it takes to go from the segment, through a specific junction node it is connected to, to another segment also connected to that junction node. We do not know of any way to get these directly.
  • 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 information we can see

Scripts like route speeds can get the total time/speed to cross from one segment to the next for every half hour for every day of the week. They cannot get the cross speeds and transitions separately, but we can see the different times it takes if a route goes left, right, or straight when leaving the segment.

When is traffic data lost?

  • 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.

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

  • When you delete a segment (let's call it segment 100)
    • its cross times and transition times to other segments is deleted.
    • 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.
    • 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 to and from that segment.
  • When you shift the position of a junction without disconnecting anything, changing the lengths of several segments
    • The cross speeds are not changed.
    • Cross times calculations will change because the lengths of the segments has changed
    • Transition times are not affected.
  • When you cut a segment into 2 shorter segments without changing anything else at the 2 original junctions
    • The cross speed of the original segment is used for both of the new segments
    • Transition times at the 2 original junctions are applied to the new segments
    • What are the transition times between the 2 new segments across the new junction.
  • When you disconnect all segments from a junction node and save.
    • The junction node is deleted and replaced by a new junction node ID
    • The transition times passing through that junction node are lost
  • When you move segments from one junction node to another junction node
    • All transition times which passed through the first junction node are lost.
    • New transition times connecting the same segments through the new junction node are created.

Questions

What happens when

  • Drag one junction node with two segments on top of another junction node with another 2 segments. Are the s1->s2 and s3->s4 transition times retained at the new junction node?
  • Change the segment's length without moving the ends, as by stretching out a geometry node.
    • Same cross speed is used, so the calculated cross time will change (?)
    • transition times are unaffected.
  • Create 1 segment from 2 by deleting the junction joining them.
    • Cross speed?
    • Transition times at the nodes on either end of the new segment?
    • Transition time between the 2 segments that have been joined to create the new segment?
  • 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, so that the turn arrow is no longer visible.
  • After a period of time (minute, day, month, year,) reverse the direction of the 1-way segment
  • 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
  • convert a bow tie junction to a "H" junction by the following method
    1. disconnect segment 1 from the bow tie junction
    2. connect segment 1 to the cross segment to create a new junction
    3. disconnect segment 2 from the bow tie junction
    4. connect segment 2 to the new junction.
  • convert a bow tie junction to a "H" junction by the following method
    1. bridge segment 1 to segment 2
    2. move the joined segment to the new junction location on the cross segment
    3. reduce the elevation to ground and use the "junction" icon to create the new junction.