Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава 7.doc
Скачиваний:
17
Добавлен:
17.11.2019
Размер:
491.52 Кб
Скачать

§3. Решение задачи оптимального распределения инвестиций методом динамического программирования

Проиллюстрируем описанную выше процедуру решения задач динамического программирования на следующем примере.

Задача 4.1. Компания выделяет S = 40 млн. руб. для модернизации производства с целью увеличения выпуска продукции. Эти средства следует распределить между тремя филиалами компании. При этом сумма, выделяемая филиалу, должна быть кратна 10 млн. руб.

Известны функции fk(u) (k = ), которые характеризуют прирост выпуска продукции k-го филиала в млн. руб. за год при получении им капиталовложений u млн. руб. (u = 0, 10, 20, 30, 40). Эти данные приведены в таблице 4.1. Нужно найти оптимальный план распределения капиталовложений между филиалами, обеспечивающий максимальный общий годовой прирост выпуска продукции.

Таблица 4.1. Исходная информация к задаче

Размер капитало-вложений (млн. руб.)

u

Прирост выпуска продукции (млн. руб.)

f1(u)

f2(u)

f3(u)

0

0

0

0

10

5

6

4

20

7

8

7

30

8

9

8

40

11

12

10

Решение. Обозначим через uk количество средств, выделенных k-му филиалу, где k = , а Z — общий годовой прирост выпуска продукции. Для нахождения оптимального плана распределения инвестиций следует решить следующую задачу:

Z = f1(u1) + f2(u2) + f3(u3) → max, (4.1)

u1 + u2 + u3 = 40, (4.2)

uk ≥ 0, k = , (4.3)

uk ϵ {0, 10, 20, 30, 40}, k = . (4.4)

Оптимальное решение задачи (4.1) – (4.4) можно найти, сведя ее к задаче линейного целочисленного программирования, аналогично тому, как это было сделано в предыдущей главе (см. задачу 1.3 в §1 главы 7). Другая возможность — использование метода динамического программирования.

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

Управление uk на k-м шаге (k = ) — это объем средств, выделенных k‑му филиалу, а параметры состояния xk — это остаток капиталовложений после их выделения первым k объектам.

Итак, x0 = 40 — начальный объем капиталовложений, x1 — объем средств, оставшийся после выделения капиталовложений первому филиалу, x2 — объем средств, оставшийся после выделения капиталовложений первому и второму филиалу, а x3 — объем средств, оставшийся после выделения капиталовложений всем трём филиалам.

Уравнения состояния имеют вид:

x0 = 40,

x1 = x0u1,

x2 = x1u2,

x3 = x2u3

Множества допустимых управлений на каждом шаге таковы:

Dk = {0 uk xk-1}, k = .

Показатель эффективности управления fk(uk) на каждом шаге зависит только от управления на этом шаге и не зависит от предшествующего состояния. Общий показатель эффективности управления имеет вид:

Z = f1(u1) + f2(u2) + f3(u3) → max.

Оптимальное управление доставляет максимум этой функции на множестве допустимых управлений.

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