CSCE810
Information Retrieval SystemsCrosslisted with CSCE 410

Prerequisites: CSCE 310, SOFT 260, or CSCE 311

Description: Outline of the general information retrieval problem, functional overview of information retrieval. Deterministic models of information retrieval systems; conventional Boolean, fuzzy set theory, p-norm, and vector space models. Probabilistic models. Text analysis and automatic indexing. Automatic query formulation. System-user adaptation and learning mechanisms. Intelligent information retrieval. Retrieval evaluation. Review of new theories and future directions. Practical experience with a working experimental information retrieval system.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE811
Data Modeling for Systems DevelopmentCrosslisted with CSCE 411

Prerequisites: CSCE 310, CSCE 310H, or CSCE 311

Description: Concepts of relational and object-oriented data modeling through the process of data model development including conceptual, logical and physical modeling. Techniques for identifying and creating relationships between discrete data members, reasoning about how data modeling and analysis are incorporated in system design and development, and specification paradigms for data models. Common tools and technologies for engineering systems and frameworks for integrating data. Design and analysis of algorithms and techniques for identification and exploration of data relationships, such as Bayesian probability and statistics, clustering, map-reduce, and web-based visualization.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE812
Data VisualizationCrosslisted with CSCE 412

Description: Fundamentals and implementations of data visualization techniques. Programming skills and practices in interactive visualization applications. Visualization foundations, human perception for information processing, and visualization techniques for different data types, such as scalar-field data, vector-field data, geospatial data, multivariate data, graph/network data, and text/document data. Advanced visualization algorithms and topics as time permits.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC
Offered:FALL/SPR

Credit Hours:3

ACE:

CSCE813
Database SystemsCrosslisted with CSCE 413

Prerequisites: SOFT 260, CSCE 310, CSCE 310H, or CSCE 311

Description: Data and storage models for database systems; entity/relationship, relational, and constraint models; relational databases; relational algebra and calculus; structured query language; Logical database design: normalization; integrity; distributed data storage; concurrency; security issues. Spatial databases and geographic information systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE821
Foundations of Constraint ProcessingCrosslisted with CSCE 421

Prerequisites: CSCE 235; CSCE 310 or CSCE 311.

Description: Constraint processing for articulating and solving industrial problems such as design, scheduling, and resource allocation. The foundations of constraint satisfaction, its basic mechanisms (e.g., search, backtracking, and consistency-checking algorithms), and constraint programming languages. New directions in the field, such as strategies for decomposition and for symmetry identification.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE823
Design and Analysis of AlgorithmsCrosslisted with CSCE 423

Prerequisites: CSCE 235; CSCE 310 or CSCE 311.

Description: Mathematical preliminaries. Strategies for algorithm design, including divide-and-conquer, greedy, dynamic programming and backtracking. Mathematical analysis of algorithms. Introduction to NP-Completeness theory, including the classes P and NP, polynomial transformations and NP-complete problems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE824
Computational Complexity TheoryCrosslisted with CSCE 424

Prerequisites: CSCE 235; CSCE 310 or CSCE 311.

Description: Turing machine model of computation: deterministic, nondeterministic, alternating, probabilistic. Complexity classes: Time and space bounded, deterministic, nondeterministic, probabilistic. Reductions and completeness. Complexity of counting problems. Non-uniformity. Lower bounds. Interactive proofs.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE825
Compiler ConstructionCrosslisted with CSCE 425

Prerequisites: CSCE 235; CSCE 310 or CSCE 311.

Description: Review of program language structures, translation, loading, execution, and storage allocation. Compilation of simple expressions and statements. Organization of a compiler including compile-time and run-time symbol tables, lexical scan, syntax scan, object code generation, error diagnostics, object code optimization techniques, and overall design.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE828
Automata, Computation, and Formal LanguagesCrosslisted with CSCE 428

Prerequisites: CSCE 235; CSCE 310 or CSCE 311.

Description: Introduction to the classical theory of computer science. Finite state automata and regular languages, minimization of automata. Context free languages and pushdown automata, Turing machines and other models of computation, undecidable problems, introduction to computational complexity.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE830
Computer ArchitectureCrosslisted with CSCE 430

Prerequisites: CSCE 230; CSCE 310 or CSCE 311; Prereq or Coreq: MATH/STAT 380 or ELEC 305.

Description: Architecture of single-processor (Von Neumann or SISD) computer systems. Evolution, design, implementation, and evaluation of state-of-the-art systems. Memory Systems, including interleaving, hierarchies, virtual memory and cache implementations; Communications and I/O, including bus architectures, arbitration, I/O processors and DMA channels; and Central Processor Architectures, including RISC and Stack machines, high-speed arithmetic, fetch/execute overlap, and parallelism in a single-processor system.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE832
High-Performance Processor ArchitecturesCrosslisted with CSCE 432

Prerequisites: CSCE 430; MATH 314; MATH/STAT 380 or ELEC 305.

CSCE 432 assumes knowledge of computer architecture, pipelining, memory hierarchy, instruction level parallelism, and compiler principles.

Description: High performance computing at the processor level. The underlying principles and micro-architectures of contemporary high-performance processors and systems. State-of the-art architectural approaches to exploiting instruction level parallelism for performance enhancements. Case studies of actual systems highlight real-world trade-offs and theories.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE834
VLSI DesignCrosslisted with CSCE 434

Prerequisites: CSCE 335 or permission.

Description: Introduction to VLSI design using metal-oxide semiconductor (MOS) devices primarily aimed at computer science majors with little or no background in the physics or circuitry of such devices. Includes design of nMOS and CMOS logic, data-path, control unit, and highly concurrent systems as well as topics in design automation.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE835
Cluster and Grid ComputingCrosslisted with CSCE 435

Prerequisites: CSCE 310 or CSCE 311 or equivalent programming experience.

Description: Build and program clusters. Cluster construction, cluster administration, cluster programming, and grid computing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE836
Advanced Embedded SystemsCrosslisted with CSCE 436

Prerequisites: CSCE 236; CSCE 310, CSCE 311, or equivalent; senior/graduate standing.

Description: Embedded hardware design techniques; transceiver design and low-power communication techniques; sensors and distributed sampling techniques; embedded software design and embedded operating systems; driver development; embedded debugging techniques;hardware and software architectures of embedded systems; and design, development, and implementation of embedded applications.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE837
File and Storage SystemsCrosslisted with CSCE 437

Prerequisites: CSCE 351 or 451/851; CSCE 430/830.

Description: System-level and device-level topics in the design, implementation, and use of file and storage systems. Components and organization of storage systems, disk drive hardware and firmware, multi-disk systems, RAID's, local distributed and P2P file systems, and low-power design.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE838
Sensor NetworksCrosslisted with CSCE 438

Prerequisites: CSCE 230; SOFT 260, CSCE 310, CSCE 310H, CSCE 311 or equivalent; graduate standing or instructor permission.

Description: Basics of sensor networks; theoretical and practical insight into wireless sensor networks, including low-power hardware and wireless communication principles; networking in wireless sensor networks; and applications of sensor networks, such as multimedia, underwater, and underground. A group project that provides hands-on interaction with a wireless sensor network testbed.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE839
Robotics: Algorithms and ApplicationsCrosslisted with CSCE 439

Description: Fundamental theory and algorithms for real world robot systems. Design and build a robot platform and implement algorithms in C++ or other high level languages. Topics include: open and closed loop control, reactive control, localization, navigation, path planning, obstacle avoidance, dynamics, kinematics, manipulation and grasping, sensing, robot vision processing, and data fusion.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE840
Numerical Analysis ICrosslisted with CSCE 440, MATH 440, MATH 840

Prerequisites: CSCE 155A, CSCE 155E, CSCE 155H, CSCE 155N, or CSCE 155T; Math 107.

Credit toward the degree may be earned in only one of the following: CSCE/MATH 440/840 and MECH 480/880.

Description: Principles of numerical computing and error analysis covering numerical error, root finding, systems of equations, interpolation, numerical differentiation and integration, and differential equations. Modeling real-world engineering problems on digital computers. Effects of floating point arithmetic.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE841
Approximation of FunctionsCrosslisted with CSCE 441, MATH 441, MATH 841

Prerequisites: CSCE 841

Description: Polynomial interpolation, uniform approximation, orthogonal polynomials, least-first-power approximation, polynomial and spline interpolation, approximation and interpolation by rational functions.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC
Groups:Advanced Mathematics Courses

Credit Hours:3

ACE:

CSCE847
Numerical Linear AlgebraCrosslisted with CSCE 447, MATH 447, MATH 847

Prerequisites: MATH 314

Description: Mathematics and algorithms for numerically stable matrix and linear algebra computations, including solution of linear systems, computation of eigenvalues and eigenvectors, singular value decomposition, and QR decomposition.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC
Groups:Advanced Mathematics Courses

Credit Hours:3

ACE:

CSCE851
Operating Systems PrinciplesCrosslisted with CSCE 451

Prerequisites: CSCE 230; CSCE 310 or CSCE 311.

Description: Organization and structure of operating systems. Control, communication, and synchronization of concurrent processes. Processor and job scheduling. Memory organization and management including paging, segmentation, and virtual memory. Resource management. Deadlock avoidance, detection, recovery. File system concepts and structure. Protection and security. Substantial programming.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE855
Distributed Operating SystemsCrosslisted with CSCE 455

Prerequisites: CSCE 451/851.

Description: Organization and structure of distributed operating systems. Control, communication and synchronization of concurrent processes in the context of distributed systems. Processor allocation and scheduling. Deadlock avoidance, detection, recovery in distributed systems. Fault tolerance. Distributed file system concepts and structure.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE856
Parallel ProgrammingCrosslisted with CSCE 456

Prerequisites: CSCE 310 or CSCE 311 or equivalent programming experience.

Description: Introduction to the fundamentals of parallel computation and applied algorithm design. Methods and models of modern parallel computation; general techniques for designing efficient parallel algorithms for distributed and shared memory multiprocessor machines; principles and practice in programming an existing parallel machine.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE857
Systems AdministrationCrosslisted with CSCE 457

Prerequisites: CSCE 310 or CSCE 311 or equivalent programming experience.

Description: Introduction to basic concepts of system administration. Operating systems and networking overview. User and resource management. Networking, systems and internet related security. System services and common applications, web services, database services, and mail servers. Basic scripting in shell, Perl, and Expect. Systems administration on UNIX® platform.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE861
Advanced Topics in Software EngineeringCrosslisted with CSCE 461, SOFT 461

Prerequisites: CSCE 361, CSCE 361H or SOFT 261.

Description: Advanced or emerging techniques in software engineering. Topics include but not limited to design methodology, software dependability, and advanced software development environments.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE862
Communication NetworksCrosslisted with CSCE 462

Prerequisites: CSCE 230; CSCE 310 or CSCE 311; MATH/STAT 380 or ELEC 305.

Description: Introduction to the architecture of communication networks and the rudiments of performance modeling. Circuit switching, packet switching, hybrid switching, protocols, local and metro area networks, wide area networks and the Internet, elements of performance modeling, and network programming. Network security, asynchronous transfer mode (ATM), optical, wireless, cellular, and satellite networks, and their performance studies.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE863
Data and Network SecurityCrosslisted with CSCE 463

Prerequisites: CSCE310, CSCE310H, or CSCE311

Description: Concepts and principles of data and network security. Focuses on practical aspects and application of crypto systems in security protocols for networks such as the Internet. Topics include: applications of cryptography and cryptosystems for digital signatures, authentication, network security protocols for wired and wireless networks, cyberattacks and countermeasures, and security in modern computing platforms.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE864
Internet Systems and ProgrammingCrosslisted with CSCE 464

Prerequisites: CSCE 156, CSCE 311, or CSCE 320 or equivalent programming experience.

Description: Paradigms, systems, and languages for Internet applications. Client-side and server-side programming, object-based and event-based distributed programming, and multi-tier applications. Coverage of specific technologies varies.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE865
Wireless Communication NetworksCrosslisted with CSCE 465

Prerequisites: CSCE 230; CSCE 310 or CSCE 311; MATH/STAT 380 or ELEC 305; or instructor permission

Description: Discussion of theoretical and practical insight to wireless communications and wireless networking, current practices, and future trends. Wireless network architectures, mobility management, radio propagation, modulation, power control, antennas, channel access, pricing, and standards.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE866
Software Design and ArchitectureCrosslisted with SOFT 466, CSCE 466

Prerequisites: SOFT 261 or CSCE 361 or equivalent.

Letter grade only.

Description: Introduction to the concepts, principles, and state-of-the-art methods in software design and architecture. Topics include application of software engineering process models and management approaches for the design and architecture of large-scale software systems, trade-offs of designing for qualities such as performance, security, and dependability, and techniques and tools for analyzing and evaluating software architectures.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE867
Testing, Verification and AnalysisCrosslisted with SOFT 467, CSCE 467

Prerequisites: SOFT 261 or CSCE 361 or equivalent.

Letter grade only.

Description: In-depth coverage of problems related to software quality, and approaches for addressing them. Topics include testing techniques, dynamic and static program analysis techniques, and other approaches for verifying software qualities. Tool support for performing testing, verification, and analysis will also be studied.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE868
Requirements Elicitation, Modeling and AnalysisCrosslisted with SOFT 468, CSCE 468

Prerequisites: SOFT 261 or CSCE 361 or equivalent.

Letter grade only.

Description: In-depth coverage of processes, methods and techniques for determining, or deciding, what a proposed software system should do. Topics include the requirements engineering process, identification of stakeholders, requirements elicitation techniques, methods for informal and formal requirements documentation, techniques for analyzing requirements models for consistency and completeness, and traceability of requirements across system development and evolution. Tool support for modeling functional and non-functional requirements to support elicitation and analysis will be studied.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE870
Computer GraphicsCrosslisted with CSCE 470

Prerequisites: CSCE 310 or CSCE 311; MATH 314.

Description: Display and recording devices; incremental plotters; point, vector, and character generation; grey scale displays, digitizers and scanners, digital image storage; interactive and passive graphics; pattern recognition; data structures and graphics software; the mathematics of three dimensions; homogeneous coordinates; projections and the hidden-line problem.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE871
Introduction to BioinformaticsCrosslisted with CSCE 471

Prerequisites: CSCE 310 or CSCE 311; MATH/STAT 380.

Description: Fundamentals and trends in bioinformatics. Scoring matrices and pairwise sequence alignments via dynamic programming, BLAST, and other heuristics. Multiple sequence alignments. Applications of machine learning methods such as hidden Markov models and support vector machines to biological problems such as family modeling and phylogeny.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE872
Digital Image ProcessingCrosslisted with CSCE 472

Prerequisites: CSCE 156 or CSCE 311 or equivalent programming experience.

Description: Digital imaging systems, digital image processing, and low-level computer vision. Data structures, algorithms, and system analysis and modeling. Digital image formation and presentation, image statistics and descriptions, operations and transforms, and system simulation. Applications include system design, restoration and enhancement, reconstruction and geometric manipulation, compression, and low-level analysis for computer vision.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE873
Computer VisionCrosslisted with CSCE 473

Prerequisites: CSCE 156 or CSCE 311 or equivalent programming experience.

Description: High-level processing for image understanding and high-level vision. Data structures, algorithms, and modeling. Low-level representation, basic pattern-recognition and image-analysis techniques, segmentation, color, texture and motion analysis, and representation of 2-D and 3-D shape. Applications for content-based image retrieval, digital libraries, and interpretation of satellite imagery.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE874
Introduction to Data MiningCrosslisted with CSCE 474

Prerequisites: CSCE 310 or CSCE 311; MATH/STAT 380.

Description: Data mining and knowledge discovery methods and their application to real-world problems. Algorithmic and systems issues. Statistical foundations, association discovery, classification, prediction, clustering, spatial data mining and advanced techniques.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE875
Multiagent SystemsCrosslisted with CSCE 475

Prerequisites: CSCE 156 or CSCE 311.

Description: Distributed problem solving and planning, search algorithms for agents, distributed rational decision making, learning multiagent systems, computational organization theory, formal methods in Distributed Artificial Intelligence, multiagent negotiations, emergent behaviors (such as ants and swarms), and Robocup technologies and real-time coalition formation.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE876
Introduction to Artificial IntelligenceCrosslisted with CSCE 476

Prerequisites: CSCE 310 or CSCE 311.

Description: Introduction to basic principles, techniques, and tools now being used in the area of machine intelligence. Languages for AI programming introduced with emphasis on LISP. Lecture topics include problem solving, search, game playing, knowledge representation, expert systems, and applications.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE877
Cryptography and Computer SecurityCrosslisted with CSCE 477

Prerequisites: CSCE 310 or CSCE 311; MATH 314.

Description: Introductory course on cryptography and computer security. Topics: classical cryptography (substitution, Vigenere, Hill and permutation ciphers, and the one-time pad); Block ciphers and stream ciphers; The Data Encryption Standard; Public-key cryptography, including RSA and El-Gamal systems; Signature schemes, including the Digital Signature Standard; Key exchange, key management and identification protocols.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE878
Introduction to Machine LearningCrosslisted with CSCE 478

Prerequisites: CSCE 310 or CSCE 311.

Description: Introduction to the fundamentals and current trends in machine learning. Possible applications for game playing, text categorization, speech recognition, automatic system control, date mining, computational biology, and robotics. Theoretical and empirical analyses of decision trees, artificial neural networks, Bayesian classifiers, genetic algorithms, instance-based classifiers and reinforcement learning.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE879
Introduction to Neural NetworksCrosslisted with CSCE 479

Prerequisites: CSCE 310 or CSCE 311.

Description: Introduction to the concepts, design and application of connection-based computing begins by simulating neural networks, focusing on competing alternative network architectures, including sparse distributed memories, Hopfield networks, and the multilayered feed-forward systems. Construction and improvement of algorithms used for training of neural networks addressed to reduce training time and improve generalization. Algorithms for training and synthesizing effective networks implemented in high level language programs running on conventional computers. Emphasis on methods for synthesizing and simplifying network architectures for improved generalization. Application areas include: pattern recognition, computer vision, robotics medical diagnosis, weather and economic forecasting.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE890
Special Topics in Computer ScienceCrosslisted with CSCE 490

Prerequisites: Permission.

CSCE 490/890 will not count toward a major or minor in Computer Science and Computer Engineering. Topics vary.

Description: Aspects of computers and computing for non-Computer Science and Computer Engineering majors and/or minors.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:6
Course Format:LEC

Credit Hours:1-3

ACE:

CSCE891
Internship in Computer Practice

Description: Experiential learning in conjunction with an approved industrial or governmental agency under the joint supervision of an outside sponsor and a faculty member. A detailed project proposal must be prepared by the student and approved by the department prior to the start of the project. A final report must be submitted.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:6
Course Format:FLD

Credit Hours:1-3

ACE:

CSCE896
Special Topics in Computer ScienceCrosslisted with CSCE 496

Prerequisites: Senior or graduate standing.

Description: Aspects of computers and computing not covered elsewhere in the curriculum presented as the need arises.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:6
Course Format:LEC

Credit Hours:1-3

ACE:

CSCE897
Masters Project

Prerequisites: Permission of adviser

Designed for students pursuing a non-thesis option (Option III) to work on a project under the supervision of a member of the computer science and engineering faculty.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Course Format:IND

Credit Hours:1-6

ACE:

CSCE898
Computer ProblemsCrosslisted with CSCE 498

Prerequisites: Senior or graduate standing.

Description: Independent project executed under the guidance of a member of the faculty of the Department of Computer Science. Solution and documentation of a computer problem demanding a thorough knowledge of either the numerical or nonnumerical aspects of computer science.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Course Format:IND

Credit Hours:1-6

ACE:

CSCE899
Masters Thesis

Prerequisites: Admission to masters degree program and permission of major adviser

Course details
Credit Hours:1-10
Max credits per semester:10
Max credits per degree:99
Course Format:IND

Credit Hours:1-10

ACE:

CSCE910
Information Organization and Retrieval

Prerequisites: CSCE 810

Description: Aspects of natural language processing on digital computers. Analysis of information content by statistical, syntactic, and logical methods. Search and matching techniques. Automatic retrieval systems, question-answering systems. Evaluation of retrieval effectiveness.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE913
Advanced Topics in Database Systems

Prerequisites: CSCE 813

Description: Database system topics, coverage varying from year to year. Examples: Normalization theory; statistical databases; distributed databases; failure recovery; implementation issues. Readings in the current literature.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE914
Constraint Database Systems

Prerequisites: CSCE 813 or 913 and permission

Description: Introduction to constraint database systems. Constraint data model, constraint query languages, query optimization and evaluation, constraint data storage and applications. Assignments in both use and the implementation of systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE921
Advanced Constraint Processing

Prerequisites: CSCE421/821 or instructor permission

Description: A continuation of the course on Foundations of Constraint Processing (CSCE 421/821). Intended for students with some sophistication and considerable interest in exploring methods for designing and using algorithms useful for solving combinatorial problems. The goal of the course is to study, analyze and critique seminal and recent research papers. Projects are optional.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE923
Development and Analysis of Efficient Algorithms

Prerequisites: CSCE 423/823 or permission

Description: Analysis of performance of algorithms on random access machines and Turing machines, data structures for design of efficient algorithms, sorting algorithms, divide and conquer strategies, algorithms on graphs and their performance bounds, pattern matching algorithms, achievable lower bounds on complexity, NP complete problems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE924
Graph Algorithms

Prerequisites: CSCE 423/823 or permission

Description: Review concepts related to analysis of algorithms and graph theory. Classical graph theoretic algorithms including Eulerian paths, Hamiltonian circuits, shortest paths, network flows and traveling salesman. Planar graph algorithms. Theory of alternating chains and algorithms for graph matching problems. Approximate and parallel algorithms. Applications of graph algorithms to engineering and physical sciences.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE925
Scheduling Theory

Prerequisites: Permission

Description: Scheduling theory with particular emphasis to its application in computer science. Polynomial-time algorithms, NP-hardness proofs and analysis of heuristics. Minimization of makespan and mean flow time. Real-Time scheduling.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE930
Advanced Computer Architecture

Prerequisites: CSCE 830

Description: Recent advances in computer architecture including the effects of VLSI and methods of improving performance. Parallelism, pipelining, vector and array processors, multiprocessors and distributed processors, and data-flow architectures.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE932
Fault-Tolerance: Testing and Testable Design

Prerequisites: CSCE 834 or permission

Description: Increasing density of microelectronic circuits makes them harder to test during production and field operation. Theory and techniques developed to solve this problem. Faults and fault modeling; algorithms for test generation and fault simulation; built-in-self-test methods and standards; design for testability; and self-checking circuits.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE933
Fault-Tolerance: System Design and Analysis

Prerequisites: CSCE 830 or permission

Description: Theory and practice of creating extremely dependable digital systems through online fault-tolerance. Emphasizes modular redundancy in hardware and software to permit detection, masking, and removal of faulty components. Case studies from aerospace, banking, and other disciplines. Fault classification, error detection and diagnosis, dependability metrics, Byzantine Agreement, design trade-offs, and system simulation and modeling (esp. Markov).

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE936
Cyber-Physical Systems

Description: Introduction to the research, design, and analysis of cyber-physical systems - the tight integration of computing, control, and communication. Applications for CPS research are far reaching and span medical devices, smart buildings, vehicle systems, and mobile computing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE942
Numerical Analysis IIICrosslisted with MATH 942

Prerequisites: CSCE/MATH 840 or 841 or 847 or permission

Description: Advanced topics in numerical analysis.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE952
Advanced Computer Networks

Prerequisites: CSCE 862

Description: Advanced-level course on the recent development in computer networks. Integrated Services Digital Networks (ISDN), Broadband-ISDN and Asynchronous Transfer Mode (ATM), Multimedia Source and Traffic Characteristics, Source Policing, Scheduling and Quality of Service, Wireless Communication, Tracking of Mobile Users, Performance Computer networks.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE953
Optical Communication Networks

Prerequisites: CSCE 462/862 or equivalent

Description: State-of-the-art optical communication networks, encompassing traditional networks operating on optical fiber and next-generation networks such as wavelength division multiplexed (WDM) and optical time division multiplexed (OTDM) networks. Fundamentals of optical network design, control, and management. Optical network design and modeling, routing and wavelength assignment algorithms, optical network simulation tools and techniques.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE961
Coding Theory

Prerequisites: MATH 817 desirable

Description: Channels, introduction to information theory, Shannon¿s fundamental theorem, Linear codes, Hamming codes, Reed-Muller codes, cyclic codes, idempotents, BCH codes, Reed-Solomon codes, Quadratic residue codes, perfect single-error correcting codes, Sphere packings, the Golay codes, Lloyds theorem, nonexistence theorems, weight enumerators, the MacWilliams equation, association schemes, quasi-symmetric designs, polarities of designs, extension of graphs, self-orthogonal codes and designs.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE962
Advanced Software Engineering

Prerequisites: CSCE 361 or CSCE 361H

Description: Recent advances in the field of software engineering. Software reuse, artificial intelligence approaches to software design, usability and requirements engineering, and design environments. Computer tools for the design of software products. Analysis of software artifacts. Coordination in distributed software development. Readings from current software engineering literature discussed and evaluated. Students will participate in a group project which investigates specific software engineering research topics.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE970
Pattern Recognition

Prerequisites: CSCE 310 or 311; MATH 314/814; MATH/STAT 380 or STAT 880 or ELEC 305

Description: Introduction to statistical decision theory, adaptive classifiers, supervised and non-supervised training. Pattern recognition systems: Transducers, feature extractors, decision units. Applications to optical character recognition, speech processing, remote sensing.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE971
Advanced Bioinformatics

Prerequisites: CSCE 471/871

Description: Advanced algorithmic techniques for bioinformatics. Development and analysis of string matching, graph theoretic and dynamic programming techniques applied to systems and computational biology problems such s multiple sequence alignment, alignment of DNA and protein sequences, genome rearrangements, and phylogeny and haplotypes.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE973
Support Vector Machines

Prerequisites: CSCE 310 or 311; MATH 314/814; MATH/STAT 380 or STAT 880; or ELEC 305

Description: Core theory of the machine learning technique called support vector machines. Margin, kernels, and the formulation of a machine learning problem as an optimization problem that can be solved optimally. Implementation issues, kernel design, the appropriateness of various kernels for different applications, and regularization.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE974
Genetic Algorithms

Prerequisites: CSCE 310 and 876

Description: Introduction of the motivation and current implementations of advanced genetic algorithms. These algorithms are built on basic principles borrowed from biology. Illustrates how a novel, implicitly-parallel search is implemented to obtain solutions for combinatorically-difficult problems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE976
Advanced Artificial Intelligence

Prerequisites: CSCE 876

For students with some sophistication and considerable interest in exploring methods of designing and using algorithms useful for finding adequate answers to combinatorically large problems that require largely symbolic rather than numeric computing.

Description: Study, analyze and critique basic and current research papers and to engage in artificial intelligence projects and experiments either alone or in small groups. Artificial intelligence environments, tools and expert system building. Class participation will be encouraged for the review of the more recent AI literature.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE977
Data Encryption

Prerequisites: STAT 880, CSCE 235 or MATH 817 or permission

Description: History of public cryptology; elements of statistics, combinatorics, number theory, group theory; symmetric and asymmetric cryptosystems, ¿trap door¿ functions; public key cryptosystems; RSA and knapsack; levels of cryptographic security; computational complexity of algorithms; National Bureau of Standards-DES ( Standard); block and stream cyphers; cypher key management; protection of proprietary software and data.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE979
Advances in Neural Networks and Genetic Algorithms

Description: The state-of-the-art methods for supervised training of neural networks followed by the implementation and application of genetic algorithms. Evolution and self-organization of complex, adaptive, nonlinear systems for solving problems of pattern recognition, cognition, and control. Obtaining insight into the internal workings of neural networks. Current theories and experimental testing used for analysis and testing of connections and thresholds of trained neural networks. Reference materials include research reports, papers, and books on the theory and design of neural network based processors and problem solving systems.

Course details
Credit Hours:3
Max credits per semester:3
Max credits per degree:3
Course Format:LEC

Credit Hours:3

ACE:

CSCE990
Seminar

Prerequisites: Permission

Description: Frontiers of an area of computer science.

Course details
Credit Hours:1-3
Max credits per semester:3
Max credits per degree:24
Course Format:LEC

Credit Hours:1-3

ACE:

CSCE996
Research Problems Other Than Thesis

Description: Investigation of minor research problems to introduce graduate students to the methods of research in computer science by assigning a problem which is of research interest but within the capacity of a graduate student to complete within a semester.

Course details
Credit Hours:1-6
Max credits per semester:6
Max credits per degree:6
Course Format:IND

Credit Hours:1-6

ACE:

CSCE999
Doctoral Dissertation

Prerequisites: Admission to doctoral degree program and permission of supervisory committee chair

Course details
Credit Hours:1-24
Max credits per semester:24
Max credits per degree:99
Course Format:IND

Credit Hours:1-24

ACE: