Welcome to the Spring 2017 homepage for CMPSCI 311: Introduction to Algorithms. Below find basic information, coursework and schedule, and detailed course policies.

Basic Information

Instructor Dan Sheldon, (email: sheldon at cs )
Lecture Monday, Wednesday 4:00-5:15pm, Goessmann Laboratory Room 20
Required Textbook Algorithm Design, 1st edition by Jon Kleinberg and Eva Tardos
Piazza https://piazza.com/umass/spring2017/cmpsci311section2/home
Moodle https://moodle.umass.edu/course/view.php?id=35771
Gradescope https://gradescope.com/courses/5956
TA Pardis Malekzadeh (email: pardismlkzdh at gmail)
Office Hours (Dan) Thursday, 2–3pm (CS 246)
(Pardis) Thursday 10-11am (LGRC A303)
(Pardis) Friday 10-11am (LGRC A303)

Coursework and Schedule

Exams

Homework

Schedule

Here is an approximate schedule for the course. This is subject to change and will be updated as we go. Slides will be added after class—links will be broken until they are added. Note that lectures will include a mixture of slides and board work, and material presented on the board is not necessarily reflected in the slides. Another set of slides that roughly matches the material we cover can be found here.

Week Date Topic Reading and Background
1 Lec 01 1/23 Introduction and Stable Matching Chapter 1
Lec 02 1/25 Algorithm Analysis Chapter 2.1, 2.2
Dis 01
2 Lec 03 1/30 Algorithm Analysis, Graphs
Lec 04 2/1 Graphs Chapter 3.1, 3.2
Dis 02
3 Lec 05 2/6 Graphs Chapter 3.3–3.6
Lec 06 2/8 Greedy Chapter 4.1
Dis 03
4 2/13 MISSED LECTURE
Lec 07 2/15 Greedy Chapter 4.2
Dis 04
5 2/20 No Class – President’s Day
Lec 08 2/22 Greedy Chapter 4.4
Dis 05
6 Lec 09 2/27 Greedy Chapter 4.5-4.6
Lec 10 3/1 Review
Dis 06
7 Lec 11 3/6 Divide and Conquer Chapter 5.1, 5.2
Lec 12 3/8 Divide and Conquer Chapter 5.4, 5.5 <!– Integer multiplication, closest pair of points –
Dis 07
SPRING BREAK (week of 13 Mar)
8 Lec 13 3/20 Dynamic Programming Chapter 6.1, 6.2
Lec 14 3/22 Dynamic Programming Chapter 6.3
Dis 08
9 Lec 15 3/27 Dynamic Programming Chapter 6.4
Lec 16 3/29 Dynamic Programming Chapter 6.8
Dis 09
10 Lec 17 4/3 Network Flow Chapter 7.1
Lec 18 4/5 Network Flow Chapter 7.2
Dis 10
11 4/10 CLASS CANCELED
Lec 19 4/12 Network Flow Chapter 7.5, 7.10
Dis 11
12 4/17 No Class — Patriot’s Day
Lec 20 4/18 Intractability (Monday schedule) Chapter 8.1
Lec 21 4/19 Intractability Chapter 8.2
Dis 12 (only Tuesday Discussion)
13 Lec 22 4/24 Intractability Chapter 8.3
Lec 23 4/26 Intractability Chapter 8.4
Dis 13
14 Lec 24 5/1 Approximation Algorithms / Wrap-Up Chapter 11.1, 11.2

Detailed Policies

Prerequisites

CS 187 and CS 250 are important prerequisites. These provide familiarity with basic data structures and mathematical reasoning. You should be able to program in Java, C, or a related language.

Textbook

The required textbook is Algorithm Design, 1st edition by Jon Kleinberg and Eva Tardos. It will be used for readings and homework problems.

Coursework

Students will complete:

Grading

Collaboration

Online Quizzes

Quizzes will be issued before the weekend and must be submitted before 8pm on Monday. No credit will be given for late quizzes, but the lowest scoring quiz will be dropped.

Homework Submission and Late Policy

Homework will be submitted via GradeScope. You may type up your answers in Latex and compile to pdf (preferred) or hand-write your homework and scan to pdf. If scanned, the pdf must be rotated correctly, scanned at high quality, and readable at a standard letter size. If the homework is not submitted in the correct format, it will not receive credit. Unreadable work, scratching out, etc. will not be graded. You should view the pdf once you submit to ensure it meets these minimum standards. Review the gradescope submission workflow (here and here) to make sure you upload and annotate your homework correctly.

Late policy. A 50% penalty will be applied for homework that is late by 5 minutes up to 24 hours. Homework that is late by more than 24 hours receives no credit. However, each student is allowed to submit one homework up to 24 hours late without penalty.

Discussion

The discussion section will be used every week except when noted on the course schedule and will consist of exercises to practice solving problems in small groups. Attendance is required. Exercises will be submitted at the end of the discussion and count toward course grade.

Course Technology

Inclusivity

Please read the CICS inclusivity statement, copied here:

The College of Computer and Information Sciences shares UMass Amherst’s commitment to diversity. We welcome all individuals regardless of age, background, citizenship, disability, sex, education, ethnicity, family status, gender, gender identity, geographical origin, language, military experience, political views, race, religion, sexual orientation, socioeconomic status, and work experience. We expect all members of our community to treat others with respect and civility.

Accommodations for Disabilities

If you have a disability and would like to request accommodations, please contact Disability Services, located in 161 Whitmore Hall, (413) 545-0892. If you are eligible, they will grant you accommodations and notify the instructors.