Find a path between two state capitals

Assignment Help Python Programming
Reference no: EM133020967

Problem description:

Consider the graph presented below (fig. 1). Each node represents a single state (or the District of Columbia (DC)). If two states are neighbors, there is an edge between them.

561_figure.jpg

Figure 1: A graph representing all 48 contiguous US states and District of Columbia.

Assume that edge weights represent driving distances between state capitals.

Your task is to implement in Python two informed search algorithms:

• Greedy Best First Search algorithm, and
• A* algorithm,

and apply them to find a path between two state capitals using provided data.

Your program should:
• Accept two (2) command line arguments corresponding to two states / state capitals (initial and goal states) so your code could be executed with

python cs480_P01_AXXXXXXXX.py INITIAL GOAL

where:

• cs480_P01_AXXXXXXXX.py is your python code file name,
• INITIAL is the label/name of the initial state,
• GOAL is the label/name of the initial state.

If the number of arguments provided is NOT two (none, one, or more than two), your program should display the following error message:

ERROR: Not enough or too many input arguments. and exit.

• Load and process both input data files provided (assume that input data files are ALWAYS in the same folder as your code - this is REQUIRED!). Make sure your program is flexible enough to accommodate different input data sets (with a different graph of states and distances). Your submission will be tested using a different set of files!
• Run Greedy Best First Search and A* algorithms searches to find a path between INITIAL and GOAL states and measure execution time (in seconds) for both methods.
• Report results on screen in the following format:

Last Name, First Name, AXXXXXXXX solutiocxn:
Initial state: INITIAL
Goal state: GOAL

Greedy Best First Search:
Solution path: STATE1, STATE2, STATE3, ..., STATEN-1, STATEN
Number of states on a path: X1
Path cost: Y1
Execution time: T1 seconds

A* Search:
Solution path: STATE1, STATE2, STATE3, ..., STATEN-1, STATEN
Number of states on a path: X2
Path cost: Y2
Execution time: T2 seconds

Attachment:- Programming Assignment.rar

Reference no: EM133020967

Questions Cloud

What is the size of the monthly payment : What is the size of the monthly payment - $14,000 loan at 6% compounded monthly is repaid by monthly payments over four years
Determine how much is the stock worth : Assume that the annual dividend grows at a constant rate of 8% indefinitely instead of the supernormal growth. How much is the stock worth
Is the proposed change in policy worth implementing : The company finances working capital from an overdraft at a cost of 15 per cent. Is the proposed change in policy worth implementing
Prepare the current liabilities section of balance sheet : Concord is involved in a lawsuit. Legal counsel feels it is probable Concord will pay damages of $28,000 in 2022. Prepare the current liabilities section
Find a path between two state capitals : Find a path between two state capitals - algorithms searches to find a path between INITIAL and GOAL states and measure execution time (in seconds)
Compute product costs and period costs : The Putney Company reports the following information: Depreciation on factory equipment 4,700. Compute product costs and period costs
What is the most you should pay for the stock now : You are considering buying common stock in Grow On, Inc. The firm yesterday paid a dividend of $5.30. What is the most you should pay for the stock now
What is the breakeven number of bed days : What if the number of additional bed days were as low as 80 or as high as 175? What is the breakeven number of bed days
Determine what kuhn company WACC will be for this project : The company is projected to grow at a constant rate of 9.2%, and they face a tax rate of 40%. Determine what Kuhn Company's WACC will be for this project

Reviews

Write a Review

Python Programming Questions & Answers

  Write a python program to implement the diff command

Without using the system() function to call any bash commands, write a python program that will implement a simple version of the diff command.

  Write a program for checking a circle

Write a program for checking a circle program must either print "is a circle: YES" or "is a circle: NO", appropriately.

  Prepare a python program

Prepare a Python program which evaluates how many stuck numbers there are in a range of integers. The range will be input as two command-line arguments.

  Python atm program to enter account number

Write a simple Python ATM program. Ask user to enter their account number, and print their initail balance. (Just make one up). Ask them if they wish to make deposit or withdrawal.

  Python function to calculate two roots

Write a Python function main() to calculate two roots. You must input a,b and c from keyboard, and then print two roots. Suppose the discriminant D= b2-4ac is positive.

  Design program that asks user to enter amount in python

IN Python Design a program that asks the user to enter the amount that he or she has budget in a month. A loop should then prompt the user to enter his or her expenses for the month.

  Write python program which imports three dictionaries

Write a Python program called hours.py which imports three dictionaries, and uses the data in them to calculate how many hours each person has spent in the lab.

  Write python program to create factors of numbers

Write down a python program which takes two numbers and creates the factors of both numbers and displays the greatest common factor.

  Email spam filter

Analyze the emails and predict whether the mail is a spam or not a spam - Create a training file and copy the text of several mails and spams in to it And create a test set identical to the training set but with different examples.

  Improve the readability and structural design of the code

Improve the readability and structural design of the code by improving the function names, variables, and loops, as well as whitespace. Move functions close to related functions or blocks of code related to your organised code.

  Create a simple and responsive gui

Please use primarily PHP or Python to solve the exercise and create a simple and responsive GUI, using HTML, CSS and JavaScript.Do not use a database.

  The program is to print the time

The program is to print the time in seconds that the iterative version takes, the time in seconds that the recursive version takes, and the difference between the times.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd