[pgrouting-dev] Question on current implementation of VRPPWT algorithm
Stephen Woodbridge
woodbri at swoodbridge.com
Sat Jul 11 17:48:54 PDT 2015
Hello Miguel,
I'm putting this response on the pgRouting dev list so others can learn
from it also.
On 7/11/2015 7:44 PM, Miguel Ángel Jiménez Achinte wrote:
>
> Dear Mr. Woodbridge,
>
> I am Miguel Jiménez, a master student at Icesi University (Colombia),
> and I would be grateful if you could provide some information on the
> following:
>
> I have been doing some research on implementations solving the Pick up
> and Deliver problem; until now I found the DARP function in pgrouting
> 1.x and a gsoc implementation in the pgrouting 2 repository. However, I
> had some problems compiling the first one, and I am getting a weird
> connection lost error with the second one (sometimes when I try the
> function).
This code was developed by a Google Summer of Code student, so you
testing and functionality might be very limited.
The lost connection issue is because the code is generating a segv error
somewhere in the code. You should be able to debug this and get a stack
trace.
start psql and connect to your database
select pg_backend_pid();
then in another window
sudo gdb --pid=<pid from query above>
continue
Back in you psql window run your sql query
when it crash you will get a message in the gdb window
type bt<return> to get a back trace of the calling stack
then you can look through the called functions and see what variables
look bad and maybe determine why. If you are not familiar with gdb find
a tutorial and read through it.
> I noted that some days ago you started to work in the gsoc branch of
> pgrouting, I was wondering if you can give me some advice about the
> error I am receiving. Is it because of the implementation? I know it is
> an experimental branch, but I would like to be sure it is not my
> environment.
Yes it was a first step toward moving the code into rev 2.1 or 3.0. I'm
sure the code needs some review and fixes and more test cases. It would
be great if you wanted to do some work on it and improve the code.
> I am testing the test case in the project:
>
> select * from pgr_gsoc_vrppdtw('select * from customer order by
> id'::text, 25,200);
I have not looked at this code in a while so I'm afraid that I won't be
much help at the moment.
> I also noted that you are currently working in another implementation,
> do you know if there is a plan by the pgrouting team to implement this
> functionality? I look forward to hear good news on this topic, thanks in
> advance.
Yes, a couple of us were working on a VRP problems in
https://github.com/woodbri/vehicle-routing-problems
We started working on a pickup and delivery problem solution but had to
stop to complete the trash collection problem. I'm not sure if the
pick-deliver code even works anymore because there have been a lot of
changes in the baseClasses while we were working on the trash collection
problem and we have not compiled and tested pick-deliver in a long time.
Regarding pgRouting functionality, we would like to have some basic VRP
solvers available, but since we have to work to pay the bills and keep
the lights on, it is hard to find time to work on these projects without
some source of funding.
If you want to work on this as part of your University projects we would
be happy to take a pull request and give what help we can.
Best regards,
-Steve
> Sincerely,
>
> *Miguel Ángel Jiménez Achinte
> *Young Researcher, i2T/DRISO research team
> +57 (2) 555 2334 ext. 8672
> Universidad Icesi
More information about the pgrouting-dev
mailing list