Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

https://github.com/aimacode/aima-java/wiki/AIMA3e-Using-Eclipse-IDE The 8 puzzle demo is in the directory as follows: aima-java-AIMA3e>aima-gui>src>main>java>aima>gui>swing>applications>search>games>EightPuzzleApp Please take a look at the EightPuzzleDemo.java (showing in Figure 2), EightPuzzleBoard.java, EightPuzzleGoalTest.java,

image text in transcribed

https://github.com/aimacode/aima-java/wiki/AIMA3e-Using-Eclipse-IDE

The 8 puzzle demo is in the directory as follows: aima-java-AIMA3e>aima-gui>src>main>java>aima>gui>swing>applications>search>games>EightPuzzleApp

Please take a look at the EightPuzzleDemo.java (showing in Figure 2), EightPuzzleBoard.java, EightPuzzleGoalTest.java, EightPuzzleSuccessorFunction.java files to figure out how 8-puzzle is solved in the above programming platform. Based on the 8-puzzle framework, please extend the project to solve 15-puzzle game. Your project should solve following tasks a) Implement two heuristic functions based on "Manhattan Distance" and "Misplaced Numbered Tiles" to calculate the distance between any state and the goal state for 15- puzzle (1 pt) (Please explain the implementation details in your report) b) Given any initial random state of a 15-puzzle problem, please calculate whether the goal state is reachable from this initial random state for 15-puzzle (1 pt). (Please explain the implementation of your algorithm in your report) c) For A* search, given a specific initial state, please compare the running-time performance (or # of steps) of using "Manhattan Distance" and "Misplaced Numbered Tiles". (1 pt) (Explain the results and how you implement this part in your report) d) Capture a screenshot showing the running results of your 15-puzzle program. Report the initial state, the goal state, and the movement of the tiles (1 pt). You do not need to design a GUI interface for your 15-puzzle e) A GUI interface (e.g. using Java Applet) to show a 15-puzzle. Please provide three buttons "Randomize", "Solve", "Stop" and two dropdown lists allowing users to select "Search Methods" (A* or any additional search methods) and "Heuristics" ("Manhattan Distance" or "Misplaced Numbered Tiles") (1 pt. Extra Credit) a. Randomize Randomize the tiles b. Solve -> Find solution to the current initial state and properly demonstrate the movement of the tiles to reach the goal state. i. If the goal state is no reachable from the initial state, please prompt out a window and notify users that goal state is not reachable Stop-> Stop the process Dropdown lists allowing users to make proper selections c. d. Please take a look at the EightPuzzleDemo.java (showing in Figure 2), EightPuzzleBoard.java, EightPuzzleGoalTest.java, EightPuzzleSuccessorFunction.java files to figure out how 8-puzzle is solved in the above programming platform. Based on the 8-puzzle framework, please extend the project to solve 15-puzzle game. Your project should solve following tasks a) Implement two heuristic functions based on "Manhattan Distance" and "Misplaced Numbered Tiles" to calculate the distance between any state and the goal state for 15- puzzle (1 pt) (Please explain the implementation details in your report) b) Given any initial random state of a 15-puzzle problem, please calculate whether the goal state is reachable from this initial random state for 15-puzzle (1 pt). (Please explain the implementation of your algorithm in your report) c) For A* search, given a specific initial state, please compare the running-time performance (or # of steps) of using "Manhattan Distance" and "Misplaced Numbered Tiles". (1 pt) (Explain the results and how you implement this part in your report) d) Capture a screenshot showing the running results of your 15-puzzle program. Report the initial state, the goal state, and the movement of the tiles (1 pt). You do not need to design a GUI interface for your 15-puzzle e) A GUI interface (e.g. using Java Applet) to show a 15-puzzle. Please provide three buttons "Randomize", "Solve", "Stop" and two dropdown lists allowing users to select "Search Methods" (A* or any additional search methods) and "Heuristics" ("Manhattan Distance" or "Misplaced Numbered Tiles") (1 pt. Extra Credit) a. Randomize Randomize the tiles b. Solve -> Find solution to the current initial state and properly demonstrate the movement of the tiles to reach the goal state. i. If the goal state is no reachable from the initial state, please prompt out a window and notify users that goal state is not reachable Stop-> Stop the process Dropdown lists allowing users to make proper selections c. d

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

MySQL/PHP Database Applications

Authors: Brad Bulger, Jay Greenspan, David Wall

2nd Edition

ISBN: 0764549634, 9780764549632

More Books

Students also viewed these Databases questions

Question

Select suitable tools to analyze service problems.

Answered: 1 week ago