Re: [Talk-ca] Telenav mapping turn restrictions

2017-03-30 Thread Ian Bruseker
Kevin,

That does make sense, but in the example Martijn gave, the starting point is 
well before the turning lane, so I'm picturing the car being there and the 
software still having time to make a choice which road to send it down. Why did 
OSRM pick to ignore the turning road given there is all the opportunity in the 
world to choose it instead of the actual intersection corner?

Ian



> On Mar 30, 2017, at 5:19 PM, Kevin Farrugia <kevinfarru...@gmail.com> wrote:
> 
> Hey Ian,
> 
> The main purpose is to stop silly or dangerous things from happening. If a 
> user misses their turn and the engine reroutes them to turn right where they 
> shouldn't (or U-turn) the consequences could be catastrophic. When people are 
> following a computer's instructions they'll follow them blindly (like when 
> Michael drives his car into a lake in The Office).
> 
> Plus if there's some weird error in the road topology or speed differences 
> that could cause it to happen it's best to have them there as a catch.
> 
> That's my view/reasoning from my experience working with routing and networks 
> anyways.
> 
> -Kevin (kevo)
> 
> 
> On Mar 30, 2017 7:02 PM, "Ian Bruseker" <ian.bruse...@gmail.com> wrote:
> Martijn,
> 
> Can I ask what is possibly a really dumb question?  As stated earlier I'm not 
> a lawyer, and really in truth I'm no cartographer either.  I generally stick 
> to adding POIs for stores in local stripmalls, because that's not too 
> dangerous to the map.  ;-)  Not being an expert in mapping, I probably just 
> don't get why routing software works the way it does.  Why, in your example 
> that you gave, would OSRM (or Scout) choose to send the user to the corner to 
> turn at all?  I just don't get the logic of it.  The code seems pretty 
> obvious (what I really am, after all, is a computer nerd).  In silly 
> pseudocode: "if exists link-type road between current_location and 
> destination, route via link road".  Why would it even look far enough ahead 
> to see the corner to see whether there was a turn restriction or not, when 
> there is already a more obvious path to take?  I mean, "obvious" to me as a 
> human, I guess.  If I were driving down a road I'd never been to, and my 
> passenger said "ok, take your next right", and I saw a turning 
> lane/ramp/something, that's where I would go.  Shouldn't that be the routing 
> software's first choice?  If it's looking far enough ahead on its path to 
> even get to "you can't turn right here", then I would think its next step 
> would be "ok, you can't turn right here, so I'll need to take them to the 
> _next_ place they can turn right and route them back around the block to the 
> road they want", not to then look backwards from the turn restriction to see 
> if there was a linking road it could take instead.  The choice should have 
> been made to take the linking road before it even cared whether it was 
> allowed to turn them at the hard corner ahead, which would make putting the 
> restrictions on the map for the purpose of "routing hint" sort of 
> unnecessary, wouldn't it, if the software had just picked the correct route 
> the first time?  Or worse, if they are there and the routing software hits 
> them, wouldn't they then result in even longer routes, because once it got 
> that far down the path, the only way to look is forward, which is a longer 
> path?  I don't mean to tell you how to write your software. ;-)  Like I said, 
> I don't actually know how routing software is coded.  And I'm sure you've 
> considered this.  I'm just curious, given that consideration, _why_ would 
> that route even happen in the first place (to take the hard corner rather 
> than the link road)?
> 
> Sorry if I'm derailing this discussion.  I don't touch the road network too 
> much in my mapping unless I am pretty sure what I'm changing is obviously 
> correct and simple, and I avoid weird intersections as much as possible.  I'm 
> just curious to understand, so maybe in the future if I happen across such a 
> situation, I'll have some idea how to map it so it doesn't send a driver 
> making a dangerous turn or crashing through a fence or something.  ;-)
> 
> Thanks,
> Ian
> 
> 
>> On 30 March 2017 at 09:50, Martijn van Exel <m...@rtijn.org> wrote:
>> Hi Andrew (and let me reply to Pierre's comments too, sorry Pierre, I am a 
>> little slow parsing French).
>> 
>> First off thanks for your additional comments, they are really useful. I 
>> realize that I should have shared more detail about what we are planning to 
>> do and will do a better job in the future if new projects arise. We are 
>> actually working on a Github

Re: [Talk-ca] Telenav mapping turn restrictions

2017-03-30 Thread Ian Bruseker
Martijn,

Can I ask what is possibly a really dumb question?  As stated earlier I'm
not a lawyer, and really in truth I'm no cartographer either.  I generally
stick to adding POIs for stores in local stripmalls, because that's not too
dangerous to the map.  ;-)  Not being an expert in mapping, I probably just
don't get why routing software works the way it does.  Why, in your example
that you gave, would OSRM (or Scout) choose to send the user to the corner
to turn at all?  I just don't get the logic of it.  The code seems pretty
obvious (what I really am, after all, is a computer nerd).  In silly
pseudocode: "if exists link-type road between current_location and
destination, route via link road".  Why would it even look far enough ahead
to see the corner to see whether there was a turn restriction or not, when
there is already a more obvious path to take?  I mean, "obvious" to me as a
human, I guess.  If I were driving down a road I'd never been to, and my
passenger said "ok, take your next right", and I saw a turning
lane/ramp/something, that's where I would go.  Shouldn't that be the
routing software's first choice?  If it's looking far enough ahead on its
path to even get to "you can't turn right here", then I would think its
next step would be "ok, you can't turn right here, so I'll need to take
them to the _next_ place they can turn right and route them back around the
block to the road they want", not to then look backwards from the turn
restriction to see if there was a linking road it could take instead.  The
choice should have been made to take the linking road before it even cared
whether it was allowed to turn them at the hard corner ahead, which would
make putting the restrictions on the map for the purpose of "routing hint"
sort of unnecessary, wouldn't it, if the software had just picked the
correct route the first time?  Or worse, if they are there and the routing
software hits them, wouldn't they then result in even longer routes,
because once it got that far down the path, the only way to look is
forward, which is a longer path?  I don't mean to tell you how to write
your software. ;-)  Like I said, I don't actually know how routing software
is coded.  And I'm sure you've considered this.  I'm just curious, given
that consideration, _why_ would that route even happen in the first place
(to take the hard corner rather than the link road)?

Sorry if I'm derailing this discussion.  I don't touch the road network too
much in my mapping unless I am pretty sure what I'm changing is obviously
correct and simple, and I avoid weird intersections as much as possible.
I'm just curious to understand, so maybe in the future if I happen across
such a situation, I'll have some idea how to map it so it doesn't send a
driver making a dangerous turn or crashing through a fence or something.
 ;-)

Thanks,
Ian


On 30 March 2017 at 09:50, Martijn van Exel  wrote:

> Hi Andrew (and let me reply to Pierre's comments too, sorry Pierre, I am a
> little slow parsing French).
>
> First off thanks for your additional comments, they are really useful. I
> realize that I should have shared more detail about what we are planning to
> do and will do a better job in the future if new projects arise. We are
> actually working on a Github repository (similar to Mapbox's) where we will
> share more details about mapping projects and where everybody will be able
> to talk to the team about what we do. Of course we will continue to post
> here as well.
>
> We do have a serious onboarding process for new mappers on our team where
> more experienced mappers guide the newcomers and introduce them to the OSM
> ecosystem. So they are not quite thrown in the deep end, but like everybody
> else they go through a learning process where they make simple edits first.
> We don't ever use live OSM data for pilot or test projects.
>
> I don't feel there's a consensus about the turn restrictions in places
> where they are not marked. There are really good (routing / safety related)
> reasons for this as I pointed out before [1] and in my research I have
> found many of these in the U.S. as well, but until that is cleared up we
> will not add any more. This includes the left turn restrictions Pierre
> mentioned. To Pierre's comments, I don't think that there's really an
> easier way to map this, turn restrictions have been discussed in the
> community at length and other solutions not based on relations just don't
> scale well to complex situations.
>
> The Bing imagery alignment issue is one that we have not given proper
> attention and I will impress upon the team that they should pay really
> close attention to this and be even more restrained in modifying local
> mappers' work. I seem to remember there is a site / place that lists offset
> issues with Bing imagery by region? Is there a good source to look at for
> this?
>
> I'm thinking it would be good to hold an online town hall where some of
> our team members and 

Re: [Talk-ca] Telenav mapping turn restrictions

2017-03-26 Thread Ian Bruseker
Andrew,

I'm sorry to butt in here, I'm normally just a lurker and occasional editor
of my local bit of the world in OSM, but your comment on the right hand
turn restriction "at least in BC" really jumped out at me.  I've seen a
number of times in my driving life someone do exactly what you are
describing, turning right at the actual intersection of two roads, rather
than the turning lane that came a little earlier, and every time they have
had BC plates. I live in Alberta, so I just shrugged it off as "they're
tourists, they just realized they missed their turn, whatever".  :-)  But
based on your comment, maybe this is a "BC thing" and you all do it.  ;-)

It's always seemed weird to me to see it (but like I said, "tourists,
whatever"), and seems like a really unsafe and really should be illegal
practice.  Imagine this scenario: driver A is traveling down Wilfert, as
from your map, and appears to be headed straight through the intersection.
Driver B behind them takes the right-turn linking lane to get to Island
Highway. Driver A suddenly decides they need to go right, so they turn at
the intersection proper.  Driver B, having seen the light was green for
those going straight on Wilfert, presumes (always a bad idea, but hear me
out) that no car could possibly be coming across their path and drives
through the right lane and takes the corner.  Then BOOM, driver A's car is
there out of nowhere because he took the later option to turn right.
Surely that must be illegal because it is so unsafe.  Not to mention driver
C behind both of them also expects driver A to go straight because driver A
has already passed the turning lane, so doesn't expect drive A to suddenly
decelerate for the turn (this is how I have come to be close enough to a
car to see its BC plates, as I slam on the brakes to avoid hitting them).

So I did a quick google.  I am not, really really not, a lawyer, but my
amateur reading of 151(e), as found here:
http://www.bclaws.ca/civix/document/id/complete/statreg/96318_05#section151
, "when approaching an intersection intending to turn right must drive the
vehicle in the lane nearest to the right hand side of the roadway", my take
on the wording "must" drive, and lane "nearest" to the right, tells me that
the linking lane is the only one that it is legal to make a right turn
from.  Also, section 165(4) (
http://www.bclaws.ca/civix/document/id/complete/statreg/96318_05#section165
) says "If at an intersection there is a traffic control device indicating
the course to be travelled by vehicles turning at the intersection, a
driver must turn a vehicle at the intersection in the manner directed by
the traffic control device.", and in the definitions section, it defines a
traffic control device as "a sign, signal, line, meter, marking, space,
barrier or device".  Based on the satellite imagery of that intersection
(never actually been there myself), it sure looks like there are "lines"
and "spaces" and possibly even a concrete island "barrier" (imagery isn't
that detailed, but sure looks like it) on the road that make it clear in
where there is a place to turn right.  Also again with the word "must"
rather than something less imperative like "may" or "could".  So based on
my reading, it's not that the turn is legal unless otherwise indicated, as
you say, but rather that it is illegal unless otherwise indicated to turn
at exactly the spot marked, because you "must" follow the traffic control
device indications, which is more than just signs, and those devices are
indicating that you "must" take the linking lane.

I totally accept that I'm being a major buttinsky here and probably coming
off like a huge know-it-all, and I am SO sorry about that, but, given that
whatever decision is made about whether this is right or not will live on
in the map, I totally agree with what I think the spirit of what you're
saying, which is "it needs to be correct".  I just think that the "correct"
thing is that you can't actually legally turn at that spot, just as that
turn restriction edit indicates.  If you got that far, go straight and find
another way to your destination, or turn right and expect a ticket or an
accident to happen.  Any lawyers or police officers on this list?  Their
opinions are worth WAY more than mine.  :-)  Again, I am really really
sorry to butt in.  I just like "correctness" in the map, as you clearly
do.  I totally agree with the other half of your email, that having
on-the-ground work killed by bad imagery traces is terrible.  That's why I
only edit places where I have actually put my own two feet on the ground.
 :-)

Ian


On 25 March 2017 at 21:52, Andrew Lester  wrote:

> I just discovered that user georges_telenav has been mapping turn
> restrictions in the Victoria, BC area. While some of them seem valid, there
> are hundreds of right-turn restrictions that can't possibly be based on
> either Mapillary or OpenStreetView as stated below, because these
> restrictions simply