RPM Project: Final Project (Spring 2023)

First, make sure to read the full project overview. It contains instructions for the project as a whole and getting started with the code. This page describes only what you should do for the final project submission within the broader context of that project overview.

For the final project submission, you will do the same thing you have done on the milestones, but you will be graded on your agent’s final performance on all Basic and Test problems. You will also write a more formal report on your final agent design. 50% of your project grade is earned based on your agent’s performance; 50% of your grade is earned by completing the final project report.

Performance Score

For the final project, you will receive 1 point for each Basic and Test problem your agent correctly solve across all 96 Basic and Test problems. Your maximum score is therefore 96/96, which would earn the full credit for your performance score. Answering 77 out of 96, for instance, would earn you an 80% for a performance score, which would be 40 points (out of 100) for your full project grade.

Remember that when submitting answers to Gradescope, the answer choices are shuffled: the content of the correct answer to each problem will be the same every time, but it will be assigned a different number on each submission as a guard against hardcoding and overfitting.

Submission Instructions

To earn your performance score, follow the directions on the full project overview for submitting to Gradescope, and then submit your agent to the Final Project assignment.

You may submit up to 40 times. The large majority of students do not need nearly that many submissions, so do not feel like you should use all 40; this cap is in place primarily to prevent brute force methods for farming information about patterns in hidden test cases or submitting highly random agents hoping for a lucky submission. Note that Gradescope has no way for us to increase your individual number of submissions, so we cannot return submissions to you in the case of errors or other issues, but you should have more than enough submissions to handle errors if they arise.

After submitting to the Final Project assignment in Gradescope, make sure to select which submission you want to have count for your graded submission. By default, Gradescope will use your latest submission, but you may want to use an earlier one. After the deadline, this will be exported to Canvas to calculate your final Milestone grade.

This is an individual assignment. All work you submit should be your own. Make sure to cite any sources you reference or code you use (in accordance with the broader class policy on code reuse).

Final Project Report

In addition to submitting an agent to Gradescope, you will also submit a Final Project Report to the Final Project assignment in Canvas. Your Final Project Report must be written in JDF format. It may be up to 10 pages. If you need to include more than 10 pages of content, you may include them in the appendices, but note that content in appendices will not be used for grading; it may just be useful if you want to include long sequences of images or diagrams that quickly meet the page limit.

Your Final Project Report is more formal than your Milestone Journals; it is meant to present the design of your agent and your observations on its performance and relationship to human cognition. Your Final Project Report will also be graded more strictly as well. Unlike your Milestones, however, your Final Project Report may borrow content directly from your Milestone descriptions as it is intended to be a standalone final write-up.

Your Final Project Report should answer the following questions. They should be answered separately; we want to see a description of your agent’s process, and then see that description applied to selected problems.

  • How does your agent work?
  • How well does your agent perform across all the Sets of problems?
  • What problems does your agent solve successfully? Select 3 (or more) problems, ideally with significant differences, that your agent solves correctly and describe your agent’s reasoning process.
  • Where does your agent struggle? Select 2 (or more) problems that your agent does not solve correctly and describe the breakdown in your agent’s reasoning process.
  • How would you characterize your overall approach to designing your agent? For example, is your agent described by an ever-expanding suite of heuristics it chooses from? Did you throw out one approach altogether and start over with a new one?
  • How similar do you feel your final agent is to how you, a human (we assume), would approach the test? Does your agent approach it the same way? Why or why not?

Submission Instructions

Complete your final project report using JDF, then save your submission as a PDF. Journals should be submitted to the corresponding assignment submission page in Canvas. You should submit a single PDF for this  assignment. This PDF will be ported over to Peer Feedback for peer review by your classmates. If your assignment involves things (like videos, working prototypes, etc.) that cannot be provided in PDF, you should provide them separately (through OneDrive, Google Drive, Dropbox, etc.) and submit a PDF that links to or otherwise describes how to access that material.

This is an individual assignment. All work you submit should be your own. Make sure to cite any sources you reference, and use quotes and in-line citations to mark any direct quotes.

Peer Review

After submission, your journal will be ported to Peer Feedback for review by your classmates. Grading is not the primary function of this peer review process; the primary function is simply to give you the opportunity to read and comment on your classmates’ ideas, and receive additional feedback on your own. All grades will come from the graders alone. See the course participation policy for full details about how points are awarded for completing peer reviews.