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

Оптимизация управления n-шагового процесса состоит в том, чтобы найти такую последовательность управлений и0, и1 ,..., ип-1, при которой критерий ка­чества Q(x0, u) принимает минимальное значение. Это минимальное значение критерия качества управления n-шагового процесса будет зависеть от началь­ного состояния х0 и его можно обозначать fn(x0). По определению имеем:

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru (5)

Заметим, что первое слагаемое этого выражения Q(x0,u0) зависит только от управления u0, тогда как остальные слагаемые зависят как от u0,так и от управ­лений на других шагах. Так, Q(x1,u1) зависит от u1, но оно зависит и от и0 , так как x1= T(x0, u0). Аналогично обстоит дело и с остальными слагаемыми. Поэтому вы­ражение (5) можно записать в виде

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

Заметим далее, что выражение

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

представляет собой минимальное значение критерия ка­чества управления (п-1)- шагового процесса, имеющего начальное состояние Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru . В соответствии с определением эту величину можем обозначить через fn-1(x1). Таким образом, получаем:

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

Эти рассуждения можно повторить, если рассмотреть (п-1)- шаговый процесс, начинающийся с начального состояния Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru . Минимальное значение критерия качества управления для этого случая

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

Продолжая эти рассуждения, получаем аналогичное выражение для (п-l)-шагового процесса, начинающе­гося с состояния хl.

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

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

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

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

В методе динамического программирования выбор управления на отдельном шаге производится не с точки зрения интересов данного шага, выражающихся в мини­мизации потерь на данном шаге, т. е величины Q(xl, ul), а с точки зрения интересов всего процесса в целом, выражающихся в минимизации суммарных потерь Q(xl, ul) +fn-(l+1)(xl+1) на всех последующих шагах. От­сюда следует основное свойство оптимального процесса, заключающееся в том, что каковы бы ни были началь­ное состояние и начальное управление, последующие управления должны быть оптимальными относительно состояния, являющегося результатом применения пер­вого управления.

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

Величина п-l означает число шагов до конца процесса. Обозначим эту величину через k. При этом величины Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru и Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru будем обозначать просто через х и и. Они будут означать со­стояние объекта и примененное управление за k шагов до конца процесса. Последующее состояние, т. е. то, к которому объект переходит из состояния х при при­менении управления и, обозначим через х'. Это будет xn-(l+1) в прежних обозначениях. При этом уравнение запишется в виде

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru (1)

а рекуррентное соотношение примет вид:

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru (2)

Динамическое программирование является чис­ленным методом решения задачи оптимизации управле­ния.

Определение оптимального управления на произволь­ном k-м шаге, отсчитываемом от момента окончания процесса, находится на основании соотношений (1) и (2), которые для удобства проведения численных расчетов удобно записать в несколько иной форме. Обо­значим через Fk(x, и) величину критерия качества управления k-шагового процесса при оптимальном управ­лении на последних k—1 шагах и произвольном управ­лении на начальном шаге. Тогда соотношение (2) может быть записано в виде

Поиск оптимальной последовательности (цепочки) управлений методом динамического программирования - student2.ru

где х' определяется из (1).

Наши рекомендации