Научная статья на тему 'Об одной задаче календарного планирования со складируемыми ресурсами и критерием чистой приведенной прибыли'

Об одной задаче календарного планирования со складируемыми ресурсами и критерием чистой приведенной прибыли Текст научной статьи по специальности «Математика»

CC BY
71
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Об одной задаче календарного планирования со складируемыми ресурсами и критерием чистой приведенной прибыли»

УДК 519.854 Т.А. Щербинина

Омский государственный университет им. Ф.М. Достоевского, г. Омск

ОБ ОДНОЙ ЗАДАЧЕ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ СО СКЛАДИРУЕМЫМИ РЕСУРСАМИ И КРИТЕРИЕМ ЧИСТОЙ ПРИВЕДЕННОЙ ПРИБЫЛИ

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

Задачам календарного планирования проектов с учетом ограничений на ресурсы посвящено множество работ [4, 7]. Если ресурсы возобновимые, то задача календарного планирования проектов с ограниченными ресурсами ЫР-трудна в сильном смысле [5]. Для задачи с ресурсами складируемого типа и критерием общего времени завершения всего проекта предложен полиномиальный алгоритм [1]. В работе [6] доказано, что задача календарного плани-

126

рования со складируемыми ресурсами и критерием общего времени завершения работ проекта при наличии работ с отрицательными потребностями является ЫР-трудной в сильном смысле. В работе [2] показано, что задача с критерием чистой приведенной прибыли ЫР-трудна в сильном смысле даже при отсутствии реинвестирования дохода.

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

который состоит из множества взаимосвязанных работ V = {1,2,... Ы}. Взаимосвязь между работами задается отношениями предшествования вида I ^ ] , где работа ] не может начать свое выполнение до завершения работы I.

Данная структура может быть представлена ориентированным ацикличным графом

О = (V, Е),

где V - множество вершин, а

Е = {(¿,_/) | ¿,] е V, / ^ j} - множество дуг. При выполнении работ используется один тип

складируемого ресурса. На период планирования Т на начало интервала времени р, 1+1) имеется qt единиц складируемого ресурса, где ¿=0,1,...,Т-1. Каждая работаj еVхарактеризуется длительностью pJ е2+. Работа как потребляет финансовые ресурсы, так и генерирует их.

Обозначим через е/п) - платеж работы J в момент времени п, п=0,1,..., pJ. Причем, если е/п) <0, то в момент п для выполнения работы требуются соответствующие капиталовложения, а если е/п) >0, то выполнение данной работы приносит доход. Последовательность величин ( еJ(0), е/1),..., еJ(pJ)) называется потоком поступлений работы j е V. Пусть NPVj

е

---

=I '

- чистая приведенная прибыль работы ] е V, г0

цена капитала на рынке, или

t=0 (1 + Г0 У

базовая процентная ставка. Если NPVj > 0, то работа называется прибыльной. Предполагается, что все работы выполняются непрерывно.

Требуется определить допустимое расписание выполнения работ проекта 8=^-\_, ¿2,..., ¿Ы), с учетом технологического порядка и ограничений на ресурсы, при котором чистая приведенная прибыль проекта максимальна:

ЫР1'(8) = I ^ тах,

при условии:

j е V

(1 + го У.1

cj (х - sj) t=0 о

1 (1 + г )t

+I I

t=0 ]'еЫг (1 + Г0 )t > 0, t = 0,1,_, Т;

+ Р1 < s j,

(л /)еЕ;

х+1).

Где

s j е {0,1, ,Т }

Ых = { е V | s j < / < s j + р j } - множество работ, выполняемых в интервале

*

*

t

Т

О Убыточные работы ф Прибыльные работы быльных работ.

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

Введем основные понятия. Разобьем частичный порядок выполнения работ на непере-секающиеся цепи. Пусть получилось К цепей. Через ¡к обозначим число работ в цепи к, а через jl , j2 , ..., jik - последовательность работ этой цепи, к=1,2, ... ,К. Обозначим через В7к

7

сумму длительностей первых ¡ работ цепи к, то есть

В7к

I

а через Вк - суммарную

I=1 1

длительность работ цепи к, к=1,2,...,К. Текущее состояние выполнения работ цепи к будем задавать величиной хк. Если хк = 0, то работы этой цепи еще не начали свое выполнение. Если хк = Вк, то все работы этой цепи уже завершены. Промежуточное значение хк означает, что общее время выполнения работ этой цепи, без учета простоев, составило хк и требуется еще Вк - хк единиц времени для их завершения. Вектор х=(х1,х2,.,хк) будем называть состоянием.

Определим основные элементы алгоритма динамического программирования: множество всех состояний Х=(х=(х1,х2,.,хК)| хк е {0,1,...,£к}, к=1,2,...,К}, начальное состояние 0=(0,0,...,0), конечное состояние В=(В1,В2,.,ВК). Переход между состояниями задается булевыми векторами

5 =( 51,52,.,5к). Процесс перехода соответствует одновременному выполнению в единичном временном интервале работ тех цепей, для которых 5к = 1. При этом переход из состояния х в состояние х + 5 называется допустимым, если сохранено отношение предшествования между работами и выполнены соответствующие ресурсные ограничения. Обозначим множество допустимых управлений, приводящих в состояние х, через Дх.

Для задачи календарного планирования с критерием чистой приведенной прибыли схема требует модификации, так как в этом случае стоимость перехода х ^ х + 5 зависит не только от состояния х, но и от времени, когда это состояние достигается. Поэтому для выписывания рекуррентного соотношения приходится расширять множество состояний. Расширенным состоянием будем называть вектор (Х,х1,х2,.,х„), который означает, что состояние х было достигнуто в момент времени Х. Через Щ, х) обозначим оптимальное значение целевой функции для частичного расписания, соответствующего состоянию (X, х). Через Б(Х, х) обозначим множество работ, начавших свое выполнение в момент времени X.

Получаем следующее рекуррентное соотношение:

Ц0, 0)=0; Щ, х)=

х

тах

Г

\ — 1, х — ^) + I

ЖУ]

\

|, х є X \ {0}, t = 1,2,...,Т.

бєА

Іє^ (—1,х)(1 + г0 У—1 1

128

Трудоемкость алгоритма составляет 0(2К ТВ1В2-. -Вк).

На практике довольно часто встречаются проекты работ, в которых сначала выполняются убыточные работы, а после них - прибыльные работы. Пример данного проекта представлен на рисунке.

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

t ^ ран ^ где ран —

граммирования только для прибыльных работ, причем

[_ V

є

ранний

момент начала выполнения работы j е V, без учета ограничений на ресурсы. После того как будет определено расписание прибыльных работ с помощью алгоритма динамического программирования, расписание убыточных работ найдем алгоритмом нахождения ранних моментов начала выполнения работ.

Библиографический список

1. Гимади, Э. Х. Полиномиальная разрешимость задач календарного планирования со складируемыми ресурсами и директивными сроками / Э. Х. Гимади, В. В. Залюбовский, С. В. Севастьянов // Дискретный анализ и исследование операций. -Новосибирск, 2000. - Сер. 2. -Т. 7, №.1. - С. 9-34.

2. Сервах, В. В. О сложности одной задачи календарного планирования со складируемыми ресурсами / В. В. Сервах, Т. А. Щербинина // Вестник НГУ. Сер. Математика, механика, информатика. - 2008. - Т. 8, вып. 3. - C. 105-111.

3. Сервах, В. В. Алгоритмы решения задач календарного планирования проектов с различными критериями / В. В. Сервах, Т. А. Щербинина // XIV Байкальская международная школа-семинар «Методы оптимизации и их приложения». - Иркутск, 2008. - С. 506-512.

4. Resource-constrained project scheduling: Notation, classification, models, and methods / Brucker, P., Drexl A., Mohring R. [et al.] // European Journal of Operational Research. - 1999. - V. 112. - P.3-41.

5. Garey, M. R. Complexity result for multiprocessor scheduling under resource constraints / Garey, M. R., Johnson D. S. // SIAM J. Comput. - 1975. - V. 4, №. 4. - P. 397-411.

6. Gimadi, E. On solvability of the project scheduling problem with accumulative resources of an arbitrary sign / Gimadi, E., Sevastianov S. // Operations research Proceedings, Springer. -2002. - P. 241-246.

7. Herroelen, W.S. Project network models with discounted cash flows a guided tour through recent developments / Herroelen, W. S., Van Dommelen P., Demeulemeester E. L. // European Journal of Operational Research. - 1997. - V.100. - P. 97-121.

i Надоели баннеры? Вы всегда можете отключить рекламу.