Skip to content

Homeworks and grading

Michael Diskin edited this page Mar 30, 2022 · 22 revisions

This page contains outdated info!

This section is stricly for on-campus HSE and YSDA students

Homeworks

This course uses Anytask — a platform for submitting homeworks. Below are the invite codes onto it.

First thing you need to do is to register there. Just follow the link to the course and enter the appropriate code.

Default deadlines

Deadlines for each assignment are set in 10 days from the corresponding seminar, unless explicitly specified otherwise. Assignments are added each week unless explicitly specified otherwise.

Grading

The course grade is derived from the total of points obtained by completing seminars, homework assignments and optional projects. There will be no course exam at the end.

Some assignment examples are “Implement value iteration algorithm for gridworld”, “Implement and optimize approximate crossentropy method with basic neural networks”, “Compare continuous RL approaches to bipedal robot walking problem”

All assignments have descriptions in ./week*/README.md

Almost all assignments will have a jupyter notebook handout and a “your code for X goes here” style problems. A fully and correctly implemented solution yields maximum points for that problem (sometimes more, depending on the assignment). Doing something great on top of that yields bonus points.

Lateness penalty

Assignments are subject deadlines and will yield less points if submitted past deadline. In particular, submissions past deadline will be penalized by -10% of point worth per day to a total of -60% of points.

If you think that you have special circumstances (medical/personal issues) that prevented you from completing an assignment in time, chat with course staff about that. We can delay lateness penalty for you.

Resubmission

Tasks that got imperfect grade can be re-submitted! This privilege can be granted by a staff member responsible for checking the specific home assignment.

Generally, resubmission is available if there is a bug in one of your task - and for that task only. It can be fixed and then sent back even after deadline. Otherwise, if a certain task isn't solved in the originally submitted assignment, any additional points you get for solving it are subject to lateness penalty.

Reusing code

Using code parts from other students or from the web is forbidden with one exception. One can reuse code from other students / the internet to solve technical issues and auxiliary problems that are less than half of your original assignment. For instance, if your assignment is to implement policy gradient training for neural networks, it is legal to reuse public code for one-hot encoding but illegal to reuse code for policy gradient training from e.g. OpenAI baselines or someone else's solution.

Cheaters will be punished in ways from zeroing out some parts of a specific assignment to unsatisfactory grade for the course for continued violations. There can also be ingenious punitive measures up to the imagination of course team. TL;DR do not cheat :)

Frameworks

One can use any languages/frameworks beyond the recommended one at his own risk. But seriously, if you’re not Andrej Karpathy or Volodymyr Mnih or something, at least consider the recommended way; Yes, we know that <your_language/framework_name> is infinitely superior in all aspects. So what?

Final grade (YSDA)

Final grade depends on a sum of points, divided by 10 and rounded to nearest integer in [0, 10].

count = min(10, max(0, round(float(points) / 10.0)))

If you wanna get really technical, this formula was obtained under python3.5.2 on ubuntu x64 with Core i7-3687U CPU and no one trying to hack it :)

Grades are obtained from count through a mapping: [9, 10] -> 5, [6, 7, 8] -> 4, [4, 5] -> 3, [0, 1, 2, 3] -> 2

Final grade (HSE)

HSE students have less assignments and therefore lower point totals. The final grade is computed directly from the number of points (no rounding).

  • points >= 75 -> grade 10
  • points >= 65 -> grade 9
  • points >= 55 -> grade 8
  • points >= 45 -> grade 7
  • points >= 35 -> grade 6
  • points >= 25 -> grade 5
  • points >= 15 -> grade 4