Path Finder-B
Path Finder-B
Problem statement
A celebrity has planned to give his/her live performance in Mumbai. He/she needs to travel from
Kolkata to Mumbai by their own vehicle due to the safety reasons. Create an algorithm to help them to
reach the destination with optimal cost. The cost factor may be attributed by fuel consumption, time
taken and/or expected speed on a particular route which are depicted in the below map. By using the
information provided for each city. Use the following algorithm to solve the problem:
Note 1:
1. Latitude and longitude per node are given in the below table.
[Hint: Use the ‘haversine’ formula to calculate the great-circle distance between two points
– that is, the shortest distance over the earth’s surface between two points. Using the latitude
and longitude data for the cities as shown in following map and create a function which
calculates the heuristic distance from each city to the destination city. Refer link
https://www.movable-type.co.uk/scripts/latlong.html for more information on Haversine
formula]
2. Between every pair of states, parameters = (Fuel-L, Speed-KM/H, time expected-Hours) is
given for each edge.
3. Take linear combination of the relevant cost parameters for your cost design without the loss
of information.
1. Explain the PEAS (Performance measure, Environment, Actuator, Sensor.) for your agent. (20%
marks)
2. Use Depth First Search and Iterative Deepening A* search and implement the algorithms in
PYTHON. Compare to interpret the results in terms of the algorithm working, performance &
shortest path if obtained relevant to the given problem. (20+20=40% marks)
3. Print the path, and the total cost of the path. (20% marks)
4. Include code in your implementation to calculate the space complexity and time complexity and
print the same. (20% marks)
Note 2:
You are provided with the python notebook template which stipulates the structure of code and
documentation. Use well intended python code.
Use separate MS word document for explaining the theory part. Do not include theory part in the
Python notebook except Python comments.
The implementation code must be completely original and executable.
Please keep your work (code, documentation) confidential. If your code is found to be
plagiarized, you will be penalized severely. Parties involved in the copy will be considered equal
partners and will be penalized severely. Collaboration among different group members will also
be considered as plagiarism.