[pgrouting-users] Shortest Path Shooting-Star Ignore Reverse Cost
Stephen Woodbridge
woodbri at swoodbridge.com
Mon Jan 30 16:20:48 EST 2012
The turn restrictions are handled differently in TRSP. You need to have
a table like:
target_edge_id (int4), to_cost(float8), via_path (text)
This is a replacement for the rule and at the moment
via_path := reverse(rule)
so if your rule = 1,2,3,4 then via_path = 4,3,2,1
I think that this will eventually change to be consistent with
shooting_star and the rule.
I believe that the way to interpret this is to apply the to_cost if the
current edge it target_edge_id and prior edge was 4, and 3 before that,
and 2 before that, and 1 before that. So the cost would NOT be applied
given this rule if the path was current_edge, 4, 3, 7 for example.
You may have multiple rules for a given target_edge_id.
-Steve
On 1/30/2012 4:00 PM, Jorge Eliécer Osorio Caro wrote:
> Hi Steve,
>
> I compile that version but i dont know very well the params that i need
> to send to:
>
> now we have via_path, means that edges where i can have access? its in
> replacement of rule?
> now we have that parameter to:
>
> sql text,
>
> source_id integer,
>
> target_id integer,
>
> directed boolean,
>
> has_reverse_cost boolean,
>
> turn_restrict_sql text)
>
>
> turn_restrict_sql what i need to pass there?
>
> i have something like this:
>
> SELECT * FROM turn_restrict_shortest_path( 'SELECT
> routing.network.segment as id, routing.network.source,
> routing.network.target, routing.network.length as cost,
> routing.network.reverse_length as reverse_cost, routing.network.x1,
> routing.network.y1, routing.network.x2, routing.network.y2,
> routing.network.rule as via_path, routing.network.to_cost FROM
> routing.network', -- node_from, node_to 15365, 15366, --15242, false, --
> directed true, -- reverse_cost '¿?' )
>
> thanks steve.
>
>
>
>
>
>
> 2012/1/30 Stephen Woodbridge <woodbri at swoodbridge.com
> <mailto:woodbri at swoodbridge.com>>
>
> Jorge,
>
> I have posted a few times on this problem, you can check the
> archives. The short story is the shooting star is broken. I think
> the last version that worked is 1.03. In my posts is also some
> information on a new algorithm turn_restricted_shortest_path (trsp)
> that is in a branch. The current code in a git branch works but is
> likely to see changes before it is released, but we do not have a
> release plan yet.
>
> -Steve
>
> On 1/30/2012 2:30 PM, Jorge Eliécer Osorio Caro wrote:
>
> Im having a issue when try to calculate the shortest path using turn
> restricctions this functions ignores the reverse_cost param.
>
> here the SQL:
>
> |SELECT
>
> *
>
> FROM
>
> shortest_path_shooting_star(
>
> 'SELECT
>
>
> routing.network.segment as id,
> routing.network.source,
> routing.network.target,
> routing.network.length as cost,
> routing.network.reverse_length as reverse_cost,
>
>
> routing.network.x1,
> routing.network.y1,
> routing.network.x2,
> routing.network.y2,
>
> routing.network.rule,
> routing.network.to_cost
>
>
> FROM
> routing.network',
>
>
> -- node_from, node_to
>
> 15365,
>
> 15366,
>
> --15242,
>
>
> false, -- directed
>
> true-- reverse_cost
>
> )
>
> |
>
> this generate that route:
>
> http://cl.ly/ 242E2T0A2C410F1S0F3g
> <http://cl.ly/242E2T0A2C410F1S0F3g>
>
> that method generate the route but it ignores the one_way
> restriction ,
> the restriction is ok, but take a route where ignores that.
>
> now in the next image i need the marked red lines are the
> correct route
> because the 15229 and 15228 has both ways.
>
> http://cl.ly/ 3t2O38343F0F0C0o3P2c
> <http://cl.ly/3t2O38343F0F0C0o3P2c>
>
> here how look my table:
>
> id source target cost reverse:cost rule to_cost x1, y1, x2, y2
> 15245 9082 9150 0.02 100.00021 15214 101.00021 -74.79981 10.94605
> -74.7996 10.94605
>
> how i cant fix that i compiled the last version of pgrouting
> from git repo.
>
>
>
> ______________________________ _________________
> Pgrouting-users mailing list
> Pgrouting-users at lists.osgeo. org
> <mailto:Pgrouting-users at lists.osgeo.org>
> http://lists.osgeo.org/ mailman/listinfo/pgrouting- users
> <http://lists.osgeo.org/mailman/listinfo/pgrouting-users>
>
>
> ______________________________ _________________
> Pgrouting-users mailing list
> Pgrouting-users at lists.osgeo. org
> <mailto:Pgrouting-users at lists.osgeo.org>
> http://lists.osgeo.org/ mailman/listinfo/pgrouting- users
> <http://lists.osgeo.org/mailman/listinfo/pgrouting-users>
>
>
More information about the Pgrouting-users
mailing list