Overview
What this challenge is about.
Receive the graph (nodes with lat/lon/elevation, edges with length and slope) and 50 origin-destination test pairs. Implement Dijkstra's algorithm with a custom edge-weight function: weight = length * (1 + alpha * max(0, slope_percent)). Tune alpha against the 50 pairs (pick a value that produces noticeably easier routes without obviously absurd detours). Bonus: implement A* with a straight-line + elevation-adjusted heuristic and compare runtime. Deliver the implementation, a results table on the 50 pairs (baseline shortest-path vs. tuned), and a 3-page memo on the alpha-tuning approach.
The Brief
What you'll do, and what you'll demonstrate.
Implement custom-weight Dijkstra on the city graph and tune the elevation-penalty parameter to produce defensibly easier routes on 50 test pairs.
Earning criteria — what you'll demonstrate
- Implement Dijkstra's algorithm from scratch on a real city graph
- Design a custom edge-weight function that respects domain constraints
- Tune a single parameter against a representative test set
- Compare graph search algorithms on runtime and result quality
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
Careers
Roles this prepares you for.
Real titles. Real skill bridges. Pick the one closest to your trajectory.
Career mappings coming soon.