Course
Requirements 
Program
Name 
Required
Courses

Electives

Computational
and Statistical Learning 
5
courses
 10701
Machine
Learning
 10702
Statistical Approaches
for Learning & Discovery
 10705
Intermediate Statistics
 10713
Multimedia Databases
and Data Mining, (when 10713 is not offered, 15721 may be taken
instead).
 15750
Algorithms or 15853 Algorithms in the Real World

3
courses
 10661/80616:
Probability &
Artificial Intelligence
 10670 Data
Profiling &
Privacy
 10683/11747
Machine Learning
for Text Mining,12 units, (not currently offered)
 10697:
Research
& Reading
 11741:
Information Retrieval
 11761:
Statistical Methods
in Language Technologies (was Language and Statistics)
 15780:
Advanced
AI Concepts
 15829(A):
Advanced Database
 15854:
Machine
Learning Theory
 15887A:
Planning, Execution
and Learning
 16721:
Advanced
Robot Perception
 36703:
Intermediate Probability
 36707:
Regression Analysis
 36708:
Linear
Models and Experimental
Design
 36711:
Statistical Computing
 36720:
Discrete
Multivariate
Analysis
 36722:
Continuous Multivariate
Analysis
 36724:
Applied
Bayesian Methods
 36728: Time
Series Analysis
I
 36730: Time
Series Analysis
II
 36732:
Topics
in Biostatistics
 36734:
Survey
Sampling
 36736:
Nonparametric Methods
 36738:
Topics
in Applied Statistics
 80600:
Minds,
Machines &
Knowledge
 80610:
Logic
& Computation
 80710:
Model
and Computability
 80810:
Logic
& Computation
Seminar I

Computation,
Organizations and Society 
5
Star courses
 15780
Advanced
AI Concepts
 Either:
15750
Algorithms, 15781
Machine Learning, Privacy Algorithms
 Either:
10705
Intermediate
Statistics, 10751 Probability and Statistics for Computer Science,
36727
Probability and Mathematical Statistics II
 17952
Dynamic
Organizations
and Networks
 Computation,
Organizations and
Society (COS) Lab

36
units (~3 courses)
Selected
electives related
to analytical methods:
 47835 Graph
Theory
 47836
Networks
and Matching
 21690
Methods
of Optimization
 47840
Dynamic
Programming
 47811 or
90906
Econometrics
 47856
Linear
Programming
 47830
Integer
Programming
 10661
Probability and AI
 11741
Information retrieval
 16720
Computer
Vision
 15849
Performance Modeling/Stochastic
Processes
 21691
Nonlinear
Optimization
Suggested electives
related
to social and organizational processes:
 45899
Knowledge
Management
& Organizational Learning (6 units)
 45890
Seminar
in Organizational
Theory (6 units)
 90903
Social
network theory
 90919
Social
network methodology
 17950:
Computational Modeling
of Complex SocioTechnical Systems
 90796 Human
Resource Policy
and Planning
Suggested electives
related
to managerial and business methods:
 15892
Foundations of Electronic
Marketplaces
 46866
Supply
Chain Management
 47801 or
90908
MicroEconomics
 47761
Seminar
in Manufacturing
Management
 20763
Electronic Payment Systems
 20863
Mobile
Commerce
Suggested electives
related
to privacy technology:
 10711
Privacy
in Data
 15827
Security
and Cryptography
 15899
Digital
Rights Management
– Technology, Policy & Societal Issues
 18730
Introduction to Computer
Security
 95751
Organizational Management
and Information Security
Suggested electives
related
to policy decisionmaking:
 19701
Theory
and Practice of
Policy Analysis
 19702
Quantitative Methods
for Policy Analysis
 19712
Telecommunications, Technology
Policy & Management
 46830
eCommerce
Law and Regulation
 47818
Contract
Theory
 90703
Internet
and Public Policy
 90840
Legislative Policy Making

Computer
Science 
5
courses, one
per area below:
 Algorithms
&
Complexity
 Algorithms
 Complexity
Theory
 Artificial
Intelligence:
 Advanced
AI
Concept
 Machine
Learning
 Planning,
Execution, and Learning
 Computer
Systems:
 Computer
Architecture
 Optimizing
Compilers for Modern
Architecture
 Programming
Languages:
 Type
Systems
for Programming
Languages
 Semantics
of
Programming Languages
 Software
Systems:
 Advanced
Operating Systems and
Distributed Systems
 Database
Management Systems
 Networking

36
units (~3
courses)
36
university units worth of elective courses, at least 24 of which are
from
graduate courses offered by the School of Computer Science (not just
the
Computer Science Department); the other 12 may be from graduate courses
offered by the rest of the University. These graduate courses must be
level
700 or above.

HumanComputer
Interaction 
All
programs
of study are created individually, but must be approved in advance by
both
your advisor and the department committee for programs of study.
All programs of
study must
include:
 05771 HCI
Process and Theory
 4 graduate
level
courses in
an area of specialization (behavioral sciences, computer science, or
design)
 2 graduate
level
courses in
a second area
 1 graduate
level
course in the
third area
In addition, each
program of
study must include at least one graduate level studio design course. 

Language
and Information Technologies 
6 12unit LTI
Courses; current set listed below.
Within those 72 units:
Each
student must take one course from each of four LTI Focus Areas, and
each
student must take two 6unit Lab Courses (from two different research
areas). For
more details: http://www.lti.cs.cmu.edu/Education/ltihandbook.html.
 11711 Algorighms for NLP
 11712 Laboratory in NLP
 11716 Graduate Seminar on Dialogue
Processing
 11721 Grammar and Lexicom
 11722 Grammar Formalisms
 11723 Formal Semantics
 11731 Machine Translation
 11732 Laboratory in MT
 11741 Information Retrieval
 11742 Laboratory in IR
 11743 Advanced IR Seminar and Lab
 11748 Information Extraction and
Integration
 11751 Speech Recognition
 11752 Speech: PPPS
 11753 Advanced Speech Laboratory
 11754 Dialogue Systems Laboratory
 11761 Language and Statistics
 11791 Software Engineering for IT,
Principles (I)
 11792 Software Engineering for IT,
Practice (II)

2
12unit graduate level courses within SCS, or certain approved courses
outside of SCS.

Robotics 
5
Core courses,
including at least one course from each Core Area
 Perception
 16720
Computer Vision
 16721
Advanced Perception
 16722
Sensing
and Sensors
 Cognition
 16731
Advanced AI Concepts
 15781
Machine
Learning
 Action
 16741
Mechanics of Manipulation
 16711
Kinematics, Dynamic Systems
& Control
 Math
Foundations
 16811
Math
Fundamentals for
Robotics

A
specialized
qualifier comprising three elective courses that have to be coherent in
subject matter and should either enhance or be complementary to the
Core
course subject matter. These courses must total 36 units and are
subject to approval by the Program Committee Chair. 
Software
Engineering 
7
courses (listed are examples not complete lists of alternatives)
 12 Star
courses
in design and
engineering (Software Engineering, Research Methods in Software
Engineering)
MSE
core courses: We have adapted some of the existing Master
of Software Engineering (MSE) core courses to serve both MSE and
PhD
students. MSE courses available for PhD credit are crosslisted as
177xx
(e.g., 17751, Models of Software Systems), and may require an
additional
project to satisfy the PhD requirement.
 17752
Methods of Software Development (Adapted from MSE core Course
17652)
 17755
Architectures for Software Systems (Adapted from MSE core Course
17655)
 17939
What Makes Good Research in Software Engineering?
 12 courses
Star
courses in
systems (Computer Systems, Software Systems, or Application Systems)
 15712
Advanced Operating Systems and Distributed Systems
 15740
Computer Architecture
 15744 Computer
Networks
 18749
Dependable Embedded Systems
 Application
systems courses
include systems courses offered through the Language
Technologies Institute (LTI) in the School of Computer Science
Note:
Three courses in the above two areas are required, with at least one
course
in each area
 1 Star
course in
analysis (Statistics,
Performance Analysis, Algorithms, Theory of Programming Languages)
 15750
Algorithms core
 17751
Models of Software Systems (Adapted from MSE core Course 17651)
 15812
Semantics of Programming Languages
 15814
Type Systems for Programming Languages
 15853
Algorithms in the Real World
 1 Star
course in
economics,
business, or policy issues, preferably in the software industry
 17910 Business
Models for Software Development Methods
 90802
Information Security: Comparison of US and European Policies
Note:
A "star" course is a course that has been determined to satisfy certain
standards of breadth and evaluation.
Software
engineering does not have an explicit programming requirement, as we
believe
that the course requirements (including the practicum) cover that.
The
ISRI Software Research Seminar carries 3 units. This indeed
represents
an average of 3 hours/week, but it's mostly 1.5 hours of attendance
throughout
the semester plus the preparation for the presentation
The
practicum involves participation in a software engineering practical
experience,
and reflection and analysis of that experience. The results are
presented
through an oral presentation and a written report. We are in the
process
of revising the practicum description and requirements.

12
university units worth of 700level (or above) courses in SCS; students
may request to substitute PhDlevel courses outside SCS. 
Specializations 
Algorithms,
Combinatorics, and Optimizationsubspecialization
of

5
Star courses as for the Computer Science Ph.D. program, plus the nonCS
ACO courses (which can be used to satisfy the CS elective requirement).
3
course semester each in Math and GSIA (technically, students take six
minicourses
in GSIA), and one course semester in probability theory.
Mathematics:
 core course
(required of all
students):
 2 of the
following, at least
1 of which must be a starred option:
 Real
Analysis
and Lebesgue Integration
(21620 and 21621)*
 Numerical
Analysis (21660)
 Methods of
Optimization (21690)
Computer Science
(This list
is relevant to nonCS ACO Ph.D. Students):
 core course
(required of all
students):
 2 of the
following:
 Artificial
Intelligence (15780)
 Computer
Systems (15740)
 Programming
Languages (15711)
 Software
Systems (15712)
 Complexity
Theory (15855)
 Security
and
Cryptography (15827)
 Theory of
Performance Modeling
(15849)
 Algorithms
in
the Real World
(15853)
 or any
course
in the 1585x
numbering (upperlevel algorithms/theory
GSIA:
 core courses
(required of all
students):
 One mini:
Theory and Algorithms
for LP
 One mini:
Graph theory
 One mini:
Integer programming
 3 minis to
be
taken from:
 Networks
and
Matchings
 Advanced
Integer Programming
 Convex
Polytopes
 Advanced
Linear Programming
 Dynamic
Programming
 Nonlinear
programming
 Optimal
Control Theory
 Approximation
Algorithms
 Topics in
Polyhedral Combinatorics
 Packing
and
Covering
 Computational
Molecular Biology
 Network
Design
Algorithms
 Special
Topics
in OR
Students are also
required to
take one of the following courses in Probability Theory:
 Probability
and Combinatorics
(158xx)
 Probability
Theory (21780)
 Probability
Theory and Stochastic
Processes I (36753)
In addition, there
is a qualifying
examination covering the fundamentals of the program; The exam syllabus
will take account of the choices of electives made by the particular
set
of students taking the exam. This examination will be given at the
beginning
of the student's fourth semester. Students are expected to have
satisfied
all course requirements by the end of the sixth semester.
In the event that
a student
has already mastered the material covered by a required course when
entering
the program, another course may be substituted with approval from the
student's
advisor in consultation with the ACO Coordinating Committee.


Neural
Basis of Cognition (NBC)
is a subspecialization of
 Computational
and Statistical
Learning
 Computer
Science
 Robotics

4
core courses
 Cognitive
Neuroscience: CMU
Psych 85765 / Pitt NROSCI 2005: Cognitive Neuroscience
 Neurophysiology
 NROSCI
2012:
Neurophysiology
(the usual choice for nonNeuroscience students)
 NROSCI/MSNBIO
2100: Cellular
and Molecular Neurobiology (required for students in the Program in
Neuroscience)
 INTBP
2000/2005: Foundations
of Biomedical Science (for MD/PhD students)
 Systems
Neuroscience: This requirement
is usually satisfied by NROSCI 2102/2103: Systems Neurobiology
 Computational
Neuroscience:
students may choose any one of the following courses:
 Psych
85719:
Introduction to
Parallel Distributed Processing
 CS 15883:
Computational Models
of Neural Systems
 Math 3375
/
Psy 2480: Introduction
to Computational Neuroscience

The
Center for
the Neural Basis of Cognition publishes
a list of available electives prior to the start of each semester.
Listed
below are some of the courses that may be taken as electives, by
department.
 Biological
Sciences (Carnegie
Mellon):
 NMR in
Biomedical Sciences
 Molecular
Biology of Eukaryotes
 The
Biology of
the Brain.
 Computer
Science
(Carnegie Mellon):
 Artificial
Neural Networks
 graduate
core
course in Artificial
Intelligence.
 Mathematics
(Pitt):
 Mathematical
Neurophysiology
 Neural
Modeling Seminar
 Dynamical
Systems in the Plane.
 Neurobiology
(Pitt):
 Sensory/Motor
Functions of the
Cerebral Cortex
 Reaching
and
Grasping
 Developmental
Neurobiology
 Molecular
Physiology of Synapses
 Issues in
Cortical Physiology.
 Neuroscience
(Pitt):
 Neurochemistry
and Neurotransmission
 Biological
Bases of Psychiatric
Disorders
 Biochemistry
and Signal Transduction
 Seminar in
Biophysics
 Psychology
(Carnegie Mellon):
 Biological
Foundations of Behavior
 Cognitive
Processes and Problem
Solving
 Cognitive
Development
 Cognitive
Neuropsychology
 Psychology
of
Reading
 Perception
and
Perceptual Development
 Language
and
Thought
 Visual
Cognition
 Functional
Neural Circuits.
 Psychology
(Pitt):
 Research
Methods in Cognition
 Learning
and
Memory
 Perception
and
Attention
 Research
Methods in Biophsychology
 Psychophysiology
 Language
and
Cognition
 Human
Cognition
 Human
Cognition
 Human
Cognition
 Learning
and
Memory
 Cognition
and the Brain.
 Robotics
(Carnegie Mellon):
 Computer
Vision
 Advanced
Perception
 Fundamentals
of AI in Robotics
and Engineering.
 Statistics
(Carnegie Mellon):
 Quantitative
Methods in Neuroscience
 Statistics
for
Laboratory Sciences
 Experimental
Design for Behavioral
and Social Sciences
 Statistical
Methods for Behavioral
and Social Scientists.

Pure
and Applied Logic subspecialization of

5
Star courses (the Computer Science requirement)
 One from
each of
these five
areas: Algorithms and Complexity, Artificial Intelligence,
Computer
Systems, Programming Languages, and Software Systems.
 At least
five
additional courses
or core units in Logic, Logicrelated areas, and other Theoretical
Computer
Science subjects. At least two of these should be offered by the
Department
of Computer Science. Since Computer Science Ph.D. students are
restricted
to taking the equivalent of at most one elective course (out of the
required
three) outside of SCS, in special cases, students may petition to have
a second elective chosen from outside SCS.
The requirements for
students
in the Mathematical Sciences track (which are compatible with the
requirements
for other Mathematical Sciences graduate students) are:
 A one or
twosemester course
in logic including proofs of the completeness and incompleteness,
compactness,
and undecidability theorems. Students may fulfill this requirement by
taking
Mathematical Logic I & II, or other suitable courses. An
appropriate
choice will be made in consultation with the student's advisor. Of
course,
some students admitted to the program may already have fulfilled this
requirement.
They may still choose to take one or more of these courses to refresh
or
enhance their knowledge.
 Additional
courses in Logic
and Logicrelated areas. At least five courses shall be taken at
Carnegie
Mellon to fulfill requirements 1 and 2.
The
following Mathematics courses are required:
 21610
Algebra I
 21620 Real
Analysis (halfsemester)
 21621 Intro
to
Lebesgue Integration
(halfsemester)
 21640
Functional Analysis
 21651
General
Topology
 The student
will
take additional
courses to achieve a full course load of at least three courses per
semester.
Advanced students often sign up for Reading and Research.
The Philosophy
Department at
Carnegie Mellon University is distinguished by its precise approach to
philosophical issues in:
Cognition, AI,
and Philosophy
of Mind
 history and
philosophy of psychology
 artificial
intelligence
 neural
networks
 knowledge
representation
 semantics
and
pragmatics of
natural language
 foundations
of
computation
Decision and
Rational Choice
 foundations
of
decision theory
 game
theory
 rational
choice
 political
philosophy
Epistemology,
Scientific Method,
and Automated Discovery
 epistemology
 foundations
of
statistics
 belief
revision
and knowledge
representation
 causal
inference
and discovery
 computational
learning theory
 automated
deduction
Logic and
Mathematical Thought
 proof
theory
 category
theory
 constructive
logic and type
theories
 automated
deduction
 logic of
computation
 history of
modern logic
 philosophy
of
mathematics
 philosophy
of
logic

5
electives for Computer Science
Since
Computer Science Ph.D. students are restricted to taking the equivalent
of at most one elective course outside of SCS, in special cases,
students
may petition to have a second elective chosen from outside SCS.
