Оптимальное распределение ресурсов с использованием динамического программирования
В. М. Костюкевич1, Г. А. Давыдков, И. Г. Хотина Петрозаводский государственный университет
АННОТАЦИЯ
Развитие средств вычислительной техники и программного обеспечения предъявляет высокие требования к современному выпускнику вуза в области решения любых инженерных задач эффективными методами, реализуемыми в практической деятельности. В качестве иллюстрации в статье приводится пример оптимизации распределения менеджеров по леспромхозам на основе методов динамического программирования.
Ключевые слова: оптимизация, динамическое программирование, оптимальное распределение ресурсов.
SUMMARY
The article is devoted to application modern methods of dynamic programming for optimal distribution of human resources.
Keywords: optimization, dynamic programming, optimal distribution of resources.
ПОСТАНОВКА ЗАДАЧИ
В общем виде задачи оптимального распределения ресурсов могут быть описаны следующим образом. Имеется некоторое количество ресурсов (материальные, трудовые, финансовые), которые необходимо распределить между различными объектами их использования по отдельным промежуткам планового периода так, чтобы получить максимальную суммарную эффективность от выбранного способа распределения. Показателем эффективности может служить, например, прибыль, себестоимость, суммарные затраты и т. д.
повышается в к раз, т. е. представляет собой какую-то функцию £(и). Все функции £(п), i = 1, 2, 3 заданы (табл. 1). Как управление холдинга должно распределить менеджеров по леспромхозам, чтобы в итоге максимально повысить эффективности работы леспромхозов?
Таблица 1
Функция эффективности £(и)
u f1(u) f2(u) f3(u)
1 1.25 1.21 1.18
2 1.08 1.09 1.11
3 - - -
4 - - -
Холдинг может готовить и посылать в леспромхоз 1 менеджера в год, причем по условию задачи после 4 лет каждый леспромхоз должен получить не менее 1 менеджера. Таким образом, задача разбивается на 4 шага.
Управляемая система в данном случае - менеджеры, которые распределяются. Состояние системы перед каждым шагом характеризуется одним числом - количество еще нераспределенных менеджеров. Шаговым управлением является распределение менеджера и1, и2, ... , и4, в один из 3 леспромхозов. Требуется найти оптимальное управление, т. е. такую последовательность чисел и1 , и2 , ..., и4 , которая дает максимальное повышение эффективности работы леспромхозов в целом, что эквивалентно следующему выражению:
W= Wl+W2+...+W4 ^ тах. РЕШЕНИЕ
Начнем оптимизацию с 4 шага. Очевидно, что необходимо последнего менеджера передать одному из 3 леспромхозов. Поэтому возможны 3 варианта и условное оптимальное управление на 4 шаге (рис. 4).
и4^) = 8,
а условный оптимальный выигрыш Ш4(8) = £4(8).
Рассмотрим следующий пример: распределение холдингом специалистов-менеджеров по леспромхозам
Холдинг, включающий целлюлозно-бумажный комбинат и 3 леспромхоза, для повышения эффективности работы леспромхозов решает направить туда 4 менеджеров. Эффективность работы леспромхозов при поступлении в него менеджеров в количестве и
1.18 /
210
211
121
Л "9 К" W
1.21 1.08 1.11 1.25 1.18 1.25 1.21 !_ jjs \ \ V
201
111
021
120
012
102
1 Авторы - соответственно доценты кафедры технологии металлов и ремонта и тяговых машин, инженер кафедры транспорта леса и геодезии © Костюкевич В. М., Давыдков Г. А., Хотина И. Г. 2008
Рис. 1. Условный оптимальный выигрыш на 4 шаге
Задаваясь целой гаммой значений и = 1, 2 по табл. 1 (функция эффективности £(и)), для каждого значения
50
Труды лесоинженерного факультета ПетрГУ
8 определим щ^) и W4(s). После 4 шага возможны 3 варианта:
1) леспромхоз имеет 2 менеджеров, 2 и 3 леспромхозы имеют по 1 менеджеру | 2 1 1 1,
2) леспромхоз имеет 2 менеджеров, 1 и 3 леспромхозы имеют по 1 менеджеру | 1 2 1 1,
3) леспромхоз имеет 2 менеджеров, 1 и 2 леспромхозы имеют по 1 менеджеру | 1 1 2 1
Рассмотрим 1 вариант | 2 1 1 1.
В это состояние можно перейти из 3 предыдущих:
I 2 1 0 I ^(2,1,0 ^ 2,1,1); W4l(fз(1))=1,18;
12 0 1 I N42(2,0,1 ^ 2,1,1); W42(f2(1))=1,21;
11111 N43(1,1,1 ^ 2,1,1); W4з(fl(2))=1,0^8;
Рассмотрим 2 вариант | 1 2 1 1.
В это состояние можно перейти из 3 предыдущих:
10 2 1 I N41(0,2,1 ^ 1,2,1); W4l(fl(1))=1,25;
112 0 1 N42(1,2,0 ^ 1,2,1); W42(fз(1))=1,18;
11111 N43(1,1,1 ^ 1,2,1); W4з(f2(2))=ll09 .
Рассмотрим 3 вариант | 1 1 2 !.
В это состояние можно перейти из 3 предыдущих:
| 0 1 2 | N41(0,1,2 ^ 1,1,2); W4l(fl(1))=1,25;
| 1 0 2 | N42(1,0,2 ^ 1,1,2); W42(f2(1))=1,21;
| I I I | N43(1,1,1 ^ 1,1,2); W4з(fз(2))=1,11.
Из состояния | 1 1 1 1 оптимальным из 3 возможных шагов будет последний - передача менеджера в 3 леспромхоз. Поэтому 2 других варианта мы исключаем из рассмотрения.
Аналогично рассматриваем 3 шаг.
Оптимизируем 3 шаг, используя соотношение
Wi (8) = тах * W1+1(s-N)}
На 3 шаге возможны 7 вариантов, соответствующих распределению 3 менеджеров в 3 леспромхоза (рис. 2).
Рассмотрим 1 вариант | 2 1 0 1.
Рис. 2. Условный оптимальный выигрыш на 3 шаге В это состояние можно перейти из 2 предыдущих: 1110 1 N31(1,1,0 ^ 2,1,0);
W31(f1(2) ^(1)) = 1,08*1.18 = 1.2744;
I 2 0 0 | N32(2,0,0 ^ 2,1,0);
W32(f2(1) Ъ(1)) = 1,21*1.18 = 1.4278.
Рассмотрим 2 вариант | 2 0 1 1.
В это состояние можно перейти из 2 предыдущих: I 1 0 1 | N31(1,0,1 ^ 2,0,1);
W31(f3(1) ^(1)) = 1,18*1.21 = 1. 4278;
12 0 0 | N32(2,0,0 ^ 2,0,1);
W32(f1(2) Г2(1)) = 1,08*1.21 = 1.3068.
Аналогично рассчитываем остальные варианты (рис.
3 и 4).
3 вариант:
N»(1,1,0 ^ 1,1,1); W31(f3(1) f3(2)) = 1,18*1.11 = 1.3098 N,2(1,0,1 ^ 1,1,1); W32(f2(1) f3(2)) = 1,21*1.11 = 1.3431 N,2(0,1,1 ^ 1,1,1); W32(f1(1) f3(2)) = 1,25*1.11 = 1.3875
4 вариант:
N31(0,1,1 ^ 0,2,1); W31(f2(2) f1(1)) = 1,09*1.25 = 1.3625 N^(0,2,0 ^ 0,2,1); W32(f3(1) f1(1)) = 1,18*1.25 = 1.475
5 вариант:
N31(1,1,0 ^ 1,2,0); W31(f2(2) f3(1)) = 1,09*1.18 = 1.2862 N32(0,2,0 ^ 1,2,0); W32(f1(1) Ъ(1)) = 1,25*1.18 = 1.475
6 вариант:
N31(0,1,1 ^ 0,1,2); W31(f3(2) f1(1)) = 1,11*1.25 = 1.3875 N^(0,0,2 ^ 0,1,2); W32(f2(1) f1(1)) = 1,21*1.25 = 1.5125
7 вариант:
N„(1,0,1 ^ 1,0,2); W31(f3(2) f2(1)) = 1,11*1.21= 1.3431; N2(0,0,2 ^ 1,0,2); W32(f1(1) Г2(1)) = 1,25*1.21 = 1.5125
Неоптимальные решения отметим на рисунках пунктирной линией и в дальнейшем не будем их рассматривать.
Рис. 3. Условный оптимальный выигрыш на 2 шаге
Таблица 2
8 1 =4 8 1=3
N4(8) и3(Ю Wз(s)
0,0,1 2,1,0 1,18 1,0,0 0,1,0 1,1,0 2,0,0 1,2744 1,4278
0,1,0 2,0,1 1,21 1,0,0 0,0,1 1,0,1 2,0,0 1,3068 1,4278
0,0,1 1,1,1 1,11 1,0,0 0,1,0 0,0,1 0,1,1 1,0,1 1,1,0 1,3875 1,3431 1,3098
0,1,0 1,1,1 1,09
1,0,0 1,1,1 1,08
1,0,0 0,2,1 1,25 0,1,0 0,0,1 0,1,1 0,2,0 1,3625 1,475
0,0,1 1,2,0 1,18 0,1,0 1,0,0 1,1,0 0,2,0 1,2862 1,475
1,0,0 0,1,2 1,25 0,0,1 0,1,0 0,0,1 0,1,1 0,0,2 0,1,1 1,3875 1,5125 1,3875
0,1,0 1,0,2 1,21 0,0,1 1,0,0 1,0,1 0,0,2 1,3431 1,5125
1.310
Аналогично рассмотрим первый шаг
..▼из,
,1.11
125 1.21 \ /т 7
1.388 1 388 1.51 1.51
ТТ0 0ТТ 002
ix /1\ /
^Т.6^ 1.637 1.679 1.679
юш 10пТ
N. | И
198 Ч 1.981 1 981 VI_/
000
Рис. 4. Условный оптимальный выигрыш на 1 шаге
ВЫВОДЫ
В итоге мы пришли к решению задачи.
Как видно из рисунка 4, максимально повысить эффективность лесозаготовительных предприятий можно в 1.981 раза. Причем первичное распределение - в какой именно леспромхоз будет направлен 1 менеджер, значения не имеет. Но все последующие шаги однозначно определены и оптимальное распределение менеджеров в финале таково - в 1 и 2 леспромхоз по одному и в 3 два менеджера.
8 1=2 8 1= 1
и2(Ю ^^2(8) "тОО Wl(s)
1,0,0 1,0,0 1,542
1,0,0 1,0,0 1,542
0,0,1 0,1,0 1,6373 0,1,0 0,0,0 1,9811
0,1,0 0,0,1 1,6789 0,0,1 0,0,0 1,9811
0,0,1 1,0,0 1,542
1,0,0 0,0,1 1,6335
0,1,0 1,0,0 1,5849 1,0,0 0,0,0 1,9811
1,0,0 0,1,0 1,6373 0,1,0 0,0,0 1,9811
0,1,0 0,1,0 1,6078
0,1,0 0,1,0 1,6078
0,1,0 0,0,1 1,6789 0,0,1 0,0,0 1,9811
0,0,1 0,0,1 1,6789 0,0,1 0,0,0 1,9811
0,0,1 0,1,0 1,6373 0,1,0 0,0,0 1,9811
0,0,1 1,0,0 1,542
1,0,0 0,0,1 1,6335
0,0,1 0,0,1 1,6789 0,0,1 0,0,0 1,9811
Цветом в таблице 2 выделены заранее неоптимальные решения, которые в ходе решения задачи отбрасываются.
СПИСОК ЛИТЕРАТУРЫ
1. Герасимов Ю. Ю. Математические методы и модели в расчетах на ЭВМ: применение в лесоуправле-нии и экологии: Учебник для лесных вузов / Ю. Ю. Герасимов, В. К. Хлюстов. М.: МГУЛ, 2001. 260 с.
Полученные числовые данные занесем в таблицу 2.