Сайт о телевидении

Сайт о телевидении

» » Динамическое программирование, основные принципы. Величко М.В. (2012) - Метод динамического программирования

Динамическое программирование, основные принципы. Величко М.В. (2012) - Метод динамического программирования

В течение 50-х годов XX века американский математик Р. Беллман и ряд его сотрудников развили новый общий метод решения вариационных задач, названный или динамическим программированием. Этот метод пригоден для оптимизации любых сложных систем, описываемых не только дифференциальными уравнениями с ограничениями на переменной, или без них, но и другим математическим аппаратом, включая различные статические системы, СМО и экономические системы.

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

В МДП принят иной путь нахождения оптимальной траекторий, который заключается в том, что оптимальная траектория и соответствующая ей уравнение ищутся на отдельных участках или ступенях. Иными словами, проще разбиваются на несколько ступеней, на каждой стоится множество траекторий и соответствующих им управлений. Теперь казалось бы достаточно перебрать все траектории, и выбрать оптимальную, но это нерациональный титанический труд. Создатели МДП пошли другим путем – на каждой стадии они выбирают оптимальную и отбрасывают неоптимальные, бесперспективные участки траекторий (на отдельной стадии для участка это сделать много легче, чем для траектории в целом). При этом оказывается, что отбрасывается не только не оптимальный кусочек траектории на этой стадии, но и вся траектория в целом, которые в своем составе имеют неперспективный кусочек на рассматриваемой стадии. Выбор оптимальной траектории при этом ставится намного легче и короче.

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

Пример .

Пусть между пунктами и следует проложить железную дорогу или шоссейную минимальной стоимости. Рельеф местности очень сложный и предварительные изыскания показали, что если дорогу проложить по прямой , её стоимость будет очень высокой. Геодезисты и экономисты рассмотрели отдельные сравнительно простые для строительства участки между и и определили стоимость строительства этих участков. Стоимость строительства дороги будет суммой стоимости строительства этих участках. Данную задачу можно решить перебором всех возможных траекторий между и и выбрать самую дешевую. Однако этот путь практически необозрим. По этому найдем по пути МДП. Разобьем весь район строительства на стадии, из которых до начальной или конечной точек можно попасть за одинаковое количество шагов. В МДП решение начинается с конца и хотя в нашем случае начало и конец неразличимы, по традиции МДП решение начинается с конца . Рассмотрим переход стадии к точке . Причем нас совершено не интересует предыстория движения, т.е. каким образом мы попали на стадию , но уже если попали в точку или , то попасть в точку мы можем за один шаг с затратами 8 из точки или 9 из точки . Эти затраты и ставим в соответствующие кружочки. Других траекторий из стадии в точку нет.



Сдвинемся еще на шаг назад на стадию и проанализируем траектории, по которым а точку можно попасть за два шага из точки до стадии можно попасть единственным образом , а в точку за два шага можно попасть по единственной траектории и стоимость это го участка 8 денежных единиц. А из точки до стадии можно попасть единственным образом и стоимость этого участка 25 д. ед. А из точки до стадии можно попасть двумя путями (стоимость 10 д.ед.) и (стоимость 11 д.ед.). И здесь на стадии (а не на всей траектории) очень легко выбрать оптимальный путь () и отвергнуть бесперспективный (). При этом отвергается не только бесперспективный путь , но и все траектории, исходящие из точки и включающие участок к . В кружочек поставим наименьшую стоимость пути д.ед.

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

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

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

Обратимся теперь к шестой типовой задаче управления, т.е. к динамической задаче в которой объект управления характеризуется уравнением .

Причем -вектор координат состояния

- вектор управления

Пусть и требуется минимизировать интеграл

В основе МДП лежит принцип оптимальности. Этот принцип сформулирован Р. Беллманом для широкого круга систем, будущее поведение которых полностью определяется их состоянием в настоящем. Поэтому оно не зависит от характера их «предыстории», т.е. поведение системы в прошлом, коль скоро система находится в данный момент в данном состоянии. Для иллюстрации рассмотрим оптимальную траекторию в мерном фазовом пространстве с начальным и конечным значением вектора , равным при и при .

Пусть начальное условие заданы, значение , вообще говоря, не известно.

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

Второму участку соответствует часть интеграла (1), равная

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

Это означает, что в том случае, когда начальное состояние системы есть , а начальный момент времени , то не зависимо от того, каким образом пришла система к этому состоянию. Ее оптимальным последующим движением будет траектория 2. Действительно допустим противное – тогда критерий (1), рассматриваемый для интервала времени от до , будет наименьшим не для траектории 2, а для какой-либо иной траектории , исходящей из точки и показанной пунктиром на рис.2. Но в этом случае можно было бы построить «лучшую» траекторию, чем траектория 1-2, и для первоначальной задачи, нужно лишь выбрать управление таким, чтобы описываемая траектория 1, а затем . Между тем мы исходим из того, что траектория 1-2 оптимальна. Противоречие доказывает невозможность существования траектории , обеспечивающее меньшее значение, чем траектория 2. И так траектория 2 оптимальна.

Сформулированный выше принцип оптимальности является весьма общим необходимым условием оптимального процесса, справедливым как для непрерывных, так и для дискретных систем.

Принцип оптимальности выглядит почти тривиальным и, на первый взгляд бедным по содержанию утверждением. Однако из него можно, как показывал Беллман, методически рассуждая вывести необходимое условие для оптимальной траектории, имеющее отнюдь не тривиальный характер. В сущности, принцип оптимальности не так уж тривиален, как может в начале показаться. Это видно хотя бы из того, что утверждение, кажущееся его обобщением: «Любой участок оптимальной траектории является оптимальной траекторией» - вообще говоря, не справедливо. Так, например, первый участок траектории на рис.2 может сам по себе не быть оптимальной траекторией, т.е. не давать минимум интегралу , если заданы только лишь начальные условия .

Поясним это утверждение элементарной иллюстрацией. Как распределяет свой силы хороший бегун при беге на длинную дистанцию? Действует ли он по принципу: Беги на каждом отрезке на столько быстро, на сколько сможешь? Конечно нет, ведь, бегун может «выдохнуться» за долго до подхода к цели. Разумно распределяя свои ресурсы в соответствии с конечной целью, бегун в начале экономит свои силы, чтобы не «выдохнуться» в конце дистанции. Аналогичным образом любое управлением не должно быть «близоруким», не должно руководствоваться лишь достижением наилучшего моментального, локального эффекта. Оно должно быть «дальновидным», оно должно быть подчинено конечной цели, т.е. минимизации функционала (1) на всем интервале от до . Только в том случае, когда задана конечная точка первого участка при , первый участок также сам по себе является оптимальной траекторией.

Можно дать и другую формулировку принципа оптимальности:

Эквивалентность этой и предыдущей формулировок очевидно, если понимать под «предысторией» системы ту траекторию 1, по которой изображающая точка пришла в положение (рис.2). Под состоянием системы в рассматриваемый момент времени понимается в данном случае именно то состояние, соответствующее точке при .

Поясним метод рассуждения Беллмана на простом принципе управляемого объекта с управлением

.

Где – единственная координата системы:

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

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

где для удобства за примем время равное нулю, т.е. ; значение будем для простоты считать фиксированным.

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

Во вторых, методику рассуждений проще пояснить на примере дискретно – непрерывной системы. Вообще говоря, основная сфера применения метода динамического программирования лежит в области дискретно-непрерывных либо чисто дискретных систем, либо систем, приближению к ним приводимых.

Разобьем интервал на равных участков малой длины и будем рассматривать лишь дискретные значения и в моменты времени . Тогда дифференциальное уравнение (27) объекта можно приближенно заменить уравнением в конечных разностях

Начальное условие остается прежним

Интервал (28) приближенно заменяется суммой

Задача теперь состоит в определении последовательности дискретных значений управляющего воздействия , т.е. величины , минимизирующих сумму (32) при условиях (4), (30) и (31), наложенных на систему таким образом, требуется найти минимум сложной функции многих переменных. Однако МДП дает возможность свести эту операцию к последовательности минимизаций значительно более простых функций одного переменного.

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

Рассмотрим последний участок траектории от до . Величина влияет лишь на те члены суммы (32), которые относятся к этому участку.

Обозначим сумму этих членов через .

из (30) получаем

Следовательно, так же зависит от . Найдем допустимое значение , удовлетворяющее (4) и минимизирующее величину . Обозначим найденное минимальное значение через . Эта величина очевидно зависит от состояния системы при т.е. от значения , входящее в (33) и (34). И так

Обратим внимание на то, что для определения нужно проводить минимизацию только по одному переменному простого выражения (33)(вместо минимизации по многим переменным ) сложного выражения (32), выполнив этот процесс, получим в виде функций от ; эту функцию следует запомнить, например, в каком либо запоминающем устройстве при вычислении на ЭВМ) при переходе к последующим стадиям решения.

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

1.2 Метод динамического программирования и его основные этапы

В основе метода динамического программирования лежит принцип оптимальности, впервые сформулированный в 1953 г. американским математиком Р. Э. Беллманом: каково бы ни было состояние системы (S) в результате какого-либо числа шагов, на ближайшем шаге нужно выбирать управление так, чтобы оно в совокупности с оптимальным управлением на всех последующих шагах приводило к оптимальному выигрышу на всех оставшихся шагах, включая выигрыш на данном шаге. При решении задачи на каждом шаге выбирается управление, которое должно привести к оптимальному выигрышу. Если считать все шаги независимыми, тогда оптимальным управлением будет то управление, которое обеспечит максимальный выигрыш именно на данном шаге.

Метод динамического программирования включает три основных этапа:

Предварительный этап.

Этап условной оптимизации.

Этап безусловной оптимизации.

Предварительный этап проводится с целью уменьшения вычислительной работы на последующем этапе решения и, по существу, заключается в нахождении всех допустимых значение управлений и фазовых переменных. Иными словами, на данном этапе отбрасываются все заведомо неподходящие, нереализуемые значения фазовых и управляющих переменных. Проводится предварительный этап в естественном порядке от первого шага к последнему: i = 1, 2, … , N, а опираются соответствующие расчеты на уровне процесса

Этап условной оптимизации. На данном этапе решения задачи, называемом условной оптимизацией, определяются функция Беллмана и оптимальные управления для всех возможных состояний на каждом шаге, начиная с последнего в соответствии с алгоритмом обратной прогонки. На последнем, n-м шаге, оптимальное управление - определяется функцией Беллмана (1.1):

Этот максимум (или минимум) определяется по всем возможным для k и S значениям переменной управления X.

Безусловная оптимизация. После того, как функция Беллмана и соответствующие оптимальные управления найдены для всех шагов с n-го по первый, осуществляется третий этап решения задачи, называемый безусловной оптимизацией. Пользуясь тем, что на первом шаге (k = 1) состояние системы известно - это ее начальное состояние, можно найти оптимальный результат за все n шагов и оптимальное управление на первом шаге которое этот результат доставляет. После применения этого управления система перейдет в другое состояние, зная которое, можно, пользуясь результатами условной оптимизации, найти оптимальное управление на втором шаге, и так далее до последнего n-го шага. Вычислительную схему динамического программирования можно строить на сетевых моделях, а также по алгоритмам прямой прогонки (от начала) и обратной прогонки (от конца к началу).

Порядок расчетов в методе динамического программирования может быть проиллюстрирован схемой (табл. 1.1), в которой точками обозначены состояния системы.

Таблица 1.1

Порядок расчетов в методе динамического программирования

Виды математических моделей, используемых в экономике

Общая задача оптимизации, чтобы ее можно было описать моделью ДП должна удовлетворять следующим условиям: 1. Задача может интерпретироваться как n-шаговый процесс управления...

Динамическое программирование

Задача о выборе наиболее экономного маршрута доставки груза. На данной сети дорог имеется несколько маршрутов, по которым можно доставлять груз из пункта 1 в пункт 10 (рис. 1)...

Использование метода динамического программирования для решения экономических задач

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

Классификация математических моделей, используемых в экономике и менеджменте

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

Классификация экономико-математических методов и моделей

Рассматривается управляемая система, которая под влиянием управления переходит из начального состояния в конечное состояние. Предположим, что процесс управления системой можно разбить на n шагов. Пусть - состояния системы после 1-го, 2-го, …...

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

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

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

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

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

Распределение инвестиций между предприятиями: "Малышок", "Ронда", "Товиус", "Сластёна", "Читек"

Динамическое программирование представляет собой математический аппарат, разработанный для эффективного решения некоторого класса задач математического программирования...

Распределение средств между предприятиями: ОАО "Весёлый молочник", ОАО "Нижнекамская пищевая компания", ООО "Сэлдом", ООО "СтойКом", ОАО "Счастье"

Динамическое программирование (ДП) - метод оптимизации, приспособленный к операциям, в которых процесс принятия решения может быть разбит на этапы (шаги). Такие операции называются многошаговыми. Начало развития ДП относится к 50-м годам XX в...

Трендовые и корреляционные модели

Делим динамический ряд 1 на количество частей, равное количеству неизвестных коэффициентов выравнивающей функции...

Экономические модели зависимости величины активов, подверженных кредитному риску, от пассивов, прибыли (убытков), ВВП

На первом этапе необходимо построить уравнение парной линейной регрессии. Эмпирическое уравнение парной линейной регрессии имеет следующий вид: (1) где Y - объясняемая переменная, X - объясняющая переменная, е - случайная величина (ошибка)...

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

Представим себе некоторую операцию Ơ, распадающуюся на ряд последовательных «шагов» или «этапов»,- например, деятельность отрасли промышленности в течение ряда хозяйственных лет; или же преодоление группой самолетов нескольких полос противовоздушной обороны; или же последовательность тестов, применяемых при контроле аппаратуры. Некоторые операции (подобно выше приведенным) расчленяются на шаги естественно; в некоторых членение приходится вводить искусственно - скажем, процесс наведения ракеты на цель можно условно разбить на этапы, каждый из которых занимает какое-то время .

Итак, рассмотрим операцию Ơ , состоящую из Т Шагов (этапов). Пусть эффективность операции характеризуется каким-то показателем W , который мы для краткости будем в этой главе называть «выигрышем». Предположим, что выигрыш W за всю операцию складывается из выигрышей на отдельных шагах:

Где Wi - выигрыш на I -м шаге.

Если W обладает таким свойством, то его называют «аддитивным критерием».

Операция О, о которой идет речь, представляет собой управляемый процесс, т. е. мы можем выбирать какие-то параметры, влияющие на его ход и исход, причем на каждом шаге выбирается какое-то решение, от которого зависит выигрыш на данном шаге и выигрыш за операцию в целом. Будем называть это решение «шаговым управлением». Совокупность всех шаговых управлений представляет собой управление операцией в целом. Обозначим его буквой Х, а шаговые управления - буквами Х1, х2, …, Xm :

X = (X 1 , X 2 , …, Xm ). (12.2)

Следует иметь в виду, что Х1, х2, …., Xm в общем случае - не числа, а, может быть, векторы, функции и т. д.

Требуется найти такое управление Х, при котором выигрыш W обращается в максимум:

То управление Х*, при котором этот максимум достигается, будем называть оптимальным управлением. Оно состоит из совокупности оптимальных шаговых управлений:

Х* = (). (12.4)

Тот максимальный выигрыш, который достигается при этом управлении, мы будем обозначать W* :

W* = {W (х) }. (12.5)

Формула (12.5) читается так: величина W * есть максимум из всех W { X } при разных управлениях Х (максимум берется по всем управлениям Х, возможным в данных условиях). Иногда это последнее оговаривается в формуле и пишут:

Рассмотрим несколько примеров многошаговых операций и для каждого из них поясним, что понимается под «управлением» и каков «выигрыш» (показатель эффективности) W.

1. Планируется деятельность группы промышленных предприятий П1, П2, …, ПK на период Т хозяйственных лет (M -летку). В начале периода на развитие группы выделены какие-то средства М, которые должны быть как-то распределены между предприятиями. В процессе работы предприятия, вложенные в него средства частично расходуются (амортизируются), а частично сохраняются и снова могут быть перераспределены. Каждое предприятие за год приносит доход, зависящий от того, сколько средств в него вложено. В начале каждого хозяйственного года имеющиеся в наличии средства перераспределяются между предприятиями. Ставится вопрос: какое количество средств в начале каждого года нужно выделять каждому предприятию, чтобы суммарный доход за Т лет был максимальным?

Выигрыш W (суммарный доход) представляет собой сумму доходов на отдельных шагах (годах):

И, значит, обладает свойством аддитивности.

Управление X I на I -м шаге состоит в том, что в начале I -го года предприятиям выделяются какие-то средства Х I 1 , х I 2 , …, х Ik (первый индекс - номер шага, второй - номер предприятия). Таким образом, шаговое управление есть вектор с K составляющими:

Xi = (Xi 1 , Xi 2 , …, Xik ). (12.7)

Разумеется, величины Wi в формуле (12.6) зависят от количества вложенных в предприятия средств.

Управление Х всей операцией состоит из совокупности всех шаговых управлений:

X = (X 1 , X 2 , …, Xm ). (12.8)

Требуется найти такое распределение средств по предприятиям и по годам (оптимальное управление X * ), при котором величина W обращается в максимум.

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

2. Космическая ракета состоит из Т ступеней, а процесс ее вывода на орбиту - из M этапов, в конце каждого из которых очередная ступень сбрасывается. На все ступени (без учета «полезного» веса кабины) выделен какой-то общий вес:

G = G 1 + G 2 + … + Gm ,

Где Gi - вес I -й ступени.

В результате I -го этапа (сгорания и сбрасывания 1-й ступени) ракета получает приращение скорости , зависящее от веса данной ступени и суммарного веса всех оставшихся плюс вес кабины. Спрашивается, как нужно распределить вес G между ступенями, чтобы скорость ракеты V при ее выводе на орбиту была максимальна?

В данном случае показатель эффективности (выигрыш) будет

V = (12.9)

Где - выигрыш (приращение скорости) на I -м шаге. Управление Х представляет собой совокупность весов всех ступеней Gi :

Х = (Gi , Gi , …, Gm ).

Оптимальным управлением Х* будет то распределение весов по ступеням, при котором скорость V максимальна. В этом примере шаговое управление - одно число, а именно, вес данной ступени.

3. Владелец автомашины эксплуатирует ее в течение Т лет. В начале каждого года он может принять одно из трех решений:

1) продать машину и заменить ее новой;

2) ремонтировать ее и продолжать эксплуатацию;

3) продолжать эксплуатацию без ремонта.

Шаговое управление - выбор одного из этих трех решений. Непосредственно числами они не выражаются, но можно приписать первому численное значение 1, второму 2, третьему 3. Какие нужно принять решения по годам (т. е. как чередовать управления 1, 2, 3), чтобы суммарные расходы на эксплуатацию, ремонт и приобретение новых машин были минимальны?

Показатель эффективности (в данном случае это не «выигрыш», а «проигрыш», но это неважно) равен

W = (12.10)

Где Wi - расходы в I -м году. Величину W требуется обратить в минимум.

X = (3, 3, 2, 2, 2, 1, 3, …),

Что означает: первые два года эксплуатировать машину без ремонта, последующие три года ее ремонтировать, в начале шестого года продать, купить новую, затем снова эксплуатировать без ремонта и т. д. Любое управление представляет собой вектор (совокупность чисел):

Х = (J 1 , J 2 , …; Jm ), (12.11)

Где каждое из чисел J 1 , J 2 , …, Jm имеет одно из трех значений: 1, 2 или 3. Нужно выбрать совокупность чисел (12.11), при которой величина (12.10) минимальна.

4. Прокладывается участок железнодорожного пути между пунктами А и В (рис. 12.1). Местность пересеченная, включает лесистые зоны, холмы, болота, реку, через которую надо строить мост. Требуется так провести дорогу из А и В, чтобы суммарные затраты на сооружение участка были минимальны.

В этой задаче, в отлично от трех предыдущих, нет естественного членения на шаги: его приходится вводить искусственно, для чего, например, можно отрезок АВ разделить на Т частей, провести через точки деления прямые, перпендикулярные АВ, и считать за «шаг» переход с одной такой прямой на другую. Если провести их достаточно близко друг от друга, то можно считать на каждом шаге участок пути прямолинейным. Шаговое управление на г-м шаге представляет собой угол , который составляет участок пути с прямой АВ. Управление всей операцией состоит из совокупности шаговых управлений:

Х = ().

Требуется выбрать такое (оптимальное) управление Х *, при котором суммарные затраты па сооружение всех участков минимальны:

W = => Min. (12.12)

Итак, мы рассмотрели несколько примеров многошаговых задач исследования операций. А теперь поговорим о том, как можно решать подобного рода задачи?

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

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

С первого взгляда идея может показаться довольно тривиальной. В самом деле, чего казалось бы, проще:

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

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

Пусть, например, планируется работа группы промышленных предприятий, из которых часть занята выпуском предметов потребления, а остальные производят для них машины. Задача операции - получить за Т лет максимальный объем выпуска предметов потребления. Допустим, планируются капиталовложения на первый год. Исходя из узких интересов этого шага (года), мы должны были бы все наличные средства вложить в производство предметов потребления. Но правильно ли будет такое решение с точки зрения эффективности операции в целом? Очевидно, нет. Это решение - расточительное, недальновидное. Имея в виду будущее, надо выделить какую-то долю средств и на производство машин. От этого объем продукции за первый год, конечно, снизится, зато будут созданы условия для его увеличения в последующие годы.

Еще пример. Допустим, что в задаче 4 (прокладка железнодорожного пути из А в В ) мы прельстимся идеей сразу же устремиться по самому легкому (дешевому) направлению. Что толку от экономии на первом шаге, если в дальнейшем он заведет нас (буквально или фигурально) в «болото»?

Значит, Планируя многошаговую операцию, надо выбирать управление на каждом шаге с учетом всех его будущих последствий на еще предстоящих шагах. Управление на I -м шаге выбирается не так, чтобы выигрыш именно на данном шаге был максимален, а так, чтобы была максимальна сумма выигрышей на всех оставшихся до конца шагах плюс данный.

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

Поэтому процесс динамического программирования обычно разворачивается от конца к началу: прежде всего, планируется последний, M -й шаг. А как его спланировать, если мы не знаем, чем кончился предпоследний? Т. е. не знаем условий, в которых мы приступаем к последнему шагу?

Вот тут-то и начинается самое главное. Планируя последний шаг, нужно сделать разные предположения о том, чем кончился предпоследний, (т — 1)-й шаг, и для каждого из этих предположений найти условное оптимальное управление на M -м шаге («условное» потому, что оно выбирается исходя из условия, что предпоследний шаг кончился так-то и так-то).

Предположим, что мы это сделали, и для каждого из возможных исходов предпоследнего шага знаем условное оптимальное управление и соответствующий ему условный оптимальный выигрыш на M -м шаге. Отлично! Теперь мы можем оптимизировать управление на предпоследнем, (т- 1)-м шаге. Снова сделаем все возможные предположения о том, чем кончился предыдущий, (M — 2)-й шаг, и для каждого из этих предположений найдем такое управление на (M 1)-м шаге, при котором выигрыш за последние два шага (из которых M -й уже оптимизирован!) максимален. Так мы найдем для каждого исхода (M — 2)- шага условное оптимальное управление на (т — 1)-м шаге и условный оптимальный выигрыш на двух последних шагах. Далее, «пятясь назад», оптимизируем управление на (M — 2)-м шаге и т. д., пока не дойдем до первого.

Предположим, что все условные оптимальные управления и условные оптимальные выигрыши за весь «хвост» процесса (на всех шагах, начиная от данного и до конца) нам известны. Это значит: мы знаем, что надо делать, как управлять на данном шаге и что мы за это получим на «хвосте», в каком бы состоянии ни был процесс к началу шага. Теперь мы можем построить уже не условно оптимальное, а просто оптимальное управление Х* и найти не условно оптимальный, а просто оптимальный выигрыш W *.

В самом деле, пусть мы знаем, в каком состоянии S 0 была управляемая система (объект управления S ) в начале первого шага. Тогда мы можем выбрать оптимальное управление на первом шаге. Применив его, мы изменим, состояние системы на некоторое новое ; в этом состоянии мы подошли ко второму шагу. Тогда нам тоже известно условное оптимальное управление , которое к концу второго шага переводит систему в состояние , и т. д. Что касается оптимального выигрыша W* за всю операцию, то он нам уже известен: ведь именно на основе его максимальности мы выбирали управленце на первом шаге.

Таким образом, в процессе оптимизации управления методом динамического программирования многошаговый процесс «проходится» дважды: первый раз - от конца к началу, в результате чего находятся условные оптимальные управления и условные оптимальные выигрыши за оставшийся «хвост» процесса; второй раз - от начала к концу, когда нам остается только «прочитать» уже готовые рекомендации и найти безусловное оптимальное управление Х*, состоящее из оптимальных шаговых управлений

Первый этап - условной оптимизации - несравненно сложнее и длительнее второго. Второй этап почти не требует дополнительных вычислений.

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

К вопросу об экономике и управлении

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

Экономика вторична по отношению к человеческой личности и социуму, и отражает один из способов существования индивидов, обладающих способностью и возможностью к творчеству (не путать с Творением), как преобразованию окружающего в направлении достижения комфортности существования, и развития (или деградации) себя и окружающих.
В основе экономики и экономических отношений лежит человеческая личность, и её направленная жизнедеятельность, со всем присущим ей набором атрибутов и признаков, делающих её таковой, какая она есть. Именно материально-экономические отношения с окружающим и между людьми, реализуемые в социуме, и составляют основу процесса, обеспечивающего существование социума (исходную для жизнедеятельности вида человека, как просто рассуждающего, так и разумного).
С другой стороны, экономические, как и все остальные отношения являются результатом предыдущего социального опыта передаваемого от поколения к поколению (если опыт утрачивается, то происходит социально-личностная деградация, проявляющаяся в борьбе друг с другом за возможности существования, что путем «свободной конкуренции», что путем прямого насилия).
В основе экономических отношений лежит целеполагающее начало, как совокупность личностной сущности и сущности общественной (накопленного социального опыта, воспринимаемого и передаваемого под определенным «углом зрения») в их направленности на развитие или деградацию.
Само же целеполагающее начало – есть проявление природных закономерностей в текущей реальности и степени их понимания людьми на данном этапе существования.
Реализация направленности в сторону развития личности, не возможна, без обеспечения существования на уровне, позволяющем «освободить» некоторое личное время от постоянного поиска «хлеба насущного», «крыши над головой», «обустройства быта». Свободное время необходимо не только для восстановления жизненных сил, но и чтобы использовать его для осмысления окружающего (накопления нового опыта) и личностной гармонизации (как для обеспечения физического и психического здоровья, так и заботы о следующих поколениях).

Условия (граничные) необходимые для существования, вытекают и задаются животным началом человека, формируя определенный круг потребностей индивида, как некоторую данность, необходимую для его существования и жизнедеятельности в реальных окружающих условиях.
Они, закономерно, меняются по мере становления и развития личности, в том числе, её эмоционального и физического планов (если ограничиваться индивидом, а не социально развитой личностью). Наличие интеллектуального плана делает животное умным, но не доставляет разумности. Разумность – это социальное начало, закладываемое определенным воспитанием и образованием, как передачей осмысленного (что, правда, не всегда имеет место) опыта предыдущих поколений, а его адекватности реальности.

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

Из сказанного вытекает, что целью и направленностью, таких отношений, является удовлетворение потребностей индивида, обеспечивая ему сносное или комфортное существование в окружающей среде. Данное существование обеспечивается как, исходя из ресурсов окружающей среды, так и собственными усилиями индивида, самостоятельно или во взаимодействии с остальным социумом. Возможно также, использование результатов усилий социума для удовлетворения личных потребностей, без собственного участия в получении этих результатов.
Поэтому, основной вопрос любых экономических отношений – это вопрос меры личных усилий и их результатов, и личностно потребляемых результатов усилий всего социума .
Именно совокупность сложившихся («установленных») мер говорит об устойчивости или неустойчивости экономики, как системы, и указывает на места приложения сил и их направленность. Выводом, который может быть получен из анализа мер (имеющих место или вытекающих из текущего социального целеполагания) является как текущее состояние экономики, так и возможность её дальнейшего развития, податливость к внешнему разрушению или склонность к саморазрушению, и какие другие социальные процессы, при этом, могут быть затронуты. Такой подход позволяет моделировать решения (на уровне макроуправления) в их развитии и, основываясь на возможных результатах, не допускать нежелательных тенденций в общественной жизни (не дожидаясь их явных проявлений) путем отказа от ошибочных решений.
Критерием, как нижней границей, «правильности» протекания процессов в экономических отношениях в текущих условиях, является личное удовлетворение на уровне физических (имеющих инстинктивную основу) потребностей организма, отражающих животное начало человека, всеми членами конкретного социума. Что отражает соответствие природной заданности, обуславливающей существования животного мира.
Критерий (точнее совокупность критериев), отражающий верхнюю границу(ы), определяется уровнем личностного развития человека, который, в данной системе отношений, может полностью использовать собственные возможности (таланты, умения, знания) с пользой для социума и себя лично. Реализация социальной функции личности в направлении деградации социума, указывает на разбалансировку системы в сторону её разрушения, с деградацией и в неё входящих элементов, т.е. в конечном итоге - к исчезновению вида человека разумного.
В этом отношении ролевая функция системы имеющихся отношений и её изменение является определяющей, а собственно личность её реализующая подчиненной. Неадекватность (мера несоответствия) личности и функциональной социальной роли, «диктуемой» системой, может носить как позитивный, так и негативный характер – в этом и проявляется роль личности в истории.
При общей позитивности текущего социального устройства, несоответствие обычно несет негатив, в противном случае, оно является позитивным фактором (несущим элемент управляющего начала, заложенного в активной составляющей личностной жизнедеятельности, к дополнительному преобразованию в позитивном направлении)
При общей негативности текущего социального устройства, несоответствие может быть позитивным (обусловленным позитивностью личностного начала, если его реализация в принципе возможна), в противном случае, оно является усугубляющим негативным фактором (несущим элемент управляющего начала, заложенного в активной составляющей личностной жизнедеятельности, к ещё большей ущербности в сторону дальнейшей деградации системы, если, конечно – это не природно-заданный социальный цикл, ведущий к качественному переустройству, в частности и изъятию, данного социума в рамках глобальной последовательности существования)

Исходя из вышесказанного, говоря об управлении, необходимо сразу зафиксировать, что управление - всегда динамический процесс, что и отличает управление по существу от простого исполнения той или иной команды, реализация которой отражает один из шагов (циклов) в управляемом процессе. Если эти шаги не связаны некоторым общим управляющим алгоритмом (включены в него) то управление носит прерывистый (возможно, даже хаотичный, инстинктивный) характер и, по сути, управлением не является, представляя из себя «болтание жести по ветру».

Управление экономикой лежит в физическом плане существования и связано с взаимодействием объектов и личностное участие в этом взаимодействии в меру возможного и допустимого. Сочетание возможного и допустимого формирует некоторую последовательность (как «коридор») управления, в соответствие с текущим целеполагающим началом управляющего субъекта, находящегося в определенных отношениях и взаимосвязях, как с объектами управления, так и с субъектами активной деятельности по реализации общего алгоритма управления.
Возможности физического плана дополняются субъектными возможностями, обусловленными мотивационным началом в деятельности субъектов, реализующих управленческое решение.
Таким образом, преобразующее (управленческое, творческое) начало – как субъектно-социальное, принадлежит эмоциональному плану существования.
В таком случае, весь процесс управления опирается на знание, понимание и предвидение развития природных (главным образом, физических) процессов, обуславливающих суть происходящих изменений с объектами, и такое же понимание субъективной составляющей, используемых движущих сил, для их активного участия в объективных процессах с пользой для социума и личности в глобальной перспективе (которая и определяет критерии нахождения «границ коридора», на его соответствие выбранному, на основе целеполагания, вектору жизнедеятельности).
Динамика управления достигается использованием сослагательного подхода к анализу происходящего и его увязки с обозначенным коридором – и заключается в ответах на совокупность возможных (или невозможных) - а если?
(что, в частности, отражает и метод познания, в том числе исторический – «история, как данность не имеет сослагательного наклонения», но метод исторического анализа вполне может быть "сослагателен" – поиск алгоритма социально-личностного понимания общего, природно-социального, функционала задающего историческую данность).
Именно набор полученных ответов и позволяет вводить коррекцию на каждом шаге (цикле) последовательности управления (и познания), удерживая процесс в изначально обозначенном коридоре.
Динамичность управления отражает интеллектуальный план существования и используемые осознанные (в отличие от «метода тыка» - прерогативы эмоционального плана) методы познания происходящего.
«Заключительным аккордом» управления является предвидение – постановка вопроса - а вдруг?
Которое не базируется на текущей логике понимания разворачивающихся процессов, но отражает «пришедшую на ум» возможность в происходящем (обычно трактуемую, как случайную, но именно в силу личностного непонимания, а не как отражение объективно развивающегося природного процесса). Ответы на этот вопрос «лежат» в духовном плане, заключающем в себе общий функционал личностного (и социального) развития. При определенной личностной грамотности в его использовании, появляется возможность получать ответы из области априорного (интуитивного) «знания» того, что не только уже имеет место, но и грядущего на уровне субъективных возможностей (откуда и «судьба хранит», правда лишь тех, кому этот канал доступен в должной мере, чтобы быть значимым для конкретной личности).

Отсюда вытекает, что в любой социальной системе существует оптимальное (в общем, меняющееся со временем) соотношение элементов (конкретных личностей) и занимаемого ими местоположения в системе (обуславливая реализацию функциональных социальных ролей).
Образующаяся система социально-личностных отношений (в частности экономических) и является основным объектом управления, как «стихийным», так и разумным образом.