Spring semester | 6 units, mini-course (Thinking about Action Core Curriculum)
This graduate-level mini-course offers an introduction to the fundamentals of control theory. Designed as part of the "Thinking about Action" core curriculum area, the course aims to give students an understanding of the value and applications of control in robotics. The course equips students with foundational knowledge and practical skills needed for further self-study and for collaborating with experts in the area. Students learn core concepts in control, estimation and optimization, and see how they are applied in research examples from different robotics domains.
Solid background in engineering math and physics. Proficiency with MATLAB or Python coding environment.
By the end of this course, students will be able to:
identify and describe fundamental concepts in control (LTI system model, feedback control and stability, PID), optimization (LQR and MPC), and estimation (Kalman filter, recursive filters);
implement basic algorithms for solving robot control problems;
describe the core ideas behind more advanced nonlinear control concepts (inverse dynamics control, impedance control, and quadratic programming control) specific to articulated robots; and
comprehend and summarize related research papers in the core area "Thinking about Actions".
The course schedule is organized around four main topics: feedback control, state estimation, optimization-based control, and articulated robot control.
Introduction
Lecture 1 | Course logistics, What control is about
Feedback Control
Lectures 2-4 | LTI systems, feedback control and stability, PID
What control is about
Fundamental control model (LTI SISO systems)
Feedback control and stability
Application: PID controllers
State Estimation
Lectures 5-7 | Observability, Kalman filter, recursive estimation
Kalman filter fundamentals
Beyond Kalman filter: extended and unscented variants
Application: Pedestrian dead reckoning with MEMS IMU
Optimization-Based Control
Lectures 8-10 | LQR and MPC
Linear quadratic regulator (LQR)
Model predictive control (MPC)
Application: Autonomous lane keeping
Articulated Robot Control
Lectures 11-13 | Articulated robot control concepts
Precision tracking with inverse dynamics control
Human-robot collaboration with impedance control
Application: Humanoid walking
Course summary and bridge to learning-based approaches
The course content draws from two textbooks:
Feedback Systems: An Introduction for Scientists and Engineers
by Karl Johan Åström and Richard M. Murray (2010)
Model Predictive Control: Theory, Computation, and Design
by James B. Rawlings, David Q. Mayne, and Moritz M. Diehl (2017)
Additional resources include:
Control Systems Engineering
by Norman S. Nise (2020)
A comprehensive, undergraduate-level introduction to design and analysis of feedback systems that emphasizes accessibility and practical application examples.
Students use either MATLAB or Python for programming problems in the assignments. Students are responsible for ensuring they have access to and proficiency with their chosen environment. Resources include official documentation, CMU library resources, and online learning platforms focusing on scientific computing and numerical methods.
Students' comprehension of control fundamentals and their practical application skills are assessed through three assignments. These assignments combine implementation challenges with reviews of relevant research papers. Example tasks include:
implementing a Kalman filter to estimate the inertial state of a quadcopter, with recent research papers provided to guide the work,
implementing a linear MPC controller for autonomous lane keeping, while using research papers to explore more advanced, nonlinear MPC for the same application.