TO FIND THE NEXT OR DIFFERENT PROJECT CLICK ON THE SEARCH BUTTON ON THE TOP RIGHT MENU AND SEARCH USING COURSE CODE OR PROJECT TITLE.
$15
1. Introduction This homework will focus on symbolic task planning. We will be building on the example domain code provided in the lectures. We will begin by expanding the set of allowed actions. We will then implement a discrete search algorithm to find a plan. 2. Propositional States and Actions We want to expand the set of actions in the example to include three more: 1. The robot can move to a pantry if it is in the kitchen 2. The robot can move to the kitchen if it is in the pantry 3. The robot can cut fruit if the robot, knife, and fruit are in the kitchen and the fruit has not been cut. Look for the TODOs in the code and complete the preconditions and effects for these new Actions. 3. Discrete Search We now want to search for a plan from the initial state to a goal state. The initial state and goal conditions are already defined in the Python script. To begin with, create a Dijkstra search to find a plan at the corresponding TODO. Next, adapt the search to an A* search. We have provided a heuristic for this domain. The heuristic computes the cost to go (i.e., the number of steps to go) for a robot that can teleport objects to itself from any room in the house and then to any other room. It can also teleport itself and use psionics to cut fruit in any room from anywhere. The heuristic robot should be formidable and admissible. Submission: For this homework, submit a pdf page with the following items: ● The code snippets for the three new actions ● For both Dijkstra and A* search, give: ○ The number of vertices in the graph after finding the path to Goal ○ The length of the final plan ○ Screenshot of the final plan