Approved major (non-CSCI) technical electives for B.S. program

Of the 23 total upper division technical elective credits needed for the B.S. degree, a minimum of 11 out of 23 must come from 4xxx-5xxx level CSCI courses. The other 12 credits can come from non-CSCI-approved technical electives listed below. 

IMPORTANT NOTES:

  • CS&E cannot provide you access to these courses. Please contact the instructor or department offering the course to gain access.
  • Check the prerequisites for these courses to ensure that you are prepared to take them.
  • Some options listed below may only be accessible or appropriate for students pursuing a double major or a minor in the area.


The following classes are automatically approved as non-CSCI technical electives for the B.S. program:

  • AEM 4602W Aeromechanics Laboratory - 4 cr
  • AST 4041 Computational Methods in the Physical Sciences - 4 cr
  • AST 5731 or STAT 5731 Bayesian Astrostatistics - 4 cr
  • BIOL 5272 Applied Biostatistics - 4 cr
  • CEGE 4121 Computer Applications II - 3 cr
  • CHEM 4021 Computational Chemistry - 3 cr
  • DES 5901 Principles of Wearable Technology - 2 cr
  • DSCI 4093 Senior Project Capstone  - 4 cr (not automatically approved - students must provide more details on their project and how it incorporates programming or computational methods for approval)
  • ECON 4261 Introduction to Econometrics - 4 cr
  • EE 4301 Digital Design With Programmable Logic - 4 cr
  • EE 4341 Embedded System Design - 4 cr
  • EE 4363 (cross-listed course for CSCI 4203) Computer Architecture and Machine Organization - 4 cr
  • EE 4541 Digital Signal Processing - 3 cr
  • EE 5239 Introduction to Nonlinear Optimization - 3 cr
  • EE 5251 Optimal Filtering and Estimation - 3 cr
  • EE 5351 Applied Parallel Programming - 3 cr
  • EE 5355 Algorithmic Techniques for Scalable Many-core Computing - 3 cr
  • EE 5364 Advanced Computer Architecture - 3 cr
  • EE 5371 Computer Systems Performance Measurement and Evaluation - 3 cr
  • EE 5393 Circuits, Computation, and Biology - 3 cr
  • EE 5505 Wireless Communication - 3 cr
  • ESPM 5031 (must be graduate version) Applied Global Positioning Systems for Geographic Information Systems - 3 cr
  • FNRM 5131 Geographical Information Systems (GIS) for Natural Resources - 4 cr
  • FNRM 5262 Remote Sensing and Geospatial Analysis of Natural Resources and Environment - 3 cr
  • FNRM 5462 Advanced Remote Sensing and Geospatial Analysis - 3 cr
  • GDES 4371* (was GDES 4343) Data & Informtion Visualization - 3 cr
  • GDES 5341* Interaction Design - 3 cr
  • GDES 5342* Advanced Web Design - 3 cr
  • GDES 5386* Fundamentals of Game Design - 3 cr
  • GEOG 5561 Principles of Geographic Information Science - 4 cr
  • HINF 5610 Foundations of Biomedical Natural Language Processing - 3 cr
  • HSCI 4321 (cross-listed course for CSCI 4921) History of Computing - 3 cr
  • IDSC 4204W Strategic Information Technology Management - 4 cr
  • IE 3011 Optimization Models and Methods - 4 cr
  • IE 3013 Optimization for Machine Learning - 4 cr
  • IE 4011 Stochastic Models - 4 cr
  • IE 5012 Discrete Optimization Methods and Applications - 4 cr
  • IE 5531 Engineering Optimization I - 4 cr
  • IE 5533 Operations Research for Data Science  - 3 cr
  • IE 5545 Decision Analysis - 4 cr
  • IE 5561 Analytics and Data-Driven Decision Making - 4 cr
  • INET 4011 Networking I: Network Administration - 4 cr
  • INET 4021 Dev Ops I: Network Programming - 4 cr
  • INET 4041 Networking II: Emerging Technologies - 4 cr
  • INET 4061 Data Science I: Fundamentals - 4 cr
  • INET 4062 Data Science II: Advanced - 4 cr
  • INET 4165 Security I: Principles - 3 cr
  • INET 4710 (inactive course) Data Science II: Advanced - 4 cr
  • INET 4711 Data Management II: Distributed Systems - 4 cr
  • KIN 5001 Foundations of Human Factors/Ergonomics - 3 cr
  • LING 5801 Introduction to Computational Linguistics - 3 cr
  • MATH 4152 or MATH 5165  Elementary Mathematical Logic - 3 cr
  • MATH 4242 Applied Linear Algebra- 4 cr
  • MATH 4281 Introduction to Modern Algebra - 4 cr
  • MATH 4428 Mathematical Modeling - 4 cr
  • MATH 4471W Mathematics for Social Justice - 4 cr
  • MATH 4512 Differential Equations with Applications - 3 cr
  • MATH 4567 Applied Fourier Analysis - 4 cr
  • MATH 4603  Advanced Calculus I - 4 cr
  • MATH 4604 Advanced Calculus II - 4 cr
  • MATH 4653 Elementary Probability - 4 cr
  • MATH 4707 or MATH 5707 Introduction to Combinatorics and Graph Theory - 4 cr
  • MATH 5075 Mathematics of Options, Futures, and Derivative Securities I - 4 cr
  • MATH 5076 Mathematics of Options, Futures, and Derivative Securities II - 4 cr
  • MATH 5248 Cryptology and Number Theory - 4 cr
  • MATH 5251 Error-Correcting Codes, Finite Fields, Algebraic Curves - 4 cr
  • MATH 5285H Honors: Fundamental Structures of Algebra I - 4 cr
  • MATH 5286H Honors: Fundamental Structures of Algebra II - 4 cr
  • MATH 5335 Geometry I - 4 cr
  • MATH 5345H Honors: Introduction to Topology - 4 cr
  • MATH 5378 Differential Geometry - 4 cr
  • MATH 5385 Intro to Computational Algebraic Geometry - 4 cr
  • MATH 5445 Mathematical Analysis of Biological Networks - 4 cr
  • MATH 5447 Theoretical Neuroscience - 4 cr
  • MATH 5466 Mathematics of Machine Learning and Data Analysis II - 4 cr
  • MATH 5467 Introduction to the Mathematics of Image and Data Analysis - 4cr
  • MATH 5485 Introduction to Numerical Methods I - 4 cr
  • MATH 5486 Introduction to Numerical Methods II - 4 cr
  • MATH 5490 - Special topics (only the sections listed below are approved)
    • Mathematics of Data Science and Machine Learning (Spring 23)
    • Mathematics of Machine Learning and Data Analysis (Fall 23; can only be used as an elective IF CSCI 5521 is not taken)
  • MATH 5525 Introduction to Ordinary Differential Equations - 4 cr
  • MATH 5535 Dynamical Systems and Chaos - 4 cr
  • MATH 5583 Complex Analysis - 4 cr
  • MATH 5587 Elementary Partial Differential Equations I - 4 cr
  • MATH 5588 Elementary Partial Differential Equations II - 4 cr
  • MATH 5615H Honors: Introduction to Analysis I - 4 cr
  • MATH 5616H  Honors: Introduction to Analysis II - 4 cr
  • MATH 5651 or STAT 5101 Basic Theory of Probability and Statistics - 4 cr
  • MATH 5652 Introduction to Stochastic Processes - 4 cr
  • MATH 5654 Prediction and Filtering - 4 cr
  • MATH 5705 Enumerative Combinatorics - 4 cr
  • MATH 5711 Linear Programming and Combinatorial Optimization - 4 cr
  • MATH 5990 - 4 cr special topics
    • Mathematics of Quantum Computing (Fall 24; can only be used as an elective IF CSCI 5980 Intro to Quantum Computing - fall 2023 was not taken)
  • ME 5228 Introduction to Finite Element Modeling, Analysis, and Design - 4 cr
  • ME 5286 Robotics - 4 cr
  • MICE 5035 (was MICE 5992) Personal Microbiome Analysis - 3 cr
  • PDES 5704* Computer-Aided Design Methods - 3 cr
  • PHYS 4041 Computational Methods in the Physical Sciences - 4 cr
  • PHYS 4051 Methods of Experimental Physics I - 5 cr
  • PSY 5018H Mathematical Models of Human Behavior - 3 cr
  • PSY 5036W Computational Vision - 3 cr
  • PSY 5038W Introduction to Neural Networks - 3 cr
  • SENG 5709 Event Driven Architecture & Real-time Data Processing - 3 cr
  • STAT 3301 Regression and Statistical Computing - 4 cr
  • STAT 4051 Statistical Machine Learning I - 4 cr
  • STAT 4052 Statistical Machine Learning II - 4 cr
  • STAT 4101 Theory of Statistics I - 4 cr
  • STAT 4102 or STAT 5102 Theory of Statistics II - 4 cr
  • STAT 5201 Sampling Methodology in Finite Populations - 3 cr
  • STAT 5302 Applied Regression Analysis - 4 cr
  • STAT 5303 Designing Experiments - 4 cr
  • STAT 5401 Applied Multivariate Methods - 3 cr
  • STAT 5421 Analysis of Categorical Data - 3 cr
  • STAT 5511 Time Series Analysis - 3 cr
  • STAT 5601 Nonparametric Methods - 3 cr
  • STAT 5701 Statistical Computing - 3 cr

*A maximum of 2 GDES and PDES courses may be used for major electives. 

MATH and STAT courses for consideration

The following MATH and STAT courses could be considered if a syllabus description is provided:

  • MATH 4990
  • MATH 4991
  • MATH 4992
  • MATH 4993
  • MATH 4995
  • MATH 4997W
  • MATH 5900
  • MATH 5990
  • STAT 5931
  • STAT 5993
  • STAT 4893W

Other courses

Courses not listed above must be submitted to the computer science advisors for approval. Approval is only given to courses that have elements of computer science (computational theory or programming requirements), math, or statistics and relate to the student's overall major elective plan. In general, 3xxx classes not listed above are not allowed as part of the upper division technical electives. STAT 5021, MATH 4005, MATH 4065, MATH 4067W, MATH 5067, and MATH 5068 as well as any other EE, IDSC, or INET courses cannot be approved for the program as all courses from these departments have already been reviewed.

11 of the 23 credits required to complete the Computer Science B.S. major curriculum (includes the Upper Division Math Oriented Requirement) must be from CSCI courses. At most 3 credits of the advanced project course (CSCI 4970W), independent study (CSCI 5991), or directed research (CSCI 5994) can be used as part of the upper division major program. Students are able to take more than 3 credits of special topics courses (CSCI 5980); however, if a student includes more than 3 credits of 5980 courses, or includes both 5980 credits and 4921, 4970W, 5991, or 5994 credits in their upper division major program they should check with their computer science advisor to ensure they have enough "regular" CSCI courses.