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

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

CC BY
164
43
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНВЕСТИЦИОННЫЙ ПРОЕКТ / ТЕОРИЯ РАСПИСАНИЙ / КАЛЕНДАРНОЕ ПЛАНИРОВАНИЕ / АНАЛИЗ СЛОЖНОСТИ / NP-ПОЛНОТА / ТЕОРИЯ ГРАФОВ

Аннотация научной статьи по экономике и бизнесу, автор научной работы — Олейник Т. Н.

Рассматривается дискретная задача оптимизации графика финансирования инвестиционных проектов. В качестве целевой функции принято общее время финансирования портфеля. Учтено влияние инфляционных процессов. Приводится интерпретация задачи с точки зрения теории графов и доказывается её NP-полнота.

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

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

64

УДК 330.322.54

ФАКУЛЬТЕТ ИНФОРМАТИКИ И РОБОТОТЕХНИКИ

Т.Н. ОЛЕЙНИК ОБ ОДНОЙ ЗАДАЧЕ КАЛЕНДАРНОГО ПЛАНИРОВАНИЯ

Рассматривается дискретная задача оптимизации графика финансирования инвестиционных проектов. В качестве целевой функции принято общее время финансирования портфеля. Учтено влияние инфляционных процессов. Приводится интерпретация задачи с точки зрения теории графов и доказывается её ЫР-полнота. Инвестиционный проект; теория расписаний; календарное планирование; анализ сложности; МР-полнота; теория графов

ВВЕДЕНИЕ

В статье рассматривается задача оптимального календарного планирования финансирования инвестиционных проектов. Приведена постановка задачи, её интерпретация с точки зрения теории графов и установлена ЫР-полнота задачи.

Мы предполагаем, что инвестору предложен ряд инвестиционных проектов, которые необходимо профинансировать в полном объёме. Предполагается, что инвестору предоставлена возможность устанавливать срок начала финансирования каждого проекта. В случае, если средств инвестора не хватает для одновременного начала финансирования всех проектов, возникает задача календарного планирования инвестиционного процесса с учётом выполнения обязательного условия неразорения, так как возможность заимствования средств не предусмотрена.

Проекты, отобранные для финансирования, могут быть связаны друг с другом. Формально эта связь будет выражаться так - «финансирование проекта А может быть начато не ранее, чем через к лет после начала финансирования проекта В».

В задаче рассматривается возможность вложения в банк как альтернативного использования средств, через I обозначена банковская процентная ставка.

Также учитывается влияние инфляции. Реальная покупательная способность денег со временем падает. Проект, который сегодня требует вложения определённой суммы средств, через несколько лет будет стоить дороже, пропорционально возрастает и отдача от проекта. Темп инфляции г - доля, на которую ежегодно в среднем увеличиваются цены товаров и услуг.

Значения I, г могут меняться от года к году; в данной работе эти параметры предполагаются постоянными, в то же время, выводы переносятся и на общий случай.

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

1. ПОСТАНОВКА ЗАДАЧИ

В рассматриваемой модели время принимает дискретные значения 0, 1, 2,....

Под инвестиционным проектом (потоком платежей) мы понимаем вектор С=(с0,сь...,сг) произвольной размерности, обладающий следующими свойствами: первая ненулевая компонента С отрицательная, последняя ненулевая компонента С и сумма

компонент X ск положительные, здесь I - длитель-

к=0

ность проекта. Значение ск есть размер выплаты в момент к (далее считаем, что это начало года). Если ск>0, то средства поступают инвестору, если ск<0, то инвестор средства в проект вкладывает.

Проекты могут иметь ограничения по сроку начала финансирования: и,, Vi - натуральные числа, характеризующие соответственно минимально и максимально возможную даты начала финансирования.

Предполагается, что отобрано несколько проектов (портфель) С,=(с,0, с^,...),=(1,..., т), где, - номер проекта в портфеле, а с,к- к-ая выплата по ,-му проекту.

Пусть неотрицательное целое число ^ - время начала финансирования проекта С,. Из ограничений задачи следует, что

и, < < V- (1)

Связи между проектами С, и С, будут выражены следующим образом

+ к,< (2)

Общее время финансирования всего портфеля равно

Т = тах {:, +I,} (3)

Через ^ обозначен начальный капитал инвестора, ^>0.

В каждый момент времени средства инвестора складываются из накопленного в банке остатка от предшествующего развития процесса и текущих выплат по проектам. Если ¥к - средства на счете инвестора в момент времени к, то до платежей по проектам капитал инвестора равен (1+,)*^к-1.

Пусть Рк = {, :< к <+1,} - множество проектов, финансируемых в момент времени к. Платеж по проекту ,, осуществляемый в момент к, равен С, к. Поскольку стоимость денег (а, соответственно, и проектов) меняется со временем, то осуществляется коррекция проектов в соответствии с темпом инфляции. Платеж, с учетом влияния инфляции, будет равен С, к-1 *(1 + г) .

Задача выглядит следующим образом: требуется каждому проекту С, поставить в соответствие такое время его начала :,, удовлетворяющее ограничениям (1) и (2), чтобы в любой момент времени выполнялось условие неразорения

Ъ = (1 + 0^ + X С,,, + Г)^ > 0 (4)

]^Рк

Т. Н. Олейник • Об одной задаче календарного планирования

65

при к=0,1,...,Т, а время финансирования всего портфеля было минимально, т.е. Т ^ тш (см. (3)).

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

2. ИНТЕРПРЕТАЦИЯ ЗАДАЧИ С ТОЧКИ ЗРЕНИЯ ГРАФОВ

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

Каждая вершина С, имеет пометку Р,- минимально возможное время начала его финансирования. Для проекта (вершины), принятого к финансированию, Р=:. Пометка вершины (проекта) Р, обладает следующими свойствами:

1. Р > 0 ;

2. Р V ];

3. Р, > ц + к,,. < ].

При изменении пометки любой вершины производится пересчёт пометок всех вершин-наследников.

Целевая функция задачи будет выглядеть следующим образом:

тах{Р +11} ^ тт, (6)

при выполнении условия (4).

3. АНАЛИЗ СЛОЖНОСТИ

В настоящее время все большее значение приобретают. Задача распознавания является ЫР-полной в смысле Кука-Карпа, если выполняются следующие условия:

• задача входит в класс ЫР;

• к ней полиномиально сводится некоторая ЫР-полная задача.

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

То, что эта задача входит в класс ЫР, следует из того, что недетерминированному алгоритму требуется угадать вектор Т=(:1,:2,... ,:т) и за полиномиальное время проверить, удовлетворяет ли он ограничениям (1), (2), (4), (6).

Осуществим сведение к задаче (6) известной ЫР-полной задачи о гамильтоновом пути во взвешенном ориентированном графе. Напомним её формулировку:

Задача 1.

Условие: Дан взвешенный ориентированный граф 0=(У,Е).

Вопрос: Верно ли, что О содержит гамильтонов путь, т.е. такую последовательность <уьу2,...,уя >

вершин графа G, что для n=\V|, {vt,vt+1}є E для всех i, 1 < i < n, вес которого не превосходит заданный.

Рассмотрим индивидуальную задачу о гамильтоновом пути, с множеством вершин С и множеством дуг К. На её основе определим индивидуальную задачу (6), предполагая, что в рассматриваемой экономике нулевая инфляция, все проекты состоят из одного, единичного платежа, инвестор располагает средствами, достаточными для финансирования всех проектов, и нет ограничений на срок начала финансирования проекта, то есть r=0, F-1 > m, Ci=(-1), U t = 0,Vj ^ ro , i=1,2,...,m.

Если начало финансирования проекта Сі, не зависит от срока начала проекта С, то будем говорить, что kji=kij=0.

Задача 2.

Условие: Дан граф G=(C, K), в котором С - множество вершин (проектов), K- множество дуг, соединяющих эти вершины, и Q - некая оценка длительности финансирования портфеля.

Вопрос: Верно ли, что G содержит гамильтонов путь такой, что max{р + lt} < Q ?

Очевидно, что поставленная индивидуальная задача 2 с заданными исходными данными имеет решение тогда и только тогда, когда существует гамильтонов путь в задаче 1. Следовательно, поставленная задача является ЛР-полной.

ВЫВОДЫ

1. В статье предложена новая постановка задачи календарного планирования инвестиционного процесса. Оптимизируемым критерием в ней является общий срок финансирования портфеля инвестиционных проектов. Задача учитывает условие неразо-рения инвестора и влияние инфляционного коэффициента.

2. Приводится интерпретация поставленной задачи с точки зрения теории графов.

3. На основании сведения задачи к ЛР-полной задаче о нахождении гамильтонова пути во взвешенном ориентированном графе, доказана ЛР-полнота поставленной задачи.

СПИСОК ЛИТЕРАТУРЫ

1. Гэри, М. Вычислительные машины и труднорешаемые задачи / М. Гэри, Д. Джонсон. М. : Мир, 1982. С. 25-47.

2. Бронштейн, Е. М. Одна задача календарного планирования процесса инвестиций / Е. М. Бронштейн, Т. Н. Олейник // Обозрение прикладной и промышленной математики. 2005. Т. 12, № 1. С. 112.

3. Бронштейн, Е. М. Сравнительный анализ показателей эффективности инвестиционных проектов / Е. М. Бронштейн, Е. М. Черняк // Экономика и математические методы. 2005. Т. 41, №2. С. 21-28.

4. Пападимитриу, Х. Комбинаторная оптимизация: Алгоритмы и сложность / Х. Пападимитриу, К. Стайглиц. М. : Мир, 1985.

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