Plan I: Thesis

M.S. Plan I - Thesis 

M.S. Plan II- Comprehensive Exam, Standard Option 

Plan I: Thesis 

Computer Science or Computer Engineering

40 Units

BREADTH  (12 units)

  • Computer Science majors must take one course from  each of the three breadth areas: Theory, Systems, and Applications.
  • Computer Engineering majors must take two courses from the Systems area AND one course from either Theory or Applications.
  • Courses must be taken for a letter grade and completed with a grade of B- or higher.
Theory Systems Applications
  • CSE 200 - Computability Complexity
  • CSE 201A - Advanced Complexity
  • CSE 202 - Algorithm Design and Analysis
  • CSE 203A - Advanced Algorithms
  • CSE 203B - Convex Optimization  (*students that completed ECE273 or Math 245B will not be eligible to enroll or count the course)
  • CSE 205A - Logic in Computer Science
  • CSE 207A - Modern Cryptography
  • CSE 220 - Operating Systems Concepts (not permitted for students that previously completed CSE 120).
  • CSE 221 - Operating Systems
  • CSE 222A - Computer Communication Networks
  • CSE 223B - Distributed Computing and Systems
  • CSE 224 - Graduate Networked Systems
  • CSE 231 - Advanced Compiler Design
  • CSE 234 - Data Systems for Machine Learning
  • CSE 237A - Embedded Systems
  • CSE 237B - Embedded Software
  • CSE 237C - Validation/Testing of Embedded Systems
  • CSE 237D - Embedded Systems 
  • CSE 240A - Principles of Computer Architecture
  • CSE 241A - VLSI Integration of Computing Circuitry
  • CSE 243A - VLSI CAD
  • CSE 244A - VLSI Test
  • CSE 210 - Principles of Software Engineering
  • CSE 216 - Human-Computer Interaction
  • CSE 218 - Advanced Topics in Software Engineering
  • CSE 230 - Principles of Programming Languages
  • CSE 232 - Principles of Database Systems
  • CSE 250A - AI: Probabilistic Reasoning and Learning
  • CSE 251A - AI: Learning Algorithms
  • CSE 252A - Computer Vision I
  • CSE 252B - Computer Vision II
  • CSE 256 - Statistical NLP
  • CSE 260 - Parallel Computation
  • CSE 280A - Algorithms in Computational Biology
  • CSE 284 - Personal Genomics for Bioinformaticians

DEPTH (12 units)

  • Computer Science majors must take three courses (12 units) from one depth area on this list.
  • Computer Engineering majors must take three courses (12 units) from the Computer Engineering depth area only.
  • Courses must be taken for a letter grade.
Artificial Intelligence
  • CSE 203B- Convex Optimization (*students that completed ECE273 or Math 245B will not be eligible to enroll in CSE 203B or count the course)
  • CSE 234 - Data Systems for Machine Learning
  • CSE 250A - AI: Probabilistic Reasoning and Learning
  • CSE 251A - AI: Learning Algorithms
  • CSE 251B - Deep Learning
  • CSE 251C  -Machine Learning Theory
  • CSE 251U (formerly CSE 291) - Unsupervised Learning
  • CSE 252D  - Advanced Computer Vision (Prof. Manmohan Chandraker's Section Only)
  • CSE 254 - Statistical Learning
  • CSE 255 -  Data Mining  and Analytics
  • CSE 256 - Statistical Natural Language Processing
  • CSE 257 - Search and Optimization
  • CSE 258 - Recommender Systems and Web Mining
  • CSE 275 - Deep Learning for 3D data (recently renumbered from CSE 291)
  • CSE 291 - Advanced Data-Driven Text Mining
  • CSE 291 - Structured Prediction for Natural Language Processing 
  • CSE 291 - Deep Generative Models
  • CSE 291 - Generative AI
  • CSE 291- Machine Learning for Robotics
  • COGS 225 - Image Recognition (w/ Z. Tu)
  • ECE 273 - Convex Optimization and Applications
Computer Engineering
  • CSE 231 - Advanced Compiler Design
  • CSE 237A - Introduction to Embedded Computing
  • CSE 237B - Software for Embedded Systems
  • CSE 237C - Validation and Testing of Embedded Systems
  • CSE 237D - Design Automation and Prototyping for Embedded Systems
  • CSE 240A - Principles of Computer Architecture
  • CSE 240B - Parallel Computer Architecture
  • CSE 240C - Advanced Microarchitecture
  • CSE 240D - Application Specific Processors
  • CSE 241A/ECE 260B  - VLSI Integrated Circuits & Systems Design
  • CSE 243A - Introduction to Synthesis Methodologies in VLSI CAD
  • CSE 244A - VLSI Test
  • CSE 245 - Computer Aided Circuit Simulation and Verification  
  • CSE 248 - Algorithmic and Optimization Foundations for VLSI CAD
  • CSE 260 - Parallel Computation 
  • CSE 291 - Memory/storage technologies and applications
  • CSE 291 - Topics in Embedded Computing and Communication
  • ECE 260A - VLSI Digital System Algorithms & Architectures
  • ECE 260C - VLSI Advanced Topics
  • ECE 284 - Special Topics in Computer Engineering 
Computer Systems
  • CSE 207B - Applied Cryptography 
  • CSE 220 - Operating Systems Concepts (not permitted for students that previously completed CSE 120).
  • CSE 221 - Operating Systems
  • CSE 222A - Computer Communication Networks
  • CSE 223B - Distributed Computing and Systems
  • CSE 224 - Graduate Networked Systems
  • CSE 227 - Computer Security 
  • CSE 234 - Data Systems for Machine Learning
  • CSE 260 - Parallel Computation 
  • CSE 262 - System Support for Applications of Parallel Computation 
  • CSE 291 - Adv. Analytics & ML Systems
  • CSE 291 - Adv. Topics in Classical Operating Systems
  • CSE 291 - Blockchain
  • CSE 291 - Cloud Computing
  • CSE 291 - Cloud Application Dependability
  • CSE 291 - Distributed Systems
  • CSE 291 - Data Center Dependability
  • CSE 291 - Internet Data Science for Cybersecurity
  • CSE 291-  Language Based Security
  • CSE 291 - Memory/storage technologies and applications
  • CSE 291 - Operating Systems in Datacenters 
  • CSE 291 - Quantum Computing System
  • CSE 291 - Storage Systems
  • CSE 291 - Topics in Embedded Computing and Communication
  • CSE 291 - Virtualization
  • CSE 291-  Wireless and Communication/Internet of Things  
Database Systems
  • CSE 232 - Principles of Database Systems
  • CSE 232B - Database System Implementation 
  • CSE 233 - Database Theory
  • CSE 234  - Data Systems for Machine Learning
  • CSE 291 - Management of Large-Scale Graph Data
  • CSE 291: Advanced Topic: Data Models in Big Data Era 
Graphics and Vision
  • CSE 163 - Advanced Comp Graphics
  • CSE 168 -Cmp Graphics II Rendering
  • CSE 252A - Computer Vision I
  • CSE 252B - Computer Vision II
  • CSE 252C - Selected Topics in Vision and Learning
  • CSE 252D - Advanced Computer Vision
  • CSE 270 - Discrete Differential Geometry
  • CSE 272 - Advanced Image Synthesis
  • CSE 273 - Computational Photography
  • CSE 274 - Selected Topics in Graphics
  • CSE 275 - Deep Learning for 3D data 
  • CSE 291- Advances in 3D Reconstruction
  • CSE 291- Deep Learning for Sequences
  • CSE 291- Domain Adaptation in Computer Vision
  • CSE 291- Physical Simulation 
  • COGS 260 - Image Recognition
Human-Computer Interaction
  • CSE 165 - VR User Interaction and Technology
  • CSE 170/COGS 120 - Interaction Design
  • CSE 210 - Principles of Software Engineering
  • CSE 216/COGS 230 -  Topics in HCI
  • CSE 217 - Human-Centered Computing for Health (HC4H)
  • CSE 218 - Advanced Topics in Software Engineering
  • CSE 276B - Human Robot Interaction
  • CSE 276D - Healthcare Robotics
  • CSE 291 - Anti-Social Computing (Vaccaro)
  • CSE 291 - Critical Anaylsis and Computing (Pannuto)
  • CSE 291 - Design and Deployment of Internet of Things Devices
  • CSE 291 - Introduction to Computing Education Research
  • CSE 291 - Programmers are People Too (Coblenz)
  • CSE 291 - Security, Privacy, and User Experience 
  • CSE 291 - Towards Human-Centered Al
  • CSE 291 - Usable Security and Privacy
  • COGS 220 - Information Visualization 
  • COGS 231- (Design Seminar) Human Centered Programming (must be 4 units)
  • COGS 234 (previously COGS 260)-  Foundations for Future User Interfaces
  • COGS 260 - Crowdsourcing 
  • DSC 291 - Privacy-sensitive Data Systems
  • DSGN 201 - Design and Complex Sociotechnical Systems 
  • ECE 284: Mobile Health Device Design

EXCEPTIONS for Students that entered in fall 2022 or earlier ONLY: CSE 291 - Social Computing  (Vaccaro), CSE 291 - HCI for Health, CSE 250A - AI: Probabilistic Reasoning and Learning

Programming Languages, Compilers, and Software Engineering
  • CSE 210 - Principles of Software Engineering
  • CSE 211 - Software Testing and Analysis
  • CSE 218 - Advanced Topics in Software Engineering 
  • CSE 230 - Principles of Programming Languages
  • CSE 231 - Compiler Construction (formerly Advanced Compiler Design)
  • CSE 291-  Program Synthesis
  • CSE 291 - Programmers are People Too (Coblenz)
Bioinformatics
  • CSE 280A - Algorithms in Computational Biology
  • CSE 282 - Bioinformatics II: Sequence and Structure Analysis - Methods and Applications
  • CSE 283 - Bioinformatics III: Functional Genomics
  • CSE 284 - Personal Genomics 
  • MATH 283 - Statistical Methods in Bioinformatics
Theoretical Computer Science
  • CSE 200 - Computability and Complexity
  • CSE 201A - Advanced Complexity
  • CSE 202 - Algorithm Design and Analysis
  • CSE 203A - Advanced Algorithms
  • CSE 203B - Convex Optimization Formulations and Algorithms
  • CSE 205A - Logic in Computer Science
  • CSE 206A - Lattice Algorithms and Applications
  • CSE 207A - Modern Cryptography 
  • CSE 208 - Advanced Cryptography 
  • CSE 291 - Communication Complexity
  • CSE 291 - Quantum Complexity Theory
  • CSE 291 - Semidefinite Programming & Approximation Algorithms
  • CSE 291 -Topics in Advanced Cryptography

Exceptions for students that entered in fall 2021 or earlier: CSE 207B  - Applied Cryptography 

Robotics

Required:

  • CSE 276A Introduction to Robotics

Select Two Courses from the following:

  • CSE 276B Human-Robot Interaction
  • CSE 276C Mathematics for Robotics
  • CSE 276D Healthcare Robotics 
  • CSE 276E Robotic System Design and Implementation
  • CSE 276F Machine Learning for Robotics
  • CSE 251A  AI: Learning Algorithms
  • CSE 252B Computer Vision II

ELECTIVES AND RESEARCH (16 Units)

  • A minimum of 8 and maximum of 12 units of CSE 298 (Independent Research) is required for the Thesis plan. 
  • Courses must be completed for a letter grade, except the CSE 298 research units that are taken on a Satisfactory/Unsatisfactory basis..
  • The remaining units are chosen from graduate courses in CSE, ECE and Mathematics, or from other departments as approved, per the ELECTIVES EXCEPTION LIST.
  • Maximum of ONE undergraduate CSE upper-division course from approved ELECTIVES EXCEPTION LIST is permitted towards Electives.
  • Note, Graduate/Undergraduate Course Restriction policies below. In addition, seats are not guaranteed for approved list of CSE undergraduate course. Undergraduate students receive priority seating. Please direct questions regarding exception list to cse-ms-advisors@ucsd.edu
  • CSE 291 courses not counted toward breadth or depth are eligible for the MS Electives. CSE 291 must be 4 units exactly.
  • CSE 291 Navigating the Academic Job Market is NOT eligible for the MS Electives. This course will not count for the MS Degree requirements.
  • These requirements are the same for both Computer Science and Computer Engineering majors.
  • Seminar and teaching units may not count toward the Electives and Research requirement, although both are encouraged.

Graduate/Undergraduate Course Restrictions

  • MS Students who completed one of the following six undergraduate versions of the course at UCSD are not allowed to enroll or count the graduate version of the course. For example, if a student completes CSE 130 at UCSD, they may not take CSE 230 for credit toward their MS degree.
  • MS students may not attempt to take both the undergraduate and graduate version of these six courses for degree credit.  In order words, only one of these two courses may count toward the MS degree (if eligible under current breadth, depth, or electives).

CSE-118/CSE-218 (Instructor Dependent/ If completed by same instructor)

CSE 120/CSE 220 (all instructors)

CSE 124/224. (MS students are permitted to enroll in CSE 224 only)
CSE-130/230 (*Only Sections previously completed with Sorin Lerner are restricted under this policy)
CSE 150A and CSE 150B, CSE 150/ 250A **(Only sections previously completed with Lawrence Saul are restricted under this policy)
CSE 158/258 and DSC 190 Intro to Data Mining
CSE 176A/276D.

CAPSTONE:  THESIS 

A thesis based on the student’s research must be written and subsequently reviewed by the student's MS thesis committee.  It is then submitted as described in the general university requirements.  The MS committee, appointed by the dean of Graduate Studies, consists of three faculty members, with at least two members from with the CSE department.

CSE 298 POLICIES

  • For pre-approval to enroll in a CSE 298 section, please email cse-ms-advisors@ucsd.edu 
  • For thesis chair and/or committee eligibility and approval, email cse-ms-advisors@Ucsd.edu
  • CSE 298 is for thesis plan students with a confirmed thesis chair/advisor
  • A minimum of 8 and maximum of 12 units of CSE 298 (Independent Research) is required for the Thesis plan
  • CSE 298 is 4 units per quarter. If additional units are desired during the final quarter, a request for an exception can be sent by the thesis advisor/chair(s) via email to the CSE MS advisors.

MS Thesis Progress Report

CSE M.S. Thesis - Planning Ahead Checklist

Step 1:

  • Check Thesis Advisor Eligibility - email cse-ms-advisors@ucsd.edu
  • Meet with Thesis advisor to understanding expectations and to be on the same page in terms of goals and completing all of the thesis requirements by the final graduating quarter
  • Thesis Manual: Thesis Formatting Manual
  • For additional Formatting Resources: Template page
  • Meet with an MS academic advisor to plan ahead and understand the timeline and thesis submission requirements

Step 2: 

  • Establish Thesis Committee: With the guidance of your thesis advisor, establish thesis committee at least two quarters in advance of the final quarter. 
  • Three committee members (which include the thesis chair) are required. All members must be eligible to serve on the committee (please email cse-ms-advisors with proposed faculty in advance to confirm and submit official committee to GEPA). Majority of the committee must be CSE eligible faculty (two of the three members. If thesis chair is not from CSE, CSE faculty co-chair will be required.

Step 3: 

  • One quarter in advance of final quarter:
    • Complete MS Candidacy/Degree Filing form (announced quarterly)
    • Attend GEPA Thesis Formatting and Submission Session (announced quarterly)
    • Complete:
    • Consult with MS Staff regarding timeline during final quarter for routing to committee thesis final report from (ahead of the final document review submission).

Step 4:

  • FINAL QUARTER:
    • REQUIRED: By week 1, schedule ahead both the preliminary appt with GEPA and final document review  (https://gradforms.ucsd.edu/calendar/)
    • Note, for preliminary appt: For the preliminary appointment, a complete draft should be ready for GEPA to check the formatting. 
    • The final review appointment should be scheduled for date that  after the official committee approval and before Friday of finals week.
    • Committee Signatures and Docusign Timeline: A final report form will be initiated by the MS Staff via docusign to your committee, please make sure to communicate with the MS team regarding the form at the beginning of the quarter to ensure that you, the MS staff, and faculty have the correct timeline and dates for routing.
    • Note: Final electronic version is submitted to ETD website www.etdadmin.com prior to final appointment.