Метод динамического программирования — один из формально-алгоритмических методов оптимизации управления и решения иного рода задач, интерпретируемых в качестве задач управления. В изложении существа метода динамического программирования мы опираемся на книгу «Курс теории автоматического управления» (автор Палю де Ла Барьер: французское издание 1966 г., русское издание — «Машиностроение», 1973 г.), хотя и не повторяем его изложения. Отдельные положения взяты из курса «Исследование операций» Ю.П. Зайченко (Киев, «Вища школа», 1979 г.).
Метод динамического программирования работоспособен, если формальная интерпретация реальной задачи позволяет выполнить следующие условия:
1. Рассматриваемая задача может быть представлена как N -шаговый процесс, описываемый соотношением:
Xn + 1 = f(Xn, Un, n) , где n — номер одного из множества возможных состояний системы, в которое она переходит по завершении n -ного шага; Xn — вектор состояния системы, принадлежащий упомянутому n -ному множеству; Un - управление, выработанное на шаге n (шаговое управление), переводящее систему из возможного её состояния в n -ном множестве в одно из состояний (n + 1 ) — го множества. Чтобы это представить наглядно, следует обратиться к рис. 1, о котором речь пойдёт далее.
2. Структура задачи не должна изменяться при изменении расчётного количества шагов N.
3. Размерность пространства параметров, которыми описывается состояние системы, не должна изменяться в зависимости от количества шагов N.
4. Выбор управления на любом из шагов не должен отрицать выбора управления на предыдущих шагах. Иными словами, оптимальный выбор управления в любом из возможных состояний должен определяться параметрами рассматриваемого состояния, а не параметрами процесса, в ходе которого система пришла в рассматриваемое состояние.
Чисто формально, если одному состоянию соответствуют разные предыстории его возникновения, влияющие на последующий выбор оптимального управления, то метод позволяет включить описания предысторий в вектор состояния, что ведёт к увеличению размерности вектора состояния системы. После этой операции то, что до неё описывалось как одно состояние, становится множеством состояний, отличающихся одно от других компонентами вектора состояния, описывающими предысторию процесса.
5. Критерий оптимального выбора последовательности шаговых управлений Un и соответствующей траектории в пространстве формальных параметров имеет вид:
V = V0(X0, U0) + V1(X1, U1) + …+ VN — 1(XN- 1, UN — 1) + VN(XN).
Критерий V принято называть полным выигрышем, а входящие в него слагаемые — шаговыми выигрышами . В задаче требуется найти последовательность шаговых управленийUn и траекторию, которым соответствует максимальный из возможных полных выигрышей . По своему существу полный выигрыш V — мера качества управления процессом в целом . Шаговые выигрыши, хотя и входят в меру качества управления процессом в целом, но в общем случае не являются мерами качества управления на соответствующих им шагах, поскольку метод предназначен для оптимизации процесса управления в целом, а эффектные шаговые управления с большим шаговым выигрышем, но лежащие вне оптимальной траектории, интереса не представляют. Структура метода не запрещает при необходимости на каждом шаге употреблять критерий определения шагового выигрыша Vn, отличный от критериев, принятых на других шагах. Кроме того, критерий оптимальности может быть построен и как произведение шаговых выигрышей, которые однако в этом случае не должны принимать отрицательных значений.
С индексом n — указателем-определителем множеств возможных векторов состояния — в реальных задачах может быть связан некий изменяющийся параметр, например: время, пройденный путь, уровень мощности, мера расходования некоего ресурса и т. п. То есть метод применим не только для оптимизации управления процессами, длящимися во времени, но и к задачам оптимизации многовариантного одномоментного или нечувствительного ко времени решения, если такого рода «безвременные», «непроцессные» задачи допускают их многошаговую интерпретацию.
Перейти на страницу: 1 2 3 4 5 6
|