Опубликован: журнал "Менеджмент в России и за рубежом" №5, 2006 Мищенко А.В., |
д-р экон. наук, профессор РЭА им. Г.В. Плеханова Степанова М.С., <1> Работа выполнена при поддержке гранта РФФИ № 04-06-80121.аспирант МГТУ им. Н.Э. Баумана Инвестиционная фаза проекта является наиболее капиталоемкой на всем жизненном цикле самого проекта. Она заключается в проектировании и непосредственном строительстве системы или объекта, являющихся предметом проекта. Успешное выполнение всех действий, относящихся к инвестиционной фазе проекта, зависит от правильного планирования, которое позволяет определить необходимые параметры выполнения проекта: продолжительность по каждому из контролируемых элементов проекта, потребность в трудовых, материальных, технических и финансовых ресурсах, сроки поставки сырья, материалов. Планирование проекта позволяет реализовать проект в заданные сроки с минимальной стоимостью в рамках нормативных затрат ресурсов. Основная цель планирования на инвестиционной фазе проекта заключается в построении модели реализации проекта. С ее помощью определяется последовательность работ, которые должны быть выполнены, сроки выполнения этих работ и вычисляется допустимый и оптимальный план выполнения работ. Ниже представлена задача оптимизации выполнения комплекса работ (заданий), заданных сетевой моделью. Постановка задачи Рассматривается общая модель задач теории расписаний и календарного планирования, предполагающая наличие множества заданий и ограниченного объема ресурсов. Задания выполняются с помощью имеющихся, повторно используемых нескладируемых ресурсов, которые после завершения задания передаются для использования их другими заданиями. Выполняемые задания не допускают прерываний. Критерием оптимальности является время, в течение которого будет завершено выполнение всего множества заданий.В отличие от традиционных постановок, в которых все исходные данные задачи, такие, как продолжительность выполняемых заданий, последовательность их выполнения, моменты поступления заданий известны заранее, в настоящей работе предполагается, что эти параметры либо заданы неточно, либо могут меняться в процессе выполнения. В общем виде рассматриваемые ниже задачи могут быть сформулированы следующим образом: 1) есть набор заданий T={T1,…, Tn}, подлежащий обработке и не допускающий прерываний; 2) знак < обозначает заданное отношение частичного порядка, которое определяет ограничения на последовательность выполнения заданий; знак Ti<Tj означает, что Ti должно быть выполнено раньше, чем начнется выполнение Tj; 3) задано m исполнителей с одинаковой производительностью, которые обрабатывают задания; 4) продолжительность выполнения заданий Необходимо отметить, что уже при фиксированных длительностях выполнения заданий данная задача является NP-полной [1]. Исследования таких задач рассмотрены в работах [1—3]. Анализ решений в условиях неточной информации В работе [4] было показано, что существует конечное число базовых расписаний, среди которых будет хотя бы одно оптимальное при длительностях заданий, меняющихся в определенных интервалах.Следующее утверждение дает ответ на вопрос: «Всегда ли существуют длительности заданий, для которых данное базовое расписание является оптимальным?» Утверждение 1. Каждое базовое расписание может быть оптимальным при соответствующих длинах заданий. Доказательство. Сумма длин выполняемых заданий каждым исполнителем i выражается в виде Выпишем систему m уравнений с n неизвестными (n>m): исполнителем. Учитывая, что у этой системы всегда есть хотя бы одно отличное от 0 решение, получим доказательство утверждения. Длина работ, выполняемых исполнителем i, вычисляется по формуле В работе [6] изложен алгоритм вычисления максимальной величины Утверждение 2. Пусть исходная продолжительность выполнения заданий определяется величинами Доказательство. Напомним, что согласно [4] базовой системой решений называется такое всевозможное распределение заданий по исполнителям, в котором перераспределение исполнителей по невыполненным заданиям происходит только в момент завершения одного или нескольких заданий. Число таких расписаний для n независимых заданий и m исполнителей вычисляется по формуле: Согласно [5] каждому базовому расписанию Ri (i = 1,…,N) может быть поставлен однозначно в соответствие орграф, который задает последовательность выполнения заданий по расписанию Ri. Обозначим через Sкр(Re, Это возможно, если число заданий в критическом пути Re меньше, чем число заданий в Rк, либо если число заданий одно и то же, но сумма длин заданий в критическом пути Re меньше, чем сумма длин заданий в Rк, то есть Sкр(Re,0) < Sкр(Rк,0). Учитывая конечность ситуаций первого и второго рода, получим требуемое утверждение. Приведем несколько примеров, когда на всем интервале изменения 1. Пусть существует n независимых заданий одинаковой длины. В этом случае в любом оптимальном расписании максимальное число заданий, обрабатываемых одним исполнителем, вычисляется по формуле:
При увеличении длин заданий на любое 2. Пусть в оптимальном расписании одно и то же число заданий выполняется каждым исполнителем и сумма длин заданий, выполняемых каждым исполнителем, одинакова. В этом случае при увеличении длин всех заданий на любое e, каждый исполнитель будет загружен одинаково, что и означает оптимальность данного расписания при возрастании длин всех заданий на любое положительное число. Рассмотрим случай, когда длительности выполняемых заданий Рассмотрим случай, когда длительности выполняемых работ В [4] было отмечено, что для каждого значения Каждое базовое расписание в этой ситуации характеризуется длиной расписания
и системой неравенств
Решив задачу максимизации и минимизации функционала (1) при ограничениях (2), получим интервал Построим все возможные интервальные оценки для всех остальных базовых расписаний Пусть R Образуем множество базовых расписаний R где {R} – множество всех базовых расписаний. Очевидно, что при любых t
Здесь неравенство (3) отбраковывает все точки P, на которых расписание Rj будет иметь большую длину, чем какое-либо из базовых расписаний (3). Неравенства (4) аналогично [4] задают соотношение между длинами заданий, определяющих расписание Rj. Таким образом, параллелепипед На практике нередко встречаются задания оптимального распределения ресурсов в условиях варьирования технологическими ограничениями на последовательность выполнения работ. Содержательно такая математическая модель соответствует ситуации, когда моделируемый объект при одном и том же наборе выполняемых операций требует различной технологической последовательности их выполнения в зависимости от времени. Рассмотрим влияние изменения последовательности выполнения заданий на оптимальное расписание. Пусть последовательность выполнения заданий определяется орграфом G(m,n) с n вершинами, означающими задания, и m дугами, которые отражают последовательность выполнения задания. Последовательность выполнения заданий может быть также задана с помощью матрицы (rij) размером n x n. Здесь rij задается следующим образом: <1> Если для выполнения i-го задания не должно быть предварительно выполнено задание j. <2> Если задание i может быть начато только после выполнения j. Докажем следующее утверждение. Утверждение 3. Пусть задано n заданий, выполняемых m исполнителями, с последовательностью выполнения, заданной матрицей (rij). Оптимальной последовательностью выполнения заданий является граф, состоящий из m параллельных цепочек и заданный матрицей Rопт. Если последовательность выполнения заданий определить любой другой матрицейR<Rопт, то оптимальная последовательность выполнения заданий будет задана матрицей R. Доказательство. В последовательности выполнения заданий, заданной матрицей Rопт, начало выполнения каждого нового задания было связано с завершением выполнения одного из предыдущих заданий. Замена части нулей в матрице Rопт на единицы приведет к тому, что число предшественников у каждой работы возрастет. Поэтому если в расписании, заданном матрицей Rопт, завершение каждой работы (за исключением последней в каждой цепочке) приводило к началу выполнения нового задания, то в данной ситуации для некоторых заданий число непосредственных предшественников будет более одного. Это может привести только к уменьшению числа работ, выполняемых в каждый момент времени, поэтому расписание, задаваемое матрицей R, будет допустимым, а следовательно, и оптимальным. Рассмотрим пример, иллюстрирующий методы оптимизации инвестиционной фазы проекта при интервальном задании продолжительности этапов. Пусть существует проект, последовательность этапов которого задана следующим ориентированным графом: G (m, n) = G (0,5) – это означает, что все этапы независимы, отсутствуют транзитивные дуги графа. ai = 1 – количество исполнителей, необходимое для проведения i-го этапа. b = 2 – количество исполнителей. Длительности выполнения этапов с первого по пятый заданы интервально следующим образом:
Необходимо сформировать такой план, который будет оставаться оптимальным для некоторого подмножества этапов, заданных формулой (5). Порядок выполнения этапов исполнителями приведен на рис. 1 и выглядит следующим образом: Рис.1. Порядок выполнения этапов исполнителями Сформируем базовое решение и систему неравенств, при которых оно будет допустимо. Базовое решение (план) обладает следующим свойством:План Все множество базовых решений обладает следующими свойствами:
Решение задачи производиться по следующему алгоритму. Шаг 1. Из подмножества этапов M1, выполнение которых начинается в момент времени t=0, выбрать то множество этапов, которое претендует на оптимальное, Шаг 2. : Шаг 3. Из M1 исключаем все те этапы, для которых Произведем сравнение продолжительностей выполнения первого и второго этапов: Пусть t1 0 Проведем сравнение с продолжительностью третьего этапа. 3 Аналогично проведем сравнение продолжительностей Аналогично предыдущим действиям проведем сравнение продолжительностей рассмотренных ранее этапов с продолжительностью четвертого этапа Общая продолжительность выполнения данного плана T есть
Множество длительностей этапов, на котором данный план допустим, задается системой неравенств (7).
В этой ситуации длина допустимого расписания оценивается как сумма продолжительностей второго, пятого и четвертого этапов. Учитывая, что продолжительность этапов меняется на множестве, заданном системой линейных неравенств (7), минимальная и максимальная длина расписаний может быть вычислена решением соответствующих двух задач линейного программирования с целевой функцией (6) и системой ограничений (7). ЛИТЕРАТУРА
|