Duluth campus
 
Duluth Campus

Computer Science M.S.

Computer Science
Swenson College of Science and Engineering
Link to a list of faculty for this program.
Contact Information
Department of Computer Science, University of Minnesota Duluth, 1114 Kirby Drive, 320 Heller Hall, Duluth, MN 55812 (218-726-7607; fax: 218-726-8240)
Email: cs@d.umn.edu
  • Program Type: Master's
  • Requirements for this program are current for Fall 2017
  • Length of program in credits: 33
  • This program does not require summer semesters for timely completion.
  • Degree: Master of Science
Along with the program-specific requirements listed below, please read the General Information section of this website for requirements that apply to all major fields.
Computer science is a discipline that involves understanding the design of computers and computational processes. Study in the field ranges from the theoretical study of algorithms to the design and implementation of software at the systems and applications levels. The master of science is a two-year program that provides the necessary foundational studies for graduates planning to pursue either a doctorate in computer science or a career as a computer scientist in business or industry. It is designed for students with undergraduate degrees in computer science or computer engineering. These students should be able to enroll immediately in 8xxx computer science courses.
Program Delivery
  • via classroom (the majority of instruction is face-to-face)
Prerequisites for Admission
The preferred undergraduate GPA for admittance to the program is 3.00.
The program is designed for students with undergraduate degrees in computer science or computer engineering.
Other requirements to be completed before admission:
Students with undergraduate degrees in fields other than computer science or computer engineering may be considered for admittance if they have completed the following courses or their equivalents: CS 1511-1521 - Computer Science I-II; CS 2511 - Software Analysis and Design; CS 2521 - Computer Organization and Architecture; CS 3511 - Computer Science Theory; CS 5621 - Computer Architecture or CS 5651 - Computer Networks; and CS 5631 - Operating Systems. The appropriate math prerequisites, namely MATH 1296-1297 - Calculus I-II and STAT 3611 - Introduction to Probability and Statistics, are also required.
Applicants must submit their test score(s) from the following:
  • GRE
International applicants must submit score(s) from one of the following tests:
  • TOEFL
    • Internet Based - Total Score: 79
    • Internet Based - Writing Score: 21
    • Internet Based - Reading Score: 19
    • Paper Based - Total Score: 550
  • IELTS
    • Total Score: 6.5
  • MELAB
    • Final score: 80
The preferred English language test is Test of English as Foreign Language.
Key to test abbreviations (GRE, TOEFL, IELTS, MELAB).
For an online application or for more information about graduate education admissions, see the General Information section of this website.
Program Requirements
Plan A: Plan A requires 17 to 23 major credits, 0 to 6 credits outside the major, and 10 thesis credits. The final exam is oral.
Plan B: Plan B requires 27 to 33 major credits and 0 to 6 credits outside the major. The final exam is oral.
This program may be completed with a minor.
Use of 4xxx courses toward program requirements is permitted under certain conditions with adviser approval.
A minimum GPA of 3.00 is required for students to remain in good standing.
The master of science degree is offered under Plan A (thesis) and Plan B (non-thesis). At least 33 credits are required, including 16 credits from 8xxx courses in computer science, 1 credit of CS 8993 - Seminar, and 6 credits of electives (either CS 5xxx courses or from a minor or related field). Plan A also requires 10 thesis credits; Plan B requires at least 10 credits in additional courses, 5xxx or above. Except in very rare instances, these must be computer science courses. All courses are chosen in consultation with the student's adviser, subject to approval by the director of graduate studies. Normally 4xxx computer science courses may not be included in degree programs for the master of science in computer science.
Computer Science requirement (17 cr)
Take 16 or more credit(s) from the following:
· CS 8561 - Human Computer Interaction (4.0 cr)
· CS 8631 - Advanced Systems Programming (4.0 cr)
· CS 8721 - Advanced Computer Graphics (4.0 cr)
· CS 8751 - Machine Learning Data and Mining (4.0 cr)
· CS 8761 - Natural Language Processing (4.0 cr)
· CS 8771 - Advanced Computational Logic (4.0 cr)
· CS 8821 - Advanced Computer Security (4.0 cr)
Graduate Seminar
CS 8993 - Seminar (1.0 cr)
Electives outside of Computer Science (6 cr)
The purpose of this requirement is to provide coursework that will support your degree program without duplicating or overlapping courses available within the graduate CS curriculum. Such courses may be chosen from mathematics, statistics, electrical engineering and CS 5xxx courses subject to the approval of the director of graduate studies.
Plan A or Plan B (10 cr)
Plan A
Students must register for 10 credits.
CS 8777 - Thesis Credits: Master's (1.0-24.0 cr)
or Plan B
Take 10 or more credit(s) from the following:
· CS 5511 - Theory of Computation (4.0 cr)
· CS 5521 - Advanced Data Structures (4.0 cr)
· CS 5541 - Artificial Intelligence (4.0 cr)
· CS 5551 - User Interface Design (4.0 cr)
· CS 5571 - Principles of Programming Language (4.0 cr)
· CS 5621 - Computer Architecture (4.0 cr)
· CS 5631 - Operating Systems (4.0 cr)
· CS 5641 - Compiler Design (4.0 cr)
· CS 5651 - Computer Networks (4.0 cr)
· CS 5721 - Computer Graphics (4.0 cr)
· CS 5751 - Introduction to Machine Learning and Data Mining (4.0 cr)
· CS 5761 - Introduction to Natural Language Processing (4.0 cr)
· CS 5991 - Independent Study (1.0-4.0 cr)
· CS 5994 - Advanced Topics in Computer Science (4.0 cr)
· CS 8561 - Human Computer Interaction (4.0 cr)
· CS 8631 - Advanced Systems Programming (4.0 cr)
· CS 8721 - Advanced Computer Graphics (4.0 cr)
· CS 8751 - Machine Learning Data and Mining (4.0 cr)
· CS 8761 - Natural Language Processing (4.0 cr)
· CS 8771 - Advanced Computational Logic (4.0 cr)
· CS 8821 - Advanced Computer Security (4.0 cr)
 
More program views..
View college catalog(s):
· Swenson College of Science and Engineering


View checkpoint chart:
· Computer Science M.S.
View PDF Version:
Search.
Search Programs

Search University Catalogs
Related links.

Swenson College of Science and Engineering

Graduate Admissions

Graduate School Fellowships

Graduate Assistantships

Colleges and Schools

One Stop
for tuition, course registration, financial aid, academic calendars, and more
 
CS 8561 - Human Computer Interaction
Credits: 4.0 [max 4.0]
Grading Basis: A-F only
Typically offered: Every Fall
Introduction to the software algorithms, hardware components, and concepts for building and evaluating virtual environments for effective human-computer interaction (visual, auditory, haptic, and mechanical aspects). Includes the perceptual components for constructing effective human-computer interaction with a virtual environment. prereq: 5551 or 5721
CS 8631 - Advanced Systems Programming
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Overview of systems programs with emphasis on unifying themes common to major application areas, such as compiler construction, operating systems, and networks. Advanced study of practical aspects of one of these systems, including a substantive software development project. prereq: 5631, 5641 or instructor consent
CS 8721 - Advanced Computer Graphics
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Contemporary computer graphics techniques. Focus on advanced graphics algorithms and programming, curve and surface representations, physically based rendering, visible surface determination, illumination, texturing, and real time rendering. prereq: 5721 or instructor consent
CS 8751 - Machine Learning Data and Mining
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Introduction to primary approaches to machine learning and data mining. Methods selected from decision trees, meural networks, statistical learning, genetic algorithms, support vector machines, ensemble methods, and reinforcement learning. Theoretical concepts associated with learning, such as inductive bias and Occam's razor. pre-req: CS 2511, 3512, STAT 3611 and graduate student; a grade of C- or better is required in all prerequisite courses
CS 8761 - Natural Language Processing
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Techniques to analyze, generate, and understand human language via computational techniques. This course focuses on empirical approaches to lexical and syntactic analysis, semantic interpretation, and discourse processing. Applications include part-of-speech tagging, parsing, lexical acquisition, and machine translation. prereq: 5761 or instructor consent; grad student
CS 8771 - Advanced Computational Logic
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Mathematically sound reintroduction to classical logic. Syntax, semantics, and proof theory for propositional and first-order logic. Soundness and completeness. Incompleteness. Additional topic(s)from among: automated theorem proving, second-order logic, nonmonotonic logics and knowledge representation, logic programming. prereq: 4511 or instructor consent; grad student
CS 8821 - Advanced Computer Security
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Broad, active, hands-on and implementation-based approach to computer security. Fundamental cryptographic theory, advanced techniques and application. Complexity, cryptanalysis, and impact of technological change. Core security theory; confidentiality, integrity, availability. Security models. Risk assessment and decision-making. Issues for general -purpose, trusted and “cloud” operating system security including hardware requirements, authentication, access control, information flow and assurance. Program and network security fundamentals and best practices including coding principles, firewalls and network design. Exploits, defenses and remediation for multiple issues pertaining to software, hardware, databases and networks. Political, social and engineering issues relating to security and privacy. prereq: CS 4821 or grad student and instructor consent
CS 8993 - Seminar
Credits: 1.0 [max 3.0]
Grading Basis: A-F or Aud
Typically offered: Every Fall & Spring
Presentation and discussion of basic ethical theories, case studies dealing with ethical issues facing the computing professional in his/her life as a practitioner, and the development of research proposal which meets the requirements and standards of the department and serves as the foundation of and guideline for the development of the graduate research project (i.e., thesis). prereq: instructor consent
CS 8777 - Thesis Credits: Master's
Credits: 1.0 -24.0 [max 50.0]
Grading Basis: No Grade
Typically offered: Every Fall & Spring
(No description) prereq: Max 18 cr per semester or summer; 10 cr total required (Plan A only)
CS 5511 - Theory of Computation
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Spring
Mathematical theory of computation and complexity. Deterministic and nondeterministic Turing machines, Church-Turning Thesis, recursive and recursively enumerable languages. Undecidable problems, Rice's Theorem. Time and space complexity, reducibility, completeness for complexity classes, Cook's Theorem, P versus NP, Savitch's Theorem, complexity hierarchy. prereq: 3512 or MATH 3355 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5521 - Advanced Data Structures
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Every Fall
Survey of advanced data structures and algorithms such as heaps and heapsort, quicksort, red-black trees, B-trees, hash tables, graph algorithms, divide and conquer algorithms, dynamic programming, and greedy algorithms. Methods for proving correctness and asymptotic analysis. prereq: 2511, 3512, Math 1297 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5541 - Artificial Intelligence
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Principles and programming methods of artificial intelligence. Knowledge representation methods, state space search strategies, and use of logic for problem solving. Applications chosen from among expert systems, planning, natural language understanding, uncertainty reasoning, machine learning, and robotics. Lectures and labs will utilize suitable high-level languages (e.g., Python or Lisp). prereq: 2511, 3512 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5551 - User Interface Design
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall
Design and layout of interactive programs using components, containers, events, menus, and dialogs. The use of graphics primitives, color and images; giving user feedback and help. Rapid prototyping and interface management systems. Design for accessibility and usability. prereq: 2511, Math 1297 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5571 - Principles of Programming Language
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Introduction to the fundamental concepts in programming languages. Introduction to the intellectual tools needed to use, evaluate, design and choose programming languages, and reason about programs. Lambda calculus, different programming paradigms such as functional programming and logic programming. Programming in a functional language such as ML and OCAML, and in a logic language, e.g., Prolog. Using these languages as case studies to examine each basic concept of programming languages (values, bindings, types, abstraction etc.). Syntax analysis (syntax, parsing, interpreting, and compiling). Includes a project, e.g., implementing a working interpreter for a small language. prereq: 2511, 3512 or instructor consent, a grade of C- or better is required in all prerequisite courses.
CS 5621 - Computer Architecture
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Every Spring
Advanced concepts in processor and computer system organization and their impact on performance. Exploitation of parallelism, multilevel memory organization, system interconnection, and input-output organization. prereq: 2521 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5631 - Operating Systems
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Every Fall & Spring
Operating system as resource manager. Processor management and scheduling, deadlocks, concurrency, memory management and protection and security as applied in modern operating systems. Concepts are illustrated via laboratory assignments which heavily emphasize concurrency. prereq: 2511, 2521 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5641 - Compiler Design
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
A selection from the following topics: finite-state grammars, lexical analysis, and implementation of symbol tables. Context-free languages and parsing techniques. Syntax-directed translation. Run-time storage allocation. Intermediate languages. Code generation methods. Local and global optimization techniques. prereq: 2511, 2521, 3512 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5651 - Computer Networks
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Every Fall
Introduction to computer networking, network programming, networking hardware and associated network protocols. Layered network architecture, network services, and implementation of computer networking software. prereq: 2511, 2521 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5721 - Computer Graphics
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Mathematics for computer graphics, basic raster algorithms, 2D and 3D transformations, viewing and shading. The graphics pipeline including visible surface determination, shading, ray-tracing, texture mapping, and clipping. Data structures including triangle meshes, scene graphs, bounding volume hierarchies. Real-time graphics applications using software systems such as Op. prereq: 2511, Math 1297 or instructor consent, a grade of C- or better is required in all prerequisite courses
CS 5751 - Introduction to Machine Learning and Data Mining
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Introduction to primary approaches to machine learning and data mining. Methods selected from decision trees, neural networks, statistical learning, genetic algorithms, support vector machines, ensemble methods, and reinforcement learning. Theoretical concepts associated with learning, such as inductive bias and Occam's razor. prereq: 2511, 3512, Stat 3611 or graduate student or instructor consent; a grade of C- or better is required in all prerequisite courses
CS 5761 - Introduction to Natural Language Processing
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall
Techniques for creating computer programs that analyze, generate, and understand natural human language. Topics include syntactic analysis, semantic interpretation, and discourse processing. Applications selected from speech recognition, conversational agents, machine translation, and language generation. Substantial programming project required. prereq: 2511, 3512 or instructor consent; a grade of C- or better is required in all prerequisite courses
CS 5991 - Independent Study
Credits: 1.0 -4.0 [max 8.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall, Spring & Summer
Directed study of special interest topics not available in the standard curriculum. Must be arranged with the instructor in advance of registration. May include readings, research, or special projects. prereq: instructor consent
CS 5994 - Advanced Topics in Computer Science
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Research-oriented study of topics of current academic or industrial interest, such as parallel algorithms, VLSI design, computational geometry, logic programming languages, program correctness, information retrieval systems, and decision support systems. prereq: Grad student or instructor consent
CS 8561 - Human Computer Interaction
Credits: 4.0 [max 4.0]
Grading Basis: A-F only
Typically offered: Every Fall
Introduction to the software algorithms, hardware components, and concepts for building and evaluating virtual environments for effective human-computer interaction (visual, auditory, haptic, and mechanical aspects). Includes the perceptual components for constructing effective human-computer interaction with a virtual environment. prereq: 5551 or 5721
CS 8631 - Advanced Systems Programming
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Overview of systems programs with emphasis on unifying themes common to major application areas, such as compiler construction, operating systems, and networks. Advanced study of practical aspects of one of these systems, including a substantive software development project. prereq: 5631, 5641 or instructor consent
CS 8721 - Advanced Computer Graphics
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Contemporary computer graphics techniques. Focus on advanced graphics algorithms and programming, curve and surface representations, physically based rendering, visible surface determination, illumination, texturing, and real time rendering. prereq: 5721 or instructor consent
CS 8751 - Machine Learning Data and Mining
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Introduction to primary approaches to machine learning and data mining. Methods selected from decision trees, meural networks, statistical learning, genetic algorithms, support vector machines, ensemble methods, and reinforcement learning. Theoretical concepts associated with learning, such as inductive bias and Occam's razor. pre-req: CS 2511, 3512, STAT 3611 and graduate student; a grade of C- or better is required in all prerequisite courses
CS 8761 - Natural Language Processing
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Techniques to analyze, generate, and understand human language via computational techniques. This course focuses on empirical approaches to lexical and syntactic analysis, semantic interpretation, and discourse processing. Applications include part-of-speech tagging, parsing, lexical acquisition, and machine translation. prereq: 5761 or instructor consent; grad student
CS 8771 - Advanced Computational Logic
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Mathematically sound reintroduction to classical logic. Syntax, semantics, and proof theory for propositional and first-order logic. Soundness and completeness. Incompleteness. Additional topic(s)from among: automated theorem proving, second-order logic, nonmonotonic logics and knowledge representation, logic programming. prereq: 4511 or instructor consent; grad student
CS 8821 - Advanced Computer Security
Credits: 4.0 [max 4.0]
Grading Basis: A-F or Aud
Typically offered: Periodic Fall & Spring
Broad, active, hands-on and implementation-based approach to computer security. Fundamental cryptographic theory, advanced techniques and application. Complexity, cryptanalysis, and impact of technological change. Core security theory; confidentiality, integrity, availability. Security models. Risk assessment and decision-making. Issues for general -purpose, trusted and “cloud” operating system security including hardware requirements, authentication, access control, information flow and assurance. Program and network security fundamentals and best practices including coding principles, firewalls and network design. Exploits, defenses and remediation for multiple issues pertaining to software, hardware, databases and networks. Political, social and engineering issues relating to security and privacy. prereq: CS 4821 or grad student and instructor consent