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

книги / Некоторые главы математического программирования

..pdf
Скачиваний:
0
Добавлен:
12.11.2023
Размер:
530.35 Кб
Скачать

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

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

Пусть Fn(Sn–1, Vn) – условно-оптимальное значение целевой функции на промежутке от n-го шага до последнего N-го шага включительно при условии, что перед n-м шагом система находилась в одном из состояний множества Sn–1, а на n-м шаге было выбрано такое управление из множества Vn, которое обеспечило целевой функции условно-оптимальное значение.

Тогда Fn+1(Sn, Vn+1) – условно-оптимальное значение целевой функции в интервале от (n+1)-го до N-го шага включительно.

Исходя из этого принцип оптимальности Беллмана можно записать в следующем виде (математическая форма записи):

F

S

n 1

,V

extr

 

f

n

S

n 1

,V

F

 

S

n

,V

 

.

(2.2.1)

n

 

n

V

 

 

n

n 1

 

n 1

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Равенство (2.2.1) называют основным функциональным уравнением динамического программирования. Для каждой конкретной задачи уравнение имеет особый вид.

Этапы решения задачи динамического программирования. Решение задачи методом динамического программирования разбивается на два этапа: этап условной и этап безусловной оптимизации. На этапе условной оптимизации в соответствии с функциональным уравнением (2.2.1) определяются оптимальные управления для всех возможных состояний на каждом шаге, начиная с последнего (или с первого).

На втором этапе безусловной оптимизации шаги рассматриваются, начиная с первого (или с последнего). Поскольку исходное состояние S0 известно, выбирается оптимальное управление из множества V1. Выбранное оптимальное управление V1* приводит систему во вполне определенное состояние S1. Благодаря тому что исходное состояние S1 в начале второго шага известно, становится возможным выбрать оптимальное управление на втором шаге V2* и т.д. Таким образом строится

21

цепь взаимосвязанных решений безусловной оптимизации (оптимальногоуправления) V* = (V1*, V2*,…, VN*).

Далее рассмотрим некоторые задачи динамического программирования.

2.3. Задача оптимального распределения инвестиций

Суть задачи состоит в следующем: имеется некоторая сумма X (условные денежные единицы – у.е.), которую нужно распределить среди N предприятий так, чтобы суммарная прибыль от инвестиций была максимальной. При этом известно значение fj(Xi) – прибыль j-го предприятия от вложения суммы Xi. Имеется дополнительное ограничение: суммы инвестиций кратны некоторому заранее определенному числу.

Процесс решения разбиваем на шаги. На первом шаге рассмотрим вложение средств в одно предприятие (например, первое). На втором шаге будем распределять средства между двумя предприятиями и т. д., на последнем шаге – между N предприятиями.

Обозначим через Fj(Xi) максимальную прибыль на j-м шаге от инвестиций в сумме Xi (т.е. максимизируется прибыль от инвестиций в сумме Xi в первые j предприятий), а через F(X) искомую максимальную суммарную прибыль от вложения X у.е. во все предприятия.

Согласно принципу оптимальности Беллмана функциональные уравнения для данной задачи имеют вид:

– эффект на первом шаге:

 

F1 Xi f1 Xi ;

 

 

 

(2.3.1)

– эффект на последующих шагах:

 

 

 

 

Fj Xi max f j

Xe Fj 1 Xi Xe

j

 

;

(2.3.2)

2, N 1

0 Xe Xi

 

 

 

 

 

– суммарный эффект:

 

 

 

 

 

F X FN X

max fN Xe FN 1 X Xe .

(2.3.3)

 

0 Xe X

 

 

 

 

22

Пример 3

В три промышленных предприятия города инвестируются средства в размере 500 млн руб. на увеличение объемов производства продукции. Инвестируемые суммы кратны 100 млн руб. Известен прирост производства продукции в зависимости от капиталовложений в каждое предприятие. Числовые данные (у.е.) приведены в табл. 3.

 

 

 

 

Таблица 3

 

 

 

 

 

Объем капитало-

 

Прирост выпуска продукции

вложений Xi

f1(Xi)

 

f2(Xi)

f3(Xi)

0

0

 

0

0

100

30

 

50

40

200

60

 

70

80

300

110

 

90

90

400

130

 

140

120

500

150

 

170

160

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

Решение

Первый этап: условная оптимизация.

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

Первый шаг.

Определим максимальную прибыль первого предприятия F1 Xi при вложении Xi денежных единиц.

23

По формуле (2.3.1) находим значения F1 Xi f1 Xi для всех возможных Xi :

F1 (0) f1 (0) 0; F1 (100) f1 (100) 30;

F1 (200) f1 (200) 60;

F1 (300) f1 (300) 110;

F1 (400) f1 (400) 130;

F1 (500) f1 (500) 150.

Второй шаг.

Используя полученные данные, определим максимальную при-

быль F2 Xi при вложении

Xi денежных единиц в первые два

предприятия. По формуле (2.3.2) получаем:

 

 

 

 

 

 

F2 (0) max f 2 (0) F1 (0) 0;

 

 

 

 

 

 

 

f

2

(0) F (100)

 

0

30

 

 

 

F2 (100) max

 

 

 

 

 

1

 

 

 

50;

 

 

f

2 (100) F1 (0)

max

50

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

(0)

F (200)

 

0

60

 

 

 

 

 

 

2

 

 

1

 

 

 

 

 

30 80;

F2 (200) max f2 (100) F1 (100) max 50

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

(200) F (0)

 

 

 

 

 

 

 

 

2

 

70 0

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

f2 (0) F1 (300)

 

0 110

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 100 F1 (200)

 

 

60

 

F2

f

 

50

 

 

(300) max

 

 

 

 

 

 

 

 

 

 

 

 

 

max

 

30

110;

 

 

 

(200) F (100)

 

 

 

f

 

 

70

 

 

 

 

2

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

f

2

(300) F (0)

 

90 0

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

24

 

 

f2 (0) F1 (400)

0 130

 

 

 

 

 

 

 

 

 

 

 

 

 

f2 (100) F1 (300)

50 110

 

F2

 

 

 

 

 

 

 

 

 

70 60

160;

 

 

(200) F (200)

(400) max f

 

max

 

 

2

 

 

 

1

 

 

90 30

 

 

f2 (300) F1 (100)

 

 

 

 

f2 (400) F1 (0)

 

140 0

 

 

 

 

 

 

 

 

f2 (0) F1 (500)

0 150

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f2 (100) F1 (400)

 

50 130

 

 

 

f

2

(200)

F (300)

 

70 110

 

F2

 

 

 

 

1

 

 

 

(500) max

 

 

 

 

 

 

 

max

90 60

180.

 

2 (300) F1 (200)

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f2 (400) F1 (100)

140 30

 

 

 

f

 

(500) F (0)

170 0

 

 

2

 

 

 

 

 

 

 

 

1

 

 

 

 

Третий шаг.

Поскольку по условию задачи все средства должны быть распределены полностью, то, используя полученные данные, определим максимальную прибыль F3 (500) при вложении 500 денежных

единиц во все три предприятия. По формуле (2.3.3) получаем:

 

 

f3 (0) F2 (500)

0 180

 

 

 

 

 

 

 

F2 (400)

 

 

 

 

 

 

f3 (100)

 

40

160

 

 

 

 

 

(200)

F (300)

80

110

 

F (500) F3

f

 

200.

(500) max

3

 

 

 

2

 

max

 

 

f3 (300) F2 (200)

90 80

 

 

 

 

 

 

 

F2 (100)

 

 

 

 

f3 (400)

120 50

 

 

 

f

3

(500) F (0)

160 0

 

 

 

 

 

 

2

 

 

 

 

Итак, при вложении 500 млн руб. в три предприятия суммарная максимальная прибыль составила 200 млн руб.

Второй этап: безусловная оптимизация.

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

25

прибыли. Проанализируем полученное решение в обратном порядке (от конца к началу).

Первый шаг.

Итак, максимальный прирост выпуска продукции всех трех предприятий составил 200 млн руб. Такую сумму прироста выпуска продукции предприятия получат при условии, что третьему пред-

приятию будет выделено X3* 100 млн руб. (см. подчеркнутую строку максимальной прибыли для F3 (500)) , а первым двум предприятиям будет выделено 400 млн руб. (X1* X2* 400 млн руб.).

Второй шаг.

Для двух первых предприятий максимальный прирост объема выпуска F2 (400) достигается, если второму предприятию выделить

X2* 100 млн руб. (см. подчеркнутую строку максимальной прибыли для F2 (400) ), а первому предприятию X1* 300 млн руб.

Итак, оптимальный план распределения инвестиций между тремя предприятиями X* = (300, 100, 100) обеспечивает максимальное увеличение объема выпуска продукции на всех трех предприятиях на сумму 200 млн руб.

Проверка: F (500) f1 (300) f2 (100) f3 (100) 110 50 40

200 млн руб.

2.4. Задача о замене оборудования

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

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

26

Всвязи с этим важно определить оптимальные сроки замены оборудования (оптимальную стратегию) в плановом периоде. В качестве критерия оптимальности можно рассматривать прибыль от использования этого оборудования.

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

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

Основной характеристикой оборудования является его возраст t. От возраста зависят:

– стоимость r(t) продукции, произведенной на оборудовании возрастом t лет за год;

– ежегодные затраты u(t) на эксплуатацию оборудования возрастом t лет;

– ликвидная стоимость s(t) оборудования возрастом t лет.

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

погружения Беллмана.

Рассмотрим годы планового периода от конца к началу. Обо-

значим через Fk(t) условную максимальную прибыль, получаемую от оборудования возрастом t лет за последние k лет планового периода. Возраст оборудования рассматривается в направлении естественного хода времени (например, t = 0 соответствует использованию нового оборудования).

Временные шаги процесса нумеруются в обратном порядке (например, при k = 1 рассматривается последний год планового периода, при k = 2 два последних года и т.д.).

Вэтой задаче систему составляет оборудование. Ее состояние характеризуется возрастом. Вектор управления – это решение о сохранении или замене оборудования в момент t = 0, 1, 2,…, T. Для нахождения оптимальной политики замен следует проанализировать, согласно принципу оптимальности, процесс от конца к началу.

27

Рассмотрим оборудование возрастом t лет на начало последнего года планового периода (k = 1, шаг первый).

В начале T-го года имеется две возможности:

сохранить оборудование на T-й год, тогда прибыль за последний год составит r(t) – u(t);

продать оборудование по ликвидной стоимости и купить новое, тогда прибыль за последний год планового периода будет равна s(t)–p + r(0) – u(0), где р – стоимость нового оборудования; r(0) – стоимость продукции, выпущенной на новом оборудовании за первый год его ввода в эксплуатацию; u(0) – текущие расходы на эксплуатацию в этом году.

Итак, для последнего года оптимальная политика и условномаксимальная прибыль F1(t) определяются из условия:

F1

 

r(t) u(t)

(сохранение);

(t) max

u(0) (замена).

 

t

s(t) p r(0)

Рассмотрим прибыль за два последних года (k = 2, шаг второй). Пусть к началу предпоследнего года будет принято решение о сохранении оборудования, тогда к концу года будет получена

прибыль r(t) – u(t).

На начало последнего года оборудование перейдет в состояние t+1, и при оптимальной политике в последнем году оно принесет прибыль, равную F1(t+1). Следовательно, общая условномаксимальная прибыль за два года составит r(t) – u(t) + F1(t + 1). Если же в начале предпоследнего года будет принято решение о замене оборудования, то прибыль за предпоследний год составит s(t) – p + r(0) – u(0). На начало последнего года оборудованию будет один год. Значит, общая прибыль за последние два года при оптимальнойполитикев последнемгоду составит s(t) – p + r(0) – u(0) + F1(1).

За два последние года оптимальная политика и условнооптимальная прибыль находятся из условия:

 

 

 

1

 

 

сохранение

 

;

F2

 

r(t) u(t) F (t 1)

 

 

(t) max

 

u(0)

F1 (1)

замена .

 

t

s(t) p r(0)

 

 

 

 

 

 

 

 

 

 

28

Аналогично определяется условно-оптимальная прибыль за три последних года, четыре и т.д. (на остальных шагах).

Для Fk (t) получаем:

 

 

 

 

k 1

(t

1)

 

сохранение

 

;

 

 

r(t) u(t) F

 

 

 

 

Fk (t) max

 

 

 

u(0)

Fk 1 (1)

замена .

 

t

s(t) p r(0)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

При k = T получим: max F = FT(t0), причем

 

 

 

 

 

 

 

r(t

) u(t

) F

 

(t

0

1)

 

 

сохранение

 

;

 

 

0

0

 

T 1

 

 

 

 

 

 

 

 

FT (t0 ) max

 

 

 

u(0)

FT 1

(1)

замена ,

t

s(t0 ) p r(0)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где t0 – заданный возраст оборудования.

Итак, мы определили, что условно-оптимальная прибыль за Т лет составит FT(t0).

Зная t0, из выражения для FT(t0) находим оптимальное управление в начале первого года, потом вытекающее из него оптимальное управление для второго года и т.д. (т.е. строим оптимальное управление на весь плановый период).

В результате получаем оптимальную политику замен оборудования на период Т, обеспечивающую максимальную прибыль от его использования.

Пример 4

Требуется разработать оптимальную политику замены оборудования, исходя из следующих данных:

– стоимость продукции r(t) (у.е.), произведенной на оборудо-

вании возрастом t лет за год (табл. 4);

– ежегодные затраты u(t) (у.е.) на эксплуатацию оборудования возрастом t лет (табл. 4);

остаточная стоимость оборудования s(t) (у.е.) (не зависит от возраста), s(t) 2;

стоимость нового оборудования p (у.е.) (не зависит от време-

ни), p = 15;

продолжительность планового периода Т = 7 лет;

возраст оборудования в начале планового периода t0 = 3 года.

29

Итак, s(t) = 2, p = 15, T = 7.

Таблица 4

Функции

 

 

 

Возраст оборудования t

 

 

0

1

2

 

3

4

5

6

7

 

 

r(t)

30

30

29

 

29

29

28

28

27

u(t)

10

10

12

 

13

14

15

16

17

Решение

Первый этап: условная оптимизация.

Запишем функциональное уравнение для F1(t) при числовых значениях нашего примера (F1(t) максимальная прибыль и оптимальная политика за последний год планового периода):

F1

 

r(t) u(t)

 

 

 

r(t) u(t)

 

 

(t) max

 

u(0)

max

30

10

 

 

t

s(t) p r(0)

t

2 15

 

 

 

 

r(t) u(t)

сохранение ;

 

 

 

 

 

max

 

 

замена .

 

 

(2.4.1)

 

 

t

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Запишем функциональное уравнение для Fk(t) при числовых значениях нашего примера:

 

 

 

 

k 1

(t 1)

 

сохранение

 

;

 

 

r(t) u(t)

F

 

 

(2.4.2)

Fk (t) max

7

Fk 1 (1)

 

 

 

замена .

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Используя выражения (2.4.1) и (2.4.2), будем последовательно вычислять значения условно-максимальной прибыли Fk(t) и записывать результаты в специальную таблицу (табл. 5).

Первую строку табл. 5 получим, придавая параметру t в равенстве (2.4.1) значения 0, 1, …, 7 и используя данные табл. 4.

При t = 0 имеем:

F1

 

r(0) u(0)

30 10

20 сохранение .

(0) max

max

 

t

7

7

 

30