I runfinalversion
-
Upload
- -
Category
Data & Analytics
-
view
106 -
download
0
Transcript of I runfinalversion
Here is the problem
Sometimes, I want to take a run from Lab to Home
But I want to run different miles on different days
Here is the problem
Sometimes, I want to take a run from Lab to Home
But I want to run different miles on different days
I want to run different routes on different days
Here is the problem
Sometimes, I want to take a run from Lab to Home
But I want to run different miles on different days
I want to run different routes on different days
How to find routes with targeted distances?
After Data Clean Up
103,365 Nodes, 225,766 edges
reduced to
17,480 Nodes and 49,354 edges
~ 5-fold reduction
5min->30s for path search
Path Finding Algorithm:
My home
My Lab
Starting Address: my HomeStarting Address: my LabDesired Distance: 3km
Path Finding Algorithm:Dijkstra’s Algorithm finding one shortest path
My home
My Lab
Shortest Path Length 1131m
Score
• Penalize difference in desired distance and actual distance• Penalize turns / loops / zigzags
• Penalize repetitive route
Path Finding Algorithm:Monte Carlo Heuristic perturbation of route
penalty score = 4.99path length = 1131m
My home
My Lab
Path Finding Algorithm: Monte Carloaccept improvements
penalty score = 2.95path length = 1875m
My home
My Lab
Path Finding Algorithm: Monte Carloonly accept deterioration with low probability
penalty score = 39.32path length = 8064m
My home My Lab
Path Finding Algorithm: Monte Carlobest route after 1000 iterations
penalty score = 0.495path length = 2985m
My home
My Lab
Path Finding Algorithm: Monte Carlobest route after another 1000 iterations
penalty score = 0.251path length = 3202m
My home
My Lab
Summary
• Build a route recommendation system for runners• Recommend different routes for given running distances• Customized running score• Can be easily generalized for other purposes