- •Введение
- •1. Основные задачи теории автоматического управления
- •Формулировка задачи управления
- •Математическая модель объекта управления
- •1.3. Управляющая система и объект автоматического управления
- •1.4. Закон обратной связи
- •1.5. Общая задача теории автоматического управления
- •2. Математические модели сау
- •2.1. Построение модели элемента системы управления
- •2.2. Динамические и статические звенья сау
- •2.3. Составление дифференциальных уравнений систем автоматического управления
- •2.4. Примеры составления дифференциальных уравнений звеньев сау
- •2.5. Типовые динамические звенья линейных сау
- •2.6. Соединение звеньев и преобразование структурных схем сау
- •2.7. Вопросы идентификации моделей объектов управления
- •3. Методы исследования линейных сау
- •3.1. Общая модель линейной непрерывной и дискретной сау
- •3.2. Линейные сау, описываемые обыкновенными дифференциальными уравнениями с постоянными коэффициентами
- •3.3. Дискретные линейные сау
- •4.1. Метод фазовой плоскости
- •4.2. Линеаризация нелинейных дифференциальных уравнений
- •4.3. Автоколебания нелинейных сау
- •5. Устойчивость систем автоматического управления
- •5.1. Основные понятия теории устойчивости (математическая формулировка)
- •5.2. Общие теоремы об устойчивости линейных сау
- •5.3. Устойчивость линейной сау с постоянной матрицей
- •5.4. Связь устойчивости с корнями характеристического уравнения
- •5.5. Критерии устойчивости
- •5.6. Алгебраические критерии устойчивости
- •5.7. Частотные критерии устойчивости
- •5.8. Логарифмический критерий устойчивости
- •5.9. Запас устойчивости по фазе и амплитуде
- •5.10. Устойчивость импульсных сау
- •5.11. Устойчивость нелинейных сау
- •6. Качество систем автоматического управления
- •6.1. Показатели качества переходного процесса
- •6.2. Прямые методы определения показателей качества
- •6.3. Связь переходного процесса с вещественной частотной характеристикой системы
- •6.4. Интегральные оценки качества
- •7. Случайные воздействия в линейных сау
- •7.1. Понятие случайной функции
- •7.2. Основные характеристики случайной функции
- •7.3. Стационарные случайные функции
- •7.4. Спектральное представление стационарной случайной функции
- •7.5. Спектральная плотность стационарной случайной функции
- •7.6. Преобразование стационарной случайной функции стационарной линейной динамической системой
- •7.7. Преобразование случайных сигналов безынерционными нелинейными звеньями
- •7.8. Понятие статистически оптимальной линейной системы
- •7.9. Статистическая проверка гипотез
- •8. Задачи оптимального управления
- •8.1. Экстремумы функций. Принцип Лагранжа
- •8.2. Начала вариационного исчисления
- •8.3. Прямые методы решения задач оптимального управления
- •8.4. Принцип максимума Понтрягина
- •8.5. Оптимальное позиционное управление (динамическое программирование)
- •9. Современные тенденции развития систем управления
- •9.1. Управление при неполной начальной информации
- •9.2. Экстремальные сау
- •9.3. Самонастраивающиеся системы (снс)
- •9.4. Самоорганизующиеся и самообучающиеся сау
- •9.5. Автоматизированные системы управления
- •9.6. Роботы и гибкие производственные системы
- •9.7. Математические методы в управлении роботами и гпс
8.5. Оптимальное позиционное управление (динамическое программирование)
Среди задач оптимального управления различают задачи программного оптимального управления и позиционного оптимального управления. В первом случае (см. подглаву 8.5) управляющее воздействие U формируется в виде функции времени. Во втором случае управляющее воздействие U формируется в виде стратегии управления по принципу обратной связи, как функция от доступных значений фазового вектора состояний объекта управления (задача синтеза, о которой говорилось в главе 1).
Нахождение оптимального управления U0(t, X) сразу в виде функции текущего состояния связано с использованием метода динамического программирования. Этот метод представляет собой обширный раздел математики, посвященный решению многошаговых задач оптимального управления. При этом выбор управления на каждом шаге осуществляется в соответствии с конечной целью управления и состоянием системы, полученным в результате управления, принятого на предыдущем шаге.
В ряде задач автоматического управления многошаговость проистекает из существа процесса. Например, определение оптимальных размеров ступеней в многоступенчатой ракете. Часто многошаговость вводится искусственно, чтобы обеспечить возможность применения данного метода. Термин «динамическое» указывает на существенную роль времени и порядка в выборе управления.
Основная идея метода. Пусть процесс управления некоторой системой X состоит из m шагов. На i-м шаге управление Ui - переводит систему из состояния Xi-1, достигнутого в результате (i-1)-го шага, в новое состояние Xi. Этот процесс перехода осуществляет заданная функция fi(X,U), и новое состояние определяется значениями Xi-1, Ui:
Xi=fi(Xi-1,Ui). (8.5.1)
Таким образом, управления U1,U2,...,Um переводят систему из начального состояния Х0 в конечное состояние Хт, причем требуется, чтобы заданный функционал F(X0,U1,Х1,U2,...,Uт, Хт) достигал экстремального значения F*, то есть, например,
(8.5.2)
Важной особенностью метода динамического программирования является то, что он применим лишь для аддитивной целевой функции. Это означает в данном примере, что
(8.5.3)
В основе этого метода лежит принцип оптимальности, сформулированный Р. Беллманом. Этот принцип утверждает, что отрезок оптимальной траектории есть снова оптимальная траектория. В применении к рассматриваемому примеру этот принцип может быть переформулирован следующим образом: предположим, что осуществляя управление системой X, мы уже выбрали некоторые управления U1,U2, ..., Uk и тем самым траекторию Х0, Х1, ..., Xk и хотим завершить процесс, то есть выбрать Uk+1, Uk+2,…,Um (а значит, и Xk+1, Xk+2,…, Хт). Тогда, если завершающая часть процесса не будет оптимальной в смысле достижения максимума
(8.5.4)
то и весь процесс не будет оптимальным.
Используя этот принцип, получим основное функциональное соотношение метода динамического программирования, называемое уравнением Беллмана. Определим последовательность функций переменной х:
ωm(X)=0,
(k=1,2,…,m)
(8.5.5)
Здесь максимум берется по всем управлениям, допустимым на шаге k. Смысл функций ωk-1(X) ясен: если система на шаге k - 1 оказалась в состоянии X, то ωk-1(X) - максимально возможное значение функции F. Одновременно с построением функции ωk-1(X) находятся условные оптимальные управления Uk(X) на каждом шаге, то есть значения оптимального управления при всевозможных предположениях о состоянии х системы на шаге k-1.
Уравнения Беллмана позволяют рассчитать всю последовательность значений ωk(X), начиная с Хт, Um вплоть до Х0 - произвольного начального состояния. При этом расчете U(X,t) может интерпретироваться как оптимальный закон управления с обратной связью по измерениям текущего (шаг k) состояния объекта.
Из сказанного очевидна следующая особенность метода динамического программирования - с его помощью решается не одна конкретная задача при определенном Х0, а сразу все подобные однотипные задачи при любом начальном состоянии.
Численная реализация метода динамического программирования весьма сложна и применяют его обычно в тех случаях, когда необходимо многократно решать типовые задачи, например такие, как определение оптимального режима полета самолета при меняющихся погодных условиях. Основная идея метода динамического программирования переносится и на непрерывные во времени системы автоматического управления.
Рассмотрим вновь оптимальную задачу
(8.5.6)
на траекториях системы
(8.5.7)
Введем функцию
(8.5.8)
где минимизация производится при условиях
(8.5.9)
Выведем уравнение Беллмана в этом случае, имея в виду, что оптимальное значение критерия
(8.5.10)
Рассмотрим два момента времени τ и τ+Δ, Δ > 0. Согласно определению В(Х,τ) имеем
(8.5.11)
Здесь вновь используется основная идея метода динамического программирования, дающая возможность провести сначала выбор управления, начиная с момента τ+Δ до Т, а затем осуществить минимизацию по значениям управления в пределах отрезка [τ,τ+Δ].
Считая, что функции F(X,U,t) и f(X,U,t) непрерывны по всем аргументам, допустимые траектории X(t) непрерывны по t и U(t) принадлежат к классу кусочно-непрерывных функций, причем отрезок [τ, τ+Δ] не включает точек разрыва, имеем с точностью до членов более высокого порядка малости по Δ:
Δxi (τ)=fi(x(τ), и (τ), τ) Δ (i=1, 2,...,n), (8.5.12)
(8.5.13)
Считая, что функция В(Х,τ) дифференцируема, разложим ее в ряд Тейлора, пренебрегая более высокими членами малости, чем Δ:
(8.5.14)
Подставив (8.4.12), (8.4.13), (8.4.14) в (8.4.11) и заменяя τ на t, получаем искомое уравнение Беллмана в непрерывном случае:
(8.5.15)
Так же как и в дискретном случае, важно понимать, что функция U(X,t), минимизирующая выражение
(8.5.16)
по явно входящему U в пределах допустимой области U при фиксированных X и t, определяет оптимальный закон управления с обратной связью по измерениям текущего состояния системы X = X(t). Сравнивая выражения (8.5.16) с основным условием принципа максимума Понтрягина (8.4.7), нетрудно усмотреть, что обозначив -∂B/∂xi=ψi(t) и определив функцию Гамильтона, как и ранее, приходим к требованию ее максимизации при U(t) U. Отметим в заключение, что материал данной главы сложен, и это надо ясно себе представлять. Строгое его изложение потребовало бы от читателя знаний функционального анализа и топологии, а кроме того, значительного объема учебника. Хотя в подзаголовке учебника обозначено «математические методы», что вроде бы неявно подразумевает обучение некоей вычислительной технике решения задач автоматического управления, следует все же различать основополагающие идеи, заложенные в тот или иной метод и технику его численной реализации. В данной главе учебника основной акцент сделан именно на идеях, в них заложенных, вернее, на развитии идеи Лагранжа, цитируемой в подглаве 8.1. Вычислительная же техника этих методов - это умение составления корректных алгоритмов, реализация которых возможна, как правило, только на самых современных и мощных ЭВМ.
