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




Введение

 

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


Экономическая сущность задачи

 

В отрасли имеется М предприятий, выпускающих однотипную взаимозаменяемую продукцию, спрос на которую пока не удовлетворяется полностью. С целью увеличения выпуска данной продукции на модернизацию этих предприятий выделена сумма капиталовложений в размере Х тыс. руб. Каждому предприятию с номером m=1, 2, …, M может быть выделена сумма Xm>=0, при этом сумма капиталовложений распределяется полностью, т.е.

 

(1)

 

Оптимизация распределения капиталовложений производится по критерию максимума суммарного прироста выпуска продукции всеми предприятиями

 

(2)

 

Здесь gm (xm) - прирост выпуска продукции на предприятии с номером m при условии, что ему выделена сумма капиталовложений xm.


Исходные данные

 

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

Для упрощения дальнейших вычислений будем считать, что величины xm кратны некоторой дискрете h=X/N где N - число дискрет в распределяемой сумме X. Дискрета h задается заранее, исходя из разумного компромисса между желательной точностью и трудоемкостью расчетов. Уменьшение величины дискреты h, вообще говоря, увеличивает точность, но при этом растет трудоемкость подготовки исходной информации и её последующей обработки.

С учетом принятого допущения величина капиталовложений xm меняемся дискретно, принимая значения xm = nh, n=0, 1, …, N. Каждое предприятие рассчитывает и представляет в министерство (N+1) М значений, которые удобно свести в табл.1.

При построении табл.1.1 принято М = 5; Х = 300 тыс. руб.; N = 6; h = 50 тыс. руб.

 

Таблица 1 - Прирост выпуска продукции при заданной величине капиталовложений, тыс. руб.

Величина капиталовложений тыс. руб. Порядковый номер предприятия
         
           
           
           
           
           
           
           
           
           

 


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

 

Идея метода динамического программирования состоит в том, что выделенная сумма Х распределяется не между всеми М предприятиями (иначе получается полный перебор), а между двумя "предприятиями": последним предприятием (имеющем номер М) и группой из (М -1) - го предшествующего предприятия, для которого оптимальное распределение между ними любой частичной суммы уже известно. Это соответствует решению основного функционального уравнения динамического программирования М -го, последнего шага

 

(3)

 

Здесь fM (X) - максимальный суммарный прирост продукции, получаемый от М предприятий при оптимальном распределении суммы Х между M -тым и группой из (М -1) - го первых предприятий, при условии, что выделяемая им частичная сумма (Х-ХМ) распределяется оптимально;

fM-1 (X-ХМ) - максимальный суммарный прирост продукции, получаемый от (М -1) - го первых предприятий при оптимальном распределении между ними частичной суммы (Х-ХМ), оставшейся, от М-го предприятия.

Решить уравнение (3) невозможно, так как функция fM-1 (X-ХМ) неизвестна. Однако её можно выразить с помощью основного функционального уравнения для (М-1) - го шага через функцию максимального суммарного прироста продукции, получаемого при оптимальном распределении частичных сумм в группе из (М-2) - х первых предприятий


(4)

 

Снова неизвестна функция fM-2 (nh-ХМ-1) однако, используя основное fM-3 (nh-ХМ-2) функциональное уравнение, её можно определить аналогично через функцию и т.д. Эта процедура рекуррентных подстановок неизвестных функций максимального суммарного прироста продукции заканчивается точно через М шагов. Действительно, на последнем шаге подстановок (его номер m =1) получаем основное функциональное уравнение динамического программирования в виде

 

(5)

 

Функция f0 (nh-Х1) формально есть максимальный прирост продукции при оптимальном распределении частичной суммы (nh-Х1) в группе, состоящей из "0" предприятий. Естественно, такой группе, в которой нет ни одного предприятия, никаких средств не выделяется поэтому

 

f0 (nh-Х1) =0 (6)

 

Отсюда следует, что на первом шаге основное функциональное уравнение имеет следующее решение:

 

(7)

 

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

 

X1* (nh) = nh (8)

 

Представим найденное решение основного функционального уравнения на первом шаге в виде табл.2.

 

Таблица 2 - Определение оптимальных управлений и максимальных прирос продукции на первом шаге

Частичная распределяемая сумма Сумма, выделяемая первому предприятию Оптимальное управление Максимальный прирост продукции
             
                   
                   
                   
    -              
                   
                   
                   

 

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

ШАГ 1 тривиален, однако важен в том отношении, что позволяет начать процесс рекуррентного вычисления на последующих шагах по основному функциональному уравнению


fm (nh) =max{gm (xm) +fm-1 (nh-xm) }, n=1, 2, …, N;

0<=xm<=nh, m=1, 2, …, M.

 

ШАГ 2. Распределение частичных сумм между вторым предприятием и группой из "одного первого предприятия". Для второго шага основное функциональное уравнение имеет вид

 

F2 (nh) =max{g2 (x2) +f1 (nh-x2) },

0<=x2<=nh; 1<=n<=N

 

Его решение представлено в табл.3

 

Таблица 3 - Определение оптимальных управлений и максимальных приростов продукции на 2-м шаге.

Частичная распределяемая сумма Сумма, выделяемая второму предприятию Оптимальное управление Максимальный прирост продукции
             
  0+0                
  0+30 20+0              
  0+83 20+30 75+0            
  0+98 20+83 75+30 100+0          
  0+127 20+98 75+83 100+30 150+0        
  0+158 20+127 75+98 100+83 150+30 165+0      
  0+195 20+158 75+127 100+98 150+83 165+30 200+0    

В клетках таблицы записываются через знак "+" 2 числа, равные g2 (x2) и f1 (nh-x2). Величины g2 (x2) берутся из табл.1, а величины f1 (nh-x2) из последнего столбца табл.2.

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

ШАГ 3. Зная оптимальное распределение всех частичных сумм между первыми двумя предприятиями, перейдем к их распределению между третьим предприятием и группой из первых двух (табл.4).

 

Таблица 4 - Определение оптимальных управлений и максимальных прирост продукции на 3-м шаге

Частичная распределяемая сумма Сумма, выделяемая третьему предприятию Оптимальное управление Максимальный прирост продукции
             
  0+0                
  0+30 20+0              
  0+83 20+30 61+0            
  0+105 20+83 61+30 112+0          
  0+158 20+105 61+83 112+30 140+0        
  0+183 20+158 61+105 112+83 140+30 152+0      
  0+233 20+183 61+158 112+105 140+83 152+30 180+0    

ШАГ 4. Определение оптимального распределения на 4-м шаге.

 

Таблица 5 - Определение оптимальных управлений и максимальных приростов продукции на 4-м шаге

Частичная распределяемая сумма Сумма, выделяемая четвертому предприятию Оптимальное управление Максимальный прирост продукции
             
  0+0                
  0+30 40+0              
  0+83 40+40 62+0            
  0+112 40+83 62+40 97+0          
  0+158 40+112 62+83 97+40 134+0        
  0+195 40+158 62+112 97+83 134+40 160+0      
  0+233 40+195 62+158 97+112 134+83 160+40 185+0    

 


ШАГ 5. Определение оптимального распределения на 5-м шаге.

 

Таблица 6 - Определение оптимальных управлений и максимальных приростов продукции на 5-м шаге

Частичная распределяемая сумма Сумма, выделяемая пятому предприятию Оптимальное управление Максимальный прирост продукции
             
  0+0                
  0+40 30+0              
  0+83 30+40 72+0            
  0+123 30+83 72+40 108+0          
  0+158 30+123 72+83 108+40 122+0        
  0+198 30+158 72+123 108+83 122+40 148+0      
  0+235 30+198 72+158 108+123 122+83 148+40 190+0    

 

Результаты расчетов на всех 5-и шагах представим в виде табл.7.

 

Таблица 7 - Сводная таблица оптимальных управлений и максимальных приростов продукции

Распределяемая сумма Номер шага распределения
         
x1* f1 x2* F2 x3* f3 x4* f4 x5* f5
                     
                     
                     
                     
                     
                     
                     
                           

 

Таблица 8 - Оптимальное распределение частичных сумм между 5-ю предприятиями.

Распределяемая сумма Выделяемые предприятиям суммы Макс. Суммарный прирост продукции
         
             
             
             
             
             
             
             
               

 

Оптимальное распределение суммы 300 тыс. руб.:

X1*   x2*   x3*   x4*   x5*  

 

Максимальный прирост выпуска продукции при оптимальном распределении равен 235 тыс. руб. Эта величина находится на пересечении строки "Распределяемая сумма - 300"' и столбцов 5-го шага. Задача решена.


4. Метод полного перебора вариантов

 

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

По условиям варианта имеем 6 предприятий и 7 дискрет.

 

Таблица 9 - Расчет числа вариантов распределения между 6-ю предприятиями суммы 300 тыс. руб. с дискретой 37,5 тыс. руб. по методу полного перебора

Тип распределения Число вариантов
  Одному - 300 С61=6
  Одному - 262,5, другому - 37,5 С61 С51=30
  Одному - 225, другому - 75 С61 С51=30
  Одному - 225, другому - 37,5, третьему - 37,5 С61 С52=60
  Одному - 187,5, другому - 112,5 С61 С51 =30
  Одному - 187,5, второму - 75, третьему - 37,5 С61 С52С52=120
  Одному - 187,5, трем по - 37,5 С61 С52=60
  Двум по - 150 С62=60
  Одному - 150, второму - 112,5, третему - 37,5 С61 С51С41=60
  Одному - 150, второму - 75, двум по - 37,5 С61 С51 С42=180
  Одному - 150, двум по - 75 С61 С52=60
  Одному - 150, четырем по - 37,5 С61 С54=30
  Двум по - 112,5 другому - 75 С62 С41=68
  Двум по - 112,5 двум по - 37,5 С62 С42=90
  Одному - 112,5, второму - 75, трем по - 37,5 С61 С51 С43=120
  Одному - 112,5, двум по - 75, третьему - 37,5 С61 С52 С32=180
  Одному - 112,5, пятерым по - 37,5 С61 С55=6
  Четырем по - 75 С64=15
  Трем по - 75, двум по - 37,5 С63 С32=60
  Двум по - 75, четырем по - 37,5 С62 С44=15
Итого вариантов: 1287

 

Число вариантов распределения методом полного перебора можно также подсчитать по формуле коэффициентов биномиального распределения

 

 
 

(9)

 

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

 

(10)

 

В нашем случае это составило 1287 вариантов, т.е. по сравнению с методом полного перебора число рассматриваемых вариантов сократилась более чем в 60 раза.




Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-12-28 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: