[OSRM-talk] Add costs on route sections.

Stephen Woodbridge woodbri at swoodbridge.com
Fri Sep 30 01:25:04 UTC 2016


Hi Pedro,

The way OSRM works is that you have to prepare the data before 
generating the route. You can probably modify the prepare process by 
writing additions to the LUA scripts it calls. But for large coverage 
areas the prepare step takes a lot of time.

You also mentioned that this is a web based application, so typically 
all web clients have to use the same routing instance which may be ok if 
you application does not expect each web user to be able to have their 
own privately modified graph for routing. For example if the route 
modification is a server process and all web client use the same 
modified graph then you would be ok.

But is each web client can modify the the graph based on their input and 
then expects to solve the graph for a route based on their local 
modifications, you probably don't want to use OSRM, something like 
pgRouting might be more appropriate.

Others on the list can probably offer more detailed suggestions on where 
to look for examples of code to change the graph prepare process. I 
believe some work has been done to support traffic feeds and this sounds 
like it is very similar to that.

-Steve

On 9/29/2016 8:19 PM, Pedro Luiz Cumino wrote:
> Hello all,
>
>
> I'm a new user of the ORSM engine. I can run the basic setup and the server.
>
>
> I'm working in build a route engine for web purpose in order to avoid
> certain areas.
>
>
> I'm wondering if it's possible to add costs to a certain group of route
> sections. This costs must be considered during the route
> calculation. The idea is better explained below:
>
>
> I have the report coming from an external service, which comes as a JSON
> object. It informs me the location where a sensor is present and must be
> considered when calculating the route, like a cost to the lane stretch
> pointed by the latitude and longitude from the sensors JSON object. The
> sensors classify the region as *high*, *medium* or *low* level of
> pollution. I need to set this cost to the lane stretch and then compare
> if it's worthwhile to select the lane stretch where the issue is present
> or if select another route is a better decision.
>
>
>
> How open is the route solver service in order to implement this kind of
> cost over a route? The idea at the end is to select the lower cost route
> by comparing the issue level, the time travelling and the travelled
> distance using my own algorithm.
>
>
>
> The Figures 1 and 2 illustrate what I'm looking for. Figure 1 shows the
> route A as the best one to be chosen, even with an issue place on it
> (the issue with the lowest level). The route B is the worst since it has
> the highest issue level/cost. The route D is possible to reach the end,
> but the cost would be too high to be chosen, what makes it the worst
> route. Figure 2 shows the route B as the best route to be chosen because
> the cost of the issue on B is lower than the cost that the total
> distance of D represents.
>
>
>
> Figure 1
> <https://geonet.esri.com/servlet/JiveServlet/showImage/2-630854-217931/route-solution.gif>
>
>
>
> Figure 2
> <https://geonet.esri.com/servlet/JiveServlet/showImage/2-630854-217935/route-solution-withBarriers.gif>
>
>
>
>
>
>
>
> In summary, I need a way to insert a cost to certain routes (using the
> information from coming from another service) and then calculate the
> route considering such costs. At the end, the algorithm to be
> implemented will consider both issues and route distances.
>
>
> Which files should I modify in order to accomplish it? Where can I find
> the routing algorithm used by the engine?
>
>
>
> Thanks in advance!
>
>
> --
> Atenciosamente,
> Kind regards,
>
> Pedro Luiz Cumino.
>
>
> _______________________________________________
> OSRM-talk mailing list
> OSRM-talk at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
>


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus




More information about the OSRM-talk mailing list