CS 35/135: Data Stream Algorithms [archived]
Spring 2020 | Professor: Amit Chakrabarti

Homework Sets

Besides Homework 0, which is used solely to assess your preparedness for the course, there will be four "real" Homework sets, spread through the term. Due dates are noted in the schedule tab.

On each (real) homework, you are allowed to collaborate (fully) in teams of size at most three. Each teams should make one joint submission. At least one week before each homework is due, I should know the names of the team members you'll be working with. If I don't I will assume that you will be working solo on that homework. Make sure you don't begin any collaboration on specific homework problems before I know your team.

Final Project

Each registered student should complete a final project consisting of some mix of the following.

  • A term paper on a current research topic in data streaming/sketching algorithms.
  • A slide-based presentation on a research paper in data streaming/sketching not already covered in the lectures.
  • A substantial programming project that complements or illuminates something done in the lectures.

Please go to the project tab for some detailed suggestions and expectations for a project. I realize that this particular term has some unique challenges. My general thoughts about them are expressed in the COVID-19 tab.

Grading Standards

Homework problems

Since this is a course on higher-level learning, with an important goal being to prepare you to read modern research literature, I will not be grading homework for points. Instead, each problem will be graded according the following standards.

  • Gold coin (GC): The solution is all correct and has no major flaws or logical holes, except perhaps typos.
  • Silver coin (SC): The solution is at least halfway towards being complete, but maybe it's missing a proof detail or has a fixable, non-fundamental flaw.
  • No coin (NC): Neither of the above. Either too little progress or there's something very wrong in the submission.

Final project

Your project will be graded on a scale of zero to five stars, based on its topical relevance, technical depth, and presentation quality.

Most students have chosen to do a paper presentation for their final project. In this case, you can earn up to one star for each of the following:

  • connecting your chosen topic with the course's overall themes or ideas;
  • demonstrating that you have understood the technical details at a reasonable depth;
  • giving a presentation that teaches your fellow students some of the material;
  • submitting a well-written review of the paper (as noted in the project tab);
  • going above and beyond the minimum requirements in any of the previous three categories.

Your course grade

This edition of the course is being graded on a CT/NC basis for CS 35 students and on an HP/P/LP/NC basis for CS 135 students. To earn a grade of CT, by the end of term, you should earn

  • at least M gold coins, and
  • at least N coins in total, and
  • at least S stars on your final project,
where M = 6, N = 11, S = 3 (final decision). If you exceed these standards significantly, you will be recognized with an academic citation.

[On Apr 7, I had suggested M = 7, N = 12, S = 3. The above values supersede this.]