2016-17 General Bulletin

frame image
frame image
Glennan Building (7071)
http://engineering.case.edu/eecs/
Phone: 216.368.2800; Fax: 216.368.6888
Kenneth A. Loparo, PhD, Professor and Chair

Electrical Engineering and Computer Science (EECS) spans a spectrum of topics from (i) materials, devices, circuits, and processors through (ii) control, signal processing, and systems analysis to (iii) software, computation, computer systems, and networking.  The EECS Department at Case Western Reserve supports four synergistic degree programs: Electrical Engineering, Computer Science, Computer Engineering, and Systems & Control Engineering. Each degree program leads to the Bachelor of Science degree at the undergraduate level. The department also offers a Bachelor of Arts in Computer Science for those students who wish to combine a technical degree with a broad education in the liberal arts. At the graduate level, the department offers the Master of Science and Doctor of Philosophy degrees in Electrical Engineering, Computer Engineering, Systems & Control Engineering, and Computing & Information Sciences (i.e., computer science). We offer minors in Electrical Engineering, Computer Science (BS and BA), Computer Engineering, Systems & Control Engineering, and also in Computer Gaming, Artificial Intelligence (AI), and Electronics.  For supplemental information to this bulletin as well as the latest updates, please visit the EECS Department web site at http://eecs.case.edu.

EECS is at the heart of modern technology.  EECS disciplines are responsible for the devices and microprocessors powering our computers and embedded into everyday devices, from cell phones and tablets to automobiles and airplanes.  Healthcare is increasingly building on EECS technologies: micro/nano systems, electronics/instrumentation, implantable systems, wireless medical devices, surgical robots, imaging, medical informatics, bioinformatics, system biology, and data mining and visualization.  The future of energy will be profoundly impacted by EECS technologies, from smart appliances connected to the Internet, smart buildings that incorporate distributed sensing and control, to the envisioned smart grid that must be controlled, stabilized, and kept secure over an immense network.  EECS drives job creation and starting salaries in our fields are consistently ranked in the top of all college majors.  Our graduates work in cutting-edge companies--from giants to start-ups, in a variety of technology sectors, including computer and internet, healthcare and medical devices, manufacturing and automation, automotive and aerospace, defense, finance, energy, and consulting. 

Department Structure

EECS at Case Western Reserve is organized internally into two informal divisions: (i) Computer Science (CS); and (ii) Electrical, Computer, and Systems Engineering (ECSE). The chair of EECS is Professor Kenneth Loparo.

Educational Philosophy

The EECS department is dedicated to developing high-quality graduates who will take positions of leadership as their careers advance. We recognize that the increasing role of technology in virtually every facet of our society, life, and culture makes it vital that our students have access to progressive and cutting-edge higher education programs. The program values for all of the degree programs in the department are:

  • mastery of fundamentals
  • creativity
  • social awareness
  • leadership skills
  • professionalism

Stressing excellence in these core values helps to ensure that our graduates are valued and contributing members of our global society and that they will carry on the tradition of engineering leadership established by our alumni.

Our goal is to graduate students who have fundamental technical knowledge of their profession and the requisite technical breadth and communications skills to become leaders in creating the new techniques and technologies which will advance their fields. To achieve this goal, the department offers a wide range of technical specialties consistent with the breadth of electrical engineering and computer science, including recent developments in the field. Because of the rapid pace of advancement in these fields, our degree programs emphasize a broad and foundational science and technology background that equips students for future developments. Our programs include a wide range of electives and our students are encouraged to develop individualized programs which can combine many aspects of electrical engineering and computer science.

Research

The research thrusts of the Electrical Engineering and Computer Science department include:

  1. Micro/Nano Systems
  2. Electronics and Instrumentation
  3. Robotics and Haptics
  4. Embedded Systems, including VLSI, FPGA
  5. Hardware Algorithms, Hardware Security, Testing/Verification
  6. Bioinformatics and Systems Biology
  7. Machine Learning and Data Mining
  8. Computer Networks and Distributed Systems
  9. Secure and Reliable Software
  10. Energy Systems, including Wind and Power Grid Management/Control
  11. Gaming, Simulation, Optimization
  12. Medical Informatics and Wireless Health

EECS participates in a number of groundbreaking collaborative research and educational programs, including the Microelectromechanical Systems Research Program, the Center for Computational Genomics, graduate program in Systems Biology and Bioinformatics, the Clinical & Translational Science Collaborative, the Great Lakes Energy Institute, and the VA Center for Advanced Platform Technology.

Electrical, Computer, and Systems Engineering Division

Marc Buchner, PhD
(Michigan State University)
Associate Professor
Computer gaming and simulation, virtual reality, software-defined radio, wavelets, joint time-frequency analysis

M. Cenk Cavusoglu, PhD
(University of California, Berkeley)
Professor
Robotics, systems and control theory, and human-machine interfaces; with emphasis on medical robotics, haptics, virtual environments, surgical simulation, and bio-system modeling and simulation

Vira Chankong, PhD
(Case Western Reserve University)
Associate Professor
Large-scale optimization; logic-based optimization; multi-objective optimization; optimization applications in radiation therapy treatment planning, medical imaging, manufacturing and production systems, and engineering design problems

Philip Feng, PhD
(California Institute of Technology)
Associate Professor
Nanoelectromechanical systems (NEMS), energy-efficient devices, advanced materials & devices engineering, bio/chemical sensors & biomedical microsystems, RF/microwave devices & circuits, low-noise measurement & precision instruments

Roberto Fernandez Galan, PhD
(Humboldt Universität)
Assistant Professor
Systems Biology, Signal Processing and Data Analysis, Computational Neuroscience and Electrophysiology

Mario Garcia-Sanz, DrEng
(University of Navarra, Spain)
Milton and Tamar Maltz Professor in Energy Innovation
Robust and nonlinear control, quantitative feedback theory, multivariable control, dynamic systems, systems modeling and identification; energy innovation, wind energy, spacecraft, electrical, mechanical, environmental and industrial applications

Evren Gurkan-Cavusoglu, PhD
(Middle East Technical University)
Assistant Professor
Systems and control theory, systems biology, computational biology, biological system modeling, signal processing applied to biological systems, signal processing

Mingguo Hong, PhD
Associate Professor
Power systems, electricity markets, operation research, optimization, smart grid

Ming-Chun Huang, PhD
(University of California, Los Angeles)
Assistant Professor
Health Informatics, HCI, Visualization

Richard Kolacinski, Ph.D.
(Case Western Reserve University)
Assistant Professor
Controls, Complex Systems

Gregory S. Lee, PhD
(University of Washington)
Assistant Professor
Haptic devices, including low-power design and effects on perception; applications to robotic surgery and telesurgery; secure teleoperation

Pan Li, PhD
(University of Florida)
Associate Professor
Networks, Cybersecurity, Big data, Cyber-phsyical systems, Bioinformatics

Wei Lin, PhD
(Washington University in St. Louis)
Professor
Nonlinear control, dynamic systems and homogeneous systems theory, H-infinity and robust control, adaptive control, system parameter estimation and fault detection, nonlinear control applications to under-actuated mechanical systems, biologically-inspired systems and systems biology

Kenneth A. Loparo, PhD
(Case Western Reserve University)
Nord Professor of Engineering and Chair of EECS
Stability and control of nonlinear and stochastic systems; fault detection, diagnosis, and prognosis; recent applications work in advanced control and failure detection of rotating machines, signal processing for the monitoring and diagnostics of physiological systems, and modeling, analysis, and control of power and energy systems

Behnam Malakooti, PhD, PE
(Purdue University)
Professor
Design and multi-objective optimization, manufacturing/production/operations systems, intelligent systems and networks, artificial neural networks, biological systems, intelligent decision making

Soumyajit Mandal, PhD
(Massachusetts Institute of Technology)
Assistant Professor
Integrated Circuits and Systems, Nuclear Magnetic Resonance (NMR) Sensors

Mehran Mehregany, PhD
(Massachusetts Institute of Technology)
Goodrich Professor of Engineering Innovation
Research and development at the intersections of micro/nano-electro-mechanical systems, semiconductor silicon carbide and integrated circuits

Francis "Frank" L. Merat, PhD, PE
(Case Western Reserve University)
Associate Professor
Computer and robot vision, digital image processing, sensors, titanium capacitors and power electronics; RF and wireless systems; optical sensors; engineering education

Pedram Mohseni, PhD
(University of Michigan)
Professor
Biomedical microsystems, bioelectronics, wireless neural interfaces, CMOS interface circuits for MEMS, low-power wireless sensing/actuating microsystems

Wyatt S. Newman, PhD, PE
(Massachusetts Institute of Technology)
Professor
Mechatronics, high-speed robot design, force- and vision-based machine control, artificial reflexes for autonomous machines, rapid prototyping, agile manufacturing, mobile robotic platforms

Christos Papachristou, PhD
(Johns Hopkins University)
Professor
VLSI design and CAD, computer architecture and parallel processing, design automation, embedded system design

Marija Prica, PhD
(Carnegie Mellon University)
Assistant Professor
Energy, Optimization, Protection

Daniel Saab, PhD
(University of Illinois at Urbana-Champaign)
Associate Professor
Computer architecture, VLSI system design and test, CAD design automation

Sree N. Sreenath, PhD
(University of Maryland)
Professor
Systems biology complexity research (modeling, structural issues, and simulation); cell signaling, population behavior, and large-scale behavior; global issues and sustainable development

Hongping Zhao, PhD
(Lehigh University)
Assistant Professor
Applied physics of semiconductor optoelectronics materials and devices, physics of semiconductor nanostructures, and semiconductors for light emitting diodes, lasers, and energy applications; emphasis on III-Nitride semiconductors

Christian A. Zorman, PhD
(Case Western Reserve University)
Professor
Materials and processing techniques for MEMS and NEMS, wide bandgap semiconductors, development of materials and fabrication techniques for polymer-based MEMS and bioMEMS


Computer Science Division

Harold S. Connamacher, PhD
(University of Toronto)
Assistant Professor
Constraint satisfaction problems, graph theory, random structures, and algorithms

Chris Fietkiewicz, PhD
(Case Western Reserve University)
Assistant Professor
Applied and theoretical neuroscience, neuronal modeling, signal processing and signal analysis, electrophysiology, applications to epilepsy and respiratory control

Mehmet Koyuturk, PhD
(Purdue University)
Associate Professor
Bioinformatics and computational biology, computational modeling and algorithm development for systems biology, integration, mining and analysis of biological data, algorithms for distributed systems

Michael Lewicki, PhD
(California Institute of Technology)
Professor
Computational perception and scene analysis, visual representation and processing, auditory representation and analysis

Jing Li, PhD
(University of California, Riverside)
Professor
Computational biology and bioinformatics, statistical genomics and functional genomics, systems biology, algorithms

Vincenzo Liberatore, PhD
(Rutgers University)
Associate Professor
Distributed systems, Internet computing, randomized algorithms

Gultekin Ozsoyoglu, PhD
(University of Alberta, Canada)
Professor
Graph databases and data mining problems in metabolic networks, metabolomics, and systems biology, bioinformatics, web data mining

Z. Meral Ozsoyoglu, PhD
(University of Alberta, Canada)
Andrew R. Jennings Professor of Computing
Database systems, database query languages and optimization, data models, index structures, bioinformatics, medical informatics

H. Andy Podgurski, PhD
(University of Massachusetts, Amherst)
Professor
Software engineering methodology and tools, especially use of data mining, machine learning, and program analysis techniques in software testing, fault detection and localization, reliable engineering and software security, electronic mediacal records, privacy

Michael Rabinovich, PhD
(University of Washington)
Professor
Computer networks, Internet performance evaluation, databases, utility computing

Soumya Ray, PhD
(University of Wisconsin, Madison)
Associate Professor
Artificial intelligence, machine learning, reinforcement learning, automated planning, applications to interdisciplinary problems including medicine and bioinformatics


Research Faculty

Michael Fu, PhD
(Case Western Reserve University)
Research Assistant Professor
Neuro-rehabilitation and motor-relearning, with emphasis on virtual environments, neuromuscular electrical stimulation, robotics, psychophysics, haptic interfaces, and brain-machine interfaces

Farhad Kaffashi, PhD
(Case Western Reserve University)
Research Assistant Professor
Signal processing of physiological time series data, systems and control


Active Emeritus Faculty

George W. Ernst, PhD
(Carnegie Institute of Technology)
Emeritus Professor
Learning problem solving strategies, artificial intelligence, expert systems, program verification

Dov Hazony, PhD
(University of California, Los Angeles)
Emeritus Professor
Network synthesis, ultrasonics, communications

Wen H. Ko, PhD
(Case Institute of Technology)
Emeritus Professor
Solid state electronics, micro and nano sensors, biomedical instrumentation, implant telemetry

Mihajlo D. Mesarovic, PhD
(University of Belgrade)
Emeritus Professor
Complex systems theory, global issues and sustainable development, systems biology

Lee J. White, PhD
(University of Michigan)
Emeritus Professor
Software testing: regression testing, GUI testing, specification-based testing, testing of object-oriented software


Adjunct Faculty Appointments

Michael Adams, PhD
(Case Western Reserve University)
Adjunct Assistant Professor

Mark A. Allman, MSEE
(Ohio University)
Adjunct Instructor

Mahdi Cheraghchi Bashi Astaneh, Ph.D.
(Swiss Federal Institute of Technology)
Adjunct Assistant Professor

Gurkan Bebek, Ph.D.
(Case Western Reserve University)
Adjunct Instructor

Swarup Bhunia, Ph.D.
(Purdue University)
Adjunct Associate Professor

Michael S. Branicky, ScD, PE
(Massachusetts Institute of Technology)
Adjunct Professor

Edwin Burwell, Ph.D.
(Case Western Reserve University)
Adjunct Instructor

Licong Cui, Ph.D.
(Case Western Reserve University)
Adjunct Assistant Professor

Lev Gonick, Ph.D.
(York University, Toronto)
Adjunct Professor

John C. Hoag, Ph.D.
(The Ohio State University)
Adjunct Associate Professor

Suparerk Janjarasjitt, PhD
(Case Western Reserve University)
Adjunct Assistant Professor

David Kazdan, Ph.D.
(Case Western Reserve University)
Adjunct Assistant Professor

John R. Miller, Ph.D.
(Massachusetts Institute of Technology)
Adjunct Professor

Srinivas Raghavan, PhD
(Ohio State University)
Adjunct Professor

Gideon Samid, PhD
(Israel Institute of Technology)
Adjunct Assistant Professor

Shivakumar Sastry, PhD
(Case Western Reserve University)
Adjunct Associate Professor

William L. Schultz, PhD, PE
(Case Western Reserve University)
Adjunct Associate Professor

Marvin S. Schwartz, PhD
(Case Western Reserve University)
Adjunct Professor

Lawrence Sears
(Case Western Reserve University)
Adjunct Instructor

Amit Sinha, PhD
(Case Western Reserve University)
Adjunct Assistant Professor

Peter J. Tsivitse, PhD
(Case Western Reserve University)
Adjunct Professor

Francis G. Wolff, Ph.D.
(Case Western Reserve University)
Adjunct Associate Professor

Olaf Wolkenhauer, PhD
(UMIST, Manchester)
Adjunct Professor

Qing-rong Jackie Wu, PhD
(Mayo Graduate School)
Adjunct Associate Professor

Guo-Qiang "GQ" Zhang, Ph.D.
(Cambridge University)
Adjunct Professor

Xiang Zhang, PhD
(University of North Carolina at Chapel Hill)
Adjunct Associate Professor


Secondary Faculty Appointments

Alexis R. Abramson, PhD
(University of California, Berkeley)
Professor, Mechanical and Aerospace Engineering

Jeffrey L. Duerk, Ph.D.
(Case Western Reserve University)
Dean and Leonard Case Professor of Engineering

Dominique Durand, Ph.D.
(University of Toronto)
Secondary Professor

Mark Griswold, PhD
(University of Würzburg, Germany)
Professor, Radiology

Thomas LaFramboise, PhD
(University of Illinois)
Associate Professor, Genetics

Anant Madabhushi, Ph.D.
(University of Pennsylvania)
Secondary Professor

Roger D. Quinn, PhD
(Virginia Polytechnic Institute and State University)
Professor, Mechanical and Aerospace Engineering

Satya S. Sahoo, PhD
(Wright State University)
Assistant Professor, Center for Clinical Investigations

Nicole Sieberlich, PhD
(University of Wurzburg, Germany)
Assistant Professor, Biomedical Engineering

Peter Thomas, PhD
(University of Chicago)
Associate Professor, Mathematics, Applied Mathematics, and Statistics

Xiong (Bill) Yu, PhD, PE
(Purdue University)
Professor, Civil Engineering

Data Science and Analytics  I  Electrical Engineering  |  Systems and Control Engineering  |  Computer Engineering  |  Computer Science 

Undergraduate Programs

The EECS department offers programs leading to degrees in:

  1. Data Science and Analytics (B.S.)
  2. Electrical Engineering (B.S.)
  3. Systems and Control Engineering (B.S.)
  4. Computer Engineering (B.S.)
  5. Computer Science (B.S., B.A.)

These programs provide students with a strong background in the fundamentals of mathematics, science, and engineering. Students can use their technical and open electives to pursue concentrations in bioelectrical engineering, complex systems, automation and control, digital systems design, embedded systems, micro/nano systems, robotics and intelligent systems, signal processing and communications, and software engineering. In addition to an excellent technical education, all students in the department are exposed to societal issues, ethics, professionalism, and have the opportunity to develop leadership and creativity skills.

The Bachelor of Science degree programs in Computer Engineering, Electrical Engineering, and Systems and Control Engineering are accredited by the Engineering Accreditation Commission of ABET, www.abet.org.

The Bachelor of Science degree program in Computer Science is accredited by the Computing Accreditation Commission of ABET, www.abet.org.


Data Science and Analytics

The Bachelor of Science program in data science and analytics provides our students with a broad foundation in the field and the instruction, skills, and experience needed to understand and handle large amounts of data that transform thinking about a collection of vast amounts of data into one that focuses on the data’s conversion to actionable information.  The degree program has a unique focus on real-world data and real-world applications.

This major is one of the first undergraduate programs nationwide with a unique curriculum that includes mathematical modeling, informatics, data analytics, visual analytics and project-based applications - all elements of the future emerging field of data science.

An undergraduate minor in data science and analytics is administered in the Materials Science and Engineering Department. 

Bachelor of Science in Data Science and Analytics

In addition to university general education requirements, the major requires the following courses:

Major Requirements

CHEM 111Principles of Chemistry for Engineers4
DSCI 133Introduction to Data Science and Engineering for Majors3
DSCI 234Structured and Unstructured Data3
DSCI 341Introduction to Databases: DS Major3
DSCI 342Introduction to Data Science Systems3
DSCI 343Introduction to Data Analysis3
DSCI 344Scalable Parallel Data Analysis3
DSCI 345Files, Indexes and Access Structures for Big Data3
EECS 132Introduction to Programming in Java3
EECS 302Discrete Mathematics3
EECS 340Algorithms3
EECS 393Software Engineering3
ENGL 398Professional Communication for Engineers2
ENGR 398Professional Communication for Engineers1
MATH 201Introduction to Linear Algebra for Applications3
MATH 121Calculus for Science and Engineering I4
MATH 122Calculus for Science and Engineering II4
MATH 123Calculus I4
MATH 224Elementary Differential Equations3
PHYS 121General Physics I - Mechanics4
PHYS 122General Physics II - Electricity and Magnetism4

Core courses provide our students with a strong background in signal processing, systems, and analytics. Students are required to develop depth in at least one of the following technical areas: signal processing, systems, and analytics. Each data science and analytic student must complete the following requirements

Technical Elective Requirement

Each student must complete 8 courses (24 credit-hours) of approved technical electives. Technical electives shall be chosen to fulfill the probability/statistics elective (1 course), the computer and data security elective (1 course), the depth requirement (3 courses), and (3 courses) otherwise chosen to increase the student’s understanding of data science and analytics. Technical electives not used to satisfy the probability/statistics elective, the computer and data security elective, or the depth requirement are more generally defined as any course related to the principles and practice of data science and analytics. This includes all DSCI courses at the 200 level and above and can include courses from other programs. All non-DSCI technical electives must be approved by the student’s academic advisor.

Depth Requirement

Each student must show a depth of competence in one technical area by taking at least three courses from one of the following three areas. Additional courses, beyond those that are listed, may be approved by the student’s academic advisor.

Area I: Signal Processing
EECS 246Signals and Systems4
EECS 313Signal Processing3
STAT 332Statistics for Signal Processing3
Area II: Systems
EECS 325Computer Networks I3
or EECS 425 Computer Networks I
EECS 338Intro to Operating Systems and Concurrent Programming4
EECS 600Special Topics ( Cloud Computing)1 - 18
Area III: Analytics
DSCI 390Machine Learning for Big Data3
DSCI 391Data Mining for Big Data3
EECS 339Web Data Mining3
EECS 346Engineering Optimization3
EECS 440Machine Learning3
EECS 442Causal Learning from Data3

Computer and Data Security Elective Requirement

EECS 444Computer Security3
MATH 408Introduction to Cryptology3

Statistics Requirement

MATH 380Introduction to Probability3
STAT 325Data Analysis and Linear Models3

Design Requirement

DSCI 398 Engineering Projects I
DSCI 399 Engineering Projects II

Suggested Program of Study: Bachelor of Science in Data Science and Analytics

The following is a suggested program of study.  Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Principles of Chemistry for Engineers (CHEM 111)4  
Calculus for Science and Engineering I (MATH 121)4  
Introduction to Programming in Java (EECS 132)3  
PHED (2 half semester courses)*0  
SAGES University Seminar*  3
General Physics I - Mechanics (PHYS 121)  4
Calculus for Science and Engineering II (MATH 122)  4
Introduction to Data Science and Engineering for Majors (DSCI 133)  3
PHED (2 half semester courses)*  0
Open Elective  3
Year Total: 15 17
 
Second YearUnits
FallSpring
SAGES University Seminar*3  
General Physics II - Electricity and Magnetism (PHYS 122)4  
Calculus for Science and Engineering III (MATH 223)3  
Structured and Unstructured Data (DSCI 234)3  
Discrete Mathematics (EECS 302)3  
Introduction to Databases: DS Major (DSCI 341)  3
Elementary Differential Equations (MATH 224)  3
Algorithms (EECS 340)  3
HM/SS elective  3
Probability/Statistics Electivea  3
Year Total: 16 15
 
Third YearUnits
FallSpring
Introduction to Data Science Systems (DSCI 342)3  
Software Engineering (EECS 393)3  
HM/SS elective3  
Introduction to Data Analysis (DSCI 343)3  
Introduction to Linear Algebra for Applications (MATH 201)3  
Professional Communication for Engineers (ENGL 398)  2
Professional Communication for Engineers (ENGR 398)  1
Scalable Parallel Data Analysis (DSCI 344)  3
Computer and Data Security Electiveb  3
Files, Indexes and Access Structures for Big Data (DSCI 345)  3
Technical Electived  3
Year Total: 15 15
 
Fourth YearUnits
FallSpring
Technical Electived3  
Technical Electivec3  
DSCI 398 Senior Project I4  
Technical electivec3  
HM/SS elective3  
HM/SS elective  3
DSCI Technical electivec  3
DSCI 399 Senior Project II  4
Technical electived  3
Open elective  3
Year Total: 16 16
 
Total Units in Sequence:  125
*

University general education requirement 

a

 Probability and statistics elective (MATH 380, STAT 325)

b

 Computer and data security elective (EECS 444, MATH 408)

c

Technical electives in signal processing, systems, and analytics (see lists of approved courses under program requirements)

d

Technical electives 


Electrical Engineering

The Bachelor of Science program in electrical engineering provides our students with a broad foundation in electrical engineering through combined classroom and laboratory work, and prepares our students for entering the profession of electrical engineering, as well as for further study at the graduate level.

Mission

The educational mission of the electrical engineering program is to graduate students who have fundamental technical knowledge of their profession and the requisite technical breadth and communications skills to become leaders in creating the new techniques and technologies that will advance the general field of electrical engineering.

Program Educational Objectives

  1. Graduates will be successful professionals obtaining positions appropriate to their background, interests, and education.
  2. Graduates will use continuous learning opportunities to improve and enhance their professional skills.
  3. Graduates will demonstrate leadership in their profession.

Student Outcomes

As preparation for achieving the above educational objectives, the BS degree program in Electrical Engineering is designed so that students attain:

  • an ability to apply knowledge of mathematics, science, and engineering
  • an ability to design and conduct experiments, as well as to analyze and interpret data
  • an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
  • an ability to function on multi-disciplinary teams
  • an ability to identify, formulate, and solve engineering problems
  • an understanding of professional and ethical responsibility
  • an ability to communicate effectively
  • the broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
  • a recognition of the need for, and an ability to engage in life-long learning
  • a knowledge of contemporary issues
  • an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Core courses provide our students with a strong background in signals and systems, computers, electronics (both analog and digital), and semiconductor devices. Students are required to develop depth in at least one of the following technical areas: signals and systems, solid state, computer hardware, computer software, control, circuits, robotics, and biomedical applications. Each electrical engineering student must complete the following requirements.

Bachelor of Science in Engineering

Major in Electrical Engineering

In addition to engineering general education requirements and university general education requirements, the major requires the following courses:

Major Requirements

EECS 245Electronic Circuits4
EECS 246Signals and Systems4
EECS 281Logic Design and Computer Organization4
EECS 309Electromagnetic Fields I3
EECS 313Signal Processing3
EECS 321Semiconductor Electronic Devices4

Core courses provide our students with a strong background in signals and systems, computers, electronics (both analog and digital), and semiconductor devices. Students are required to develop depth in at least one of the following technical areas: signals and systems, solid state, computer hardware, computer software, control, circuits, robotics, and biomedical applications. Each electrical engineering student must complete the following requirements

Technical Elective Requirement

Each student must complete eighteen (18) credit-hours of approved technical electives. Technical electives shall be chosen to fulfill the depth requirement (see next) and otherwise increase the student’s understanding of electrical engineering. Technical electives not used to satisfy the depth requirement are more generally defined as any course related to the principles and practice of electrical engineering. This includes all EECS courses at the 200 level and above and can include courses from other programs. All non-EECS technical electives must be approved by the student’s academic advisor.

Depth Requirement

Each student must show a depth of competence in one technical area by taking at least three courses from one of the following eight areas. This depth requirement may be met using a combination of the above core courses and a selection of open and technical electives.

Area I: Signals & Systems
EECS 246Signals and Systems4
EECS 313Signal Processing3
EECS 351Communications and Signal Analysis3
EECS 354Digital Communications3
Area II: Computer Software
EECS 233Introduction to Data Structures4
EECS 337Compiler Design4
EECS 338Intro to Operating Systems and Concurrent Programming4
EECS 393Software Engineering3
Area III: Solid State
PHYS 221Introduction to Modern Physics3
EECS 321Semiconductor Electronic Devices4
EECS 322Integrated Circuits and Electronic Devices3
EECS 415Integrated Circuit Technology I3
Area IV: Control
EECS 304Control Engineering I with Laboratory3
EECS 346Engineering Optimization3
EECS 374Advanced Control and Energy Systems3
EECS 375Applied Control3
Area V: Circuits
EECS 245Electronic Circuits4
EBME 310Principles of Biomedical Instrumentation3
EECS 326Instrumentation Electronics3
EECS 344Electronic Analysis and Design3
EECS 371Applied Circuit Design4
EECS 426MOS Integrated Circuit Design3
Area VI: Computer Hardware
EECS 281Logic Design and Computer Organization4
EECS 301Digital Logic Laboratory2
EECS 314Computer Architecture3
EECS 315Digital Systems Design4
EECS 316Computer Design3
EECS 318VLSI/CAD4
Area VII: Biomedical Applications
EBME 201Physiology-Biophysics I (and 2 of the following 4 courses)3
EBME 310Principles of Biomedical Instrumentation3
EBME 320Medical Imaging Fundamentals3
EBME 327Bioelectric Engineering3
EBME 401DBiomedical Instrumentation and Signal Processing3
Area VIII:  Robotics
EECS 246Signals and Systems4
EECS 304Control Engineering I with Laboratory3
EECS 376Mobile Robotics4
EECS 489Robotics I3

Statistics Requirement

STAT 332Statistics for Signal Processing *3
*

STAT 333 Uncertainty in Engineering and Science may be substituted with approval of advisor

Design Requirement

EECS 398Engineering Projects I4
EECS 399Engineering Projects II3

In consultation with a faculty advisor, a student completes the program by selecting technical and open elective courses that provide in-depth training in one or more of a spectrum of specialties, such as, control, signal processing, electronics, integrated circuit design and fabrication, and robotics. With the approval of the advisor a student may emphasize other specialties by selecting elective courses from other programs or departments.

Additionally, math and statistics classes are highly recommended as an integral part of the student's technical electives to prepare for work in industry and government and for graduate school. The following math/statistics classes are recommended and would be accepted as approved technical electives:

- MATH 201 - Introduction to Linear Algebra

- MATH 330 - Introduction to Scientific Computing

- MATH 380 - Introduction to Probability

- STAT 412 - Statistics for Design in Engineering and Science

Other Math/Statistics may be used as technical electives with the approval of the student's academic advisor.

Many courses have integral or associated laboratories in which students gain “hands-on” experience with electrical engineering principles and instrumentation. Students have ready access to the teaching laboratory facilities and are encouraged to use them during nonscheduled hours in addition to the regularly scheduled laboratory sessions. Opportunities also exist for undergraduate student participation in the wide spectrum of research projects being conducted in the department.

Bachelor of Science in Engineering

Suggested Program of Study: Major in Electrical Engineering

The following is a suggested program of study.  Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Principles of Chemistry for Engineers (CHEM 111)**4  
Calculus for Science and Engineering I (MATH 121)**4  
Elementary Computer Programming (ENGR 131)**3  
Open elective 3  
PHED (2 half semester courses)*0  
SAGES University Seminar*  3
General Physics I - Mechanics (PHYS 121)**,b  4
Calculus for Science and Engineering II (MATH 122)**  4
Chemistry of Materials (ENGR 145)**  4
PHED (2 half semester courses)*  0
Year Total: 18 15
 
Second YearUnits
FallSpring
General Physics II - Electricity and Magnetism (PHYS 122)**,b4  
Calculus for Science and Engineering III (MATH 223)**3  
Introduction to Circuits and Instrumentation (ENGR 210)**4  
Logic Design and Computer Organization (EECS 281)4  
SAGES University Seminar*  3
Thermodynamics, Fluid Dynamics, Heat and Mass Transfer (ENGR 225)**  4
Elementary Differential Equations (MATH 224)**  3
Electronic Circuits (EECS 245)  4
Electromagnetic Fields I (EECS 309)  3
Year Total: 15 17
 
Third YearUnits
FallSpring
HM/SS elective**,a3  
Statics and Strength of Materials (ENGR 200)**3  
Signals and Systems (EECS 246)4  
Statistics for Signal Processing (STAT 332)c3  
Approved technical electived3  
HM/SS elective**,a  3
Semiconductor Electronic Devices (EECS 321)  4
Signal Processing (EECS 313)  3
Approved technical electived  3
Professional Communication for Engineers (ENGL 398)**  2
Professional Communication for Engineers (ENGR 398)**  1
Year Total: 16 16
 
Fourth YearUnits
FallSpring
HM/SS elective**,a3  
Engineering Projects I (EECS 398)f4  
Approved technical electived3  
Approved technical electived3  
Open elective3  
HM/SS elective**,a  3
Engineering Projects II (EECS 399)  3
Approved technical electived  3
Approved technical electived  3
Open elective  3
Year Total: 16 15
 
Total Units in Sequence:  128

Hours Required for Graduation: 128g

*

University general education requirement 

**

Engineering general education requirement 

a

Humanities/Social Science course

b

Selected students may be invited to take PHYS 123 Physics and Frontiers I - Mechanics and PHYS 124 Physics and Frontiers II - Electricity and Magnetism in place of PHYS 121 General Physics I - Mechanics and PHYS 122 General Physics II - Electricity and Magnetism.

c

Students may replace STAT 332 Statistics for Signal Processing with STAT 333 Uncertainty in Engineering and Science if approved by their advisor.

d

Technical electives will be chosen to fulfill the depth requirement and otherwise increase the student’s understanding of electrical engineering. Courses used to satisfy the depth requirement must come from the department’s list of depth areas and related courses. Technical electives not used to satisfy the depth requirement are more generally defined as any course related to the principles and practice of electrical engineering. This includes all EECS courses at the 200 level and above, and can include courses from other programs. All non-EECS technical electives must be approved by the student’s advisor.

e

B.S./M.S. students may double count EECS 651 M.S. Thesis to fulfill the EECS 399 requirement.

f

CO-OP students may obtain design credit for EECS 399 if their co-op assignment included significant design responsibility; however, the student is still responsible for such course obligations as reports, presentations, and ethics assignments. Design credit and fulfillment of remaining course responsibilities are arranged through the course instructor.

g

 At least 10 of the 14 required Electrical Engineering courses (EECS 281, 245, 246, 309, 313, 321, 398, 399 and the six technical electives) in the Electrical Engineering B.S. program must be satisfied by courses in the EECS department.

Dual Major: Electrical Engineering & Systems and Control Engineering

From Electrical Engineering (EE) to Systems and Control Engineering (S&CE):  EE students can earn a double major with S&CE by taking the following ten courses as Technical and Open Electives in the EE program:

EECS 216Fundamental System Concepts (S&CE)3
EECS 304Control Engineering I with Laboratory (EE, Area IV: Control), and (SC&E)3
EECS 305Control Engineering I Laboratory (This is the additional 1 credit-hour course needed (S&CE))1
EECS 324Modeling and Simulation of Continuous Dynamical Systems (S&CE)3
EECS 342Introduction to Global Issues (S&CE)3
EECS 346Engineering Optimization (EE, Area IV: Control), and (SC&E)3
EECS 352Engineering Economics and Decision Analysis (S&CE)3
EECS 375Applied Control (EE, Area IV: Control), and (SC&E)3
MATH 201Introduction to Linear Algebra for Applications (S&CE)3
OPRE 432Computer Simulation (S&CE)3

Cooperative Education Program in Electrical Engineering

Opportunities are available for students to alternate studies with work in industry or government as a co-op student, which involves paid full-time employment over seven months (one semester and one summer). Students may work in one or two co-ops, beginning in the third year of study. Co-ops provide students the opportunity to gain valuable hands-on experience in their field by completing a significant engineering project while receiving professional mentoring. During a co-op placement, students do not pay tuition, but maintain their full-time student status while earning a salary. Learn more at engineering.case.edu/coop. Alternatively or additionally, students may obtain employment as summer interns.

BS/MS Program in Electrical Engineering

The department encourages highly motivated and qualified students to apply for admission to the five-year BS/MS Program in the junior year. This integrated program, which permits up to 9 credit hours of graduate level coursework to be counted towards both BS and MS degree requirements (including an option to substitute MS thesis work for EECS 399, the second senior project). It also offers the opportunity to complete both the Bachelor of Science in Engineering and Master of Science degrees within five years.

Minor in Electrical Engineering

Students enrolled in degree programs in other engineering departments can have a minor specialization by completing the following courses:

EECS 245Electronic Circuits4
EECS 246Signals and Systems4
EECS 281Logic Design and Computer Organization4
EECS 309Electromagnetic Fields I3
Approved technical elective3
Total Units18

Minor in Electronics

The department also offers a minor in electronics for students in the College of Arts and Sciences. This program requires the completion of 31 credit hours, of which 10 credit hours may be used to satisfy portions of the students’ skills and distribution requirements. The following courses are required for the electronics minor:

MATH 125Math and Calculus Applications for Life, Managerial, and Social Sci I4
MATH 126Math and Calculus Applications for Life, Managerial, and Social Sci II4
PHYS 115Introductory Physics I4
PHYS 116Introductory Physics II4
ENGR 131Elementary Computer Programming3
ENGR 210Introduction to Circuits and Instrumentation4
EECS 246Signals and Systems4
EECS 281Logic Design and Computer Organization4
Total Units31

Systems and Control Engineering

The Bachelor of Science program in systems and control engineering provides our students with the basic concepts, analytical tools, and engineering methods which are needed in analyzing and designing complex technological and non-technological systems. Problems relating to modeling, simulation, decision-making, control, and optimization are studied. Some examples of systems problems which are studied include: modeling and analysis of complex biological systems, computer control of industrial plants, developing world models for studying environmental policies, and optimal planning and management in large-scale systems. In each case, the relationship and interaction among the various components of a given system must be modeled. This information is used to determine the best way of coordinating and regulating these individual contributions to achieve the overall goal of the system.

Mission

The mission of the Systems and Control Engineering program is to provide internationally recognized excellence for graduate and undergraduate education and research in systems analysis, design, and control. These theoretical and applied areas require cross-disciplinary tools and methods for their solution.

Program Educational Objectives

1. Graduates will have applied systems methodology to multi-disciplinary projects that include technical, social, environmental, political, and/or economic factors.

2. Graduates will use systems understanding, critical thinking and problem solving skills to analyze and design engineering systems or processes that respond to technical and societal needs as demonstrated by their measured professional accomplishments in industry, government and research.

3. Graduates will facilitate multidisciplinary projects that bring together practitioners of various engineering fields in an effective, professional, and ethical manner as demonstrated by their teamwork, leadership, communication, and management skills.

The Systems and Control Engineering Program Faculty is interested in receiving constructive feedback about our Program Educational Objectives - please email your comments to the Department Chair: Professor Kenneth Loparo  - in your email please indicate your point of view in providing this input, e.g. current systems and control engineering student at CWRU, employer of systems and control engineering students, potential systems and control engineering student, alumni of systems and control engineering here at CWRU, etc.

Student Outcomes

  • an ability to apply knowledge of mathematics, science, and engineering
  • an ability to design and conduct experiments, as well as to analyze and interpret data
  • an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
  • an ability to function on multi-disciplinary teams
  • an ability to identify, formulate, and solve engineering problems
  • an understanding of professional and ethical responsibility
  • an ability to communicate effectively
  • the broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
  • a recognition of the need for, and an ability to engage in life-long learning
  • a knowledge of contemporary issues
  • an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

The B.S. degree program in Systems and Control Engineering is accredited by the Engineering Accreditation Commission of ABET, www.abet.org.

Bachelor of Science in Engineering

Major in Systems and Control Engineering

In addition to engineering general education requirements and university general education requirements, the major requires the following courses:

Major Requirements

EECS 216Fundamental System Concepts3
EECS 246Signals and Systems4
EECS 304Control Engineering I with Laboratory3
EECS 305Control Engineering I Laboratory1
EECS 313Signal Processing3
EECS 324Modeling and Simulation of Continuous Dynamical Systems3
EECS 342Introduction to Global Issues3
EECS 346Engineering Optimization3
EECS 352Engineering Economics and Decision Analysis3
OPRE 432Computer Simulation3
EECS 399Engineering Projects II3

Fifteen hours of approved technical electives including at least 9 hours of approved courses to constitute a depth of study

Breadth Requirement

MATH 201Introduction to Linear Algebra for Applications3
STAT 332Statistics for Signal Processing3

Statistics Requirement

STAT 332Statistics for Signal Processing *3
*

STAT 333 Uncertainty in Engineering and Science may be substituted with approval of advisor

Design Requirement

EECS 398Engineering Projects I4

Depth Requirement

Each student must show a depth of competence in one technical area by taking at least three courses from one of the three tracks/program concentration areas, namely energy systems, control systems and data analytics, listed below:

Track 1: Energy Systems
EECS 368Power System Analysis I3
EECS 369Power System Analysis II3
EECS 370Smart Grid3
EECS 374Advanced Control and Energy Systems3
EECS 375Applied Control3
EECS 281Logic Design and Computer Organization4
Track 2: Control Systems
EECS 375Applied Control3
EECS 374Advanced Control and Energy Systems3
EECS 281Logic Design and Computer Organization4
Technical Elective from the Energy Systems or Data Analytics tracks3
Track 3: Data Analytics
  • EECS 3xx Introduction to Data Analytics (Required - in development)
  • "Core Tools" list:
EECS 339Web Data Mining3
STAT 325Data Analysis and Linear Models3
STAT 326Multivariate Analysis and Data Mining3
EECS 435Data Mining3
EECS 452Random Signals3
EPBI 430Design and Analysis of High-Dimensional Data3
EECS 490Digital Image Processing3
OPRE 433Foundations of Probability and Statistics3
  • "Application" lists:

Business/Manufacturing Analytics:

EECS 350Operations and Systems Design3
EECS 360Manufacturing and Automated Systems3
BAFI 361Applied Financial Analytics3
MKMR 310Marketing Analytics3
OPMT 475Supply Chain Logistics3
OPMT 477Enterprise Resource Planning in the Supply Chain3
EECS 490Digital Image Processing3

Healthcare Analytics

EECS 319Applied Probability and Stochastic Processes for Biology3
EECS 359Bioinformatics in Practice3
EECS 365Complex Systems Biology3
MATH 378Computational Neuroscience3
EBME 410Medical Imaging Fundamentals3
BIOL 304Fitting Models to Data: Maximum Likelihood Methods and Model Selection3
SYBB 421Fundamentals of Clinical Information Systems3
SYBB 422Clinical Informatics at the Bedside and the Bench (Part II)3

       Energy Systems Analytics

EECS 370Smart Grid3
EECS 3xx Distribution System Modeling and Analysis (In development)3

Bachelor of Science in Engineering

Suggested Program of Study: Major in Systems and Control Engineering

The following is a suggested program of study. Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Principles of Chemistry for Engineers (CHEM 111)**4  
Calculus for Science and Engineering I (MATH 121)**4  
Elementary Computer Programming (ENGR 131)**3  
Open elective3  
PHED 101 (Physical Education)*0  
SAGES University Seminar*  3
General Physics I - Mechanics (PHYS 121)**,a  4
Calculus for Science and Engineering II (MATH 122)**  4
Chemistry of Materials (ENGR 145)**  4
PHED 102 (Physical Education)*  0
Year Total: 18 15
 
Second YearUnits
FallSpring
General Physics II - Electricity and Magnetism (PHYS 122)**,a4  
Calculus for Science and Engineering III (MATH 223)**3  
Introduction to Circuits and Instrumentation (ENGR 210)**4  
Statistics for Signal Processing (STAT 332)3  
SAGES University Seminar*3  
Fundamental System Concepts (EECS 216)  3
Elementary Differential Equations (MATH 224)**  3
Statics and Strength of Materials (ENGR 200)**  3
Thermodynamics, Fluid Dynamics, Heat and Mass Transfer (ENGR 225)**  4
Introduction to Linear Algebra for Applications (MATH 201)  3
Year Total: 17 16
 
Third YearUnits
FallSpring
HM/SS elective**3  
Signals and Systems (EECS 246)4  
Modeling and Simulation of Continuous Dynamical Systems (EECS 324)3  
Introduction to Global Issues (EECS 342)3  
Approved technical electivec3  
HM/SS elective**  3
Control Engineering I with Laboratory (EECS 304)  3
Control Engineering I Laboratory (EECS 305)  1
Engineering Optimization (EECS 346)  3
Signal Processing (EECS 313)  3
Computer Simulation (OPRE 432)  3
Year Total: 16 16
 
Fourth YearUnits
FallSpring
HM/SS elective**3  
Professional Communication for Engineers (ENGL 398)**2  
Professional Communication for Engineers (ENGR 398)**1  
Engineering Economics and Decision Analysis (EECS 352)3  
Engineering Projects I (EECS 398)b4  
Approved technical electivec3  
HM/SS elective**  3
Engineering Projects II (EECS 399)b  3
Approved technical electivec  3
Approved technical electivec  3
Approved technical electivec  3
Year Total: 16 15
 
Total Units in Sequence:  129

Hours Required for Graduation: 129

*

 University general education requirement

**

Engineering general education requirement 

a

 Selected students may be invited to take PHYS 123 and 124 in place of PHYS 121 and 122.

b

Co-op students may obtain design credit for one semester of Senior Project Lab if their co-op assignment includes significant design responsibility. This credit can be obtained by submitting a suitable written report and making an oral presentation on the co-op work in coordination with the senior project instructor

c

Technical electives from approved list of courses in the three tracks/program concentration areas (Energy systems, Control systems, and Data Analytics) listed under “Depth Requirement” above.

There are five technical elective courses available within the B.S. program in systems and control engineering curriculum that represent a depth of the discipline. Students can satisfy these four technical elective requirements by choosing three courses from one of the three tracks (to meet the Depth Requirement) with the fourth and fifth courses chosen from any of the three tracks listed under the Depth Requirement section above

Dual Major: Systems and Control Engineering & Electrical Engineering

From Systems and Control Engineering (S&CE) to Electrical Engineering (EE):  S&CE students can earn a double major with EE by taking the following five courses as Technical Electives in the S&CE program:

EECS 281Logic Design and Computer Organization4
EECS 245Electronic Circuits4
EECS 309Electromagnetic Fields I3
EECS 321Semiconductor Electronic Devices4
EECS 375Applied Control3
As the three courses EECS 281, EECS 245, and EECS 321 are 4 credit-hours instead of 3, the three credit-hour “Open Elective” course in the original S&CE program is not needed.

Cooperative Education Program in Systems and Control Engineering

Opportunities are available for students to alternate studies with work in industry or government as a co-op student, which involves paid full-time employment over seven months (one semester and one summer). Students may work in one or two co-ops, beginning in the third year of study. Co-ops provide students the opportunity to gain valuable hands-on experience in their field by completing a significant engineering project while receiving professional mentoring. During a co-op placement, students do not pay tuition, but maintain their full-time student status while earning a salary. Learn more at engineering.case.edu/coop. Alternatively or additionally, students may obtain employment as summer interns.

BS/MS Program in Systems and Control Engineering

The department encourages highly motivated and qualified students to apply for admission to the five-year BS/MS Program in the junior year. This integrated program, which permits up to 9 credit hours of graduate level coursework to be counted towards both BS and MS degree requirements (including an option to substitute MS thesis work for EECS 399, the second senior project). It also offers the opportunity to complete both the Bachelor of Science in Engineering and Master of Science degrees within five years.

Minor Program in Systems and Controls Engineering

A total of five courses (15 credit hours) are required to obtain a minor in systems and control engineering. This includes 

  • EECS 246
  • Three of the following four courses selected in consultation with the program minor advisor: EECS 304/305; EECS 324; EECS 346; EECS 352;
  • One of EECS 313, EECS 351, or EECS 354.

Computer Engineering

The Bachelor of Science program in Computer Engineering is designed to give a student a strong background in the fundamentals of computer engineering through combined classroom and laboratory work. A graduate of this program will be able to use these fundamentals to analyze and evaluate computer systems, both hardware and software. A computer engineering graduate would also be able to design and implement a computer system for general purpose or embedded computing incorporating state-of-the-art solutions to a variety of computing problems. This includes systems which have both hardware and software component, whose design requires a well-defined interface between the two, and the evaluation of the associated trade-offs.

Mission

The educational mission of the computer engineering program is to graduate students who have fundamental technical knowledge of their profession along with requisite technical breadth and communications skills to become leaders in creating the new techniques and technologies which will advance the general field of computer engineering. Core courses provide our students with a strong background in digital systems design, computer organization, hardware architecture, and digital electronics.

Program Educational Objectives

  1. Graduates will be successful professionals obtaining positions appropriate to their background, interests, and education.
  2. Graduates will engage in life-long learning to improve and enhance their professional skills.
  3. Graduates will demonstrate leadership in their profession using their knowledge, communication skills, and engineering ability.

Student Outcomes

As preparation for achieving the above educational objectives, the BS degree program in Computer Engineering is designed so that students attain:

  • an ability to apply knowledge of mathematics, science, and engineering
  • an ability to design and conduct experiments, as well as to analyze and interpret data
  • an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
  • an ability to function on multi-disciplinary teams
  • an ability to identify, formulate, and solve engineering problems
  • an understanding of professional and ethical responsibility
  • an ability to communicate effectively
  • the broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
  • a recognition of the need for, and an ability to engage in life-long learning
  • a knowledge of contemporary issues
  • an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Bachelor of Science in Engineering

Major in Computer Engineering

In addition to engineering general education requirements and university general education requirements, the major requires the following courses:

Major Requirements

EECS 132Introduction to Programming in Java3
ENGR 210Introduction to Circuits and Instrumentation4
EECS 233Introduction to Data Structures4
EECS 281Logic Design and Computer Organization4
EECS 301Digital Logic Laboratory2
EECS 302Discrete Mathematics3
EECS 314Computer Architecture3
EECS 315Digital Systems Design4
One of the following:4
VLSI/CAD
Intro to Operating Systems and Concurrent Programming

Statistics Requirement

One Statistics elective may be chosen from:
STAT 312Basic Statistics for Engineering and Science3
STAT 313Statistics for Experimenters3
STAT 332Statistics for Signal Processing3
STAT 333Uncertainty in Engineering and Science3

Design Requirement

EECS 398Engineering Projects I4

In consultation with a faculty advisor, a student completes the program by selecting technical and open elective courses that provide in-depth training in principles and practice of computer engineering. With the approval of the advisor a student may emphasize a specialty of his/her choice by selecting elective courses from other programs or departments.

Many courses have integral or associated laboratories in which students gain “hands-on” experience with computer engineering principles and instrumentation. Students have ready access to the teaching laboratory facilities and are encouraged to use them during nonscheduled hours in addition to the regularly scheduled laboratory sessions. Opportunities also exist for undergraduate student participation in the wide spectrum of research projects being conducted in the department.

Bachelor of Science in Engineering

Suggested Program of Study: Major in Computer Engineering

The following is a suggested program of study. Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Principles of Chemistry for Engineers (CHEM 111)**4  
Calculus for Science and Engineering I (MATH 121)**4  
Introduction to Programming in Java (EECS 132)**3  
Open elective3  
PHED (2 half semester courses)*0  
SAGES University Seminar*  3
General Physics I - Mechanics (PHYS 121)**  4
Calculus for Science and Engineering II (MATH 122)**  4
Chemistry of Materials (ENGR 145)**  4
PHED (2 half semester courses)*  0
Year Total: 18 15
 
Second YearUnits
FallSpring
SAGES University Seminar*3  
General Physics II - Electricity and Magnetism (PHYS 122)**4  
Calculus for Science and Engineering III (MATH 223)**3  
Introduction to Circuits and Instrumentation (ENGR 210)**4  
Introduction to Data Structures (EECS 233)4  
HM/SS elective**  3
Elementary Differential Equations (MATH 224)**  3
Statics and Strength of Materials (ENGR 200)**  3
Logic Design and Computer Organization (EECS 281)  4
Technical electivea  3
Year Total: 18 16
 
Third YearUnits
FallSpring
HM/SS elective**3  
Discrete Mathematics (EECS 302)3  
Thermodynamics, Fluid Dynamics, Heat and Mass Transfer (ENGR 225)**4  
Technical electivea7  
Professional Communication for Engineers (ENGL 398)**  2
Professional Communication for Engineers (ENGR 398)**  1
Digital Logic Laboratory (EECS 301)  2
Computer Architecture (EECS 314)  3
Digital Systems Design (EECS 315)  4
Intro to Operating Systems and Concurrent Programming (EECS 338) (or Technical elective,3)b  4
Year Total: 17 16
 
Fourth YearUnits
FallSpring
HM/SS elective**3  
Statistics electivec3  
Technical electivea3  
Technical elective (or EECS 318 VLSI/CAD) b3  
Open elective3  
HM/SS elective**  3
Engineering Projects I (EECS 398)d  4
Technical electivea  3
Open elective  4
Year Total: 15 14
 
Total Units in Sequence:  129

Hours Required for Graduation: 129

*

University general education requirement 

**

Engineering general education requirement 

a

Technical electives are more generally defined as any course related to the principles and practice of computer engineering. This includes all EECS courses at the 200 level and above, and can include courses from other programs. All non-EECS technical electives must be approved by the student’s advisor.

b

The student must take either EECS 318 VLSI/CAD (Fall Semester) EECS 338 Intro to Operating Systems and Concurrent Programming (Spring Semester), or a three credit hour technical elective.

c

Chosen from: STAT 312 Basic Statistics for Engineering and Science, STAT 313 Statistics for Experimenters, STAT 332 Statistics for Signal Processing, STAT 333 Uncertainty in Engineering and Science

d

May be taken in the Fall semester if the student would like to take %3Ccourseinline id="8">EECS 399%7C in the Spring semester.

Cooperative Education Program in Computer Engineering

Opportunities are available for students to alternate studies with work in industry or government as a co-op student, which involves paid full-time employment over seven months (one semester and one summer). Students may work in one or two co-ops, beginning in the third year of study. Co-ops provide students the opportunity to gain valuable hands-on experience in their field by completing a significant engineering project while receiving professional mentoring. During a co-op placement, students do not pay tuition, but maintain their full-time student status while earning a salary. Learn more at engineering.case.edu/coop. Alternatively or additionally, students may obtain employment as summer interns.

BS/MS Program in Computer Engineering

Highly motivated and qualified students are encouraged to apply to the BS/MS Program which will allow them to get both degrees in five years. The BS can be in Computer Engineering or a related discipline, such as mathematics or electrical engineering. Integrating graduate study in computer engineering with the undergraduate program allows a student to satisfy all requirements for both degrees in five years.

Minor in Computer Engineering

The department also offers a minor in computer engineering. The minor has a required two course sequence followed by a two course sequence in either hardware or software aspects of computer engineering. The following two courses are required for any minor in computer engineering:

EECS 281Logic Design and Computer Organization4
EECS 233Introduction to Data Structures4

Students should note that EECS 132 Introduction to Programming in Java is a prerequisite for EECS 233 Introduction to Data Structures.

The two-course hardware sequence is:

EECS 314Computer Architecture3
EECS 315Digital Systems Design4

The corresponding two-course software sequence is:

EECS 338Intro to Operating Systems and Concurrent Programming4
EECS 3XX Approved by advisor4

Computer Science

Mission

The mission of the Bachelor of Science and Bachelor of Arts programs in Computer Science is to graduate students who have fundamental technical knowledge of their profession and the requisite technical breadth and communications skills to become leaders in creating the new techniques and technologies which will advance the field of computer science and its application to other disciplines.

Program Educational Objectives

  1. To educate and train students in the fundamentals of computer science and mathematics, in order to analyze and solve computing problems, as demonstrated by their professional accomplishments in industry, government and graduate programs and measured within three to five years after graduation.
  2. To educate students with an understanding of real-world computing needs, as demonstrated by their ability to address technical issues involving computing problems encountered in industry, government and graduate programs and measured within three to five years after graduation.
  3. To train students to work effectively, professionally and ethically in computing-related professions, as demonstrated by their communications, teamwork and leadership skills in industry, government and graduate programs and measured within three to five years after graduation.

Student Outcomes

As preparation for achieving the above educational objectives, the BS and BA degree programs in Computer Science are designed so that Bachelor of Science students attain:

  • An ability to apply knowledge of computing and mathematics appropriate to the discipline
  • An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution
  • An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs
  • An ability to function effectively on teams to accomplish a common goal
  • An understanding of professional, ethical, and social responsibilities
  • An ability to communicate effectively
  • An ability to analyze the impact of computing on individuals, organizations, and society, including ethical, legal, security, and global policy issues
  • Recognition of the need for and an ability to engage in continuing professional development
  • An ability to use current techniques, skills, and tools necessary for computing practice
  • An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices
  • An ability to apply design and development principles in the construction of software systems of varying complexity

Core and breadth courses provide our students with the flexibility to work across many disciplines and prepare them for a variety of professions. Our curriculum is designed to teach fundamental skills and knowledge needed by all CS graduates, while providing the greatest flexibility in selecting topics. Students are also required to develop depth in at least one of the following technical areas: software engineering; algorithms and theory; computer systems, networks, and security; databases and data mining; bioinformatics; or artificial intelligence.

Bachelor of Science in Computer Science

The Bachelor of Science program in Computer Science is designed to give a student a strong background in the fundamentals of mathematics and computer science. The curriculum is designed according to the latest ACM/IEEE computer science curriculum guidelines. A graduate of this program should be able to use these fundamentals to analyze and evaluate software systems and the underlying abstractions upon which they are based. A graduate should also be able to design and implement software systems which are state-of-the-art solutions to a variety of computing problems; this includes problems which are sufficiently complex to require the evaluation of design alternatives and engineering trade-offs. In addition to these program specific objectives, all students in the Case School of Engineering are exposed to societal issues, professionalism, and are provided opportunities to develop leadership skills.

Bachelor of Arts in Computer Science

The Bachelor of Arts program in Computer Science is a combination of a liberal arts program and a computing major. It is a professional program in the sense that graduates can be employed as computer professionals, but it is less technical than the Bachelor of Science program in Computer Science. This degree is particularly suitable for students with a wide range of interests. For example, students can major in another discipline in addition to computer science and routinely complete all of the requirements for the double major in a 4 year period. This is possible because over a third of the courses in the program are open electives. Furthermore, if a student is majoring in computer science and a second technical field such as mathematics or physics many of the technical electives will be accepted for both majors. Another example of the utility of this program is that it routinely allows students to major in computer science and take all of the pre-med courses in a four-year period.

Major in Computer Science (BS and BA)

BS Degree. Each student is required to complete a total of 14 CS courses. CS courses consist of the courses listed in the core, breadth, and depth areas below. BS students must complete: all 6 core courses; 5 of 7 breadth courses; and at least 4 courses in one of listed depth areas, including all starred courses in that area (many of these also count toward the breadth requirement). Each student is also required to complete 5 technical electives. These can be satisfied using courses from the list of approved technical electives, additional breadth or depth courses, or from other CS-related courses with prior permission from the student’s academic advisor.

BA Degree. Students are required to complete a total of 9 CS courses. BA students must complete: all 6 core courses; 3 of 7 breadth courses; and 4 technical electives. There is no depth requirement for the BA degree.

Major Requirements

In addition to university general education requirements, the major requires the following courses:

EECS 132Introduction to Programming in Java3
EECS 233Introduction to Data Structures4
EECS 281Logic Design and Computer Organization4
EECS 302Discrete Mathematics3
EECS 340Algorithms3
EECS 395Senior Project in Computer Science4
---
B.S.
CHEM 111Principles of Chemistry for Engineers4
ENGR 145Chemistry of Materials4
MATH 121Calculus for Science and Engineering I4
MATH 122Calculus for Science and Engineering II4
MATH 223Calculus for Science and Engineering III3
MATH 224Elementary Differential Equations3
PHYS 121General Physics I - Mechanics4
PHYS 122General Physics II - Electricity and Magnetism4
ENGR 398Professional Communication for Engineers1
ENGL 398Professional Communication for Engineers2
---
B.A.
MATH 125Math and Calculus Applications for Life, Managerial, and Social Sci I4
MATH 126Math and Calculus Applications for Life, Managerial, and Social Sci II4

Breadth Requirement

BS students are required to complete 5 of the 7 following CS breadth courses. BA students are required to complete 3 of 7.

EECS 314Computer Architecture3
EECS 325Computer Networks I3
EECS 338Intro to Operating Systems and Concurrent Programming4
EECS 341Introduction to Database Systems3
EECS 345Programming Language Concepts3
EECS 391Introduction to Artificial Intelligence3
EECS 393Software Engineering3

Statistics Requirement

One Statistics elective may be chosen from:

MATH 380Introduction to Probability3
STAT 312Basic Statistics for Engineering and Science3
STAT 313Statistics for Experimenters3
STAT 332Statistics for Signal Processing3
STAT 333Uncertainty in Engineering and Science3

Depth Requirement

Students pursuing the BS degree must demonstrate a depth of competence in one of the technical areas listed below.  There is no depth requirement for the BA degree.  To complete the depth requirement, students must complete four courses in one of the depth areas, including all starred courses.  Recommended general background courses are listed following each area where applicable. 

Breadth courses can also count toward the depth requirement. CS BS students are required to complete a total of 14 CS courses (courses listed in the core, breadth, and depth requirements) to ensure that the total number of required courses is the same irrespective of the depth area.  For depth areas that have two starred courses that are also breadth courses, one additional CS course is required to reach the required total of 14.  Additional CS courses taken beyond the required 14 can count toward the technical elective requirement (see below).


Area 1: Software Engineering
EECS 393Software Engineering *3
EECS 345Programming Language Concepts *3
EECS 293Software Craftsmanship4
EECS 337Compiler Design4
EECS 392App Development for iOS3
EECS 441Internet Applications3
EECS 444Computer Security3
Area 2: Algorithms and Theory
EECS 340Algorithms *3
EECS 343Theoretical Computer Science *3
EECS 440Machine Learning3
EECS 454Analysis of Algorithms3
EECS 477Advanced Algorithms3
MATH 408Introduction to Cryptology3

Recommended preparation: MATH 380, MATH 201 or (MATH 307 and MATH 308), PHIL 306.

Area 3: Computer Systems, Networks and Security
EECS 325Computer Networks I *3
EECS 338Intro to Operating Systems and Concurrent Programming *4
EECS 441Internet Applications3
EECS 337Compiler Design4
EECS 444Computer Security3
MATH 408Introduction to Cryptology3
Area 4: Databases and Data Mining
EECS 341Introduction to Database Systems *3
EECS 339Web Data Mining3
EECS 405Data Structures and File Management3
EECS 433Database Systems3
EECS 435Data Mining3
EECS 440Machine Learning3
Area 5: Bioinformatics
EECS 359Bioinformatics in Practice *3
EECS 458Introduction to Bioinformatics *3
EECS 459Bioinformatics for Systems Biology *3
EECS 341Introduction to Database Systems3
EECS 435Data Mining3
EECS 440Machine Learning3
EECS 454Analysis of Algorithms3

Recommended breadth and preparation: STAT 325 or EPBI 431, SYBB 311, BIOL 214. Students completing the bioinformatics depth area are only required to complete two out the three starred courses plus two additional courses on the list.

Area 6: Artificial Intelligence
EECS 391Introduction to Artificial Intelligence *3
EECS 440Machine Learning3
EECS 442Causal Learning from Data3
EECS 484Computational Intelligence I: Basic Principles3
EECS 491Artificial Intelligence: Probabilistic Graphical Models3
EECS 496Artificial Intelligence: Sequential Decision Making3
EECS 497Artificial Intelligence: Statistical Natural Language Processing3
EECS 499Algorithmic Robotics3
EECS 531Computer Vision3

Recommended breadth and preparation: MATH 201, MATH 380, and either EECS 416 or EECS 477.

Technical Electives

Computer Science BS students are required to complete a total of 5 technical electives, totaling at least 14 credit hours; CS BA students are required to complete 4, totaling at least 11 credit hours. Technical electives are divided into two groups according to how closely a course is related to the core knowledge areas as defined in the ACM/IEEE computer science curriculum guidelines. CS students may complete any (or all) of their technical electives from group 1 and have the option to satisfy up to two of their technical electives from group 2. Students may also satisfy their any of their technical elective requirements by taking additional breadth or depth courses listed above. CS-related courses not listed below may count toward the technical elective requirement but require prior permission from the student’s academic advisor.

Group 1
EECS 275Fundamentals of Robotics4
EECS 290Introduction to Computer Game Design and Implementation3
EECS 301Digital Logic Laboratory2
EECS 315Digital Systems Design4
EECS 316Computer Design3
EECS 318VLSI/CAD4
EECS 366Computer Graphics3
EECS 376Mobile Robotics4
EECS 390Advanced Game Development Project3
EECS 419Computer System Architecture3
EECS 423Distributed Systems3
EECS 485VLSI Systems3
EECS 488Embedded Systems Design3
EECS 490Digital Image Processing3
Group 2
EECS 245Electronic Circuits4
EECS 246Signals and Systems4
EECS 304Control Engineering I with Laboratory3
EECS 305Control Engineering I Laboratory1
EECS 309Electromagnetic Fields I3
EECS 313Signal Processing3
EECS 319Applied Probability and Stochastic Processes for Biology3
EECS 324Modeling and Simulation of Continuous Dynamical Systems3
EECS 354Digital Communications3
EECS 375Applied Control3
EECS 408Introduction to Linear Systems3
EECS 413Nonlinear Systems I3
EECS 489Robotics I3
ENGR 210Introduction to Circuits and Instrumentation4
MATH 201Introduction to Linear Algebra for Applications3
MATH 303Elementary Number Theory3
MATH 307Linear Algebra3
MATH 308Introduction to Abstract Algebra3
MATH 330Introduction of Scientific Computing3
MATH 406Mathematical Logic and Model Theory3
MATH 413Graph Theory3
MATH 431Introduction to Numerical Analysis I3
PHIL 201Introduction to Logic3
PHIL 306Mathematical Logic and Model Theory3
PHYS 221Introduction to Modern Physics3
PHYS 250Computational Methods in Physics3
STAT 345Theoretical Statistics I3
STAT 346Theoretical Statistics II3
STAT 427Statistical Computing3

Bachelor of Science

Suggested Program of Study: Major in Computer Science

The following is a suggested program of study. Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Principles of Chemistry for Engineers (CHEM 111)4  
Calculus for Science and Engineering I (MATH 121)4  
Introduction to Programming in Java (EECS 132)3  
PHED (2 half semester courses)*0  
Open elective3  
SAGES University Seminar*  3
General Physics I - Mechanics (PHYS 121)  4
Calculus for Science and Engineering II (MATH 122)  4
Chemistry of Materials (ENGR 145)  4
PHED (2 half semester courses)*  0
Year Total: 18 15
 
Second YearUnits
FallSpring
SAGES University Seminar*3  
General Physics II - Electricity and Magnetism (PHYS 122)4  
Calculus for Science and Engineering III (MATH 223)3  
Introduction to Data Structures (EECS 233)4  
Discrete Mathematics (EECS 302)3  
Elementary Differential Equations (MATH 224)  3
Logic Design and Computer Organization (EECS 281)  4
Statistics electivea  3
Technical electiveb  3
HM/SS elective  3
Year Total: 17 16
 
Third YearUnits
FallSpring
Algorithms (EECS 340)3  
Breadth electivec3  
Breadth electivec3  
Technical electiveb3  
HM/SS elective3  
Professional Communication for Engineers (ENGL 398)  2
Professional Communication for Engineers (ENGR 398)  1
Breadth electivec  3
Breadth electivec  3
Depth electived  3
Open elective  3
Year Total: 15 15
 
Fourth YearUnits
FallSpring
Breadth electivec3  
Depth electived3  
Technical electiveb3  
Technical electiveb3  
Open elective3  
Senior Project in Computer Science (EECS 395)  4
CS course electivee  3
Technical electiveb  3
Technical electiveb  3
Open elective  3
Year Total: 15 16
 
Total Units in Sequence:  127

Hours Required for Graduation: 127

*

 University general education requirement

a

Chosen from: MATH 380 Introduction to Probability, STAT 312 Basic Statistics for Engineering and Science, STAT 313 Statistics for Experimenters, STAT 332 Statistics for Signal Processing, STAT 333 Uncertainty in Engineering and Science

b

Chosen from the list of CS technical electives. All other technical electives must be approved by the student’s advisor.

c

Each student must complete 5 of the 7 following courses: EECS 314, EECS 325, EECS 338, EECS 341, EECS 345, EECS 391, and EECS 393. EECS 338 is a 4 unit course.

d

Each student must complete 4 courses in one of the technical depth areas listed above, including all starred courses.

e

Needed to complete the requirement of 14 CS courses. This can be an additional breadth or depth course, depending on what is needed to satisfy the depth requirement.

Bachelor of Arts

Suggested Program of Study: Major in Computer Science

The following is a suggested program of study. Current students should always consult their advisers and their individual graduation requirement plans as tracked in SIS.

First YearUnits
FallSpring
SAGES First Year Seminar*4  
Math and Calculus Applications for Life, Managerial, and Social Sci I (MATH 125)4  
Introduction to Programming in Java (EECS 132)3  
HM/SS elective3  
Open elective3  
PHED (2 half semester courses)*0  
SAGES University Seminar*  3
Math and Calculus Applications for Life, Managerial, and Social Sci II (MATH 126)  4
HM/SS elective  3
Open elective  3
Open elective  3
PHED (2 half semester courses)*  0
Year Total: 17 16
 
Second YearUnits
FallSpring
SAGES University Seminar*3  
Logic Design and Computer Organization (EECS 281)4  
HM/SS elective3  
Open elective3  
Open elective3  
Discrete Mathematics (EECS 302)  3
Introduction to Data Structures (EECS 233)  4
HM/SS elective  3
Open elective  3
Open elective  3
Year Total: 16 16
 
Third YearUnits
FallSpring
Professional Communication for Engineers (ENGL 398)2  
Professional Communication for Engineers (ENGR 398)1  
Technical electivea3  
Technical electivea3  
Open elective3  
Breadth electiveb  3
Breadth electiveb  3
Breadth electiveb  3
Open elective  3
Year Total: 12 12
 
Fourth YearUnits
FallSpring
Algorithms (EECS 340)3  
Technical electivea3  
Open elective3  
Open elective3  
Open elective3  
Senior Project in Computer Science (EECS 395)  4
Technical electiveb  3
Open elective  3
Open elective  3
Open elective  3
Year Total: 15 16
 
Total Units in Sequence:  120

Hours Required for Graduation: 120

*

 University general education requirement

a

Chosen from the list of approved CS technical electives. All other technical electives must be approved by the student's advisor.

b

Each student must complete 3 of the 7 following courses: EECS 314, EECS 325, EECS 338, EECS 341, EECS 345, EECS 391, and EECS 393. EECS 338 is a 4 unit course.

Cooperative Education Program in Computer Science

Opportunities are available for students to alternate studies with work in industry or government as a co-op student, which involves paid full-time employment over seven months (one semester and one summer). Students may work in one or two co-ops, beginning in the third year of study. Co-ops provide students the opportunity to gain valuable hands-on experience in their field by completing a significant engineering project while receiving professional mentoring. During a co-op placement, students do not pay tuition, but maintain their full-time student status while earning a salary. Learn more at engineering.case.edu/coop. Alternatively or additionally, students may obtain employment as summer interns.

BS/MS Program in Computer Science

Students with a grade point average of 3.2 or higher are encouraged to apply to the BS/MS Program which will allow them to get both degrees in five years. The BS can be in Computer Science or a related discipline, such as mathematics or electrical engineering. Integrating graduate study in computer science with the undergraduate program allows a student to satisfy all requirements for both degrees in five years.

Minor in Computer Science (BS or BSE)

For students pursuing a BS or BSE degree, the following three courses are required for a minor in computer science:

EECS 132Introduction to Programming in Java3
EECS 233Introduction to Data Structures4
EECS 302Discrete Mathematics3
EECS 340Algorithms3

A student must take an additional 4 credit hours of CS Courses (see Major Requirements) with the exclusion of ENGR 131 Elementary Computer Programming.

Minor in Computer Science (BA)

For students pursuing BA degrees, the following courses are required for a minor in computer science:

EECS 132Introduction to Programming in Java3
EECS 233Introduction to Data Structures4
MATH 125Math and Calculus Applications for Life, Managerial, and Social Sci I4

Two additional CS Courses (see Major Requirements) are required for this minor.

Minor in Computer Gaming (CGM)

The minor is 16 hours as follows:

EECS 233Introduction to Data Structures4
EECS 324Modeling and Simulation of Continuous Dynamical Systems3
EECS 366Computer Graphics3
EECS 390Advanced Game Development Project3
EECS 391Introduction to Artificial Intelligence3

The open elective in the spring of the first year is strongly recommended to be EECS 290 Introduction to Computer Game Design and Implementation.  In addition, it is recommended that one additional open elective be a “content creation” course taken from the following areas: Art, English, or Music.  Students should note that EECS 132 Introduction to Programming in Java is a prerequisite for EECS 233 Introduction to Data Structures.


Graduate Programs

M.S. Degree Program (Electrical Engineering, Computer Engineering, Systems and Control Engineering)

Admission

Graduate students shall be admitted to one of two M.S. degree programs (Plan A or Plan B) upon recommendation of the faculty of the Department. Requirements for admission include a strong record of scholarship in a completed bachelor's degree program in a field of engineering, mathematical or physical sciences, and fluency in written and spoken English. The University requires all foreign applicants to show English proficiency by achieving a TOEFL score of at least 577 on the paper-based exam or 90 on the internet-based exam. It is required that all students submit original copies of GRE scores, with the exception of CWRU students applying to the B.S./M.S. program. Applications from students with a bachelor's degree in fields other than those listed above may be granted admission on a provisional basis. Such provisional students may be advanced to full standing upon completion of prerequisite conditions stipulated in the letter of admission.

Registration

Course registration is performed through the SIS system. Each semester before registration, students should update any personal information that may have changed by logging onto the SIS and editing the appropriate information. All registration holds must be lifted in order to successfully complete the registration process.

Advising

Upon admission the graduate program, each graduate student is assigned an academic advisor to assist in registration as well as planning a program of study. This is a temporary assignment made by the Department Chairperson based on the student's academic and research interests as identified at the time of application. During the first semester in the program, it is strongly suggested that each student meet with various members of faculty to discuss academic objectives/goals and research opportunities. In order to complete the research component of their respective degree program, each student must identify a faculty member who is willing to serve as the student's research advisor. The research advisor will also serve as the student’s permanent academic advisor if he/she is a member of the department faculty.  If, however, the research advisor is not a member of the department faculty, the student is required to find a permanent academic advisor from the department faculty. For students enrolled in the M.S. Plan A degree program, the research advisor is commonly known as the “thesis advisor”.

Students may change advisors for a variety of reasons of which one of the most common is a change of the student's field of interest.  It should be noted that a change in research advisor may require that the student start a new research project, which could result in delaying graduation. It is the responsibility of the student to inform the EECS Office of Student Affairs in the event of a change in advisor. In addition, the student must file all appropriate forms with Graduate Studies.

The M.S. Plan A Degree Program

The M.S. Plan A degree program is comprised of two components: (1) graduate-level coursework and (2) a research-oriented thesis.  Progression through the program is monitored by a Program of Study. Each M.S. Plan A student is required to file a Program of Study through SIS. The Program of Study contains a comprehensive list of all courses to be applied to the degree (including transfer courses), and must be approved by his/her academic advisor, Department Chairperson, and Dean of Graduate Studies. The Program of Study must contain at least 27 semester credit hours of coursework at the 400 level or above, of which a minimum of 18 credits must be from non-thesis related courses. Each M.S. Plan A student must complete at least 9 credit hours of EECS 651, which is the course associated with M.S. thesis research. Each student must complete an approved Program of Study with a cumulative grade point average of 3.0 or greater. Full-time M.S. students are recommended to file a Program of Study before the beginning of the second semester.

Completion of the M.S. Plan A degree requires that the student submit a written thesis and make an oral presentation of the findings (hereafter known as the defense) to a thesis guidance committee. The thesis guidance committee shall consist of the student's research advisor and at least two additional faculty members recommended by the advisor. At least two members of the committee must be faculty members in the EECS department. The chairperson of the guidance committee is normally the candidate's research advisor. The student is responsible for forming the thesis guidance committee. The student will work closely with his/her advisor to determine when the thesis is ready for review by the guidance committee. The student shall provide an announcement containing a title, abstract, date, time and location of the defense to the EECS Office of Student Affairs for general distribution at least 10 days in advance of the thesis defense.

The M.S. Plan B Degree Program

The M.S. Plan B degree program is comprised of two components: (1) graduate-level coursework and (2) a research-oriented project.  Progression through the program is monitored by a Program of Study. Each M.S. Plan B student is required to file a Program of Study through SIS. The Program of Study contains a comprehensive list of all courses to be applied to the degree (including transfer courses), and must be approved by his/her academic advisor, Department Chairperson, and Dean of Graduate Studies. The Program of Study must contain at least 27 semester credit hours of coursework at the 400 level or above, of which a minimum of 21 credits must be from courses other than EECS 649 (which is the course associated with the M.S. research project). A M.S. Plan B student must complete at least 3 credit hours of EECS 649. Each student must complete an approved Program of Study with a cumulative grade point average of 3.0 or greater. Full-time students are strongly recommended to file a Program of Study before the beginning of the second semester.

Each candidate for the master’s degree under Plan B must pass a comprehensive examination to be administered by a committee of department faculty. The examination committee should be comprised of the student’s academic advisor and at least two additional members of the department faculty. In such cases, the chairperson of the committee is normally the candidate's academic advisor. The examination may be written, oral or a combination as determined by the committee. A student must be registered during the semester in which any part of the comprehensive examination is taken. If not registered for other courses, the student will be required to register for one semester hour of EXAM 600, Comprehensive Examination, before taking the examination.

Appeals

Any decision by an academic advisor, thesis guidance committee, or Department Associate Chairperson may be appealed, in writing, to the Department Associate Chairperson who shall present the appeal, with his recommendations, to the faculty at its next regular faculty meeting. The faculty's decision shall be final.

Other Regulations

All students pursuing graduate studies in the Department of Electrical Engineering and Computer Science must abide by the academic regulations of the School of Graduate Studies and the Case School of Engineering contained in the most recent issue of the Bulletin of Case Western Reserve University, and supplemented by the Department of Electrical Engineering and Computer Science regulations.

NOTE: The above regulations apply to graduate students who entered the degree programs in computer engineering, electrical engineering, and systems & control engineering after January 1, 2005.

Computer Science

MS Degree Program (Computer and Information Science)

As provided for by the School of Graduate Studies there are two plans for the Master of Science degree, each requiring 27 semester hours of credit. Plan A requires 9 semester hours of thesis (EECS 651) and 18 semester hours of courses. Plan B requires a 6 semester hour project (EECS 602) and 21 semester hours of course credit. Plan B is normally restricted to part-time students or exceptional cases as approved by the faculty affiliated with the Computer Science (CS) program.

All coursework must be at the 400-level or higher. Students must achieve a grade point average of 3.0 or higher; it is computed for all of the courses, excluding project and thesis credits, on the student's program of study.

Each M.S. student has a faculty advisor who assists the student in formulating a program of study. Initially, the advisor is the chair of the CS graduate committee. Students are expected to pick a research advisor by the end of their first semester in the program who will supervise their thesis or project. Each student, in consultation with their advisor, must submit a Planned Program of Study preferably before completing 9 credit hours of coursework.

Both the thesis and the Plan B project require a formal written report, as well as a final oral examination by a committee of at least three faculty members, two of whom must be primarily affiliated with the CS program. A student whose thesis is supervised by someone not primarily affiliated with the CS program must also have a faculty co-advisor in the CS program. For Plan B students, the oral examination fulfills the Comprehensive Examination requirement of the School of Graduate Studies.

When applying to this program, please select the CIS (Computing and Information Sciences) program option in your application.

Course Requirements

The M. S. program in Computer Science requires students to have substantial knowledge of undergraduate computer science material. This includes knowledge in data structures, algorithms and operating systems equivalent to that in the courses:

EECS 233 Introduction to Data Structures

EECS 340 Algorithms and Data Structures

EECS 338 Introduction to Operating Systems

This requirement is normally satisfied by taking courses at the student's undergraduate university which contain most of the material in the above courses. Students deficient in one or more of these areas may be required to satisfy this requirement by taking the corresponding course listed above. A student taking and passing a more advanced course in an area automatically demonstrates knowledge of the material in the area; e.g. taking EECS 454 Analysis of Algorithms demonstrates knowledge of the material in EECS 340.

Students are required to have specialized knowledge in at least one of the following tracks, by taking at least three graduate level classes from that track. The list of acceptable classes is shown below. Generally, the chosen track should correspond to the student’s thesis research area or project. EECS 600 (Special Topics) classes relevant to the student’s research area or project will also qualify in this category with approval from the student’s advisor.

The remaining classes can be (i) any other class from the classes listed below, or (ii) any CS-related class offered by EECS, or (iii) graduate level classes in other departments necessary for the student’s research or project. At most two classes can be from the third category.

List of tracks and corresponding courses

  1. Software Engineering:
    1. EECS 441 Internet Applications
    2. EECS 442 Causal Learning from Data
    3. EECS 444 Computer Security
    4. EECS 466 Computer Graphics
    5. EECS 493 Software Engineering
  2. Algorithms & Theory:
    1. EECS 440 Machine Learning
    2. EECS 454 Analysis of Algorithms
    3. EECS 477 Advanced Algorithms
    4. MATH 408 Intro to Cryptology
  3. Computer Systems, Networks and Security:
    1. EECS 425 Computer Networks
    2. EECS 441 Internet Applications
    3. EECS 444 Computer Security
    4. MATH 408 Intro to Cryptology
  4. Databases and Data Mining:
    1. EECS 405 Data Structures and File Management
    2. EECS 433 Database Systems
    3. EECS 435 Data Mining
    4. EECS 439 Web Data Mining
    5. EECS 440 Machine Learning
  5. Bioinformatics:
    1. EECS 435 Data Mining
    2. EECS 440 Machine Learning
    3. EECS 454 Analysis of Algorithms
    4. EECS 458 Bioinformatics
    5. EECS 459 Bioinformatics for Systems Biology
  6. Artificial Intelligence:
    1. EECS 440 Machine Learning
    2. EECS 442 Causal Learning from Data
    3. EECS 484 Computational Intelligence
    4. EECS 491 AI: Probabilistic Graphical Models
    5. EECS 496 AI: Sequential Decision Making
    6. EECS 497 Statistical Natural Language Processing
    7. EECS 499 Algorithmic Robotics
    8. EECS 531 Computer Vision

Master of Science - Optional Specialization

Wearable Computing

The MS degree in Electrical Engineering (EE) with a specialization in Wearable Computing may be completed as a "course-only" option program of study.  Students who complete this 9-course, 27-credit course-only option will have the requisite knowledge to enter and advance the wearable computing industry.

Wireless Health

The MS degree in Electrical Engineering (EE) with a specialization in Wireless Health is a "course-only" option program of study.  Students who complete this 9-course, 27-credit course-only option will have the requisite knowledge to enter and advance the wireless health industry, with a greater emphasis on the technology aspects.

For more details, please refer to the Master's Degree information on the Case School of Engineering - San Diego website.

Ph.D. Graduate Student Requirements (Electrical Engineering, Computer Engineering, Systems and Control Engineering)

These regulations are in addition to the Academics Regulations of the School of Graduate Studies and the Specific Requirements for the Ph.D. Degree of the Graduate Program in the Case School of Engineering as found in the General Catalog of Case Western Reserve University.

Admission

Graduate students shall be admitted to one of two M.S. degree programs (Plan A or Plan B) upon recommendation of the faculty of the Department. Requirements for admission include a strong record of scholarship in a completed bachelor's degree program in a field of engineering, mathematical or physical sciences, and fluency in written and spoken English. The University requires all foreign applicants to show English proficiency by achieving a TOEFL score of at least 577 on the paper-based exam or 90 on the internet-based exam. It is required that all students submit original copies of GRE scores, including CWRU students applying to the B.S./M.S. program.  Applications from students with a bachelor's degree in fields other than those listed above may be granted admission on a provisional basis. Such provisional students may be advanced to full standing upon completion of prerequisite conditions stipulated in the letter of admission.

Registration

Course registration is performed through the SIS system. Each semester before registration, students should update any personal information that may have changed by logging onto the SIS and editing the appropriate information. All registration holds must be lifted in order to successfully complete the registration process.

Advising

Upon admission the graduate program, each graduate student is assigned an academic advisor to assist in registration as well as planning a program of study. This is a temporary assignment made by the Department Chairperson based on the student's academic and research interests as identified at the time of application. During the first two semesters in the program, it is strongly suggested that each student meet with various members of faculty to discuss academic objectives/goals and research opportunities. In order to complete the research component of their respective degree program, each student must identify a faculty member who is willing to serve as the student's research advisor. The research advisor will also serve as the student’s permanent academic advisor if he/she is a member of the department faculty. If, however, the research advisor is not a member of the department faculty, the student is required to find a permanent academic advisor from the department faculty. For students enrolled in the Ph.D program, the research advisor is commonly known as the “thesis” or “dissertation” advisor.

Students may change advisors for a variety of reasons of which one of the most common is a change of the student's field of interest.  It should be noted that a change in research advisor may require that the student start a new research project, which could result in delaying graduation. It is the responsibility of the student to inform the EECS Office of Student Affairs in the event of a change in advisor. In addition, the student must file all appropriate forms with Graduate Studies.

The student shall be responsible for forming a thesis or dissertation guidance committee which shall consist of the student's academic advisor and additional faculty members recommended by the advisor. For an M.S. program, the minimum number of additional faculty members on the thesis guidance committee is two, and at least two members of the committee must be within the EECS department. For a Ph.D. program, the minimum number of additional faculty members on the dissertation guidance committee is three, and at least two of the committee must be within the ECSE program areas (Computer Engineering, Electrical Engineering, and Systems and Control Engineering). The chairperson of the guidance committee is normally the candidate's research advisor. Each student is required to file a Program of Study, which must be approved by the student's advisor and the Department Chairperson, and submitted to the Dean of Graduate Studies. Full-time Ph.D. students should choose a research advisor and file a Program of Study before taking the qualifier but no later than the beginning of the third semester. Upon passing the qualifier, full time Ph.D. students will be required to assemble the dissertation guidance committee, prepare a dissertation proposal, and present this proposal to the committee for their approval. This process should be completed within one semester of passing the Ph.D. qualifier.

The Ph.D. Degree Program

In order to successfully complete the Ph.D. Degree Program, a student must satisfy the following requirements:

  • Select a major dissertation subject area in Electrical Engineering, Computer Engineering, or Systems and Control Engineering
  • Fulfill all Ph.D. course requirements in the chosen major area
  • Have an approved Program of Study and complete the CWRU courses in the approved Program of Study with a cumulative grade point average of 3.25 or greater
  • Successfully complete the Ph.D. Qualifying Examination
  • Successfully complete the Ph.D. Proposal Defense
  • Successfully complete and defend the Ph.D. Dissertation
  • Fulfill the Ph.D. residency requirement

Ph.D. Course Requirements and Program of Study

Each Ph.D. student is required to have a Program of Study, approved by the academic advisor, Department Chairperson, and Dean of Graduate Studies, that includes a minimum of 36 credit hours of coursework beyond the B.S. degree. At least 18 credit hours of coursework must be taken at CWRU. In addition, the student is also required to complete a minimum of 18 credit hours of EECS 701 to fulfill the requirement for PhD-level research. Acceptable courses include suitable CWRU courses at the 400 level or higher and approved graduate-level courses taken at other institutions. Students holding a M.S. degree in an appropriate field of study from CWRU or another degree-granting institution may apply up to 18 credit hours of coursework completed for their M.S. degree towards the aforementioned 36 credit hour requirement.

Each Ph.D. student is required to have a fully-approved Program of Study before taking the Ph.D. Qualifying examination and before registering for the final 18 credit hours of the program. The Program of Study shall be prepared by the student and approved by the research advisor or the permanent academic advisor in case where the research advisor is not in the Department.

A Program of Study must meet the following requirements:

  • A minimum of two courses in mathematics, statistics, or basic science.
  • At least six approved courses from the student's major area of study. At least 4 of these courses must be from within the EECS department.
  • Four additional courses that are not listed under the student's major program area. These courses should satisfy the requirement for breadth in the student's program of study.
  • A minimum of 18 hours of Ph.D. Dissertation research as noted by enrollment in and successful completion of EECS 701
  • Successful completion of EECS 400T, 500T and 600T.
  • Successful completion of the EECS 500 requirement (see below)

The above represents the minimum course requirements beyond the B.S. degree. The total number of 3 credit hour courses in the Program of Study is at least 12 (twelve) beyond the B.S. level. The selection of these courses should be done with the guidance from the student's permanent academic advisor. Any additional courses may be in any one of the above categories as approved by the student's advisor.

The Ph.D. program includes a colloquium and public presentation requirement.  For those who matriculated during or after Fall 2012, the requirement involves passing 3 semesters of EECS 500 (EECS Colloquium) and a public presentation of their research. Public presentations include conference presentations, department seminars, workshop presentations or similar presentations in a public venue. M.S. thesis and Ph.D. dissertation defenses cannot be used to fulfill the public presentation requirement. It is expected that the EECS 500 requirement will be completed before the student applied for Advancement to Candidacy. Alternatively, the student may complete this requirement by giving a presentation as part of the EECS department seminar series. Additional details and the associated forms can be acquired from the EECS Office of Student Affairs.  For students who matriculated before Fall 2012, the requirement can be met in one of two ways: (1) completing the requirements detailed above, or (2) passing 5 semesters of EECS 500.  Students (such as part-time students working in industry) may propose an alternative arrangement for fulfilling this requirement by submitting a written petition to the EECS Graduate Studies Committee.

Ph.D. Qualifying Examination

A student shall be admitted to Ph.D. candidacy only after he or she has passed the Ph.D. Qualifying Examination. The Qualifying Exam is intended to test the students' knowledge in the

student's chosen major program area: Electrical Engineering, Computer Engineering, or Systems and Control Engineering. The objectives of the exam are:

  1. To assess the Ph.D. student's understanding of the fundamental concepts in Electrical Engineering, Computer Engineering, or Systems and Control Engineering, as embodied in the respective graduate curriculum.
  1. To ensure that the student have the ability to pursue Ph.D. level research, and have mastered the graduate level coursework necessary to succeed as researchers

Full-time Ph.D. students are recommended to take the Ph.D. qualifier before the beginning of their third semester of full-time (or equivalent) enrollment, and must pass the exam within two years of being admitted to the program. For part-time students, the Qualifying Exam must be passed before more than 27 credit-hours of coursework have been completed. For students who must take remedial courses to make up for shortcomings in their engineering and mathematics knowledge base, the deadline can be extended to the fifth semester of full-time (or equivalent) enrollment, but this requires a petition to the ECSE Graduate Committee. Students have two opportunities to pass the Ph.D. Qualifier. A student who fails to pass the Qualifier after two attempts will not be allowed to continue in the Ph.D. program in the Department of Electrical Engineering and Computer Science.

To pass the Ph.D. Qualifier, the student must demonstrate proficiency in two parts:

Part 1

The first part of the Ph.D. Qualifier assesses the student's fundamental knowledge and proficiency in the student's major program area:

Computer Engineering

Part 1 of the Ph.D. Qualifier will consist of a written examination with questions drawn from several course areas listed below.  At least three (3) topic areas must be pursued by the student for a complete qualifier.  The exam style is a mini-project oriented, take home test that must be completed with a one week period.

  1. Computer Architecture (EECS419)
  2. Networks (EECS 425)
  3. Digital Systems (EECS315)
  4. Embedded Systems (EECS488)
  5. VLSI Systems Design (EECS485)
  6. Digital Signal Processing (EECS401).

Additional topic areas maybe assigned depending on the student interests and their advisors recommendations.

If a student fails all three areas of the written examination, the entire exam must be taken again. If a student fails some areas, the faculty may elect to give another exam to the student in just the areas failed.

The written part of the Qualifying Exam for Computer Engineering will be offered at least once a year at the end of the spring semester.

Electrical Engineering

            (For students matriculating after 8/1/2014)

Students must demonstrate competency in one of the following areas within electrical engineering in which the electrical engineering faculty have established research thrust areas:

  1. Circuits and Instrumentation
  2. Robotics
  3. Micro- and Nano-systems

To demonstrate competency in one of these areas, the student must do one of the following: (1) take the course for that area and pass that course with a grade of A, or (2) pass a written exam for that specific area. The designated courses for each of the areas are:

  1. Circuits and Instrumentation:  EECS 426 - MOS Integrated Circuit Design
  2. Robotics:  EECS 489 - Robotics I
  3. Micro- and Nano-systems: EECS 422 - Solid-state Electronics II

In the event that a designated course is not offered within a reasonable period of time, the student may petition the faculty in electrical engineering to designate a suitable substitute.

A student failing to meet the requirements proscribed above may, with the support of his/her dissertation research advisor, petition the faculty for an oral exam. The oral exam will consist of a 30 minute presentation by the student to a 3-member examination committee made up of electrical engineering faculty. The topic will be drawn from the student's area of interest as selected by his/her advisor and approved by the committee. The topic may not come directly from the student's MS thesis conducted at CWRU or elsewhere.

A student has completed the Ph.D. Qualifier in electrical engineering when: (1) he/she has successfully completed the aforementioned competency requirement, (2) a group of faculty within his/her selected research area has conducted a review of the student's academic record and determined that adequate progress has been made, and (3) the student has formally identified a dissertation advisor.

            (For students matriculating prior to 8/1/2014)

The written portion of the PhD Qualifier in Electrical Engineering is designed to assess a student's knowledge and understanding of topics fundamental to all electrical engineering students pursuing a doctorate in the field. The written exam will consist of questions at the advanced undergraduate level covering material from the three topic areas listed below. Courses currently in the EE undergraduate curriculum corresponding to a particular topic area are listed in parentheses.

  1. Electromagnetic Fields (EECS 309)
  2. Circuits (EECS 245, EECS 281)
  3. Signals and Systems (EECS 246)

Exam problems will be limited to materials contained in the selected references as well as the aforementioned courses. Sample problems from previous exams as well as a list of relevant references are available upon request.

Students must show competency in all three tested areas. Upon recommendation of the faculty, a student showing marginal proficiency in one area may be required to correct this deficiency, for example, by taking an appropriate course (as determined by the faculty) and pass this course with at least a B grade or by serving as a teaching assistant of an appropriate course.

The written part of the Qualifying Exam for Electrical Engineering will be offered at least once a year during the month of January, prior to the beginning of the spring semester.

Systems and Control Engineering

Students must show competency in control systems engineering, signals and systems, and systems analysis (optimization, simulation, stochastic modeling, and decision and economic analysis). Students must demonstrate proficiency in at least three of the following areas:

  1. Control Systems (EECS408, EECS 483, EECS304)
  2. Optimization (EECS416, EECS346)
  3. Signal Processing (EECS401, EECS313)
  4. Simulation and Discrete Event Systems (EECS324, EECS409)
  5. Stochastic Models and Decisions (EECS352, EECS452)

To demonstrate proficiency in an area, the student can either take one of the courses listed for that area and obtain a course grade of A or take and pass an exam for that specific area. Upon recommendation by the faculty, the student showing marginal proficiency in any area may be required to improve proficiency by serving as a teaching assistant of an appropriate course.

Part 2

The second part of the Ph.D. Qualifier shall be prepared and administered by the designated Ph.D. Qualifying committee for students in the Electrical Engineering program and in the Computer Engineering program or by the student's Ph.D. dissertation guidance committee for each Ph.D. student in the Systems and Control program. This exam will test the student on advanced topics in the student's major area of study as well as specialized topics relevant to the student's research area.

Computer Engineering

Part 2 will consist of an oral exam based on the areas of the written examination.  However, the oral maybe waived if the student has performed well in all three topic areas of the written exam.

Electrical Engineering

            (For students matriculating after 8/1/2014)

Does not apply

            (For students matriculating prior to 8/1/2014)

Only those students performing adequately on the written exam will advance to the oral portion of the qualifier. The exam will be administered by a three-member examination committee assembled from the ECSE faculty. The oral portion of the PhD Qualifier will consist of a two-part examination. The first part of the oral exam will consist of a 20 minute presentation by the student on a topic selected by the examination committee. The topic will be one that is well documented in the scientific/engineering literature. In selecting the topic, the examination committee will take into account the student's research interests, academic background and experience in the field. The student will be given the topic 15 working days prior to the examination. The topic will be presented to the student in the form of a published paper or collection of papers. The student will be required to demonstrate competency in the following areas: (1) the material directly covered by the paper(s), (2) the material covered in the important references in the paper(s), and (3) any relevant background material that is necessary for the fundamental understanding of the paper.

The second part of the oral exam will consist of a series of questions drawn from the topic areas covered by the written exam.

As with the written exam, a student showing marginal proficiency during the oral exam may be asked to perform some sort of remediation at the discretion of the oral examination committee.

Systems and Control Engineering

A typical exam begins with a selection by the student's dissertation guidance committee of 5-6 research articles relevant to the student's research area. The students will be given 4 weeks to write a report answering questions formulated from those papers by the dissertation guidance committee. This will be followed within one week by an oral exam during which the student will give an oral presentation based on the report and answer questions from the dissertation guidance committee and other attending EECS faculty. Questions will be based on the report as well as miscellaneous questions on advanced topics in Systems and Control as deemed appropriate by committee members and/or other attending faculty. 

Ph.D. Candidacy

The final consideration of whether to admit the student to Ph.D. candidacy will be taken by the Ph.D. Qualifying Committee (for Electrical Engineering and Computer Engineering students) or the student's dissertation guidance committee (for Systems and Control students) after the student has passed the Ph.D. Qualifier. A written report on the results of the qualifier and Ph.D. candidacy will be prepared by the committee and submitted to the Department Chairperson, who, in turn, will notify the School of Graduate Studies of the results.

Ph.D. Proposal

After passing the Qualifier and being admitted to Ph.D. candidacy, the Ph.D. candidate is required to pass a Dissertation Proposal Exam on a timely basis, generally within one semester after being admitted to candidacy. This exam shall be administered by the student's dissertation guidance committee and consists of a written dissertation proposal and an oral presentation of the proposed dissertation research. As part of the oral presentation, the student will be expected to answer questions covering the proposed research as well as questions on related topics as deemed appropriate by the student's dissertation guidance committee. The written dissertation proposal must be received by the committee members at least ten days before the date scheduled for the oral exam and presentation. The Dissertation Proposal Exam, the Ph.D. research, the final oral dissertation defense, and all other requirements in the student's Ph.D. program of study must be completed within five years after the student is admitted to Ph.D. candidacy.

The Ph.D. Oral Defense

The student shall provide an announcement containing a title, abstract, date, time and location of the defense to the EECS Office of Student Affairs for general distribution at least 10 days in advance of the thesis defense.

The Ph.D. Residency Requirements

All Ph.D. students shall fulfill the Ph.D. residency requirements set forth by the Case School of Engineering and the School of Graduate Studies. Specifically, the Ph.D. student is required either to register for at least 9 credit hours during each of two consecutive semesters or to engage in academic work (taking courses, assisting in course development and/or teaching, fully engaging in research, or some other scholarly activities) in at least six consecutive terms (fall, spring, or summer) between matriculation and a period not exceeding 5 years after the first credited hour of EECS 701. The period during a leave of absence cannot be counted to fulfill the residency requirement.

Appeals

Any decision by an academic advisor, dissertation guidance committee, or Department Associate Chairperson may be appealed, in writing, to the Department Associate Chairperson who shall present the appeal, with his recommendations, to the faculty at its next regular faculty meeting. The faculty's decision shall be final.

Other Regulations

All students pursuing graduate studies in the Electrical Engineering and Computer Science department must abide by the academic regulations of the School of Graduate Studies and the Case School of Engineering contained in the most recent issue of the General Catalog of Case Western Reserve University, and supplemented by the Department of Electrical Engineering and Computer Science regulations.

NOTE: The above regulations apply to graduate students who entered the degree programs in computer engineering, electrical engineering, and systems & control engineering after January 1, 2005.

Ph.D. Degree Program (Computer and Information Science)

Ph.D. Requirements

Each student must satisfy requirements in the following categories:

  • Course Work
  • Mathematics and Science Requirement
  • Research Proposal
  • Qualifying Examination
  • Dissertation

All programs of study must contain at least 36 hours of courses past the undergraduate degree. All courses must be at the 400-level or higher. Two of the courses must be in a basic science or mathematics. A minimum of 12 hours must be in courses outside the student's thesis area. A student must have attained a minimum 3.25 grade point average (GPA) at the time of graduation. The minimum GPA is calculated based on all courses in the student's Program of Study that carry quality points.

These regulations are in addition to the Academics Regulations of the School of Graduate Studies and the Specific Requirements for the Ph.D. Degree of the Graduate Program in the Case School of Engineering as found in the General Bulletin of Case Western Reserve University.

When applying to this program, please select the CIS (Computing and Information Sciences) option in your application.

Academic Advisor and Research Advisor

Upon arrival each graduate student is assigned an academic advisor from the Computer Science (CS) program faculty, typically the CS graduate representative. By the end of the second semester of study, a Ph.D. student should transfer to a research advisor who may or may not be the same as the academic advisor. Once a research advisor is selected, the research advisor will also serve as the academic advisor, with whom a student consults to ensure that the balance of the Ph.D. course work constitutes a coherent program of study.

If the research advisor is not from the Computer Science program, the student must have an academic advisor from the CS program. The academic advisor may serve as a research co-advisor, if so desired by the student and the research advisor.

Program of Study

Each Ph.D. student must submit a Program of Study detailing his or her course work, Qualifying Examination and dissertation schedules. The Program of Study lists all courses taken beyond the undergraduate degree and shows how these courses satisfy the following course requirements for the Ph.D.:

1. The minimum course requirement beyond the B. S. level is 36 credit hours of courses taken for credit, at least 18 hours of which must be taken at CWRU. The following courses taken for credit will be acceptable:

  • All 400, 500, 600 level courses.
  • Graduate level courses taken at other institutions approved by the student’s advisor.

The above courses must include the following:

1.1  A minimum of 12 credit hours in the student's dissertation research area.

1.2  A minimum of 6 credit hours in mathematics or basic science.

1.3  A minimum of 12 credit hours of breadth courses that are not in the student's dissertation research area. The courses for items 1.1, 1.2, and 1.3 must be disjoint.

1.4  A minimum of 18 credit hours of courses approved by the Computer Science program which can be courses used in item 1.1 and item 1.3. These approved Computer Science courses are listed below.

2. A minimum of 18 credit hours of EECS 701 (Dissertation).

3. The cumulative grade-point average of all CWRU courses on the program of study must be at least 3.25.

4. All Ph.D. students are required to register for and pass EECS 400T, 500T and 600T which are 0 credit hour courses that provide students with teaching experience.

5. All Ph.D. students are required to register for and pass three semesters of "EECS 500: Electrical Engineering and Computer Science Colloquium" (a 0 credit hour course) before advancement to candidacy and complete a public presentation of their work.

The Program of Study must be approved by the student's academic advisor and the chair of the EECS Department, and it must be approved before the student advances to candidacy.

Qualifying Examination

The Computer Science Ph.D. qualifying examination is in the form of an oral exam and a written report, assessing the student’s ability to survey a specific research topic, discuss the state-of-the-art in depth, provide a critical description of the literature, and propose creative ideas on improving the state-of-the-art. The written and oral parts of the exam are administered by a committee consisting of three faculty members. The exam is supplemented by the evaluation of the student’s course performance and the final decision is made in a meeting of faculty affiliated with the CS program.

Students who hold an M.S. degree are required to take the qualifying exam at the start of their 3rd semester, and pass the qualifying exam before the start of their 4th semester in the Ph.D. program. Students who do not hold an M.S. degree are required to take the qualifying exam at the start of their 5th semester, and pass the qualifying exam before the start of their 6th semester in the Ph.D. program.

Committee: The exam will be administered by a committee composed of 3 faculty members, at least 2 of them being faculty members whose primary affiliation is Computer Science.  The student will provide 0 to 3 names as suggested committee members and the CS Graduate Committee will appoint  the  committee, taking into account the student's suggestion and maintenance of the load balance of the faculty. If the student has a research advisor at the time of the exam, then the advisor must be a member of the committee, but cannot serve as the chair of the committee. The CS Graduate Committee will make every effort to include a faculty member outside the research area in the committee.  The committee must be appointed at least 2 months prior to the exam.

Format: The student will select a research area from the following list:

  1. Algorithms
  2. Artificial Intelligence
  3. Biomedical informatics
  4. Computer Networks and Distributed Systems
  5. Databases and Data Mining
  6. Software Engineering

The exam committee will ask the student to write a report that adequately demonstrates the student's ability to perform research in their chosen area of research. Specific examples of this might be a survey of a broad area and/or approaches to a specific problem in the area. This will be followed by an oral examination.

Written Report: The student will submit a written report  on the specific research  problem. The report  has to adequately  describe  the  problem  and justify its  relevance,  identify the challenges  associated  with  the  problem, provide a broad  classification of existing approaches, point out their key differences and trade-offs, identify limitations, and propose solutions for these  limitations. The report  must  be at most 10 pages in length  (11 pt font, single-spaced, single  column,  1"  margins)  and  use illustrative figures,  tables,  and  other visual  material to  communicate key  ideas.  In addition, the report must include a comprehensive list of references.  The written report must be submitted to the exam committee three weeks before the date of the oral exam.

Oral  Exam:   In  the  oral  exam,  the  student  will  answer   questions  by  the committee members  on a specific research problem  chosen by the committee in the selected research area, assessing the  knowledge, technical depth, and broader  vision  of the student on the problem. The committee may also ask questions on the fundamentals of computer science as they relate to the specific research problem. The student may prepare slides in advance that will help answer questions or use the chalk board (or both), but the exam will not be in the format of a presentation. The exam will be one hour in duration. All students who are taking the  exam for  the  first time have to  take their  oral exam in the  week  prior  to the beginning or in the first  two weeks of the Fall semester.

Scoring: Each of the three committee members will prepare a report rating the student's exam performance according to the following criteria:

  • Fundamentals: Does the student have broad knowledge of fundamental concepts in computer science that will enable the student to understand and tackle the challenges in the specific research area?
  • Knowledge   of  Chosen  Area: Does  the  student have  sufficient technical   depth  and command  of  the  key  challenges   and  the  state-of-the-art in  the  chosen  area  of research?
  • Vision: Does the  student demonstrate a solid  understanding of the  relevance  of the problem  in  the  context  of scientific progress  and  societal  needs? Does the student show creativity in innovating their chosen area of research?
  • Communication.  Can the   student explain   the   concepts   in   an   accessible   and comprehensible manner and handle questions effectively?
  • Overall Score for the Written Report and the Oral Exam.

Possible ratings are 2 (Pass), 1(Retake), or 0 (Fail).

Course Work: The student's performance in all courses taken before the exam will also be considered by the CS program faculty in making a decision.  At the time of the exam, the student must have completed at least two 400-level Computer Science courses with a "B" or above. One of these courses must be EECS 454 (Analysis of Algorithms) or EECS 477 (Advanced Algorithms). The second course must be relevant to their chosen area of research. The relevance of the additional course to the research area is subject to approval by the CS Graduate Studies Committee. The following courses are pre-approved for each area:

1.       Algorithms: EECS 405, EECS 454, EECS 477

2.       Artificial Intelligence: EECS 440, EECS 491

3.       Biomedical Informatics: EECS 458, EECS 459

4.       Computer Networks and Distributed Systems: EECS 425, EECS 428, EECS 441

5.       Databases and Data Mining: EECS 405, EECS 433, EECS 435

6.       Software Engineering: EECS 493

Outcome: The final decision will be made by the CS program faculty based on the committee’s reports and the student’s coursework. The outcome of the exam will be one of Pass (the student advances to candidacy), Retake (the student has to retake the exam once more before the end of the following semester. The Retake decision can be partial, i.e. the student may be asked to retake the oral exam only, rewrite the report only, or take/retake a course), Fail (the student will be separated from the PhD program). The decision will be documented by the CS graduate chair and the student will be sent a notification letter.

Advancement to Candidacy

A student formally advances to candidacy after passing the Qualifying Examination and finding a faculty member who agrees to be the student's research advisor. The student should advance to candidacy within one semester of passing the Qualifying Examination.

Students should submit documentation, approved by the academic and research advisor(s), to the Chairman of the Graduate Studies Committee of Computer Science to be admitted to candidacy.

Students who have failed to complete the conditions above within the time limit will be separated from the Ph.D. program. Separation may also occur in the event of failure of the student to maintain a satisfactory GPA. A student who has been separated may not undertake further study for credit toward the Ph.D. degree. With the approval of the Department and the Dean of Graduate Studies, such a student may complete a master's degree, may register as a non-degree student or seek admission to the graduate program of another department.

Dissertation Advisory Committee

Each Ph.D. student must form a Dissertation Advisory Committee which consists of at least 4 members of the University faculty. The student's academic advisor serves as the chair of this committee. Both the chair of the committee and at least one other member must be a regular faculty member whose primary affiliation is with the Computer Science program. The committee must also include one member whose primary appointment is not in the Computer Science program.

Dissertation Proposal

The Ph.D. student must write a formal thesis proposal and defend it in an oral presentation to his or her Dissertation Advisory Committee. Normally this is done within a year of advancing to candidacy. A student who fails to defend his or her thesis proposal can attempt to defend it a second time after modifying the thesis proposal, but a second failure will cause the student to be separated from the program.

Dissertation

The student's dissertation must be original research in CS which represents a significant contribution to existing knowledge in the student's research area, a portion of which must be suitable for publication in reputable research journals or selective peer-reviewed conferences. In addition to the written dissertation, the doctoral candidate must pass an oral examination in defense of the dissertation. The Dissertation Advisory Committee is responsible for certifying that the quality and suitability of the material presented in the dissertation meet acceptable scholarly standards. To satisfy requirement 5 of the Program of Study above, if the student has not publicly presented their work at a conference or similar external venue, they must also present the dissertation research in a departmental seminar.

Course List for Program of Study Requirement 1.4

EECS 405 Data Structures and File Management

EECS 425 Computer Networks

EECS 433 Database Systems

EECS 435 Data Mining

EECS 439 Web Data Mining

EECS 440 Machine Learning

EECS 441 Internet Applications

EECS 442 Causal Learning from Data

EECS 444 Computer Security

EECS 454 Analysis of Algorithms

EECS 458 Bioinformatics

EECS 459 Bioinformatics for Systems Biology

EECS 466 Computer Graphics

EECS 477 Advanced Algorithms

EECS 484 Computational Intelligence

EECS 491 AI: Probabilistic Graphical Models

EECS 493 Software Engineering

EECS 496 AI: Sequential Decision Making

EECS 497 Statistical Natural Language Processing

EECS 499 Algorithmic Robotics

EECS 531 Computer Vision

    

Graduate Certificates

Graduate Certificates are discipline independent and intended to enable knowledgeable entry into the field of study. They are prescribed 3-course, 9-credit subsets of our MS degree offerings

  • Wearable Computing

  • Wireless Health

For more details, please refer to the Graduate Certificate information on the Case School of Engineering - San Diego website.

Facilities

Computer Facilities

The department computer facilities incorporate both Unix (primarily Solaris) and Microsoft Windows-based operating systems on high end computing workstations for education and research. A number of file, printing, database, and authentication servers support these workstations, as well as the administrative functions of the department. Labs are primarily located in the Olin and Glennan buildings, but include Nord Hall, and are networked via the Case network.

The Case network is a state-of-the-art, high-speed fiber optic campus-wide computer network that interconnects laboratories, faculty and student offices, classrooms, and student residence halls. It is one of the largest fiber-to-desktop networks anywhere in the world. Every desktop has a 1 Gbps (gigabit per second) connection to a fault-tolerant 10 Gbps backbone. To complement the wired network, over 1,200 wireless access points (WAPs) are also deployed allowing anyone with a laptop or wireless enabled PDA to access resources from practically anywhere on campus.

Off campus users, through the use of virtual private network (VPN) servers, can use their broadband connections to access many on campus resources, as well as software, as if they were physically connected to the Case network. The department and the university participate in the Internet2 and National Lambda Rail projects, which provides high-speed, inter-university network infrastructure allowing for enhanced collaboration between institutions. The Internet2 infrastructure allows students, faculty and staff alike the ability to enjoy extremely high performance connections to other Internet2 member institutions.

Aside from services provided through a commodity Internet connection, Case network users can take advantage of numerous online databases such as EUCLIDplus, the University Libraries’ circulation and public access catalog, as well as Lexus-Nexus™ and various CD-ROM based dictionaries, thesauri, encyclopedias, and research databases. Many regional and national institutional library catalogs are accessible over the network, as well.

EECS faculty are active users of the Microfabrication Laboratory and participants in the Advanced Platform Technology Center described under Interdisciplinary Research Centers.

Additional Department Facilities

Sally & Larry Sears Undergraduate Design Laboratory

This laboratory supports all departmental courses in circuits and includes a state-of-the-art lecture hall, a modernistic glass-walled lab, an electronics "store", and a student lounge and meeting area. Specialized lab space is available for senior projects and sponsored undergraduate programs. The lab is open to all undergraduates, and components are provided free of charge, so students can “play and tinker” with electronics and foster innovation and creativity. The laboratory provides access to PCs, oscilloscopes, signal generators, logic analyzers, and specialized equipment such as RF analyzers and generators. In addition, the lab includes full-time staff dedicated to the education, guidance and mentoring of undergraduates in the “art and practice” of hands-on engineering.
This is the central educational resource for students taking analog, digital, and mixed-signal courses in electronics, and has been supported by various corporations in addition to alumnus Larry Sears, a successful engineer and entrepreneur. Basic workstations consist of Windows-based computers equipped with LabView software, as well as Agilent 546xx oscilloscopes, 33120A Waveform Generators, 34401A Digital Multimeters, and E3631A power supplies.  Advanced workstations are similarly configured, but with a wider variety of high-performance test equipment.

Jennings Computer Center Lab

Supported by an endowment from the Jennings Foundation, this lab provides our students with the educational resources necessary for their classwork and exploration of the art of computing. This lab has both PCs and Sun Unix workstations, and includes two high-speed laser printers.

EECS Undergraduate Computer Lab

This laboratory (recently renovated with major funding provided by Rockwell Automation) on the 8th floor of the Olin building is accompanied by a suite of instructor/TA offices, and supports the freshman computing classes: ENGR 131 Elementary Computer Programming and EECS 132 Introduction to Programming in Java. Thirty student Macintosh workstations with underlying UNIX operating systems are available for hands-on instruction, and support the study of introductory programming at the university.

Nord Computer Laboratory

This is a general-purpose computer facility that is open 24 hours a day, to all students. The lab contains 50 PCs running Windows and four Apple Macintosh computers. Facilities for color printing, faxing, copying and scanning are provided. Special software includes PRO/Engineer, ChemCAD and Visual Studio. Blank CDs, floppy disks, transparencies and other supplies are available for purchase. Visit the website for more information.

Virtual Worlds (Gaming and Simulation) Laboratory

The Virtual Worlds Gaming and Simulation Lab forms the basis for experiential work in existing game related courses such as Artificial Intelligence, Graphics, and Simulation and for new gaming/simulation courses. Multi-disciplinary senior projects also use the lab facilities. In addition, a large number of significant cross-disciplinary immersive learning opportunities are available with the Cleveland Institute of Art, the CWRU Music department, and the CWRU School of Medicine.

The Virtual Worlds laboratory includes a PC room, a Console room, an Immersion room, an Audio room, a Medical Simulation room, and a Virtual Reality room containing:

  • 24 networked high-performance Alienware gaming quality PCs
  • Virtual reality components including three head mounted displays, three data gloves, a four sensor magnetic tracker, two inertial trackers, and three haptic interfaces
  • Game consoles, e.g. PS2, Xbox, Gamecube, Nintendo DS, PSP
  • Large screen 2-D and 3-D projection displays
  • Audio and music synthesis and production equipment

Database and Bioinformatics Research Laboratory

Primarily funded by equipment grants from the National Science Foundation and Microsoft Research, this laboratory provides PCs running Windows and Linux supporting research in database systems and bioinformatics.

Networks Laboratory

Supported through donations from both Cisco Systems and Microsoft Research, the networks lab has 15 stations complete with a PC, a Cisco switch and router, IP telephony equipment, as well as network patches back to a central rack where devices at one workstation may be routed to other equipment in the lab. A “library” of related equipment is also available.

Intelligent Networks & Systems Architecting (INSA) Research Laboratory

The Intelligent Networks & Systems Architecting (INSA) Research Laboratory is a state-of-the-art research facility dedicated to intelligent computer networks, systems engineering, design, and architecting. It includes optimization, simulation, artificial intelligent, visualization, and emulation. This lab has been partially supported by NASA’s Space Exploration programs for Human and Robotic Technology (H&RT). The INSA Lab is equipped with 10 high-performance workstations and 2 servers in a mixed Windows and Linux environment, with over 40 installed network interface cards providing connectivity to its wired and wireless research networks. It includes software packages such as GINO and LINDO, Arena simulation, ns2 and OPNET, as well as the STK satellite toolkit, artificial neural network, systems architecting and modeling, and statistical analysis and data management packages such as SPSS. The INSA Lab is also used for research in heterogeneous, sensor web, and mobile ad-hoc networks with space and battlefield applications.

VLSI Design Laboratory

This lab has been supported by the Semiconductor Research Corporation, NSF, NASA, Synopsys and Sun Microsystems. This laboratory has a number of advanced UNIX workstations that run commercial CAD software tools for VLSI design and is currently used to develop design and testing techniques for embedded system-on-chip.

Embedded Systems Laboratory

The Embedded Systems Laboratory is equipped with several Sun Blade Workstations running Solaris and Intel PCs running Linux. This lab has been recently equipped with advanced FPGA Virtex II prototype boards from Xilinx, including about 100 Xilinx Virtex II FPGAs and Xilinx CAD tools for development work. A grant-in-aid from Synopsys has provided the Synopsys commercial CAD tools for software development and simulation. This Lab is also equipped with NIOS FPGA boards from Altera, including software tools.

Mixed-Signal Integrated Circuit Laboratory

This research laboratory includes a cluster of Windows workstations and a UNIX server with integrated circuit design software (Cadence Custom IC Bundle), as well as a variety of equipment used in the characterization of mixed-signal (analog and digital) integrated circuits, which are typically fabricated using the MOSIS foundry service. Test equipment includes an IC probe station, surface-mount soldering equipment, logic and network/spectrum analyzers, an assortment of digital oscilloscopes with sample rates up to 1 GHz, and a variety of function generators, multi-meters, and power supplies.

Microelectromechanical Systems (MEMS) Research Laboratory

The MEMS Research Laboratory is equipped for microfabrication processes that do not require a clean room environment. These include chemical-mechanical polishing (two systems), bulk silicon etching, aqueous chemical release of free standing micromechanical components, and supercritical point drying. In addition to the fabrication capabilities, the lab is also well equipped for testing and evaluation of MEMS components as it houses wafer-scale probe stations, a vacuum probe station, a multipurpose vacuum chamber, and an interferometric load-deflection station. Two large (8 x 2 ft2) vibration isolated air tables are available for custom testing setups. The laboratory has a wide variety of electronic testing instruments, including a complete IV-CV testing setup.

BioMicroSystems Laboratory

This research laboratory focuses on developing wireless integrated circuits and microsystems for a variety of applications in biomedical and neural engineering. The laboratory contains several PC computers, software packages for design, simulation, and layout of high-performance, low-noise, analog/mixed-signal/RF circuits and systems, and testing/measurement equipment such as dc power supply, arbitrary function generator, multichannel mixed-signal oscilloscope, data acquisition hardware, spectrum analyzer, potentiostat, and current source meter.  Visit the website for more information.

Emerging Materials Development and Evaluation Laboratory

The EMDE Laboratory is equipped with tooling useful in characterizing materials for MEMS applications. The laboratory contains a PC-based apparatus for load-deflection and burst testing of micromachined membranes, a custom-built test chamber for evaluation and reliability testing of MEMS-based pressure transducers and other membrane-based devices, a probe station for electrical characterization of micro-devices, a fume hood configured for wet chemical etching of Si, polymers, and a wide variety of metals, tooling for electroplating, an optical reflectometer, and a supercritical-point dryer for release of surface micromachined devices. The lab also has a PC with layout and finite element modeling software for device design, fabrication process design and analysis of testing data.

Laboratory for Nanoscale Devices and Integrated Systems

This research lab explores new engineering and physics at the nanoscale, and by applying such knowledge, develops new devices and tools for emerging technological applications in the new frontiers of information, biomedical, and life sciences.  A primary current theme of the research is on developing nanoscale electromechanical systems (NEMS), based on exploration and understandings of mesoscopic devices fundamentals and new characteristics of various nanoscale structures and functional systems.  The lab has been developing NEMS with new functions and high performance, in combination with some of the latest advances in advanced materials, integrated circuits, and others, through crossdisciplinary explorations and collaboration.  The lab is dedicated to the development of various NEMS transducers, biosensors, high-frequency nanodevices, and high-precision instruments.  For more information, contact Dr. Philip Feng.

Some of the recent research highlights include: the first very-high-frequency silicon nanowire resonators and sensors, the first ultra-high-frequency self-sustaining oscillators (aka NEMS clocks), the first low-voltage (~1V), high-speed nanowire NEMS switches, and the first NEMS mass sensors for weighing single-biomolecules and for probing the noise arising from adsorbed atoms walking on the surface of a vibrating NEMS.

Control and Energy Systems Center (CESC)

The Control and Energy Systems Center (CESC) looks for new transformational research and engineering breakthroughs to build a better world, improving our industry, economy, energy, environment, water resources and society, all with sustainability and within an international collaboration framework.  With an interdisciplinary and concurrent engineering approach, the CESC focuses on bridging the gap between fundamental and applied research in advanced control and systems engineering, with special emphasis in energy innovation, wind energy, power systems, water treatment plants, sustainability, spacecraft, environmental and industrial applications.  Fundamental research foci are to gain knowledge and understanding on multi-input-multi-output physical worlds, nonlinear plants, distributed parameter systems, plants with non-minimum phase, time delay and/or uncertainty, etc., and to develop new methodologies to design quantitative robust controllers to improve the efficiency and reliability of such systems.  Applied research aims to develop advanced solutions with industrial partners, for practical control engineering problems in energy systems, multi-megawatt wind turbines, renewable energy plants, power system dynamics and control, grid integration, energy storage, power electronics, wastewater treatment plants, desalination systems, formation flying spacecraft, satellites with flexible appendages, heating systems, robotics, parallel kinematics, telescope control, etc.  The Center was established in 2009 with the support of the Milton and Tamar Maltz Family Foundation and the Cleveland Foundation.

Process Control Laboratory

This laboratory contains process control pilot plants and computerized hardware for data acquisition and process control that is used for demonstrations, teaching, and research. This laboratory also has access to steam and compressed air for use in the pilot processes that include systems for flow and temperature control, level and temperature control, pH control, and pressure control plants.

Dynamics and Control Laboratory

This laboratory contains data acquisition and control devices, PLCs, electromechanical systems, and mechanical, pneumatic, and electrical laboratory experiments for demonstrations, teaching, and research. Particular systems include: AC/DC servo systems, multi-degree-of-freedom robotic systems, rectilinear and torsional multi-degree-of-freedom vibration systems, inverted pendulum, magnetic levitation system, and a PLC-controlled low-voltage AC smart grid demonstration system that includes conventional and renewable (wind and solar) generation, battery and compressed air energy storage, residential, commercial and industry loads, a capacitor bank for real-time power factor correction, and advanced sensing and controls implemented through an interconnected system of intelligent software agents.

DSCI 133. Introduction to Data Science and Engineering for Majors. 3 Units.

This course is an introduction to data science and analytics. In the first half of the course, students will develop a basic understanding of how to manipulate, analyze and visualize large data in a distributed computing environment, with an appreciation of open source development, security and privacy issues. Case studies and team project assignments in the second half of the course will be used to implement the ideas. Topics covered will include: Overview of large scale parallel and distributed (cloud) computing; file systems and file i/o; open source coding and distributed versioning, data query and retrieval; basic data analysis; visualization; data security, privacy and provenance. Prereq: ENGR 131 or EECS 132.

DSCI 234. Structured and Unstructured Data. 3 Units.

This course is an introduction to types of data and their representation, storage, processing and analysis. The course has three parts. In the first part of the course, students will develop a basic understanding and the ability to represent, store, process and analyze structured data. Structured data include catalogs, records, tables, logs, etc., with a fixed dimension and well-defined meaning for each data point. Suitable representation and storage mechanisms include lists and arrays. Relevant techniques include keys, hashes, stacks, queues and trees. In the second part of the course, students will develop a basic understanding and the ability to represent, store, process and analyze semi-structured data. Semi-structured data include texts, web pages and networks, without a dimension and structure, but with well-defined meaning for each data point. Suitable representation and storage mechanisms include trees, graphs and RDF triples. Relevant techniques include XML, YAML, JSON, parsing, annotation, language processing. In the third part of the course, students will develop a basic understanding and the ability to represent, store, process and analyze unstructured data. Unstructured data include images, video, and time series data, without neither a fixed dimension and structure, nor well-defined meaning for individual data points. Suitable representation and storage mechanisms include large matrices, EDF, DICOM. Relevant techniques include feature extraction, segmentation, clustering, rendering, indexing, and visualization. Prereq: DSCI 133.

DSCI 341. Introduction to Databases: DS Major. 3 Units.

Database management become a central component of a modern computing environment, and, as a result, knowledge about database systems has become an essential part of education in computer science and data science. This course is an introduction to the nature and purpose of database systems, fundamental concepts for designing, implementing and querying a database and database architectures. Weeks 1-6 provide an overview of basic database systems concepts including database design, database systems architecture, and database querying, using relational model and SQL as query language. Weeks 7-10 Objects, Semi structured data, XML and RDF basics. Weeks 11-14 provide an overview of more advanced topics including Database System Architectures (Parallel Databases and Distributed Databases), and Data Warehousing and Information Retrieval. Prereq: DSCI 234 or EECS 233.

DSCI 342. Introduction to Data Science Systems. 3 Units.

An introduction to the software and hardware architecture of data science systems, with an emphasis on Operating Systems and Computer Architecture that are relevant to Data Sciences systems. At the end of the course, the student should understand the principles and architecture of storage systems, file systems (especially, HDFS), memory hierarchy, and GPU. The student should have carried out projects in these areas, and should be able to critically compare various design decisions in terms of capability and performance. Prereq: DSCI 234.

DSCI 343. Introduction to Data Analysis. 3 Units.

In this class we will give a broad overview of data analysis techniques, covering techniques from data mining, machine learning and signal processing. Students will also learn about probabilistic representations, how to conduct an empirical study and support empirical hypotheses through statistical tests, and visualize the results. Course objectives: -Expose students to different analysis approaches. -Understand probabilistic representations and inference mechanisms. -Understand how to create empirical hypotheses and how to test them. Prereq: EECS 340 and DSCI 234.

DSCI 344. Scalable Parallel Data Analysis. 3 Units.

This course provides an introduction to scalable and parallel data analysis using the most common frameworks and programming tools in the age of big data. Covered topics include parallel programming models, parallel hardware architectures, multi-threaded, multi-core programming, cluster computing and GPU programming. The course is designed to provide a heavily hands-on experience with several programming assignments. Prereq: DSCI 342.

DSCI 345. Files, Indexes and Access Structures for Big Data. 3 Units.

Database management become a central component of a modern computing environment, and, as a result, knowledge about database systems has become an essential part of education in computer science and data science. This course is an introduction to the nature and purpose of database systems, fundamental concepts for designing, implementing and querying a database and database architectures. Objectives: -An expert knowledge of basic data structures, basic searching, sorting, methods, algorithm techniques, (such as greedy and divide and conquer) -In-depth knowledge on Search and Index Structures for large, heterogeneous data including multidimensional data, high dimensional data and data in metric spaces (e.g., sequences, images), on different search methods (e.g. similarity searching, partial match, exact match), and on dimensionality reduction techniques. Prereq: DSCI 234 or EECS 233.

DSCI 390. Machine Learning for Big Data. 3 Units.

Machine learning is a sub-field of Artificial Intelligence that is concerned with the design and analysis of algorithms that "learn" and improve with experience, While the broad aim behind research in this area is to build systems that can simulate or even improve on certain aspects of human intelligence, algorithms developed in this area have become very useful in analyzing and predicting the behavior of complex systems. Machine learning algorithms have been used to guide diagnostic systems in medicine, recommend interesting products to customers in e-commerce, play games at human championship levels, and solve many other very complex problems. This course is an introduction to algorithms for machine learning and their implementation in the context of big data. We will study different learning settings, the different algorithms that have been developed for these settings, and learn about how to implement these algorithms and evaluate their behavior in practice. We will also discuss dealing with noise, missing values, scalability properties and talk about tools and libraries available for these methods. At the end of the course, you should be able to: --Understand when to use machine learning algorithms; --Understand, represent and formulate the learning problem; --Apply the appropriate algorithm(s) or tools, with an understanding of the tradeoffs involved including scalability and robustness; --Correctly evaluate the behavior of the algorithm when solving the problem. Prereq: DSCI 234 and DSCI 343.

DSCI 391. Data Mining for Big Data. 3 Units.

With the unprecedented rate at which data is being collected today in almost all fields of human endeavor, there is an emerging economic and scientific need to extract useful information from it. Data mining is the process of automatic discovery of patterns, changes, associations and anomalies in massive databases, and is a highly interdisciplinary field representing the confluence of several disciplines, including database systems, data warehousing, machine learning, statistics, algorithms, data visualization, and high-performance computing. This course is an introduction to the commonly used data mining techniques. In the first part of the course, students will develop a basic understanding of the basic concepts in data mining such as frequent pattern mining, association rule mining, basic techniques for data preprocessing such as normalization, regression, and classic matrix decomposition methods such as SVD, LU, and QR decompositions. In the second part of the course, students will develop a basic understanding of classification and clustering and be able to apply classic methods such as k-means, hierarchical clustering methods, nearest neighbor methods, association based classifiers. In the third part of the course, students will have a chance to study more advanced data mining applications such as feature selection in high-dimensional data, dimension reduction, and mining biological datasets. Prereq: DSCI 234 and DSCI 343.

________________________________________________________________________________________________ 

EECS 132. Introduction to Programming in Java. 3 Units.

Introduction to computer programming and problem solving with the Java language. Computers, operating systems, and Java applications; software development; conditional statements; loops; methods; arrays; classes and objects; object-oriented design; unit testing; strings and text I/O; inheritance and polymorphism; GUI components; application testing; abstract classes and interfaces; exception handling; files and streams; GUI event handling; generics; collections; threads; comparison of Java to C, C++, and C#.

EECS 216. Fundamental System Concepts. 3 Units.

Develops framework for addressing problems in science and engineering that require an integrated, interdisciplinary approach, including the effective management of complexity and uncertainty. Introduces fundamental system concepts in an integrated framework. Properties and behavior of phenomena regardless of the physical implementation through a focus on the structure and logic of information flow. Systematic problem solving methodology using systems concepts. Recommended preparation: MATH 224.

EECS 233. Introduction to Data Structures. 4 Units.

The programming language Java; pointers, files, and recursion. Representation and manipulation of data: one way and circular linked lists, doubly linked lists; the available space list. Different representations of stacks and queues. Representation of binary trees, trees and graphs. Hashing; searching and sorting. Prereq: EECS 132.

EECS 245. Electronic Circuits. 4 Units.

Analysis of time-dependent electrical circuits. Dynamic waveforms and elements: inductors, capacitors, and transformers. First- and second-order circuits, passive and active. Analysis of sinusoidal steady state response using phasors. Laplace transforms and pole-zero diagrams. S-domain circuit analysis. Two-port networks, impulse response, and transfer functions. Introduction to nonlinear semiconductor devices: diodes, BJTs, and FETs. Gain-bandwidth product, slew-rate and other limitations of real devices. SPICE simulation and laboratory exercises reinforce course materials. Prereq: ENGR 210. Prereq or Coreq: MATH 224.

EECS 246. Signals and Systems. 4 Units.

Mathematical representation, characterization, and analysis of continuous-time signals and systems. Development of elementary mathematical models of continuous-time dynamic systems. Time domain and frequency domain analysis of linear time-invariant systems. Fourier series, Fourier transforms, and Laplace transforms. Sampling theorem. Filter design. Introduction to feedback control systems and feedback controller design. Prereq: ENGR 210. Prereq or Coreq: MATH 224.

EECS 275. Fundamentals of Robotics. 4 Units.

The Fundamentals of Robotics course will expose students to fundamental principles of robotics. Students will explore high level conceptual foundations of robotics beginning with Braitenberg vehicles and apply this knowledge to simulated and physical robot hardware in laboratory experiences and in a final project. Laboratory experiences will guide students through applying theory to practice increasingly complex tasks in a project oriented, group work environment. The course culminates in a robotics challenge project at the end of the semester. Topics covered are: sensors, actuators, kinematics, control, planning and programming. Programming languages and concepts (e.g., C++, object oriented programming) used in robotics will be introduced and used with modern robotics programming toolboxes and frameworks. Prior experience with these languages will not be necessary. Previous experience with robotics is not required for this course. Prereq: (ENGR 131 or EECS 132) and PHYS 121 and MATH 121.

EECS 281. Logic Design and Computer Organization. 4 Units.

Fundamentals of digital systems in terms of both computer organization and logic level design. Organization of digital computers; information representation; boolean algebra; analysis and synthesis of combinational and sequential circuits; datapaths and register transfers; instruction sets and assembly language; input/output and communication; memory. Prereq: ENGR 131 or EECS 132.

EECS 290. Introduction to Computer Game Design and Implementation. 3 Units.

This class begins with an examination of the history of video games and of game design. Games will be examined in a systems context to understand gaming and game design fundamentals. Various topics relating directly to the implementation of computer games will be introduced including graphics, animation, artificial intelligence, user interfaces, the simulation of motion, sound generation, and networking. Extensive study of past and current computer games will be used to illustrate course concepts. Individual and group projects will be used throughout the semester to motivate, illustrate and demonstrate the course concepts and ideas. Group game development and implementation projects will culminate in classroom presentation and evaluation. Prereq: EECS 132.

EECS 293. Software Craftsmanship. 4 Units.

A course to improve programming skills, software quality, and the software development process. Software design; Version control; Control issues and routines; Pseudo-code programming process and developer testing; Defensive programming; Classes; Debugging; Self-documenting code; Refactoring. Offered as EECS 293 and EECS 293N. Prereq: Computer Science Major and EECS 233 with a C or higher.

EECS 293N. Software Craftsmanship. 4 Units.

A course to improve programming skills, software quality, and the software development process. Software design; Version control; Control issues and routines; Pseudo-code programming process and developer testing; Defensive programming; Classes; Debugging; Self-documenting code; Refactoring. Offered as EECS 293 and EECS 293N. Prereq: EECS 233 with a C or higher.

EECS 296. Independent Projects. 1 - 3 Unit.

Independent projects in Computer Engineering, Computer Science, Electrical Engineering and Systems and Control Engineering. Recommended preparation: ENGR 131 or EECS 132. Prereq: Limited to freshmen and sophomore students.

EECS 297. Special Topics. 1 - 3 Unit.

Special topics in Computer Engineering, Computer Science, Electrical Engineering, and Systems and Control Engineering. Prereq: Limited to freshmen and sophomores.

EECS 301. Digital Logic Laboratory. 2 Units.

This course is an introductory experimental laboratory for digital networks. The course introduces students to the process of design, analysis, synthesis and implementation of digital networks. The course covers the design of combinational circuits, sequential networks, registers, counters, synchronous/asynchronous Finite State Machines, register based design, and arithmetic computational blocks. Prereq: EECS 281.

EECS 302. Discrete Mathematics. 3 Units.

A general introduction to basic mathematical terminology and the techniques of abstract mathematics in the context of discrete mathematics. Topics introduced are mathematical reasoning, Boolean connectives, deduction, mathematical induction, sets, functions and relations, algorithms, graphs, combinatorial reasoning. Offered as EECS 302 and MATH 304. Prereq: MATH 122 or MATH 124 or MATH 126.

EECS 304. Control Engineering I with Laboratory. 3 Units.

Analysis and design techniques for control applications. Linearization of nonlinear systems. Design specifications. Classical design methods: root locus, bode, nyquist. PID, lead, lag, lead-lag controller design. State space modeling, solution, controllability, observability and stability. Modeling and control demonstrations and experiments single-input/single-output and multivariable systems. Control system analysis/design/implementation software. The course will incorporate the use of Grand Challenges in the areas of Energy Systems, Control Systems, and Data Analytics in order to provide a framework for problems to study in the development and application of the concepts and tools studied in the course. Various aspects of important engineering skills relating to leadership, teaming, emotional intelligence, and effective communication are integrated into the course. Prereq: EECS 246 or equivalent.

EECS 305. Control Engineering I Laboratory. 1 Unit.

A laboratory course based on the material in EECS 304. Modeling, simulation, and analysis using MATLAB. Physical experiments involving control of mechanical systems, process control systems, and design of PID controllers. Coreq: EECS 304.

EECS 309. Electromagnetic Fields I. 3 Units.

Maxwell's integral and differential equations, boundary conditions, constitutive relations, energy conservation and Pointing vector, wave equation, plane waves, propagating waves and transmission lines, characteristic impedance, reflection coefficient and standing wave ratio, in-depth analysis of coaxial and strip lines, electro- and magneto-quasistatics, simple boundary value problems, correspondence between fields and circuit concepts, energy and forces. Prereq: PHYS 122 or PHYS 214. Prereq or Coreq: MATH 224.

EECS 313. Signal Processing. 3 Units.

Fourier series and transforms. Analog and digital filters. Fast-Fourier transforms, sampling, and modulation for discrete time signals and systems. Consideration of stochastic signals and linear processing of stochastic signals using correlation functions and spectral analysis. The course will incorporate the use of Grand Challenges in the areas of Energy Systems, Control Systems, and Data Analytics in order to provide a framework for problems to study in the development and application of the concepts and tools studied in the course. Various aspects of important engineering skills relating to leadership, teaming, emotional intelligence, and effective communication are integrated into the course. Prereq: EECS 246.

EECS 314. Computer Architecture. 3 Units.

This course provides students the opportunity to study and evaluate a modern computer architecture design. The course covers topics in fundamentals of computer design, performance, cost, instruction set design, processor implementation, control unit, pipelining, communication and network, memory hierarchy, computer arithmetic, input-output, and an introduction to RISC and super-scalar processors. Prereq: EECS 281.

EECS 315. Digital Systems Design. 4 Units.

This course gives students the ability to design modern digital circuits. The course covers topics in logic level analysis and synthesis, digital electronics: transistors, CMOS logic gates, CMOS lay-out, design metrics space, power, delay. Programmable logic (partitioning, routing), state machine analysis and synthesis, register transfer level block design, datapath, controllers, ASM charts, microsequencers, emulation and rapid protyping, and switch/logic-level simulation. Prereq: EECS 281.

EECS 316. Computer Design. 3 Units.

Methodologies for systematic design of digital systems with emphasis on programmable logic implementations and prototyping. Laboratory which uses modern design techniques based on hardware description languages such as VHDL, CAD tools, and Field Programmable Gate Arrays (FPGAs). Prereq: EECS 281 and EECS 315.

EECS 318. VLSI/CAD. 4 Units.

With Very Large Scale Integration (VLSI) technology there is an increased need for Computer-Aided Design (CAD) techniques and tools to help in the design of large digital systems that deliver both performance and functionality. Such high performance tools are of great importance in the VLSI design process, both to perform functional, logical, and behavioral modeling and verification to aid the testing process. This course discusses the fundamentals in behavioral languages, both VHDL and Verilog, with hands-on experience. Prereq: EECS 281 and EECS 315.

EECS 319. Applied Probability and Stochastic Processes for Biology. 3 Units.

Applications of probability and stochastic processes to biological systems. Mathematical topics will include: introduction to discrete and continuous probability spaces (including numerical generation of pseudo random samples from specified probability distributions), Markov processes in discrete and continuous time with discrete and continuous sample spaces, point processes including homogeneous and inhomogeneous Poisson processes and Markov chains on graphs, and diffusion processes including Brownian motion and the Ornstein-Uhlenbeck process. Biological topics will be determined by the interests of the students and the instructor. Likely topics include: stochastic ion channels, molecular motors and stochastic ratchets, actin and tubulin polymerization, random walk models for neural spike trains, bacterial chemotaxis, signaling and genetic regulatory networks, and stochastic predator-prey dynamics. The emphasis will be on practical simulation and analysis of stochastic phenomena in biological systems. Numerical methods will be developed using a combination of MATLAB, the R statistical package, MCell, and/or URDME, at the discretion of the instructor. Student projects will comprise a major part of the course. Offered as BIOL 319, EECS 319, MATH 319, SYBB 319, BIOL 419, EBME 419, MATH 419, PHOL 419, and SYBB 419 . Prereq: MATH 224 or MATH 223 and BIOL 300 or BIOL 306 and MATH 201 or MATH 307 or consent of instructor.

EECS 321. Semiconductor Electronic Devices. 4 Units.

Energy bands and charge carriers in semiconductors and their experimental verifications. Excess carriers in semiconductors. Principles of operation of semiconductor devices that rely on the electrical properties of semiconductor surfaces and junctions. Development of equivalent circuit models and performance limitations of these devices. Devices covered include: junctions, bipolar transistors, Schottky junctions, MOS capacitors, junction gate and MOS field effect transistors, optical devices such as photodetectors, light-emitting diodes, solar cells, and lasers. Prereq: PHYS 122. Prereq or Coreq: MATH 224.

EECS 322. Integrated Circuits and Electronic Devices. 3 Units.

Technology of monolithic integrated circuits and devices, including crystal growth and doping, photolithography, vacuum technology, metalization, wet etching, thin film basics, oxidation, diffusion, ion implantation, epitaxy, chemical vapor deposition, plasma processing, and micromachining. Basics of semiconductor devices including junction diodes, bipolar junction transistors, and field effect transistors. Prereq: PHYS 122. Prereq or Coreq: MATH 224.

EECS 324. Modeling and Simulation of Continuous Dynamical Systems. 3 Units.

This course examines the computer-based modeling and simulation of continuous dynamical system behavior in a variety of systems including electric power systems, industrial control systems, and signal processing that are represented by a set of differential equations need to be solved numerically in order to compute and represent their behavior for study. In addition to these applications, there are many other important applications of these tools in computer games, virtual worlds, weather forecasting, and population models, to name a few examples. Numerical integration techniques are developed to perform these computations. Multiple computational engines such as Matlab, Simulink, Unity, and physics engines etc. are also examined as examples of commonly used software to solve for and visualize continuous-time system behavior. The course will incorporate the use of Grand Challenges in the areas of Energy Systems, Control Systems, and Data Analytics in order to provide motivation and a framework for problems to study in the development and application of the concepts and tools studied in the course. Various aspects of important engineering skills relating to leadership, teaming, emotional intelligence, and effective communication are integrated into the course. Prereq: MATH 224.

EECS 325. Computer Networks I. 3 Units.

An introduction to computer networks and the Internet. Applications: http, ftp, e-mail, DNS, socket programming. Transport: UDP, TCP, reliable data transfer, and congestion control. Network layer: IP, routing, and NAT. Link layer: taxonomy, Ethernet, 802.11. Offered as EECS 325 and EECS 325N. Prereq: Computer Science Major with minimum Junior Standing and EECS 233 with a C or higher.

EECS 325N. Computer Networks I. 3 Units.

An introduction to computer networks and the Internet. Applications: http, ftp, e-mail, DNS, socket programming. Transport: UDP, TCP, reliable data transfer, and congestion control. Network layer: IP, routing, and NAT. Link layer: taxonomy, Ethernet, 802.11. Offered as EECS 325 and EECS 325N. Prereq: Minimum Junior Standing and EECS 233 with a C or higher.

EECS 326. Instrumentation Electronics. 3 Units.

A second course in instrumentation with emphasis on sensor interface electronics. General concepts in measurement systems, including accuracy, precision, sensitivity, linearity, and resolution. The physics and modeling of resistive, reactive, self-generating, and direct-digital sensors. Signal conditioning for same, including bridge circuits, coherent detectors, and a variety of amplifier topologies: differential, instrumentation, charge, and transimpedance. Noise and drift in amplifiers and resistors. Practical issues of interference, including grounding, shielding, supply/return, and isolation amplifiers. Prereq: ENGR 210 and (EECS 246, EBME 308 or EMAE 350).

EECS 329. Introduction to Nanomaterials: Material Synthesis, Properties and Device Applications. 3 Units.

The behavior of nanoscale materials is close, to atomic behavior rather than that of bulk materials. The growth of nanomaterials, such as quantum dots, has the tendency to be viewed as an art rather than science. These nanostructures have changed our view of Nature. This course is designed to provide an introduction to nanomaterials and devices to both senior undergraduate and graduate students in engineering. Topics covered include an introduction to growth issues, quantum mechanics, quantization of electronic energy levels in periodic potentials, tunneling, distribution functions and density of states, optical and electronic properties, and devices. Offered as EECS 329 and EECS 429. Coreq: EECS 309.

EECS 337. Compiler Design. 4 Units.

Design and implementation of compilers and other language processors. Scanners and lexical analysis; regular expressions and finite automata; scanner generators; parsers and syntax analysis; context free grammars; parser generators; semantic analysis; intermediate code generation; runtime environments; code generation; machine independent optimizations; data flow and dependence analysis. There will be a significant programming project involving the use of compiler tools and software development tools and techniques. Prereq: EECS 233 and EECS 281.

EECS 338. Intro to Operating Systems and Concurrent Programming. 4 Units.

Intro to OS: OS Structures, processes, threads, CPU scheduling, deadlocks, memory management, file system implementations, virtual machines, cloud computing. Concurrent programming: fork, join, concurrent statement, critical section problem, safety and liveness properties of concurrent programs, process synchronization algorithms, semaphores, monitors. UNIX systems programming: system calls, UNIX System V IPCs, threads, RPCs, shell programming. Offered as EECS 338 and EECS 338N. Prereq: Computer Science Major or Minor and EECS 233 with a C or higher.

EECS 338N. Intro to Operating Systems and Concurrent Programming. 4 Units.

Intro to OS: OS Structures, processes, threads, CPU scheduling, deadlocks, memory management, file system implementations, virtual machines, cloud computing. Concurrent programming: fork, join, concurrent statement, critical section problem, safety and liveness properties of concurrent programs, process synchronization algorithms, semaphores, monitors. UNIX systems programming: system calls, UNIX System V IPCs, threads, RPCs, shell programming. Offered as EECS 338 and EECS 338N. Prereq: EECS 233 with a C or higher.

EECS 339. Web Data Mining. 3 Units.

Web crawling technology, web search and information extraction, unsupervised and semi-supervised learning techniques and their application to web data extraction, social network analysis, various pagerank algorithms, link analysis, web resource discovery, web, resource description framework (RDF), XML, Web Ontology Language (OWL). Prereq: EECS 338, EECS 341, and (EECS 302 or MATH 304).

EECS 340. Algorithms. 3 Units.

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as EECS 340 and EECS 340N. Prereq: Computer Science Major or Minor and (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 340N. Algorithms. 3 Units.

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as EECS 340 and EECS 340N. Prereq: (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 341. Introduction to Database Systems. 3 Units.

Relational model, ER model, relational algebra and calculus, SQL, OBE, security, views, files and physical database structures, query processing and query optimization, normalization theory, concurrency control, object relational systems, multimedia databases, Oracle SQL server, Microsoft SQL server. Offered as EECS 341 and EECS 341N. Prereq: Computer Science Major and (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 341N. Introduction to Database Systems. 3 Units.

Relational model, ER model, relational algebra and calculus, SQL, OBE, security, views, files and physical database structures, query processing and query optimization, normalization theory, concurrency control, object relational systems, multimedia databases, Oracle SQL server, Microsoft SQL server. Offered as EECS 341 and EECS 341N. Prereq: (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 342. Introduction to Global Issues. 3 Units.

This systems course is based on the paradigm of the world as a complex system. Global issues such as population, world trade and financial markets, resources (energy, water, land), global climate change, and others are considered with particular emphasis put on their mutual interdependence. A reasoning support computer system which contains extensive data and a family of models is used for future assessment. Students are engaged in individual, custom-tailored, projects of creating conditions for a desirable or sustainable future based on data and scientific knowledge available. Students at CWRU will interact with students from fifteen universities that have been strategically selected in order to give global coverage to UNESCO'S Global-problematique Education Network Initiative (GENIe) in joint, participatory scenario analysis via the internet.

EECS 342I. Global Issues, Health, & Sustainability in India. 3 Units.

Global Issues, Health, & Sustainability in India is an interdisciplinary social work and engineering collaboration that includes a short-term cross-cultural immersion. This course brings together social work (knowledge, values, and skills) and health care (promotion, education, and community) perspectives to the understanding of technical project assessment, selection, planning and implementation in India. The course is also designed to help students understand culturally relevant community engagement strategies to ensure project acceptance in underserved and developing communities. Many field sites will be visited in order to observe first-hand the community assessment and development of projects that engineers implement. An example of these projects could include infrastructure to support green energy and water (resource planning, development, conservation, and sanitation). This study abroad course will acquaint students with history and culture of India, its social, political and economic development and the impact it has on health and the delivery of social services. Participants will learn about factors affecting the abilities to reach, treat, educate, and equip communities to improve health outcomes. Engineering students will learn the quantitative aspects using a paradigm of hierarchical systems, mathematical modeling, and scenario analysis using a 'reasoning support' system. Together the engineering, social work, and health sciences students in disciplinary-balanced teams will jointly work on real and meaningful projects marrying the descriptive scenarios (that is the 'subjective' aspect) with the numerical scenario analysis based on mathematical modeling (or 'objective' aspect) to form a coherent view of the future. The course will be taught using both lecture and experiential modalities. Engineering students will conduct computer modeling work. Along with visiting a variety of governmental and non-governmental institutions, organizations and projects, students will visit historical sites and attend cultural events. Offered as EECS 342I and SASS 375I Counts for CAS Global & Cultural Diversity Requirement.

EECS 343. Theoretical Computer Science. 3 Units.

Introduction to different classes of automata and their correspondence to different classes of formal languages and grammars, computability, complexity and various proof techniques. MATH/EECS 343 and MATH 410 cannot both be taken for credit. Offered as EECS 343 and MATH 343. Prereq: EECS 302 or MATH 304.

EECS 344. Electronic Analysis and Design. 3 Units.

The design and analysis of real-world circuits. Topics include: junction diodes, non-ideal op-amp models, characteristics and models for large and small signal operation of bipolar junction transistors (BJTs) and field effect transistors (FETs), selection of operating point and biasing for BJT and FET amplifiers. Hybrid-pi model and other advanced circuit models, cascaded amplifiers, negative feedback, differential amplifiers, oscillators, tuned circuits, and phase-locked loops. Computers will be extensively used to model circuits. Selected experiments and/or laboratory projects. Prereq: EECS 245.

EECS 345. Programming Language Concepts. 3 Units.

This course examines the four main programming paradigms: imperative, object-oriented, functional, and logical. It is assumed that students will come to the course with significant exposure to object-oriented programming and some exposure to imperative programming. The course will teach the functional paradigm in depth, enhance the students' knowledge of the object-oriented and imperative paradigms, and introduce the logical paradigm. The course will explore language syntax, semantics, names/scopes, types, expressions, assignment, subprograms, abstraction and inheritance. This exploration will have several forms. Students will study the programming language concepts at a theoretical level, use the concepts in functional language programming, and implement the concepts by designing language interpreters. Offered as EECS 345 and 345N. Prereq: Computer Science Major and (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 345N. Programming Language Concepts. 3 Units.

This course examines the four main programming paradigms: imperative, object-oriented, functional, and logical. It is assumed that students will come to the course with significant exposure to object-oriented programming and some exposure to imperative programming. The course will teach the functional paradigm in depth, enhance the students' knowledge of the object-oriented and imperative paradigms, and introduce the logical paradigm. The course will explore language syntax, semantics, names/scopes, types, expressions, assignment, subprograms, abstraction and inheritance. This exploration will have several forms. Students will study the programming language concepts at a theoretical level, use the concepts in functional language programming, and implement the concepts by designing language interpreters. Offered as EECS 345 and 345N. Prereq: (EECS 302 or MATH 304) and EECS 233 with a C or higher.

EECS 346. Engineering Optimization. 3 Units.

Optimization techniques including linear programming and extensions; transportation and assignment problems; network flow optimization; quadratic, integer, and separable programming; geometric programming; and dynamic programming. Nonlinear optimization topics: optimality criteria, gradient and other practical unconstrained and constrained methods. Computer applications using engineering and business case studies. The course will incorporate the use of Grand Challenges in the areas of Energy Systems, Control Systems, and Data Analytics in order to provide a framework for problems to study in the development and application of the concepts and tools studied in the course. Various aspects of important engineering skills relating to leadership, teaming, emotional intelligence, and effective communication are integrated into the course. Recommended preparation: MATH 201.

EECS 350. Operations and Systems Design. 3 Units.

Introduction to design, modeling, and optimization of operations and scheduling systems with applications to computer science and engineering problems. Topics include, forecasting and time series, strategic, tactical, and operational planning, life cycle analysis, learning curves, resources allocation, materials requirement and capacity planning, sequencing, scheduling, inventory control, project management and planning. Tools for analysis include: multi-objective optimization, queuing models, simulation, and artificial intelligence.

EECS 351. Communications and Signal Analysis. 3 Units.

Fourier transform analysis and sampling of signals. AM, FM and SSB modulation and other modulation methods such as pulse code, delta, pulse position, PSK and FSK. Detection, multiplexing, performance evaluation in terms of signal-to-noise ratio and bandwidth requirements. Prereq: EECS 246 or requisites not met permission.

EECS 352. Engineering Economics and Decision Analysis. 3 Units.

Economic analysis of engineering projects, focusing on financial decisions concerning capital investments. Present worth, annual worth, internal rate of return, benefit/cost ratio. Replacement and abandonment policies, effects of taxes, and inflation. Decision making under risk and uncertainty. Decision trees. Value of information. The course will incorporate the use of Grand Challenges in the areas of Energy Systems, Control Systems, and Data Analytics in order to provide a framework for problems to study in the development and application of the concepts and tools studied in the course. Various aspects of important engineering skills relating to leadership, teaming, emotional intelligence, and effective communication are integrated into the course.

EECS 354. Digital Communications. 3 Units.

Fundamental bounds on transmission of information. Signal representation in vector space. Optimum reception. Probability and random processes with application to noise problems, speech encoding using linear prediction. Shaping of base-band signal spectra, correlative coding and equalization. Comparative analysis of digital modulation schemes. Concepts of information theory and coding. Applications to data communication. Prereq: EECS 246 or requisites not met permission.

EECS 359. Bioinformatics in Practice. 3 Units.

This course covers basic computational methods of organizing and analyzing biological data, targeting senior and junior level students from both mathematical/computational sciences and life sciences. The aim of the course is to provide the students with basic skills to be able to understand molecular biology data and associated abstractions (sequences, structure, gene expression, molecular network data), access to available resources (public databases, computational tools on the web). Implement basic computational methods for biological data analysis, and use understanding of these methods to solve other problems that arise in biological data analysis. Topics covered include DNA and protein sequence databases, pairwise sequence alignment and sequence search (dynamic programming, BLAST), multiple sequence alignment (HMMs, CLUSTAL-W), sequence clustering, motif finding, pattern matching, phylogenetic analysis (tree reconstruction, neighbor joining, maximum parsimony, maximum likelihood), gene finding, functional annotation, biological ontologies, analysis of gene expression data, and network biology (protein protein interactions, topology, modularity). Prereq: Junior or Senior Standing.

EECS 360. Manufacturing and Automated Systems. 3 Units.

Formulation, modeling, planning, and control of manufacturing and automated systems with applications to computer science and engineering problems. Topics include, design of products and processes, location/spatial problems, transportation and assignment, product and process layout, group technology and clustering, cellular and network flow layouts, computer control systems, reliability and maintenance, and statistical quality control. Tools and analysis include: multi-objective optimization, artificial intelligence, and heuristics for combinatorial problems. Offered as EECS 360 and EECS 460.

EECS 365. Complex Systems Biology. 3 Units.

Complex Systems Biology is an interdisciplinary course based on systems science, engineering, biology, and medicine. The objective is to provide students with an understanding of the current state of systems biology and major challenges ahead. The biological phenomena across the level of complexity will be considered from molecular to organisms and ecology to provide universality of the systems concepts for understanding the functions and behavior of biological systems. Case studies are used and a course project is required to be completed. Prereq: Junior Standing.

EECS 366. Computer Graphics. 3 Units.

Theory and practice of computer graphics: Basic elements of a computer graphics rendering pipeline. Fundamentals of input and display devices. Geometrical transformations and their matrix representations. Homogeneous coordinates, projective and perspective transformations. Algorithms for clipping, hidden surface removal, and anti-aliasing. Rendering algorithms: introduction to local and global shading models, color, and lighting models for reflection, refraction, transparency. Real-time rendering methods and animation. Prereq: EECS 233.

EECS 368. Power System Analysis I. 3 Units.

This course introduces the steady-state modeling and analysis of electric power systems. The course discusses the modeling of essential power system network components such as transformers and transmission lines. The course also discusses important steady-state analysis of three-phase power system network, such as the power flow and economic operation studies. Through the use of PowerWorld Simulator education software, further understanding and knowledge can be gained on the operational characteristics of AC power systems. Special topics concerning new grid technologies will be discussed towards the semester end. The prerequisite requirements of the course include the concepts and computational techniques of Alternative Current (AC) circuit and electromagnetic field. Offered as EECS 368 and EECS 468. Prereq: EECS 245.

EECS 369. Power System Analysis II. 3 Units.

This course extends upon the steady state analysis of power systems to cover study topics that are essential for power system planning and operation. Special system operating conditions are considered, such as unbalanced network operation and component faults. Among the most important analytical methods developed, are symmetrical components and sequence networks. Other study topics discussed include the electric machine modeling and power system transient stability. The latter half of the course presents computational methods and control algorithms that are essential for power system operation, such as generation control and state estimation. Offered as EECS 369 and EECS 469. Prereq: EECS 368.

EECS 370. Smart Grid. 3 Units.

This course starts with an introduction to the US electric power system infrastructure and national electricity policy. Then power system operations and reliability practices are described. In the context of currently existing infrastructure and operation strategies, the course discusses the new Smart Grid technologies such as renewable resources, distributed generation, demand response, energy storage and electric vehicles. Additional important topics of discussion include Advanced Meter Infrastructure, microgrids, the IEEE 1547 Interconnection Standard, and other interoperability standards. The course captures the evolving progress made in Smart Grid technologies and the impacts on power system economics and reliability. Offered as EECS 370 and EECS 470. Prereq: EECS 368.

EECS 371. Applied Circuit Design. 4 Units.

This course will consist of lectures and lab projects designed to provide students with an opportunity to consolidate their theoretical knowledge of electronics and to acquaint them with the art and practice of circuit and product design. The lectures will cover electrical and electronic circuits and many electronic and electrical devices and applications. Examples include mixed-signal circuits, power electronics, magnetic and piezo components, gas discharge devices, sensors, motors and generators, and power systems. In addition, there will be discussion of professional topics such as regulatory agencies, manufacturing, testing, reliability, and product cost. Weekly labs will be true "design" opportunities representing real-world applications. A specification or functional description will be provided, and the students will design the circuit, select all components, construct a breadboard, and test. The objective will be functional, pragmatic, cost-effective designs. Prereq: EECS 245.

EECS 374. Advanced Control and Energy Systems. 3 Units.

This course introduces applied quantitative robust and nonlinear control engineering techniques to regulate automatically renewable energy systems in general and wind turbines in particular. The course also studies the fundamentals for dynamic multidisciplinary modeling and analysis of large multi-megawatt wind turbines (mechanics, aerodynamics, electrical systems, control concepts, etc.). The course combines lecture sessions and lab hours. The 400-level includes an experimental lab competition, where the object is to design, implement, and experimentally validate a control strategy to regulate a real system in the laboratory (helicopter control competition or similar); it will also include additional project design reports. Offered as EECS 374 and EECS 474. Prereq: EECS 304.

EECS 375. Applied Control. 3 Units.

This course provides a practical treatment of the study of control engineering systems. It emphasizes best practices in industry so that students learn what aspects of plant and control system design are critical. The course develops theory and practice for digital computer control systems; PID controller design (modes, forms and tuning methods); Control structure design (feed-forward, cascade control, predictive control, disturbance observers, multi-loop configurations, multivariable control); Actuators, sensors and common loops; Dynamic performance evaluation; and some advanced control techniques (quantitative robust control, gain-scheduling and adaptive control) to achieve a good performance over a range of operating conditions. Recommended preparation: EECS 374 or EECS 474. Offered as EECS 375 and EECS 475. Prereq: EECS 304 or Requisites Not Met permission.

EECS 376. Mobile Robotics. 4 Units.

Design of software systems for mobile robot control, including: motion control; sensory processing; localization and mapping; mobile-robot planning and navigation; and implementation of goal-directed behaviors. The course has a heavy lab component involving a sequence of design challenges and competitions performed in teams. Prereq: ENGR 131 or EECS 233.

EECS 390. Advanced Game Development Project. 3 Units.

This game development project course will bring together an interdisciplinary group of advanced undergraduate students in the fields of Electrical Engineering and Computer Science, Art, Music, and English to focus on the design and development of a complete, fully-functioning computer game (as an interdisciplinary team). The student teams are given complete liberty to design their own fully functional games from their original concept to a playable finished product, i.e., from the initial idea through to the wrapped box. The student teams will experience the entire game development cycle as they execute their projects. Responsibilities include creating a game idea, writing a story, developing the artwork, designing characters, implementing music and sound effects, programming and testing the game, and documenting the entire project. Recommended preparation: Junior or Senior standing and consent of instructor.

EECS 391. Introduction to Artificial Intelligence. 3 Units.

This course is an introduction to artificial intelligence. We will study the concepts that underlie intelligent systems. Topics covered include problem solving with search, constraint satisfaction, adversarial games, knowledge representation and reasoning using propositional and first order logic, reasoning under uncertainty, introduction to machine learning, automated planning, reinforcement learning and natural language processing. Recommended: basic knowledge of probability and statistics. Prereq: ENGR 131 or EECS 132.

EECS 392. App Development for iOS. 3 Units.

This course is an introduction to app development for iPhone and iPad using Cocoa Touch Framework and Xcode development environment. Topics include Objective-C programming language and iOS SDK/foundations, object-oriented design and model-view-controller framework, user interface design using Xcode. Additional topics may include data management, map applications, animations and some recent developments in iOS. Recommended preparations: experiences in object-oriented programming and Mac OS; knowledge in software engineering and databases. Prereq: EECS 293 and Junior or Senior standing.

EECS 393. Software Engineering. 3 Units.

Topics: Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; programming practices; software validation techniques; software maintenance practices; software engineering ethics. Undergraduates work in teams to complete a significant software development project. Graduate students are required to complete a research project. Offered as EECS 393, EECS 393N, and EECS 493. Counts as SAGES Senior Capstone. Prereq: Computer Science Major and EECS 233 with a C or higher.

EECS 393N. Software Engineering. 3 Units.

Topics: Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; programming practices; software validation techniques; software maintenance practices; software engineering ethics. Undergraduates work in teams to complete a significant software development project. Graduate students are required to complete a research project. Offered as EECS 393, EECS 393N, and EECS 493. Counts as SAGES Senior Capstone. Prereq: EECS 233 with a C or higher.

EECS 394. Introduction to Information Theory. 3 Units.

This course is intended as an introduction to information and coding theory with emphasis on the mathematical aspects. It is suitable for advanced undergraduate and graduate students in mathematics, applied mathematics, statistics, physics, computer science and electrical engineering. Course content: Information measures-entropy, relative entropy, mutual information, and their properties. Typical sets and sequences, asymptotic equipartition property, data compression. Channel coding and capacity: channel coding theorem. Differential entropy, Gaussian channel, Shannon-Nyquist theorem. Information theory inequalities (400 level). Additional topics, which may include compressed sensing and elements of quantum information theory. Recommended Preparation: MATH 201 or MATH 307. Offered as MATH 394, EECS 394, MATH 494 and EECS 494. Prereq: MATH 223 and MATH 380 or requisites not met permission.

EECS 395. Senior Project in Computer Science. 4 Units.

Capstone course for computer science seniors. Material from previous and concurrent courses used to solve computer programming problems and to develop software systems. Professional engineering topics such as project management, engineering design, communications, and professional ethics. Requirements include periodic reporting of progress, plus a final oral presentation and written report. Scheduled formal project presentations during last week of classes. Counts as SAGES Senior Capstone. Prereq: Senior standing.

EECS 396. Independent Projects. 1 - 6 Unit.

Independent projects in Computer Engineering, Computer Science, Electrical Engineering, and Systems and Control Engineering. Limited to juniors and seniors. Prereq: Limited to juniors and seniors.

EECS 397. Special Topics. 1 - 6 Unit.

Special topics in Computer Engineering, Computer Science, Electrical Engineering, and Systems and Control Engineering. Prereq: Limited to juniors and seniors.

EECS 398. Engineering Projects I. 4 Units.

Capstone course for electrical, computer and systems and control engineering seniors. Material from previous and concurrent courses used to solve engineering design problems. Professional engineering topics such as project management, engineering design, communications, and professional ethics. Requirements include periodic reporting of progress, plus a final oral presentation and written report. Scheduled formal project presentations during last week of classes. Counts as SAGES Senior Capstone. Prereq: Senior Standing. Prereq or Coreq: ENGR 398 and ENGL 398.

EECS 399. Engineering Projects II. 3 Units.

Continuation of EECS 398. Material from previous and concurrent courses applied to engineering design and research. Requirements include periodic reporting of progress, plus a final oral presentation and written report. Prereq: Senior Standing.

EECS 400T. Graduate Teaching I. 0 Units.

This course will provide the Ph.D. candidate with experience in teaching undergraduate or graduate students. The experience is expected to involve direct student contact but will be based upon the specific departmental needs and teaching obligations. This teaching experience will be conducted under the supervision of the faculty member who is responsible for the course, but the academic advisor will assess the educational plan to ensure that it provides an educational experience for the student. Students in this course may be expected to perform one or more of the following teaching related activities: grading homeworks, quizzes, and exams, having office hours for students, tutoring students. Recommended preparation: Ph.D. student in EECS department.

EECS 401. Digital Signal Processing. 3 Units.

Characterization of discrete-time signals and systems. Fourier analysis: the Discrete-time Fourier Transform, the Discrete-time Fourier series, the Discrete Fourier Transform and the Fast Fourier Transform. Continuous-time signal sampling and signal reconstruction. Digital filter design: infinite impulse response filters, finite impulse response filters, filter realization and quantization effects. Random signals: discrete correlation sequences and power density spectra, response of linear systems. Recommended preparation: EECS 313.

EECS 402. Internet Security and Privacy. 3 Units.

This course introduces students to research on Internet security and privacy. Covered topics include denial of service attacks, attacks enabled by man-in-the-middle surveillance, communication hijacking, botnet and fast-flux networks, email and Web spam, threats to privacy on the Internet, and Internet censorship. The course will be based on a collection of research papers. Students will be required to attend lectures, read the materials, prepare written summaries of discussed papers, present a paper in class, complete a course project and take the final exam (in the form of the course project presentation). Prereq: EECS325 or EECS425 or graduate standing in Computer Science or Computer Engineering.

EECS 404. Digital Control Systems. 3 Units.

Analysis and design techniques for computer based control systems. Sampling, hybrid continuous-time/discrete-time system modeling; sampled data and state space representations, controllability, observability and stability, transformation of analog controllers, design of deadbeat and state feedback controllers; pole placement controllers based on input/output models, introduction to model identification, optimal control and adaptive control. Recommended Preparation: EECS 304 or equivalent.

EECS 405. Data Structures and File Management. 3 Units.

Fundamental concepts: sequential allocation, linked allocation, lists, trees, graphs, internal sorting, external sorting, sequential, binary, interpolation search, hashing file, indexed files, multiple level index structures, btrees, hashed files. Multiple attribute retrieval; inverted files, multi lists, multiple-key hashing, hd trees. Introduction to data bases. Data models. Recommended preparation: EECS 233 and MATH 304.

EECS 408. Introduction to Linear Systems. 3 Units.

Analysis and design of linear feedback systems using state-space techniques. Review of matrix theory, linearization, transition maps and variations of constants formula, structural properties of state-space models, controllability and observability, realization theory, pole assignment and stabilization, linear quadratic regulator problems, observers, and the separation theorem. Recommended preparation: EECS 304.

EECS 409. Discrete Event Systems. 3 Units.

A broad range of system behavior can be described using a discrete event framework. These systems are playing an increasingly important role in modeling, analyzing, and designing manufacturing systems. Simulation, automata, and queuing theory have been the primary tools for studying the behavior of these logically complex systems; however, new methods and techniques as well as new modeling frameworks have been developed to represent and to explore discrete event system behavior. The class will begin by studying simulation, the theory of languages, and finite state automata, and queuing theory approaches and then progress to examining selected additional frameworks for modeling and analyzing these systems including Petrinets, perturbation analysis, and Min-Max algebras.

EECS 410. Mobile Health (mHealth) Technology. 3 Units.

Advances in communications, computer, and medical technology have facilitated the practice of personalized health, which utilizes sensory computational communication systems to support improved and more personalized healthcare and healthy lifestyle choices. The current proliferation of broadband wireless services, along with more powerful and convenient handheld devices, is helping to introduce real-time monitoring and guidance for a wide array of patients. Indeed, a large research community and a nascent industry is beginning to connect medical care with technology developers, vendors of wireless and sensing hardware systems, network service providers, and enterprise data management communities. Students in the course and labs will explore cutting-edge technologies in 1) information technologies and 2) healthcare/medical applications, through lectures, lab assignments, exams, presentations, and final projects. The overall course objectives are to introduce electrical engineering, computer engineering, and computer science students the fundamentals of wearable sensors, mobile health informatics, big data analysis, telehealthcare security & privacy, and human computer interaction considerations.

EECS 411. Applied Engineering Statistics. 3 Units.

In this course a combination of lectures, demonstrations, case studies, and individual and group computer problems provides an intensive introduction to fundamental concepts, applications and the practice of contemporary engineering statistics. Each topic is introduced through realistic sample problems to be solved first by using standard spreadsheet programs and then using more sophisticated software packages. Primary attention is given to teaching the fundamental concepts underlying standard analysis methods. Offered as EPOM 405 and EECS 411.

EECS 412. Electromagnetic Fields III. 3 Units.

Maxwell's equations, macroscopic versus microscopic fields, field interaction with materials in terms of polarization vectors P and M. Laplace's and Poisson's equations and solutions, scalar and vector potentials. Wave propagation in various types of media such as anisotropic and gyrotropic media. Phase and group velocities, signal velocity and dispersion. Boundary value problems associated with wave-guide and cavities. Wave solutions in cylindrical and spherical coordinates. Radiation and antennas.

EECS 413. Nonlinear Systems I. 3 Units.

This course will provide an introduction to techniques used for the analysis of nonlinear dynamic systems. Topics will include existence and uniqueness of solutions, phase plane analysis of two dimensional systems including Poincare-Bendixson, describing functions for single-input single-output systems, averaging methods, bifurcation theory, stability, and an introduction to the study of complicated dynamics and chaos. Recommended preparation: Concurrent enrollment in EECS 408.

EECS 414. Wireless Communications. 3 Units.

This course introduces the fundamentals of wireless communications including backgrounds, important concepts, and cutting-edge technologies. In particular, the course focuses on interesting and important topics in wireless communications, such as (but not limited to): Overview of wireless communication networks and protocols, the cellular concept, system design fundamentals, brief introduction to wireless physical layer fundamentals, multiple access control protocols for wireless systems, wireless networking (routing/rerouting, wireless TCP/IP), mobility managemen, call admission control and resource allocation, revolution/evolution towards future generation wireless networks, overview of wireless mesh networks, mobile ad hoc networks and wireless sensor networks, and wireless security (optional). Prereq: Undergraduate student with a C or better in EECS 351, or Graduate student.

EECS 415. Integrated Circuit Technology I. 3 Units.

Review of semiconductor technology. Device fabrication processing, material evaluation, oxide passivation, pattern transfer technique, diffusion, ion implantation, metallization, probing, packaging, and testing. Design and fabrication of passive and active semi-conductor devices. Recommended preparation: EECS 322.

EECS 416. Convex Optimization for Engineering. 3 Units.

This course will focus on the development of a working knowledge and skills to recognize, formulate, and solve convex optimization problems that are so prevalent in engineering. Applications in control systems; parameter and state estimation; signal processing; communications and networks; circuit design; data modeling and analysis; data mining including clustering and classification; and combinatorial and global optimization will be highlighted. New reliable and efficient methods, particular those based on interior-point methods and other special methods to solve convex optimization problems will be emphasized. Implementation issues will also be underscored. Recommended preparation: MATH 201 or equivalent.

EECS 417. Introduction to Stochastic Control. 3 Units.

Analysis and design of controllers for discrete-time stochastic systems. Review of probability theory and stochastic properties, input-output analysis of linear stochastic systems, spectral factorization and Weiner filtering, minimum variance control, state-space models of stochastic systems, optimal control and dynamic programming, statistical estimation and filtering, the Kalman-Bucy theory, the linear quadratic Gaussian problem, and the separation theorem. Recommended preparation: EECS 408.

EECS 418. System Identification and Adaptive Control. 3 Units.

Parameter identification methods for linear discrete time systems: maximum likelihood and least squares estimation techniques. Adaptive control for linear discrete time systems including self-tuning regulators and model reference adaptive control. Consideration of both theoretical and practical issues relating to the use of identification and adaptive control.

EECS 419. Computer System Architecture. 3 Units.

Interaction between computer systems hardware and software. Pipeline techniques - instruction pipelines - arithmetic pipelines. Instruction level parallelism. Cache mechanism. I/O structures. Examples taken from existing computer systems.

EECS 421. Optimization of Dynamic Systems. 3 Units.

Fundamentals of dynamic optimization with applications to control. Variational treatment of control problems and the Maximum Principle. Structures of optimal systems; regulators, terminal controllers, time-optimal controllers. Sufficient conditions for optimality. Singular controls. Computational aspects. Selected applications. Recommended preparation: EECS 408. Offered as EECS 421 and MATH 434.

EECS 422. Solid State Electronics II. 3 Units.

Advanced physics of semiconductor devices. Review of current transport and semiconductor electronics. Surface and interface properties. P-N junction. Bipolar junction transistors, field effect transistors, solar cells and photonic devices.

EECS 423. Distributed Systems. 3 Units.

Introduction to distributed systems; system models; network architecture and protocols; interprocess communication; client-server model; group communication; TCP sockets; remote procedure calls; distributed objects and remote invocation; distributed file systems; file service architecture; name services; directory and discovery services; distributed synchronization and coordination; transactions and concurrency control; security; cryptography; replication; distributed multimedia systems. Recommended preparation: EECS 338.

EECS 424. Introduction to Nanotechnology. 3 Units.

An exploration of emerging nanotechnology research. Lectures and class discussion on 1) nanostructures: superlattices, nanowires, nanotubes, quantum dots, nanoparticles, nanocomposites, proteins, bacteria, DNA; 2) nanoscale physical phenomena: mechanical, electrical, chemical, thermal, biological, optical, magnetic; 3) nanofabrication: bottom up and top down methods; 4) characterization: microscopy, property measurement techniques; 5) devices/applications: electronics, sensors, actuators, biomedical, energy conversion. Topics will cover interdisciplinary aspects of the field. Offered as EECS 424 and EMAE 424.

EECS 425. Computer Networks I. 3 Units.

An introduction to computer networks and the Internet. Applications: http, ftp, e-mail, DNS, socket programming. Transport: UDP, TCP, reliable data transfer, and congestion control. Network layer: IP, routing and NAT. Link layer: taxonomy, Ethernet, 802.11. Recommended preparation: EECS 338 or consent of instructor.

EECS 426. MOS Integrated Circuit Design. 3 Units.

Design of digital and analog MOS integrated circuits. IC fabrication and device models. Logic, memory, and clock generation. Amplifiers, comparators, references, and switched-capacitor circuits. Characterization of circuit performance with/without parasitics using hand analysis and SPICE circuit simulation. Recommended preparation: EECS 344 and EECS 321.

EECS 427. Optoelectronic and Photonic Devices. 3 Units.

In this course, we will study the optical transitions, absorptions, and gains in semiconductors. We will discuss the optical processes in semiconductor bulk as well as low dimensional structures such as quantum well and quantum dot. The fundamentals, technologies and applications of important optoelectronic devices (e.g., light-emitting diodes, semiconductor lasers, solar cells and photo-detectors) will be introduced. We will learn the current state-of-the-art of these devices. Recommended Preparation: EECS 321.

EECS 428. Computer Communications Networks II. 3 Units.

Introduction to topics and methodology in computer networks and middleware research. Traffic characterization, stochastic models, and self-similarity. Congestion control (Tahoe, Reno, Sack). Active Queue Management (RED, FQ) and explicit QoS. The Web: overview and components, HTTP, its interaction with TCP, caching. Overlay networks and CDN. Expected work includes a course-long project on network simulation, a final project, a paper presentation, midterm, and final test. Recommended preparation: EECS 425 or permission of instructor.

EECS 429. Introduction to Nanomaterials: Material Synthesis, Properties and Device Applications. 3 Units.

The behavior of nanoscale materials is close, to atomic behavior rather than that of bulk materials. The growth of nanomaterials, such as quantum dots, has the tendency to be viewed as an art rather than science. These nanostructures have changed our view of Nature. This course is designed to provide an introduction to nanomaterials and devices to both senior undergraduate and graduate students in engineering. Topics covered include an introduction to growth issues, quantum mechanics, quantization of electronic energy levels in periodic potentials, tunneling, distribution functions and density of states, optical and electronic properties, and devices. Offered as EECS 329 and EECS 429.

EECS 433. Database Systems. 3 Units.

Basic issues in file processing and database management systems. Physical data organization. Relational databases. Database design. Relational Query Languages, SQL. Query languages. Query optimization. Database integrity and security. Object-oriented databases. Object-oriented Query Languages, OQL. Recommended preparation: EECS 341 and MATH 304.

EECS 434. Microfabricated Silicon Electromechanical Systems. 3 Units.

Topics related to current research in microelectromechanical systems based upon silicon integrated circuit fabrication technology: fabrication, physics, devices, design, modeling, testing, and packaging. Bulk micromachining, surface micromachining, silicon to glass and silicon-silicon bonding. Principles of operation for microactuators and microcomponents. Testing and packaging issues. Recommended preparation: EECS 322 or EECS 415.

EECS 435. Data Mining. 3 Units.

Data Mining is the process of discovering interesting knowledge from large amounts of data stored either in databases, data warehouses, or other information repositories. Topics to be covered includes: Data Warehouse and OLAP technology for data mining, Data Preprocessing, Data Mining Primitives, Languages, and System Architectures, Mining Association Rules from Large Databases, Classification and Prediction, Cluster Analysis, Mining Complex Types of Data, and Applications and Trends in Data Mining. Recommended preparation: EECS 341 or equivalent.

EECS 439. Web Data Mining. 3 Units.

Web crawling technology, web search and information extraction, unsupervised and semi-supervised learning techniques and their application to web data extraction, social network analysis, various pagerank algorithms, link analysis, web resource discovery, web, resource description framework (RDF), XML, Web Ontology Language (OWL). Recommended preparation: EECS 338, EECS 341.

EECS 440. Machine Learning. 3 Units.

Machine learning is a subfield of Artificial Intelligence that is concerned with the design and analysis of algorithms that "learn" and improve with experience, While the broad aim behind research in this area is to build systems that can simulate or even improve on certain aspects of human intelligence, algorithms developed in this area have become very useful in analyzing and predicting the behavior of complex systems. Machine learning algorithms have been used to guide diagnostic systems in medicine, recommend interesting products to customers in e-commerce, play games at human championship levels, and solve many other very complex problems. This course is focused on algorithms for machine learning: their design, analysis and implementation. We will study different learning settings, including supervised, semi-supervised and unsupervised learning. We will study different ways of representing the learning problem, using propositional, multiple-instance and relational representations. We will study the different algorithms that have been developed for these settings, such as decision trees, neural networks, support vector machines, k-means, harmonic functions and Bayesian methods. We will learn about the theoretical tradeoffs in the design of these algorithms, and how to evaluate their behavior in practice. At the end of the course, you should be able to: --Recognize situations where machine learning algorithms are applicable; --Understand, represent and formulate the learning problem; --Apply the appropriate algorithm(s), or if necessary, design your own, with an understanding of the tradeoffs involved; --Correctly evaluate the behavior of the algorithm when solving the problem. Prereq: EECS 391 or EECS 491 or consent of instructor.

EECS 441. Internet Applications. 3 Units.

This course exposes students to research in building and scaling internet applications. Covered topics include Web services, scalable content delivery, applications of peer-to-peer networks, and performance analysis and measurements of internet application platforms. The course is based on a collection of research papers and protocol specifications. Students are required to read the materials, present a paper in class, prepare short summaries of discussed papers, and do a course project (team projects are encouraged). Prereq: EECS 325 or EECS 425.

EECS 442. Causal Learning from Data. 3 Units.

This course introduces key concepts and techniques for characterizing, from observational or experimental study data and from background information, the causal effect of a specific treatment, exposure, or intervention (e.g., a medical treatment) upon an outcome of interest (e.g., disease status). The fundamental problem of causal inference is the impossibility of observing the effects of different and incompatible treatments on the same individual or unit. This problem is overcome by estimating an average causal effect over a study population. Making valid causal inferences with observational data is especially challenging, because of the greater potential for biases (confounding bias, selection bias, and measurement bias) that can badly distort causal effect estimates. Consequently, this topic has been the focus of intense cross-disciplinary research in recent years. Causal inference techniques will be illustrated by applications in several fields such as computer science, engineering, medicine, public health, biology, genomics, neuroscience, economics, and social science. Course grading will be based on quizzes, homeworks, a class presentation, and a causal data analysis project. Specific topics: treatments, exposures, and interventions; causal effects and causal effect measures; confounding bias; potential outcomes and counterfactuals; randomized experiments; observational studies; causal directed acyclic graphs (DAGs); exchangeability and conditional exchangeability; effect modification; causal interactions; nonparametric structural equations; Pearl's Back-Door Criterion, Front-Door Criterion, and related results; covariate adjustment; matching on covariates; selection bias; measurement bias; instrumental variables; causal modeling; inverse probability weighting; marginal structural models; standardization; structural nested models; outcome regression; propensity scores; sensitivity analysis. Prereq: EECS 440 or MATH 380 or STAT 312 or STAT 313 or STAT 332 or STAT 333 or Requisites Not Met permission.

EECS 444. Computer Security. 3 Units.

General types of security attacks; approaches to prevention; secret key and public key cryptography; message authentication and hash functions; digital signatures and authentication protocols; information gathering; password cracking; spoofing; session hijacking; denial of service attacks; buffer overruns; viruses, worms, etc., principles of secure software design, threat modeling; access control; least privilege; storing secrets; socket security; RPC security; security testing; secure software installation; operating system security; database security; web security; email security; firewalls; intrusions. Recommended preparation: EECS 337.

EECS 450. Operations and Systems Design. 3 Units.

Introduction to design, modeling, and optimization of operations and scheduling systems with applications to computer science and engineering problems. Topics include, forecasting and times series, strategic, tactical, and operational planning, life cycle analysis, learning curves, resources allocation, materials requirement and capacity planning, sequencing, scheduling, inventory control, project management and planning. Tools for analysis include: multi-objective optimization, queuing models, simulation, and artificial intelligence.

EECS 451. Introduction to Digital Communications. 3 Units.

Analysis and design of modern digital communications systems: introduction to digital communication systems, review of basic analog and digital signal processing for both deterministic and stochastic signals, signal space representation, basis functions, projections and matched filters, pulse shaping, pulse amplitude modulation, quadrature amplitude modulation, deterministic performance and performance in noise, carrier frequency and phase tracking, symbol timing synchronization, source coding and channel coding. Extensive computer-based design exercises using Matlab and Simulink to design and test digital modems and communication systems. Prereq: STAT 332 or equivalent.

EECS 452. Random Signals. 3 Units.

Fundamental concepts in probability. Probability distribution and density functions. Random variables, functions of random variables, mean, variance, higher moments, Gaussian random variables, random processes, stationary random processes, and ergodicity. Correlation functions and power spectral density. Orthogonal series representation of colored noise. Representation of bandpass noise and application to communication systems. Application to signals and noise in linear systems. Introduction to estimation, sampling, and prediction. Discussion of Poisson, Gaussian, and Markov processes.

EECS 454. Analysis of Algorithms. 3 Units.

This course covers fundamental topics in algorithm design and analysis in depth. Amortized analysis, NP-completeness and reductions, dynamic programming, advanced graph algorithms, string algorithms, geometric algorithms, local search heuristics. Offered as EECS 454 and OPRE 454. Prereq: EECS 340.

EECS 458. Introduction to Bioinformatics. 3 Units.

Fundamental algorithmic methods in computational molecular biology and bioinformatics discussed. Sequence analysis, pairwise and multiple alignment, probabilistic models, phylogenetic analysis, folding and structure prediction emphasized. Recommended preparation: EECS 340, EECS 233.

EECS 459. Bioinformatics for Systems Biology. 3 Units.

Description of omic data (biological sequences, gene expression, protein-protein interactions, protein-DNA interactions, protein expression, metabolomics, biological ontologies), regulatory network inference, topology of regulatory networks, computational inference of protein-protein interactions, protein interaction databases, topology of protein interaction networks, module and protein complex discovery, network alignment and mining, computational models for network evolution, network-based functional inference, metabolic pathway databases, topology of metabolic pathways, flux models for analysis of metabolic networks, network integration, inference of domain-domain interactions, signaling pathway inference from protein interaction networks, network models and algorithms for disease gene identification, identification of dysregulated subnetworks network-based disease classification. Offered as EECS 459 and SYBB 459. Prereq: EECS 359 or EECS 458 or BIOL 250.

EECS 460. Manufacturing and Automated Systems. 3 Units.

Formulation, modeling, planning, and control of manufacturing and automated systems with applications to computer science and engineering problems. Topics include, design of products and processes, location/spatial problems, transportation and assignment, product and process layout, group technology and clustering, cellular and network flow layouts, computer control systems, reliability and maintenance, and statistical quality control. Tools and analysis include: multi-objective optimization, artificial intelligence, and heuristics for combinatorial problems. Offered as EECS 360 and EECS 460.

EECS 466. Computer Graphics. 3 Units.

Theory and practice of computer graphics: object and environment representation including coordinate transformations image extraction including perspective, hidden surface, and shading algorithms; and interaction. Covers a wide range of graphic display devices and systems with emphasis in interactive shaded graphics. Laboratory. Recommended preparation: EECS 233.

EECS 467. Commercialization and Intellectual Property Management. 3 Units.

This interdisciplinary course covers a variety of topics, including principles of intellectual property and intellectual property management, business strategies and modeling relevant to the creation of start-up companies and exploitation of IP rights as they relate to biomedical-related inventions. The goal of this course is to address issues relating to the commercialization of biomedical-related inventions by exposing law students, MBA students, and Ph.D. candidates (in genetics and proteomics) to the challenges and opportunities encountered when attempting to develop biomedical intellectual property from the point of early discovery to the clinic and market. Specifically, this course seeks to provide students with the ability to value a given technological advance or invention holistically, focusing on issues that extend beyond scientific efficacy and include patient and practitioner value propositions, legal and intellectual property protection, business modeling, potential market impacts, market competition, and ethical, social, and healthcare practitioner acceptance. During this course, law students, MBA students, and Ph.D. candidates in genomics and proteomics will work in teams of five (two laws students, two MBA students and one Ph.D. candidate), focusing on issues of commercialization and IP management of biomedical-related inventions. The instructors will be drawn from the law school, business school, and technology-transfer office. Please visit the following website for more information: fusioninnovate.com. Offered as LAWS 5341, MGMT 467, GENE 367, GENE 467, EBME 467 and EECS 467.

EECS 468. Power System Analysis I. 3 Units.

This course introduces the steady-state modeling and analysis of electric power systems. The course discusses the modeling of essential power system network components such as transformers and transmission lines. The course also discusses important steady-state analysis of three-phase power system network, such as the power flow and economic operation studies. Through the use of PowerWorld Simulator education software, further understanding and knowledge can be gained on the operational characteristics of AC power systems. Special topics concerning new grid technologies will be discussed towards the semester end. The prerequisite requirements of the course include the concepts and computational techniques of Alternative Current (AC) circuit and electromagnetic field. Offered as EECS 368 and EECS 468. Prereq: EECS 245.

EECS 469. Power System Analysis II. 3 Units.

This course extends upon the steady state analysis of power systems to cover study topics that are essential for power system planning and operation. Special system operating conditions are considered, such as unbalanced network operation and component faults. Among the most important analytical methods developed, are symmetrical components and sequence networks. Other study topics discussed include the electric machine modeling and power system transient stability. The latter half of the course presents computational methods and control algorithms that are essential for power system operation, such as generation control and state estimation. Offered as EECS 369 and EECS 469. Prereq: EECS 368.

EECS 470. Smart Grid. 3 Units.

This course starts with an introduction to the US electric power system infrastructure and national electricity policy. Then power system operations and reliability practices are described. In the context of currently existing infrastructure and operation strategies, the course discusses the new Smart Grid technologies such as renewable resources, distributed generation, demand response, energy storage and electric vehicles. Additional important topics of discussion include Advanced Meter Infrastructure, microgrids, the IEEE 1547 Interconnection Standard, and other interoperability standards. The course captures the evolving progress made in Smart Grid technologies and the impacts on power system economics and reliability. Offered as EECS 370 and EECS 470. Prereq: EECS 368.

EECS 474. Advanced Control and Energy Systems. 3 Units.

This course introduces applied quantitative robust and nonlinear control engineering techniques to regulate automatically renewable energy systems in general and wind turbines in particular. The course also studies the fundamentals for dynamic multidisciplinary modeling and analysis of large multi-megawatt wind turbines (mechanics, aerodynamics, electrical systems, control concepts, etc.). The course combines lecture sessions and lab hours. The 400-level includes an experimental lab competition, where the object is to design, implement, and experimentally validate a control strategy to regulate a real system in the laboratory (helicopter control competition or similar); it will also include additional project design reports. Offered as EECS 374 and EECS 474. Prereq: EECS 304.

EECS 475. Applied Control. 3 Units.

This course provides a practical treatment of the study of control engineering systems. It emphasizes best practices in industry so that students learn what aspects of plant and control system design are critical. The course develops theory and practice for digital computer control systems; PID controller design (modes, forms and tuning methods); Control structure design (feed-forward, cascade control, predictive control, disturbance observers, multi-loop configurations, multivariable control); Actuators, sensors and common loops; Dynamic performance evaluation; and some advanced control techniques (quantitative robust control, gain-scheduling and adaptive control) to achieve a good performance over a range of operating conditions. Recommended preparation: EECS 374 or EECS 474. Offered as EECS 375 and EECS 475. Prereq: EECS 304 or Requisites Not Met permission.

EECS 476. Mobile Robotics. 3 Units.

Design of software systems for mobile robot control, including: motion control; sensory processing; localization and mapping; mobile-robot planning and navigation; and implementation of goal-directed behaviors. The course has a heavy lab component involving a sequence of design challenges and competitions performed in teams.

EECS 477. Advanced Algorithms. 3 Units.

Design and analysis of efficient algorithms, with emphasis on network flow, combinatorial optimization, and randomized algorithms. Linear programming: duality, complementary slackness, total unimodularity. Minimum cost flow: optimality conditions, algorithms, applications. Game theory: two-person zero-sum games, minimax theorems. Probabilistic analysis and randomized algorithms: examples and lower bounds. Approximation algorithms for NP-hard problems: examples, randomized rounding of linear programs. Prereq: EECS 302, EECS 340, MATH 201, MATH 380.

EECS 478. Computational Neuroscience. 3 Units.

Computer simulations and mathematical analysis of neurons and neural circuits, and the computational properties of nervous systems. Students are taught a range of models for neurons and neural circuits, and are asked to implement and explore the computational and dynamic properties of these models. The course introduces students to dynamical systems theory for the analysis of neurons and neural learning, models of brain systems, and their relationship to artificial and neural networks. Term project required. Students enrolled in MATH 478 will make arrangements with the instructor to attend additional lectures and complete additional assignments addressing mathematical topics related to the course. Recommended preparation: MATH 223 and MATH 224 or BIOL 300 and BIOL 306. Offered as BIOL 378, COGS 378, MATH 378, BIOL 478, EBME 478, EECS 478, MATH 478 and NEUR 478.

EECS 480A. Introduction to Wireless Health. 3 Units.

Study of convergence of wireless communications, microsystems, information technology, persuasive psychology, and health care. Discussion of health care delivery system, medical decision-making, persuasive psychology, and wireless health value chain and business models. Understanding of health information technology, processing of monitoring data, wireless communication, biomedical sensing techniques, and health monitoring technical approaches and solutions. Offered as EECS 480A and EBME 480A.

EECS 480B. The Human Body. 3 Units.

Study of structural organization of the body. Introduction to anatomy, physiology, and pathology, covering the various systems of the body. Comparison of elegant and efficient operation of the body and the related consequences of when things go wrong, presented in the context of each system of the body. Introduction to medical diagnosis and terminology in the course of covering the foregoing. Offered as EECS 480B and EBME 480B.

EECS 480C. Biomedical Sensing Instrumentation. 3 Units.

Study of principles, applications, and design of biomedical instruments with special emphasis on transducers. Understanding of basic sensors, amplifiers, and signal processing. Discussion of the origin of biopotential, and biopotential electrodes and amplifiers (including biotelemetry). Understanding of chemical sensors and clinical laboratory instrumentation, including microfluidics. Offered as EECS 480C and EBME 480C. Prereq: EECS/EBME 480A, EECS/EBME 480B

EECS 480D. The Health Care Delivery Ecosystem. 3 Units.

Health care delivery across the continuum of care in the United States, including health policy and reform, financing of care, comparative health systems, population health, public health, access to care, care models, cost and value, comparative effectiveness, governance, management, accountability, workforce, and the future. Discussions of opportunities and challenges for wireless health, integrated into the foregoing topics. Perspective on health care delivery in other countries. Offered as EECS 480D and EBME 480D.

EECS 480E. Wireless Communications and Networking. 3 Units.

Essentials of wireless communications and networking, including teletraffic engineering, radio propagation, digital and cellular communications, wireless wide-area network architecture, speech and channel coding, modulation schemes, antennas, security, networking and transport layers, and 4G systems. Hands-on learning of the anatomy of a cell phone, and a paired wireless health device and its gateway. Offered as EECS 480E and EBME 480E.

EECS 480F. Physicians, Hospitals and Clinics. 3 Units.

Rotation through one or more health care provider facilities for a first-hand understanding of care delivery practice, coordination, and management issues. First-hand exposure to clinical personnel, patients, medical devices and instruments, and organizational workflow. Familiarity with provider protocols, physician referral practices, electronic records, clinical decision support systems, acute and chronic care, and inpatient and ambulatory care. Offered as EECS 480F and EBME 480F.

EECS 480G. Applied Cryptography. 3 Units.

This course begins with a discussion of how mobility-driven computing and communication systems use cryptography to protect data and protocols. The foundation for critical cryptographic concepts, techniques, and algorithms are covered. The fundamental cryptographic concepts are studied, including: symmetric encryption, public key encryption, digital signatures, cryptographic hash function, and message authentication codes; cryptographic protocols, such as key exchange, remote user authentication, and interactive proofs; cryptanalysis of cryptographic primitives and protocols, such as by side-channel attacks, differential cryptanalysis, or replay attacks; and cryptanalytic techniques on deployed systems, such as memory remanence, timing attacks, fault attacks, and differential power analysis. Techniques used for code making (cryptographic) and break codes (cryptanalytic) are covered, as well as how these techniques are used within larger security systems.

EECS 480H. Software Security. 3 Units.

This course begins with discussions of good software engineering practices to ensure security in modern software systems and additional challenges to security due to code mobility in software for mobility-driven computing. The basics of software security and threat models, methods to protect software (operating systems, databases, distributed software) - including risk analysis, authentication and authorization, access control, and software architecture for security - are studied. Principles of secure coding, validation and verification of secure software, software and data watermarking, code obfuscation, tamper resistant software are studied, as well as the benefits of open source and closed source software. Use of software as an attack mechanism and emerging attack models (including joint hardware-software attacks) are studied.

EECS 480K. Hardware Security. 3 Units.

This course begins with the keys to enabling secure, trustworthy operation of computer hardware - understanding security issues and how appropriate security measures are included during design, verification, test, and deployment. Increasingly the security primitives such as the Trusted Computing Module are being introduced at the hardware level to prevent the compromise of security in systems being deployed today. A comprehensive coverage of security issues in computer hardware is provided. Topics of embedded systems security, hardware Trojans, security in implantable medical devices, security in RFID/NFC, protection from side channel attacks, tamper resistance and crypto processor design, trusted FPGA design/JTAG, hardware-based cryptanalysis, and hardware IP protection against piracy and reverse-engineering are covered. A course project (Can you Hack It?) that challenges students to hack a hardware is included.

EECS 480M. Introduction to Medical Informatics. 3 Units.

Current state and emerging trends in Medical Informatics (MI) and associated health information systems. Principles, data, data management, system interoperability, patient privacy, information security, electronic records, telehealth, regulatory issues, clinical decision support, mobile documentation, devices and wireless communications in healthcare. Impact of wireless technology on emerging health information systems and processes. Offered as EECS 480M and EBME 480M.

EECS 480N. Introduction to Health Decision and Knowledge Support Systems. 3 Units.

Current state and emerging trends in use of decision support systems (DSS) and knowledge support systems (KSS) in health care delivery. Information, knowledge and decision principles; Health data; Clinical decision and knowledge support, DSS/KSS development and adoption, and regulatory issues. Impact of wireless technology on emerging DSS and KSS, and related processes. Offered as EBME 480N and EBME 480N

EECS 480O. Introduction to Health Information Technology Implementation. 3 Units.

Current state and emerging trends in the implementation and adoption of health information technology (HIT). Macroergonomics; Technology transfer and adoption; Systems adoption life cycle; Impact of regulation; Decision and work transformation; HIT specification and acquisition; Contracting issues; Implementation, use, and evaluation; Impact of wireless technology on emerging processes. Offered as EECS 480O and EBME 480O. Prereq: EECS 480M.

EECS 480P. Advanced Biomedical Instrumentation. 3 Units.

Analysis and design of biosensors in the context of biomedical measurements. Base sensors using electrochemical, optical, piezoelectric, and other principles. Binding equilibria, enzyme kinetics, and mass transport modalities. Adding the "bio" element to base sensors and mathematical aspects of data evaluation. Applications to clinical problems and biomedical research. Offered as EECS 480P and EBME 480P.

EECS 480Q. Regulatory Policy and Regulations. 3 Units.

Introduction of wireless health technologies: spectrum, licensed versus unlicensed; personal area networks; body area networks; ultra-wideband low energy level short-range radios; wireless local area networks; wide area networks. The Federal system: separation of powers; the executive branch and its departments; the House of Representatives and its committees; the Senate and its committees; the FCC; policy versus regulatory versus legislative. What is a medical device: FDA; classification system; radiation-emitting products; software; RF in medical devices; converged medical devices; international aspects. Regulation of health information technology and wireless health: American Recovery and Reinvestment Act; Patient Protection and Affordable Care Act; FCC/FDA MoU; CMS and Reimbursement; privacy and security. Offered as EECS 480Q and EBME 480Q.

EECS 480R. User Experience Engineering. 3 Units.

Social, cognitive, behavioral, and contextual elements in the design of healthcare technology and systems. User-centered design paradigm from a broad perspective, exploring dimensions of product user experience and learning to assess and modify the design of healthcare technology. Practical utilization of user centered design method and assessment techniques for approaching a design problem. Offered as EECS 480R and EBME 480R.

EECS 480S. Wireless Health Product Development. 3 Units.

Integrating application requirements, market data, concept formulation, design innovation, and manufacturing resources for creating differentiated wireless health products that delight the user. Learning user-centric product development best practices, safety, security and privacy considerations, and risk management planning. Understanding the regulatory process. Identifying and managing product development tradeoffs. Offered as EECS 480S and EBME 480S. Prereq: EECS 480R.

EECS 480T. Wearable Computing Design. 3 Units.

Learning about wearable devices using flexible/conformal electronics designed for convenience and uninterrupted wear-ability. Examining related design challenges from the technology, human and business points of view. Understanding wearable product design for general and special-purpose tasks in information processing, media operations, and information extraction from sensed data. Learning about the technological challenges for design, including miniaturization, power delivery and management, data storage, and wireless networking. Learning about hardware choices (processor, field programmable gate array or custom ASIC based design) for wearable computers and software architectures for smart data processing. Learning about wearable designs centered on the human experience, including sensing and interfacing with the human body, as well as user interaction, convenience, and support for non-intrusive social appearance. Case studies tying the business requirements with the technology and design issues.

EECS 480U. Wearable Computing Technology. 3 Units.

Learning about a broad range of cutting-edge technologies suitable for wearable computing. Understanding printed and flexible electronics technologies required for creating wearable computing, in particular organics for active components due to their flexibility or conformity. Examine the tradeoffs between flexible/conformal versus rigid electronics in the context of wearable computing. Reviewing the history of printed electronics used as conductors for membrane keypads, car windscreen heaters and RFID tag antennas-to name a few application examples. Reviewing the latest technology advances in functional components such as displays, lighting, transistors (p-type & n-type), memory, batteries, photovoltaics (PV), sensors, and conductors as well as integration/packaging steps. Understanding the market potential of these technologies by reviewing emerging products.

EECS 480W. Wearable Computing Manufacturing. 3 Units.

Learning about the supply chain and manufacturing processes for flexible electronics, sensors, and other technologies contributing to the development of wearable products. Understanding supply chain issues in low mobility materials, multilevel substrates, nanocomposites, materials for low power sensors, and inks suitable for direct printing. Identifying the tradeoffs involved in various manufacturing methods such as roll-to-roll manufacturing a mature coating technology yet to be proven for full device integration. Studying other manufacturing techniques such as plate-to-plate, direct printing, 3D printing, and screening techniques for their applicability to the manufacturing and integration of flexible electronics. Understanding the use of lithography and vapor deposition techniques in the context of flexible electronics. Examining the issues of systems integration and packaging of the manufactured products.

EECS 480X. Mobility-Driven Computing. 3 Units.

Fundamental concepts in computing and architecture for mobile devices, mobile operating systems, mobility and mobile data management. Application of technologies for location awareness, context awareness, integrated sensors, mobile Internet, displays, pattern recognition and natural language processing, and touch/gesture based user interaction. Understanding of the tradeoffs in design (smartphones, tablets) due to resource constraints such as wireless connectivity, application processing, power management, and graphics. Integration of near- and wide-area wireless communication technologies (Bluetooth, Wireless WAN). Exploration of emerging technologies and services for the mobile platform. Integration of the foregoing concepts in a specific mobile context application (home/office, pedestrian, vehicular).

EECS 480Y. Mobility-Driven Embedded Systems. 3 Units.

Foundations of reliable, energy-efficient and secure design of embedded systems. Fundamentals of mobility in embedded systems including wireless technology, location awareness, sensors, and actuators. Design consideration for processors, DSP, memory, and interfaces under mobility constraints (connectivity, power, and data management). Systems software for embedded computing, device management, and real-time I/O. Software design under constraints of size, performance, availability, and reliability. Software development techniques and practices (compliers, OS, and runtime systems). Case studies of mobility driven real-time embedded systems and software. Applications of mobility driven embedded systems, for example in in biomedical implant systems.

EECS 480Z. Mobile Applications Development. 3 Units.

Understanding of the mobile application architecture, operating systems, and platforms. Challenges and opportunities in mobile application development. Evaluation of the leading mobile platform frameworks with respect to their features, functions, libraries, support, and ease of development. Software design for mobile applications in gaming, multimedia, entertainment, and enterprise applications. Development of enhanced user experience in a multi-touch, multi-sensor (accelerometer, gyroscopes, camera, geo-location) environment. Understanding of software development environments and testing tools, and use of wireless connectivity and data in mobile applications. Development of or extension of a modest application based on a major mobile platforms (iOS, Windows Phone 7, or Android).

EECS 483. Data Acquisition and Control. 3 Units.

Data acquisition (theory and practice), digital control of sampled data systems, stability tests, system simulation digital filter structure, finite word length effects, limit cycles, state-variable feedback and state estimation. Laboratory includes control algorithm programming done in assembly language.

EECS 484. Computational Intelligence I: Basic Principles. 3 Units.

This course is concerned with learning the fundamentals of a number of computational methodologies which are used in adaptive parallel distributed information processing. Such methodologies include neural net computing, evolutionary programming, genetic algorithms, fuzzy set theory, and "artificial life." These computational paradigms complement and supplement the traditional practices of pattern recognition and artificial intelligence. Functionalities covered include self-organization, learning a model or supervised learning, optimization, and memorization.

EECS 485. VLSI Systems. 3 Units.

Basic MOSFET models, inverters, steering logic, the silicon gate, nMOS process, design rules, basic design structures (e.g., NAND and NOR gates, PLA, ROM, RAM), design methodology and tools (spice, N.mpc, Caesar, mkpla), VLSI technology and system architecture. Requires project and student presentation, laboratory.

EECS 486. Research in VLSI Design Automation. 3 Units.

Research topics related to VLSI design automation such as hardware description languages, computer-aided design tools, algorithms and methodologies for VLSI design for a wide range of levels of design abstraction, design validation and test. Requires term project and class presentation.

EECS 488. Embedded Systems Design. 3 Units.

Objective: to introduce and expose the student to methodologies for systematic design of embedded system. The topics include, but are not limited to, system specification, architecture modeling, component partitioning, estimation metrics, hardware software codesign, diagnostics.

EECS 489. Robotics I. 3 Units.

Orientation and configuration coordinate transformations, forward and inverse kinematics and Newton-Euler and Lagrange-Euler dynamic analysis. Planning of manipulator trajectories. Force, position, and hybrid control of robot manipulators. Analytical techniques applied to select industrial robots. Recommended preparation: EMAE 181. Offered as EECS 489 and EMAE 489.

EECS 490. Digital Image Processing. 3 Units.

Digital images are introduced as two-dimensional sampled arrays of data. The course begins with one-to-one operations such as image addition and subtraction and image descriptors such as the histogram. Basic filters such as the gradient and Laplacian in the spatial domain are used to enhance images. The 2-D Fourier transform is introduced and frequency domain operations such as high and low-pass filtering are developed. It is shown how filtering techniques can be used to remove noise and other image degradation. The different methods of representing color images are described and fundamental concepts of color image transformations and color image processing are developed. One or more advanced topics such as wavelets, image compression, and pattern recognition will be covered as time permits. Programming assignments using software such as MATLAB will illustrate the application and implementation of digital image processing.

EECS 491. Artificial Intelligence: Probabilistic Graphical Models. 3 Units.

This course is a graduate-level introduction to Artificial Intelligence (AI), the discipline of designing intelligent systems, and focuses on probabilistic graphical models. These models can be applied to a wide variety of settings from data analysis to machine learning to robotics. The models allow intelligent systems to represent uncertainties in an environment or problem space in a compact way and reason intelligently in a way that makes optimal use of available information and time. The course covers directed and undirected probabilistic graphical models, latent variable models, associated exact and approximate inference algorithms, and learning in both discrete and continuous problem spaces. Practical applications are covered throughout the course. Prereq: EECS 391 or requisites not met permission.

EECS 492. VLSI Digital Signal Processing Systems. 3 Units.

Digital signal processing (DSP) can be found in numerous applications, such as wireless communications, audio/video compression, cable modems, multimedia, global positioning systems and biomedical signal processing. This course fills the gap between DSP algorithms and their efficient VLSI implementations. The design of a digital system is restricted by the requirements of applications, such as speed, area and power consumption. This course introduces methodologies and tools which can be used to design VLSI architectures with different speed-area tradeoffs for DSP algorithms. In addition, the design of efficient VLSI architectures for commonly used DSP blocks is presented in this class. Recommended preparation: EECS 485.

EECS 493. Software Engineering. 3 Units.

Topics: Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; programming practices; software validation techniques; software maintenance practices; software engineering ethics. Undergraduates work in teams to complete a significant software development project. Graduate students are required to complete a research project. Offered as EECS 393, EECS 393N, and EECS 493. Counts as SAGES Senior Capstone.

EECS 494. Introduction to Information Theory. 3 Units.

This course is intended as an introduction to information and coding theory with emphasis on the mathematical aspects. It is suitable for advanced undergraduate and graduate students in mathematics, applied mathematics, statistics, physics, computer science and electrical engineering. Course content: Information measures-entropy, relative entropy, mutual information, and their properties. Typical sets and sequences, asymptotic equipartition property, data compression. Channel coding and capacity: channel coding theorem. Differential entropy, Gaussian channel, Shannon-Nyquist theorem. Information theory inequalities (400 level). Additional topics, which may include compressed sensing and elements of quantum information theory. Recommended Preparation: MATH 201 or MATH 307. Offered as MATH 394, EECS 394, MATH 494 and EECS 494.

EECS 495. Nanometer VLSI Design. 3 Units.

Semiconductor industry has evolved rapidly over the past four decades to meet the increasing demand on computing power by continuous miniaturization of devices. Now we are in the nanometer technology regime with the device dimensions scaled below 100nm. VLSI design using nanometer technologies involves some major challenges. This course will explain all the major challenges associated with nanoscale VLSI design such as dynamic and leakage power, parameter variations, reliability and robustness. The course will present modeling and analysis techniques for timing, power and noise in nanometer era. Finally, the course will cover the circuit/architecture level design solutions for low power, high-performance, testable and robust VLSI system. The techniques will be applicable to design of microprocessor, digital signal processor (DSP) as well as application specific integrated circuits (ASIC). The course includes a project which requires the student to work on a nanometer design issue. Recommended preparation: EECS 426 or EECS 485.

EECS 496. Artificial Intelligence: Sequential Decision Making. 3 Units.

This course will study the formulation and solution of decision making problems by automated agents. Topics covered include one-shot decision making (decision trees and influence diagrams), Markov decision processes (MDPs) , automated classical and probabilistic planning, reinforcement learning (RL), hierarchical planning and RL, partially observable MDPs, Bayesian RL, collaborative multi-agent systems. Recommended preparation: EECS 491 (Probabilistic Graphical Models). Prereq: EECS 391.

EECS 497. Artificial Intelligence: Statistical Natural Language Processing. 3 Units.

This course gives students an overview of the stat of the art in natural language processing. We will discuss computational aspects of language modeling through probabilistic models, computational approaches to syntax (parsing) and semantic representations, discourse and dialog. We will study the applications of these techniques to a variety of problems including information extraction, translation and summarization. At the end of the course a student should be able to (i) understand the various statistical models and algorithms for NLP (ii) modify them as needed or design novel approaches for specific NLP tasks and (iii) understand how to evaluate the performance of these models and compare them to alternatives. Prereq: EECS 440.

EECS 499. Algorithmic Robotics. 3 Units.

This course introduces basic algorithmic techniques in robotic perception and planning. Course is divided into two parts. The first part introduces probabilistic modeling of robotic motion and sensing, Gaussian and nonparametric filters, and algorithms for mobile robot localization. The second part introduces fundamental deterministic and randomized algorithms for motion planning. Prereq: Graduate Standing or Requisites Not Met permission.

EECS 500. EECS Colloquium. 0 Units.

Seminars on current topics in Electrical Engineering and Computer Science.

EECS 500T. Graduate Teaching II. 0 Units.

This course will provide the Ph.D. candidate with experience in teaching undergraduate or graduate students. The experience is expected to involve direct student contact but will be based upon the specific departmental needs and teaching obligations. This teaching experience will be conducted under the supervision of the faculty member who is responsible for the course, but the academic advisor will assess the educational plan to ensure that it provides an educational experience for the student. Students in this course may be expected to perform one or more of the following teaching related activities: grading homeworks, quizzes, and exams, having office hours for students, running recitation sessions, providing laboratory assistance. Recommended preparation: Ph.D. student in EECS department.

EECS 516. Large Scale Optimization. 3 Units.

Concepts and techniques for dealing with large optimization problems encountered in designing large engineering structure, control of interconnected systems, pattern recognition, and planning and operations of complex systems; partitioning, relaxation, restriction, decomposition, approximation, and other problem simplification devices; specific algorithms; potential use of parallel and symbolic computation; student seminars and projects. Recommended preparation: EECS 416.

EECS 518. Nonlinear Systems: Analysis and Control. 3 Units.

Mathematical preliminaries: differential equations and dynamical systems, differential geometry and manifolds. Dynamical systems and feedback systems, existence and uniqueness of solutions. Complicated dynamics and chaotic systems. Stability of nonlinear systems: input-output methods and Lyapunov stability. Control of nonlinear systems: gain scheduling, nonlinear regulator theory and feedback linearization. Recommended preparation: EECS 408.

EECS 520. Robust Control. 3 Units.

One of the most important problems in modern control theory is that of controlling the output of a system so as to achieve asymptotic tracking of prescribed signals and/or asymptotic rejection of undesired disturbances. The problem can be solved by the so-called regulator theory and H-infinity control theory. This course presents a self-contained introduction to these two important design methods. The intention of this course is to present ideas and methods on such a level that the beginning graduate student will be able to follow current research. Both linear and nonlinear results will be covered. Recommended preparation: EECS 408.

EECS 523. Advanced Neural Microsystems. 3 Units.

This course will cover the latest advances in neuroengineering with specific attention to integrated microsystems targeting wired/wireless multichannel interfacing with the nervous system at the cellular level in biological hosts. The aim is to provide students familiar with microfabrication and integrated circuit design with an application-driven, system-level overview of sensors and microelectronics in microsystems format for neural engineering. Recommended preparation: EECS 426.

EECS 526. Integrated Mixed-Signal Systems. 3 Units.

Mixed-signal (analog/digital) integrated circuit design. D-to-A and A-to-D conversion, applications in mixed-signal VLSI, low-noise and low-power techniques, and communication sub-circuits. System simulation at the transistor and behavioral levels using SPICE. Class will design a mixed-signal CMOS IC for fabrication by MOSIS. Recommended preparation: EECS 426.

EECS 527. Advanced Sensors: Theory and Techniques. 3 Units.

Sensor technology with a primary focus on semiconductor-based devices. Physical principles of energy conversion devices (sensors) with a review of relevant fundamentals: elasticity theory, fluid mechanics, silicon fabrication and micromachining technology, semiconductor device physics. Classification and terminology of sensors, defining and measuring sensor characteristics and performance, effect of the environment on sensors, predicting and controlling sensor error. Mechanical, acoustic, magnetic, thermal, radiation, chemical and biological sensors will be examined. Sensor packaging and sensor interface circuitry.

EECS 531. Computer Vision. 3 Units.

The goal of computer vision is to create visual systems that recognize objects and recover structures in complex 3D scenes. This course emphasizes both the science behind our understanding of the fundamental problems in vision and the engineering that develops mathematical models and inference algorithms to solve these problems. Specific topics include feature detection, matching, and classification; visual representations and dimensionality reduction; motion detection and optical flow; image segmentation; depth perception, multi-view geometry, and 3D reconstruction; shape and surface perception; visual scene analysis and object recognition.

EECS 589. Robotics II. 3 Units.

Survey of research issues in robotics. Force control, visual servoing, robot autonomy, on-line planning, high-speed control, man/machine interfaces, robot learning, sensory processing for real-time control. Primarily a project-based lab course in which students design real-time software executing on multi-processors to control an industrial robot. Recommended preparation: EECS 489.

EECS 600. Special Topics. 1 - 18 Unit.

Offered as EECS 600 and SYBB 600.

EECS 600T. Graduate Teaching III. 0 Units.

This course will provide Ph.D. candidate with experience in teaching undergraduate or graduate students. The experience is expected to involve direct student contact but will be based upon the specific departmental needs and teaching obligations. This teaching experience will be conducted under the supervision of the faculty member who is responsible for the course, but the academic advisor will assess the educational plan to ensure that it provides an educational experience for the student. Students in this course may be expected to perform one or more of the following teaching related activities running recitation sessions, providing laboratory assistance, developing teaching or lecture materials presenting lectures. Recommended preparation: Ph.D. student in EECS department.

EECS 601. Independent Study. 1 - 18 Unit.


EECS 602. Advanced Projects Laboratory. 1 - 18 Unit.


EECS 620. Special Topics. 1 - 18 Unit.


EECS 621. Special Projects. 1 - 18 Unit.


EECS 649. Project M.S.. 1 - 9 Unit.


EECS 651. Thesis M.S.. 1 - 18 Unit.


EECS 701. Dissertation Ph.D.. 1 - 9 Unit.

Prereq: Predoctoral research consent or advanced to Ph.D. candidacy milestone.