Doctor of Philosophy with a Major in Computer Science

For more information about the Computer Science PhD program, visit www.cc.gatech.edu.

Program of Study

All PhD programs must incorporate a standard set of Requirements for the Doctoral Degree.

Summary of Requirements
CS 7001Overview of Graduate Studies in Computing5
Research Credit
Breadth Component (4 classes) 1
Programming Proficiency Requirement
Minor Field of Study
GTA Apprenticeship Requirement
Qualifying Exam
Thesis Proposal
Dissertation Defense
1

Of the four different courses, one must be from the Theory area. Students must earn an A or B in all of these courses, and more As than Bs total.

CS 7001: Introduction to Graduate Studies

During students' first semester at the College, they are expected to enroll in CS7001, Introduction to Graduate Studies. This course helps prepare students for research in computer science and provides an introduction to the various research areas in the College.

Research Credit

Research with a faculty member is an essential aspect of the Computer Science Ph.D.  Newly admitted students are expected to work on one or more jointly-defined research projects with faculty members in the College. While one goal of this is for the student to gain practical experience in doing research, these semester-long projects also serve as a way for students and faculty to begin to explore potential advisor relationships.

Before students have a formal advisor, they are expected to register for CS 8903, Special Problems in Computer Science, under the supervision of a faculty member in the College. Registration for this course is restricted, and requires that students and the supervising faculty member complete a form describing the research to be completed over the course of the semester.  Students may occasionally participate in multiple 8903 research projects in any given semester, given time and other commitments, and may participate in 8903 research projects for several semesters until they have a formal research advisor.

Once students have a formal advisor, they are expected to focus on what will become their dissertation research under the supervision of their advisor. At this stage, students will register for CS 8999, Doctoral Thesis Preparation.  Students and their advisor must fill out the CS 8999 permit form that indicates the general research direction and that confirms the establishment of the advisory relationship. This form only needs to be filled out one time.

Breadth Component (4 classes)

After admission, a student begins to work on fulfilling the breadth requirement. The breadth component of the program is intended to give students a view into a variety of areas within computing. Each student must take classes in 4 of the 18 areas of computer science. The 18 areas are:

  • Computational Science and Engineering
  • Computer Architecture
  • Cryptography
  • Database Systems
  • Graphics and Visualization
  • Human-Computer Interaction
  • Artificial Intelligence
  • Learning Sciences and Technology
  • Machine Learning
  • Network Security
  • Networking and Communications
  • Privacy, Security, and Policy
  • Programming Languages and Compilers
  • Social Computing
  • Software Methodology and Engineering
  • System Security
  • Systems (Including Operating Systems, and Distributed and Parallel Processing)
  • Theoretical Computer Science

Students who have taken graduate level courses elsewhere before entering the program can petition to have those classes count towards filling the breadth requirement.

Programming Proficiency Requirement

In addition, each student must complete a Programming Proficiency requirement.  A single class may satisfy both the Programming Proficiency requirement and a Breadth area requirement.  The Programming Proficiency requirement must be fulfilled at Georgia Tech and may not be satisfied by transfer credit or advanced standing.

Breadth Component Areas and Classes

Artificial Intelligence
CS 6601Artificial Intelligence3
CS 6795Introduction to Cognitive Science3
CS 7495Computer Vision3
CS 7630Autonomous Robotics3
CS 7631Autonomous Multi-Robot Systems3
CS 7632Game Artificial Intelligence3
CS 7633Human-Robot Interaction3
CS 7634AI Storytelling in Virtual Worlds3
CS 7636Computational Perception3
CS 7637Knowledge-Based AI3
CS 7641Machine Learning3
CS 7643Deep Learning3
CS 7647Machine Learning with Limited Supervision3
CS 7648Interactive Robot Learning3
CS 7649Robot Intelligence: Planning3
CS 7650Natural Language3
CS 7651Human and Machine Learning3
CSE 6740Computational Data Analysis: Learning, Mining, and Computation3
Computational Science and Engineering
CSE 6140Computational Science and Engineering Algorithms3
CSE 6220High Performance Computing3
CSE 6730Modeling and Simulation: Foundations and Implementation3
CSE/MATH 6643Numerical Linear Algebra3
CSE/ISYE 6740Computational Data Analysis: Learning, Mining, and Computation3
Computer Architecture 1
CS 6290High-Performance Computer Architecture3
CS 7290Advanced Topics in Microarchitecture and organization of high-performance processors.3
CS 7292Reliability and Security in Computer Architecture3
Cryptography
CS 6260Applied Cryptography3
CS 7560Theoretical Foundations of Cryptography3
CS 8803Special Topics (Blockchain and Cryptocurrencies)3
CS 8803Special Topics (Secure Mulitparty Computation)3
CS 8803Special Topics (Secure Communication Protocols)3
Database Systems
CS 4420Database System Implementation3
CS 6400Database Systems Concepts and Design3
CS 6411Object-Oriented Database Models and Systems3
CS 6421Temporal, Spatial and Active Databases3
CS 6422Database System Implementation3
CS 6430Parallel and Distributed Database Systems and Applications3
Graphics & Visualization
CS 6421Temporal, Spatial and Active Databases3
CS 6476Introduction to Computer Vision GR3
CS 6480Computer Visualization Techniques3
CS 6491Foundations of Computer Graphics3
CS 6780Medical Image Processing3
CS 7476Advanced Computer Vision3
CS 7490Advanced Image Synthesis3
CS 74913D Complexity Techniques for Graphics, Modeling, and Animation3
CS 7496Computer Animation3
CS 7497Virtual Environments3
CS 7636Computational Perception3
Human Computer Interaction
CS 6451Introduction to Human-Centered Computing3
CS 6455User Interface Design and Evaluation3
CS 6456Principles of User Interface Software3
CS 6470Design of Online Communities3
CS 6750Human-Computer Interaction3
CS 7450Information Visualization3
CS 7451Human-Centered Data Analysis3
CS 7460Collaborative Computing3
CS 7470Mobile and Ubiquitous Computing3
CS 7633Human-Robot Interaction3
Learning Sciences and Technology
CS 6460Educational Technology: Conceptual Foundations3
CS 6461CS Education Research3
CS 7465Educational Technology: Design and Evaluation3
CS 7467Computer-Supported Collaborative Learning3
CS 8803Special Topics (Cognition and Education)3
Machine Learning
CS 6476Introduction to Computer Vision GR3
CS 7545Theoretical Foundations of Machine Learning3
CS 7616Pattern Recognition3
CS 7641Machine Learning3
CS 7643Deep Learning3
CS 7646Machine Learning for Trading3
CSE 6240Web Search and Text Mining3
CSE 6242Data and Visual Analytics3
CSE 6740Computational Data Analysis: Learning, Mining, and Computation3
Networking and Communications
CS 6250Computer Networks3
CS 7620Case-Based Reasoning3
CS 7270Networked Applications and Services3
CS 7280Network Science: Methods and Applications3
Network Security
CS 6262Network Security3
CS 6264Information Security Lab: System and Network Defenses3
CS 8803Special Topics (Empirical Computer Security)3
CS 8803Special Topics (Advanced Network Security and Measurement)3
CS 8803Special Topics (Securing Internet Infrastructure)3
Programming Languages and Compilers
CS 6241Design and Implementation of Compilers3
CS 6245Compiling for Parallelism3
CS 6390Programming Language Design3
CS 8803Special Topics (Topics in Program Analysis)3
Privacy, Security and Policy
CS 6268Psychology of Cybersecurity3
CS 6725Information Security Strategies and Policies3
CS 6726Privacy, Technology, Policy, and Law3
CS 6268Psychology of Cybersecurity3
CS 8803Special Topics (Security, Privacy, and Democracy)3
Social Computing
CS 6465Computational Journalism3
CS 6470Design of Online Communities3
CS 6474Social Computing3
CS 6675Advanced Internet Computing Systems and Applications3
CS 7270Networked Applications and Services3
CS 7460Collaborative Computing3
CS 7467Computer-Supported Collaborative Learning3
CS 8803Special Topics (Cognition and Culture)3
Software Methodology and Engineering
CS 6300Software Development Process3
CS 6301Advanced Topics in Software Engineering3
CS 6310Software Architecture and Design3
CS 6320Software Requirements Analysis and Specification3
CS 6330Software Generation, Testing, and Maintenance3
CS 6340Advanced Topics in Software Analysis and Testing3
CS 8803Special Topics (Formal Modeling and Analysis of Computing Systems)3
Systems
CS 6210Advanced Operating Systems3
CS 6235Real-Time System Concepts and Implementation3
CS 6365Intro Enterprise Comput.3
CS 6675Advanced Internet Computing Systems and Applications3
CS 7210Distributed Computing3
System Security
CS 6238Secure Computer Systems3
CS 6263Intro to Cyber-Physical Systems Security3
CS 6265Information Security Laboratory3
CS 6402Databases and Information Security3
CS 6747Advanced Topics in Malware Analysis3
CS 8803Special Topics (Cybersecurity of Drones)3
CS 8803Special Topics (Exploiting Smart Contract/DeFi)3
Theory
CS 6505Computability, Algorithms, and Complexity3
CS 6515Introduction to Graduate Algorithms3
CS 6520Computational Complexity Theory3
CS 6550Design and Analysis of Algorithms3
CS 7510Graph Algorithms3
CS 7520Approximation Algorithms3
CS 7530Randomized Algorithms3
CSE 6140Computational Science and Engineering Algorithms3
1

Students who have not already taken CS 6290 or the equivalent should take CS 6290 to satisfy this requirement. Those who have already taken CS 6290, or CS 4290 (Advanced Computer Organization) or the equivalent, can satisfy this requirement by taking CS 7290 or CS 7292.

Programming Proficiency Requirement:

Each student must complete a Programming Proficiency requirement.  A single class may satisfy both the Programming Proficiency requirement and a Breadth area requirement.  The Programming Proficiency requirement must be fulfilled at Georgia Tech and may not be satisfied by transfer credit or advanced standing.

The courses that can satisfy the Programming Proficiency Requirement are:
CS 6210Advanced Operating Systems3
CS 6238Secure Computer Systems3
CS 6241Design and Implementation of Compilers3
CS 6262Network Security3
CS 6264Information Security Lab: System and Network Defenses3
CS 6290High-Performance Computer Architecture3
CS 6476Introduction to Computer Vision GR3
CS 6601Artificial Intelligence3
CS 7490Advanced Image Synthesis3
CS 7492Simulation of Biological Systems3
CS 7632Game Artificial Intelligence3
CS 7637Knowledge-Based AI3
CS 7643Deep Learning3
CS 7646Machine Learning for Trading3
CS 7650Natural Language3

Minor Field of Study

The minor is a sequence of non-College of Computing courses with a coherent theme, totaling 6 credit hours. These courses should have a subject designator OTHER than "CS/CSE" as reported on your transcript.  Their theme should somehow relate to the subject of the student's thesis and research.

The classes must be taken for a letter grade, with at least a "B" average. Courses should be at the graduate level, but one approved 4000-level course may be used. No more than three of the hours may be directed research.

After completing all the minor classes, download and fill out the Minor form.

GTA Apprenticeship Requirement

CS Ph.D. students must complete a one-semester teaching apprenticeship requirement. Through this requirement, students will develop general skills in pedagogy, communication, curriculum development, and organization. This type of practical experience will help students become effective communicators and will serve as valuable preparation for any career. Students are required to take a relevant one-semester training course, such as CETL 8000 Graduate Teaching Assistant Preparation, during the same semester they serve as a teaching apprenticeship.

Qualifying Exam

As a student's research progresses, he or she must select a primary, and possibly secondary, area of focus from the areas of research in the College and then pass a Qualifier in that area or areas. The Qualifier is a student's first step toward achieving candidacy in the doctoral program. This Qualifier functions as Georgia Tech's Comprehensive Examination. 

Thesis Proposal

The PhD. proposal consists of:

  1. A proposal document written by the student in which he/she will propose the research work to be undertaken as part of his/her doctoral work and a schedule for completion
  2. An oral defense of the proposal document

A student must have passed the qualifying examination to do a PhD. proposal. A student who has passed the proposal defense and has also completed all course requirements (except the minor), maintaining a satisfactory scholastic record, has achieved PhD. candidacy and should submit the Candidacy form.

Dissertation Defense

Before the announcement of the public PhD. dissertation defense, your advisor must approve that the dissertation is ready to be given to the dissertation committee, and the dissertation committee must approve that the dissertation is ready for the public dissertation defense. Before giving this approval, the entire committee is expected to have read the dissertation and to have given comments to the student. The committee must approve that a substantial and defensible portion of the dissertation has been completed. Three (3) weeks is a reasonable amount of time for reading the dissertation.

After the approval, the candidate’s academic department must announce the public dissertation defense at least fifteen (15) days in advance, and it must forward this announcement together with the names of the dissertation committee to the Office of Graduate Studies and Research.

The public dissertation defense starts with a presentation by the candidate and is followed by a question-answer period. The advisor, who is the chair of the committee, determines who may ask questions and in which order and brings the discussion to a close at the appropriate time. The question-answer period is followed by a closed-door session attended by only the members of the PhD. dissertation committee and interested Georgia Tech faculty.