road-network-link-prediction
Research work which explores the application of link prediction methods on road networks.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.0%) to scientific vocabulary
Keywords
Repository
Research work which explores the application of link prediction methods on road networks.
Basic Info
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
About
In this proof-of-concept project ideas of link prediction were applied to try to predict which points in a real-world road network should be connected. Link prediction is a discipline originating from social networks, and not a lot of previous work experimented with applying its methods to road networks. Missing roads would be predicted using different features and a random forest classifier trained for a given network. Check out the seminar paper for more details on the approach and results.
Installation
- clone the repository via
git clone https://github.com/Impelon/road-network-link-prediction.git - optionally use
virtualenvto make a virtual environment for python-packages - open
code-folder in terminal - install dependencies via
pip3 install -r pip-requirements.txt - The project uses Dgraph to demonstrate compatability with industry-grade graph databases.
This also allows storing multiple road networks in the same database. For some simpler functionalities Dgraph is not required, but the link prediction assumes a draph instance is running.
You can install it as a docker container:
docker pull dgraph/dgraph:v20.03.0mkdir -p ~/dgraphdocker run -it -p 5080:5080 -p 6080:6080 -p 8080:8080 -p 9080:9080 -p 8000:8000 -v ~/dgraph:/dgraph --name dgraph dgraph/dgraph:v20.03.0 dgraph zero
Usage
The python scripts in the code folder provide a small usage header, please consult them for further details by supplying a --help flag.
- In general the workflow starts by staring the Dgraph database, here via the docker image:
./control_dgraph_docker.sh start - Import a simplified road network into the database:
python3 network_to_dgraph_json.py -a -d "Technische Universität Berlin, Berlin" - Optionally render the imported graph:
python3 render_graph.py "Technische Universität Berlin, Berlin" - Collect features from the graph and train some classifiers, saving the trained classifier in the given location:
python3 predict_links.py data-and-model-folder "Technische Universität Berlin, Berlin" - Evaluate link prediction similarity scores, including the trained classifiers:
python3 evaluate_link_prediction.py data-and-model-folder
A trained classifer can also be used to predict roads on an entirely new graph using classifier_predict_links.py.
Owner
- Name: Ovi Tătar
- Login: Impelon
- Kind: user
- Location: Berlin
- Repositories: 16
- Profile: https://github.com/Impelon
Python is the source of all good. We accept Rust in this household.
Citation (CITATION.cff)
cff-version: 1.2.0
title: "road-network-link-prediction"
message: "If this research is useful to you please cite this, and leave me a message if you want!"
authors:
- given-names: "Ovidu Victor"
family-names: "Tătar"
email: "research@ovi-tatar.de"
preferred-citation:
title: "Inferring road network structure using link prediction"
type: unpublished
authors:
- given-names: "Ovidu Victor"
family-names: "Tătar"
email: "research@ovi-tatar.de"
url: "https://github.com/Impelon/road-network-link-prediction/releases/tag/v1.1"
date-released: "2021-04-07"
GitHub Events
Total
Last Year
Committers
Last synced: almost 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Ovi T. (Impelon) | o****r@g****m | 10 |
| GitHub Action | a****n@g****m | 3 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: almost 2 years ago
All Time
- Total issues: 0
- Total pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: 1 minute
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: 1 minute
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- Impelon (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- ad-m/github-push-action v0.6.0 composite
- xu-cheng/latex-action v2 composite
- actions/checkout v2 composite
- svenstaro/upload-release-action 2.2.0 composite
- joblib ==0.16.0
- networkx ==2.4
- numpy ==1.19.0
- osmnx ==0.15.1
- pydgraph ==20.3.1
- scikit-learn ==0.23.2