• Students admitted Spring 22 or before are approved to count the following courses towards 24 units of upper division required for the CS major.
  • Students admitted Fall 22 or later are approved to count the following courses towards 20 units of upper division required for the CS major. Students admitted Fall 22 or later may not use the following courses toward the technical elective requirement.
  • To enroll in a graduate course, contact the professor to receive permission.
  • To see CS & EE special topics and graduate classes that have partial approval or that have been denied, visit this page.
Course Number Course Title Notes Units
CS 194-15 Parallel Computing 4
CS 194-16 Introduction to Data Science (Discontinued)
CS 194-26 Computational Photography (Discontinued; now offered as CS180/280A)
CS 194-28 Computational Design and Fabrication 4
CS 194-30 Practical Networking 4
CS 194-31 Technology and Social Networks 4
CS 194-32 Computing for Social Good 4
CS 194-34 Cryptography (spring/fall 2019) 4
CS 194-35 Data Engineering 4
CS 194-73 Software Engineering for Scientific Computing 3
CS 194-80 Full Stack Deep Learning 3
CS 194-100 EECS for All: Social Justice in EECS 4
CS 194-126 PCB Design 4
CS 194-129 Designing, Visualizing and Understanding Deep Neural Networks Also fulfills CS Major design requirement 4
CS 194-131/Des Inv 190 Designing Technology to Counter Violent Extremism Only CS 194-131 counts. Des Inv 190 is the non-technical version and does not count. 3
CS 194-133 Collaborative Intelligent Agents and The DARPA Spectrum Challenge 3
CS 194-138 Cyberwar 4
CS 194-172 Computational Genomics 4
CS 194-177 Intro to Decentralized Finance Taken for 4 units: counts for CS upper division units or technical elective units. Taken for 3 units: can only count towards CS minor, and technical elective units. Taken for 2 units: can only count towards technical elective units. Fall 22+ students cannot take for tech elective units. 4 units only
CS 194-196 Technology of Decentralization and Decentralized Intelligence 4 units only
CS 194-198 Networks: Models, Processes & Algorithms If course is taken for three units, it can only satisfy the tech elective requirement. If course is taken for 4 units, it can count towards the 16 units of CS upper division requirement. 4 units only
CS 194-238 Special Topics in Zero Knowledge Proof Taken for 4 units – counts for CS upper division units or technical elective units. Taken for 3 units – can only count towards CS minor, and technical elective units. Taken for 2 units – can only count towards technical elective units. Fall 22+ students cannot take for tech elective units. 4 units only
CS 194-224 Entrepreneurship in Web3 4 units = CS upper div credit. 3 units = tech elective credit only. 1-2 units = upper div credit toward your overall 120 units to graduate, but would not count toward the CS major. Fall 22+ students cannot take for tech elective units. 4 units only
CS 261N Internet/Network Security 4
CS 262A Advanced Topics in Computer Systems 4
CS 262B Advanced Topics in Computer Systems 3
CS 263 Design of Programming Languages 3
CS 265 Compiler Optimization and Code Generation 3
CS C267 Applications of Parallel Computers 3
CS 268 Computer Networks 3
CS 270 Combinatorial Algorithms and Data Structures 3
CS 271 Randomness and Computation 3
CS 273 Foundations of Parallel Computation 3
CS 274 Computational Geometry 3
CS 276 Cryptography 3
CS 278 Machine-Based Complexity Theory 3
CS C280 Computer Vision 3
CS C281A Statistical Learning Theory 3
CS C281B Advanced Topics in Learning and Decision Making 3
CS 282A Designing, Visualizing, and Understanding Deep Neural Networks Also fulfills CS Major design requirement 4
CS 284B Computer Graphics 4
CS 285 Deep Reinforcement Learning, Decision Making, and Control Also fulfills CS Major design requirement 3
CS 286B Implementation of Data Base Systems 3
CS 287 Advanced Robotics Also fulfills CS Major design requirement 3
CS 287H Algorithmic Human-Robot Interaction (Formerly CS 294-115) 4
CS 288 Natural Language Processing Also fulfills CS Major design requirement 4
CS 294-43 Visual Object and Activity Recognition Also fulfills CS Major design requirement. Must be taken for at least 3 units. 3 to 4
CS 294-082 Experimental Design for Machine Learning on Multimedia Data 3
CS 294-084 Interactive Device Design Must be taken for at least 3 units 3 to 4
CS 294-112 Deep Learning This is a variable-unit course; must be taken for at least 3 units & letter grade 3 to 4
CS 294-115 Algorithmic Foundations of Human Robot Interactions Must be taken for at least 3 units (replaced by CS 287H Fall 2020) 3 to 4
CS 294-127 Computational Imaging Must be taken for at least 3 units 3 to 4
CS 294-129 Designing and Visualizing Neural Networks 4
CS 294-131 Special Topics in Deep Learning This is a variable unit course; must be taken for at least 3 units & letter grade 3 to 4
CS 294-134 Beyond Worst-Case Analysis Must be taken for at least 3 units 3 to 4
CS 294-135 Big Data Genomics Must be taken for at least 3 units with Professor Garg 3 to 4
CS 294-136 Deep Time-Series Learning and Finance Applications Must be taken for at least 3 units 3 to 4
CS 294-137 Theory and Applications of Virtual Reality and Immersive Computing Must be taken for at least 3 units 3 to 4
CS 294-139 Fairness in Machine Learning Must be taken for at least 3 units 3 to 4
CS 294-141 Compilers for Everyone: Designing and Building Domain-Specific Languages Must be taken for at least 3 units 3 to 4
CS 294-145 Approximation Algorithms 3
CS 294-149 Safety and Control for Artificial General Intelligence 3
CS 294-150 Machine Learning and Statistics Meet Biology & Chemistry 3
CS 294-158 Deep Unsupervised Learning Also fulfills CS Major design requirement 4
CS 294-162 Machine Learning Systems 3
CS 294-163 Decentralized Security: Theory and Systems 3
CS 294-164 Computational Color 4
CS 294-165 Sketching Algorithms 4
CS 294-171 Privacy Preserving Systems 3
CS 294-184 Building User-Centered Programming Tools 4
CS 294-232 Recent Topics on Program Synthesis, Compilation, and Debugging 3
CS 294-226 Advances in Error-Correcting Codes 3
EE 194-002 Nanorobotics Must be taken for at least 4 units 1 to 4
EECS 219C Formal Methods: Specification, Verification, and Synthesis 3
EECS 229A Information Theory and Coding 3