Post Reply

[Discussion] USA Road Types - Railroads (junctioning)

Post by
A couple of months ago, discussion on the script thread for WME Magic revealed conflicts with the WOP guidance for junctioning at-grade railroad crossings and what is actually being done out there by regions.

Specifically, I cited guidance updated in September 2018 that states that RR crossings should by default *not* have junctions.

https://wazeopedia.waze.com/wiki/USA/Ro ... s#Railroad
In specific circumstances, create junctions between drivable roads and railroads at grade crossings. Otherwise, do not junction grade crossings. The resulting elevation conflicts are acceptable.
This bullet point then has a lengthy footnote attached, which reads in part:
Adding a junction node for a grade crossing only benefits routing if both (1) between the existing junction nodes on the drivable road on either side of the grade crossing, there is at least one destination on one side of the crossing and room for cars to back up waiting on the other; and (2) the tracks support regular, scheduled train traffic. If either of these elements is missing, adding a junction node for the grade crossing will not benefit routing and may in some cases degrade routing.
From the conversations in that thread and from other informal ones I've had elsewhere and offline, this perhaps should be revisited? Almost every editor I've ever discussed this with was surprised by the change and had some concerns, but it's still hanging out there unresolved....

Post by jm6087
Are you wanting to discuss this in here or would it be better served to be discussed in the US Wiki forum?
jm6087  
Waze Global Champs
Waze Global Champs
Posts: 5926
Answers: 4
Has thanked: 609 times
Been thanked: 1883 times
Thanks,
John
US Global Champ
SCR Wiki
https://storage.googleapis.com/wazeoped ... writer.png
[
https://i.ibb.co/ZNbYyt5/RIPIain.png R.I.P. Iainhouse - Oct 21st 2021

Post by DwarfLord
Only someone with forum-management credentials can move the thread. I know of an active European editor who has been very generous about this in the past, but it does seem a shame if we can't find/persuade a USA editor to do it...

Regarding the RR junctioning rule change as of September 2018, I led that effort, with many comments from others as always. I would be happy to explain it. I suppose I could do so here and if we ever find someone to move the thread the whole conversation would go with it...
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by iainhouse
DwarfLord wrote:Only someone with forum-management credentials can move the thread.
AFAIK, all Global Champs are forum moderators (one step below forum admins), so should be able to move a topic. Anyway, I've moved this for you. :mrgreen:

I'll also butt in very briefly on the actual topic. You may know the name Yigal - he is the Routing Expert at Waze. Yigal's advice on this subject, given out at a EU Mega Meetup a couple of years ago in answer to a question on this subject, is to always junction at-grade road/rail crossings.

An additional benefit comes when the crossing is closed for maintenance. You can put in 2 one-way closures, each closed in the direction away from the crossing. That will provide correct routing to destinations on the segments right up to the crossing. I'm not sure how the client handles routing away from the crossing when you start navigation - but since you're there, there's a fair chance you know which way you have to leave anyway.

</butt> ;)
iainhouse
EmeritusChamps
EmeritusChamps
Posts: 11144
Answers: 1
Has thanked: 2185 times
Been thanked: 8103 times
https://storage.googleapis.com/wazeoped ... c4/AGC.pnghttps://sign.waze.tools/s2000.pnghttps://sign.waze.tools/c6.png
My scripts: WME FixUI WME Presets :ugeek:
I want to go to a commune in Vermont and deal with no unit of time shorter than a season

Post by DwarfLord
Thanks for moving the thread!
iainhouse wrote:Yigal's advice on this subject, given out at a EU Mega Meetup a couple of years ago in answer to a question on this subject, is to always junction at-grade road/rail crossings.
Always? Even disused spurs that never see railway traffic? Even when there are already existing junction nodes 3 m on either side of the RR grade crossings? The devil is in the details.

I certainly don't claim to know more than Yigal about routing. However when he made this pronouncement, he may have been assuming things. He may have been thinking, "well of course there's no point in junctioning a disused railway line, and of course there's no point in junctioning a line when there's already a junction node very near the grade crossing, so I won't mention those exceptions since they're obvious; easier to tell them to junction everywhere and always and they'll know to use common sense".

Or he may have been thinking something else. Maybe they have a Big Data thing going on where they're trying to estimate railway timetables. I sure don't know.

But one thing we do know for certain is that junction nodes inserted for any reason on the final approach to a junction with different wait times for left/right/straight may lead to unwanted averaging-together of those separate wait times, in turn leading to suboptimal routing results. It is hard to believe that any benefit gained by junctioning a grade crossing under these specific circumstances would be worth the degradation to traffic timing.
iainhouse wrote:An additional benefit comes when the crossing is closed for maintenance. You can put in 2 one-way closures, each closed in the direction away from the crossing. That will provide correct routing to destinations on the segments right up to the crossing. I'm not sure how the client handles routing away from the crossing when you start navigation - but since you're there, there's a fair chance you know which way you have to leave anyway.
Under the specific circumstances where our current guidance says not to junction RR grade crossings, I don't believe these benefits would apply, as there would generally be no point.

The USA guidance is definitely to junction RR grade crossings, it's just we don't do it in certain conditions where experience suggests doing so has zero or negative benefit.
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by iainhouse
DwarfLord wrote:But one thing we do know for certain is that junction nodes inserted for any reason on the final approach to a junction with different wait times for left/right/straight may lead to unwanted averaging-together of those separate wait times, in turn leading to suboptimal routing results. It is hard to believe that any benefit gained by junctioning a grade crossing under these specific circumstances would be worth the degradation to traffic timing.
That's a very good point - certainly one that makes sense and I would have to agree with. The only way around it I can immediately think of is to use a Junction Box - by which point you're adding far too much complication compared to just not joining them at all. I guess I'll have to go check what we've got in the UK Wazeo and see if we need to add that exception - so thanks!

As I said, I am butting in on a US discussion; only because I had some relevant information "from the horse's mouth". But please feel free to ignore me as much as you like! If they ever release Yigal from his ivory castle to meet with real people again, I look forward to discussing it with him. :lol:
iainhouse
EmeritusChamps
EmeritusChamps
Posts: 11144
Answers: 1
Has thanked: 2185 times
Been thanked: 8103 times
https://storage.googleapis.com/wazeoped ... c4/AGC.pnghttps://sign.waze.tools/s2000.pnghttps://sign.waze.tools/c6.png
My scripts: WME FixUI WME Presets :ugeek:
I want to go to a commune in Vermont and deal with no unit of time shorter than a season

Post by DwarfLord
SeveriorumPatrem wrote:At present USA guidance is to not junction except for very specific uncommon circumstances.
I fear the guidance has been misunderstood. If the existing junction nodes on either side of an active grade crossing are far enough away that there’s a destination before one and room for cars to back up waiting before the other — put another way, that there isn’t a junction node already close to the grade crossing — then by all means junction the crossing. Junctioned grade crossings should be very common indeed, especially in rural areas but also in suburban zones where quarters are not too tight.

The reason for the guidance change was that editors were unknowingly ruining Waze’s timing measurements in urban areas. If you research the previous threads that led to the change you’ll see examples of multiple additional junction nodes where disused spurs crossed significant intersections.

If you disagree with the present guidance, can you please present a technical argument why it is to the detriment of drivers getting good routes? Can you give a specific example of a grade crossing you believe should be junctioned against current guidance? With all due respect to Yigal, this is the same company that told us to map every parking lot in the world. It would be more satisfying to have a solid technical explanation of why you believe the current guidance is faulty.

[EDIT: Of course, one reason the current guidance may be faulty could be if it were technically sound, but confusing and/or poorly written. That would be entirely my fault. The language was written to align with what's going on "under the hood" — I wanted to connect the dots with the underlying motivation. But perhaps overall clarity ended up suffering.]
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by DwarfLord
More than one person has told me the current wording isn't clear, and I absolutely support wordsmithing to improve that!

I think the current language resulted from a heck of a lot of frustration and despair over what had been introduced as a mass editing campaign for everywhere and always. As a result of this "everywhere and always" language our urban areas got sprayed with useless and often counterproductive junction nodes.

And, as always seems to happen in these cases, once the downsides of these new nodes became clear, the editors who had worked so hard to add them seemed to evaporate, leaving the mass cleanup to the ones who were uncomfortable about the mass campaign in the first place.

Since I (and the SF Bay Area) are still reeling from this event it's hard for me to get behind language that starts out too encouraging. Perhaps there's a good middle ground? Perhaps something like
In general, you should create a junction for grade crossings involving regular, scheduled train traffic if no other junction node is nearby. Junctioning active grade crossings near existing junction nodes, or junctioning abandoned or seldom-used grade crossings, may be counterproductive.
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by DwarfLord
jm6087 wrote:
In general, you should create a junction for grade crossings involving regular, scheduled train traffic if no other junction node is nearby. Junctioning active grade crossings near existing junction nodes, or junctioning abandoned or seldom-used grade crossings, may be counterproductive.
So I have to go look at the train schedule to determine if I should junction it?
No, that would be silly. I was being brief, not explicitly quoting the existing guidance which, as far as I understand, the suggestion is to rephrase, not to replace (and certainly not to replace with the wretched "everywhere and always" guidance that got us in so much trouble in the first place). The existing guidance says:
Existing guidance wrote:If it is difficult to determine whether regular, scheduled trains use the tracks, you may assume they do if the tracks appear active and well maintained.
In fact, perhaps it would be best for me to include the entire existing guidance here instead of referencing the article, so it is easiest for everyone:
Complete existing junctioning guidance wrote:In specific circumstances, create junctions between drivable roads and railroads at grade crossings.* Otherwise, do not junction grade crossings. The resulting elevation conflicts are acceptable.

*Adding a junction node for a grade crossing only benefits routing if both (1) between the existing junction nodes on the drivable road on either side of the grade crossing, there is at least one destination on one side of the crossing and room for cars to back up waiting on the other; and (2) the tracks support regular, scheduled train traffic. If either of these elements is missing, adding a junction node for the grade crossing will not benefit routing and may in some cases degrade routing. If it is difficult to determine whether regular, scheduled trains use the tracks, you may assume they do if the tracks appear active and well maintained.
And the second concern...
jm6087 wrote:To me, unless it creates unneeded short segments, if the track appears to be usable then I don't see an issue with creating a junction. It shouldn't matter if only one train or 10 come by in a day.
The words "regular and scheduled" can mean one train a week, one train a month, one train a year, as long as it typically comes by every time according to a plan.

The wording is all because of how Waze works. Waze measures delays through a junction node. Marking a grade crossing with a junction node (if there is not already a junction node close by) allows Waze to measure delays to destinations on either side of the crossing associated with passing trains. If there are no passing trains, or the trains that pass do so at irregular unscheduled times, then this additional delay information gathered by Waze with respect to the train passage will be more or less meaningless. It may even degrade routing because Waze might say "there was a train here last Thursday at 9 AM, and here it is Thursday at 9 AM again! I better give the driver a different route in case that train reappears". This is one of the things the existing guidance means when it says "will not benefit routing and may in some cases degrade routing".

In practical application, as you pointed out, it is beyond typical editing scope to research a given grade crossing to determine if there is regular, scheduled traffic on it. Which is why the "if the tracks appear active and well maintained" language was added. Junctioning active, well-maintained tracks that do NOT happen to carry regular, scheduled traffic gets us into the trouble discussed above, but c'est la vie.
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by DwarfLord
jm6087 wrote:I guess I was not aware that a one time delay will translate into a historical delay for a segment. Does that also mean that if a bunch of cars get stuck behind a slow moving farmer, the routing will be degraded in the future just in case another slow moving farmer shows up?
I don't know the proprietary algorithm they use to weight new short-term data and how they average it into the long-term temporal data. So I can't say how significant an effect this is for a single event. However, if Waze observes a slowdown on a segment that turns out later to be a one-off, it certainly won't help timing in the future on the same day and time. It's either no effect or a detrimental effect -- i.e., "it won't hurt, or at least not much". That's weak justification to junction irregularly-used tracks.

jm6087 wrote:Also what constitutes "at least one destination on one side of the crossing". Does the destination need to be within 100 ft, 1 mile, 100 miles?
The specific language is: "1) between the existing junction nodes on the drivable road on either side of the grade crossing, there is at least one destination on one side of the crossing and room for cars to back up waiting on the other". Are there road segments in your area that go 100 miles without a junction node or a destination of any kind whatsoever? Remind me not to drive there :mrgreen:

Seriously, the answer is yes. Even with no junction node at the grade crossing, Waze is already incorporating delays across the entire segment due to trains or anything else. The net timing improvement of junctioning grade crossings for drivers bound to destinations beyond the next junction node is a big fat zero. The only timing value in junctioning grade crossings is to support routing to destinations nearer than the next junction node. If there are no destinations nearer than the next junction node, there is no net timing improvement in junctioning the crossing.

The same question has come up with regard to the phrase "room for cars to back up waiting". People have asked for a specific distance. This is not possible because it depends on the grade crossing. At some crossings, maybe one or two cars back up for short trains. At other crossings it can be a lot further. In either case, if there is already a junction node in the midst of that backup area, then Waze is already localizing train-related slowdowns and a new junction node at the crossing itself won't help much or at all.

jm6087 wrote:I guess I need to see some examples of when it would not be beneficial to junction a crossing to better understand why one would not generally create a junction for grade crossings if the tracks appear to be active as opposed to only in specific circumstances (which makes it sound like it should be very rare to junction).
Again, the existing guidance arose out of unspeakable frustration with the former "everywhere and always" guidance that wrecked timing measurements all over our area. We were trying to make the hurting stop!

As I wrote above, junctioning grade crossings, even at the best of times, provides only limited, localized timing value. Under the right circumstances it's worth doing, but even then, for most destinations except those close to tracks, it won't make any material difference.

So I stand by the existing guidance. But given how difficult to parse and understand the current text seems to be, I agree it is worth some effort to improve it and maybe explore some tradeoffs.
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times

Post by DwarfLord
jm6087 wrote:Side note: From what I remember, the primary reason we didn't use to junction RR crossing had more to do with the app routing on tracks. But that is no longer an issue.
Yes, I remember it well. Thank goodness that isn't a problem anymore! Anyway, the concern of today has nothing to do with that, it is about the routing/timing tradeoff.

The tradeoff is this: Junctioning grade crossings does buy us significant improvement in routing, but only for destinations/origins near train tracks used by regular scheduled train traffic AND where there is not already a junction node on the road close by the crossing. Adding new junction nodes for grade crossings in any other situation is either irrelevant or damaging to timing accuracy.

Because of that tradeoff, then in principle, our guidance must not suggest or even imply to editors that it might be OK blindly to junction every grade crossing they find. There was broad community agreement behind this principle when we established it over a year ago. I don't think anybody is disagreeing with this underlying principle...are they?

As long as there is agreement on this principle, I suggest we move towards discussing complete replacement texts rather than partial snippets. It will be easier to see how the whole new section would flow.
jm6087 wrote:If a track is obviously abandoned, I would argue does it really need to be mapped anyway.
Do you mean whether to map abandoned rail lines themselves? That's a different discussion that I personally don't care much about; others may feel differently. All I'm saying is there's zero benefit to junctioning abandoned or irregularly-used rail lines.
DwarfLord
Wiki Master
Wiki Master
Posts: 2507
Has thanked: 1089 times
Been thanked: 1480 times