Problem Set 5, Part 2

Download the pset files in a .zip

Download here a .zip file with the python files that you will need.

Pset 5, part 2 is due on Gradescope Monday 11/04/19 by 10pm. The drake tag for this pset is drake-20191028.


Introduction

There are three types of files in this lab.

  • Jupyter notebooks ( .ipynb).

      The notebooks are usually the first thing you open after downloading the zip file. It contains questions you'll need to answer and code snippets to generate visualizations and test your code. The notebook is meant as a sandbox for you to experiment with different ideas, and you do not need to submit it.

  • A (few) .py file(s).

      These files contain the implementation of most functions called inside the notebook. The bulk of the pset is about completing/modifying certain parts of these files, as per the instructions given in the notebook. You will need to submit these files for grading.

  • A test script with a name like this: test_pset_5b.py.

      This is the same test script on Gradescope that determines how many points you score. The test script is provided to you so that you can run the tests locally and quickly get feedback/confidence on how well you do. Do not modify the test script.


  • How to do this Assignment

    The assignment has two sections. In section 1 you will complete the implementation of an RRT and a biRRT planner for planar robots; in section 2 you will apply the planners to the robot station in the lab. Both sections use the docker scripts you've been using for pset 0-3. If you are using Mac and have upgraded to Catalina, you may need to download the updated docker scripts from here.

    Section 1

    Similar to the teleop task in pset 0, section 1 is done in a terminal of a docker container. To launch the docker container, run this:

    ## Choose your operating system after --os 
    $ python3 docker_run.py --os mac/linux --drake_tag drake-20191028 -v /path/to/pset5_2

    Once you are in the container, run this to enter the pset working directory:

     # cd /psets 
    and follow these instructions to complete the first section.

    Section 2

    Section 2 comes in the familiar format of a jupyter notebook. To start the notebook, run this:

    ./docker_run_notebook.sh drake-20191028 /path/to/pset5_2

    For section 2, you do not need to submit anything to Gradescope. We will check off your solution in lab 2.


    How to submit this Problem Set

    We will use Gradescope for collecting and grading your problem sets, since it allows us to auto grade your code against our software tests, as well as look at your code and other text answers. If you did not already do this, make an account on Gradescope, and add 6.881 with the class code emailed to you. Although all course content is open, we only do grading for officially enrolled students who are taking this class for credit.

    Please note that you need to make only one submission for the problem set.

    This submissions is:

    1. Autograded submission
      • Upload your rrt_planning.py to "Pset 5, Part 2" on Gradescope.
      • In our testing, Gradescope will give you a grade within 2 minutes. You can resubmit as many times as you'd like before the deadline.
      • Note that for your RRT and biRRT implementations, we are testing your random algorithm. Although we try to make the test deterministic by seeding the random number generator, there's still a chance that your code does not converge. Each test runs your implementation 5 times and only requires a solution to be found once to pass. However if your implementation fails the Gradescope tests, you can re-run the tests until it succeeds.

    Good luck and have fun!