CS
2021-2022
CS 5014
Research Methods in Computer Science
Preparation for research in computer science. Technical communication skills. Design and evaluation of experiments. The research process.
Graduate
Lecture, Online Lecture
3
3
CS 5024
Ethics and Professionalism in Computer Science
Ethical implications and consequences of computing technology applied to algorithmic decision making, security, privacy, autonomous systems. Ethical frameworks and their application to relevant current topics. Formulating, reasoning, and communicating positions on ethical topics related to computing technology. Diversity and bias as it relates to information technology. Ethical conduct of research and development of intellectual property. Pre: Graduate standing.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5040
Intermediate Data Structures and Algorithm Analysis
Data structures and analysis of data structure and algorithm performance. Sorting, searching, hashing, and advanced tree structures and algorithms. File system organization and access methods. Course projects develop advanced problem-solving, design, and implementation skills. Pre: Graduate standing in Computer Science and an undergraduate second semester programming course.
Graduate
Lecture, Online Lecture
3
3
CS 5044
Object-Oriented Programming with Java
Object-oriented programming concepts and the Java programming language. The application of design strategies, notations, and patterns related to object-oriented systems. Techniques and libraries for developing applications related to the World Wide Web. Credit will not be given for both 2704 and 5044. Not for Computer Science major or minor credit; not for graduate credit for CSA or INFS programs. Pre: Proficiency in a high-level programming language (e.g., FORTRAN, C, C++, or Java) equivalent to 1044 and prior course work, practical training, or work experience related to developing computer software and systems.
Graduate
Lecture, Online Lecture
3
3
CS 5045
Computation for the Data Sciences
Two course series covering fundamentals of computer science and background in data sciences needed by graduate students without a computer science background. 5045: Python; programming language syntax and semantics; abstraction and object-oriented programming; data structures; algorithms and algorithm analysis; databases. 5046: Software engineering; data preprocessing; and machine learning. Not for CS major or minor credit; not for graduate credit in CSA program. Pre: Graduate standing; 5045 for 5046.
Graduate
Lecture, Online Lecture
3
3
CS 5046
Computation for the Data Sciences
Two course series covering fundamentals of computer science and background in data sciences needed by graduate students without a computer science background. 5045: Python; programming language syntax and semantics; abstraction and object-oriented programming; data structures; algorithms and algorithm analysis; databases. 5046: Software engineering; data preprocessing; and machine learning. Not for CS major or minor credit; not for graduate credit in CSA program. Pre: Graduate standing; 5045 for 5046.
Graduate
Lecture, Online Lecture
3
3
CS 5045
CS 5104
Computability and Formal Languages
Formal theory of computability, the halting problem, models of computation, and Churchs thesis, and formal languages.
Graduate
Lecture, Online Lecture
3
3
CS 5034
CS 5114
Theory of Algorithms
Methods for constructing and analyzing algorithms. Measures of computational complexity, determination of efficient algorithms for a variety of problems such as searching, sorting and pattern matching. Geometric algorithms, mathematical algorithms, and theory of NP-completeness. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
CS 2604
CS 5124
Algorithms in Bioinformatics
Algorithms to solve problems found in biology, especially molecular biology. A variety of current problems in computational molecular biology will be introduced, investigated, analyzed for computational complexity, and solved with efficient algorithms, when feasible. A number of such problems will be shown to be intractable or other evidence of their difficulty will be presented. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
(CS 5046, PPWS 5314)
CS 5204
Operating Systems
Issues in the design and functioning of operating systems. Emphasis on synchronization of concurrent activity in both centralized and distributed systems. Deadlock, scheduling, performance analysis, operating system design, and memory systems including distributed file systems. Pre: Background in Operating Systems required and Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5214
Modeling and Evaluation of Computer Systems
An overview of modeling, simulation, and performance evaluation of computer systems, i.e., operating systems, database management systems, office automation systems, etc. Fundamentals of modeling, the life cycle of a simulation study, workload characterization, random number and variate generation, procurement, measurement principles, software and hardware monitors, capacity planning, system and program tuning, and analytic modeling. Duplication of subject matter of 4214 and 4224. Maximum of 6 hours credit may be obtained from 4214, 4224, 5214. Pre: Graduate standing the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5234
Advanced Parallel Computation
Survey of leading high-end computing systems and their programming environments. Advanced models of parallel computation. Mapping of parallel algorithms to architectures. Performance programming and tools for performance optimization on parallel systems. Execution environments and system software for large-scale parallel computing. Case studies of parallel applications. Graduate standing required.
Graduate
Lecture, Online Lecture
3
3
CS 4234 (UG) OR CS 4234
CS 5244
Web Application Development
Languages and technologies needed to develop modern data- centric web applications. Commonly used protocols and standards. Client-side technologies such as HTML, CSS, and JavaScript; server-side technologies such as Servlets and JSP; and database access with SQL. Principles and technologies for web application architecture, electronic commerce, and web application security.
Graduate
Lecture, Online Lecture
3
3
CS 5044
CS 5254
Mobile Application Development
Languages and technologies needed to develop applications for modern mobile devices. Mobile infrastructure and devices. Interactive graphical user interfaces for mobile devices. Protocols and standards for using mobile device features such as sensors, networking, location, camera, and audio. Mobile app architecture, performance considerations, and asynchronous programming. Principles and technologies for mobile security.
Graduate
Lecture, Online Lecture
3
3
CS 5044
CS 5264G
Advanced Linux Kernel Programming
Design and internal organization of the Linux operating system kernel. Kernel subsystems, boot process, memory management, process and thread model, scheduling, interrupt and exception handling, virtual file system and the concrete file system, block I/O and I/O scheduler, network stack, and device drivers. Modification of existing kernel code. Design, implementation, test and evaluation of new kernel modules, Kernel and full software stack debugging techniques, and virtualization as an aid for operating system development and debug. Software engineering techniques to analyze, modify and run a large, complex open-source code base. Pre: Graduate standing.
Graduate
Lecture, Online Lecture
3
3
CS 5304
Translator Design and Construction
Fundamental theory of parsing and translation and practical applications of this theory. Lexical analysis, parsing techniques based on top-down (LL, Recursive Descent) and bottom-up (LR, Precedence), code generation, code optimization techniques, and runtime systems. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5314
Programming Languages
In depth investigation of the principles of programming systems, not necessarily restricted to programming languages, both from the point of view of the user and implementer. Algorithms of implementation, syntax and semantic specification systems, block structures and scope, data abstraction and aggregates, exception handling, concurrency, and applicative/functional/data-flow languages.
Graduate
Lecture, Online Lecture
3
3
CS 3304 (UG) OR CS 3304
CS 5424 (BIOL 5424) (GBCB 5424)
Computational Cell Biology
Use of mathematical models (nonlinear ordinary differential equations and stochastic processes) and simulation algorithms to explore the complex feedback circuits that control the behavior of living cells. Concepts and techniques from dynamical systems theory, bifurcation analysis, numerical methods, SBML (systems biology makeup language) and Matlab programming. Applications in gene regulatory networks, cell cycle control, circadian rhythms, cell signaling.
Graduate
Lecture, Online Lecture
3
3
MATH 5515
CS 5465
Numerical Analysis
A survey of the construction, analysis, and implementation of numerical algorithms in linear algebra, nonlinear equations and optimization, approximation by polynomials, quadrature, and ordinary differential equations.
Graduate
Lecture, Online Lecture
3
3
CS 5466
Numerical Analysis
A survey of the construction, analysis, and implementation of numerical algorithms in linear algebra, nonlinear equations and optimization, approximation by polynomials, quadrature, and ordinary differential equations.
Graduate
Lecture, Online Lecture
3
3
CS 5474 (MATH 5474)
Finite Difference Methods for Partial Differential Equations
Finite difference methods for initial and boundary value problems for partial differential equations. Consistency, stability, convergence, dispersion, and dissipation. Methods for linear and nonlinear elliptic and parabolic equations, first- and second-order hyperbolic equations, and nonlinear conservation laws. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5484 (MATH 5484)
Finite Element Methods for Partial Differential Equations
Weak formulations of boundary-value problems for elliptic partial differential equations. Finite element spaces. Approximation theory for finite element spaces. Error estimates. Effects of numerical integration and curved boundaries. Nonconforming methods. Concrete examples of the application of the finite element method. Efficient implementation strategies. Time dependent problems.
Graduate
Lecture, Online Lecture
3
3
CS 3414 (UG) OR CS 3414
CS 5485 (MATH 5485)
Numerical Analysis and Software
Presentation and analysis of numerical methods for solving common mathematical and physical problems. Methods of solving large sparse linear systems of equations, algebraic eigenvalue problems, and linear least squares problems. Numerical algorithms for solving constrained and unconstrained optimization problems. Numerical solutions of nonlinear algebraic systems. Convergence, error analysis. Hardware and software influences. Efficiency, accuracy, and reliability of software. Robust computer codes.
Graduate
Lecture, Online Lecture
3
3
(MATH 4445 (UG), MATH 4446 (UG)) OR (MATH 4445, MATH 4446)
CS 5486 (MATH 5486)
Numerical Analysis and Software
Presentation and analysis of numerical methods for solving common mathematical and physical problems. Methods of solving large sparse linear systems of equations, algebraic eigenvalue problems, and linear least squares problems. Numerical algorithms for solving constrained and unconstrained optimization problems. Numerical solutions of nonlinear algebraic systems. Convergence, error analysis. Hardware and software influences. Efficiency, accuracy, and reliability of software. Robust computer codes.
Graduate
Lecture, Online Lecture
3
3
(MATH 4445 (UG), MATH 4446 (UG)) OR (MATH 4445, MATH 4446)
CS 5504 (ECE 5504)
Computer Architecture
Advanced computer architectures, focusing on multiprocessor systems and the principles of their design. Parallel computer models, programming and interconnection network properties, principles of scaleable designs. Case studies and example applications of pipeline processors, interconnection networks, SIMD and MIMD processors.
Graduate
Lecture, Online Lecture
3
3
CS 4504 (UG) OR CS 4504
CS 5510 (ECE 5510)
Multiprocessor Programming
Principle and practice of multiprocessor programming. Illustration of multiprocessor programming principles through the classical mutual exclusion problem, correctness properties of concurrency (e.g., linearizability), shared memory properties (e.g. register constructions), and synchronization primitives for implementing concurrent data structures (e.g., consensus protocols). Illustration of multiprocessor programming practice through programming patterns such as spin locks, monitor locks, the work-stealing paradigm and barriers. Discussion of concurrent data structures (e.g., concurrent linked lists, queues, stacks, hash maps, skiplists) through synchronization patterns ranging from coarse-grained locking to fine-grained locking to lock-free structures atomic synchronization primitives, elimination, and transactional memory.
Graduate
Lecture, Online Lecture
3
3
ECE 4534 OR ECE 4550
CS 5525 (STAT 5525)
Data Analytics
5525: Basic techniques in data analytics including the preparation and manipulation of data for analysis and the creation of data files from multiple and dissimilar sources. The data mining and knowledge discovery process. Overview of data mining algorithms in classification, clustering, association analysis, probabilistic modeling, and matrix decompositions. Detailed study of classification methods including tree-based methods, Bayesian methods, logistic regression, ensemble, bagging and boosting methods, neural network methods, use of support vectors and Bayesian networks. Detailed study of clustering methods including k-means, hierarchical and self-organizing map methods. Prerequisite: Graduate Standing required.
5526: Techniques in unsupervised and visualized learning in high dimension spaces. Theoretical, probabilistic, and applied aspects of data analytics. Methods include generalized linear models in high dimensional spaces, regularization, lasso and related methods, principal component regression (pca), tree methods, and random forests. Clustering methods including k-means, hierarchical clustering, biclustering, and model-based clustering will be thoroughly examined. Distance-based learning methods include multi dimensional scaling, the self organizing map, graphical/network models, and isomap. Supervised learning will consist of discriminant analyses, supervised pca, support vector machines, and kernel methods.
Graduate
Lecture, Online Lecture
3
3
CS 5526 (STAT 5526)
Data Analytics
5525: Basic techniques in data analytics including the preparation and manipulation of data for analysis and the creation of data files from multiple and dissimilar sources. The data mining and knowledge discovery process. Overview of data mining algorithms in classification, clustering, association analysis, probabilistic modeling, and matrix decompositions. Detailed study of classification methods including tree-based methods, Bayesian methods, logistic regression, ensemble, bagging and boosting methods, neural network methods, use of support vectors and Bayesian networks. Detailed study of clustering methods including k-means, hierarchical and self-organizing map methods. Prerequisite: Graduate Standing required.
5526: Techniques in unsupervised and visualized learning in high dimension spaces. Theoretical, probabilistic, and applied aspects of data analytics. Methods include generalized linear models in high dimensional spaces, regularization, lasso and related methods, principal component regression (pca), tree methods, and random forests. Clustering methods including k-means, hierarchical clustering, biclustering, and model-based clustering will be thoroughly examined. Distance-based learning methods include multi dimensional scaling, the self organizing map, graphical/network models, and isomap. Supervised learning will consist of discriminant analyses, supervised pca, support vector machines, and kernel methods.
Graduate
Lecture, Online Lecture
3
3
CS 5525 OR STAT 5525
CS 5544 (ECE 5544)
Compiler Optimizations
Overview of compilation and compiler optimizations. Design and internal organization of the Low-Level Virtual Machine compiler infrastructure. Static Single Assignment. Data-flow analysis and techniques for reaching definitions, live variable analysis, and available expressions. Lattice theory and iterative algorithms for general frameworks. Non-separable dataflow analysis including constant propagation and folding, faint variable analysis, and points-to may/must analysis. Loop-invariant code motion and lazy code motion. Static Single Assignment construction and optimizations. Register allocation and coalescing. Pointer analysis using Andersonâ€™s and Steensgaardâ€™s algorithms, and liveness analysis of heap data. Pre: Graduate standing.
Graduate
Lecture, Online Lecture
3
3
CS 5560 (ECE 5560)
Fundamentals of Info Security
Principles of information security and relevant mathematical concepts. Classical ciphers, relevant abstract algebra and number theory, symmetric-key ciphers, cipher modes of operation, and asymmetric-key ciphers. Cryptographic hash functions and message authentication codes. Elliptic curve cryptography and cryptosystems. Applications and standards relevant to network and computer security. Pre: Graduate standing.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5565 (ECE 5565)
Network Architecture and Protocols
5565: Principles and concepts of networking and protocols, with emphasis on data link, network, and transport protocols. Contemporary and emerging networks and protocols to illustrate concepts and to provide insight into practical networks including the Internet. Quantitative and qualitative comparisons of network architectures and protocols. 5566: Performance evaluation, design, and management of networks. Use of queuing and other analytical methods, simulation, and experimental methods to evaluate and design networks and protocols. Network management architectures and protocols. Graduate standing in EE, ECE, CS, or IT required.
Graduate
Lecture, Online Lecture
3
3
STAT 4714 (UG) OR STAT 4714
CS 5566 (ECE 5566)
Network Architecture and Protocols
5565: Principles and concepts of networking and protocols, with emphasis on data link, network, and transport protocols. Contemporary and emerging networks and protocols to illustrate concepts and to provide insight into practical networks including the Internet. Quantitative and qualitative comparisons of network architectures and protocols. 5566: Performance evaluation, design, and management of networks. Use of queuing and other analytical methods, simulation, and experimental methods to evaluate and design networks and protocols. Network management architectures and protocols. Graduate standing in EE, ECE, or IT is required.
Graduate
Lecture, Online Lecture
3
3
CS 5565 (UG) OR CS 5565
CS 5580
Cryptographic Engineering
Implementation of cryptographic operations and protocols in contemporary computing platforms. Mapping of cryptographic operations, evaluation and optimization of performance and implementation cost, analysis of security against brute- force cryptanalysis and implementation-level attacks. Design of countermeasures against implementation-level attacks, security-testing procedures, and architectures to support a trusted computing base.
Graduate
Lecture, Online Lecture
3
3
ECE 5560 OR CS 5560
CS 5584 (ECE 5584)
Network Security
Fundamentals of network security. Network security architecture, user and attacker perspective. Practical applications and security standards. Protocol design principles and their impact on computer and network security. Authentication systems. Email security. Firewalls and intrusion detection. Security for wireless systems. Pre: Graduate standing in CSA.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5590 (ECE 5590)
System and Software Security
Secure software design, memory and file system security, operating system security for various platforms. Program classification, anomaly detection, malware detection and analysis. Technical challenges and problems in securing operating systems and software. Classic and modern algorithms, models, principles, and tools for system and application software security. Actual security examples.
Graduate
Lecture, Online Lecture
3
3
CS 5560 OR ECE 5560
CS 5594
Blockchain Technologies
Principles of an open, distributed ledger. Underlying data structures and algorithms such as cryptographic hashing and Merkle trees, consensus algorithms, and Byzantine agreement. Bitcoin as an exemplar. Proof of work and proof of stake. Applications including cryptocurrencies, financial ledgers, and smart contracts. Pre: Graduate standing in Computer Science.
Graduate
Lecture, Online Lecture
3
3
CS 5604
Information Storage and Retrieval
Analyzing, indexing, representing, storing, searching, retrieving, processing and presenting information and documents using fully automatic systems. The information may be in the form of text, hypertext, multimedia, or hypermedia. The systems are based on various models, e.g., Boolean logic, fuzzy logic, probability theory, etc., and they are implemented using inverted files, relational thesauri, special hardware, and other approaches. Evaluation of the systems efficiency and effectiveness. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
CS 5614
Database Management Systems
Emphasizes concepts, data models, mechanisms, and language aspects concerned with the definition, organization, and manipulation of data at a logical level. Concentrates on relational model, along with introduction to design of relational systems using Entity-relationship modeling. Functional dependencies and normalization of relations. Query languages, relational algebra, Datalog, and SQL. Query processing, logic and databases, physical database tuning. Concurrency control, OLTP, active and rule-based elements. Data Warehousing, OLAP. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5644
Machine Learning with Big Data
Basic principles and techniques for big data analytics, including methods for storing, searching, retrieving, and processing large datasets; introduction to basic machine learning libraries for analyzing large datasets; data visualization; case studies with real-world datasets. Not for graduate credit for degrees for MS and PhD degrees in Computer Science and Applications (CSA); MEng degrees in CSA allowed to receive credit.
Graduate
Lecture, Online Lecture
3
3
CS 5044
CS 5664
Social Media Analytics
Social media platforms, media feeds, and data formats; machine learning and graph theory foundations of social media analytics; Forms of social media analytics - text analytics, network analytics, and action analytics; Forecasting models and applications, including in marketing, event tracking, surveying, and A/B testing. Not for graduate credit for degrees in Computer Science and Applications (CSA).
Graduate
Lecture, Online Lecture
3
3
CS 5644
CS 5704
Software Engineering
Study of the principles and tools applicable to the methodical construction and controlled evolution of complex software systems. All phases of the life cycle are presented; particular attention focuses on the design, testing, and maintenance phases. Introduction to software project management. Attention to measurement models of the software process and product which allow quantitative assessment of cost, reliability, and complexity of software systems.
Graduate
Lecture, Online Lecture
3
3
CS 5044
CS 5714 (ISE 5714)
Usability Engineering
Design and evaluation of effective user interfaces, beginning with principles for designing the product. Development process for user interaction separate from interactive software development. Development process includes iterative life cycle management, systems analysis, design, usability specifications, design representation techniques, prototyping, formative user-based evaluation. Integrative and cross-disciplinary approach with main emphasis on usability methods and the user interaction development process.
Graduate
Lecture, Online Lecture
3
3
CS 5724
Models and Theories of Human-computer Interaction
Survey of models and theories of users and their use of computer equipment; conditions of application for various approaches. Task analysis, task modeling, representations and notations.
Graduate
Lecture, Online Lecture
3
3
CS 5734
Social Computing and Computer-Supported Cooperative Work
Social computing and cooperative work situations. Design implementation, use and analysis of computing systems concerned with multiple users and stakeholders. Analytic practices and application of human behavior theories for social computing. Graduate standing.
Graduate
Lecture, Online Lecture
3
3
CS 5744
Software Design and Quality
This course focuses on critical aspects of the software lifecycle that have significant influence on the overall quality of the software system including techniques and approaches to software design, quantitative measurement and assessment of the system during implementation, testing, and maintenance, and the role of verification and validation in assuring software quality.
Graduate
Lecture, Online Lecture
3
3
CS 5704 (UG) OR CS 5704
CS 5754
Virtual Environments
Introduction to the theory and practice of three-dimensional virtual environments (VEs). 3D input and output devices, applications of VEs, 3D user interfaces and human-computer interaction, 3D graphics techniques for VEs, 3D modeling and level of detail, evaluation of VEs, VE software systems and standards, collaborative and distributed VEs. Includes hands-on experience with VE hardware and software.
Graduate
Lecture, Online Lecture
3
3
CS 5764
Information Visualization
Examine computer-based strategies for interactive visual presentation of information that enable people to explore, discover, and learn from vast quantities of data. Learn to analyze, design, develop, and evaluate new visualizations and tools. Discuss design principles, interaction strategies, information types, and experimental results. Research-oriented course surveys current literature, and group projects contribute to the state of the art. Pre: Graduate standing.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5774
User Interface Software
Survey of software architectures to build user interfaces, particularly focused on graphical user interfaces. Includes the design and implementation of user interfaces, the use of object-oriented application frameworks, software architecture for command undo, document management, layout managers, customized components, and separation of concerns in user interface software architectures. Discussion of research and advanced topics in User Interface Software.
Graduate
1L, Lecture, Online Lecture
3
3
CS 2704 (UG) OR CS 2704
CS 5804
Introduction to Artificial Intelligence
A graduate level overview of the areas of search, knowledge representation, logic and deduction, learning, planning, and artificial intelligence applications. Pre: Graduate standing in the CSA program.
Graduate
Lecture, Online Lecture
3
3
null null
CS 5814
Introduction to Deep Learning
History and basic concepts of artificial neural networks. Activation functions, optimization methods and regularization strategies used in deep multi-layered networks. Network architectures such as convolutional networks and recurrent neural networks. Deep reinforcement learning algorithms including deep Q-learning and policy gradient methods. Deep unsupervised models such as auto-encoders, and deep generative models including variational auto-encoders and generative adversarial networks. Encoder-decoder architectures and their applications in real-world problems such as machine translation, image captioning, visual question answering, and text summarization. Duplicates ECE 6524 (CS 6524).
Graduate
Lecture, Online Lecture
3
3
CS 5525 OR STAT 5525 OR CS 5824 OR ECE 5424
CS 5824 (ECE 5424)
Advanced Machine Learning
Algorithms and principles involved in machine learning; focus on perception problems arising in computer vision, natural language processing and robotics; fundamentals of representing uncertainty, learning from data, supervised learning, ensemble methods, unsupervised learning, structured models, learning theory and reinforcement learning; design and analysis of machine perception systems; design and implementation of a technical project applied to real-world datasets (images, text, robotics). Pre: Graduate Standing.
Graduate
Lecture, Online Lecture
3
3
CS 5834
Introduction to Urban Computing
Computational approaches to address urban challenges; sensor network testbeds; algorithms for storing, processing, and mining data from urban settings; communicating patterns to decision makers; special focus on epidemiology, sustainability, transportation, social science, urban economics; case studies with applications. Pre: Graduate Standing.
Graduate
Lecture, Online Lecture
3
3
CS 5854
Computational Systems Biology
Phenomenological and data-driven models of molecular interaction networks. Applications of graph theory, discrete algorithms, data mining, and machine learning to the modeling and analysis of molecular interaction networks. Biological applications. Interaction between biological and computational disciplines in systems biology. Must have GBCB pre-requisite and CS pre-requisites or graduate standing in CSA or equivalent.
Graduate
Lecture, Online Lecture
3
3
CS 4104 (UG) OR CS 4104 OR CS 5046, GBCB 5314
CS 5894
Final Examination
NONE
Graduate
Lecture, Online Lecture
3
3
CS 5904
Project and Report
NONE
Graduate
Research
1 TO 19
CS 5934
Capstone Project
Design, implementation, and communication of a software system throughout the product lifecycle. Current software product development models. Product ideation, end-user and stakeholder analysis. Product development targeted to market need. Communication of design and goals. Use of appropriate development tools. Pre: Graduate standing in Computer Science.
Graduate
Lecture, Online Lecture
3
3
CS 5944
Graduate Seminar
NONE
Graduate
Lecture, Online Lecture
1
1
CS 5974
Independent Study
NONE
Graduate
Independent Study, VI
1 TO 19
1 TO 19
CS 5984
Special Study
NONE
Graduate
Lecture, Online Lecture
1 TO 19
1 TO 19
CS 5994
Research and Thesis
NONE
Graduate
Research, Online Research
1 TO 19
CS 6104
Advanced Topics in Theory of Computation
This course treats a specific, advanced topic of current research interest in the area of theory of computation. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5104 (UG) OR CS 5114 (UG) OR CS 5104 OR CS 5114
CS 6204
Advanced Topics in Systems
This course treats a specific advanced topic of current research interest in the area of systems. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5204 (UG) OR CS 5214 (UG) OR CS 5204 OR CS 5214
CS 6304
Advanced Topics in Languages and Translation
This course treats a specific advanced topic of current research interest in the area of languages and translation. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5304 (UG) OR CS 5314 (UG) OR CS 5304 OR CS 5314
CS 6404
Advanced Topics in Mathematical Software
This course treats a specific advanced topic of current research interest in the area of mathematical software. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5485 (UG) OR CS 5485
CS 6424
PGMs and Structured Prediction
Advanced concepts in machine learning. Probabilistic graphical models and structured output prediction. Directed models (Bayes Nets), undirected models (Markov/Conditional Random Fields), exact inference (junction tree), approximate inference (belief propagation, dual decomposition), parameter learning (MLE, MAP, EM, max-margin), structure learning.
Graduate
Lecture, Online Lecture
3
3
ECE 5424G OR CS 5824
CS 6444 (ME 6444) (AOE 6444)
Verification and Validation in Scientific Computing
Applicable to scientific and engineering models described by partial differential or integral equations. Software engineering, code verification, and the method of manufactured solutions for generating exact solutions. Estimation of numerical approximation errors in scientific computing. Design and execution of experiments for model validation and model accuracy assessment. Propagation of aleatory and epistemic uncertainty through models. Estimation of total prediction uncertainty in scientific computing simulations. Graduate Standing required
Graduate
Lecture, Online Lecture
3
3
CS 6504
Advanced Topics in Computer Architecture
This course treats a specific advanced topic of current research interest in the area of architecture. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5515 (UG) OR CS 5516 (UG) OR CS 5515 OR CS 5516
CS 6524 (ECE 6524)
Deep Learning
Advanced concepts in Machine Learning and Deep Learning. Models (multi-layer perceptrons, convolutional neural networks, memory networks), learning algorithms (backpropagation, stochastic sub-gradient descent, dropout), connections to structured predictions (Boltzmann machines, unrolled belief propagation), and applications to perception and Artificial Intelligence (AI) problems (image classification, detection, and segmentation; image captioning; visual question answering; automatic game playing).
Graduate
Lecture, Online Lecture
3
3
ECE 5424G OR CS 5824
CS 6564
Multimedia Networking
This course examines and explores recent advances in multimedia networking technologies. Major topics include multimedia compression and standards, quality of service (QoS) support mechanisms and protocols, performance analysis, network calculus, IP multicasting, Internet multimedia applications, and multimedia transport over wireless networks.
Graduate
Lecture, Online Lecture
3
3
CS 5565 (UG) OR CS 5565
CS 6570
Advanced Foundations of Networking
This course covers theoretical foundations that are necessary for advanced study of networking. It focuses on algorithm design and optimization techniques that are most commonly used to solve complex networking problems. Major topics include complexity analysis with applications to networking problems, design and proof of approximation algorithms, design of meta-heuristic algorithms, formulation techniques for network optimization, linear and non-linear optimization techniques with applications to networking, design of distributed algorithms with proof of convergence for networks systems.
Graduate
Lecture, Online Lecture
3
3
CS 5565 (UG) OR ECE 5565 (UG) OR CS 5565 OR ECE 5565
CS 6604
Advanced Topics in Data and Information
This course treats a specific advanced topic of current research interest in the area of data and information. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5604 (UG) OR CS 5614 (UG) OR CS 5604 OR CS 5614
CS 6704
Advanced Topics in Software Engineering
This course treats a specific advanced topic of current research interest in the area of software engineering. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5704 (UG) OR CS 5714 (UG) OR CS 5704 OR CS 5714
CS 6724
Advanced Topics in Human-computer Interaction
Addresses a specific advanced topic of current research interest in the area of human-computer interaction (HCI). Research monographs and papers from the current literature will be used as a source of material too new yet to be in a textbook. Student participation in a seminar-style format. Each offering of this course will address a different subtopic area of HCI. May be repeated for credit.
Graduate
Lecture, Online Lecture
3
3
CS 5714 (UG) OR CS 5724 (UG) OR CS 5734 (UG) OR CS 5714 OR CS 5724 OR CS 5734
CS 6804
Advanced Topics in Intelligent Systems
This course treats a specific advanced topic of current research interest in the area of intelligent systems. Papers from the current literature or research monographs are likely to be used instead of a textbook. Student participation in a seminar style format may be expected. May be repeated with different content for a maximum of nine credit hours.
Graduate
Lecture, Online Lecture
3
3
CS 5804 (UG) OR CS 5814 (UG) OR CS 5804 OR CS 5814
CS 6824
Adv Topics Comp Biol & Bioinf
Addresses a specific advanced topic of current research interest in the area of computational biology and bioinformatics (CBB). Research monographs and papers from the current literature used as a source of material too new to be discussed in a textbook. Student participation in a seminar-style format. Each offering of this course will address a different subtopic area of CBB. May be repeated with different content for a maximum of 12 credit hours. Pre: Graduate standing; other prerequisites may apply.
Graduate
Lecture, Online Lecture
3
3
CS 7994
Research and Dissertation
NONE
Graduate
Research
1 TO 19