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

Network simplifier #263

Open
Art-Ev opened this issue Jul 5, 2021 · 3 comments
Open

Network simplifier #263

Art-Ev opened this issue Jul 5, 2021 · 3 comments
Labels
Contribution opportunity Might be a good opportunity for somebody to contribute to AequilibraE enhancement New feature or request

Comments

@Art-Ev
Copy link
Contributor

Art-Ev commented Jul 5, 2021

Have done a prototype of automatic network simplifier (create a new "optimized network" from the actual) on QGIS via QGIS functions but performance is really really awefull... but maybe a function could be created directly in AequilibraE package for a future update.

How it could work :

  1. Identify nodes connecting only 2 links

Then, for each identified node :

  1. check that the 2 connected links (could have been changed by a previous optimisation) have identical modes, capacity, directions and type (to exclude connectors) + other necessary field (for generalized cost time, VD parameters, etc)

  2. If ok, merge the two links and go to next node

@pedrocamargo
Copy link
Contributor

@Art-Ev , this can definitely be done better directly into AequilibraE. But what's the objective? AequilibraE will not be made substantially faster with this (the network is simplified in memory for assignment).
Also, if you are looking for nodes connecting exactly two links, working from the query below would be the way to go:

select sum(tot) tot , node from ( select count(*) tot, a_node node from Links group by a_node union all select count(*) tot, b_node node from Links group by b_node) group by node

@Art-Ev
Copy link
Contributor Author

Art-Ev commented Jul 6, 2021

@pedrocamargo, the objective is to simplify the network for the user : for different local adjustments it will be easier to work with a simpler network. I think that smaller outputs after affectation and less links to manage in general is also a way to make the work around a model more comfortable

@pedrocamargo
Copy link
Contributor

Fair enough, @Art-Ev . This "merging" of links would have to be done with somewhat detailed parameters, however.

  • A list of fields that need to match would need to be provided
  • Aggregation rules for the other fields would need to be created (example)
    • Travel times for links should be summed
    • Speeds should be the minimum
    • Name should be the first non-null

These are configurations that could be put in the model parameters file (and used also for splitting links), so I would say we need to design the parameters file as well as the API for doing so.

@pedrocamargo pedrocamargo added Contribution opportunity Might be a good opportunity for somebody to contribute to AequilibraE enhancement New feature or request labels Nov 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Contribution opportunity Might be a good opportunity for somebody to contribute to AequilibraE enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants