[pgrouting-users] pgr_apspjohnson algorithm
Helder Alves
helderalvespt at gmail.com
Sun Jan 5 21:11:56 PST 2014
Hi,
I was able to make pgr_apspjohnson work but came to the conclusion that
when we have available a valid distance matrix suitable for TSP/VRP it
makes no sense to feed anything else to pgr_tsp or pgr_vpronedepot as the
results will be suboptimal.
Regarding pgr_vrponedepot I was able to also make it work however I guess I
stumbled on several issues:
- Depot open/close time seems to not be obeyed;
- Traveltime also seems to not being considered between departure and
arrival time every time;
- After each query I have to restart PostgreSQL as last query result
seems to be stuck "somewhere" (memory?) and all subsequent queries return
the very same result;
- When I have to cancel some running query, cancelling procedure takes
forever and the only way I found to stop it is by killing postgresql
process.
As some of these issues are too serious, I'm not sure if my merging & build
may have some problem...
If someone want to get a look, I've merged several Steve's develop tree
with Daniel's develop-vrp, and also merged by hand some other small fixes
and contributions I found interesting like Dave Potts and others, that I'm
testing as I have free time. You can find everything here:
https://github.com/ZupoLlask/pgrouting/tree/develop.
--
Helder Alves
On Sun, Jan 5, 2014 at 8:28 PM, Helder Alves <helderalvespt at gmail.com>wrote:
> Hi Steve,
>
> I'm already beyond that stage but thanks anyway! ;-)
>
> Steve/Daniel,
>
> Regarding my assumptions regarding pgr_apspjohnson, they seem to be wrong.
> Can you please elaborate a little bit on exactly which data must be fed
> into pgr_apspjohnson?
>
> From the pgRouting examples I read, it seems to return the equivalent to
> the distance matrix used by pgr_TSP however I don't understand exactly
> which part of a routable table must be queried in a viable way for an
> algorithm to be able to infer which nodes have to be routed. Can you help
> me with this one?
>
> Thanks!
>
> --
> Helder Alves
>
>
> On Sun, Jan 5, 2014 at 7:52 PM, Stephen Woodbridge <
> woodbri at swoodbridge.com> wrote:
>
>> On 1/5/2014 2:16 PM, Helder Alves wrote:
>>
>>> Hi Daniel,
>>>
>>> Regarding pgr_apspjohnson, I came to the conclusion that SQL query
>>> passed into pgr_apspjohnson must already return a shortest path distance
>>> matrix including all the stop points we want to optimize. Am I getting
>>> it right?
>>>
>>> What I'm about to try now is to unnest the distance matrix generated for
>>> pgr_TSP to feed pgr_apspjohnson...
>>>
>>
>> You might be able to use something like this to convert the distance
>> matrix into a table:
>>
>> with dm as (
>> select '{{1,2,3,4,5},
>> {6,7,8,9,10},
>> {11,12,13,14,15},
>> {16,17,18,19,20},
>> {21,22,23,24,25}}'::int[] as dm
>> )
>> select i, j, dm.dm[j][i]
>> from generate_series(1, 5) i,
>> generate_series(1, 5) j,
>> dm;
>>
>> -Steve
>>
>> Problem was that from all my previous reading I thought that at some
>>> point APSP Johnson would itself generate the routing graphs, what seems
>>> not to be the case, if my understanding from the source code is right...
>>> Meaning APSP Johnson only takes care of the total route minimum cost
>>> (permutations) avoiding the problem of TSP with negative costs.
>>>
>>> Please let me know if I made foolish assumptions! :-)
>>>
>>> --
>>> Helder Alves
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Pgrouting-users mailing list
>>> Pgrouting-users at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>>
>>>
>> _______________________________________________
>> Pgrouting-users mailing list
>> Pgrouting-users at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/pgrouting-users
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pgrouting-users/attachments/20140106/9c8a777e/attachment.html>
More information about the Pgrouting-users
mailing list