BGSU Logo
BGSU Home BGSU Academics BGSU Admissions The Arts BGSU Athletics Libraries Offices
Department of Computer Science
Computer Science Home Undergraduate Program Graduate Program Computer Science Faculty Academic Advising Mission and Vision
Small font Medium font Larger font Largest font
Left bracket Graduate Courses Right bracket

Credit hours are shown in parentheses. Links point to additional information about the course.

CS 5000. Computing for Graduate Students (3)
Spring, Summer. Problem solving and computer programming techniques. Variables, loops and other control structures, arrays, subprograms and parameter passing. Credit not applicable toward a degree in computer science. Graded S/U.

CS 5080. Operating Systems (3)
Spring. Structure of operating systems. Physical input-output, buffering, interrupt processing. Memory, processor, device, information management; resource management interdependencies. Job and processor scheduling. Concurrent programming. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 or equivalent.

CS 5090. Language Design and Implementation (3)
Fall. Fundamental concepts of languages. Processors, data, operations, sequence control, data control, storage management, syntax, translation. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 2170 and CS 3350 or equivalent.

CS 5100. Formal Language Theory (3)
Fall, odd-numbered years. Various types of languages (context-sensitive, context-free, regular). Discussion of recognition devices such as pushdown automata, linear bounded automata, and Turing machines. Some topics of current interest. Prerequisite: MATH 2220 or 3220.

CS 5170. Introduction to Parallel Computing (3)
Spring, even-numbered years. Principles and practice of parallel computing. Parallel algorithm development and analysis. Design, implementation and evaluation of parallel programs for shared memory, local memory and vector architectures. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 or equivalent.

CS 5200. Artificial Intelligence Methods (3)
Summer, odd-numbered years. Intermediate AI programming with application to representative problems requiring searching, reasoning, planning, matching, deciding, parsing, seeing and learning.

CS 5250. Computer Graphics (3)
Spring, every year; Summer, even-numbered years. Graphic I/O devices; 2-dimensional and 3-dimensional display techniques; display processors; clipping and windowing; hidden line removal; data structures for graphics. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3350 and MATH 2220 or equivalent.

CS 5290. Data Communication and Networks (3)
Spring. Data communications concepts; network topologies; transmission media; network access control; communication protocols; network architecture; LANs, MANs, and WANs; internetworking. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 or equivalent.

CS 5400. Optimization Techniques (3)
Fall, even-numbered years. Linear programming, game theory, PERT, network analysis; duality theory and sensitivity analysis; applications. Computer programs written to implement several techniques. Prerequisites: CS 2010 and MATH 2220 or equivalent.

CS 5420. Techniques of Simulation (3)
Spring, odd-numbered years. Principles of simulation and application of simulation languages to both continuous and discrete systems. Prerequisites: CS 2020 and MATH 2470.

CS 5510. Numerical Analysis (3)
Fall. Study of numerical methods for interpolation and approximation, integration and differentiation, solution of non-linear equations and systems of linear and non-linear equations. Prerequisite: MATH 3320 plus CS 1010 or CS 2010 or equivalent.

CS 5520. Numerical Analysis (3)
Spring. Study of numerical methods for the algebraic eigenvalue problem, solutions of ordinary differential equations; and topics from approximation theory, numerical solution of partial differential equations, optimization techniques, and sparse matrix computations. Prerequisite: CS 5510 or MATH 5510 plus MATH 3370 or equivalent.

CS 5620. Database Management Systems (3)
Fall. Semantic models for conceptual and logical design of databases. Detailed study of relational systems: design, dependency, and normal forms. Use of interactive and embedded query languages. Overview of topics such as database connectivity, security and object-oriented systems. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 2020 or equivalent.

CS 5640. Software Development (3)
Fall. An in-depth study of all aspects of the software development process: user requirements, specifications, design, coding, testing, maintenance, documentation, management. Use of CASE tools for analysis and design. Admission to MS in CS program, or consent of department, plus CS 3240 or equivalent.

CS 5800. Seminar in Computer Science (1-3)
Prerequisite: consent of department. May be repeated up to six hours if topics are different. Graded A/F.

CS 5810. Seminar in Computer Science (1-3)
Prerequisite: consent of department. May be repeated up to six hours if topics are different. Graded S/U.

CS 5830. Topics in Computer Science (3-4)
Overview of topics of current interest. Credit not applicable toward a degree in computer science. May be repeated. Graded S/U. Prerequisite: Admission to MS in CS program

CS 5850. Readings in Computer Science (1-6)
Supervised study and/or projects in any area of computer science. Prerequisite: consent of department. Graded S/U. May be repeated.

CS 5890. Internship (1-3)
Supervised professional experience within an occupational setting for the graduate student majoring in computer science. The student is required to prepare a report on the experience. May be repeated to a total of three hours. Graded S/U. Prerequisite: Consent of department.

CS 6070. Architecture of Computers (3)
Spring, odd-numbered years. Architectures of modern computing systems. Techniques for high-speed computation: pipelining, vector processing, array processors. General purpose parallel architectures: SIMD, MIMD and data flow systems and their memory organizations and processor communication. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 2170 or equivalent.

CS 6090. Advanced Compiler Design (3)
Spring, even-numbered years. Programming language grammars and normal forms, parsing algorithms and semantics specification, optimization, error recovery. Translator writing systems and extensible languages. Prerequisite: CS 5090 or 5100.

CS 6110. Automata and Computability Theory (3)
Summer, odd-numbered years. Mathematical models for algorithmic processes, such as finite automata and Turing machines. Limitations of such models.

CS 6120. Analysis of Algorithms (3)
Fall. Algorithms for solving problems that occur frequently in computer applications. Basic principles and techniques for designing and analyzing algorithms. Prerequisite: CS 2010 and MATH 2220 or equivalent.

CS 6150. Reliable Computing (3)
Spring, even-numbered years. Techniques for writing reliable software including n-version programming, fault-tolerant data structures and formal proofs of correctness. Rollback and recovery methods. Fault-tolerant hardware and methods of hardware error detection and correction. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3350 or equivalent.

CS 6200. Advanced Topics in Artificial Intelligence (3)
Summer, even-numbered years. Intensive study of a major sub-field such as neural networks, expert systems, machine learning/tutoring, natural language processing, pattern recognition, robotics or others.

CS 6210. Computer Systems Security (3)
Spring, odd-numbered years. Security issues in the realm of computers, communications and the internet. Algorithms for encryption, cryptography, authentication, key exchange protocols, virus detection, database security and secure internet communication. Models of security policies and computer systems certification. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 and CS 3350 or equivalent.

CS 6250. Advanced Computer Graphics (3)
Fall, odd-numbered years. X-Windows, hidden line/surface algorithms, curved lines and surfaces, illumination & shading techniques, color models, geometric and solids modeling, animation techniques. Prerequisite: CS 5250.

CS 6290. Networks and Distributed Processing (3)
Fall. Computer network architecture and protocols. Routing, congestion and flow control. Client-server models and remote procedure calls. Topics may include algorithms for broadcasting, check pointing, termination detection, and other problems. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 or equivalent.

CS 6300. Statistical Packages (3)
Summer. Use and comparison of various statistical packages, with emphasis on SPSS and SAS. Credit not applicable toward a degree in computer science. Prerequisite: Graduate-level course in statistics such as SOC 6120 or PSYC 6670.

CS 6470. Network Analysis (3)
Network techniques for modeling and analysis of industrial and management problems: project management and resource allocation with PERT/CPM; transportation, transshipment, assignment, shortest path and minimal spanning tree models; maximal flow problems in single and multi-commodity networks; out-of-kilter algorithm; advanced topics in network analysis. Prerequisite: CS 5400 or OR 6610 or OR 4800.

CS 6490. Applied Nonlinear and Dynamic Programming (3)
Modeling decision problems in business and public administration via nonlinear and dynamic programming. Topics include quadratic and separable programming, penalty function, search methods, geometric programming, dynamic programming with discrete and continuous variables. Prerequisite: CS 5400 or OR 6610 or OR 4800.

CS 6640. Software Engineering (3)
Spring, odd-numbered years. Advanced topics related to the analysis, design, and development of large software projects. Prerequisite: CS 5640.

CS 6650. Human Issues in Computing (3)
Spring, even-numbered years. Behavioral aspects of computing, including topics such as programming style, language features, specification formats, documentation, computer- aided instruction, computer science expertise, training, computing for handicapped users. User-interface design. Research methodology. Prerequisite: Admission to MS in CS program, or consent of department.

CS 6800. Seminar in Computer Science (1-4)
Special course offering on topic of current interest. May be repeated up to six hours if topics are different. Prerequisite: Consent of department. Graded A/F.

CS 6810. Seminar in Computer Science (1-4)
Special course offering on topic of current interest. May be repeated up to six hours if topics are different. Prerequisite: Consent of department. Graded S/U.

CS 6910. Directed Research (1-6)
May be repeated. Prerequisite: Consent of department. Graded S/U.

CS 6990. Thesis Research (1-12)
May be repeated. Prerequisite: Consent of department. Graded S/U.

webmaster@cs.bgsu.edu