![]()
DEPARTMENT OF COMPUTER SCIENCE AND COMPUTER ENGINEERING David L. Andrews Degrees Conferred:
COMPUTER SCIENCE (CSCI) Prerequisites to Degree Program: Applicants should have completed the equivalent of a Bachelor of Science degree in computer science following the most recent guidelines published by the Association for Computing Machinery. If an applicant has deficiencies in undergraduate coursework, then specific undergraduate courses may be required in addition to the graduate requirements for the degree. An applicant must also present scores on the Graduate Record Examinations (GRE). Requirements for the Master of Science Degree: The non-thesis option for the degree requires the successful completion of 30 semester hours of computer science courses approved by the candidate's graduate committee; at most, nine of the 30 semester hours may be other than CSCI courses. The thesis option for the degree requires the successful completion of at least six semester hours of CSCI 610V (Master's Thesis), plus 24 semester hours of computer science courses approved by the candidate's graduate committee; at most, nine of the 24 semester hours may be other than CSCI courses. Candidates following either the thesis or the non-thesis option must complete four courses from the CSCI 50*3 sequence. All candidates must pass a written comprehensive examination in, at most, two attempts. The first attempt may not occur before all of the following qualifying conditions have been satisfied: 1. Candidates must have completed at least 21 hours that are applicable toward the degree. Candidates following the thesis option must be currently enrolled in CSCI 610V. 2. Candidates must have completed at least four courses from the CSCI 50*3 sequence 3. The candidate's cumulative grade-point average on all graduate-level courses must be 3.00 or higher. All candidates must also satisfy any other conditions specified in the departmental guidelines. Requirements for the Doctor of Philosophy Degree: In addition to the requirements of the Graduate School and Fulbright College of Arts and Sciences, the following departmental requirements must be satisfied by candidates for a Doctor of Philosophy degree with a major in Computer Science. A minimum of 54 semester credit hours of graduate level course work (at the 5000 or 6000 level) beyond a Bachelor's Degree of which 24 hours must be beyond any coursework used to fulfill requirements for a Master's Degree. The coursework must include all courses designated as "core" courses by the Department of Computer Science. Courses that currently carry this designation are CSCI 5003 Advanced Programming Language, CSCI 5023 Architecture of Computer Systems, CSCI 5033 Design and Analysis of Algorithms, and CSCI 5043 Artificial Intelligence. Students are admitted to candidacy on the basis of passing comprehensive examinations written and administered by the graduate faculty in computer science as required by the Graduate School. These examinations must be taken no earlier than the end of the first year of study and no later than the end of the third year, including a second attempt, if necessary. Such examinations will include several sections administered at different times during the year. The score for each section will be "high pass" (numeric score of 4), "pass" (3), "marginal pass" (2), or "fail" (0). An overall score of "pass" (average at least 3.0) is required to pass a qualifying or comprehensive examination. Students who fail this examination will be allowed one re-examination. A second failure will terminate the student's course of study in the computer science doctoral program. Each student must form a doctoral supervisory committee before registering for dissertation hours. This committee must consist of faculty who hold qualifying status on the graduate faculty, the majority and chair of which hold regular or adjunct appointments in the Department of Computer Science. Each Ph.D. student will be expected to defend both a dissertation proposal and completed dissertation before a dissertation committee. For the proposal, the student is expected to present a list of goals and a plan of action to accomplish them. Committee members will judge the goals on their scientific merit, originality, and difficulty. The doctoral program must include a minimum of 18 hours of CSCI 700V Doctoral Dissertation in addition to the coursework specified in item (a).
COURSES: COMPUTER SCI (CSCI) CSCI4513 Intelligent Robot Control (IR) Examines software issues surrounding the creation and control of autonomous robots. Techniques include: genetic programming, artificial neural networks, reinforcement learning, and symbolic methods. Programs are run in simulation and on actual robotic controllers. Topics discussed include visual processing, spatial mapping, and learning. Prerequisite: CSCI 3603. CSCI5003 Advanced Programming Languages (SP) Abstraction, proof of correctness, functional languages, concurrent programming, exception handling, dataflow and object oriented programming, denotational semantics. Prerequisite: graduate standing. CSCI5023 Architecture of Computer Systems (FA) An advanced study of both classical and recent computer hardware and software systems. Prerequisite: CSCI 3303 and CSCI 4203. CSCI5033 Design and Analysis of Algorithms (SP) Design of computer algorithms, with primary emphasis on the development of efficient implementation. Prerequisite: graduate standing. CSCI5043 Artificial Intelligence (FA) Provides students with an introduction to the major subjects and techniques of artificial intelligence. Topics include: machine learning, computer vision, natural language understanding, and AI languages. (Same as CSEG 5003, ELEG 5103) Prerequisite: CSEG 3603 and graduate standing. CSCI5123 Databased Management systems (IR) This course is an introduction to database systems for graduate students with no background on databases. We cover data modeling, basic concepts of the relational model, relational languages(algebra, SQL), databased design and database implementation. Prerequisite: CSCI 2023 and graduate standing. CSCI5203 Advanced Database Systems (IR) Data and storage hierarchies, database models, user language designs, database manipulations. Prerequisite: CSCI 2013 and graduate standing. CSCI5233 Principles of Compiler Construction (IR) Lexical analysis, parsing, symbol table construction, intermediate code generation, run-time simulation. Prerequisite: graduate standing. CSCI5243 Formal Languages (IR) An advanced continuation of CSCI 4603. Prerequisite: CSCI 4603 and graduate standing. CSCI5263 Computational Complexity (IR) Turing machines, recursion theory and computability, complexity measures, NP-completeness, analysis on NP-complete problems, pseudo-polynomial and approximation. algorithms. Prerequisite: graduate standing. CSCI5283 Graph and Combinatoric Algorithms (IR) A study of algorithms for graphs and combinatorics with special attention to computer implementation and runtime efficiency. Prerequisites: Math 2103 and a programming language. CSCI5303 Parallel Programming (IR) An analysis of parallel computer systems with respect to software engineering. Practical programming experience on pipelined, array, and multi-processor computers. Credit can be earned in only one of these three courses. CSCI 5303 or CSEG 5303 or ELEG 5913. (Same as CSEG 5303, ELEG 5913) Prerequisite: working knowledge of 'C' language and CSEG 4513 or equivalent. CSCI5313 Advanced Operating Systems (IR) Concurrent processes and process communication; mutual exclusion and synchronization principles; kernel philosophy; resource allocation and deadlock; case studies of specific operating systems. Prerequisite: CSCI 4203 and graduate standing. CSCI5513 Intelligent Robot Control (IR) This course is designed to examine software issues surrounding the creation and control of autonomous robots. Techniques include: genetic programming, artificial neural networks, reinforcement learning, and symbolic methods. Programs are run in simulation and on actual robotic controllers. Topic discussed include visual processing, spatial mapping, and learning. Prerequisite: graduate standing CSCI5713 Multimedia Systems Design (IR) Overview of digital unified multimedia. Programming methodology involved in integration of all forms of digitized information (e.g., text, sound, graphics, animation, and process control) in a single computer-based interactive environment. CSCI5723 Client-Server Computing (IR) Distributed computing paradigms: client-server, peer-to-peer, nomadic; client and server-side components, communications interface technology, interprocess-communications, development hardware and software. Prerequisite: graduate standing. CSCI5733 Information Agency (FA, SP, SU) The study of software agents and their deployment on the internet: precursors to agents - viruses and worms, origins of software agents, delegate vs. representative agents, agency of the Internet and Web, operational guidelines for agents, HTTP, transaction security, MUD agency, intelligent agency, applications of agents: indexers, resource managers, search utilities, commercial applications. CSCI590V Advanced Topics in Computer Science (1-3) (IR) Topics not covered in depth in other courses. Prerequisite: graduate standing. CSCI5953 Real-time Systems (FA, SP, SU) A study of real-time system design. The development of real-time systems will be examined from the standpoint of academia, government, and industry. Scheduling, operating systems, and architecture considerations are among other topics to be covered. (Same as CSEG 5953) CSCI610V Master's Thesis (1-6) (FA, SP, SU) CSCI620V Research in Computer Science (1-18) (IR) Prerequisite: graduate standing. CSCI690V Graduate Seminar (1-6) (IR) Concentrated study in selected areas of computer science research. May be repeated for 12 hours. Prerequisite: advanced graduate standing CSCI700V Doctoral Dissertation (1-18) (FA, SP, SU) May be repeated for 5 hours.
COMPUTER SYSTEMS ENGINEERING (CSEG) Prerequisite to Degree Programs: Extensive training in computers at the undergraduate level is desirable. Deficiencies in undergraduate majors, in both computer architecture and computer software, will be included in the student's program. Requirements for Graduate Degrees: In addition to the requirements of the Graduate School, the following departmental requirements must be satisfied by candidates for the Master of Science in Computer Systems Engineering degree: 1. Complete a minimum of 24 semester hours of course work and present a thesis for 6 semester hours of credit. 2. Include in the 24 semester hours of course work at least 12 semester hours of 5000- and 6000-level courses in Computer Systems Engineering. 3. Each student must enroll in CSEG 5801, Seminar, in addition to the 12 hours at the 5000-6000 level. 4. Any other conditions specified in the departmental guidelines.
COURSES: CMP SCI ENGR (CSEG) CSEG400V Electronic Information Management (1-3) (FA, SP, SU) Survey of the computing field at an advanced level using Electronic Information Management framework. Electronic Information production, storage, distribution, and customization technologies. Prerequisite: senior standing and three credit-hour option requires programming expertise. CSEG4083 Introduction to Computer Networking (FA, SP) Introduction to the basic concept of computer networking. PC & UNIX based networks will be covered. Both hardware & software for such systems will be installed. Topics include both theory of networking & practical hand-on experience with real-world networks. Prerequisite: CSEG 2523 and CSEG 2723. CSEG410V Special Problems (1-6) (FA, SP, SU) Prerequisite: senior standing. CSEG4213 Programming Windows and the GUI (FA, SP, SU) Introduction to the basic concepts of graphical user interface (GUI) programming using the Microsoft Windows environment. Discussion of design techniques relating to color, size, shape, location, font, etc. Real-world applications will be programmed using Visual Basic, C and C++. Prerequisite: CSEG 2723. CSEG4323 Object Oriented Programming and Design (FA, SP, SU) Indepth coverage of the methods and techniques of object-oriented design and its applications to database and artificial intelligence. Corequisite: CSEG 4320D. Prerequisite: CSEG 4553. CSEG4320D Object Oriented Programming and Design Drill (FA, SP, SU) Corequisite: CSEG 4323. CSEG4403 Control Systems (FA, SP, SU) Mathematical models of control root-locus, and frequency- response design techniques. Special topics. (Same as ELEG 4403, MEEG 4213) Prerequisite: ELEG 3123. CSEG4513 Operating Systems (FA, SP, SU) Structure, design, and implementation of operating systems. Topics include: Real and virtual memory management, process scheduling, multiprogramming, multiprocessing, and concurrent/parallel programming, deadlock, interrupt processing, disk scheduling, performance evaluation, security, and specific OS examples. (Same as CSCI 4203) Corequisite: CSEG 4510D. Prerequisite: CSEG 2533 (or CSCI 2003) and senior standing. CSEG4510D Mini-Micro Operating Systems Drill (FA, SP, SU) Corequisite: CSEG 4513. CSEG4553 Engineering Algorithms (FA, SP, SU) Provides an introduction to formal techniques for analyzing the complexity of algorithms. The course also surveys important classes of algorithms used in computer engineering, providing in-depth analysis of relevant examples. Corequisite: CSEG 4550D. Prerequisite: INEG 3313 and CSEG 3543. CSEG4550D Engineering Algorithms Drill (FA, SP, SU) Corequisite: CSEG 4553. CSEG4563 Data-Base Management (FA, SP, SU) Data-base management systems, types of data-base languages, relational algebra, SQL, compression techniques, E-R diagramming, and applications programs. Drill sessions will be required when this course is taught in the summer term. Corequisite: CSEG 3543 and CSEG 4560D. CSEG4560D Data-Base Management Drill (FA, SP, SU) Corequisite: CSEG 4563. CSEG4683 Introduction to Image Processing (FA, SP, SU) Introduction to the basic concepts of image processing; theory and applications. Covers digital methods of image restoration; reformation, extraction and analysis. (Same as ELEG 4683) Corequisite: CSEG 4680D. CSEG4680D Introduction to Image Processing Drill (FA, SP, SU) Corequisite: CSEG 4683. CSEG4743 Advanced Computer Graphics and Animation (FA, SP, SU) Advanced topics in the generation of computer graphics and animation imagery concentrating on non-procedural approaches. Topics include physical modeling, transformations, lighting models, and rendering algorithms. Theoretical issues include the graphics pipeline and rendering equation. Practical issues include the use of industry standard graphics libraries and rendering hardware and efficiency. CSEG4933 Computer Systems Analysis (FA, SP, SU) Basic concepts of problem analysis, model design, and simulation experiments. Sigma is used and compared to high-level and other simulation languages. Drill sessions will be required when this course is taught in the summer terms. Corequisite: CSEG 4930D. Prerequisite: CSEG 2723 and INEG 3313. CSEG4930D Computer Systems Analysis Drill (FA, SP, SU) Corequisite: CSEG 4933. CSEG4943 Digital Systems Design (FA, SP, SU) Number systems and codes, fundamentals of switching algebra, analysis and design of sequential switching circuits and memory elements. (Same as ELEG 4943) Prerequisite: junior standing. CSEG4953 Minicomputer Applications (FA, SP, SU) Structure, implementation, and application of minicomputer systems. Microcomputer hardware. Microprogramming. Minicomputer software technology. Design and evaluation of minicomputer systems. (Same as ELEG 4933) Corequisite: CSEG 4950D. Prerequisite: ELEG 3213 and INEG 3313. CSEG4950D Minicomputer Applications Drill (FA, SP, SU) Corequisite: CSEG 4953. CSEG4983 Introduction to Computer Architecture (FA, SP, SU) Design of a single board computer including basic computer organization, memory subsystem design, periphereal interfacing, DMA control, interrupt control, and bus organization. (Same as ELEG 4983) Corequisite: CSEG 4980D. Prerequisite: ELEG 3923. CSEG4980D Computer Architecture and Organization Drill (FA, SP, SU) Corequisite: CSEG 4983. CSEG5003 Artificial Intelligence (FA, SP, SU) Provides students with an introduction to the major subjects and techniques of artificial intelligence. Topics include: machine learning, computer vision, natural language understanding, and Al languages. (Same as CSCI 5043, ELEG 5103) Prerequisite: CSEG 2723 and graduate standing. CSEG5013 Topics in Computer Hardware (FA, SP, SU) Advanced features of computer hardware. Topics include: memory design, input and output design, direct memory access techniques, and electro-optical signal conversion and EPROM applications. Corequisite: CSEG 5010L. Prerequisite: CSEG 2533. CSEG5010L Topics in Computer Hardware Laboratory (FA, SP, SU) Corequisite: CSEG 5013. CSEG5023 Software Engineering I (FA, SP, SU) A study of design and development used in software and computer systems engineering. Topics include project planning, requirements analysis, software design fundamentals, quality assurance, and software testing and maintenance. Prerequisite: graduate standing. CSEG5033 Software Engineering II (FA, SP, SU) A study in software project design and management. The class defines and develops a semester project carrying out the planning, requirements analysis, software and systems design quality assurance, as well as software testing and maintenance. Prerequisite: CSEG 5023. CSEG5043 Real-Time Operating Systems (FA, SP, SU) A study and implementation of a real-time operating system for process control applications using a single board 68000-based microprocessor system. Prerequisite: graduate standing. CSEG5053 Real-Time Data Acquisition Systems (FA, SP, SU) The theory and practice associated with taking measurements of the real world for use with computers. Sampling and data analysis techniques. (Same as ELEG 5153) Prerequisite: ELEG 3923. CSEG5063 Computer Systems Optimization (FA, SP, SU) Design considerations and performance analysis of computer and communication systems modeling. (Same as ELEG 5963) Prerequisite: CSEG 2723. CSEG5083 Computer Communications Networks (FA, SP, SU) A study of various current data communication techniques used in the computer world. Concepts of digital communications theory as well as packets and protocols are studied. (Same as ELEG 5643) Prerequisite: CSEG 2533. CSEG5093 Fault-Tolerant Computing (FA, SP, SU) Considerations of both fault-tolerant hardware and software methodologies. Topics include error detection, protective redundancy, fault-tolerant software, measures of fault tolerance, and case studies. Prerequisite: graduate standing. CSEG510V Special Problems (1-6) (FA, SP, SU) Prerequisite: graduate standing. CSEG5203 Image Processing (FA, SP, SU) Concepts involved in the processing of digital images. Emphasis on image analysis, enhancement, and restoration. Both spatial and frequency domain approaches are presented. (Same as ELEG 5683) Prerequisite: working knowledge of statistics and a programming language. CSEG5213 Interactive Computer Graphics (FA, SP, SU) Basic concepts involved in the generation and display of computer graphics. Topics include graphics hardware, transformations, modeling, and device independent graphics. (Same as ELEG 5663) Prerequisite: working knowledge of a programming language. CSEG5303 Parallel Programming (FA, SP, SU) An analysis of parallel computer systems with respect to software engineering. Practical programming experience on pipelined, array, and multiprocessor computers. Credit can be earned in only one of these three courses. CSCI 5303 or CSEG 5303 or ELEG 5913. (Same as CSCI 5303, ELEG 5913) Prerequisite: working knowledge of 'C' language and CSEG 4513 or equivalent. CSEG5323 Automated Processing of Text-Based Data (FA, SP, SU) Survey of the field of automated text processing, from character recognition to on-line storage and processing. Includes current topics in the field. Prerequisite: CSEG 4553. CSEG5333 Knowledge-Based Systems (FA, SP, SU) Expert systems, structured knowledge representation, and rule-based inference systems. CSEG5801 Seminar (FA, SP, SU) Oral presentations given by graduate students on subjects dealing with current topics in computer science engineering. Prerequisite: graduate standing. CSEG581V Master's Research Project and Report (1-6) (FA, SP, SU) Required course for report option. Prerequisite: graduate standing. CSEG5923 Research Topics in Computer Architecture (FA, SP, SU) This course focuses on the design of new high performance central processing units (CPU'S). The design of superscalar, superpipelined, decoupled and multithreaded architectures will be covered. Course materials will be drawn from literature, and will represent the current state of the art. Prerequisite: CSEG 4983. CSEG5933 CAD Methods for VLSI (FA, SP, SU) Introduction to computational methods for the design and implementation of computer aided design (CAD) tools for digital systems engineering. The underlying theory of the tools is emphasized in addition to their application. (Same as ELEG 5933) Prerequisite: proficiency using a modern high-level programming language and CSEG 4983. CSEG5943 Computer Arithmetic Circuits (FA, SP, SU) Examination of fundamental principles of algorithms for performing arithmetic operations in computers. This course provides sufficient theoretical and practical information to prepare the digital design engineer with an awareness of basic techniques for the realization of arithmetic circuits. (Same as ELEG 5943) Pre- or Corequisite: CSEG 4983 or equivalent and graduate standing. CSEG5953 Real-time Systems (FA, SP, SU) A study of real-time system design. The development of real-time systems will be examined from the standpoint of academia, government, and industry. Scheduling, operating systems, and architecture considerations are among other topics to be covered. (Same as CSCI 5953) CSEG610V Master's Thesis (1-6) (FA, SP, SU) Prerequisite: graduate standing. CSEG700V Doctoral Dissertation (1-18) (FA, SP, SU) |