Робототехника
Modern Control Theory
PID хорош, но у него нет внутренней модели системы - он не знает, что произойдёт если дать управление u на 5 секунд вперёд. LQR и MPC знают. Они используют математическую модель системы для оптимального выбора управления. Это как разница между водителем, который смотрит только на спидометр, и водителем, который видит весь маршрут.
- **SpaceX Falcon 9:** MPC для вертикальной посадки ракеты с ограничениями на тягу
- **Tesla Autopilot:** LQR/MPC для удержания полосы и адаптивного круиз-контроля
- **Boston Dynamics Spot:** MPC для балансировки и ходьбы по неровной поверхности
- **Промышленные процессы:** MPC управляет нефтеперерабатывающими заводами с 1980-х
State Space Representation
PID управляет одной переменной, используя только её ошибку. Для сложной системы - скажем, перевёрнутого маятника на тележке - нужно отслеживать несколько переменных одновременно (положение, скорость, угол, угловая скорость) и знать, как они влияют друг на друга. **State space** - математический язык для этого.
Стандартная форма: dx/dt = A*x + B*u, y = C*x + D*u. Здесь x - вектор состояния (все переменные системы), u - управляющее воздействие, y - наблюдаемый выход. Матрицы A, B, C, D полностью описывают линейную динамику системы.
В state space уравнении dx/dt = Ax + Bu, что описывает матрица A?
LQR: Linear Quadratic Regulator
Задача управления: привести систему к желаемому состоянию, минимизируя суммарные затраты. **LQR** формализует это как задачу оптимизации: найти линейную обратную связь u = -Kx, которая минимизирует квадратичный функционал стоимости.
Функционал стоимости J = integral(x^T Q x + u^T R u) dt. Матрица Q штрафует за отклонение состояния (насколько мы хотим быть близко к цели), матрица R штрафует за величину управления (стоимость энергии/усилий). Баланс Q и R определяет агрессивность регулятора.
**Настройка Q и R:** главный инженерный выбор в LQR. Большой Q[2,2] (штраф за угол маятника) -> агрессивная стабилизация. Большой R -> консервативное управление, меньше энергии. Соотношение Q/R важнее абсолютных значений. Начинают с Q=I, R=I и подстраивают.
Что происходит при увеличении матрицы R в функционале LQR?
MPC: Model Predictive Control
LQR оптимален для линейных систем без ограничений. Но реальные роботы имеют ограниченную мощность двигателей, рабочее пространство, ограничения безопасности. **MPC** решает задачу оптимизации на каждом шаге управления, явно учитывая все ограничения.
Идея: в каждый момент времени смотрим вперёд на N шагов, оптимизируем последовательность управлений u_0, u_1, ..., u_{N-1}, применяем только первое u_0, затем повторяем. Это называется **receding horizon** (скользящий горизонт).
| Параметр | PID | LQR | MPC |
|---|---|---|---|
| Ограничения (u_min, u_max) | Нет (ручной clip) | Нет | Явные |
| Нелинейные системы | Частично | Нет | Да (NMPC) |
| Многомерное управление | Сложно | Да | Да |
| Вычислительная стоимость | Низкая O(1) | Низкая O(n) | Высокая O(N*n^2) |
| Настройка | 3 параметра | Q, R матрицы | Q, R + горизонт N |
MPC применяет только первое оптимальное управление u_0, не всю последовательность u_0...u_{N-1}. Почему?
Optimal Control и принцип Понтрягина
LQR и MPC - конкретные методы оптимального управления. Теоретическую основу заложил **принцип максимума Понтрягина** (1956): условия необходимые для оптимальности любого управления, аналог принципа Лагранжа для вариационного исчисления.
Задача: минимизировать J = integral(L(x,u)dt) + phi(x(T)). Вводим **co-state** вектор lambda (сопряжённое состояние). Оптимальное управление минимизирует Гамильтониан H(x, u, lambda) = L(x,u) + lambda^T * f(x,u).
**Связь методов:** PMP -> необходимые условия оптимальности. Bellman DP -> sufficient conditions через уравнение HJB. Для линейных систем с квадратичным функционалом оба метода сходятся к одному уравнению Риккати, решение которого и даёт LQR gain K.
Bang-bang control оптимален для задач минимального времени. Что он означает?
Modern Control Theory
- State space: dx/dt = Ax + Bu - единый язык для многомерных динамических систем
- LQR: оптимальная линейная обратная связь u=-Kx, минимизирует J=integral(x^TQx + u^TRu)dt
- K находится через уравнение Риккати: A^TP + PA - PBR^{-1}B^TP + Q = 0
- MPC: оптимизация на горизонте N шагов с явными ограничениями, receding horizon
- Принцип Понтрягина: необходимые условия оптимальности через Гамильтониан и co-state
- LQR < MPC по гибкости, LQR > MPC по вычислительной стоимости
Связанные темы
Оптимальное управление объединяет классическую теорию управления с оптимизацией и машинным обучением.
- PID-контроллер — Практичный предшественник, который MPC расширяет
- Фильтр Калмана — State estimation - первый шаг перед LQR/MPC (LQG = LQR + Kalman)
- Reinforcement Learning для робототехники — Model-free альтернатива MPC для сложных нелинейных систем
Вопросы для размышления
- Почему MPC вытеснил LQR в промышленных приложениях, несмотря на более высокую вычислительную стоимость?
- LQR предполагает линейную систему. Как его применяют к нелинейным роботам?
- Что общего между MPC в управлении и планированием в RL (MCTS, Dreamer)?