Характеристика динамического программирования. Оптимальное планирование грузопотоков, рассмотренное в предыдущем разделе, может также решаться методами линейного программирования.
Одной из особенностей задач, решаемых методом линейного программирования, является одноэтапность реализации решения этих задач. Так, например, как только будет получен план оптимальных перевозок, он может быть передан для исполнения и все элементы этого плана (все перевозки), в принципе, могут выполняться одновременно или, по крайней мере, выполнение отдельных перевозок не связано как-либо с другими.
В то же время существует обширный класс технико-экономических задач по планированию и управлению производственными процессами, в которых должна соблюдаться определенная последовательность операций (этапов выполнения задачи).
Обычно эта последовательность задана во времени, но в некоторых задачах она может быть задана, например, в функции пути (что, впрочем, в конечном счете сводится также к заданной последовательности во времени).
Так, например, процесс эксплуатации оборудования содержит следующие этапы: приобретение оборудования, эксплуатацию, текущий ремонт, эксплуатацию, капитальный ремонт, снова эксплуатацию. Далее может иметь место модернизация оборудования и в конечном счете, после нового периода эксплуатации оборудование будет списано и заменено новым. В этой последовательности один этап следует за другим во времени. Одновременно их выполнение (для одной машины) исключено..Бессмысленной будет последовательность операций, при которой списанию оборудования предшествует капитальный ремонт, однако, в рассматриваемом примере такая последовательность в принципе возможна.
Есть задачи, в которых на последовательность операций наложены некоторые ограничения, оставляющие все же определенную свободу выбора вариантов последовательности этапов.
Предметом задач динамического программирования является выбор такой последовательности этапов и такой их длительности, чтобы «функция пользы» или иначе «целевая функция», определенным образом зависящая от последовательности и длительности этапов, достигла максимума. Обычно «целевая функция» определяет доход от исследуемой операции (процесса).
Если имеются в виду, издержки от операции, то задачей динамического программирования будет найти такую последовательность этапов, при которой «функция штрафа» достигла бы минимума.
Кроме задач, касающихся ремонтов и замены оборудования, решаются также задачи рационального распределения ресурсов, планирование графиков загрузки предприятий, проектирования (трассирования) дорог; рациональной загрузки транспортных средств и многие другие.
По своему существу это задачи вариационного исчисления. Однако методы классического анализа при решении практических задач, за редким исключением, оказываются несостоятельными. Можно назвать лишь несколько примеров, когда задачи, вариационного исчисления классическим методом решаются до конца.
В принципе, задачи указанного типа можно решать перебором всех возможных вариантов с целью выбора лучшего варианта. Но при решении практически важных задач число возможных вариантов решения оказывается таким большим, что даже для современных быстродействующих электронных вычислительных машин, делающих 10000—20000 операций (типа сложения) в секунду время перебора всех вариантов исчисляется годами. Увеличение быстродействия цифровых ЭВМ до 106 операций в секунду не решает проблемы.
Метод динамического программирования дает возможность заменить перебор всех вариантов решения задачи определенной системой операций — программой ее решения. При этом объем вычислений резко уменьшается, но все же остается столь большим, что обычно не может быть выполнен ручным счетом. На ЭВМ решение задач управления и планирования методом динамического программирования оказывается вполне возможным.
Основная идея метода динамического программирования. Этот метод заключается в применении принципа оптимальности, который может быть сформулирован так: «оптимальная политика» (оптимальное поведение, оптимальная стратегия) в данный момент времени определяется только состоянием системы в этот момент и конечным желательным состоянием системы (т. е. тем состоянием, к которому мы стремимся) и не зависит от предыстории процесса, т. е. не зависит от поведения системы в прошлом.
Этот принцип имеет силу для очень многих практических технико-экономических задач. В дальнейшем мы будем рассматривать только такие задачи, для которых этот принцип оказывается справедливым.
Выбор оптимального маршрута в реальных условиях.
Выбор оптимального маршрута в реальных условиях осложняется различными привходящими обстоятельствами. Реальная транспортная сеть не будет упорядоченной.
При выборе оптимального маршрута надо принимать во внимание также профиль дороги, износ машины и шин, расход горючего. Возможно, в качестве критерия оптимального пути лучше было бы выбрать стоимость перевозок. Задача, таким образом, усложняется, так как при определении стоимости перевозок надо учитывать не только стоимость провоза, но и стоимость перевалки, хранения, порчи в пути.
Следовательно, задача определения оптимального пути таким образом в реальных условиях значительно осложняется из-за необходимости выяснения смысла критерия оптимальности и сбора исходных данных. Но после четкой постановки задачи метод динамического программирования дает рациональный порядок решения (полезный даже при ручном счете).
ПРИ ПОДДЕРЖКЕ: