Элементы динамического программирования.

Оптимизация непрерывных систем

Необходимо отыскать управление, представляющее собой некоторый многошаговый процесс принятия решения, например, управление дискретными системами, изменяющими совё состояние в соответствии с принятым управлением в некоторые дискретные моменты времени. Для решения таких задач оптимизации в таких системах предложен разработанный Р.Беллманом метод, получивший название динамического программирования.

В основы метода положен принцип оптимальности. Приведём его формулировку.

Оптимальное поведение обладает тем свойством, что каковы бы ни были первоначальное состояние и решение в начальный момент, последующие решения должны составлять оптимальное поведение относительно состояния, получающегося в результате первого решения.

При использовании этого принципа оказывается возможным исходную сложную проблему отыскания многошагового управления заменить последовательным решением некоторого количества существенно более простых одношаговых задач оптимизации.

Смысл принципа оптимальности становится более ясным, если понять, что для любой оптимальной траектории любой участок, связывающий любую промежуточную точку этой траектории с конечной, также является оптимальной траекторией.

Управление определяется конечной целью управления и состоянием системы в рассматриваемый момент времени.

Применим принцип оптимальности для оптимизации управления в непрерывных системах.

Рассмотрим задачу о минимизации функционала

(1)

для системы, поведение которой описывается совокупностью дифференциальных уравнений вида

(2)

Х - вектор из области допустимых значений параметров системы, характеризующий состояние системы в данный момент времени;

U - вектор управления из области допустимых управлений ,

В начальный момент времени t = 0, x = xн , время T фиксировано.

Пусть в некоторый момент времени 0 < < T состояние системы характеризуется вектором x(). Начиная с момента времени в течение временного интервала продолжительностью используем некоторое произвольное управление u(t).

Тогда в соответствии с (2) в момент времени + система будет находиться в точке

Будем считать теперь, что начиная с момента времени + и до конца, т.е. до t = T, используется оптимальное управление

u*(t), + t T.

Обозначим через I*() минимальное значение функционала (1) при оптимальном управлении u*() (при t T), т.е.

Тогда значение функционала (1) при использовании управления

может быть найдено из соотношения

Понятно, что ввиду неоптимальности управления

(3)

При этом равенство в (3) может быть получено, только если в качестве будет использовано оптимальное управление, т.е.

(4)

С точностью до бесконечно малых более высокого порядка, чем , можно считать, что

С учётом этого, меняя на t , перепишем (4) в виде

(5)

Допустим теперь, что для I(t) имеем частные производные по всем координатам xi и по времени t. Тогда, разлагая I*(t) в ряд Тейлора, имеем с точностью до бесконечно малых первого порядка

(6)

(7)

Имея в виду (7), подставим (6) в (5). При этом

(8)

Принимая во внимание, что I*(t) и не зависит от u(t), получаем

(9)

Полученное нелинейное дифференциальное уравнение в частных производных называют уравнением Беллмана. С помощью этого уравнения во многих случаях оптимальные управления и траектории могут быть получены аналитически.

Метод динамического программирования оказывается весьма эффективным при решении дискретных оптимизационных задач.

 
< Пред   СОДЕРЖАНИЕ   Скачать   След >