The final project will be your opportunity to take what you learned in the class and put it towards a project of your choice.
Here are some guidelines:
- Apart from rare exceptions, your problem should be relevant to manipulation.
- You are welcome to work on the project in small teams (2-3 people). If you plan on doing a team project, please make this clear in your proposal. Our expectation of your work is proportaional to the number of people on the team.
- The project is only over 4-5 weeks, so scope your project carefully.
- Developing novel algorithms/methods is great, but reimplementing publisehd work and/or applying a published method to a manipulation system is also great. You will be evaluated based on whether the project forced you to think/understand, not based on novelty.
- Do not underestimate the time it can take to set up a simulation in place. Using/modifying an existing example from the textbook is great. Using Drake is not a requirement, but the staff can help you more if you choose this route.
- Some of you will be able to do a project that is closely related to your current research. This is completely acceptable, as long as the subproblem you are solving is clearly defined. If you are using part or all of your work for research or as a part of another class, you must state this explicitly in your final report. We expect you to do something new that you would not have done if you hadn't taken this class (e.g. I was working on motion planning for a mobile robot, but tried to do it for manipulation)
- We encourage you to build on code and tools of the community, but remember that you must clearly distinguish your contribution and acknowledge the work of others to avoid plagiarism. If you do improve an open-source tool or example, continue contributing back! For Drake in particular, I'd love to put your best examples in the Drake gallery
Project IdeasHere are a set of ideas we believe might be worth investigating, but do not feel the need to grab one of these! This is a placeholder, and the list will grow as we add more suggestions soon.
Using everything we learned, implement a full-stack system (from perception, planning, and control) that can reliably solve a small-scale application in manipulation.
- Pick-and-place clutter clearing of YCB objects.
- Opening a cupboard and grabbing a mug.
- Solving a peg-in-hole assembly problem.
- Using a tool (hammer, squeegee, pencil, etc.) to achieve a task.
Choose a specific subproblem in manipulation (impedance control, pose estimation, motion planning, task-and-motion planning) and implement / benchmark existing methods.
- Pose Estimation: There have been impressive results that use deep learning in order to do object pose estimation, such as Pose-CNN. How do these compare with ICP-like pose estimators?
- Motion Planning: Motion planning has a very rich literature comparing and combining sampling-based methods and optimization-based methods. Which ones are better suited for manipulation, and how should we combine them?
- Impedance Control: There is a rich variation of approaches regarding the theme of impedance control (stiffness control, admittance control, force control, etc). Which ones are suited for which tasks? Can we benchmark their performance on a single task?
- variations in object category
- variations in object geometry
- variations in object mechanical properties (friction, weight, etc.)
- A short project proposal is due on Friday, October 30 as a part of Problem Set 5.
- Brief progress updates are due on Set 5 and Set 6, leading up to the presentation work.
- A presentation of your results on Tuesday, Dec 8.
- A final report summarizing your reports, along with any code you'd like to provide (we'll love it!) is due on Tuesday, Dec 8.
- Projects can be completed individually or in small groups (2 or 3 students), but the expectations for projects will scale linearly with group size. Each member of the group will need to be able to point out the specific interesting contributions that demonstrate mastery of the course material.
Project ProposalThe project proposal is intended as a forcing function for you to crystalize a project idea. Moreover, it gives us a chance to offer you a feedback and make sure that your plan is worthwhile and feasible. It should be approximately one page (at most, say, 500 words) detailing your idea for the project. It should:
- Define exactly what the project deliverable is.
- Briefly describe why the project is worthwhile and interesting.
- List the topics that we have studied (or that we will study) in class that are covered by your project. For example: kineamtics, deep/geometric perception, force control, motion planning, etc.
- Discuss any related prior work you have found that is relevant.
- Define specific goals that you expect to have accomplisehd before each of the progress updates. It does not have to be extremely polished, but it does need to provide us with enough information to understand what you are hoping to do. Otherwise, we won't be able to help you!
Progress UpdatesWe will expect 1-paragraph project updates on Set 5 and Set 6 in order to keep us up to date with how you have progressed.
Final PresentationThe project presentation is due by the last day of classes: Tuesday, Dec 8. Extensions may be granted on request. The presentation must have duration of 3 minutes for individual projects and 5 minutes for group projects. Please try to share the 5 minutes evenly between the various members of the group. This year we will require you to upload presentations on Youtube, more details will follow on Piazza.
Final ReportWe expect you to provide a final report of your project by Tuesday, Dec 8. Using the IEEE Template for conference proceedings (probably the LaTeX one, unless you really enjoy using MS Word), write a summary of what you accomplished during your project. Write it, as much as possible, like a conference paper. You should include:
- An abstract.
- An introduction of your project and why you think it is interesting.
- A related work / literature review section
- Your results (partial or work-in-progress is expected, and completely fine!)
- A discussion of your results and potential next steps