Instructor |
Greg Plaxton; office hours T 3-4 and W 3:30-4:30 in GDC
4.512; plaxton at cs dot utexas dot edu.
|
|
|
Teaching Assistant |
Akhil Jalan; office hours M 3:30-4:30 in GDC 4.516 (starting 1/27/25), F 2-3 in GDC 4.440 (starting 1/17/25);
akhiljalan at utexas dot edu.
|
|
|
Class Time |
MW 2-3:30 |
|
|
Class Location |
GDC 4.304 |
|
|
Lectures Online |
Any material displayed over the projector during the lectures
will be automatically captured by the Lectures Online system. The
resulting recordings will populate in the Lectures Online section of
Canvas.
|
|
|
Recommended Textbook |
There is no required textbook for this course. However, several of the
lectures are based on material from
Introduction to Algorithms by Cormen, Leiserson, Rivest, and
Stein. Other good references are Algorithm Design by Kleinberg
and Tardos and Algorithms Erickson. The latter text can be
downloaded for free from Jeff's UIUC website. See also the additional
lecture notes available on Jeff's website under the heading "More
Algorithms Lecture Notes".
|
|
|
Course Outline |
This is a graduate course in the design and analysis of
algorithms. Some of the course material revisits topics that are
covered in a typical undergraduate algorithms course; in such cases,
we tend to emphasize more advanced aspects. The course material is
organized into five modules as indicated in the table below. The slides
listed in the table may be found (with extension .pdf) in the Files
section of Canvas.
Module |
Slides |
Topic |
1 |
1A_introduction |
Growth of functions; divide-and-conquer algorithms |
1 |
1B_fast_fourier_transform |
The Fast Fourier Transform algorithm |
1 |
1C_basic_graph_algs |
Graph traversal |
1 |
1D_dynamic_programming |
Dynamic programming |
2 |
2A_greedy |
Greedy algorithms |
2 |
2B_matroids |
Matroids |
2 |
2C_amortized_analysis |
Amortized analysis |
2 |
2D_splay_trees |
Splay trees |
3 |
3A_fibonacci_heaps |
Fibonacci heaps |
3 |
3B_union_find |
Data structures for disjoint sets |
3 |
3C_ford_fulkerson |
The Ford-Fulkerson max-flow algorithm |
3 |
3D_edmonds_karp |
The Edmonds-Karp max-flow algorithm |
3 |
3E_push_relabel |
Push-relabel max-flow algorithms |
4 |
4A_min-cost_perfect_matching |
Minimum-cost bipartite perfect matching |
4 |
4B_linear_programming |
Linear programming |
4 |
4C_p_and_np |
The complexity classes P and NP |
4 |
4D_np-completeness |
NP-completeness |
4 |
4E_np-completeness_and_beyond |
NP-completeness; classes beyond NP |
5 |
5A_load_balancing |
Approximate load balancing |
5 |
5B_vertex_cover |
Approximability of vertex cover |
5 |
5C_set_cover |
Approximability of set cover |
5 |
5D_randomized_algorithms |
Randomized algorithms |
5 |
5E_hypercube_routing |
Randomized routing on the hypercube |
|
|
|
Prerequisites |
Graduate standing and an undergraduate algorithms course, or consent
of the instructor.
|
|
|
|
Online Forum |
Ed Discussion (accessible within Canvas) will be used for online
discussion of the course material. If you have a question for the
instructional staff that might be of interest to someone else, you
should generally post it to the online forum instead of sending an
email.
|
|
|
Solved Exercises |
At the beginning of each module, a set of solved exercises will
be released (in the Files section of Canvas). If you are having
difficulty understanding one of the solved exercises or sample
solutions, you are encouraged to attend office hours or to post a
question on Ed Discussion.
|
|
|
Tests |
There will be five tests administered during the usual lecture
period. No course materials or electronic devices (including
calculators) may be used during the tests. The calendar below shows
when each test will take place. It also indicates which lecture slides
will be covered in each of the remaining class meetings. Each of Tests
1 through 5 will be based on the lectures and solved exercises for the
corresponding module.
Week |
Monday |
Wednesday |
1/13-1/17 |
1A |
1B |
1/20-1/24 |
MLK |
1C |
1/27-1/31 |
1D |
2A |
2/03-2/07 |
T1 |
2B |
2/10-2/14 |
2C |
2D |
2/17-2/21 |
3A |
T2 |
2/24-2/28 |
3B |
3C |
3/3-3/7 |
3D |
3E |
3/10-3/14 |
4A |
T3 |
3/17-3/21 |
SPRING |
BREAK |
3/24-3/28 |
4B |
4C |
3/31-4/04 |
4D |
4E |
4/07-4/11 |
5A |
T4 |
4/14-4/18 |
5B |
5C |
4/21-4/25 |
5D |
5E |
4/28-5/02 |
T5 |
|
|
|
|
Make-Up Tests |
Please note that no make-up tests will be given in this course. If a
student has a legitimate and properly documented excuse for missing
one of the tests, the missing test score will be estimated based on
the other test scores. In the event of an unexcused absence, a score
of zero will be assigned. |
|
|
Overall Raw Score |
Each student will be assigned an overall raw score out of 100, with
each of the five tests counting for 20%.
|
|
|
Letter Grades |
The numerical cutoffs between different letter grades will be
determined at the end of the semester. (In my recent offerings of
this class, the median letter grade has been either a B+ or an A-.)
|
|
|
Disability & Access |
Students with disabilities may request appropriate academic
accommodations from the Division of Diversity and Community
Engagement, Services for Students with Disabilities, 512-471-6259.
The university is committed to creating an accessible and inclusive
learning environment consistent with university policy and federal and
state law. Please let me know if you experience any barriers to
learning so I can work with you to ensure you have equal opportunity
to participate fully in this course. If you are a student with a
disability, or think you may have a disability, and need
accommodations please contact Disability & Access (D&A). Please refer
to the D&A
website for more information. If you are already registered with
D&A, please deliver your Accommodation Letter to me as early as
possible in the semester so we can discuss your approved
accommodations and needs in this course.
|