16-299: Introduction to Feedback Control Systems: Policies
Web Pages
This page (http://www.cs.cmu.edu/~cga/controls-intro/) will be where the Instructor puts material.
We will use Piazza for class discussion and answering questions. Piazza is good for getting you help fast and efficiently from classmates and, more slowly, the instructor. Rather than emailing questions to the instructor, we encourage you to post your questions on Piazza.
Find our class signup link at: https://piazza.com/cmu/spring2023/16299
Objectives
This course is designed as a first course in feedback control and systems for computer
science majors. The course is evolving to emphasize planning more, and the course title will
eventually become something like "Planning, Control, and Learning".
The course will cover five main topics: classical control theory for linear time
invariant (LTI) systems (time and frequency domain, PID control), modern LTI
control theory (state-space controllers, observers and state estimators, LQR), planning,
learning, and advanced nonlinear systems theory as
time allows (Lyapunov theory, adaptive control, learning control, etc.). We will also study these
topics through simulation using MATLAB. Planning and feedback control play an important role in understanding
topics ranging from our physiology to our society. We will focus on controlling systems
which have continuous states and actions, and continuous dynamics, like robots.
More specific learning objectives
-
Develop Intuition: Gain intuition about feedback control and learning, what it can do, and how it fails.
-
Make Models: Understand system interactions.
Be able to build a model of an actual physical system, including systems composed of multiple component systems
combined in series, parallel, and feedback configurations.
-
Simulate: Simulate and analyze dynamic behavior of systems.
Predict qualitative and quantitative behavior of systems.
Analyze transient behavior of linear and nonlinear state-space systems via eigenvalues and
Lyapunov theory.
-
Design Controllers:
Be able to design and implement a control system for an actual physical system.
Synthesize PID feedback controllers to achieve desired step-response characteristics.
Construct state feedback controllers and state estimators for linear state space systems
using optimal control, in the form of LQR (linear quadratic regulator) techniques.
-
Use Learning:
Use "learning", in particular iterative trajectory learning, adaptive control, and
reinforcement learning,
to iteratively design controllers.
Course Format
-
This course will include lectures, discussion, assignments, and a project.
-
We will use class time for presentations by you and the instructors,
discussions, work, and group meetings with instructors.
-
There will be some assignments intermixed with working on your project.
Course policies
-
Working in teams is fine, and being a psychopathic loner (like your instructor) is fine.
-
No midterm or final exams.
Exams don't reflect the way one actually does control. Designing control systems
is an iterative activity that is "open book" and "open web",
aided by programs like Matlab,
that typically takes longer than an hour. An open book exam that one has a while to do is
called an assignment. In real life people work in teams.
-
There will be some number (TBA) of assignments.
Late assignments policy: TBA.
Some assignments will involve working with an actual robot given to you (lab assignments).
-
Grading: The project will count as several assignments. The exact formula will depend
on how many and what assignments we actually do.
-
Everybody will do a project of their own design, with approval by the instructor.