Machine Problems

General MP Instructions

Each MP is distributed as a ZIP archive. In the ZIP archive, you will find the following files:

  • submitted.py - this is the only thing you will submit. It contains several RuntimeError lines that you need to replace with working code.

  • notebook.ipynb - this is provided to help you debug. It doesn’t need to work, but we hope that you will enjoy the MP more if you use this Jupyter notebook to help you debug submitted.py. An example of how it should look, when everything works, will be linked from each MP’s page.

  • grade.py - this is the same code that the autograder runs. Before you submit to the autograder, please try running this on your own machine ($ python grade.py). If it shows any errors, please fix them on your own machine before you try submitting to the autograder – you will save a lot of time! The autograder will run all of the same tests that are available to you, plus a few more hidden tests.

  • data - this directory contains some sample data, used by the notebook and the autograder.

  • solutions - this directory contains solutions to the visible tests (but not the hidden tests). If you want to know why grade.py is giving you a bad score, please compare your solution to the solutions provided here.

  • requirements.txt lists the python packages that are used by the autograder. You can install them by typing pip install -r requirements.txt.

How to Submit

When you’re ready to submit, go to Gradescope.

  • Submit only the one file, submitted.py. Any other files you submit will be ignored.

  • You may submit as many times as you like. By default, we willl count your last submission; if you want us to grade a submission other than your last one, please select it using the Gradescope user interface.

MP Grading Policy

Machine problems are graded by the autograder.

You are allowed to submit any MP late, with a penalty: your MP grade will be multiplied by \(\max(0.5,1-t/28800)\), where \(t\) is the lateness of your submission, in minutes. For example, if you’re late by one day, you can earn 95% credit; if you’re late by any number of days greater than 10, you can still earn up to 50% credit.

Warning

Warnings about the late penalty

  • Gradescope does not show you the late penalty. If you want to know what your score really is, you need to check Gradescope’s lateness field, and calculate your late penalty yourself.

  • The late penalty is not waived for travel, trauma, interviews, religious holidays, or for any illness or injury that leaves you with the use of your hands. It is not waived on account of computer crashes; please back up your work.