Skip To Nav
Computer Science

Site-specific menu



LinkedIn Facebook
Stay Connected

Department of Computer Science

Upper Level Computer Science Courses

 

CS 6030

Studies in Computer Science 3 hrs.

Advanced work organized around a special topic in computer science. The focus of this course can change from one offering to the next and students may take this course more than once.


CS 6250

Advanced Computer Architecture 3 hrs.

Multiprocessor architectures, various interconnection networks, communication and synchronization techniques, and data flow architectures.


CS 6260

Parallel Computations II 3 hrs.

This course will focus on advanced topics in parallel computations such as algorithms in the areas of graph algorithms, numerical algorithms, computer graphics, and VLSI design; and on aspects of operating systems and languages. Students will be expected to read research papers and complete a semester project involving the use and implementation of parallel programming paradigms on current machines.


CS 6270

Computer Graphics II 3 hrs.

A course in advanced computer graphics topics selected from current research. Some of the areas of interest include: visualization of complex processes, full motion video, virtual reality, client/server protocols, and parallel image rendering. Emphasis is on research and students are expected to participate in a research project with a faculty member during the course.


CS 6280

Parallel Scientific Computations 3 hrs.

This course will focus on the design and analysis of parallel numerical algorithms to solve problems such as singular value decomposition and the solution of linear systems for structured, banded, and sparse matrices; partial differential equations; and multivariate numerical integration. Applications may include the solution of wave equations, hydrodynamic flow, particle dynamics, finite element applications, and Monte Carlo methods.


CS 6310

Advanced Data Structures 3 hrs.

Stresses the representation and implementation of various data structures. The effect of data structures on program complexity is investigated. The uses of data structures in a variety of application areas are covered. Introduces complex data structures.


CS 6320

Analysis of Computer Algorithms 3 hrs.

Computing time and space requirements of algorithms are analyzed with emphasis given to the effect of data structure choice on program complexity. Various abstract models of computation are considered. Methods for proving program correctness and the related problems are identified. Students implement a number of algorithms on a computer and discuss aspects of the complexity of correctness of their programs.


CS 6330

Computational Geometry 3 hrs.

Design and analysis of algorithms for computational geometry problems and discussion of applications in databases, computer graphics and VLSI design. Specific topics may include geometric formulation, geometric searching, point location, multidimensional


CS 6340

Combinatorial Optimization 3 hrs.

This course will treat the foundations of mathematical programming and analyze the computational complexity of algorithms in this area. Topics may include: linear programming, algorithms for max-flow, min-cost, shortest path problems, weighted matching, integer and 0/1 linear programming, nonlinear programming techniques, approximation algorithms, branch-and-bound and dynamic programming methods for 0/1 programming, and properties of local search.


CS 6430

Advanced Database Management Systems 3 hrs.

This course is an in-depth study of database management systems with concentration on efficient design and usage. Topics covered include: the design of models, the theory of relational databases, query optimization, recently developed protocols to guarantee consistency of databases, the design of physical models, and performance analysis techniques. Algorithms and data structures such as B-trees, transposed files, phantom files, and hybrid structures are also studied. Distributed databases, database machines, and current query languages will be covered.


CS 6550

Advanced Operating Systems 3 hrs.

Advanced and current topics in operating systems research will be discussed. Analysis of competing techniques will be undertaken to present a better understanding of tradeoffs in design decisions. Modeling and performance evaluation will also be presented. A detailed and theoretical view of the basic operating system concepts will be emphasized. Programming assignments involving simulation and performance evaluation will be required.


CS 6600

Software Engineering I: Formal Specifications of S 3 hrs.

Students will be introduced to various models of software life cycles. The remainder of the course will focus on formal methods for specifying requirements and design. Students will be introduced to a number of formal systems using axiomatic specification, abstract models (e.g., VDM), set theoretic systems (e.g., Z), predicate logic systems (e.g., Larch), and specification based on programming languages such as Alphard, CLU, and Ada. Also discussed will be formal specification of real-time systems using petri nets, PAISLEY, CSP, SF, and others. Examples and exercises illustrating the use of several formal systems will be given. Student teams will be expected to complete the specification of requirements and design of a project using one of the methods presented.


CS 6610

Software Engineering II: Verification and Validation of Software Systems 3 hrs.

Students will become familiar with the terminology and will learn the limitations of verification and validation (V and V) approaches. Five approaches will be presented: technical reviews, testing, proofs of correctness, simulation and prototyping, and requirements tracing. Students will define a V and V plan and carry it out for several stages in the development cycle of a project.


CS 6720

Pattern Recognition 3 hrs.

A survey of modern methods for computer recognition of patterns in varied applications such as digital images, human speech and sound, and grammar-based sequences. Various approaches are developed, including heuristic search, Fourier analysis, markov models, template matching, and grammatical inference. Computational aspects and efficiency of different methods and algorithms are emphasized. Students must complete a project using methods developed in the course.


CS 6790

Theory of Computation II 3 hrs.

Recursive, partial recursive and primitive recursive functions, properties of recursive and recursively enumerable index sets, decidability, turing computability, and reducibility are treated in depth, while certain problems are proved to be unsolvable. Concepts from computational complexity, including relationships between complexity classes, are covered.


CS 6800

Mathematical Theory of Formal Languages 3 hrs.

Definition of grammars and languages, recursive and recursively enumerable sets, decidability, and the chomsky hierarchy of languages and their relation to models of automata.


CS 6810

Compiling Theory and Practice 3 hrs.

A study of theoretical and applied strategies for designing compilers and other types of language translation systems. Students will be assigned a programming project on compiling.


CS 6820

Advanced Artificial Intelligence 3 hrs.

This advanced AI course examines current research in one or more artificial intelligence application areas, e.g., computer vision and image processing, natural language and speech processing, expert systems, computer learning, or other AI topics.


CS 6850

Foundations of System Specification 3 hrs.

Semi-formal and formal specification of abstract and real-life systems, with emphasis on computer software and hardware systems and using the State-System Specification Language. State and behavior modeling approaches and specification design philosophy. Theoretical foundations with practical application examples. Implications for validation, implementation, and testing. Alternative modeling techniques.


CS 6910

Seminar in Computer Science 1-3 hrs.

No description available.

CS 6970

Masters Project 2-6 hrs.

Student(s) will work on a special project in the computer science area. A technical report on the results of each student’s project must be approved by the course instructor and published as a departmental technical report. This course is offered credit/no-credit. Credit cannot be used for both CS 697 and CS 700 in a student’s master’s program. Prerequisite: graduate level competency in computer science and the subject area of the project. Approval of the instructor and the department is required.


CS 6990

Research Seminar 1-3 hrs.
No description available.

CS 7000

Master’s Thesis 1-3 hrs.

Note: Credit cannot be used for both CS 6970 and CS 7000 in a master’s program.


CS 7100

Independent Research 2-6 hrs.
No description available.

CS 7250

Doctoral Research Seminar 2-6 hrs.
No description available.

CS 7300

Doctoral Dissertation 12-24 hrs.
No description available.

CS 7350

Doctoral Dissertation 2-10 hrs.
No description available.