ME/CS 132b, Spring 2011

From MurrayWiki
Jump to: navigation, search

Advanced Robotics: Navigation and Vision

Instructors

  • Larry Matthies (coordinator), lhm@jpl.nasa.gov
  • Roland Brockers, Brian Williams, Adnan Ansar, Yang Cheng, Nick Hudson, Tom Howard, Yoshi Kuwata, Jeremy Ma
  • Lectures: Tue/Thu, 2:30-4 pm, 306 TOM
  • Office hours: Tue/Thu, 4-5 pm, 303 TOM (by appointment only)

Teaching Assistants (me132-tas@caltech.edu)

Course Mailing List: me132-students@caltech.edu (sign up)

Announcements

  • 10 May 2011: Schedule your test time for the course project on this page.
  • 06 May 2011: The course project handout has been posted. Remember to schedule weekly mentor meetings for your group.
  • 06 May 2011: The lab's phone number is (626) 395-2315. Please call this number in case you need to enter the building after hours.
  • 21 Apr 2011: Lab #1 has been posted. It is due 2:30pm, 5 May. You will also need to sign up for a time slot here before coming to the lab session.
  • 14 Apr 2011: HW #3 has been posted. It is due 2:30pm, 21 Apr.
  • 7 Apr 2011: HW #2 has been posted. It is due 2:30pm, 14 Apr.
  • 6 Apr 2011: The location of office hours has been changed to 114 Steele.
  • 5 Apr 2011: The due date of HW #1 has been postponed to 14 Apr.
  • 1 Apr 2011: A revised version of HW #1 has been posted (hw01_v2.pdf).
  • 31 Mar 2011: HW #1 has been posted. It is due 2:30pm, 7 Apr.
  • 29 Mar 2011: The course page has been set up. The page for ME/CS 132a (Winter 2011) can be found here.

Course Information

Prerequisites

There are no formal prerequisites for the course. ME 115 ab (Introduction to Kinematics and Robotics) is recommended but not necessary. Students are expected to have basic understanding of linear algebra, probability and statistics. We will review some of the required background materials during the first week of lectures. Besides these, students should have some prior programming experience and know at least one of the following languages: C, Python, or MATLAB. Depending on the background of the class, we will hold tutorials for some of the programming languages to help students get started.

Grading

There are no midterm/final exams for this course. The grade will be based on (1) homework assignments (30%), (2) a week-long lab (20%), and (3) a course project (50%). Late homework will not be accepted without a letter from the health center or the Dean. However, you are granted a grace period of three late days throughout the entire term for weekly homework. Please email the TAs and indicate the number of late days you have used on the homework. No grace period is allowed for the week-long lab or the course project.

  • Homework: Homework is usually due in one week after it is assigned. You can choose to
    • turn in a hard copy in class,
    • or, upload an electronic copy to the course server and send the TAs a note.
If you are unable attend the lecture, contact the TAs to find an alternative way to turn in your homework.
  • Course Project: Grading for the term project will be a weighted combination of navigation task success, focus task results, and presentation. Each member in the group will receive the same grade. All group members are expected to participate equally throughout all facets of the term project.
    • Navigation Task Results [30 points]: Successful navigation of the mobile robot in three environments within the one minute time constraint. The best performance of any single binary (program) will be used to grade the navigation results.
    • Focus Task Results [30 points]: Implementation and demonstration of the focus task selected by the group. Measure (qualitatively or quantitatively) differences in mobile robot navigation performance.
    • Written Report and Class Presentation [40 points]: Discussion of the mobile robot navigator developed by the group through thirty minute class presentation and a written report. All group members are expected to present during the class presentation and write portions of the report. Written reports are to be between six and ten pages long and discuss aspects of the implemented system and their experimental results.

Homework Guidelines

  • On the back of the first page of your homework, write down the number of hours you have spent, including reading. This will help us keep track of the amount of homework and adjust future assignments if necessary.
  • Justify your answers. This will help us assign partial credits to your assignment even if the results are incorrect. On the other hand, we will deduct points if only results are shown without the necessary derivations.
  • You are encouraged to use professional libraries (such as OpenCV) for reading/writing files and analogous tasks. However, you cannot use functions which the homework implies you have to write yourself.
  • You will be given code examples in a few languages (MATLAB, C++, Python), but you are free to use any language with which you are comfortable.
  • You are responsible for the parameters you choose. If we give you a “reasonable” value for a parameter that does not appear to work, you should try other values.

For electronic submissions (including your code):

  • Package code, data, and answers in a single .zip or .tgz file.
  • Upload the writeup as a single file to the course server. Do not upload multiple files for different parts of the writeup. The file must not be in proprietary formats (e.g. MS Word, Mathematica notebook). We recommend using PDF format to guarantee portability.
  • Separate code & commentary: do not write your discussion/derivation in the source files, but in a separate report file, clearly labeled as such.
  • Include instructions/scripts that allow reproducing your experiments with relatively little effort. For example, include a script “main.m” that calls the other files.

Collaboration Policy

Students are encouraged to discuss and collaborate with others on the homework. You are free to discuss general ideas about the problem. However, you should write your own solution to show your own understanding of the material. You cannot copy other people's solution as part of your solution. You cannot share code for homework or look at other people’s code. Reading aloud your code does not count as discussion. You are allowed to consult the instructors, the TAs, and/or other students. Outside reference materials can be used except for solutions from prior years or similar courses taught at other universities. Outside materials must be cited if used.

Course Texts

The required textbook is (also freely available online):

Lecture Notes

Week Date Topic Instructor
1 29 Mar (Tu) Overview, Kinematic and Dynamic Models Tom Howard
31 Mar (Th) Motion Simulation Yoshi Kuwata
2 5 Apr (Tu) Search Spaces I Tom Howard
7 Apr (Th) Search Spaces II, Obstacles and Cost Tom Howard
3 12 Apr (Tu) Search Algorithms I Yoshi Kuwata
14 Apr (Th) Search Algorithms II Tom Howard
4 19 Apr (Tu) Navigtion and Control Yoshi Kuwata
21 Apr (Th) Motion Planning and Navigation Case Studies Yoshi Kuwata
5 26 Apr (Tu) Week-long lab
28 Apr (Th) Week-long lab
6 3 May (Tu) System Case Studies TBA
5 May (Th) System Case Studies (cont'd) TBA
7 10 May (Tu) Term Project Mentor Meetings
12 May (Th) Term Project Mentor Meetings
8 17 May (Tu) Term Project Mentor Meetings
19 May (Th) Term Project Mentor Meetings
9 24 May (Tu) Project Presentation
26 May (Th) Project Presentation

Homework

Homework 1 (Due: 2:30pm, 14 Apr) -- total points will be multiplied by 1.6

  • FAQ, Solution

Homework 2 (Due: 2:30pm, 14 Apr)

Homework 3 (Due: 2:30pm, 21 Apr)

  • FAQ, Solution
  • You will need the data in this zip file, containing the cost map to be used in Matlab and Python format.

Lab 1 (Due: 2:30pm, 5 May)

  • FAQ, Solution
  • Sign up for a time slot as a group (2-3 people) here.
  • You will need the data in this zip file.

Course Project(Presentation: 24-26 May, report due: 26 May)

Older Announcements

There are no older announcements.