CS81 Adaptive Robotics

Final Project

This project consists of four parts, see the individual due dates given below.

Getting started

Use the github server to get the starting point directory for your project. This is where you should eventually put your project proposal, presentation slides, and final paper (all as PDFs). You may also use this directory to save your experimental code and results.

Project ideas

  • You may explore any of the topics we have discussed this semester, including:
    • Using evolutionary methods such as NEAT or Novelty
    • Using developmental robotics methods such as Intelligent Adaptive Curiosity
    • Using deep learning methods such as feedforward, convolution, or recurrent networks
    • Using reinforcement learning
    • Using unsupervised learning
  • Try to reproduce and extend an experiment we read about.
  • Devise a new experiment using a method we discussed.
  • Try to improve on a method we discussed.
  • Invent your own adaptive approach, possibly using aspects of systems we examined.
  • Explore an adaptive technique that we did not discuss in class.
  • Look at previous student projects to get ideas:

When conducting research, it is beneficial to work incrementally towards your ultimate goal. In other words, start with the simplest version of your idea that is likely to yield interesting results. If that works, you can then add another level of complexity. This approach is more effective then beginning immediately with a very complex set up.

Writing tips

  • Use LaTeX: Computer scientists typically use LaTeX to write their research papers. I have created a template that you may use to create your final paper. It is available in:
    Review the README file in this directory to see how to use this LaTeX template.
  • Start early: You should start writing the paper before the experiments are complete. Begin with the introduction, related work and bibliography. Then move on to the describing the experiments. Only the explanation and significance of the results need to wait until the experiments are complete.
  • Properly cite related work: The purpose of writing a research paper is to communicate your discoveries to others. It is important to explicitly acknowledge how your work relates to other work. This can be done either with a direct quotation from another source or by summarizing the key points from another source. You should avoid paraphrasing another source as this can border on plagiarism. When summarizing another source, explain the essential information in your own words. When using the exact language from another source, you must use quotation marks. For a direct quotation, provide a reference with a page number. When summarizing another source, you should also provide a reference, but a page number is not necessary.

1. Proposal (5%), due by noon on Monday, Nov. 6

Your proposal should be written in LaTeX, and be 2-3 pages long. It should include a clear description of:

  • the proposed learning task
  • the adaptive method being tested
  • your hypothesis and expected outcome
  • what experiments will be run
  • your plan for analyzing the results to demonstrate whether your hypothesis is correct

You should track both the .tex file and the .bib file in the proposal subdirectory of your project repository. Be sure to add, commit, and push a file called proposal.pdf by the due date.

2. Checkpoint Demonstration (5%), Nov. 20 or 21

Each group or individual doing a project will give a demonstration during the week of November 20. Your experiments do not need to be completed at this point, however be prepared to execute some implemented aspect of your system.

You should plan to speak for 10 minutes with an additional 5 minutes for questions. You are encouraged to use slides for this demonstration. Begin by describing your project (cover the same points as in your project proposal) and then demonstrate some aspect of your project.

3. Presentation (10%), Nov. 30, Dec. 4, 5, 7 or 12

You will give a 20 minute presentation about your project with an additional 5 minutes for questions. Each group or individual doing a project will be assigned a time to speak during the last three weeks of class.

It may be the case that you are still running experiments at this point. There may be parts of the project that are still in flux or aren't working as you'd hoped. However, you must have some preliminary results to report. Try to focus on the positive results.

If it is a team project, then each team member should speak for an equal portion of the time. You must use slides of some kind.

You should follow these guidelines (put together by Tia Newhall) when creating your talk. Here is an example research presentation that I gave at the 2009 Epigenetic Robotics Conference in Venice, Italy.

You should push a file called presentation.pdf, which contains your slides, into your project repository prior to your presentation.

4. Paper (25%), due by 3pm on Dec. 18

Your paper should be written in LaTeX and be 8-10 pages long. It should include the following sections:

  • A short abstract of 200 to 300 words summarizing your findings.
  • An introduction that contrasts your study with other related work. Find and read at least three articles related to your experiment and discuss these papers here.
  • A detailed description of your experiments. There should be enough information provided so that someone could reproduce your experiments.
  • An explanation of the results. Use figures and tables where appropriate.
  • A discussion of the significance of the results.
  • A bibliography.

Recall that I have provided you with a LaTeX template (see "Writing tips" above).

You should track both the .tex file and the .bib file in paper subdirectory of your project repository. You should add, commit, and push a file called finalpaper.pdf by the due date.

Project etiquette

Your project experiments may require a lot of time to run. Please read the following suggestions for how to conduct your experiments so as not to disrupt the work of other students. If you expect that your experiments will be computationally intensive, please meet with Jeff Knerr to make a plan for when and on which machines to run them.