Your Task
In this assignment, you will implement a map navigation solution for wheelchair users.
Many people use a navigation program like Google Maps. However, no program currently supports planning a route specifically for wheelchair users. While Google Maps provides information on the accessibility of certain locations, it does not consider factors such as kerb ramps, sidewalk width, slope, and indoor lifts.
Objective: The objective of this assignment is to implement the A* algorithm for wheelchair map navigation.
Prepare a wheelchair-friendly map (P/C-level Task)
Create a map of wheelchair-accessible routes and locations in your local area, for example, your campus or your local shopping centre. You can use tools such as Google Maps or OpenStreetMap to mark wheelchair-friendly routes and points of interest such as accessible restrooms, car parks, and kerb ramps. The map may include information on the slope of sidewalks, the presence of obstacles or barriers, and any other relevant accessibility features. You may conduct an onsite inspection, use your own experience and online resources, or collaborate with local disability organisations to gather information for the map.
You should discuss the process of creating it.
Implement map navigation (P/C-level Task)
Implement the A* algorithm for wheelchair map navigation. You may create a simplified environment, with an adjacency matrix representing the connections between locations and the cost/speed of travel. Justify the heuristic you choose.
Test the implementation with different start and end points. Verify that the path returned is valid and optimal.
Compare heuristics (D-Level Task)
Try different heuristics. Explain the pros and cons of each heuristic.
Record and compare the search efficiciency of different heuristics.
Fine-tune the performance (HD-level Task)
Implement another algorithm, such as Contraction Hierarchies or Transit Node Routing, and compare its performance to your A* implementation.
Characterise the conditions under which the alternative algorithm is more efficient.
Graphical user interface (Optional Bonus Task)
Create a graphical user interface that allows the user to input the start and end points of the path and to visualise the path on the map. The user interface should also display additional information about the path, such as the estimated time to traverse it and any obstacles or landmarks that may be encountered along the way.




