6.141/16.405J (Formerly 6.188/16.401)
Spring 2010

Robotics: Science and Systems I


Course Information
[RSS home]

Course Staff
Course Details
Resources
Syllabus & Lecture Handouts
Wiki
Acknowledgements



Challenge and Debate Info
Grand Challenge
Course Debates



Lab Information
Lab Handouts
Lab Staffing Schedule
Lab Announcements



Staff
Staff only pages (short list)


 
6.141/16.405J - RSS Basic Information

Instructors

  • Seth Teller (Course Coordinator)
    • Office: 32-333
    • Phone: 258-7885
    • Office Hours: by appointment
    • E-mail: teller AT mit.edu
Picture of Seth Teller
  • Una-May O'Reilly (lab tzarina)
Picture of Una-May O'Reilly

RSS Writing Program Lecturers

  • Mary Caulfield
    • Office: 12-113 & 12-117
    • Phone: 617-324-2494 & 617-253-3039
    • Office Hours: by appointment
    • E-mail: mcaulf AT mit DOT edu
  • Jennifer Craig

Teaching Assistant

  • Seungkook Yun
Picture of Seungkook Yun

Lab Assistants

Picture of Evan Iwerks
Picture of Kim Jackson
Picture of Andrew 'Suggy' Sugaya

Course Administrators

Picture of Bryt Bradley

Syllabus / Course Schedule

You can see the full syllabus & course schedule by following the Syllabus & Lecture Handouts link in the left-hand menu.

Course Help Outside Lab Hours

Class Meetings

  • Lectures: Mon and Wed (and occasional Fri) 1:00 pm - 2:00 pm in Room 32-155
  • Labs: Mon and Wed 3:00 pm - 5:00 pm in 38-530
    These times do not conflict with most 6.01X, 6.03X, 6.04X subjects.

Lab Space and Stockroom Availability

  • Lab Space (38-530): Open Monday through Thursday, 9:00am-11:45pm; Friday, 9:00am-5:15pm; and Sunday, 1:00pm-11:45pm.
    The 38-530 lab area is also open by arrangement with the course staff.
  • Hours of the EECS Stockroom (38-501): Monday through Friday, 9:00am-5:00pm

Course Designations

  • Units: 12, 2-6-4 (Lectures: 2; Labs: 6; Out-of-class: 4)
  • Institute Lab Classification: RSS I is now an Undergraduate Institute Lab.
  • EECS Department Lab: RSS I is also an EECS Department Lab and can be used to satisfy the Department Laboratory requirement in Course 6-1, 6-2, and 6-3. See http://www.eecs.mit.edu/ug/NC-MEng_checklist1-2_09-15-09.pdf for more information.
  • EECS Communication-Intensive Subjects in the Major (CI-M): RSS I is a CI-M subject in Courses 6-1, 6-2, and 6-3.
  • Aero-Astro Communication-Intensive Subjects in the Major (CI-M): Aero-Astro students can petition to have RSS I counted towards their CI-M requirement as an elective PAS in Course 16.
  • Engineering Design Points (EDPs): RSS I carries 12 EECS EDPs.
  • 6.UAP: RSS I can be petitioned for use to satisfy 6.UAP.

Assignments

  • The class has seven lab exercises during the first nine weeks of the term. Teams will post data, plots, screenshots, photos, videos and descriptive prose to the RSS wiki for each lab. Teams will also give a short technical briefing on each lab to the RSS staff, usually during lab hours on the day the lab is due. RSS staff will also come to each team's area to see the team's robot operating.

  • The field of Robotics has ethical and philosophical aspects to it. We will learn about this by means of class debates, which will occur during the latter part of the term. A list of debate topics will be posted; you will be asked to sign up in small teams for the "pro" or "con" position for one topic You will research and prepare an argument in support of your position, and deliver your argument in class.

  • The class culminates in a final "Challenge" project. The deliverables for the challenge project consist of a team challenge proposal, a team implementation, a team presentation and demonstration, and an individual final report. Each challenge proposal, written as a team, frames the team's attack on the posed design problem. The implementation is the delivered hardware and software produced by the students over the challenge period. The presentation and demonstration consist of the students describing their approach to the challenge, demonstrating the operation of their implemented design, and discussing its performance. The final report is written individually, and consists of each student's reflections on his or her growth through the term, on the challenge project, and on his or her contribution to the team's effort.

Exams

RSS I has no midterm or final exam.
RSS I has a final project demonstrated during the last week of class, and a reflective report due on the last day of the classes.

Grading Criteria

Subject grades are formed from a weighted average as follows:
  • Lab Quality, Wiki, Briefings: 35%
  • Team Challenge Design & Proposal: 10%
  • Challenge implementation and performance: 30%
  • Debate Performance: 10%
  • Participation in Lecture and Lab: 5%
  • Initial ideas and Reflective Report: 10%
Each of the components above incorporates both technical performance and communications effectiveness.

Additional policies

Late work will receive no credit, except under extraordinary circumstances (e.g. severe illness), and with written support from your undergraduate advisor or one of the counseling Deans.

Collaboration is essential for all assignments. Within teams, teamwork is an absolute necessity, and we expect that teams will work together to generate the technical content of each lab report and briefing.

Across teams, we encourage collaboration and discussion. However, we explicitly forbid the appropriation of code, data, plots, or writing across teams, even with modifications or paraphrasing. In other words, any writing included in a lab report, proposal, or final report must be authored by your team; any data or plots must come from your team. You must also explicitly credit any collaborators. The correct model is to discuss solution strategies, credit your collaborator(s), and write your solutions individually or as a team depending on the assignment.

For the final project, full collaboration within the team on all aspects of the challenge is encouraged. Every member of the team will be expected to contribute a roughly equal share to the design, implementation and presentation of the challenge.

Should you require any clarification of the policies above, contact a member of the course staff.

Resources

The course textbook is Introduction to Autonomous Mobile Robots (Intelligent Robotics and Autonomous Agents) by Roland Siegwart, Illah R. Nourbakhsh. This book is available at MIT Press in Kendall Square, at a 20% student discount.

In addition, there will be occasional readings distributed in the form of course notes and papers.

Some other excellent books you should consider for your reference library on robotics are:

  • Robot Motion Planning, Latombe, Kluwer Academic Publishers.
  • Mobile Robots, Inspiration to Implementation, Jones & Flynn, A. K. Peters.
  • Artificial Intelligence, A Modern Approach Russel & Norvig, Prentice Hall.
  • Behavior-Based Robotics, Arkin, MIT Press, 1998.
  • Robotic Explorations, Martin, Prentice Hall.
  • Computational Principles of Mobile Robotics, Dudek and Jekin, Cambridge University Press.

Programming Languages:

Robots can be programmed in many different languages. In this class, we require that you submit your assignments in Java, and we will provide assistance only for Java-based implementations.

Additionally, we support only the Linux operating system in RSS. We will not provide assistance with the problem sets or the project in anything other than Java running on Linux. If you choose to use something other than the supported flavors of Java and Linux, you are responsible for generating correct, real-time behavior on your robot.

You will need to understand the Java syntax by the end of the first week. If you haven't had a lot of Java exposure you might find one or more of the following books helpful:

  • David Flanagan. Java in a Nutshell, 4th edition, O'Reilly, 2002. A reference book rather than a tutorial. Succinct but covers a lot. Assumes knowledge of a language like C. Details at http://www.oreilly.com/catalog/javanut4/.
  • Joshua Bloch. Effective Java: Programming Language Guide, Addison-Wesley, 2001. The Bloch book explains, in about 60 short items, some key ideas in program style, as well as some subtleties of Java; it's perhaps better appreciated when you have some familiarity with Java and want to delve deeper. Both books are available at Quantum Books.
  • Ivor Horton. Beginning Java 2 - JDK 1.4 Edition, Wrox Press, 2002. Tutorial introduction to all parts of Java, including user interface libraries. No knowledge of other languages is assumed.
  • Ken Arnold, James Gosling, and David Holmes. The Java Programming Language, 3rd edition, Addison-Wesley, 2000. A brief explanation of Java. Assumes more background; much less explanation about how to use Java's features. User interface libraries not discussed.
  • James Goslin, Bill Joy, and Guy Steele. The Java Language Specification. The official reference for Java by its inventors. Good for reference, but not an easy way to learn Java. Available as a book, or online at http://java.sun.com/docs/books/jls/index.html.
  • Bruce Eckel. Thinking in Java, 3rd edition, Prentice-Hall, 2002. Also available on-line at Mindview.net (but don't try printing it yourself - it's over 1000 pages long!). Written for someone who can already program but isn't familiar with Java or object-oriented programming notions. Goes into lots of detail on tricky aspects like GUIs, multithreading, and remote method invocation.

MIT Subject Catalog Description

Presents concepts, principles, and algorithms for computation and action in the physical world. Topics covered are: motion planning; geometric reasoning; kinematics and dynamics; state estimation; tracking; map building; manipulation; human-robot interaction; fault diagnosis; and embedded system development. Students specify and design a small scale yet complex robot capable of real-time interaction with the natural world. Students may continue content in 6.142. Prior knowledge of one or more of the following areas would be useful: control (2.004, 6.302, or 16.30); software (1.00, 6.005, or 16.35); electronics (6.002, 6.070, 6.111, or 6.115); mechanical engineering (2.007); or independent experience such as MasLAB, 6.270 or a relevant UROP. Enrollment limited. 12 Engineering Design Points.

6.141/16.405J Learning Objectives:

Students completing 6.141/16.405J will be able to:
  1. Specify the requirements for an integrated hardware and software design and implementation of an autonomous system performing a specified task;
  2. Critically evaluate choices of design and architectures;
  3. Use kinematics, control theory, state estimation and planning to implement controllers, estimators and planners that satisfy the requirements of specified tasks;
  4. Operate the system for an extended and specified time;
  5. Communicate, orally and in writing, the results of the project design process and the key aspects of the overall project (from concept to end goal).

6.141/16.405J Measurable Outcomes

Each of these outcomes corresponds to one or more deliverables in the course.
  1. An integrated hardware-software system that performs the desired task;
  2. A written design proposal that specifies and presents the integrated software and hardware design that satisfies design requirements;
  3. Lab reports and briefings that demonstrate mastery of key design skills;
  4. Development and delivery of an oral presentation suitable for a professional audience;
  5. Development and delivery of a debate that evaluates design choices and demonstrates ability to use evidence to argue for conclusions;
  6. Completion of a final report that analyzes the design and its success or failure, and reflects upon learning.

Disabilities

We encourage students with disabilities, including "invisible" disabilities such as chronic diseases and learning disabilities, to discuss with us any appropriate accommodations that we might make on their behalf.


Back to:

Picture of Bryt Bradley
RSS-Webmaster, Britton "Bryt" Bradley
Last modified: Wed Feb 3 16:44:53 EST 2010