Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Router accuracy & performance #16

Open
ludohenin opened this issue Nov 16, 2024 · 4 comments · May be fixed by #17
Open

Router accuracy & performance #16

ludohenin opened this issue Nov 16, 2024 · 4 comments · May be fixed by #17

Comments

@ludohenin
Copy link
Contributor

ludohenin commented Nov 16, 2024

@rgrente here is a trial I made, this is not completely out of the picture, it's quite linear as you were saying. I don't (yet) interpolate Gribs data.
Comment on the track:

  1. lots of tacking
  2. useless exploration
    • I'm wondering if scanning the best route along the way and constrain the isochrones exploration around that route would make sense (I've seen router working this way)
  3. performance wise it took ~2min to generate it with 84 steps
    image
@ludohenin ludohenin changed the title Router accuracy Router accuracy & performance Nov 16, 2024
@dakk
Copy link
Owner

dakk commented Nov 18, 2024

When saying that you are not interpolating GRIB what do you mean? Did you put a constant wind from south?

  1. no idea about the lots of tacking occuring at the beggining, anyway I don't know wind information
  2. it is useless only because you found wind along the route; if there's not wind between Africa and Canaries, you won't find a route. Anyway, a router that uses this technique is welcome in the repo if you want to implement it
  3. I know, I should take care of it; the main problem is that (if I remember correctly), for each phase of the isochrones calculation and for every point of the previous phase, it calculates new isochrones; so the resources required are somehow exponential. Points at each phase are already filtered, but I think it can be improved

@ludohenin
Copy link
Contributor Author

By interpolating, I mean ... well interpolating twa & tws across gribs. The grid is quite large for degree based resolution (116km) and you can have significant gap between the surrounding forecast, it's better then to interpolate. This is not perfect as it's linear but better than not doing it.

         1      2           
        fi  i   ci          
         | =1.4 |           
      ---G--|---G--- fj 8   
    j ___|_ .   |           
  =8.3   |      |
      ---G------G--- cj 9   
         |      |    

@dakk
Copy link
Owner

dakk commented Nov 19, 2024

Ok, got it. In #17 I also add an optimization for performances:

  • concurrency is disabled by default (which is slower than the non concurrent version)
  • there is a new param for increase filtering of computed iso points, default is 1 but you can change it with:

routing_obj.algorithm.setParamValue("subdiv", 2)

give it a try

@dakk dakk linked a pull request Nov 19, 2024 that will close this issue
@ludohenin
Copy link
Contributor Author

Excellent 👍 , I've have a look during the week-end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants