# Undergraduate courses

The data science bachelor's degree at the University of Minnesota offers a comprehensive curriculum in math, science, computer science, statistics, industrial engineering, and technical writing, plus technical electives and a capstone project. In addition, all students will also take courses to meet the University's liberal education requirement.

## Required mathematics coursework

- MATH 1371 or 1271 or 1571H - Calculus I (4 cr)
- MATH 1372 or 1272 or 1572H - Calculus II (4 cr)
- MATH 2374 or 2263 or 2573H - Multivariable Calculus (4 cr)
- CSCI 2033 - Elementary Computational Linear Algebra (4 cr) or acceptable substitution

## Required science coursework

- PHYS 1301W/1401V - Introductory Physics for Science and Engineering I (4 cr)
- Second science course - Choose from PHYS 1302W, CHEM 1061&1065, CHEM 1062&1066, ESCI 2201, PSY 3011, or GCD 3022 (3 or 4 cr)

## Required computer science coursework

- CSCI 1133 - Introduction to Computing and Programming Concepts (4 cr) (recommended option)
*or CSCI 1103 or CSCI 1113 or CSCI 1901; EE 1301 is not accepted* - CSCI 2081 - Introduction to Software Development and Data Structures (4 cr) *
*or CSCI 1913 or CSCI 1933 AND CSCI 3081W for CSCI/DSCI double majors (Data Science majors need to contact dsciug@umn.edu in order to request permission into CSCI 3081W if they are not double majors in Computer Science)* - CSCI 3041 - Introduction to Discrete Structures and Algorithms (4 cr)
**or CSCI 2011 AND CSCI 4041 for CSCI/DSCI double majors* - CSCI 3061 - Introduction to Systems and Systems Programming (4cr)
**or CSCI 2021 AND CSCI CSCI 4061 for CSCI/DSCI double majors* - CSCI 4707 - Practice of Database Systems (3 cr) (recommended option) or CSCI 5707
- CSCI 5521 - Introduction to Machine Learning (3 cr) or CSCI 5523 - Introduction to Data Mining (3 cr) or STAT 4052 - Introduction to Statistical Learning (4 cr)

## Required statistics coursework

- STAT 3021 - Introduction to Probability and Statistics (3 cr)
*or STAT 3011 - Intro to Statistical Analysis***AND**STAT 3032 - Regression and Correlated Data - STAT 3301 - Regression and Statistical Computing (4 cr)
*or STAT 3701 - Intro to Statistical Computing***AND**STAT 3032 - Regression and Correlated Data (3701 + 3032 may only make sense for a Data Science and Statistics double major) - STAT 4051 - Applied Statistics I (4 cr)
- STAT 5101 - Theory of Statistics I (4 cr) or MATH 5651 - Basic Theory of Probability and Statistics (4 cr)
- STAT 5102 - Theory of Statistics II (4 cr)

## Required industrial engineering coursework

- IE 3013 - Optimization for Machine Learning (4 cr)
- IE 5533 - Operations Research for Data Science (3 cr)
**(offered starting Fall 2022; students can take IE 3011 or IE 5531 (Optimization) AND IE 4011 or IE 5532 (Stochastic Modeling) as a substitution for this requirement until Fall 2022; students will be able to use both courses in the curriculum (sub for IE 5533 + technical elective))**

## Required technical writing

- WRIT 3562W -Technical and Professional Writing (4 cr)

## Capstone

- DSCI 4093 - Senior Project

## Required upper division technical elective

(18 credits minimum)

- STAT 5201 - Sampling Methodology in Finite Populations (3 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 4893W - Communication for Statisticians (3 cr)
- STAT 5931 - Topics in Statistics (3 cr)
- IE 3011 - Optimization I (4 cr)
- IE 3012 - Optimization II (4 cr)
- IE 5080 - Reinforcement Learning and Dynamic Programming (4 cr) (can be approved on a case-by-case basis; contact dsciug@umn.edu to request approval.)
- IE 5111 - Systems Engineering I (2 cr)
- IE 5113 - Systems Engineering II (4 cr)
- IE 5531 - Engineering Optimization I (4 cr)
- IE 5553 - Simulation (4 cr)
- IE 5541 - Project Management (4 cr)
- IE 5545 - Decision Analysis (4 cr)
- IE 5561 - Analytics and Data-Driven Decision Making (4 cr)
- IE 5545 - Decision Analysis (4 cr)
- IE 8534 - Advanced Topics in Opt for Machine Learning (3 cr) (can be approved on a case-by-case basis; contact dsciug@umn.edu to request approval.)
- 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)
- ESPM 5031 - Applied Global Positioning Systems for Geographic Information Systems (3 cr)
*Note: must be graduate version of course.* - MATH 4242 - Applied Linear Algebra (4 cr)
- MATH 4428 - Mathematical Modeling (4 cr)
- MATH 5467 - Introduction to the Mathematics of Image and Data Analysis (4 cr)
- MATH 5652 - Introduction to Stochastic Processes (4 cr)
- CSCI 4131 - Internet Programming (3 cr)
- CSCI 4511W - Introduction to Artificial Intelligence (4 cr) or CSCI 5511 - Artificial Intelligence I (3 cr)
*Note: CSCI 2041 is a prerequisite for CSCI 4511W & 5511, which is not required for Data Science majors. This will need to be taken to be prepared for 4511W or 5511. CSCI 3041 will need to be taken prior to taking CSCI 2041.* - CSCI 5105 - Introduction to Distributed Systems (3 cr)
- CSCI 5115 - User Interface Design, Implementation and Evaluation (3 cr)
- CSCI 5117 - Developing the Interactive Web (3 cr)
- CSCI 5123 - Recommender Systems (3cr)
- CSCI 5125 - Collaborative and Social Computing (3 cr)
- CSCI 5271 - Introduction to Computer Security (3 cr)
*Note: to be prepared for this course students must have CSCI 4061 or CSCI 5103. Both of these courses are not required or approved for use in a Data Science major. Double majors in Computer Science and Data Science could consider this course option without adding coursework.* - CSCI 5302 - Analysis of Numerical Algorithms (3 cr)
- CSCI 5304 - Computational Aspects of Matrix Theory (3 cr)
- CSCI 5451 - Introduction to Parallel Computing (3 cr)
- CSCI 5461 - Functional Genomics, Systems Biology, and Bioinformatics (3 cr)
- CSCI 5481 - Computational Techniques for Genomics (3 cr)
- CSCI 5512 - Artificial Intelligence II (3 cr)
- CSCI 5525 - Machine Learning (3 cr)
- CSCI 5527 - Deep Learning: Models, Computation, and Applications (3 cr)
- CSCI 5541 - Natural Language Processing (3 cr)
- CSCI 5561 - Computer Vision (3 cr)
- CSCI 5563 - Multiview 3D Geometry in Computer Vision (3 cr)
- CSCI 5609 - Visualization (3 cr)
- CSCI 5708 - Architecture and Implementation of Database Management Systems (3 cr)
- CSCI 5715 - From GPS and Virtual Globes to Spatial Computing (3 cr)
- CSCI 5751 - Big Data Engineering and Architecture (3 cr)
- CSCI 5801 - Software Engineering I (3 cr)
*Note: CSCI 2041 is a prerequisite for CSCI 5801, which is not required for Data Science majors. This will need to be taken to be prepared for 5801. CSCI 3041 will need to be taken prior to taking CSCI 2041.* - CSCI 5802 - Software Engineering II (3 cr)
- CSCI 5980 sections (only sections listed below can be used as technical electives; email dsciug@umn.edu to have your APAS Report updated so the course counts)
- Fall 2022
- Section 1: Natural Language Processing with Deep Learning
- Section 2: Functional Algorithm Design and Calculation
- Section 3: Social Networks

- Fall 2022