Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Лекции. Оптимизация систем управления. Оптимальное управление и оптимальные мехатронные системы - файл ЛЕКЦИЯ 15.doc


Загрузка...
Лекции. Оптимизация систем управления. Оптимальное управление и оптимальные мехатронные системы
скачать (1529.3 kb.)

Доступные файлы (22):

desktop.ini
ЛЕКЦИЯ 10.doc410kb.15.06.2000 16:50скачать
ЛЕКЦИЯ 11.doc186kb.15.06.2000 16:51скачать
ЛЕКЦИЯ 12.doc241kb.15.06.2000 16:53скачать
ЛЕКЦИЯ 13.doc256kb.15.06.2000 16:54скачать
ЛЕКЦИЯ 14.doc2611kb.15.06.2000 16:56скачать
ЛЕКЦИЯ 15.doc239kb.15.06.2000 16:56скачать
ЛЕКЦИЯ 16.doc250kb.15.06.2000 16:58скачать
ЛЕКЦИЯ 17.doc218kb.15.06.2000 16:59скачать
ЛЕКЦИЯ 18.doc333kb.15.06.2000 17:00скачать
ЛЕКЦИЯ 19.doc255kb.15.06.2000 17:00скачать
ЛЕКЦИЯ 1.doc44kb.29.06.2000 15:08скачать
ЛЕКЦИЯ 20.doc277kb.15.06.2000 17:01скачать
ЛЕКЦИЯ 21.doc133kb.29.06.2000 15:02скачать
Лекция 2.doc343kb.15.06.2000 16:38скачать
ЛЕКЦИЯ 3.doc2930kb.15.06.2000 16:40скачать
ЛЕКЦИЯ 4.doc5790kb.15.06.2000 16:42скачать
ЛЕКЦИЯ 5.doc244kb.15.06.2000 16:43скачать
ЛЕКЦИЯ 6.doc4878kb.15.06.2000 16:44скачать
ЛЕКЦИЯ 7.doc204kb.15.06.2000 16:45скачать
ЛЕКЦИЯ 8.doc245kb.15.06.2000 16:46скачать
ЛЕКЦИЯ 9.doc474kb.15.06.2000 16:49скачать

ЛЕКЦИЯ 15.doc

Реклама MarketGid:
Загрузка...






ЛЕКЦИЯ 15
План лекции

  1. Общая характеристика динамического программирования как метода оптимизации.

  2. Дискретный многошаговый процесс принятия решения.

  3. Стратегия. Оптимальная стратегия.

  4. Принцип оптимальности Беллмана.

  5. Основное функциональное уравнение Беллмана.


4. ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ
Динамическое программирование, наряду с принципом максимума, является основным математическим методом, с помощью которого определяется оптимальное управление. В отличие от принципа максимума, который формулируется таким образом, что оказывается ориентированным, прежде всего, на определение оптимального управления в виде оптимальной программы, динамическое программирование позволяет определять оптимальное управление только в форме синтезирующей функции.

Динамическое программирование хорошо обосновано для дискретных процессов. Обоснованное применение динамического программирования для непрерывных процессов не всегда возможно. Это связано с тем, что при выводе функционального уравнения Беллмана приходится делать предположение, непосредственная проверка которого по уравнениям движения и функционалу невозможна. И только после решения уравнения Беллмана можно проверить, выполняется ли сделанное предположение или нет. Далее, функциональное уравнение Беллмана для непрерывных процессов представляет собой дифференциальное уравнение в частных производных. Это уравнение обычно имеет весьма сложный вид и численное его решение часто весьма затруднительно.

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

В данном разделе излагается основное содержание динамического программирования как метода оптимизации. Рассматриваются как дискретные многошаговые процессы принятия решений, так и непрерывные процессы. Приводится ряд примеров по решению задач оптимизации методом динамического программирования, в том числе его применение к задаче об аналитическом конструировании регуляторов.

4.1. Дискретный многошаговый процесс

принятия решений.

Пусть состояние системы задается вектором . Обозначим начальное состояние системы, - состояние системы на единицу времени позже и т.д. Последовательность , где

(4.1)

задает изменение состояния системы в дискретные моменты времени.

В равенстве (4.1) - n-мерный вектор, - m-мерный вектор. На изменения состояния системы можно влиять, выбирая на каждом шаге вектор u из некоторого заданного множества U. Вектор u называется вектором решения, вектором управления или просто решением. В силу особенностей динамического программирования начальное состояние системы удобно обозначать вектором p.

Последовательность

(4.2)

где



называют многошаговым процессом принятия решений. Если N конечное число, то такой процесс называют конечношаговым, если число элементов в последовательности (4.2) не ограничено, то - бесконечношаговым.

Будем качество многошагового процесса оценивать функцией

(4.3)

Для дискретного многошагового процесса функция (4.3) является функционалом, поэтому именно так она и называется в дальнейшем. За оптимальное будем принимать максимальное значение функционала (4.3).

Равенство (4.1) представляет собой систему разностных уравнений. Строго говоря, введенное здесь понятие многошагового процесса сводится именно к системе разностных уравнений. Однако в динамическом программировании рассматриваются многошаговые процессы, которые невозможно задавать системой разностных уравнений. Пример такого многошагового процесса будет рассмотрен ниже.

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

Введем важное понятие стратегии. Будем на каждом шаге вектор управления задавать в виде функции вектора состояния :

(4.4)

Функция (4.4) задает правило, по которому на каждом шаге выбирается вектор решения и называется функцией стратегии или просто стратегией. Стратегия, которая максимизирует функционал (4.3), называется оптимальной. Возможность задания оптимального управления в виде оптимальной стратегии непосредственно следует из отмеченного выше свойства многошаговых процессов.

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

4.2. Принцип оптимальности. Основное функциональное

уравнение Беллмана

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

Поясним принцип оптимальности. Пусть - оптимальная последовательность решений для ^ N-шагового процесса, который начинается из состояния p. Тогда очевидно является оптимальной последовательностью решений для N-1 шагового процесса, который начинается из состояния .

Рассмотрим многошаговый процесс принятия решений (4.2). Будем качество этого процесса оценивать функционалом

(4.5)

здесь h - скалярная функция векторного аргумента. Функционал (4.5) для дискретных многошаговых процессов играет ту же роль, что и функционал вида



для непрерывных процессов.

Максимальное значение функционала (4.5) однозначно определяется начальным значением вектора состояния p и числом шагов N. Обозначим максимальное значение функционала . Функцию будем считать определенной для любого значения вектора состояния p и любого числа шагов N.

Воспользуемся принципом оптимальности Беллмана. Пусть на первом шаге выбрано некоторое решение , а в последующем в соответствии с принципом оптимальности принимаются оптимальные решения. Тогда функционал

(4.6)

Для того, чтобы оптимизировать N-шаговый процесс, необходимо, очевидно, вектор выбрать таким образом, чтобы он максимизировал правую часть равенства (4.6).

В результате получим соотношение

(4.7)

К равенству (4.7) следует добавить уравнение

(4.8)

Функция задает максимальное значение функционала (4.5), когда он содержит только одно слагаемое.

Равенство (4.7) связывает между собой максимальное значение функционала для N-шагового процесса с максимальным значением функционала для (N-1)-шагового процесса и называется основным функциональным уравнением Беллмана.

Равенство (4.7) задает рекуррентное соотношение, которое решается последовательно. Из уравнения (4.8) определяется функция и подставляется в правую часть равенства (4.7), положив N=1. Максимизировав правую часть равенства (4.7), получим функцию . Затем по функции определяется функция и т.д. При этом наряду с последовательностью функций , которые задают максимальное значение функционала, получим последовательность функций , задающих оптимальную стратегию. Последовательность состоит из функций, которые максимизируют правую часть уравнения (4.7) (при N=0 правую часть уравнения (4.8)).

Запишем уравнения (4.7) и (4.8), используя скалярные функции и скалярные переменные:



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

Рассмотрим еще несколько функционалов.

Пусть качество многошагового процесса принятия решений (4.2) оценивается функционалом



Принцип оптимальности Беллмана в этом случае приводит к функциональному уравнению



Для вариационного исчисления весьма сложными являются функционалы вида

(4.9)

Обозначим максимальное значение функционала (4.9). Применяя принцип оптимальности Беллмана, получим функциональное уравнение



Если рассматривается бесконечношаговый процесс, то функционал (4.5) принимает вид

(4.10)

Будем предполагать, что ряд (4.10) сходится при любых значениях векторов . Максимальное значение функционала (4.10) в этом случае однозначно определяется начальным значением вектора p. Принцип оптимальности Беллмана приводит к функциональному уравнению




Скачать файл (1529.3 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru