mbasa / pgrServer

Routing service that uses pgRouting topologies and is loaded to a JGraphT graph for fast searches even with very dense networks such as OpenStreetMap (OSM) dataset.
GNU General Public License v3.0
26 stars 11 forks source link

Turn restricted shortest path (TRSP) #8

Open DavidPavlicek opened 1 year ago

DavidPavlicek commented 1 year ago

Hi Mario, this project looks amazing. It solves almost all of our pgr hurdles. We were just considering writing something similar to pgrServer, but now we don't have to ;). But there is one major feature missing for us and that is support for some kind of TRSP algorithm (like pgr_trsp). Do you have any plans to support TRSP algorithm?

mbasa commented 1 year ago

Hello David.

Yes, I do have plans on supporting Turn Restrictions, but not immediate. As of now, I am concentrating on Dynamic Costs without a Graph reload which can be seen in my develop branch.

But if you are open to developing the TRSP together, I will truly appreciate the help so that we can start development much sooner.

Regards,

Mario.

DavidPavlicek commented 1 year ago

I'm not Java developer nor experienced in graph theory. So I don't really have much value to offer here. But it is good to hear that this is in the roadmap. The dynamic cost is also a great feature. I'm part of a small team in a large government organization and frankly, routing is a "nice to have" feature, but at this point in time, it is not critical. Maybe in the future, we will be able to allocate more resources to this area.

mbasa commented 1 year ago

Ok, will inform you when I do manage to include turn restrictions into pgrServer.

But if you truly need turn restrictions immediately, I also wrote a PostGIS reader for GraphHopper, another fast routing engine with full support for turn restrictions. With the PostGIS reader, custom data (i.e. non-OSM road networks or networks with very specific or dynamic costs) can be read into GraphHopper from PostGIS. And since the data is in PostGIS, QGIS can be used to edit turn restrictions (i.e. only for today restrictions, etc.) which might make it as flexible as PgRouting. Anyway, just a fyi.

The PostGIS reader for GraphHopper is here:

https://github.com/mbasa/graphhopper-reader-postgis

DavidPavlicek commented 1 year ago

Thank you, definitely take a look at that...