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

Управление в социально-экономических системах

УДК 658.3 DOI: 10.14529/ctcr190206

ЗАДАЧИ МАКСИМИЗАЦИИ ОБЪЕМА ВЫПОЛНЕННЫХ РАБОТ В УПРАВЛЕНИИ ПРОЕКТАМИ

"10 i С.А. Баркалов1, В.Н. Бурков2, А.М. Ходунов1

1 Воронежский государственный технический университет, г. Воронеж, Россия,

2 Институт проблем управления им. В.А. Трапезникова РАН, г. Москва, Россия

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

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

Введение

Задачи календарного планирования (управления временем) являются важной функциональной областью управления проектами. Как правило, при заданной продолжительности проекта рассматриваются задачи минимизации количества требуемых ресурсов либо типа затрат (стоимость), либо типа мощности (оборудование) [1, 2]. В статье рассматриваются задачи календарного планирования, такие что задано и время реализации проекта, и ресурсы, выделенные для его реализации. Задача заключается в максимизации объекта выполненных за это время работ с учетом их ценности (взвешенный объем). Такие задачи возникают в двух случаях. В первом случае продолжительность реализации проекта (программы) жестко ограничена, но допускается его частичная реализация. Во втором случае проект (программа) выполняется по периодам и ставится задача максимизации ценности (взвешенного объема) выполненных работ в каждом периоде.

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

1. Постановка задачи

Рассмотрим проект из n работ. Каждая работа описывается зависимостью St (тг-) ее стоимости (затраты на выполнение) от времени и эффектом (ценностью) от ее выполнения. Задана продолжительность проекта Т и его стоимость S.

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

Рассмотрим различные случаи.

2. Независимые работы

Если работы независимы, то их можно выполнять параллельно. Если время Т задано, то минимальные затраты равны = (Т) , поскольку (т,) убывающая (невозрастающая) функция т, . Предполагаем, что (т, )< да, то есть работа может быть выполнена за время Т. Обозначим хг = 1, если работа / выполняется, х, = 0 в противном случае.

Задача 1. Определить х = {х,} , максимизирующие

А

при ограничениях

Е <Ь

Это классическая задача о ранце, эффективно решается при целочисленных параметрах методом дихотомического программирования [4, 5].

3. Последовательные работы

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

Задача 2. Определить т,,, = 1, к, минимизирующие

Бк (Т) = Е Ь (т,),

,=1

при ограничениях

Ет <Т.

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

(т,) = ГФ

г

V г У

где ф(») - выпуклая, непрерывно дифференцируемая функция, причем ф'(0)= 0. Применяя метод множителей Лагранжа, получаем условие оптимальности

Ф

г

V , У

= х,

где X - множитель Лагранжа. Отсюда следует, что оптимальное решение имеет вид

г

т, = —Т,

' Нк

к

где Нк =Е г . ,=1

Имеем

8к (Т) = Нк ф

( т Л

V Нк У

Для определения оптимального решения находим максимальное к, удовлетворяющее условию

Лк

Пусть, например, Лг- (тг) являются функциями типа Кобба - Дугласа

S, (т,) = г,

г

v ,

а > 0.

т

В этом случае Sk (T) = Ик - и из условия S^ (T) < S получаем Hk < iSTа j

V Hk J

1

а ll+а

б) линейный случай

Лг (т, ) = Ьг - Чг Тг , &г < Тг < Аг, ' = 1П •

Как и ранее, решаем задачу минимизации затрат на выполнение первых к работ за время Т. Описание алгоритма

1 шаг. Упорядочиваем первые к работ по возрастанию (неубыванию) <:/,:

дч<д12<...<д1к.

2 шаг. Обозначим Л, = А, — &. Определяем номер т, такой что

т+1 к т

у л; — Т >£ л^.

5=1 5=1 5=1

3 шаг. Полагаем

т. = & , 5 = 1, т .

гз гз

к т

т = у а —ул, — Т,

гт+1 г1 ¿—I гц '

5=1 5=1

т, = А , 5 > т +1.

г5 гз

Этот алгоритм является частным случаем алгоритма оптимизации сети по стоимости. Он дает оптимальное решение задачи.

Если при очередном к, Лк (Т) < Л, то увеличиваем к на 1 и повторяем алгоритм. Пример 1. Имеем проект из четырех работ, данные о которых приведены в табл. 1.

Таблица 1

i 1 2 3 4

b 40 20 25 15

q, 5 3 2 1

d 2 1 4 3

6 5 8 8

A, 4 4 4 5

Примем Т = 15, Л = 30.

Очевидно, что при к = 1 и 2 работы можно выполнять с максимальными продолжительно-стями т1 = 6 , т2= 5 , 51(15) = 10, Л2(15) = 15 < 30. Возьмем к = 3.

Упорядочение работ имеет вид

гз < г2 < Г1. Вычисляем

3

У А — Т = 19 —15 = 4 .

5=1

Имеем Лз = 4.

Поэтому сокращаем продолжительность работы 3 на 4 единицы, т3 = 4 53(15) = 10 + 5 + 17 = 22 < 30. Возьмем к = 4.

Упорядочение работ имеет вид

г4 < г3 < г2 <1.

Вычисляем

4

Е Ц^ - Т = 27 -15 = 12.

«=1

Имеем

Л4 = 5 < 12, т4 = 3, Л4+Л3 = 9 < 12, т3 = 4, Л4+Л3 +Л2 = 13 > 12 , т2 = 2, т=6,

54(15) = 10 + 14 + 17 + 12 = 53 > 30.

Следовательно, оптимальное решение состоит в выполнении первых трех работ. 4. Последовательно-параллельные проекты

Проект состоит их п последовательных цепочек (путей), а каждый путь состоит из т7 работ, , = 1, п .

Описание алгоритма

1 шаг. Для каждой последовательной цепочки (ПЦ) решаем задачу предыдущего пункта и получаем зависимость Бу минимальных затрат на выполнение первыху работ за время Т, у = 1, т , , = 1, п .

2 шаг. Обозначим ху = 1, если для 7-й ПЦ выбран вариант у, то есть выполняются первые у работ, а у - суммарный эффект от этих у работ.

Задача 3. Определить х = |хгу |, максимизирующие

А

и

при ограничениях

Е ху <1 '=l, п

ЕУ < Ь.

Задача при целочисленных параметрах эффективно решается методом дихотомического программирования [4]

Пример 2. Проект состоит их 4 ПЦ, каждая из которых состоит из 3 работ. Применяя алгоритм п. 3, получаем зависимости (Бу ), приведенные в табл. 2.

Величины эффектов (ценностей) а у приведены в табл. 3.

Таблица 2

Таблица 3

1 2

1 5 12

2 7 10

3 8 13

4 3 9

1 2

1 10 18

2 21 23

3 10 16

4 9 15

Возьмем структуру дихотомического представления задачи в виде рис. 1 [2].

Рис. 1

Примем Л = 20.

1 шаг. Рассматриваем ПЦ 1 и 2. Решение приведено в табл. 4. Результаты сведены в табл. 5.

Таблица 4 Таблица 5

2 10;23 15;33 -

1 7;21 12;31 19;39

0 0 5;10 12; 18

2 1 0 1 2

Вариант 0 1 2 3 4 5 6

Затраты 0 5 7 10 12 15 19

Эффект 0 10 21 23 31 33 39

Парето-доминируемые варианты удалены. 2 шаг. Рассматриваем ПЦ 3 и 4. Решение приведено в табл. 6. Результаты сведены в табл. 7. Объединенный подпроект II.

Таблица 6 Таблица 7

2 9;15 - -

1 3;9 11;19 -

0 0 8;10 13;16

4 3 0 1 2

Вариант 0 1 2 3 4

Затраты 0 3 8 9 11

Эффект 0 9 10 15 19

3 шаг. Рассматриваем объединенные проекты I и II. Решение приведено в табл. 8.

Таблица 8

6 19;39 - - - -

5 15;33 18;42 - - -

4 12;31 15;40 20;41 - -

3 10;23 13;32 18;33 - -

2 7;12 10;28 15;31 16;36 18;40

1 5;10 8;19 13;20 14;34 16;38

0 0 3;9 8;10 9;15 11;19

4 3 0 1 2 3 4

Оптимальное решение определяется клеткой (18;42). Ему соответствует вариант 5 объединенного проекта I и вариант 1 объединенного проекта II. Варианту 5 объединенного проекта I соответствует вариант 2 ПЦ 2 и вариант 1 ПЦ 1, то есть выполнение работы 1 ПЦ1 и работа 1, 2 ПЦ2. Варианту 1 объединенного проекта II соответствует вариант 0 ПЦ 3 и вариант 1 ПЦ 4, то есть невыполнение ПЦ3 и выполнение работы 1 ПЦ4.

Сетевой график - куст

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

Если продолжительность корневой работы равна тт+1, то продолжительности остальных работ равны Т -тт+1 .

Примем, что работа (т + 1) имеет несколько дискретных вариантов с затратами (Бт+1 у ) и продолжительностью тт+1у, у = 1, д . Задачу будем решать методом перебора всех д вариантов. При выбранном варианте у продолжительность т остальных работ равна Л = Т -тт+1 у . Задача

свелась к задаче с независимыми работами (задача 1). Решив ее, получаем зависимость максимального эффекта А от затрат 5. Если кустов несколько, то решаем задачу для каждого куста, получаем зависимость А (Ь) ) эффекта для 7-го куста от затрат, выделенных для него, 7 =1, р, где р - число кустов. Далее решаем задачу определения оптимальных величин Б, при общем ограничении 5. Эта задача аналогична задаче 2, рассмотренной выше.

5. Дискретные зависимости

Рассмотрим задачи, когда зависимости Б, (т,) являются дискретными.

Примем без ограничения общности, что каждая работа имеет т вариантов выполнения. Обозначим ту, sij , соответственно продолжительность и стоимость у-го варианта 7-й работы хуу = 1,

если на 7-й работе выбран вариант у, хуу = 0 - в противном случае.

Заметим, что

Т , <Т О <... <т

и г2 гт'

Рассмотрим задачу 1

Определим максимальный номер к варианта выполнения 7-й работы, такой что тк < Т .

Соответствующие затраты обозначим 57. Легко видеть, что постановка задачи максимизации эффекта (ценности) от выполненных задач полностью совпадает с задачей 1.

Рассмотрим задачу 2

Как и в непрерывном случае для каждого числа к выполняемых работ решаем задачу минимизации

У х^у

при ограничениях

У хг] = 1, г = 1, к,

]

к

У У^ < г •

г =1 ]

Минимальные затраты при выполнении к работ обозначим Лк(Т). Определим максимальное к, такое что Лк(Т) < Л. Эта величина к определяет оптимальное решение задачи.

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

Задача 4. Определить х = |х] |, максимизирующие (8) при ограничениях

У]] < т,

У х^] < Л,

У X] < 1, г = Щ•

]

Рассмотрим приближенный алгоритм решения задачи, в основе которого лежит метод дихотомического программирования и метод множителей Лагранжа.

Выпишем Лагранжиан

Г \

ЦЪх) = Уа]х]-Я У]] -Л ,

',] V ] У

где X - множитель Лагранжа.

Опишем идею алгоритма.

I этап. При фиксированном А решаем задачу (11), (13), (14) методом дихотомического программирования.

II этап. Определяем минимальное X, при котором для оптимального решения будет выполняться неравенство (12). Полученное при этом решение будет давать приближенное решение исходной задачи.

Лемма. Если для приближенного решения неравенство (12) выполняется как строгое равенство, то это решение является оптимальным.

Доказательство. Как известно, Лагранжиан дает верхнюю оценку для исходной задачи. Если неравенство (12) выполняется как строгое равенство, то эта оценка достижима, а следовательно, решение является оптимальным.

6. Сетевой график - дерево

Рассмотрим случай дискретных зависимостей, когда сетевой график является деревом (рис. 3) или лесом (лесом называется граф, каждая компонента которого является деревом). Примем, что каждая работа имеет только один вариант выполнения с затратами Л и продолжительностью х г ,г = 1, п .

Рис. 3

Описание алгоритма

I этап. Определяем ранние моменты окончания работ , применяя метод критического пути. Работы, для которых > Т, исключаем.

II этап. Берем произвольный куст, состоящий из m висячих вершин и корневой вершины (т + 1). Обозначим хг = 1, если вершина 7 входит в решение задачи, хг = 0 - в противном случае.

Задача 5. Определить х = {xiJ |, максимизирующие

А(х) = X X^ ,

г=1

при ограничении

т

X х ,

г=1

где У - параметр 0 < У < Б .

Задачу решаем методом дихотомического программирования.

т

В итоговую таблицу решения А(У) добавляем последний столбец с затратами Xsj

,=1

+1

(если эти затраты не больше 5) и эффектом X а, + ат+1 . В результате получаем параметрическую

,=1

зависимость А(У). Куст заменяем одной вершиной с зависимостью А(У). Далее берем следующий куст и повторяем процедуру и т. д.

Пример 3. Рассмотрим дерево рис. 3. Данные о продолжительности, затратах и эффектах приведены в табл. 9.

Таблица 9

т

7 1 2 3 4 5 6 7 8

5 3 6 4 7 3 5 6

6 2 7 4 3 8 5 7

а, 9 5 10 6 7 11 8 9

Примем Т = 17, Л = 16.

I этап. В квадратных скобках указаны поздние времена окончания работ. Удаляем вершину 8, так как ^ = 21 > 17. Получаем сетевой график (лес), состоящий из двух деревьев (рис. 4).

Рис. 4

II этап.

1 шаг. Берем куст с корневой вершиной 3. Решаем задачу максимизации 9 х + 5 х2

при ограничении

6х + 2х2< Y, 0 < У < 16.

Решение приведено в табл. 10.

Вариант I

Таблица 10

Вариант 0 1 2 3 4

Затраты 0 2 6 8 15

Эффект 0 5 9 14 24

В табл. 10 добавлен последний столбец с затратами я + s2+я3 = 15 и эффектом а + а2 +а3 = 24.

Заменим куст одной вершиной с номером I.

2 шаг. Берем куст с корневой вершиной 4. Сразу выписываем параметрическую зависимость Л4(У), поскольку она совпадает с табл. 10 шага 1 (добавление затрат работы 5 нарушает ограничение на затраты). Оставляем вершину I.

3 шаг. Рассматриваем куст с корневой вершиной 7. Решаем задачу максимизации 7 х + 11х6

при ограничении

3х + 8х6< Y , 0 < У < 16.

Решение приведено в табл. 11 .

Таблица 11

Вариант II

Вариант 0 1 2 3 4

Затраты 0 3 8 11 16

Эффект 0 7 11 18 26

Заменяем куст вершиной II.

4 шаг. Рассматриваем вершины I и II. Решение приведено в табл. 12.

Таблица 12

4 15;24 - - - -

3 8;14 11;21 16;25 - -

2 6;9 9;16 14;20 - -

1 2;5 5;12 10;16 13;23 -

0 0 3;7 8;11 11;18 16;26

II I 0 1 2 3 4

В клетках табл. 12 первое число - затраты, второе - эффект. Оптимальное решение определяется клеткой (16;26). Ему соответствует выполнение работ 1, 2, 3, 4 с затратами 16 и эффектом 26.

Литература

1. Математические основы управления проектами: учеб. пособие / С.А. Баркалов, В.И. Воропаев, Г.И. Секлетова и др.; под ред. В.Н. Буркова. - М.: Высшая школа, 2005. - 421 с.

2. Сетевые модели и задачи управления / В.Н. Бурков, Б.Д. Ланда, С.Е. Ловецкий и др. - М.: Советское радио, 1967. - 144 с.

3. Баркалов, С.А. Задачи календарного планирования работ с переменными объемами / С.А. Баркалов, В.Н. Бурков, А.М. Ходунов // Экономика и менеджмент систем управления. -2018. - № 4 (30). - С. 76-83.

4. Буркова, И.В. Метод сетевого программирования в задаче целочисленного линейного программирования / И.В. Буркова, А.Р. Кашенков // Теория активных систем - 2011. Труды международной научно-практической конференции. - М. : Институт проблем управления РАН, 2011. -С. 25-26.

5. Буркова, И.В. Метод сетевого программирования в задачах нелинейной оптимизации / И.В. Буркова // Автоматика и телемеханика. - 2009. - № 10. - С. 15-21.

Баркалов Сергей Алексеевич, д-р техн. наук, заведующий кафедрой управления строительством, Воронежский государственный технический университет, г. Воронеж; Ьагка1оу@ vgasu.vrn.ru.

Бурков Владимир Николаевич, д-р техн. наук, профессор, заведующий лабораторией активных систем, Институт проблем управления им. В.А. Трапезникова РАН, г. Москва; v1ab17@bk.ru.

Ходунов Антон Михайлович, аспирант кафедры управления строительством, Воронежский государственный технический университет, г. Воронеж.

Поступила в редакцию 5 марта 2019 г

DOI: 10.14529/ctcr190206

MAXIMIZATION PROBLEMS THE VOLUME OF PERFORMED WORKS IN PROJECT MANAGEMENT

S.A. Barkalov1, barkalov@vgasu.vrn.ru, V.N. Burkov2, vlab17@bk.ru, A.M. Khodunov1

1 Voronezh State Technical University, Voronezh, Russian Federation,

2 V.A. Trapeznikov Institute of Control Sciences of Russian Academy of Sciences, Moscow, Russian Federation

Scheduling tasks (time management) are an important functional area of project management. As a rule, for a given project duration, the tasks of minimizing the amount of required resources, either of the type of costs (cost) or type of capacity (equipment), are considered. Such tasks arise in two cases. In the first case, the duration of the project (program) is strictly limited, but its partial implementation is allowed. In the second case, the project (program) is carried out by periods and the task of maximizing the value (weighted volume) of work performed in each period is set. The paper considers the tasks of forming the calendar work plans of a project (or program projects) by the criterion of maximizing the total weighted volume of work performed, with restrictions on the duration of the project (program) and its cost. In this case, the dependence of the works cost on their duration are given. The cases of independent works, consecutive works, a project consisting of several chains of consecutive works, a project described by a network schedule with ordered events are considered. Examples of solving the problem for different cases are presented.

Keywords: work value, schedule, work time dependencies, costs, network with orderly works.

References

1. Barkalov S.A., Voropayev V.I., Sekletova G.I. et al.; Burkov V.N. (Ed.). Matematicheskie osnovy upravleniya proektami [Mathematical Foundations of Project Management]. Moscow, High School Publ., 2005. 421 p.

2. Burkov V.N., Landa B.D., Lovetskiy S.E. et al. Setevye modeli i zadachi upravleniya [Network Models and Control Problems]. Moscow, Soviet radio Publ., 1967. 144 p.

3. Barkalov S.A., Burkov V.N., Khodunov A.M. [Tasks Scheduling Work with Variable Volumes]. Economics and Management of Control Systems, 2018, no. 4

4. Burkova I.V. Kashenkov A.R. [The Method of Network Programming in the Problem of IntegerLinear Programming]. Teoriya aktivnykh sistem - 2011. Trudy mezhdunarodnoy nauchno-prakticheskoy konferentsii [The Theory of Active Systems - 2011. Proceedings of the International Scientific and Practical Conference]. Moscow, Institute of Control Sciences, Russian Academy of Sciences, pp. 25-26.

5. Burkova I.V. [The Method of Network Programming in Problems of Nonlinear Optimization].

Automation and Telemechanics, 2009, no. 10, pp. 15-21.

Received 5 March 2019

ОБРАЗЕЦ ЦИТИРОВАНИЯ

Баркалов, С.А. Задачи максимизации объема выполненных работ в управлении проектами / С.А. Бар-калов, В.Н. Бурков, А.М. Ходунов // Вестник ЮУрГУ. Серия «Компьютерные технологии, управление, радиоэлектроника». - 2019. - Т. 19, № 2. - С. 66-76. DOI: 10.14529/ctcr190206

FOR CITATION

Barkalov S.A., Burkov V.N., Khodunov A.M. Maximization Problems the Volume of Performed Works in Project Management. Bulletin of the South Ural State University. Ser. Computer Technologies, Automatic Control, Radio Electronics, 2019, vol. 19, no. 2, pp. 66-76. (in Russ.) DOI: 10.14529/ctcr190206