rpd000003061 (1012241), страница 14
Текст из файла (страница 14)
с критерием оптимальности
Предположим, что из каких-либо соображений нам удалось отыскать некоторое допустимое управление . Этому управлению соответствует траектория
и значение критерия оптимальности
. Попытаемся улучшить управление
и соответствующую траекторию
.
Для этого линеаризуем зависимости (9.13), (9.14) в окрестности ,
.
Здесь:
Поставим задачу определения такой вариации , которая обеспечивает минимум вариации критерия
. Следуя принципу максимума искомая вариация может быть определена на основе максимума гамильтониана, что в данном случае приводит к условию
Сопряженный вектор, как и в ранее рассмотренном случае линейной системы определяется в результате интегрирования уравнения «справа - налево»
где
В результате решения задачи для линеаризованной системы определим вариацию управления , которая обеспечивает минимум вариации критерия
. Если при этом
, то вариация
улучшает управление, поскольку приводит к уменьшению значений критерия. Однако, из условия
очевидным образом не следует, что
, поскольку в процессе линеаризации критерия учитывались только линейные члены разложения. Поэтому, вариация
действительно является решением исходной задачи, если выполняются одновреме5нно два условия:
Допустим, что условие не выполняется. В этом случае процесс уточнения управления должен быть продолжен.
Для этого выразим вариацию критерия через сопряженный вектор и вариацию управления
. Умножим (9.15) на сопряженный вектор
, а уравнение (9.19) на
. Складывая эти уравнения, получаем
или
Откуда с учетом краевых условий , уравнения для вариации вектора состояния (9.15), и вариации критерия (9.17) находим
Если вариацию в последнем выражении выбирать в виде:
где , то мы автоматически обеспечиваем выполнение условия
. При этом выполнение второго условия
достигается соответствующим подбором параметра
.
ТЕМА 9.doc
Тема 9. Численные методы программирования оптимального управления.
Принцип максимума, теоретические основы которого рассмотрены ранее, к сожалению, не предлагает явного алгоритма получения оптимального управления. Более того, непосредственное использование условий принципа максимума для решения задач программирования оптимального управления может оказаться весьма затруднительным. Однако, практическая ценность принципа максимума в том, что он позволяет свести решение динамической задачи управления к существенно более простой статической (одношаговой) задаче математического программирования.
9.1. Сведение задачи программирования оптимального управления к задаче математического программирования.
Как и ранее рассматривается автономная динамическая система общего вида:
где
- фазовый вектор размера
,
- вектор управления размера
, на который наложены ограничения
;
- вектор-функция размера
, время функционирования системы ограничено
.
Учитывая, что задачи Лагранжа и Больца путем соответствующей замены переменных всегда могут быть сведены к задаче Майера (задаче управления конечным состоянием). Поэтому в качестве критерия оптимальности будем рассматривать функцию конечного состояния
где - некоторая скалярная функция конечного состояния динамической системы.
Применительно к рассматриваемой задаче принцип максимума приводит к следующему условию оптимальности управления:
Реализация этого условия позволяет определить структуру управления, то есть установить для каждого момента времени на оптимальной траектории связь вектора управления с вектором состояния динамической системы и сопряженным вектором, то есть связь типа
Если такая связь установлена, для построения оптимальной траектории динамической системы используется каноническая система дифференциальных уравнений:
Практическая трудность решения канонической системы дифференциальных уравнений состоит в том, что краевые условия для вектора состояния динамической системы (вектор ) заданы на левом конце траектории, а для сопряженного вектора на правом конце. Если бы мы имели значения сопряженного вектора
на левом конце траектории (в начальный момент времени) то решение канонической системы не вызвало бы никаких затруднений. Достаточно было бы проинтегрировать каноническую систему дифференциальных уравнений, определяя на каждом шаге оптимальное управление из условия максимума гамильтониана. Проблема, следовательно, состоит в том, чтобы подобрать сопряженный вектор
таким образом, чтобы на правом конце траектории удовлетворялось краевое условие для сопряженного вектора
.
Введем в рассмотрение вектор невязок:
который зависит от . Поэтому краевая задача для канонической системы дифференциальных уравнений сводится к отысканию решения уравнения
для решения которого можно использовать любой численный метод решения систем нелинейных алгебраических уравнений, например метод Ньютона. Проблема состоит в том, что зависимость задана не явно, а через каноническую систему дифференциальных уравнений. Это обстоятельство значительно усложняет процесс получения решения. Например, для реализации метода Ньютона необходимо знать матрицу частных производных
, для вычисления элементов которой необходимо многократно интегрировать каноническую систему, варьируя значения
. Поэтому, данный метод целесообразно применять, когда известно достаточно хорошее приближение для
.
Задачу отыскания решения уравнения
можно существенно упростить, если использовать целевую функцию вида:
где - некоторая положительно определенная матрица. Из приведенного выражения очевидно следует, что минимум функции
равняется 0 при
. Поэтому, минимизируя
по
, мы тем самым решаем краевую задачу.
9.2. Методы решения задач программирования оптимального управления со свободным концом.
Для решения задач со свободным концом в настоящее время разработаны эффективные приближенные методы. Они опираются на следующее свойство задач подобного класса. Для получения точного решения задачи оптимизации управления динамической системой, если она линейна по фазовому вектору, а на правый конец траектории не наложено ограничений , достаточно решить две задачи Коши.
Рассмотрим эти приближенные методы более подробно.
9.2.1. Случай линейной системы.
Необходимо найти управление системой
из условия минимума критерия
где - некоторый заданный вектор. Составим гамильтониан
и запишем уравнение для сопряженного вектора
Поскольку
сопряженный вектор в данном случае может быть определен независимо от вектора состояния и вектора управления
. Эта означает, что краевая задача оптимального управления распадается на две задачи Коши, которые можно решать независимо. Сначала интегрируется система (9.11) справа-налево от конечного момента времени
до начального момента времени
. В результате находится зависимость
для сопряженного вектора. Затем решается исходная система (9.8) с определением на каждом шаге оптимального управления из условия максимума гамильтониана.
9.2.2. Случай системы общего вида.
Рассмотрим задачу оптимального управления динамической системой
с критерием оптимальности
Предположим, что из каких-либо соображений нам удалось отыскать некоторое допустимое управление . Этому управлению соответствует траектория
и значение критерия оптимальности
. Попытаемся улучшить управление
и соответствующую траекторию
.
Для этого линеаризуем зависимости (9.13), (9.14) в окрестности ,
.
Здесь:
Поставим задачу определения такой вариации , которая обеспечивает минимум вариации критерия
. Следуя принципу максимума искомая вариация может быть определена на основе максимума гамильтониана, что в данном случае приводит к условию
Сопряженный вектор, как и в ранее рассмотренном случае линейной системы определяется в результате интегрирования уравнения «справа - налево»
где
В результате решения задачи для линеаризованной системы определим вариацию управления , которая обеспечивает минимум вариации критерия
. Если при этом
, то вариация
улучшает управление, поскольку приводит к уменьшению значений критерия. Однако, из условия
очевидным образом не следует, что
, поскольку в процессе линеаризации критерия учитывались только линейные члены разложения. Поэтому, вариация
действительно является решением исходной задачи, если выполняются одновреме5нно два условия: