Graduate course offerings:

 

Algorithms and Computation Theory

CMSC 451      Design and Analysis of Computer Algorithms

CMSC 452      Elementary Theory of Computation

CMSC 456      Data Encryption and Security

CMSC 475      Combinatorics and Graph Theory

CMSC 650      Introduction to Computability(Inactive Course)

CMSC 651      Analysis of Algorithms

CMSC 750      Advanced Theory of Computation(Inactive Course)

CMSC 751      Parallel Algorithms

CMSC 752      Concrete Complexity

CMSC 753      Linear Programming and Combinatorial Optimization

CMSC 754      Computational Geometry

 

Artificial Intelligence

CMSC 421      Introduction to Artificial Intelligence

CMSC 720      Logic for Problem Solving

CMSC 721      Non-Monotonic Reasoning

CMSC 722      Artificial Intelligence Planning

CMSC 723      Natural Language Processing

CMSC 726      Machine Learning

CMSC 727      Neural Modeling

 

Database Systems

CMSC 420      Data Structures

CMSC 424      Database Design

CMSC 624      Database Systems Implementation

CMSC 724      Database Management Systems

CMSC 725      Geographic Information Systems and Spatial Databases

 

Computer Vision and Graphics

CMSC 420      Data Structures

CMSC 426      Image Processing

CMSC 427      Computer Graphics

CMSC 725      Geographic Information Systems and Spatial Databases

CMSC 740      Computer Graphics

CMSC 733      Computer Processing of Pictorial Information

CMSC 754      Computational Geometry

 

Scientific Computing

CMSC 460      Computational Methods

CMSC 466      Introduction to Numerical Analysis I

CMSC 660      Scientific Computing I

CMSC 661      Scientific Computing II

CMSC 662      Computer Organization and Programming for Scientific Computing

CMSC 666      Numerical Analysis I

CMSC 667      Numerical Analysis II

CMSC 760      Advanced Linear Numerical Analysis

CMSC 762      Numerical Solution of Nonlinear Equations

CMSC 764      Advanced Numerical Optimization

 

Programming Languages/Software Engineering & Human-Computer Interaction

CMSC 430      Theory of Language Translation

CMSC 433      Programming Language Technologies and Paradigms

CMSC 434      Human Factors in Computer and Information Systems

CMSC 435      Software Engineering

CMSC 630      Formal Methods

CMSC 631      Program Analysis and Understanding

CMSC 632      Software Product Assurance

CMSC 731      Programming Language Implementation

CMSC 732      Compiling for Vector and Parallel Architectures

CMSC 735      Quantitative Approach to Software Management and Engineering

CMSC 736      Software Engineering Environments

 

Systems and Networks

CMSC 412      Operating Systems

CMSC 414      Computer Security

CMSC 417      Computer Networks

CMSC 710      Performance Evaluation of Computer Systems

CMSC 711      Computer Networks

CMSC 712      Distributed Algorithms and Verification

CMSC 713      Real-time Systems

CMSC 714      High Performance Computing

 

Our 400-level courses are primarily senior undergraduate courses which can also count as graduate courses. They are offered every semester. The intention is that graduate students should take them only to acquire needed background. The 600-700 level courses are the core, long-standing curriculum. They are offered on a rotating basis, each roughly every three or four semesters. In addition to the courses listed above, special topics courses are offered, under the course numbers CMSC 498, 798, 818, 828, 838, etc. Courses from other departments may be used for MS/Phd qualifying coursework after approval.