Внутренний СССР - Достаточно общая теория управления
По завершении освоения потенциала развития суперсистема может служить одной из основ для следующего шага эволюции.
После введения понятия взаимная вложенность суперсистем изложение достаточно общей теории управления вряд ли может быть чем-либо иным, кроме как своего рода «описанием устройства и принципов работы оргaна». Для того, чтобы быть органистом, знать устройство данного инструмента необходимо, но нужна ещё техника игры, репертуар, вкус, в основе чего лежит потенциал развития музыканта, чей организм в свою очередь является взаимным вложением суперсистем, построенных на клетках, физических полях, информационных и энергетических потоках. Если же не знать «устройства оргaна» и не играть на нём, то кто-то на “рояле в кустах” будет играть препротивные “пьесы”, от которых некуда будет деться.
Это означает, что необходимо не только воспринимать поток событий жизни своими чувствами и вниманием, но и выработать систему образно-логических представлений о процессах управления как таковых. Мы живём в такое время, когда это проще всего сделать на основе инструмента, получившего название «метод динамического программирования».
14. Метод динамического программирования как алгоритмическое выражение достаточно общей теории управления
В изложении существа метода динамического программирования мы опираемся на книгу “Курс теории автоматического управления” (автор Палю де Ла Барьер: французское издание 1966 г., русское издание — “Машиностроение”, 1973 г.), хотя и не повторяем его изложения. Отдельные положения взяты из курса “Исследование операций” Ю.П.Зайченко (Киев, “Вища школа”, 1979 г.).
Метод динамического программирования работоспособен, если формальная интерпретация реальной задачи позволяет выполнить следующие условия:
1. Рассматриваемая задача может быть представлена как N—шаговый процесс, описываемый соотношением:
X = f(X U, n), где n — номер одного из множества возможных состояний системы, в которое она переходит по завершении n—ного шага; X — вектор состояния системы, принадлежащий упомянутому n—ному множеству; U— управление, выработанное на шаге n (шаговое управление), переводящее систему из возможного её состояния в n—ном множестве в одно из состояний (n + 1)-го множества. Чтобы это представить наглядно, следует обратиться к рис. 4, о котором речь пойдет далее.
2. Структура задачи не должна изменяться при изменении расчетного количества шагов N.
3. Размерность пространства параметров, которыми описывается состояние системы, не должна изменяться в зависимости от количества шагов N.
4. Выбор управления на любом из шагов не должен отрицать выбора управления на предыдущих шагах. Иными словами, оптимальный выбор управления в любом из возможных состояний должен определяться параметрами рассматриваемого состояния, а не параметрами процесса, в ходе которого система пришла в рассматриваемое состояние.
Чисто формально, если одному состоянию соответствуют разные предыстории его возникновения, влияющие на последующий выбор оптимального управления, то метод позволяет включить описания предысторий в вектор состояния, что ведёт к увеличению размерности вектора состояния системы. После этой операции то, что до неё описывалось как одно состояние, становится множеством состояний, отличающихся одно от других компонентами вектора состояния, описывающими предысторию процесса.
5. Критерий оптимального выбора последовательности шаговых управлений Uи соответствующей траектории в пространстве формальных параметров имеет вид:
V = V(X, U) + V(X, U) + …+ V(X, U) + V(X).
Критерий V принято называть полным выигрышем, а входящие в него слагаемые — шаговыми выигрышами. В задаче требуется найти последовательность шаговых управленийU и траекторию, которым соответствует максимальный из возможных полных выигрышей. По своему существу полный “выигрыш” V — мера качества управления процессом в целом. Шаговые выигрыши, хотя и входят в меру качества управления процессом в целом, но в общем случае не являются мерами качества управления на соответствующих им шагах, поскольку метод предназначен для оптимизации управления процессом в целом, а эффектные шаговые управления с большим шаговым выигрышем, но лежащие вне оптимальной траектории, интереса не представляют. Структура метода не запрещает при необходимости на каждом шаге употреблять критерий определения шагового выигрыша V, отличный от критериев, принятых на других шагах.
С индексом n — указателем-определителем множеств возможных векторов состояния — в реальных задачах может быть связан некий изменяющийся параметр, например: время, пройденный путь, уровень мощности, мера расходования некоего ресурса и т.п. То есть метод применим не только для оптимизации управления процессами, длящимися во времени, но и к задачам оптимизации многовариантного одномоментного или нечувствительного ко времени решения, если такого рода “безвременные”, “непроцессные” задачи допускают их многошаговую интерпретацию.
Теперь обратимся к рис. 4 — рис. 6, повторяющим взаимно связанные рис. 40, 41, 42 из курса теории автоматического управления П. де Ла Барьера.
???? Рис. 4. К существу метода динамического программирования. Матрица возможностей.
На рис. 4 показаны начальное состояние системы — «0» и множества её возможных последующих состояний — «1», «2», «3», а также возможные переходы из каждого возможного состояния в другие возможные состояния. Всё это вместе похоже на карту настольной детской игры, по которой перемещаются фишки: каждому переходу-шагу соответствует свой шаговый выигрыш, а в завершающем процесс третьем множестве — каждому из состояний системы придана его оценка, помещенная в прямоугольнике. Принципиальное отличие от игры в том, что гадание о выборе пути, употребляемое в детской игре, на основе бросания костей или вращения волчка и т.п., в реальном управлении недопустимо, поскольку это — передача целесообразного управления тем силам, которые способны управлять выпадением костей, вращением волчка и т.п., т.е. тем, для кого избранный в игре «генератор случайностей» — достаточно (по отношению к их целям) управляемое устройство.
Если выбирать оптимальное управление на первом шаге, то необходимо предвидеть все его последствия на последующих шагах. Поэтому описание алгоритма метода динамического программирования часто начинают с описания выбора управления на последнем шаге, ведущем в одно из завершающих процесс состояний. При этом ссылаются на «педагогическую практику», которая свидетельствует, что аргументация при описании алгоритма от завершающего состояния к начальному состоянию легче воспринимается, поскольку опирается на как бы уже сложившиеся к началу рассматриваемого шага условия, в то время как возможные завершения процесса также определены.
???? Рис. 5. К существу метода динамического программирования. Анализ переходов.
В соответствии с этим на рис. 5 анализируются возможные переходы в завершающее множество состояний «3» из каждого возможного состояния в ему предшествующем множестве состояний «2», будто бы весь предшествующий путь уже пройден и осталось последним выбором оптимального шагового управления завершить весь процесс. При этом для каждого из состояний во множестве «2» определяются всеполные выигрыши как сумма = «оценка перехода» + «оценка завершающего состояния». Во множестве «2» из полученных для каждого из состояний, в нём возможных полных выигрышей, определяется и запоминается максимальный полный выигрыш и соответствующий ему переход (фрагмент траектории). Максимальный полный выигрыш для каждого из состояний во множестве «2» взят в прямоугольную рамку, а соответствующий ему переход отмечен стрелкой. Таких оптимальных переходов из одного состояния в другие, которым соответствует одно и то же значение полного выигрыша, в принципе может оказаться и несколько. В этом случае все они в методе неразличимы и эквивалентны один другому в смысле построенного критерия оптимальности выбора траектории в пространстве параметров, которыми описывается система.
После этого множество «2», предшествовавшее завершающему процесс множеству «3», можно рассматривать в качестве завершающего, поскольку известны оценки каждого из его возможных состояний (максимальные полные выигрыши) и дальнейшая оптимизация последовательности шаговых управлений и выбор оптимальной траектории могут быть проведены только на ещё не рассмотренных множествах, предшествующих множеству «2» в оптимизируемом процессе (т.е. на множествах «0» и «1»).