CSE4/529: Algorithms for Modern Computing Systems
Fall 2020
Prof. Russ Miller
338F Davis Hall (not likely available during 2020-21 academic year due to COVID-19)
Virtual Office Hours via Zoom
Read this before sending e-mail to miller@buffalo.edu
Overview:
This course is concerned with the design, analysis, and implementation
of algorithms for sequential and parallel models of computation. Traditional
algorithmic techniques, including divide-and-conquer, will be discussed.
Models of computation include the
traditional RAM, as well as standard parallel models, including the shared-memory PRAM, as well as networked models configured as arrays, rings, meshes, hypercubes, and pyramids.
We also consider innovative
parallel models that involve dynamic reconfiguration.
In addition, we discuss algorithmic strategies for Network of Workstations, clusters, grids, and clouds.
Problem domains include computational geometry, graph theory, image analysis, sorting, and searching.
Time, space, and processor complexity of solutions to problems are a critical component to the course.
COVID-19 Concern: This course will be presented as a synchronous
on-line course via Zoom.
I will not be recording lectures (you are not permitted to record audio or video of lectures).
Please do not register for
this course if taking such a course is problematic.
- We meet on-line via UB's Zoom system.
- Our success as an online class will depend on the same commitment
that we bring to a face-to-face class.
- We will adopt the same norms as a face-to-face class: take notes;
participate by asking and answering questions; wear classroom-ready clothing;
show respect for your fellow students, the professor, the department,
and the university.
- For everyone’s benefit, join the course in a quiet place whenever possible.
- Turn on your video whenever possible.
- Mute your microphone unless you are speaking.
- If you want to contribute, please unmute your mic and speak clearly. Alternatively, use the Chat area, but note that chat is difficult to follow while
lecturing.
- Close browser tabs not required for participating in class. `
Prerequisites: Calculus I, Calculus II, and a course in Advanced Data Structures.
Students are responsible for
the material in chapters 1-13 of Introduction to Algorithms,
by Cormen, Leiserson, and Rivest. This includes asymptotic notation,
recurrence equations, and quicksort. In addition,
students are also responsible for pointer, lists, stacks, queues, binary trees,
and balanced trees
(e.g., AVL, Red/Black, B-trees).
Lecture: TTh, 2:20p-3:35p, synchronous via Zoom.
Important University Information:
Important Dates
- Exam I (tentatively set for in-class during class time): Thursday, October 8
- Exam II (tentatively set for in-class during class time): Thursday, November 19
- No Class: Tuesday, November 24
- Last Day of Classes: Dec 11
- Final Exam: Tuesday, Dec 15, 3:30-6:30p, Remote (via Zoom)
- Final Exam Instructions: Here
Important Information
- Plagiarism in any way, shape, or form, including obtaining an unauthorized copy of the book, will earn you an F in the course.
In addition, other sanctions may be sought, including, but not limited to,
being dismissed from the university.
Feel free to review the departmental policy and university policy on plagiarism and academic integrity.
- Lectures may not be recorded. This includes, but is not limited to, video and audio recording.
- CSE4/529 will be taught as a graduate-level course in algorithms for modern computing systems.
- There will be no programming projects in this class.
- Class attendance is required.
- There will be no makeup exams.
- If you have a medical issue, documentation is required.
- If you have a conflict with the final exam, you must handle the situation in terms of making arrangements in your other class(es).
- This will be a paper and pencil course. There will be
no programming assignments.
- Introduction to Asymptotic Notation
- Learning Outcome (Middle States Accreditation): Ability to understand the fundamental principles of the field of
Analysis of Algorithms.
Required Reading Material:
- Algorithms Sequential & Parallel (Third Edition), R. Miller and L. Boxer, Cengage Learning, 2013.
- Note that this is the 3rd Edition of the book.
Do not purchase or gain access to, either legally or illegally,
the first or second edition of the book.
Do not steal (illegally obtain) the third edition of the book.
Obtaining any edition of the book without purchase through proper channels is illegal and there are conesquences to such actions.
- Additional material and citations to relevant material will be made available via this Web site.
Projected Order of Material:
- NB: Students responsible for Chapts 1-3
- Asymptotic Analysis
- Divide-and-Conquer (Chapt 9)
- Intro to Parallel Algorithms and Architectures (Chapt 4)
- Combinational Circuits and Sorting Networks (Chapt 5)
- Matrix Multiplication (Chapt 6)
- Parallel Prefix (Chapt 7)
- Computational Geometry (Chapt 10)
- Image Processing (Chapt 11)
Succeeding in this course (student view):
Students consistently state that the following is key to success in this class.
- Work on the course an hour or so per day, seven days/week. Don't let this course slide!.
- Read the material thoroughly prior to lecture.
- Attend lecture, pay attention, take notes by hand, participate.
- Transcribe notes daily. Do/create practice problems.
- Spend time with the TAs at least once a week. Be prepared. Work through problems and/or discuss areas of confusion.
Piazza: http://piazza.com/buffalo/fall2020/cse4529
Grading Policy:
- Important: Given the on-line state of this course for the first time, I will take
student input on the best way to evaluate performance in this class, and will
try and finalize the grading policy by the end of the second week of class.
-
CSE 4/529 is a graduate-level course in Algorithms. CSE 429 students
will be graded separately and on a different scale from CSE 529 students.
- Graded Materials (tentative due to COVID-19 adjustments and best practices for on-line examinations)
- CSE429
- A maximum of 1 point per week (10 points maximum) for attending
a TAs office hour and having a significant discussion with the TA on
CSE429 material: 10% of your grade.
- Midterm I: 25% of your grade.
- Midterm II: 30% of your grade.
- Final Exam: 35% of your grade.
- Extra Credit: Minimum of 6 points, presented in no guaranteed distribution, over the exams.
- CSE529
- Midterm I: 30% of your grade.
- Midterm II: 30% of your grade.
- Final Exam: 40% of your grade.
- Extra Credit: Minimum of 6 points, presented in no guaranteed distribution, over the exams.
- Course Grades
- CSE 429 Final Letter Grades. These are the final "curved" grades.
These numbers include the additional bonus points (i.e., there will be more
than 100 points available in the course).
There will be "+"s and "-"s that will be determined after the numeric
grading for the semester is complete.
- A: 75+
- B: 60+
- C: 50+
- D: 35+
- F: <35
- CSE 529 Final Letter Grades. These are the final "curved" grades.
These numbers include the additional bonus points (i.e., there will be more
than 100 points available in the course).
There will be "+"s and "-"s that will be determined after the numeric
grading for the semester is complete.
- A: 85+
- B: 75+
- C: 60+
- D: 50+
- F: <50
- Sample Exams (Midterms only)
- Personnel
- Dr. Russ Miller
- Office Hours: TTh, after class & by appointment
- T.A.: Deen Mohan e-mail
- Office Hours (and by appointment)
- Mondays 6:30p - 7:30p EST via Zoom (see piazza)
- Wednesdays 6:30p - 7:30p EST via Zoom (see piazza)
- T.A.: Chen Yuan e-mail
- Office Hours (and by appointment)
- Wednesdays Noon - 1:00p EST via Zoom (see piazza)
- Thursdays 7:00p - 8:00p EST via Zoom (see piazza)
- Fridays 1:00p - 3:00p EST via Zoom (see piazza)
- T.A.: Alessandro Baccarini e-mail
- Office Hours (and by appointment)
- Thursdays 11:00a - Noon EST via Zoom (see piazza)
Disclaimer: I reserve the right to change any part of this
tentative syllabus at any time.
Copyright © 2020 by Russ Miller.
All rights reserved. No part of this document may be used
in any form by any electronic or mechanical means without permission
in writing by the author.