Skip to content

Assignments

Jonas L. Juul edited this page Oct 23, 2023 · 3 revisions

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)

Assignments 1 & 2

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.

Formalia regarding assignments 1-2

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.

Assignment 2: Extra tips

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

Clone this wiki locally