1. Экономическая сущность задачи
3. Метод динамического программирования
4. Метод полного перебора вариантов
5.1. Равномерное распределение
5.2. Метод наибольшей плановой эффективности
5.3. Самостоятельное интуитивное распределение
Цель работы - изучение экономической сущности и математической формализации задачи определения оптимального варианта распределения заданной суммы капитальных вложений между несколькими предприятиями отрасли, выпускающими взаимозаменяемую продукцию.
В отрасли имеется М предприятий, выпускающих однотипную взаимозаменяемую продукцию, спрос на которую пока не удовлетворяется полностью. С целью увеличения выпуска данной продукции на модернизацию этих предприятий выделена сумма капиталовложений в размере Х тыс. руб. Каждому предприятию с номером 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 | 2 | 3 | 4 | 5 | |
1 | 2 | 3 | 4 | 5 | 6 |
0 | 0 | 0 | 0 | 0 | 0 |
50 | 30 | 20 | 20 | 40 | 30 |
100 | 83 | 75 | 61 | 62 | 72 |
1 | 2 | 3 | 4 | 5 | 6 |
150 | 98 | 100 | 112 | 97 | 108 |
200 | 127 | 150 | 140 | 134 | 122 |
250 | 158 | 165 | 152 | 160 | 148 |
300 | 195 | 20 | 180 | 185 | 190 |
Идея метода динамического программирования состоит в том, что выделенная сумма Х распределяется не между всеми М предприятиями (иначе получается полный перебор), а между двумя "предприятиями": последним предприятием (имеющем номер М) и группой из (М-1) - го предшествующего предприятия, для которого оптимальное распределение между ними любой частичной суммы уже известно. Это соответствует решению основного функционального уравнения динамического программирования М-го, последнего шага
(3)Здесь fM (X) - максимальный суммарный прирост продукции, получаемый от М предприятий при оптимальном распределении суммы Х между M-тым и группой из (М-1) - го первых предприятий, при условии, что выделяемая им частичная сумма (Х-ХМ) распределяется оптимально;
fM-1 (X-ХМ) - максимальный суммарный прирост продукции, получаемый от (М-1) - го первых предприятий при оптимальном распределении между ними частичной суммы (Х-ХМ), оставшейся, от М-го предприятия.
Решить уравнение (3) невозможно, так как функция fM-1 (X-ХМ) неизвестна. Однако её можно выразить с помощью основного функционального уравнения для (М-1) - го шага через функцию максимального суммарного прироста продукции, получаемого при оптимальном распределении частичных сумм в группе из (М-2) - х первых предприятий
Снова неизвестна функция 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 - Определение оптимальных управлений и максимальных прирос продукции на первом шаге
Частичная распределяемая сумма | Сумма, выделяемая первому предприятию | Оптимальное управление | Максимальный прирост продукции | ||||||
0 | 50 | 100 | 150 | 200 | 250 | 300 | |||
0 | 0 | 0 | 0 | ||||||
50 | 30 | 50 | 30 | ||||||
100 | 83 | 100 | 83 | ||||||
150 | - | 98 | 150 | 98 | |||||
200 | 127 | 200 | 127 | ||||||
250 | 158 | 250 | 158 | ||||||
300 | 195 | 300 | 195 |
В табл.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 | 50 | 100 | 150 | 200 | 250 | 300 | |||
0 | 0+0 0 | 0 | 0 | ||||||
50 | 0+30 30 | 20+0 20 | 0 | 30 | |||||
100 | 0+83 83 | 20+30 50 | 75+0 75 | 0 | 83 | ||||
150 | 0+98 98 | 20+83 103 | 75+30 105 | 100+0 100 | 100 | 105 | |||
200 | 0+127 127 | 20+98 118 | 75+83 158 | 100+30 130 | 150+0 150 | 100 | 158 | ||
250 | 0+158 158 | 20+127 147 | 75+98 173 | 100+83 183 | 150+30 180 | 165+0 165 | 150 | 183 | |
300 | 0+195 195 | 20+158 178 | 75+127 204 | 100+98 198 | 150+83 233 | 165+30 195 | 200+0 200 | 200 | 233 |
В клетках таблицы записываются через знак "+" 2 числа, равные g2 (x2) и f1 (nh-x2). Величины g2 (x2) берутся из табл.1, а величины f1 (nh-x2) из последнего столбца табл.2.