Policies
Table of contents
Presentation of Course Material
Overview
This course will be taught in a seminar style, with lectures, homeworks, labs, 2 midterms, and a final project. All submissions will go through Gradescope (Course Entry Code: K328WG). An Ed page has been created for students to discuss homeworks and projects.
Each week, there are 3 hours of lecture, 3 hours of lab sections, and 1 hour of discussion. All of these and office hours will be hosted in-person. You are expected to work on final projects during your own time. A booking system will be instituted to reserve robots, and lab TAs will be availble to address any questions during their office hours. Lecture and discussion sections will be recorded and posted, so you may attend these asynchronously. However, due to the hands-on nature of lab sections, they will not be offered asynchronously, and you are expected to attend your assigned lab every week.
Lectures
Lecture attendance is not mandatory, but we highly recommend attending live if possible to ask questions and engage fully with the material. Lectures will be held synchronously on Tuesdays and Thursdays, 2:00 - 3:30pm, in Dwinelle 145. They will be recorded and posted for students who cannot attend live.
Discussions
Discussion sections will be held on Thursday 4:00pm - 5:00pm (Soda 380), Friday 2:00pm - 3:00pm (Cory 540AB), and Friday 3:00pm - 4:00pm (Cory 521). They will have a review of important topics and go over practice problems related to the material to supplement lecture content. Attendance is recommended but not mandatory.
Because discussion section is recorded, please note that if you ask a question, you will be recorded as well.
Homeworks
Homeworks will be collected and graded using Gradescope. Create an account on gradescope.com with your Berkeley email account and SID. Add this course with the code K328WG.
There will be a total of 10 homeworks, due weekly through mid-November (with the exception of midterm weeks). Homework will be released in the evening each Wednesday, starting August 25 (the first day of class). You will have until 11:59pm the following Tuesday to complete each assignment.
Assignment | Assigned @5pm | Due @11:59pm |
HW 0: Linear Algebra Review | 08/24 | 08/29 |
HW 1: Rotations and Reference Frames | 08/30 | 09/06 |
HW 2: Exponential Coordinates | 09/06 | 09/12 |
HW 3: Forward Kinematics | 09/13 | 09/19 |
HW 4: Inverse Kinematics | 09/20 | 09/25 |
HW 5: Vision | 10/03 | 10/12 |
HW 6: Velocities | 10/11 | 10/19 |
HW 7: Jacobians and Singularities | 10/18 | 10/26 |
HW 8: Dynamics | 10/25 | 11/04 |
HW 9: Control | 11/02 | 11/13 |
Each student is allocated 5 total days of extension (also known as slip days), to be used on any homework assignment with no loss of points. To allow for homework solutions to be released in a timely manner, no more than 2 extension days may be used on a single assignment. After using all extension days, homeworks will not receive credit. Note: Homework will not be accepted more than two days past the due date, barring extenuating circumstances. Also, homeworks prior to the midterm will not be allowed slip days because we want to release solutions for you to study.
We are instituting an 80% threshold for homework to alleviate stress! Any score equal to or above 80% on an assignment will be calculated as a 100%. If you receive a grade below 80%, it will be divided by 0.8 (so a 50% becomes a 62.5%).
Collaboration on homework sets is encouraged, but all students must write up their own solution set. Additionally, every student is accountable for the solutions they submit and may be asked to discuss them with a GSI or instructor. Please list all collaborators at the top of each submitted homework set.
We will hold weekly homework parties! They will be held each Monday 7:00pm - 9:00pm. They will be staffed by TAs and assistants to help students working through the homework. These hours are dedicated to homework only.
Additionally, you will receive one homework drop if you complete both post-midterm surveys.
Labs
Labs must be done in person to receive full credit. Students will be working with hardware in the labs.
Lab sections will meet each week beginning the first full week of classes (starting 8/28) and will run through the week of November 12. You will sign up for sections at 8:30pm on Thursday, August 24th using the link sent in the initial announcement email. You will complete each lab with one partner; no groups of three will be allowed. In lieu of formal reports, labs are completed by discussing your system with and demonstrating its functionality to your lab GSI during various “check-offs” specified in each lab description. Note that all students who are being checked off must be present at the time of the check-off, in the interest of making sure everyone can fully explain the code and system functionality.
Labs may be worked on outside of class hours. Additionally, labs may be checked off at the office hours of any Lab TA, or you may request to attend a different lab section for the check-off by asking a GSI. Note that many of the labs in this class are full, and you will not be allowed to attend them.
Labs should ideally be completed by the end of your assigned lab section and are scoped such that this should be feasible. We recognize, however, that due to different levels of previous experience with the material this will not always be possible. In order to accommodate this variation while ensuring that students do not fall behind, we have developed the following (admittedly complex) policies:
- Labs 1-2 are a serial introduction to ROS and the other tools used in this class. They must therefore be completed by the start of your assigned lab section the following week.
- Labs 3-8 occur in Modules of two labs each (3 & 4, 5 & 6, 7 & 8); each Module is dependent on the previous Module, but labs within each Module are not dependent on each other. Modules are 3 weeks long.
- At the start of each Module, both labs will be released. Half of the students in each section will work on the even numbered lab, while the other half will work on the odd numbered lab during the first week. The groups will switch during the second week. The third and final week of the Module is a buffer week, intended to be used if you were unable to complete the lab(s) during this module.
- You will receive full credit for any check-offs during the buffer week for any labs in the current module. Both labs from the module are due at the start of your lab section the week after your buffer week (ie: the start of the lab when you begin a new Module).
The start of your lab section is a hard cutoff — that is, if an assignment is due at the start of lab section, you may not check off that assignment at the start of class for full credit; it must be checked off beforehand. This policy is in place because many of the labs fully fill the allotted time, and we want to keep everyone on schedule.
If you miss the checkoff deadline for a lab, you will have one week after the due date to receive 50% credit.
Lab | Assigned | Due Week Of |
Lab 1: Intro to ROS | 08/28 | 09/03 |
Lab 2: Publishers/Subscribers in ROS | 09/04 | 09/10 |
Lab 3: Forward Kinematics/Coordinate Transforms | 09/11 | 10/01 |
Lab 4: Intro to Mobile Robots | 09/11 | 10/01 |
Lab 5: Inverse Kinematics | 10/02 | 10/22 |
Lab 6: Computer Vision | 10/02 | 10/22 |
Lab 7: Path Planning | 10/23 | 11/12 |
Lab 8: Mapping with Occupancy Grids | 10/23 | 11/12 |
We understand that these policies are a bit nuanced, and if you have questions, please ask us! We’ve done our best to create a policy that allows for flexibility while encouraging people to stay on schedule and maintaining fairness; to do so, we’ve sacrificed simplicity.
Please do not make your lab respositories public, even after you finish the course. We’re doing our best to uphold academic honesty!
Midterms
There will be two midterms covering the course material, on Thursday, September 28, and Thursday, November 16. The midterms will be held in person during class time. Students will be allowed a cheat sheet.
Final Project
The final project is a major part of your grade for this course and must include sensing, planning, and actuation components on real hardware. Project deliverables include a proposal, a video, a live demo, a final report, and several intermediate check-ins. Further information will be forthcoming. Due to the types of deliverables involved (e.g., live demonstrations), extension days may not be used on project deliverables, and late work will not be accepted.
All students must complete a final project. Failure to complete a final project will result in a failing grade.
Assignment | Due Date |
Final Project Released | 10/02 |
Final Proposal | 10/13 |
Proposal Feedback | Week of 10/16 |
Check-In 1 | 11/09 |
Check-In 2 | 11/29 |
Presentation Day 1 | 12/07 |
Presentation Day 2 | 12/08 |
Website Due | 12/15 |
Office Hours
The instructors will hold weekly office hours to discuss lecture content, homework assignments, projects, and other course material. We will try our best to schedule them so that each student has the opportunity to attend at least one office hour each week. When discussing a current homework assignment, instructors will not provide solutions. Rather, we will be happy to help clarify fundamentals and to guide students’ reasoning in related problems.
Please utilize the Edstem for this class. We cannot guarantee response time from instructors (although it should be within a day or two), but we highly recommend helping your classmates out as you can!
Questions regarding homeworks, exams, lectures, and discussions should be directed to the professors or a Content TA. Questions regarding labs should be directed to a Lab TA. Questions regarding course logistics should be directed to Tarun. You can check the Staff page to see who can best respond to your question. When emailing us, please prefix the subject line with [EECS C106A].
Grading
Grade Breakdown
Homeworks | 20% |
Labs | 20% |
Midterms | 30% |
Final Project | 30% |
Regrade Requests
If you feel that your work has been graded unfairly, you may request a regrade by submitting a request on Gradescope with a written statement explaining the mistake. Be aware that points may be deducted as well as added if a regrade is requested. The deadline for requests will be announced when grades are released.
Effort, Participation, and Altruism (EPA) Points
We want to reward you for engaging respectfully with the course! You are eligible to earn up to 2% extra credit via Effort, Participation, Altruism (EPA) points. These points can be earned in a variety of ways:
- Attending lecture and discussion
- Asking questions in class
- Helping others in lab section
- Answering questions on Ed
- Coming to Office Hours and Homework Party
Please remember to treat your peers (and hopefully your instructors!) with kindness and respect.
A Note on Late Work
While we will abide by the policies listed above regarding specific assignment types, we understand that unforeseen circumstances do happen. If you feel that you will not be able to complete an assignment on time under the policies listed above due to truly extenuating circumstances, please inform a course instructor as soon as possible and before the associated deadline to discuss your situation. Once the deadline has passed, accommodations are unlikely.
Miscellaneous Information
Disability Accommodations & Emergencies
If you need disability-related accommodations in this class, if you have emergency medical information you wish to share with us, or if you need special arrangements in case the building must be evacuated, please inform us immediately. Please see the professor or Tarun privately after class, or send us an email.
Collaboration Policy
Students are allowed—and in fact, encouraged—to collaborate on how to approach problems. This can include talking through approaches and whiteboarding together. However, each student is responsible for writing their own responses, both for typical written questions and coding assignments. Students should never be in possession of another student’s code.
Online material is also open to use. However, it must not be copied directly, and any references should be credited in your work. Using previous years’ solutions from 106B/206B or any other class constitutes plagiarism and will be punished accordingly.
When debugging, students are encouraged to come to office hours for assistance. If debugging with peers, we encourage you to do this in person with others in small groups. However, we understand that this is not always possible, so screen sharing code for debugging assistance is permissible. When debugging, please do so in pairs or very small groups, and always do so in controlled settings to minimize sharing answers.
Students should never screenshare their code or answers directly on public platforms like non-private posts on Ed, the class Discord, or Zoom rooms. Please note that screen sharing on Discord can be viewed even without directly joining the call, so there can be no record of who is viewing your stream at any time. ALWAYS list collaborators.
tl;dr: Work together on approach, but write your own answers. If you need direct help debugging, ask a TA for help, or do so in controlled environments where the only people who see your code are your approach collaborators. ALWAYS list collaborators and cite sources on your submissions.
Advice
The following tips are offered based on our experience.
Do the homeworks! The homeworks are explicitly designed to help you to learn the material as you go along. Although the numerical weight of the homeworks is not huge, there is usually a strong correlation between homework scores and final grades in the class.
Keep up with lectures! Discussion sections, labs and homeworks all touch on portions of what we discuss in lecture. Students do much better if they stay on track with the course. That will also help you keep the pace with your homework and study group.
Take part in discussion sections! Discussion sections are not auxiliary lectures. They are an opportunity for interactive learning. The success of a discussion section depends largely on the willingness of students to participate actively in it. As with office hours, the better prepared you are for the discussion, the more you are likely to benefit from it.
Come to office hours and homework party! We love to talk to you and do a deep dive to help you understand the material better.
Form study groups! As stated above, you are encouraged to form small groups (two to four people) to work together on homeworks and on understanding the class material on a regular basis. In addition to being fun, this can save you a lot of time by generating ideas quickly and preventing you from getting hung up on some point or other. Of course, it is your responsibility to ensure that you contribute actively to the group; passive listening will likely not help you much. Also recall the caveat above, that you must write up your solutions on your own. We strongly advise you to spend some time on your own thinking about each problem before you meet with your study partners; this way, you will be in a position to compare ideas with your partners, and it will get you in practice for the exams. Make sure you work through all problems yourself, and that your final write-up is your own. Some groups try to split up the problems (“you do Problem 1, I’ll do Problem 2, then we’ll swap notes”); not only is this a punishable violation of our collaboration policies, it also ensures you will learn a lot less from this course.
A Final Note
We understand that there is a lot happening, and every semester will have its unique challenges. We are here to support you throughout the semester, both as students and as people. Life happens, and we want to make sure you are always receiving a quality education. Please communicate with us if you are experiencing extenuating circumstances and need extra support. We’re here for you.