View: Text-Only | Mobile

 

Computer Information Science  College of Engineering 

Graduate Level 500 Courses

CIS 521 three credits
Computability Theory
Prerequisites: CIS 361 or equivalent, or permission of instructor
Computability of sets and functions in terms of various computation models, Church-Turing thesis. Systems of recursion equations and Post canonical systems are studied. Properties of the classes of recursive functions, recursive sets, and recursively enumerable sets are also covered.

CIS 522 three credits
Algorithms and Complexity
Prerequisites: CIS 360 or equivalent, or permission of instructor
Evaluation of algorithms concerning their time and space complexity. Complexity hierarchies, axiomatic approach to computational complexity, NP complete problems, approximation algorithms for these problems.

CIS 525 three credits
Parallel and Distributed Software Development
Prerequisites: CIS 361 or equivalent, or permission of instructor
Design and development of parallel and distributed systems. This course provides state-of-the art presentation of software development for parallel and distributed systems. A systematic model-based approach has been applied across stages of software development. Various versions of Petri nets are used to model , specify, validate, and verify correctness of parallel and distributed systems. Performance is also assessed based on stochastic Petri nets. Rapid prototyping of parallel and distributed systems with automatic code generation is an ultimate goal of his course. Comparison with other approaches is also provided.

CIS 526 three credits
Functional Programming and Type Theory
Prerequisites: CIS 360 or equivalent, or permission of instructor
Introduction to logic, type theory, and the lambda calculus. The course examines LISP as a first application of these ideas, consistency proofs using cut elimination and type theory, and constructive type of theory in functional programming languages in attempts to achieve program verification and automatic code generation.

CIS 531 three credits
Software System Specification
Prerequisites: CIS 480 or equivalent
Formal foundation of the theory and practice of software specification; production of correct, consistent, and reliable software systems by expressing the requirements of the system in formal ways. Formal and informal requirements analysis and specification techniques, the relation of analysis and specification to concerns of validation and verification, maintenance, and reusability.

CIS 532 three credits
Software Systems Design
Prerequisites: CIS 480 or equivalent
Principles and techniques for obtaining an architectural design from a system specification. Where appropriate, automated software design tools are used to demonstrate particular methodology. The relation of various design methods to the production of quality software that meets its specification, and the relation of design method to other life-cycle aspects. Design methods, design tools, the design process, and particular application domains for design techniques.

CIS 543 three credits
Software Systems Design with ADA
Prerequisites: CIS 443 or equivalent, or permission of instructor
Software engineering principles and methodologies. Also considered are issues related to the life cycle of large systems developed in ADA , software engineering of real-time, fault-tolerant and distributed systems, and software reuse.

CIS 545 three credits
Programming Languages
Prerequisites: Permission of instructor
Techniques of formal definition of programming languages, semantics of programming languages, programming styles, and language effects on software production. Introduces current trends in programming such as language features of problem-oriented and object-oriented programming, and analysis and design of user-oriented application languages.

CIS 552 three credits
Database Design
Prerequisites: CIS 452 or equivalent, or permission of instructor
The relational, hierarchical, and network approaches to database systems, including relational algebra and calculus, data dependencies, normal forms, data semantics, query optimization, and concurrency control on distributed database systems.

CIS 554 three credits
Advanced Computer Graphics
Prerequisites: CIS 454 or equivalent, or permission of instructor
Three-dimensional graphics including: color, shading, shadowing and texture, hidden surface algorithms. An extensive project will be assigned, including documentation and presentation.

CIS 555 three credits
Advanced Bioinformatics
Prerequisitess: CIS 360, CIS 455
Advanced coverage of computational approaches used in bioinformatics. The course focuses on algorithmic challenges in analyzing molecular sequences, structures, and functions. It covers the following topics: sequence comparison, assembly and annotation. Phylogenetic analysis. RNA secondary structure. Protein structure comparison, prediction, and docking. Microarrays, clustering, and classification. Genome, Hpamap, SNPs, and phenotypes. Proteomics and protein identification. Determining protein function and metabolic pathways.  

CIS 560 three credits
Theoretical Computer Science
Prerequisitess: CIS 360, 361, or equivalents
Theoretical basis of the development of computer science. The course details particular formalisms used in the design of hardware and software systems. Intrinsic limitations of computation are described. Advanced topics of automata theory and analysis of algorithms are included. The course also covers Turing machines, the halting problem, models of computation, intractable computations, polynomial reductions, P vs. NP, parallel algorithms, various formal descriptions and specifications of programs and computations, and proofs of program correctness and interactive proof systems.

CIS 561 three credits
Artificial Intelligence
Expert system architectures: forward-production, logic programming, deductive retrieval, and semantic network systems. The course also treats natural language systems, illustrative working systems, and AI programming.

CIS 563 three credits
MultiAgent Systems
Introduction to multiagent systems and distributed artificial intelligence. The course examines the issues that arise when groups or societies of autonomous agents interact to solve interrelated problems. Topics include defining multiagent systems and their characteristics, reasoning about agents’ knowledge and beliefs, distributed problem solving and planning, coordination and negotiation, the organization and control of complex, distributed multiagent systems, learning in multiagent systems, and applications in the following domains: internet information gathering, electronic commerce, virtual markets, workflow management, distributed sensing network, distributed planning and resource allocation.

CIS 564 three credits
Mobile
Robotics
Prerequisites: Graduate standing
The theory, software and hardware for autonomous mobile robots. Reactive behavior–based deliberative goal-based, and utility based robotic architectures will be presented. Control and planning under bounded resources will be covered. Interaction with environment using sensors and actuators, robot kinematics and dynamics, reinforcement and evolutionary learning techniques for intelligent robots, interaction of competing and cooperating multi-robot systems will be presented. Various applications of mobile robots will be explored.

CIS 565 three credits
Evolutionary Computation
Prerequisites: Graduate standing
Presentation of evolutionary algorithms and comparison to traditional solving techniques. This course deals with a powerful new technique for solution of hard, intractable real-world problems, based on principles of natural evolution. Four main areas of evolutionary computation will be explored: genetic algorithms, genetic programming, evolution strategies, and evolutionary programming. Applications of evolutionary computation to related areas of computer science will be discussed.

CIS 566 three credits
Theory of Linear and Integer Programming and Computer Applications
Prerequisites: CIS 360 or equivalent, or permission of instructor
Basics of the simplex algorithm, tableaux, artificial variables, the two-phase method, the dual problem and its economic interpretation, primal-dual relationships and method. Also studied are applications to transportation problems and network flows, the polynomial methods of Khachiyan and Karmarkar, and integer programming. Computer methods and exercises will be employed throughout.

CIS 570 three credits
Advanced Computer Systems
Prerequisites: CIS 314 or equivalent
In depth treatment of current computer systems, with performance issues at the center of an analytical approach. The course explores operating system software and the interrelation between architecture and system software. Advanced topics of compiling, assembly, linking and loading of high-level language software are included. The course treats mechanisms of IO and the memory hierarchy, various features of traditional machines, advanced features of modern machines such as RISC and multiprocessor machines, and file systems and networked and distributed systems such as inter- and intra-nets. Throughout, performance issues are at the center of an analytical approach.

CIS 571 three credits
Compiler Construction
Prerequisites: CIS 471 or equivalent, or permission of instructor
Different techniques for lexical analysis, syntax analysis, and object code generation. Emphasis on code optimization techniques and compiler-construction tools. The course will include a significant project.

CIS 572 three credits
Real Time Systems
Prerequisites: CIS 481 or equivalent, or permission of instructor
Design and implementation of real-time systems. Implementation of real-time system in ADA , scheduling, fault tolerance, and distributed real-time systems are also studied.

CIS 573 three credits
Operating Systems
Prerequisites: CIS 370 or equivalent, or permission of instructor
The methodologies of operating systems design and implementation. Concurrency, synchronization, process communication, switching control, deadlocks, implementation of dynamic structures, design of operating systems modules and interfaces, system security and integrity, and system updating and documentation are also studied.

CIS 574 three credits
Advanced Computer Architectures
Prerequisites: CIS 314 or equivalent, or permission of instructor
Study of recent advances in computer organization. Parallel processors, pipelined processors, modular and network architectures data-flow machines, fault-tolerant systems, language-directed, object-based, capability-based, and message-based processor organizations.

CIS 575 three credits
Parallel Algorithms and Parallel Architectures
Prerequisitess: CIS 314, 360 or equivalents; or permission of instructor
Parallel algorithms and their implementations in parallel architectures. In the first part of the course parallel algorithms are analyzed for problems in graph theory, algebra, FFT, and artificial intelligence. The second part presents implementations of these algorithms in various parallel architectures.

CIS 577 three credits
Computer Networks
Prerequisites: CIS 475 or equivalent, or permission of instructor
Analysis and modeling of centralized and distributed computer networks. Queuing network analysis, principles of network design, software considerations, and design of computer networks are also studied.

CIS 578 three credits
Evaluation of Computer Systems Performance
Prerequisites: MTH 331, CIS 314 or equivalents; or permission of instructor.
Techniques of analysis and simulation for evaluation of computer systems performance. Queuing systems, Poisson processes, scheduling, service distribution, conservation laws, queuing networks, and discrete simulations are also studied.

CIS 579 three credits
Multimedia Networking
Prerequisites: CIS 475 or 476 or equivalents
Current techniques in multimedia communications and networking. The course presents the communication requirements of the different types of multimedia applications, the operation of the different underlying communication networks as multimedia carriers, and the communication protocols associated with these networks and gives an overview of the various quality-of-service models, real-time transmission issues, and compression techniques.

CIS 580 three credits
Paradigmatic Software Development
Prerequisites: CIS 311 or equivalent
Software development in the context of various paradigms. The strategies and methods of the procedural, object-oriented, and functional paradigms are studied and practiced. The modeling of software processes will be considered from both the process and product views, as will the appropriateness and measures of effectiveness of these processes in the design of software systems. Students will apply these measures to the course exercises, determining and reviewing the impact of these methods on individual design.

CIS 581 three credits
Design and Verification of Information Systems
Prerequisites: CIS 580 or equivalent, or permission of instructor
Sound design methodologies and technologies in development and maintenance of information systems/business systems with special emphasis on workflow management systems. An applied course that emphasizes the formal approach, this course also addresses issues of adaptability and flexibility of information systems and their evaluation. The course supports concurrent execution of information systems during the design stage and adopts and applies various forms of Petri nets.

CIS 582 three credits
Advanced Software Engineering
Prerequisites: CIS 489 or equivalent, or permission of instructor
Advanced topics in software engineering that examine technical aspects of software development life cycle. This course introduces software process models including object-oriented process model, formal specification and design, distributed programming, software testing, and agent-oriented software engineering. The concepts are introduced in the context of developing large, critical and distributed software systems.

CIS 583 three credits
Software Architectures
Prerequisites: CIS 580 or equivalent
Architectures of software systems. The course presents a systematic overview and analysis of architectural styles such as pipes and filters, distributed systems, layered systems, event-driven systems, control-based systems, implicit invocation, blackboard systems, etc. Formalization of software architectures with Z and Petri nets is presented. Influence of software architectures on business cycle, software quality, and design reusability are explored.

CIS 585 three credits
Image Processing and Machine Vision
Prerequisites: Graduate standing and permission of the instructor
Foundations of image processing and machine vision. Students apply and evaluate topics such as edge detection, segmentation, shape representation, and object recognition. Stereo vision and motion analysis will be covered in detail including calibration, range images, change detection, motion correspondence, and 2-D and 3-D tracking. Important research papers will be discussed in class.

CIS 588 three credits
Neural Computing
Prerequisites: Any course in programming languages and data structures
Fundamentals of artificial neural networks including application needs for neural networks, discussing the various architectures, learning algorithms and examples of applications. The standard neural networks are discussed in greater details, which allows for branching of architectures and combining of strategies for growing and/or constructing neural networks.

CIS 590 three credits
Optical Networks
Prerequisites: CIS 475 or equivalent
Analysis and design of optical network paradigms and architectures. Introduction to optical components, wavelength division multiplexing, and evolution of optical networks, design and analysis of wavelength-routed networks, and optical packet-/burst-switched networks are addressed. Principles of network design, linear programming, protocol and algorithm design, discrete event simulation techniques, and queuing theory are also studied.

CIS 595 three credits
Independent Study
Prerequisitess: Upper-division standing; permission of instructor, graduate director, and college dean
Study under the supervision of a faculty member in an area not otherwise part of the discipline’s course offerings. Conditions and hours to be arranged.

CIS 596 three credits
Directed Study
Prerequisitess: Permission of the instructor, graduate director, and college dean
Study under the supervision of a faculty member in an area covered in a regular course not currently being offered. Conditions and hours to be arranged.

Contact Info: