University of Connecticut University of UC Title Fallback Connecticut

Special Topics in Computer Science and Engineering

CSE 5095 - Special Topics in Computer Science and Engineering

Classroom courses in special topics as announced in advance for each semester.

More Information »

CSE 5097 - Seminar

Presentation and discussion of advanced computer science problems.Students taking this course will be assigned a final grade of S (satisfactory) or U (unsatistactory.)

More Information »

CSE 5099 - Independent Study in Computer Science and Engineering

Individual exploration of special topics as arranged by the student with an instructor.

More Information »

CSE 5101 - Advanced Software Engineering

An in-depth study of methodologies for the specification, design, implementation, verification, testing, and documentation of large complex software systems. Special attention is given to the impact of programming language constructs on the quality of complex software.

More Information »

CSE 5102 - Advanced Programming Languages

This course covers the theory and pragmatics of modern programming languages. Topics include syntax, semantics, type systems and control mechanisms. Key contributions from Functional and Logic Programming including first-order functions, closures, continuations, non-determinism and unification are studied. Study of declarative and operational semantics of recent entries in the field like Constraint Programming and Aspect Oriented Programming.

More Information »

CSE 5103 - Software Performance Engineering

Study of performance engineering techniques for the development of software systems to meet performance objectives. Software performance principles, hierarchical performance modeling, and current research trends related to Software Performance Engineering. Methods for computer performance evaluation and analysis with emphasis on direct measurement and analytic modeling, including queuing networks, computation structure models, state charts, probabilistic languages, and Petri-nets. Case studies for the evaluation and analysis of software architecture and design alternatives.

More Information »

CSE 5105 - Software Reliability Engineering

State-of-the-art as well as emerging reliability assessment techniques. Topics covered will include reliability modeling paradigms, software reliability growth models, software metrics and reliability, software testing and reliability, and architecture-based reliability assessment. Hands-on experience in the application of these techniques.

More Information »

CSE 5107 - Distributed Component Systems

This course examines the methodologies, techniques, and tools that can be utilized to design, construct, and prototype a distributed application using a combined object- and component-based approach. Topics that are covered include object-oriented modeling, reusable components, software architectures, security, software agents, interoperation techniques, and deployment strategies. The role of emerging technologies in support of these topics will also be considered.

More Information »

CSE 5300 - Advanced Computer Networks

This course covers advanced fundamental principles of computer networks.Topics include network design and optimization, protocol design andimplementation, network algorithms, advanced network architectures, network simulation, performance evaluation, and network measurement.

More Information »

CSE 5302 - Computer Architecture

This course provides an in-depth understanding of the inner workings of modern digital computer systems. Traditional topics on uniprocessor systems such as performance analysis, instruction set architecture, hardware/software pipelining, memory hierarchy design and input-output systems will be discussed. Modern features of parallel computer systems such as memory consistency models, cache coherence protocols, and latency reducing/hiding techniques will also be addressed. Some experimental and commercially available parallel systems willbe presented as case studies.

More Information »

CSE 5303 - Introduction to High-Performance Computing

The course is an introduction to High-Performance Computing (HPC) with programming in SMP and cluster architectures using middleware such as MPI and OpenMP, for science and engineering. The course selects from the following areas: simulation and modeling in engineering and science; relevant issues in sequential algorithm design; performance models; HPC architectures: SMP, vector, distributed and petascale systems; grids and cloud computing; relevant issues in parallel algorithm design; and, parallel programming models, including PVM/MPI and OpenMP. Specific parallel algorithms (linear algebra; graph theory; handling of data structures in parallel) will be explored.

More Information »

CSE 5304 - High-Performance Parallel Computing

Models of parallel computations, fundamental parallel algorithms and applications, scalable parallel/distributed programming paradigms on clusters and grids, performance measures and analysis of parallel computers, data flow/pipelined/multi-threaded/object-oriented processor design in parallel architectures.

More Information »

CSE 5306 - Advanced Operating Systems

Topics in modern operating systems with the focus on distributed computing, communication, and concurrency. Selected topics from current research in the theory, design, implementation, and verification of operating systems.

More Information »

CSE 5309 - Networked Embedded Systems

This course provides an introduction to the design, analysis and implementation of networked embedded systems that interact with the physical environment. Applications of such systems include environmental monitoring, consumer electronics, medical devices, automotive systems, industrial process control, distributed robotics, and smart structures. Topics covered include concepts, technologies and protocols for low-power and resource-restricted wireless networks; models of computation and physical systems; embedded system architectures; and real-time system concepts, theory and design principles.

More Information »

CSE 5500 - Algorithms

Introduction to the design and analysis of algorithms. The course will discuss fundamental design techniques and related issues such as amortized analysis, linear programming, network flow, NP-Completeness, approximation algorithms, randomized algorithms, advanced data structures, and parallel algorithms.

More Information »

CSE 5504 - Probabilistic Methods in Digital Systems

Probabilistic methods used to describe random processes and queuing theory and their application to such areas as computer performance, scheduling algorithms, error correcting codes, and stochastic machines.

More Information »

CSE 5506 - Computational Complexity

The course consists of a systematic study of resource-bounded computation, including time and space complexity, hierarchy theorems, nondeterministic and randomized computation, and reduction and completeness. Advanced topics may be introduced such as relativized computation, derandomization, communication complexity, lower bounds on circuit complexity, and probabilistically checkable proofs.

More Information »

CSE 5510 - Distributed Computing and Fault Tolerance

Topics in the design and analysis of robust distributed algorithms that combine efficiency and fault tolerance. Models of distributed computation and failures. Inherent limitation in achieving fault tolerance in distributed systems. Basic problems considered include communication services, robust cooperation, agreement, consistent distributed memory.

More Information »

CSE 5512 - Introduction to Quantum Computing

This course will provide an introduction to quantum computing, quantum algorithms, and quantum information theory. We begin with a brief discussion of quantum mechanics including elementary aspects of its mathematical formalism. We then describe the quantum circuit model and survey the landscape of quantum complexity theory. Following this introduction, we’ll develop and analyze several fundamental quantum algorithms, focusing on Grover’s algorithm for database search and Shor’s number-theoretic algorithms. The second half of the course covers the density matrix formalism of quantum mechanics, von Neumann entropy, quantum channels, and quantum error-correction. If time permits, some implementations of quantum computers and current progress will be discussed.

More Information »

CSE 5514 - Computational Geometry

This course covers algorithms and data structures for constructing geometric objects, computing geometric properties, and answering geometric queries as well as techniques for the analysis of their correctness and complexity.

More Information »

CSE 5600 - Computer Science and Engineering Research Laboratory

Experimental investigation of current research topics in computer science. May be repeated for credit with a change in content.

More Information »

CSE 5701 - Advanced Database Topics

Data models/languages including entity-relationship, functional, semantic, and object oriented. Database components including the different building blocks of a database system, concurrency, control, recovery, security, access methods, query optimization, and views. Database architectures including database machines, text-database systems, distributed database systems, multimedia systems, and performance metrics and methodologies. Database applications including CAD/CAM and CASE.

More Information »

CSE 5703 - Advanced Computer Graphics

Computer graphics as a tool for effective human-machine communications. Graphical input and output devices and their relation to human perception. Software systems for image generation, display and manipulation. Languages for description of both static and moving pictures. Solutions to visible-surface and related problems. Computer animation. Models and methodologies for the design of interactive systems for various graphics-oriented applications. Experimental projects are required.

More Information »

CSE 5705 - Advanced Artificial Intelligence

Design and implementation of intelligent systems. Topics covered will include automated reasoning, natural language, learning, agents, probabilistic reasoning, and robotics. The course will include a substantial design project, and advanced independent study of at least one of the above topics.

More Information »

CSE 5707 - Discrete Optimization

The course will delve into methods and techniques used to solve combinatorial optimization problems with examples drawn from industry such as scheduling, resource allocation, and routing. The course will feature a mix of theory and practice using state-of-the-art tools to solve classic problems.

More Information »

CSE 5711 - Distributed Database Systems

Architecture of distributed database systems and their major design problems. Topics include efficient data distribution, distributed views, query processing and optimization, and distributed synchronization. Particular attention is paid to the issue of concurrency control and reliability for distributed transaction processing. Backend database processors and database servers for local area networks are also discussed.

More Information »

CSE 5713 - Data Mining

An introduction to data mining algorithms and their analysis. Application of and experimentation with data mining algorithms on real-world problems and domains, with a dual focus on addressing the solution quality issue and the time efficiency issue.

More Information »

CSE 5715 - Semantic Data Models

Conceptual data models, semantic and object-oriented data base systems, formal representation methods for data and knowledge, models of active and passive information.

More Information »

CSE 5717 - Big Data Analytics

This course focuses on data science and big data analytics. We introduce basic concepts of data science and analytics, as well as the different types of data that are commonly encountered in real-world applications. We will introduce the entire pipeline for handling big data problems in real world, including 1) data types, feature representation and engineering, 2) analytics techniques including prediction and clustering, 3) scalability approaches such as sampling, online learning and distributed learning, 4) security and privacy issues, 5) visualization techniques. We will also introduce popular software tools and systems such as Hadoop and Spark for performing data analytics.

More Information »

CSE 5800 - Bioinformatics

Advanced mathematical models and computational techniques in bioinformatics. Topics covered include genome mapping and sequencing, sequence alignment, database search, gene prediction, genome rearrangements, phylogenetic trees, and computational proteomics.

More Information »

CSE 5810 - Introduction to Biomedical Informatics

Introduction to biomedical informatics theory and practice with an emphasis on data management for information classification (ontologies), collection, storage, analysis, dissemination, etc., applied to medical, clinical, and public health domains. Topics include: software architectures, security and privacy, interoperabilty and data exchange, standards and the semantic web, health care systems, clinical decision support, data mining, health care systems, monitoring and sensor devices, and cloud/grid computing.

More Information »

CSE 5815 - Systems Biology: Constructing Biological Knowledgebase

Design and architecture of biological knowledge base. Topics covered include biological/biomedical data modeling, knowledge representation techniques of biological and biomedical information, review of existing inference methods, methods of assessing evidence quality, design of inference-enabling genomics annotation system, various meta-data analysis methods involving genomics and biomedical data.

More Information »

CSE 5820 - Machine Learning

The objective of the course is to enable students to understand and use machine learning methods across a wide range of settings. The course will be a mixture of theory, algorithms, and hands-on projects with real data. Besides traditional machine learning topics, e.g., supervised learning, unsupervised learning and semi-supervised learning, the course will also introduce advanced topics such as dimension reduction; structured data learning; kernel learning; imprecisely supervised learning; longitudinal data analysis; causal inference, etc.

More Information »

CSE 5840 - String Algorithms and Applications in Bioinformatics

Classic string matching algorithms (e.g. Knuth-Morris-Pratt, Karp-Rabin, suffix tree and arrays) and more advanced string algorithms (e.g. Burrows-Wheeler transform). With a particular focus on rigorous treatment of string processing algorithms and their analysis. Applications of string algorithms to bioinformatics problems. Students are expected to have basic prior knowledge of algorithm design and analysis.

More Information »

CSE 5850 - Information and Data Security

Introduction to computer security and the design of secure systems. Security and threat modeling. Entity authentication and privacy, data integrity and confidentiality. Crypto-graphic tools: symmetric and asymmetric encryption, digital signatures, message authentication codes, hash functions. Security at the operating system level, access control, security enforcement, memory protec-tion. Network security, firewalls, internet worms and viruses, intrusion detection. Digital rights management, software security, program obfuscation, implementation flaws, buffer overflow attacks. Case studies in topical areas.

More Information »

CSE 5852 - Modern Cryptography: Foundations

This course covers the foundations of modern cryptography introducing basic topics such as one-way functions, pseudorandom generators, and computational hardness assumptions based on number theory. The course will cover fundamental cryptographic constructions such as hard-core predicates, secure symmetric encryption and message-authentication codes, and public-key cryptography.

More Information »

CSE 5854 - Modern Cryptography: Primitives and Protocols

This course covers modern cryptography emphasizing provable security and concrete constructions based on the hardness of specific computational problems. After surveying some basic cryptographic primitives and associated number-theoretic constructions, the course focuses on public-key infrastructure and protocols: it will cover such topics as digital signatures, identification and key-exchange schemes, distributed key generation, blind signatures, zero-knowledge proofs, and private function computation.

More Information »

CSE 5860 - Computational Problems in Evolutionary Genomics

Computational and algorithmic approaches for problems arising in evolutionary genomics. Topics may include phylogenetic trees inference, population evolutionary models and theory, understanding complex evolutionary processes and other related topics. Both combinatorial optimization and stochastic approaches will be covered.

More Information »

CSE 5870 - Advanced Course on Reliability of Distributed Systems

This course is focused on reliability and troubleshooting aspects of distributed systems. Topics may include cloud computing, sensor fusion systems, data center applications, system configuration management, energy aware systems, storage systems, and mobile computing systems, along with fundamental concepts of distributed systems. Students are expected to work on projects with the goal of addressing challenging research problems in distributed systems.

More Information »

CSE 6300 - Research Topics in Computer Networks

Current research issues in the Internet, wireless and mobile networks, aswell as emerging concepts such as sensor networks. Overview of the fundamental design principles underlying these networks. Discussion and exploration of the advanced research topics in these and other areas.

More Information »

CSE 6504 - Linear Algebraic Queueing Theory

Brief survey of Markov Chains, and their application to simple queues, with some emphasis on their transient behavior. Matrix operators are then introduced to represent the behavior of non-exponential servers. This algebraic structure is applied to the steady-state and non steady-state behavior of both open and closed M/G/1 queues. Then G/M/1 queues are examined in detail. As time permits additional advanced topics will be covered. Applications to computer and telecommunications system performance modeling will be studied.

More Information »

CSE 6512 - Randomization in Computing

Introduction to the theory and practice of randomization and randomized algorithms as a technique for science and engineering problem solving. Topics to be covered include: probability theory, types of randomization, sorting and selection, hashing and skip list, finger-printing, packet routing, geometry and linear programming, graph algorithms, combinatorial optimization, and external memory algorithms.

More Information »

CSE 6514 - Computational Topology

Topology has traditionally generalized concepts of real analysis to metric spaces and set axioms. The new field of computational topology has great potential for encompassing abstractions to unify domain-specific techniques now used in computational geometry, geometric modeling, visualization, image processing, engineering analyses and molecular simulation. The course will include perspectives from traditional topology and show how these need to be modified for realistic use in modern computing environments. Topics and emphases will vary.

More Information »

CSE 6705 - Natural Language Processing

An artificial-intelligence approach to computational linguistics. Representation of meaning and knowledge in computer-usable form. Understanding and generation of natural-language sentences and text. Theories of inference and application of world knowledge. Organization of large knowledge-based text-processing systems for applications in summary and paraphrase, question-answering, machine translation, conversation and computer-aided instruction. “Real” text-processing systems are demonstrated, and a term project is required.

More Information »

CSE 6800 - Computational Genomics

Advanced computational methods for genomic data analysis. Topics coveredinclude motif finding, gene expression analysis, regulatory network inference, comparative genomics, genomic sequence variation and linkage analysis

More Information »