Requirements for the Doctoral Program in ACO
The Coordinating Committee for the Ph.D. program in Algorithms,
Combinatorics, and Optimization
has established the following core curriculum. This curriculum
is designed to provide students with significant flexibility in choosing
courses, while simultaneously ensuring a solid grounding in the fundamentals of
More information on specific courses can be found in the home
All ACO students will be required to take 2 semester CS classes, 2
semester Math classes, and the equivalent of 2 semester Tepper classes (i.e 4 mini classes). Also required is 1 probability class.
- The 2 CS classes will include Algorithms (15-750), plus one additional theoretical class chosen from the following courses.
- 15-855 Computational Complexity Theory
- 15-857 Analytical Performance Modeling of Computer Systems
- 15-859 Special Topics in Theory: Advances in Coding Theory
- 15-859 Special Topics in Theory: Algorithmic Superpower Randomization
- 15-859 Special Topics in Theory: Advanced Algorithms
- 15-859 Special Topics in Theory: Spectral Graph Theory and The Laplacian Paradigm
- 15-896 Algorithms, Games, and Networks
- The 2 Math classes will include Discrete Math (21-701), plus one additional math class from the following courses:
- 21-610 Algebra
- 21-720 Measure and Integration
- 21-737 Probabilistic Combinatorics
- 21-738 Extremal Combinatorics
Students who are based in the Department of Mathematical Sciences are required to complete Algebra (21-610), Measure and Integration (21-720) and Probability (21-721).
The 4 Tepper mini classes will include Linear Programming (47-834), Convex
Optimization (47-851), Integer Programming (47-830)
as required classes, plus one more mini from the following courses:
The 1 probability class will include one of: Probability (21-721),
Probability Theory and Stoch Processes I (36-753), or Analytical
Performance Modeling (15-857).
- 47-835 Graph Theory
- 47-836 Networks and Matchings
- 47-831 Advanced Integer Programming
- 47-862 Constraint Programming
- 47-xxx Combinatorial Optimization
Students who are based in the Tepper School are required to
complete two additional mini classes
from the Tepper school.
Every ACO student will be required to take the same Qualifying Exam.
This exam will be given in January after the student's 3rd semester. The
exam will contain 1 question on Algorithms, 1 question on Discrete Math, 1 question on Linear Programming, 1 question on Convex Optimization, 1
question on Integer Programming.
Please see http://aco.math.cmu.edu/ACO_CSD_qual_reqs.html
for specific exam requirements for Computer Science Department ACO students.
Research is obviously a big component of the ACO program. Each department has different research expectations, as well as policies, for when students should find research advisors. You should talk with your department head to understand the research expectations for your department.
Weekly Research Seminar
During your participation in the Algorithms, Combinatorics, and Optimization program, you are expected to
participate in the weekly ACO research seminar.
You are also
expected to take advanced courses in the area of your research in
addition to the course requirements listed above.
Regardless of your home department, by the end of the third semester (if not earlier), you must
choose a faculty member to supervise your research and dissertation. As an ACO student, you will be subject to an annual review by the ACO
faculty who will judge whether the thesis work is proceeding
satisfactorily. The procedures for forming a thesis committee, completing
a thesis proposal, and defending the thesis are governed
by the rules of the student's home department.
Teaching and Programming Skills
To graduate, you will need some teaching experience, and all
students must demonstrate
programming skills. (For every student, a faculty member, approved by the student's advisor,
must attest that the student has adequately demonstrated programming skills.)
Back to the ACO home page