The purpose of the Doctor of Philosophy program in computer science is to prepare students for research and teaching positions in universities and colleges, and for research and leadership positions in industry and government. The primary aim of the program is to train students in the methods of scientific inquiry and independent research. This is accomplished through advanced coursework and active participation with the faculty in their research programs. Doctor of Philosophy students are expected to have a broad knowledge of all fields of computer science and have a deep understanding of at least one of its areas. In addition to this requirement, a Doctor of Philosophy student must be up to date in all the developments in his/her major area of specialization. The most important component of the Doctor of Philosophy program is learning to perform independent and significant research in one's area of specialization.
Requirements for the Doctor of Philosophy degree typically are completed in four to five years, depending on whether or not a student enters the program with an M.S. in computer science.
To ensure sufficient breadth at the graduate level, Ph.D. students must complete at least 8 graduate courses (four by the end of their first year) with a GPA of at least 3.5, and a grade in each course of at least 3.0. An approved study plan must be on file to complete the Ph.D. Their academic advisor and the Graduate Advisor must endorse the set of courses that students plan to take.
The courses are classified into Foundations, Systems and Applications. Students must follow a 2-2-1+3 model: 2 courses must be selected from one category, 2 courses from a second category, and 1 course from the remaining category. The remaining 3 courses are free electives and can be taken from any category or from other courses that do not fall into one of the above categories. The Course Classification list is below.
Students have to file a petition to count a graduate course taken at another university towards the PhD course requirement. A graduate course taken at another university can be counted towards the PhD course requirement if 1) endorsed by the academic advisor, 2) endorsed by a Department of Computer Science Faculty who is teaching a corresponding graduate course and 3) approved by the Graduate Advisor. Students should provide a course syllabus or description to be reviewed and endorsed by the academic advisor and the course owner.
Theory / Foundations Area
|CS 209||Logic and Applications in Computer Science|
|CS 216||Level Set Methods|
|CS 220||Theory of Computation and Complexity|
|CS 225||Information Theory|
|CS 230||Approximations, NP-Completeness and Algorithms|
|CS 231||Topics in Combinatorial Algorithms|
|CS 234||Randomized Algorithms|
|CS 235||Computational Geometry|
|CS 260||Advanced Topics in Program Analysis|
|CS 266||Formal Specification and Verification|
|CS 267||Automated Verification|
|CS 290||Special Topics|
|CS 254||Advanced Computer Architecture|
|CS 263||Modern Programming Languages and Their Implementation|
|CS 270||Advanced Topics in Operating Systems|
|CS 271||Advanced Topics in Distributed Systems|
|CS 272||Software Engineering|
|CS 273||Data and Knowledge Bases|
|CS 274||Advanced Topics in Database Systems|
|CS 276||Advanced Topics in Networking|
|CS 279||Advanced Topics in Computer Security|
|CS 284||Mobile Computing|
|CS 290||Special Topics|
|CS 211A||Matrix Analysis and Computation|
|CS 211B Numerical Simulation|
|CS 211C||Numerical Solution of Partial Differential Equations--Finite Difference Methods|
|CS 211D||Numerical Solution of Partial Differential Equations--Finite Element Methods|
|CS 219||Sparse Matrix Algorithms|
|CS 240A||Applied Parallel Computing|
|CS 265||Advanced Topics in Machine Intelligence|
|CS 280||Computer Graphics|
|CS 281B||Advanced Topics in Computer Vision|
|CS 290||Special Topics|
Note: the contents of a course may change over time; the course will be reclassified in such cases or students may petition to this effect.
All Ph.D. students must enroll in CS 595N Faculty Research Seminar in the Winter quarter of their first year. In this seminar the Faculty will present their research focus to introduce students to the breadth of research within the department and to help students in identifying potential advisors.
To engage students in research during their first year, 4 units of CS 596 Directed Research is required.
Research is about pushing the limits of our understanding in the field of computer science. This can involve the design and execution of experiments, the proving of new theorems, the solving of open problems, the gathering and analysis of data sets, the invention of novel systems, the creation of new algorithms, the discovery of new applications of computing and/or among many other things. Students must manage their time wisely between research, course work, teaching, and growing their personal networks. It is important to start the process of finding a research adviser early, and to stay engaged with both other students and their Ph.D. committees throughout the process.
After selecting an area of research, a student forms a doctoral committee to supervise dissertation research. The doctoral committee must be chaired by a ladder faculty member from the Department and should include a minimum of 3 UC ladder faculty; 2 (including the chair) must be in Computer Science, although faculty from other UCSB departments may also be members. In special circumstances, non-UCSB faculty may be members.
Teaching Assistant Requirement
All Ph.D. students must work as a teaching assistant (TA) for a minimum of one quarter for a Computer Science undergraduate course.
Ph.D. students must successfully complete three examinations:
- Major area examination (qualifying examination)
- Thesis proposal
- Dissertation defense
Major Area Examination
After the doctoral committee approves a student's proposed major area, a major area examination tests the student's knowledge of this area and any necessary supporting areas. The intent of the MAE is to ensure the student has done a thorough examination of related work in their chosen field, to ensure sufficient background preparation to begin meaningful research; and to help the committee ensure the student’s selected research area has enough opportunity for meaningful contribution. So that the student can be best prepared and the committee can make this determination, the Department strongly recommends that the MAE be completed by the end of the student’s second year of Ph.D. study. As a part of this oral examination, a student submits a set of relevant papers from the major area and prepares a brief presentation. Passing this examination allows this student to advance to candidacy for the doctoral degree.
The MAE must be completed by the end of the third year of study for the student to remain in good academic standing in the department. Further, the MAE cannot be combined with any other oral examination, including the Proposal.
After passing the major area examination, a student prepares a dissertation proposal that describes the dissertation topic, summarizes the relevant background literature, and presents a comprehensive research plan for the doctoral dissertation. The thesis proposal examination determines the feasibility of the research plan and the appropriateness of the research topic. The outcome of the proposal can be viewed as a contract between the student and the committee – the committee and the student should agree on a set of work that, if completed to the satisfaction of the committee, will result in the awarding of the Ph.D. degree to the student.
The Department strongly recommends that the proposal be completed by the end of the student’s fourth year. Further, the Department strongly recommends that the proposal be completed at a minimum of one year before the student’s dissertation defense The final examination is the defense of the candidate's dissertation, which consists of a public seminar and an evaluation by the candidate's doctoral committee on whether the student has successfully defended the dissertation.