[SOLVED] CS 8803 – O01: Artificial Intelligence for Robotics Project 2

50.00 $

Category:

Description

5/5 - (2 votes)

Project Description

The goal of Project 2 is to give you practice implementing the planning and control algorithms introduced in the latter half of Prof. Thrun’s lectures. In each of the parts of the project, you will write a planner to guide a robot through a warehouse to retrieve and deliver packages.

In the first part, we will represent the warehouse as a grid in the manner of the planning problems from

Lesson 4, and the robot and target packages will have rigid, blocky representations in this “gridworld.” In the second part, the warehouse will have a continuous instead of a discrete representation, and the robot will have to navigate carefully around corners to avoid crashing into them.

Submitting your Assignment

Each of the parts has different specifications which the partA.py and  partB.py files describe. You should complete each file to satisfy the specifications described therein (by implementing a planning function already present), and then you should submit these two files to the Project 2

Assignment on Canvas. Do not combine the files into an archive (zip,tar, etc) , and ensure they remain named partA.py and partB.py. Submissions that do not follow this format will receive a penalty of -20 points.

The submission must consist of Python 2.7 files labeled  partA.py and  partB.py. You may use external modules such as numpy, scipy, etc that are present in the Udacity Runaway Robot autograder.  [Try to ensure that your code is backwards compatable with numpy version ‘1.13.3’ and scipy version ‘0.19.1’]

Your python files must execute NO code when they are imported.  We encourage you to keep any testing code in a separate file that you do not submit. They should also NOT display a GUI or Visualization when we import them or call your function under test. If we have to manually edit your code to comment out your own testing harness or visualization you will receive a -20 point penalty.

Suggested Schedule

All parts of this assignment are due Monday, November 12th,  Midnight (Anywhere On Earth). We strongly suggest that you complete part A of the assignment before October 29th,   giving yourself two weeks to complete part B.   [also note that Mini Project RocketPID will be due October 29th.]

Testing Your Code

We have provided testing suites similar to the one we’ll be using for grading the project, which you can use to ensure your code is working correctly. These testing suites are NOT complete, and you will need to develop other, more complicated,  test cases to fully validate your code. We encourage you to share your test cases  (only) with other students on Piazza.

You should ensure that your code consistently succeeds on each of the given test cases as well as on a wide range of other test cases of your own design, as we will only run your code once per graded test case. For each test case, your code must complete execution within the proscribed time limit (10 seconds) or it will receive no credit. Note that the grading machine is relatively low powered, so you may want to set your local time limit to 5 seconds to ensure that you don’t go past the CPU limit.

Grading

Part A and Part B have equal weight. Each part will be tested on a set of test cases. Each test case will have equal weight in the final score your project receives.  As described in the Part*.py files, each test case will have a “minimum cost” associated with it. If your planner fails to produce a valid route, you will receive zero credit. If your planner produces a plan that achieves exactly this minimum cost, you will receive full credit for that test case. If your planner produces a valid route of higher cost, you will receive partial credit as described in the python files. If your planner produces a route that results in a

LOWER cost, you will receive extra credit for that test case. [NOTE: Your overall grade on the assignment will be capped at 100%, so this will not affect your grade on other assignments in the course.]

Example warehouse coordinate system for part B: