EECS 800: Special Topics (1-5) Advanced courses on special topics of current interest in electrical engineering, computer engineering, or computer science, given as the need arises. May be repeated for additional credit. Prerequisites: Variable |
EECS 801: Directed Graduate Readings (1-3) Graduate level directed readings on a topic in electrical engineering, computer engineering, or computer science, mutually agreed-on by the student and instructor. May be repeated for credit on another topic. Prerequisites: Consent of instructor |
EECS 802: EECS Colloquium (0.2) A colloquium series related to electrical engineering, computer engineering and computer science Course will be graded Satisfactory/Fail. Required for all EECS graduate students. Prerequisites: No Prerequisite. |
EECS 810: Principles of Software Engineering (3) Practical concepts of software engineering with a focus on managerial issues as well as formalism; modern software development process models; planning and management, requirements engineering, software architecture and design, quality assurance, testing, delivery and deployment; maintenance; ethics and professionalism; future of software engineering. Prerequisites: EECS 448 and EECS 560 or equivalent. Not open to students who have taken EECS 848. |
EECS 811: Software Project Management (3) Process management in the context of software development; building productive teams; measuring performance; management issues in the creation, development, and maintenance of software. Various estimate techniques, planning, risk analysis, project administration and configuration management; fundamentals of software process modeling and definition; process improvement, frameworks for quality software, process properties and measurements, capability maturity evaluation, validation and verification, applications of TQM and SQA to software process improvement Prerequisites: EECS 810 |
EECS 812: Software Requirements Engineering (3) Objectives, processes, and activities of requirements engineering and requirements management; characteristics of good requirements; types of requirements; managing changing requirements; languages, notations and methodologies; formal and semi-formal methods of presenting and validating the requirements; requirements standards; tracability issues. Prerequisites: EECS 810 |
EECS 814: Software Quality Assurance (3) Software quality engineering as an integral facet of development, from requirements through delivery, maintenance, and process improvement; how to carry out inspections, manual and automated static analysis techniques, fundamental concepts in software testing, verification, validation, test case selection, testing strategies such as black-box testing, white-box testing, integration testing, regression testing, systems testing, acceptance testing; design for testability, fundamental concepts in software integration, configuration management, models for quality assurance; documentation; industry and government standards for quality. Prerequisites: EECS 810 |
EECS 816: Object-Oriented Software Development (3) Abstract data types; domain modeling; modeling with objects; identifying and documenting classes and class associations; use case modeling, iterative and incremental development, object-oriented analysis and design; component-based software development; UML and the Unified Process, component reusability, design patterns, Object-Constraint Language (OCL), distributed object models such as CORBA; object refactoring Prerequisites: EECS 810 |
EECS 818: Software Architecture (3) Software architecture and design methodologies; architecture business life cycle; architectural styles; software architecture quality attributes; achieving architecture qualities; documenting software architectures; architecture description languages; architecture evaluation methodologies and tradeoff analysis; common architectural patterns; domain specific architectures Prerequisites: EECS 810 and EECS 816 |
EECS 819: Cryptography (3) Introduction to the mathematical background, basic concepts, components, and protocols to enforce secrecy, integrity, and privacy through cryptographic mechanisms. The concept of symmetric and asymmetric encryption, integrity verification, authentication, key establishment and update, and authorization. Emphasis on the design of protocols that apply and integrate various modules to achieve safety objectives: timestamping, digital signature, bit commitment, fair coin-flip, zero knowledge proof, oblivious transfer, and digital cash. The policies for key generation and management, information storage and access control, legal issues, and design of protocols for real applications. Prerequisites: EECS 268, linear algebra, and EECS 563 or EECS 780. |
EECS 821: Adaptive Antenna Arrays for Communications and Radar (3) Description and analysis of antenna arrays that have dynamically adjustable patterns. Topics include phased array antennas, digital beam forming in element and beam space; adaptive beam forming algorithms; error effects; relationship between multiple access schemes such as FDMA, TDMA, DCMA, and SDMA; mobile satellite, indoor, and radar applications; and current antenna, transceiver, and DSP technology Prerequisites: EECS 420, EECS 461, and EECS 744 or equivalent |
EECS 823: Microwave Remote Sensing (3) Description and analysis of basic microwave remote sensing systems including radars and radiometers as well as the scattering and emission properties of natural targets. Topics covered include plane wave propagation, antennas, radiometers, atmospheric effects, radars, calibrated systems, and remote sensing applications. Prerequisites: EECS 420 and EECS 622 |
EECS 824: Microwave Remote Sensing II (3) Description and analysis of basic microwave remote sensing systems including radars and radiometers as well as the scattering and emission properties of natural targets. Topics covered include measurement and discrimination, real-aperture side-looking airborne radars, synthetic-aperture side-looking airborne radar systems, scattering measurements, physical mechanisms and empirical models for scattering and emission. Prerequisites: EECS 823 |
EECS 825: Radar Systems (3) Description and analysis of radars of various types. Resolution in angle, range, and speed. Ambiguities. Return from point and area targets. Detection in the presence of noise and fading. Tracking and MTI. Amplitude measurement. Imaging radars. Prerequisites: EECS 360, EECS 420, and EECS 461 |
EECS 826: InSAR and Applications (3) Description and analysis of processing data from synthetic-aperture radars and interferometric synthetic-aperture radars. Topics covered include SAR basics and signal properties, range and azimuth compression, signal processing algorithms, interferometry and coregistration. Prerequisites: EECS 725 and 744 |
EECS 828: Advanced Fiber-Optic Communications (3) An advanced course in fiber-optic communications. The course will focus on various important aspects and applications of modern fiber-optic communications, ranging from photonic devices to systems and networks. Topics include: advanced semiconductor laser devices, external optical modulators, optical amplifiers, optical fiber nonlinearities and their impact in WDM and TDM optical systems, polarization effect in fiber-optic systems, optical receivers and high-speed optical system performance evaluation, optical soliton systems, lightwave analog video transmission, SONET & ATM optical networking and advanced multi-access lightwave networks. Prerequisites: EECS 628 or equivalent |
EECS 830: Advanced Artificial Intelligence (3) A detailed examination of computer programs and techniques that manifest intelligent behavior, with examples drawn from current literature. The nature of intelligence and intelligent behavior. Development of, improvement to, extension of, and generalization from artificially intelligent systems, such as theorem-provers, pattern recognizers, language analyzers, problem-solvers, question answerers, decision-makers, planners, and learners.
Prerequisites: Graduate standing in the EECS department or Cognitive Science or permission of the instructor.
|
EECS 833: Neural Networks and Fuzzy Systems (3) Fundamental theory of adaptive systems. Evolution of artificial neural networks and training algorithms. Pattern classification, function approximation, and system optimization Introduction to fuzzy set theory and neuro-fuzzy models for pattern classification. Application of neural networks in signal and image processing problems. Pattern classification for biological systems. Prerequisites: Graduate standing in the EECS department or permission of the instructor. |
EECS 835: Protein Bioinformatics (3) This course emphasizes the applications of computational algorithms to main problems in protein bioinformatics and molecular biology. A variety of topics, including protein sequence alignments, profiles, and protein structure classification and prediction, will be either introduced briefly or discussed in detail. Students will be asked to present some selected research papers Prerequisites: EECS 730 |
EECS 837: Data Mining (3) Extracting data from data bases to data warehouses. Preprocessing of data: handling incomplete, uncertain and vague data sets. Discretization methods. Methodology of learning from examples: rules of generalization and control strategies. Typical learning systems: ID3, AQ, C4.5 and LERS. Validation of knowledge. Visualization of knowledge bases. Data mining under uncertainty, using approaches based on probability theory, fuzzy set theory and rough set theory. Prerequisites: Graduate standing in CS or CoE or consent of instructor. |
EECS 838: Applications of Machine Learning in Bioinformatics (3) This course is introduction to the application of machine learning methods in bioinformatics. Major subjects include: biological sequence analysis, microarray interpretation, protein interaction analysis, and biological network analysis. Common biological and biomedical data types and related databases will also be introduced. Students will be asked to present some selected research papers. Prerequisites: EECS 730 and EECS 738 |
EECS 839: Mining Special Data (3) Problems associated with mining incomplete and numerical data. The MLEM2 algorithm for rule induction directly from incomplete and numerical data. Association analysis and the Apriori algorithm. KNN and other statistical methods. Mining financial data sets. Problems associated with imbalanced data sets and temporal data. Mining medical and biological data sets. Induction of rule generations. Validation of data mining: sensitivity, specificity, and ROC analysis. Prerequisites: Graduate standing in CS or CoE or consent of instructor |
EECS 841: Computer Vision (3) The objective of this course is to give students a hands on introduction to the fundamentals of computer vision. Topics include: Image Formation, Image Segmentation, Binary Image Analysis, Edge Detection, Line Drawing Interpretation, Shape from Shading, Motion Analysis, Stereo, Shape Representation, and Object Recognition. The objective of this course is to give students a hands-on introduction to the fundamentals of computer vision. Prerequisites: EECS 740 or equivalent |
EECS 842: Digital Video for Multimedia Systems (3) An introduction to digital video for multimedia systems. Topics include: basics of digital video, capture and non-linear editing, video feature detection (temporal segmentation, motion estimation), content based video classification, video compression techniques and standards (MPEG), video streaming, and multimedia applications. Digital video tools and techniques will be utilized in several programming projects. Prerequisites: EECS 740 or equivalent |
EECS 843: Programming Language Foundation II (3) This course presents advanced topics in programming language semantics. Fixed point types are presented followed by classes of polymorphism and their semantics. System F and type variables are presented along with universal and existential types. The lambda cube is introduced along with advanced forms of polymorphism. Several interpreters are developed implementing various type systems and associated type inference algorithms. Prerequisites: EECS 762 |
EECS 844: Digital Signal Processing II (3) Adaptive filtering, mathematics for advanced signal processing, cost function optimization, signal processing algorithms for optimum filtering and linear prediction, power spectrum estimation, steepest descent, adaptive algorithms. Prerequisites: EECS 744 |
EECS 848: Software Engineering II (3) This course is a continuation of the material presented in EECS 448 on the design and specification phase for production software. It includes a major project which will be carried out as a group effort. Students will be required to specify, design and document, and implement a major component of a combined project. Prerequisites: EECS 448 or equivalent. Not open to students who have taken EECS 810. |
EECS 849: Multiagent Systems (3) General concepts of multiagent systems: distributed problem solving, distributed searching, planning and truth maintenance, rational decision making in societies of agents, learning in multiagent systems, applications. Prerequisites: At least one class in Artificial Intelligence. |
EECS 853: Introduction to Reconfigurable Computing (3) This course presents an introduction to the field of reconfigurable computing. Topics covered include basic organization of reconfigurable logic devices, computational models, hw/sw co-design techniques, synthesis and run time systems for static and dynamic reconfiguration. Prerequisites: EECS 743 or equivalent. |
EECS 861: Random Signals and Noise (3) Fundamental concepts in random variables , random process models, power spectral density. Application of random process models in the analysis and design of signal processing systems, communication systems and networks. Emphasis on signal detection, estimation, and analysis of queues. This course is a prerequisite for most of the graduate level courses in radar signal processing, communication systems and networks. Prerequisites: An undergraduate course in probability and statistics, and signal processing. |
EECS 862: Digital Communication Systems (3) Introductory overview of digital communication systems operating over AWGN channels. Topics covered include information sources and source coding, modulation and demodulation, equalization, error control coding, and combined modulation and coding. Students will be required to a number of simulation projects. Prerequisites: EECS 861 or an equivalent graduate level course in random processes |
EECS 863: Analysis of Communication Networks (3) Modeling and analysis for performance prediction of communication networks. Topics include: an introduction to queuing theory; analysis of TDM systems; modeling and analysis of networks of queues; analysis of congestion and flow control algorithms; analysis of routing algorithms; analysis of bus and ring networks. Prerequisites: EECS 861 |
EECS 864: Multiwavelength Optical Networks (3) Introduce methodologies for multiwavelength optical network analysis, design, control and survivability. The focus of the course is formulating the problem in the design of optical networks and studying several design methodologies. The control and management of optical networks are introduced as well as related protocols. Prerequisites: EECS 563 |
EECS 865: Wireless Communication Systems (3) Mobile radio channels, models for multipath fading channels ( Rayleigh and Rician), communication techniques for multipath fading channels, OFDM and spread spectrum systems, diversity combining and RAKE receivers, cellular concepts (frequency reuse, and interference), multiple access techniques (FDMA, CDMA, and TDMA), examples of cellular radio and wireless LAN standards and systems (GSM, 3GPP, IEEE 801.11) Prerequisites: EECS 861 and EECS 862 |
EECS 867: Statistical Natural Language Processing (3) Statistical approaches to processing natural language text have become dominant in recent years. This course is introduction to statistical natural language processing (NLP). The course covers the theory and algorithms needed for building NLP tools. It provides broad but rigorous coverage of mathematical and linguistic foundations, as well as detailed discussion of statistical methods, allowing students to construct their own implementations. Topics include: word sense disambiguation, clustering, text classification, information retrieval, and other applications. Prerequisites: Fluency in programming and knowledge of basic statistics and probability. |
EECS 869: Error Control Coding (3) A study of communication channels and the coding problem. An introduction to finite fields and linear block codes such as cyclic, Hamming, Golay, BCH, and Reed-Solomon. Convolutional codes and the Viberbi algorithm are also covered. Other topics include trellis coded modulation, iterative (turbo) codes, LDPC codes. Prerequisites: EECS 862 |
EECS 881: High-Performance Networking (3) Comprehensive coverage of the discipline of high-bandwidth low-latency networks and communication, including high bandwidth-x-delay products, with an emphasis on principles, architecture, protocols, and system design. Topics include high-performance network architecture, control, and signaling; high-speed wired, optical, and wireless links; fast packet, IP, and optical switching; IP lookup, classification, and scheduling; network processors, end system design and protocol optimization, network interfaces; storage networks; end-to-end protocols, mechanisms, and optimizations; and high-bandwidth low-latency applications. Principles will be illustrated with many leading-edge and emerging protocols and architectures. Prerequisites: EECS 563 or EECS 780. |
EECS 882: Mobile Wireless Networking (3) Comprehensive coverage of the disciplines of mobile and wireless networking, with and emphasis on architecture and protocols. Topics include cellular telephony, MAC algorithms, wireless PANs, LANs, MANs, and WANs; wireless and mobile Internet; mobile ad hoc networking; mobility management, sensor networks; satellite networks; and ubiquitous computing. Prerequisites: EECS 563 or EECS 780 |
EECS 888: Internet Routing Architectures (3) A detailed study of routing in IP networks. Topics include evolution of the Internet architecture, IP services and network characteristics, an overview of routing protocols, the details of common interior routing protocols and interdomain routing protocols, and the relationship between routing protocols and implementation of policy. Issues will be illustrated through laboratories based on common routing platforms. Prerequisites: EECS 745 |
EECS 899: Master’s Thesis (1-6)
Prerequisites: |