University of Michigan Control Courses
Undergraduate Courses or Graduate Courses (General) or Graduate Courses (Domain Specific) or Helpful Math Courses or Related Engineering Courses
W18 Offerings,
F17 Offerings,
W17 Offerings,
F16 Offerings,
W16 Offerings,
F15 Offerings,
W15 Offerings,
F14 Offerings,
W14 Offerings,
F12 Offerings,
W12 Offerings,
F11 Offerings,
F10 Offerings,
W10 Offerings,
F09 Offerings,
W09 Offerings
The term or terms when the course is offered is placed in curly brackets.
 AEROSP 345 Flight Dynamics and Control. {Fterm and Wterm} This course covers the kinematics and dynamics of aircraft, as well as linearized flight analysis and basic concepts of feedback control. This course is required for all aerospace engineering majors. For more information, see more.
 AEROSP 450 Flight Software Systems. This course introduces fundamental computing theory and programming practices for robust design, implementation, and testing of modern flight software systems. For more information, see more.
 EECS 460 Control Systems Analysis and Design.
{Fterm and Wterm}
Standard introductory course covering feedback design of SISO
continuoustime systems on the basis of root locus and Bode techniques.
The course assumes a good working knowledge of the singlesided Laplace
transform. ME students can take the course for ME credit in place of ME
461. For more information, see more.
 EECS 461 Embedded Control Systems.
{Fterm and Wterm} Fundamentals of embedded control system design and
operation. The course uses knowledge of signals and systems, basics of
how a microprocessor works, and C or C++. EECS 460 and 461 are
completely independent courses; neither one assumes knowledge of the
other. Very roughly speaking, EECS 460 is the algorithm design side of
control and EECS 461 deals with hardware implementation issues for
feedback control algorithms. Both are clearly important. For more
information, see more.
 ME 360 Modeling, Analysis and Control of
Dynamic Systems {Fterm and Wterm} Modeling and analysis of mechanical
and electromechanical systems. Introduction to feedback techniques.
Requires basics of "F = M A" and "V = I R". For more information, see more.
 ME 461 Automatic Control {Fterm}
Introductory control design with emphasis on mechanical engineering
applications. The course assumes a good working knowledge of dynamics
(such as ME 240) and the singlesided Laplace transform. EECS students
can take the course for EECS credit in place of EECS 460. For more
information, see more.
 (Back to Top)
If a course is crosslisted, the home department is listed first and
then the crosslisted departments are placed in parentheses. The term
or terms when the course is offered is placed in curly brackets. A
course listed as oddyears or even years means that the course is
taught every other year, as in 2009, 2011, etc. for oddyear courses,
or 2008, 2010, etc. for evenyear courses. The faculty make every
effort to respect this schedule, but exceptions do occur. The courses
in this list do not require background knowledge in any specific
domain, such as mechanics, combustion, or aerospace.
 AEROSP 566 Data Analysis and System Identification. Methods of data analysis and empirical modeling. This course is appropriate for students from any area of science and engineering. For more information, see more.
 AEROSP 575 Flight and Trajectory Optimization. Optimal control theory with applications to flight problems. For more information, see more.
 EECS 501. Probability and Random Processes {Fterm
and Wterm} While not specifically a control course, stochastic
processes are essential for understanding many phenomena in control
engineering. For more information, see more.
 EECS 502. Stochastic Processes {Wterm, odd years} A followon course to EECS 501. For more information, see more.
 EECS 558. Stochastic Control. {Fterm,
odd years} Covers analysis, optimization and identification of systems
described by Markov chains. The course assumes graduatelevel knowledge
in stochastic processes and linear systems theory. For more
information, see more.
 EECS 560 (AERO
550) (ME 564) Linear Systems Theory. {Fterm only} Graduatelevel
linear systems theory. The course covers statevariable methods for
MIMO, linear, timeinvariant systems. This is the entry course for
many of the graduatelevel control systems courses; if you show up in
the Winter Term without the equivalent of this course, you will have a
hard time taking other graduatelevel control courses. For more information, see more.

EECS 562 (AERO 551). Nonlinear Systems and Control. {Wterm only}
This course builds on the statevariable theory of linear control
systems in order to design and analyze nonlinear control systems. For
more information, see more.
 EECS 563. Hybrid Systems Analysis and Control. {Fterm,
even years} Introduction to analysis and design of hybrid systems and hybrid control systems.
The course assumes graduatelevel knowledge
in linear systems theory and good command of Lyapunov theory. For more
information, see more.

EECS 565 (AERO 580). Linear Feedback Control Systems {Wterm only} This
courses builds on undergraduate frequency domain methods and
graduatelevel statevariable methods in order to develop feedback
design concepts for linear multivariable systems. This course is
extremely valuable for practicing engineers. For more information, see more.
 EECS 566. Discrete Event Systems.
{Fterm, even years} Graduate standing.
Modeling, analysis, and control design for dynamic systems with discrete state spaces and
eventdriven dynamics. For more information, see more
more.

EECS 569. Production Systems Engineering {Wterm only, odd years} This
course develops systems theory of manufacturing systems. Many case
studies are used. Requires a good knowledge of undergraduate
probability. For more information, see more.

EECS 600 (IOE 600) Function Space Methods in System Theory. {Wterm
only, odd years} Introduction to the description and analysis of
systems using function analytic methods. MATH 451 is not assumed, but
is helpful. For more information, see more.
 EECS 662 (ME 662). Advanced Nonlinear
Control {Fterm , odd years}. Builds on the first graduate course
in nonlinear systems, EECS 562. Topics vary with instructor.
For more information, see more.
 MATH 658. Nonlinear Dynamics, Geometric Mechanics and Control
{Fterm , odd years}. Mathematical treatment of nonlinear dynamics and ordinary differential equations in the context of geometric mechanics, Hamiltonian and nonholonomic
systems, nonlinear stability theory and nonlinear control theory.
For more information, see more.
 ME 548.
Applied Nonlinear Dynamics {Fterm, even years}. Introduction to bifurcations, chaos, strange attractors and other fascinating topics. Assumes a background in undergraduate dynamicsvibrationscontrol, such as ME360. For more
information, see more.
 ME 561 (EECS 561).
Design of Digital Control Systems {Wterm only} Design of digital
control systems, from frequency domain methods through statevariable
methods. Assumes a background in undergraduate control. For more
information, see more.
 ME 661 Adaptive Control Systems{WTerm}
Introduction to control of systems with undetermined or timevarying
parameters. Theory and application of selftuning and model reference
adaptive control for continuous and discretetime deterministic
systems. For more information, see more.
 NA 583 Adaptive Control. This is a graduate level course with linear systems as the essential prerequisite. It covers the design, analysis, and implementation of adaptive schemes for both discrete and continuous time systems. For more information, see more.
 (Back to Top)
These courses may require a nontrivial amount of background knowledge
in a specific application domain, or may develop control methods for
use in a specific application. You need to pay extra attention to
prerequisites. The term or terms when the course is offered is placed
in curly brackets. A course listed as oddyears or even years means
that the course is taught every other year, as in 2009, 2011, etc. for
oddyear courses, or 2010, 2012, etc. for evenyear courses. The
faculty make every effort to respect this schedule, but exceptions do
occur. (Back to Top)
 AEROSP 540 (MECHENG 540). Intermediate Dynamics. Newton and Lagrangian dynamics for single and multibody systems. Required for all AERO dynamics and control majors. For more information, see more.
 AEROSP 572 Dynamics and Control of Aircraft. Modeling and simulation of aircraft dynamics, linear and nonlinear techniques for aircraft maneuvers. For more information, see more.
 AEROSP 573 Dynamics and Control of Spacecraft. Spacecraft dynamics and control, including orbital effects, as well as techniques for attitude control. For more information, see more.
 AEROSP 579 Control of Structures and Fluids. Linear multivariable control theory with applications to vibration and flow. Alternative to EECS565/AE580. For more information, see more.
 AEROSP 584 Avionics, Navigation and Guidance of Aerospace Vehicles. Kalman filter theory with applications to aircraft and spacecraft navigation. For more information, see more.
 ME 567 (EECS 567) (MFG 567) Introduction
to Robotics. {Wterm} Much of this course is devoted to the dynamics of
rigid bodies in three dimensions. Elementary control notions are used.
Motion planning with obstacle avoidance is also covered. For more
information, see more.
 ME 552(Mfg 552) Electromechanical System
Design {Fterm} Design of electromechanical systems with emphasis placed
on the integration of mechanical and electrical principles. Principles
and implementation issues of digital control are covered. For more
information, see more.
 ME 568 Vehicle Control Systems {FTerm}
Design and analysis of vehicle control systems such as cruise control,
traction control, etc. For more information, see more.
 ME 569 Control of Advanced Powertrain
Systems {FTerm, even years} Fundamentals of modeling and feedback
control of spark ignition (gasoline), compression ignition (diesel), thermal ignition (HCCI)
engines as well as electrochemical power sources such as batteries, fuel cells and solar cells.
Does **not** require extensive background in mechanics or control.
For more information, see more.
 (Back to Top)
 AEROSP 345 Flight Dynamics and Control
An introduction to dynamics and control of aircraft. Introduces concepts from linear systems theory (state equations, transfer functions, stability, time and frequency response). Aircraft longitudinal and lateral flight dynamics and control systems.
BACK.
 AEROSP 450 Flight Software Systems. This course introduces fundamental computing theory and programming practices for robust design, implementation, and testing of modern flight software systems. Lectures follow parallel theory and practice tracks. Topics in computational theory include discrete mathematics, finite automata, computational complexity, and model checking. Equallyemphasized, software development topics include objectoriented programming, network and multithreaded software, and embedded system programming. Projects and assignments focus on Aerospace applications, ranging from sensor data processing to embedded guidance, navigation, and control.
BACK.
 AEROSP 540 (MECHENG 540). Intermediate Dynamics
Newton/Euler and Lagrangian formulations for three dimensional motion of particles and rigid bodies. Principles of dynamics applied to various rigidbody and multibody dynamics problems that arise in aerospace and mechanical engineering.
BACK.
 AEROSP 566 Data Analysis and System Identification
Methods of data analysis and empirical modeling. Sensors and measurement concepts. Time and frequency data analysis; statistical and spectral concepts. Linear regression and identifications of timeseries models. Parameter estimation using optimization. Basisfunction expansions and nonlinear timeseries identification. Eigensystem realization and subspace identification. Nonlinear state space identification.
BACK.
 AEROSP 572 Dynamics and Control of Aircraft
Introduction to flight dynamics and controls, including flight mechanics and control of flight vehicles in the atmosphere, translational and rotational motion description of rigid body vehicles in inertial and noninertial frames, aerodynamics, propulsion and control effectors, linear multivariable flight control, nonlinear flight control using dynamic inversion, stabilization and trajectory planning.
BACK.
 AEROSP 573 Dynamics and Control of Spacecraft
Introduction to spacecraft dynamics and control. Spacecraft orbit and attitude representations, kinematics, dynamics. Perturbation equations for near circular orbits. Spacecraft maneuvers formulated and solved as control problems.
BACK.
 AEROSP 575 Flight and Trajectory Optimization
Formulation and solution of optimization problems for atmospheric flight vehicles and space flight vehicles. Optimality criteria, constraints, vehicle dynamics. Flight and trajectory optimization as problems of nonlinear programming, calculus of variations, and optimal control. Algorithms and software for solution of flight and trajectory optimization problems.
BACK.
 AEROSP 579 Control of Structures and Fluids
Stabilization and vibration suppression for structures and fluids. Controloriented modeling of structural and acoustic dynamics. Fixedgain and adaptive control methods. Controloriented fluid dynamics for compressible and incompressible fluids. Feedback stabilization of laminar flow, rotating surge and stall.
BACK.
 AEROSP 584 Avionics, Navigation and Guidance of Aerospace Vehicles
Principles of avionics, navigation and guidance. Deterministic and stochastic linear perturbation theory. Position fixing and celestial navigation with redundant measurements. Recursive navigation and Kalman filtering. Pursuit guidance, proportional navigation, ballistic guidance and velocitytobegained guidance. Hardware mechanization.
BACK.
 EECS 460. Control Systems Analysis
and Design
Prerequisite: EECS 216 or EECS 306 or graduate standing. II (4 credits)
Basic techniques for analysis and design of controllers applicable in
any industry (e.g. automotive, aerospace, computer, communication,
chemical, bioengineering, power, etc.) are discussed. Both time and
frequencydomain methods are covered. Root locus, Nyquist and Bode
plotbased techniques are outlined. Computerbased experiment and
discussion sessions are included in the course. BACK.
 EECS 461. Embedded Control
Systems
Prerequisite: EECS 216 or EECS 306 or EECS 373 or graduate standing. I
and II (4 credits)
Basic interdisciplinary concepts needed to implement a microprocessor
based control system. Sensors and actuators. Quadrature decoding. Pulse
width modulation. DC motors. Force feedback algorithms for human
computer interaction. Real time operating systems. Networking. Use of
MATLAB to model hybrid dynamical systems. Autocode generation for rapid
prototyping. Lecture and laboratory.BACK.
 EECS 501. Probability and Random Processes
Prerequisite: EECS 401 or graduate standing. I, II (4 credits)
Introduction to probability and random processes. Topics include
probability axioms, sigma algebras, random vectors, expectation,
probability distributions and densities, Poisson and Wiener processes,
stationary processes, autocorrelation, spectral density, effects of
filtering, linear leastsquares estimation, and convergence of random
sequences. BACK.
 EECS 502. Stochastic Processes
Prerequisite: EECS 501. II Alternate years (3 credits)
Correlations and spectra. Quadratic mean calculus, including stochastic
integrals and representations, widesense stationary processes
(filtering, white noise, sampling, time averages, moving averages,
autoregression). Renewal and regenerative processes, Markov chains,
random walk and run, branching processes, Markov jump processes,
uniformization, reversibility, and queuing applications. BACK.
 EECS 558. Stochastic Control
Prerequisite: EECS 501, EECS 560. I, odd years (3 credits)
Analysis and optimization of controlled stochastic systems. Models:
linear and nonlinear stochastic controlled systems, controlled Markov
chains. Optimization of systems described by Markov processes; dynamic
programming under perfect and imperfect information, finite and
infinite horizons. System identification: offline, recursive.
Stochastic adaptive control: Markov chains, selftuning regulators,
bandit problems. BACK.
 EECS 560. (AERO 550) (ME 564).
Linear Systems Theory
Prerequisite: graduate standing. I (4 credits) Linear spaces and linear
operators. Bases, subspaces, eigenvalues and eigenvectors, canonical
forms. Linear differential and difference equations. Mathematical
representations: state equations, transfer functions, impulse response,
matrix fraction and polynomial descriptions. Systemtheoretic concepts:
causality, controllability, observability, realizations, canonical
decomposition, stability. BACK.
 EECS
562 (AERO 551). Nonlinear Systems and Control. Prerequisite: graduate
standing. II (3 credits). Introduction to the analysis and design of
nonlinear systems and nonlinear control systems. Stability analysis
using Liapunov, inputoutput and asymptotic methods. Design of
stabilizing controllers using a variety of methods: linearization,
absolute stability theory, vibrational control, sliding modes and
feedback linearization. Note that even though the official prerequisite
is graduate standing, it is assumed that the student has a solid
background in state variable methods for linear systems (such as EECS
560), or can obtain that background quickly on their own. Working
knowledge of MATLAB is very useful as well. BACK.
 EECS
563. Hybrid Systems Analysis and Control. Advised Prerequisite: EECS 562 or
EECS 560 and permission of instructor. (3 credits). Introduction to analysis and design
of hybrid systems and hybrid control systems. Hybrid system modeling formalisms,
specifications (automata theory, temporal logics), verification (barrier certificates,
reachable sets, abstractionbased methods) and control synthesis. Stability of
switched/hybrid systems. Applications of convex geometry and convex optimization
in control. Modelpredictive control of hybrid systems. It is assumed that
the students has a solid
background in state variable methods for linear systems (such as EECS
560) and Lyapunov theory, or can obtain that background quickly on their own. Working
knowledge of MATLAB is very useful as well. BACK.

EECS 565 (AERO 580). Linear Feedback Control
Systems
Prerequisite: EECS 460 or AERO 345 or ME 461 and AERO 550 (EECS 560).
II (3 credits)
Control design concepts for linear multivariable systems. Review of
single variable systems and extensions to multivariable systems.
Purpose of feedback. Sensitivity, robustness, and design tradeoffs.
Design formulations using both frequency domain and state space
descriptions. Pole placement/observer design. Linear quadratic Gaussian
based design methods. Design problems unique to multivariable systems.
Working knowledge of MATLAB is very useful as well. BACK.
 EECS 566. Discrete Event Systems
Prerequisite: graduate standing. I even years (3 credits)
Modeling, analysis, and control of discrete event systems; untimed
(logical) and timed models considered. Defining characteristics of
discrete event systems. Logical models: languages, automata, and Petri
nets. Analysis: safety, blocking, state estimation and diagnostics.
Supervisory control: controllability, nonblocking and nonconflicting
languages, observability and coobservability. Timed models: timed
automata and timed Petri nets. Analysis using dioid algebras. Control
of Petri nets. Introduction to hybrid models. BACK.
 EECS 569. Production Systems
Engineering
Prerequisite: none. II Alternate Years (3 credits)
Production systems in large volume manufacturing (e.g., automotive,
semiconductor, computer, etc.) are studied. Topics include quantitative
methods for analysis of production systems; analytical methods for
design of lean inprocess and finished goods buffering;
measurementbased methods for identification and elimination of
production system bottlenecks; and systemtheoretic properties of
production lines. BACK.
 EECS 600 (IOE 600). Function
Space Methods in System Theory
Prerequisite: Math 419. II (3 credits)
Introduction to the description and analysis of systems using function
analytic methods. Metric spaces, normed linear spaces, Hilbert spaces,
resolution spaces. Emphasis on using these concepts in systems
problems. BACK.
 EECS 662 (ME 662). Advanced
Nonlinear Control
Prerequisite: EECS 562 or ME 548. I (3 credits)
Geometric and algebraic approaches to the analysis and design of
nonlinear control systems. Nonlinear controllability and observability,
feedback stabilization and linearization, asymptotic observers,
tracking problems, trajectory generation, zero dynamics and inverse
systems, singular perturbations, and vibrational control. BACK.
 MATH 658. Nonlinear Dynamics, Geometric Mechanics and Control. Prerequisite: a course in differential equations (3 credits).
This course treats aspects of the modern
theory of nonlinear dynamics and ordinary differential equations as applied
to problems in geometric mechanics, Hamiltonian and nonholonomic
systems (systems with nonintegrable constraints),
nonlinear stability theory and nonlinear control theory.
The role of symmetry and reduction is discussed as well
as topics such as the least action principle, integrability, symplectic
and Poisson geometry, and controllability and accessibility on manifolds. Text: A. Bloch, Nonholonomic Mechanics and Control, Springer Verlag
(required). Other books will be referenced as well as the primary
mathematical literature.BACK.
 ME 360 Modeling, Analysis and
Control of Dynamic Systems
Prerequisites: ME 240, preceded or accompanied by EECS 314. (4).
Developing mathematical models of dynamic systems, including
mechanical, electrical, electromechanical, and fluid/thermal systems,
and representing these models in transfer function and state space
form. Analysis of dynamic system models, including time and frequency
responses. Introduction to linear feedback control techniques.
Synthesis and analysis by analytical and computer methods. Four hours
of lecture per week. BACK.
 ME 461 Automatic Control
Prerequisites: ME 360. (3)
Feedback control design and analysis for linear dynamic systems with
emphasis on mechanical engineering applications; transient and
frequency response; stability; system performance; control modes; state
space techniques; digital control systems. BACK.
 ME 548 Applied Nonlinear Dynamics
Prerequisites: An undergraduate level course in dynamics/vibrations/control, like ME 360. Knowledge of linear algebra and differential equations
Geometrical representation of the dynamics of nonlinear systems. Stability and bifurcation theory for autonomous and periodically forced systems. Chaos and strange attractors. Introduction to pattern formation. Applications to various problems in rigidbody dynamics, flexible structural dynamics, fluidstructure interactions, fluid dynamics, and control of electromechanical systems. BACK.
 ME 561 (EECS 561) Design of
Digital Control Systems
Prerequisite: EECS 460 or ME461. I (3 credits))
Sampling and data reconstruction. Ztransforms and state variable
descriptions of discretetime systems. Modeling and identification.
Analysis and design using root locus, frequency response, and state
space techniques. Linear quadratic optimal control and state
estimation. Quantization and other nonlinearities. BACK.
 ME 567 (EECS 567) (MFG 567)
Introduction to Robotics. II
Prerequisite: graduate standing or permission of instructor (3 credits)
Introduction to the central topics in robotics, including geometry,
kinematics, differential kinematics, dynamics, and control of robot
manipulators. The mathematical tools required to describe spatial
motion of a rigid body will be presented in full. Motion planning
including obstacle avoidance is also covered. BACK.
 ME 552 (Mfg 552) Electromechanical
System Design. Prerequisites: EECS 314 or equivalent. (3 credits)
Design of electromechanical systems with emphasis placed on the
integration of mechanical and electrical principles. Topics include:
electromechanical device design: generators/alternators, electrical
motors, measurement/sensing devices; digital control: microprocessors,
AD/DA converters, data transmission and acquisition; electromechanical
system design: mixed domain modeling, real time control and mechatronic
systems.BACK.
 ME 568 Vehicle Control Systems
Prerequisites: ME 461 or equivalent. (3).
Design and analysis of vehicle control systems such as cruise control,
traction control, active suspensions and advanced vehicle control
systems for Intelligent VehicleHighway Systems (IVHS). Human factor
considerations such as driver interfaces. This course may be used as
part of the IVHS certification program. BACK.
 ME 569 Control of Advanced
Powertrain Systems
Prerequisites: ME 360, preceeded or accompanied by ME 461. (3).
Will cover essential aspects of electronic engine control for spark
ignition (gasoline) and compression ignition (diesel) engines followed
by recent control developments for direct injection, camless actuation,
active boosting technologies, hybridelectric, and fuel cell power
generation. Will review system identification, averaging, feedforward,
feedback, multivariable (multiple SISO and MIMO), estimation, dynamic
programming, and optimal control techniques. BACK.
 ME 661 Adaptive Control Systems
Prerequisites: ME 561. (3).
Introduction to control of systems with undetermined or timevarying
parameters. Theory and application of selftuning and model reference
adaptive control for continuous and discretetime deterministic
systems. Modelbased methods for estimation and control, stability of
nonlinear systems, adaptation laws, and design and application of
adaptive control systems. BACK.
 NA 583: Adaptive Control. Models of system with unknown or timevarying parameters. Theory and algorithm for online parameter identification. Adaptive observers. Direct and indirect adaptive control. Model reference adaptive control. Robustness and convergence of adaptive systems. Design and analysis of nonlinear adaptive control. Application and implementation of adaptive systems. BACK.
 (Back to Top)
Mathematics is the lingua franca in many of the graduate control courses. None of the control courses has a specific math course as prerequisite; instead, the relevant mathematics is taught in the course as needed. Thousands of students have made it through the control courses without taking supplemental mathematics courses. On the other hand, many students have found it helpful to sharpen their mathematical background when taking control courses as this allows them to concentrate on the application of the mathematics in an engineering setting, instead of having to learn a new mathematical concept, and how to apply it, all at the same time. The following are suggestions and are **not** disguised prerequisites.
 Linear Algebra. Abstract concept of a vector space, linear independence, bases, changes of bases, linear transformations, representations of linear operators with respect to bases, eigenvalues and eigenvectors of matrices. An example course is MATH 419. This material is covered and used in EECS 560 (AERO 550) (ME 564).
 Real Analysis. Basic metric and topological notions in R^n. Open sets, closed sets, sequences, convergence, compactness, distance as measured by a norm or a metric, continuity of functions, differentiability, integration, etc. An example course is MATH 451. The main thing you will acquire in this course is mathematical maturity, an ability to read and write elementary proofs. Depending on the instructor, this material is used in EECS 562 (AERO 551) and EECS 600 (IOE 600).
 Numerical Analysis. Developing and establishing properties of algorithms used to solve scientific and engineering problems, such as NewtonRaphson algorithms, integration of ODEs, etc. An example course is MATH 471. You will see some of the Real Analysis topics, but in a much more applied setting.
 Still other students have benefited from courses in Complex Variables, Functional Analysis, Differential Geometry, Topology, etc; see UofM MATH Courses for more ideas. Discussing choices with your academic advisor is always a good idea.
(Back to Top)
A wellrounded education in control systems will also include a selection of courses
from stochastic processes, (fault) detection theory, networks, signal
processing, realtime computing systems, mathematical optimization and numerous other areas. See
your advisor for suggestions. (Back to Top)
