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

УДК 519.854.3

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

В.В. Зубарев

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

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

Введение

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

Задача планирования процесса реализации

Пусть имеется портфель из N проектов, рекомендательные зависимости между которыми описаны сетевым графиком. Вершины сетевого графика соответствуют проектам портфеля. Для каждого проекта задана его базовая продолжительность ^ . Дуги соответствуют рекомендательным зависимостям между проектами. Для каждой дуги задан параметр а^ > 0, который определяет увели-

Зубарев Виктор Владиславович - ИПУ РАН, канд. техн. наук, доцент, тел. (495) 334-79-00

чение продолжительности проекта j, если зависимость (i, j) нарушается, т.е. если проект j начат до окончания проекта i. Требуется определить календарный план с минимальной общей продолжительностью.

Алгоритм 1.

Шаг 1. Присваиваем всем проектам начальные индексы j = ti, i = 1, N .

Общий шаг. Рассматриваем каждый проект i . Обозначим через Qi - множество проектов, предшествующих проекту i, т.е. в сетевом графике существует дуга (j, i) для j е Qi. Обозначим через - число дуг, заходящих в вершину i (число элементов множества Qi ). Рассмотрим все подмножества из mt элементов (их число равно 2т‘). Для каждого подмножества, содержащего вершины R с Qi, вычисляем

T (r, ) = t + max jj + Z aji.

JeR j&Rt

Определяем новый индекс вершины i

j = min Tj (r, ).

Ri

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

j ^ т, + Z aß,

jeQi

а минимальное приращение - снизу величиной mini min jj ,min aH I.

I j j ^ j 1 j

Теорема 1. Установившиеся значения индексов j определяют минимальные ранние сроки завершения проектов.

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

имеет контуров. Рассчитывая его известными алгоритмами (с учетом того, что зависимости, которые не выполняются, приводят к увеличению продолжительностей проектов) мы получим те же самые установившиеся индексы. Это доказывает теорему.

Задача формирования портфеля

Пусть имеется N проектов, для каждого из которых заданы параметры г > 0 (эффект) и ti > 0 (базовое время выполнения). Также задан набор рекомендательных зависимостей между проектами {(, ])} с параметрами ау > 0 . ау определяет увеличение продолжительности проекта у, если зависимость (, ]) нарушается. Эти условия могут быть описаны сетевым графиком (пример - рис. 1, обозначения - рис. 2).

VG*c G: T(g*)< T(G) GG\ p

Рис. 1

Рис. 2

rj j

Требуется определить набор проектов с максимальной суммой эффектов, при условии, что общее время их выполнения не превышает T. Т.о. задача имеет следующий вид:

N

2 Xj * rt ^ max,

i=i

max xt * т < T, ,

¿=1, N

т, = t, + max x, *

M, N

tj = tj +

max x *y,j *Ti,

i=1, N £ з

Z ( - x, * y,j )* a,j , i=1

x. = {0; 1}, i = 1N,

yj ={0;1}, i = 1N, j = 1N,

a, > 0, i = 1, N, г, > 0, t: > 0, i = 1, N.

4 3

Утверждение 1. Пусть условия задачи задаются сетевым графиком О , в котором^ отсутствуют контуры. Для всех его вершин рі є О, і = 1, N алгоритмом 1 определены минимальные сроки завершения Аі. Т(•) обозначает минимальное время завершения всех проектов сетев^г^ графика. Тогда

С G : 1'G )< T(G) G С G \ pv , где

v : Av = max At.

г.pj gG

Определим операции с сетевым графиком G , уменьшающие минимальное время завершения всех проектов. Рассмотрим pv : /lv = max At. Оче-

i: Pj gG

видно, что T(G)=Av. Обозначим через Qv множество индексов вершин, предшествующих вершине pv , т.е. Vj e Qv3(j,v)e G . Заметим, что исключение вершин из Qv не может уменьшить величину Av, т.к. в противном случае алгоритм 1 определил бы меньшее время завершения для pv , чем Av . Следовательно, величину Av могло бы уменьшить только уменьшение некоторых А/, для j e Qv . Далее последовательно применим аналогичные рассуждения ко всем p/ : j e Qv , а также к вершинам,

им предшествующим. Т. к. в исходном сетевом графике отсутствуют контуры, на определенном шаге будут рассматриваться такие вершины pj (j e I) для которых Qt = 0, т.о. исключение этих вершин также не может уменьшить Av . Следовательно, утверждение 1 доказано.

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

Алгоритм 2.

Шаг j:

Рассматривается сетевой график G1. С помощью алгоритма 1 определяются А/ , где

j : pj e G1. Если T (g1 )< T , то вершины, входящие

в G1, - решение задачи. Иначе: G’+1 = G’ \ pv(), где

v(j): Av(i) = max AJ .

j:pj gG1

Утверждение 2.

Алгоритм 2 дает оптимальное решение задачи в случае, если связи между проектами заданы сетным графиком без контуров. ^

Справедливость утверждения следует из тоРо,^что алгоритм 2 представляй &бой последовательное исключение из исходного сетевого графика вершин, не входящих в оптимальное решение задачи. ОтсуГЬтвие в оптимальном решении задачи вершин pv(f) следует из определения pv(f) и утверждения 1. Q

^ ^Пример

Рассмотри^ задачу, условие которой описывается сетевым графиком без контуров, изображенном на рис. 1 с ограничением T = 13 . В случае отсутствия^ко^туров в рассматриваемом графе число шагов алгоритма 1 можно сократить, если рассматривать вершины по порядку, предварительно перенумеровав их таким образом, чтобы для любой дуги (j, j) выполнялась бы j < j . Соответствую-

3 3 10 с

щим образом перенумерованный граф изображен на рис. 3.

Рис. 3

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

Шат № вершины Входящие дуги А Нарушаемые зависимости

1 1 4

2 2 tu) 7

3 3

4 4 (3:4) 12

5 5 (и) 7

6 6 fa), (4,6) 15

7 7 (4Л): (б.?) 21

S S (2,8) (5,8) (6,8) 14

Таким образом, минимальное время завершения всех проектов равно 21 (нарушаются две зависимости: (2,3) (6,8)), это превышает ограниче-

ние Т = 13 . Далее по алгоритму 2 необходимо исключить те проекты, которые не входят в оптимальное решение задачи. Такими проектами являются проекты 6, 7 и 8 с минимальными временами завершения 15, 21 и 14 соответственно.

На рис. 4 изображен план-график выполнения всех проектов с минимальными сроками завершения. Пунктиром отделены проекты, не входящие в оптимальное решение.

(5) РиС.4|

Сумма эффектов оставшихся проектов равна 21. Это является ^максимумом целевой функции при 9йа1занном ограничении.

Заключенйе ^

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

4 их типа (т.н. «пирамидальное ограничение») [2] -качество, время, стоимость, стратегия. Задачи, учитывающие несколько типов ограничений, являются более сложными и требуют других методов решения. Например, в [1] описывается способ решения задачи построения календарного плана проекта с учетом стоимости работ и времени их выполнения на основе метода дихотомического программирования.

Литература

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

2. Ципес Г.Л., Товб А.С. Проекты и управление проектами в современной компании: учеб. пособие [Под общей редакцией А.С. Товба, Г.Л. Ципеса]. - М.: ЗАО «Олимп-Бизнес», 2009. - 480 с.

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

PROBLEM OF THE CHOICE OF THE OPTIMUM PORTFOLIO OF INTERDEPENDENT PROJECTS WITH RESTRICTION ON TIME

V.V. Zubarev

Problems of formation and planning of process of realization of a portfolio of the interconnected projects with one type of restrictions are considered. Corresponding algorithms of the decision are resulted

Key words: discrete optimization, management of a portfolio of projects, management of projects