-
Notifications
You must be signed in to change notification settings - Fork 27
Assignments
This page contains information about the assignments and the final project.
##Timeline
One important thing is (of course) when the various assignments are due. Below is an overview
- Assignment 1
- Posted: During lecture 4.
- Due: (find this info in the assignment itself)
- Peergrading due: (one week after the hand-in time)
- Assignment 2
- Posted: During lecture 8.
- Due: (find this info in the assignment itself)
- Peergrading due: (one week after the assignment deadline)
The lectures in this class run over 8 weeks. Each week, we will post a number of exercises. After a set of lectures, we will post an assignment. The assignment is a subset of the exercises. This means that, if you solve the exercises each week, the assignments will be easier to do. Since Assignments 1 and 2 will be written reports (IPython notebooks), summarizing the work contained in exercises preceding it.
We will be grading your .ipynb file, it should be uploaded via http://peergrade.io/
-
Assignments should be handed in in groups; see Groups for details. For the delivery:
-
Give the file any name, e.g. Assignment1.ipynb (it will be anonymized by the system anyway)
-
Make sure that your code runs and renders all images, prints, etc. before you save your file and upload. We recommend restarting the kernel under 'Kernel' and then clicking Cell --> Run all before uploading.
-
Double check that your file renders correctly before you upload it to http://peergrade.io/. Remember that you'll be annoyed to get bad evaluations because no one could see your plots.
-
Remember that the Notebook should be anonymous, so don't include your name and student ID.
-
To help us navigate the Notebook, it's a good idea to repeat the question you're answering.
-
Try to control the length of your notebook. While grading, we look at how you prioritize material and express yourself clearly and succinctly.
-
Read the text carefully - make sure you understand the question. And make sure that you answer all sub-questions, etc. (It's easy to miss something, so be thorough).
-
Do not solve all exercises in a single code cell. Split your code according to the questions
-
The notebook is designed to contain your code, so do include it. But do keep it short & neat (minimize long outputs, etc.)
-
Format your plots properly. Axes must be labeled, use %matplotlib inline, etc.
-
Make sure there is text explaining each figure. Use scientific papers as a gold standard for how to comment on figures.
-
Make sure that you use references when they're needed and follow academic standards.
-
Be precise, write in objective language (avoid: "I think ...", "In my opinion...", etc.) - if you make an observation, support it with data.
Below is general feedback, based on your answers to Assignment 1.
- Answering "yes" or "no" to questions is not sufficient. The questions are an invitation for you to reflect on why.
- Example of problematic response. Q: "Do the two arrays have the same length?" A: "No"
- Guessing or eyeballing the answer is not sufficient. You should provide the exact solution.
- Example of problematic response. Q: "Calculate the number of nodes Ncr so that the network has only one component." A: "It can be seen from the plot that it is around value"
- Show that you understand the context of the solution.
- Example of problematic response. Q: "Calculate the number of nodes Ncr so that the network has only one component." A: "9119.78475 nodes"
- Make sure you comment your figures and explain which information you're able to extract from them even if it's not explicitly asked.
- Make sure you add references any time you introduce a formula, algorithm, etc.
- Make sure that your notebook does not contain irrelevant output
- Example: do not submit a notebook, where you printed out a huge list of links in your graph