Computer Science Courses
- CS 7001 Topics in Computer Science (cr.arr.).
- Topic and credit may vary from semester to semester. May be repeated upon consent of department. Prerequisite: graduate standing.
- CS 7010 Computational Methods in Bioinformatics (3).
- Introduces the fundamental concepts and basic computational techniques for mainstream bioinformatics problems. Emphasis will be placed on the computational aspect of bioinformatics, including formulation of a biological problem in a computable problem, design of scoring functions and algorithms, confidence assessment of prediction results and software development. Prerequisite: CS 4050 and STAT 4710.
- CS 7060 String Algorithms (3).
- This course provides an introduction to algorithms that efficiently compute patterns in strings. Topics covered include basic properties of strings, data structures for processing strings, string decomposition, exact and approximate string matching algorithms. Prerequisite: CS 4050. Graded on A/F basis only.
- CS 7087 Seminar in Computer Science (1).
- Reviews of recent investigations, projects of major importance.
- CS 7270 Computer Architecture I (3).
- Architectural features of high-performance computer systems including hierarchical and virtual memory, pipelining, vector processing and an introduction to multiple-processor systems. Prerequisites: graduate standing and CS 3210 or 3270.
- CS 7380 Database Management Systems I (3).
- Fundamental concepts of current database systems with emphasis on the relational model. Topics include entity-relationship model, relational algebra, query by example, indexing, query optimization, normal forms, crash recovery, web-based database access, and case studies. Project work involves a modern DBMS, such as Oracle, using SQL. Prerequisite: graduate standing and CS 2050.
- CS 7410 Theory of Computation I (3).
- An introductory study of computation and formal languages by means of automata and related grammars. The theory and applications of finite automata, regular expressions, context free grammars, pushdown automata and Turing machines are examined. Prerequisite: graduate standing and CS 2210 and MATH 2320.
- CS 7430 Compilers I (3).
- Introduction to the translation of programming languages by means of interpreters and compilers. Lexical analysis, syntax specification, parsing, error-recovery, syntax-directed translation, semantic analysis, symbol tables for block structured languages, and run-time storage organization. Prerequisite: graduate standing and CS 2210 and MAT 2320.
- CS 7450 Principles of Programming Languages (3).
- An introduction to the structure, design and implementation of programming languages. Topics include syntax, semantics, data types, control structures, parameter passing, run-time structures, and functional and logic programming. Prerequisite: graduate standing and CS 2050.
- CS 7520 Operating Systems I (3).
- Basic concepts, theories and implementation and modern operating systems including process and memory management, synchronization, CPU and disk scheduling, file systems, I/O systems, security and protection, and distributed operating systems. Enrollment limited to undergraduate students only. Prerequisites: graduate standing and CS 2050 and 2210.
- CS 7610 Computer Graphics I (3).
- Basic concepts and techniques of interactive computer graphics including hardware, software, data structures, mathematical manipulation of graphical objects, the user interface, and fundamental implementation algorithms. Prerequisite: graduate standing and CS 2050 and either MATH 1500 or both MATH 1300 and 1320.
- CS 7620 Physically Based Modeling and Animation (3).
- This course introduces students to physically based modeling and animation methodology for computer graphics and related fields such as computer vision, visualization, biomedical imaging and virtual reality. We will explore current research issues and will cover associated computational methods for simulating various visually interesting physical phenomena. This course should be appropriate for graduate students in all areas as well as advanced undergraduate students. Prerequisites: CS 7610/4610 and a good knowledge of C or C++ programming, no physics background necessary. Graded on A/F basis only.
- CS 7650 Image Processing (3).
- (same as Electrical and Computer Engineering 7850). Fundamentals of digital image processing hardware and software including digital image acquisition, image display, image enhancement, image transforms and segmentation. Prerequisites: graduate standing and CS 2050, STAT 4710 or instructor's consent.
- CS 7670 Digital Image Compression (3).
- Covers digital image formation, information theory concepts, and fundamental loss less and lossy image compression techniques including bit plane encoding, predictive coding, transform coding, block truncation coding, vector quantization, subband coding and hierarchical coding. Prerequisite: graduate standing and CS 2050.
- CS 7750 Artificial Intelligence I (3).
- Introduction to the concepts and theories of intelligent systems. Various approaches to creating intelligent systems, including symbolic and computational approaches, insight into the philosophical debates important to understanding AI. Prerequisite: graduate standing and CS 2050, STAT 4710 or both MATH 1320 and STAT 2500.
- CS 7810 Multimedia Engineering and Technology (3).
- (same as Electrical and Computer Engineering 7810). Survey of multimedia applications. Capture, coding, storage, transmission and software tools for developing productions involving text, graphics, images, animation, sound and video. Term Projects. Lecture and laboratory. 4 credits. Prerequisites: graduate standing and CS 3210 and 3830.
- CS 7830 Science and Engineering of the World Wide Web (3).
- This course will study the science and engineering of the World Wide Web. We will study the languages, protocols, services and tools that enable the web. Emphasis will be placed on basics and technologies. Prerequisites: graduate standing and CS 3330 and 2830.
- CS 7850 Computer Networks I (3).
- Introduction to concepts and terminology of data communications and computer networking. Basic protocols and standards, applications of networking, routing algorithms, congestion avoidance, long-haul and local networks. Prerequisite: graduate standing and CS 2210 and MATH 2320.
- CS 7860 Network Security (3).
- Principles and practice of cryptography, network security, and computer system security. It includes symmetric and asymmetric cryptography, authentication, security applications such as secure email, IP security, Web security, and system security issues such as intruders, viruses, worms, Trojan horses, and firewalls. Prerequisite: CS 7850 or 4850.
- CS 7870 Wireless and Mobile Networks (3).
- Concepts and techniques in wireless and mobile networks: cellular concepts, wireless physical layer, wireless MAC protocol, mobility management, power management, wireless network security, wireless telecommunication system, wireless LAN, wireless ad hoc networking, wireless personal area network. Prerequisite: CS 7850 or 4850
- CS 8001 Advanced Topics in Computer Science (cr.arr.).
- Topic and credit may vary from semester to semester. May be repeated upon consent of department. Prerequisite: departmental consent.
- CS 8050 Design and Analysis of Algorithms II (3).
- Techniques for the design and analysis of correct, efficient algorithms. Topics include graph, geometric, and algebraic/ numeric algorithms, NP-completeness, and parallel algorithms. Prerequisite: CS 4050.
- CS 8085 Problems in Computer Science (1-3).
- CS 8090 Computational Geometry (3).
- Studies fundamental geometric problems within the framework of analysis of algorithms: convex hull algorithms in the plane and in general dimension, Voronoi diagram construction and applications to the solution of proximity problems, intersection problems, and geometric searching problems. Prerequisites: CS 4050 and MATH 2300, or instructor's consent.
- CS 8250 Digital Hardware Systems Design (3).
- (same as Electrical and Computer Engineering 8250). Characteristics and parameters of various hardware subsystems, including main memory, auxiliary memory, arithmetic units, card equipment, etc., and principles of organization into efficient system. Prerequisite: CS 4250.
- CS 8270 Computer Architecture II (3).
- Study of array processors, multiprocessors, multicomputers, and networked computing systems. Topics include architectures, interconnection networks, communication mechanisms, distributed memories and security. Introduction to parallel algorithm design. Prerequisites: CS 4210 or 4210.
- CS 8320 Software Engineering II (3).
- Further discussion of software development methodology. Prerequisite: CS 4320.
- CS 8330 Object Oriented Design II (3).
- Software system design using classes and their properties of abstraction, inheritance, dynamic binding, and polymorphism. Focus on object-oriented design of systems such as windows, graphics systems, and operating system. Prerequisite: CS 4330.
- CS 8370 Data Mining and Knowledge Discovery (3).
- Course topics include an introduction to fundamental concepts, data mining techniques from machine learning and pattern recognition areas, association rules, web mining, spatial mining, temporal mining, multimedia/multimodal database mining, and database mining, and geospatial information mining. Prerequisites: CV ENG 7380.
- CS 8380 Database Management Systems II (3).
- Further study in the theory, design, organization and implementation of databases and database management systems. Topics include: high-dimensional database indexing, content-based retrieval from image and video databases, object-relational databases, object-oriented databases, and data mining. Prerequisite: CS 4380.
- CS 8390 Information Indexing and Retrieval (3).
- Theory and techniques for the modeling, indexing, and retrieval of text-based and multimedia databases. Topics include introduction to different information retrieval models, retrieval evaluation, query languages, query operations, and indexing/searching methods. Prerequisites: CS 2050 and 2110.
- CS 8520 Operating Systems II (3).
- Discusses concurrent processes, distributed/network operating systems; models of processor scheduling, memory management and resource allocation, performance measurement, evaluation and simulation methodology; queuing models; security and reliability. Prerequisites: CS 4220.
- CS 8610 Computer Graphics II (3).
- Further study of computer graphics, focused on 3-D graphics, transformations, geometric and surface modeling, color models, visible surface determination, lighting and shading, standard graphics software (Phigs/OpenGL). Selected current topics in graphics such as visualization, animation and realism. Prerequisite: CS 4610.
- CS 8670 Multimedia Communication (3).
- Topics covered may include multimedia networking and network technologies as pertaining to multimedia communications; multimedia applications such as video conferencing, video-on-demand broadcasting, and web-based distance learning; wireless video and future generation wireless video communication systems. Prerequisite: CS 4670 and 4850 or instructor's consent.
- CS 8690 Computer Vision (3).
- Principles of computer (robot) vision, including image perception, object representation, stereo analysis, pose, shape and motion estimation. Prerequisite: CS 4650.
- CS 8750 Artificial Intelligence II (3).
- Further discussion of theories and techniques of artificial intelligence. Advanced programming in LISP and Prolog and introduction to the use of A.I. workstations. Prerequisites: CS 4750.
- CS 8760 Pattern Recognition (3).
- (same as Electrical and Computer Engineering 8820). Decision functions, crisp and fuzzy clustering methods, statistical pattern recognition methods, Bayesian classifiers, error probabilities, estimation of density functions, perceptrons, least-mean-square algorithms, feature selection, dimensionality reduction and syntactic pattern recognition. Prerequisites: CS 4050, STAT 4710.
- CS 8770 Neural Networks (3).
- (same as Electrical and Computer Engineering 8890). The course will consider computing systems based on neural networks and learning models along with implementations and applications of such systems. Prerequisites: CS 4870/7870 or instructor's consent.
- CS 8790 Filtering, Tracking and Data Fusion (3).
- This course will cover theory and applications of rigorous and efficient techniques for determining the state of an observed system from a series of imperfect observations or measurements. Specific topics to be covered include semidefinite matrix theory, the Kalman filter, the Unscented Transform, Covariance Intersection and related techniques. Applications of these techniques include head and hand tracking in virtual reality systems, robotics, and distributed information fusion. Prerequisites: CS 2050, MATH 2300 or Linear Algebra or Matrix Theory; graduate standing required.
- CS 8850 Computer Networks II (3).
- In-depth analysis and evaluation of computer networking architectures, protocols and algorithms, network security, distributed database and computational networks, routing and congestion control, domains and internetworking. Prerequisite: CS 4850.
- CS 8860 Parallel and Distributed Processing (3).
- This course covers basic issues of parallel and distributed processing, including parallel and distributed architectures and models, parallel programming, and parallel algorithms and applications. Prerequisites: CS 4050.
- CS 8880 Wireless Embedded Systems (3).
- This course introduces wireless embedded systems and focuses on the nature of computation and communication needed to design large-scale, distributed, and wirelessly connected embedded systems. We will study emerging technology and standards by reading papers and doing projects on real systems. Prerequisites: CS 4050 and 4850 or instructor's consent.
- CS 8980 Research Masters Project in Computer Science (cr.arr.).
- Investigation and research of a topic, not leading to a thesis. Graded on S/U basis only. Prerequisite: departmental consent.
- CS 8990 Research-Masters Thesis Computer Science (cr.arr.).
- Prerequisite: adviser's consent. Graded on S/U basis only.
- CS 9001 Advanced Topics in Computer Science - PhD (1-4).
- New and current technical developments in computer science. For PhD students.
- CS 9990 Research-Doctoral Dissertation Computer Science (cr.arr.).
- Prerequisite: adviser's consent. Graded on S/U basis only.