Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1055

.pdf
Скачиваний:
2
Добавлен:
07.01.2021
Размер:
843.84 Кб
Скачать

свое производство и, естественно, вкладывает финансовые средства в ту сферу деятельности, которая дает максимальный доход.

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

Многие процессы с последовательным принятием решений описываются как комбинаторные задачи. Рассмотрим, например, процесс, состоящий из n этапов, в каждом из которых принимается K решений. Для каждого возможного решения, принимаемого на n-м этапе, имеется K возможных решений, принимаемых на (n-1)-м этапе, а для каждого возможного решения, принимаемого на (n-1)-м этапе, имеется K возможных решений, принимаемых на (n-2)-м этапе, и т.д. Таким образом, для определения оптимального решения должно быть проанализировано Kn возможных решений. Для получения оптимального результата методом динамического программирования последовательно анализируется каждый этап, для которого выбираются наилучшие из K решений. В результате на n этапах анализируется nK возможных решений. В результате динамическое программирование приводит к тем же результатам, что и комбинаторный метод, но при

этом применяется в nK Kn nKn 1 раз меньше усилий.

Вычислительная эффективность метода динамического программирования по сравнению с полным перебором всех решений становится все более существенной с ростом n . Причина этого в том, что на каждом этапе из рассмотрения исключаются все неблагоприятные комбинации. Если предположить, что K=3; n=10, то комбинаторный подход требует анализа Kn 310 комбинаций. Метод, применяемый в динамическом программировании, потребует анализа nK=30 комбинаций. Если предположить, что K=3; n=100, то комбинаторный метод потребует анализа 3100 решений, в то время как в методе динамического программирования анализируются только 300 решений.

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

§ 5.2. Оптимальное распределение инвестиций по объектам вложения

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

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

Задача распределения инвестиций по своей природе комбинаторная. При определении фондоотдачи 10 млрд руб. в четыре отрасли промышленности необходимо перебрать все распределения 10 на 4 группы. При условии распределения только из целых чисел необхо-

димо посчитать 286 комбинаций: (10,0,0,0); (9,1,0,0); (8,1,1,0);…; (0,0,0,10).

В общем виде математическая постановка задачи по распределению однородных средств (инвестиций, машин, сырья и т.д.) формулируется следующим образом:

Найти значение неизвестных x1, x2,...,xn , удовлетворяющих ус-

n

 

xj 0 (xj ─ целые) и обращающих в максимум

ловиям xj

K;

j 1

 

 

функцию Fn

n

 

fj (xj ) xj , где xj - сумма возможных вложений по

 

j 1

 

j-му объекту (отрасль, предприятие, участок, цех); f j (xj ) ─ капита-

лоотдача по предполагаемому j- му объекту, т. е. функция отдачи от инвестиций (прибыль, прирост продукции и т.д.).

Алгоритм, предложенный Беллманом, справедлив для функций f j (xj ) любого вида и является одним из простейших примеров при-

менения динамического программирования. Идея алгоритма состоит в том, что последовательно решаются задачи оптимального распределения средств между первыми j объектами (здесь j принимает значения 1,2,3,…,n). Последняя из этих задач является решением.

В задаче по распределению средств всегда предполагаются из-

вестными значения функции

f j (xj )

при всех возможных значениях

аргументов (табл. 10).

 

 

 

 

Таблица 10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вложения

f1(x)

 

f2(x)

 

fj(x)

 

fn(x)

x

 

 

 

 

 

 

 

 

 

0

f1(0)

 

f2(0)

 

fj (0)

 

fn (0)

1

f1(1)

 

f2(1)

 

fj (1)

 

fn (1)

 

 

 

 

 

 

 

i

f1(i)

 

f2(i)

 

fj (i)

 

fn (i)

 

 

 

 

 

 

 

K

f1(K)

 

f2(K)

….

 

fj (K)

 

fn (K)

Функция fj (xj )

непрерывна в области определения от 0 до K .

Функции, значения которых равны прибыли при оптимальном распределении вложений x ( x=1,2,3,…,K ) в первые j объектов, обозначают через Fj (xj ). Следовательно, известен столбец Fj (1), Fj (2),

…,Fj (K), а для каждого числа определен план распределения ресур-

сов.

Для примера приведена задача распределения K средств между первыми j+1 объектами. Пусть на первые j объектов отводится x средств. Тогда на (j+1)-й объект распределяется K x средств. На первые объекты x средств распределены оптимальным образом, то есть вычислено значение функции Fj (xj ). Поэтому можно вычислить

значение показателя качества распределения всех средств на первые j+1 объектов: Fj 1(K) FJ (xj ) f j 1(K xj ).

В зависимости от значения x функция принимает разные значения. Оптимальному распределению соответствует такая величина x, при которой функция Fj 1(K) принимает наибольшее значение.

Следовательно, Fj 1(K) max{FJ (xj ) fj 1(K xj )} при

0 xj K .

Столбцы чисел Fj (xj ) и f j 1(K x)известны, поэтому можно легко определить значение функции Fj 1(K x). Решив последова-

тельно K задач при различных значениях x (x=1,2,3,…,K), определяют столбец чисел Fj 1(1), Fj 1(2), …,Fj 1(K) и соответственно для

каждого из этих чисел план распределения ресурсов. Таким образом, решена задача оптимального распределения средств в количестве от 1 до K между первыми j+1 объектами. Заметим, что при j=1 задача имеет простейшее решение ─ столбец {F1(xj )} совпадает со столб-

цом { f1(xj )}.

Решение задачи по оптимальному распределению K ресурсов между j (здесь j=1, 2,…,n) объектами состоит из n 1 однотипных циклов, в которых определяются значения F1(x), F2 (x),...,Fn (x). Оптимальный план распределения средств на первый объект состоит в направлении всех имеющихся средств на первый объект, то есть по-

лагают F1(x) f1(x), x=0,1,2,…,K.

Этапы решения задачи следующие:

F1(x) f1(x);

F2(K) max{F1(x ) f2(K x )};

F3(K) max{F2(x) f3(K x)};

………..

Fn (K) max{Fn 1(x) fn (K x)}.

В каждом цикле используют вычисленный в предыдущем цикле столбец Fj (x) и столбец f j 1(K x). Решение оформляется в виде

таблиц.

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

 

 

 

 

 

 

Таблица 11

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема

вложения

 

капитальных

вложений

 

 

первым f1 x

 

вторым

f2 x

 

третьим f3(x)

0

0

 

0

 

 

0

1

2,5

 

2

 

 

3

2

3,5

 

3,5

 

 

5,5

3

4,5

 

5

 

 

6,5

4

6,5

 

7,5

 

 

8,5

5

9

 

8,5

 

 

10,5

Предполагаем на первом этапе, что все вложения мы направляем только первому заводу. Создаем столбец F1(x) (табл. 12).

 

 

 

 

 

Таблица 12

 

 

 

 

 

 

Капитальные

Суммарная

 

План распределения

вложения

прибыль

капитальных вложений по

 

F1(x)

 

 

заводам

 

 

 

первому

 

второму

третьему

0

0

0

 

0

0

1

2,5

1

 

0

0

2

3,5

2

 

0

0

3

4,5

3

 

0

0

4

6,5

4

 

0

0

5

9

5

 

0

0

Теперь предположим, что все средства будут направлены на первые два завода. Найдем значения F2(x)и соответствующие им планы распределения инвестиций.

F2(1) max{F1(1); F1(0) f2(1)} max{2,5; 0 2} 2,5.

F2(2) max{F1(2); F1(1) f2(1); F1(0) f2(2)}max{3,5;0 3,5;2,5 2} 4,5.

Аналогично находим F2(3) 6; F2 (4) 7,5; F2 (5) 10. Результаты заносим в табл. 13.

Таблица 13

Капитальные

Суммарная

 

 

План распределения

вложения

прибыль

 

 

капитальных вложений по

 

F1(x)

f2(x)

F2(x)

 

заводам

 

 

 

 

 

первому

второму

третьему

0

0

0

0

0

0

0

1

2,5

2

2,5

1

0

0

2

3,5

3,5

4,5

1

1

0

3

4,5

5

6

1

2

0

4

6,5

7,5

7,5

1

3

0

5

9

8,5

10

1

4

0

Теперь вычисляют значения столбца F3(x) и соответствующие им планы распределения средств на три завода. Результаты вычислений сведены в табл. 14.

Таблица 14

Капитальные

Суммарная

 

 

План распределения

вложения

прибыль

 

 

капитальных вложений по

 

F2(x)

f3(x)

F3(x)

 

заводам

 

 

 

 

 

первому

второму

третьему

0

0

0

0

0

0

0

1

2,5

3

3

0

0

1

2

4,5

5,5

5,5

0

0

2

3

6

6,5

8

1

0

2

4

7,5

8,5

10

1

1

2

5

10

10,5

11,5

1

2

2

Оптимальным является такое распределение лимита, когда первому заводу будет выделено 1 ед. средств, второму─2 ед., третьему─2 ед. В этом случае обеспечивается максимум фондоотдачи 11, 5 усл. ед.

Вопросы для самопроверки

1.Какова основа метода динамического программирования?

2.Какой критерий оптимальности используется в динамическом программировании?

3.В чем заключается эффективность решения задачи с применением динамического программирования по сравнению с комбинаторным методом?

4.Объясните недостатки метода динамического программирования по сравнению с симплексным методом линейного программирования.

5.Перечислите области экономики, в которых можно применить динамическое программирование.

6.Напишите экономико-математическую модель по распределению однородных средств между объектами.

7.Какова практическая ценность определения кратчайшего пути передвижения транспорта между пунктами с применением динамического программирования в условиях множества вариантов?

§ 5.3. Задачи для самостоятельного решения

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

Задача 5.1.

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

вложений

 

 

первым

вторым

третьим

четвертым

 

f1(x)

f2 x

f3 x

f4 x

0

0

0

0

0

1

2

2

4

2,5

2

3,5

4

3

4,5

3

4

4,5

4

5

4

4

4

5,5

6

5

6

4,5

6

7,5

6

6,5

4,5

6,5

8

Задача 5.2.

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

4

3

 

5

8

2

2.5

6

 

3

3

3

4

12

 

6

5

4

6,5

17

 

15

6,5

5

7

12

 

10

7

6

8

8

 

4

8

Задача 5.3.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

6

8

 

5

7

2

6,5

7

 

5,5

3

3

7

6,5

 

7

4,6

4

8

3

 

7

6

5

9,5

8

 

9

7

6

10

10

 

9,5

9

Задача 5.4.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

3

2

 

6

4

2

4

12

 

6,5

4,5

3

5

12

 

7

5,5

4

7

12

 

7,5

7

5

7,5

5

 

8

9

6

7

7

 

9

11

Задача 5.5.

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

3

8

 

8,7

5

2

5

8

 

9

3

3

6,5

9

 

7

6

4

7

10

 

5

6,5

5

7,5

9

 

8

7

6

9

11

 

5

8

Задача 5.6.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

5

5

 

3

6

2

3

4,5

 

4,5

5

3

6

7

 

6

5,5

4

6,5

7,5

 

12

7

5

7

9

 

8

9

6

8

12

 

10

9,5

Задача 5.7.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

1

1

 

3

4

2

1,5

1

 

2,2

3

3

2,5

2

 

1

2

4

4

4

 

1

1

5

5

3

 

1,5

2

6

5

5

 

3

1

Задача 5.8.

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

3

4

 

2

4

2

4

4

 

3

3

3

4,4

5

 

3,5

4,5

4

6

7

 

4

7

5

6,5

7

 

4

7,5

6

10

9

 

8

8

Задача 5.9.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

4

2

 

1

2,2

2

5

3

 

1,5

5

3

5,5

3,5

 

4

5

4

6

5

 

4

4,5

5

7

5

 

5,5

5

6

7

7

 

6

6

Задача 5.10.

 

 

 

 

Капитальные

Выпуск продукции заводами с указанного объема капитальных

вложения

 

 

вложений

 

 

первым

вторым

 

третьим

четвертым

 

f1(x)

f2 x

 

f3 x

f4 x

0

0

0

 

0

0

1

1,5

3

 

5

3

2

2

2,5

 

6

4

3

12

4

 

4,5

5

4

12

8

 

6,5

4,5

5

12

10

 

8

7

6

5

12

 

8

8

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]