[pgrouting-dev] Multiple Turn Restrictions?

I'm reposting this old thread for Jay's benefit. Unfortunately the the old links to postlbs.org no longer work and I do not see the content on the new sight.

-Steve

On 8/19/2008 10:40 AM, Stephen Woodbridge wrote:

http://pgrouting.postlbs.org/ticket/124

Stephen Woodbridge wrote:

Hi Anton,

Thank you for your responses and enlightenment. I have updated two wiki
pages to include some of this additional explanation. When you have a
chance could you check and make sure I stated thinks correctly and
completely.

Added some info on Graphs, Directed, Undirected, and reverse costs.
http://pgrouting.postlbs.org/wiki/TopologyCreation

Added info on multiple turn restrictions:
http://pgrouting.postlbs.org/wiki/ShootingStar

It seems, like it would be better to add some additional parsing and
syntax to the rule column to support multiple restriction, rather than
adding multiple rows. For example, rule could be:

rule 1 rule 2 rule N
-------------- -------------- ...
<edge>[,<edge>][;<edge>[,<edge>]]*

this would allow any of the following rows

4
14,4
4;12
14,4;12
etc

Anyway, it is a thought for an improvement. I can open a ticket if you like.

Best regards,
    -Steve

Anton Patrushev wrote:

You just need to add one more row for that edge.
Like this:

  gid | source | target | cost | x1 | y1 | x2 | y2 | to_cost | rule
  -----+--------+--------+------+----+----+----+----+---------+------
  11 | 3 | 10 | 2 | 4 | 3 | 4 | 5 | 1000 | 4
  11 | 3 | 10 | 2 | 4 | 3 | 4 | 5 | 1000 | 12

And then you always need to order your data by gid when you load it to
a shortest path function..

Anton.

On Mon, Aug 18, 2008 at 11:06 PM, Stephen Woodbridge
<woodbri@swoodbridge.com> wrote:

Anton,

Ok, that makes sense, but I still do not see how to specify multiple
restrictions for a single edge. For example in the graph below how to I
specify the cost of going from either edge EB(4) or CB(12) to edge DB(11) is
1000. Both of these turns should be disallowed.

-Steve

PS: Sorry looks like the list is still broken regardless of what email I
send it to.

Anton Patrushev wrote:

Steve,

Here is the table for your case:

  Edge | Source | Target | Cost | to_cost | rule
  AB | A | B | 1 | 1000 | EB
  BC | B | C | 1 | 1000 | DB
  EB | E | B | 2 | 1000 | BC

and nothing more.

  gid | source | target | cost | x1 | y1 | x2 | y2 | to_cost | rule
-----+--------+--------+------+----+----+----+----+---------+------
  12 | 3 | 10 | 2 | 4 | 3 | 4 | 5 | 1000 | 14, 4

This means completely different things.
For example, you have a graph like this:

         C
          |
A-------B--------E--------F
          | |
         D |
                    G

where edge ids are:
AB: 10
BC: 12
BD: 11
BE: 4
EF: 2
EG: 14

So, the restriction we have describes a way 14->4->12 (G->E->B->C)
which is restricted (has cost 1000).

Anton.
_______________________________________________
Pgrouting-users mailing list
Pgrouting-users@lists.postlbs.org
http://lists.postlbs.org/mailman/listinfo/pgrouting-users

_______________________________________________
Pgrouting-users mailing list
Pgrouting-users@lists.postlbs.org
http://lists.postlbs.org/mailman/listinfo/pgrouting-users

_______________________________________________
Pgrouting-users mailing list
Pgrouting-users@lists.postlbs.org
http://lists.postlbs.org/mailman/listinfo/pgrouting-users

_______________________________________________
Pgrouting-users mailing list
Pgrouting-users@lists.postlbs.org
http://lists.postlbs.org/mailman/listinfo/pgrouting-users