Модели управления ограниченными ресурсами в проектах создания и модернизации объектов логистической инфраструктуры. Управление ресурсами проекта является одной из центральных задач, решение которой позволяет эффективно осуществить достижение поставленных целей. Как правило, рассматривают две группы ресурсов: материально-технические и трудовые. В первую группу входят: сырье, материалы, конструкции, комплектующие, энергетические ресурсы, топливо, машины, оборудование, станки и транспортные средства. Во вторую группу входят непосредственно операторы, осуществляющие работу с материально-техническими ресурсами (строители, специалисты станочники, наладчики, водители транспортных средств и т.д.) В данной работу исследуются модели управления трудовыми ресурсами как в ситуации детерминированных финансовых трудозатрат при выполнении работ проекта, так и в ситуации неопределенности некоторых параметров модели. Предложены методы получения оптимальных решений (точных и приближенных) в модели управления трудовыми ресурсами с учетом типа. В ситуации, когда трудозатраты по каждому виду работ могут быть описаны материально , предложены методы оценки устойчивости оптимальных решений. 1.Детерминированная модель о назначениях. Задача о назначениях в детерминированной постановке формулируется следующим образом. Пусть необходимо выполнить n различных работ проекта. Для выполнения этих работ можно привлечь n исполнителей. Каждый из исполнителей может выполнить любую работу за определенное время. На каждую работу назначается только один исполнитель. Необходимо так распределить работы между исполнителями, чтобы общие затраты (временные или финансовые) были минимальными. Исходной информацией для решения этой задачи является матрица А, размерности nxn, в которой элемент аij задает затраты исполнителя j на выполнение работы i (i = 1,2,3,…,n; j = 1,2,3…,n). Искомыми переменными являются xij ( i = 1,2,3,…,n; j = 1,2,3,…,n) при этом xij = 1, если исполнитель i назначается на выполнение работы j и xij = 0 – в противном случае. Исходя из вышеизложенного, математическая постановка задачи заключается в следующем: n n a i 1 j 1 n x i 1 ij n x j 1 ij x min ij ij 1 (2) 1 xij {0,1} (1) (3) i = 1,2,…,n; j = 1,2,…n (4) Задача (1) – (4) является частным случаем транспортной задачи линейного программирования и может быть решена с использованием соответствующих методов. 1 2. Двухкритериальная модель о назначениях. В этом случае предполагается, что затраты на выполнение работ не являются детерминированными, а зависят от ряда факторов и, вообще говоря, являются случайными величинами, т.е. задано вероятностное распределение aij : a ij aijl - с вероятностью . . . . . . aijm m из чего следует p l 1 l - с вероятностью 1; p l pl pm 0 Таким образом математическое ожидание затрат на возможные работы i исполнителем j вычисляется по формуле: m aij aijl pl l 1 Соответственно дисперсия затрат при выполнении работы i исполнителем j вычисляется по формуле: m (aij aijl ) 2 pl 2 ij l 1 Принимая в качестве количественной оценки риска суммарную дисперсию затрат при фиксированном распределении исполнителей по работам, получим следующую двухкритериальную модель распределения исполнителей по работам: n n a ij i 1 j 1 n n i 1 j 1 2 xij min (5) x min (6) ij ij 2 n x i 1 ij n x ij j 1 1 (7) 1 (8) xij {0,1} i = 1,2,…,n; j = 1,2,…n (9) Двухкритериальная задача (5)-(9) может быть сведена к однокритериальной путем замены критериев их линейной сверткой, либо путем выбора главного критерия и перевода второго критерия в разряд ограничений. Выберем в качестве главного критерия минимизацию ожидаемых трудозатрат времени на выполнение работ, а критерий минимизации риска распределения исполнителей по работам переведем в ограничения. Получим следующую ортогональную задачу оптимизации: n n a ij i 1 j 1 n xij min (10) x Rg (11) n 2 i 1 j 1 n x ij ij 1 (12) 1 (13) xij {0,1} (14) i 1 ij n x ij j 1 i = 1,2,…,n; j = 1,2,…,n. Необходимо отметить, что в правой части неравенства (11) R g - задает максимальное значение допустимого риска при решении задачи (10) – (14). Легко понять. * Что R g не может быть меньше значения R , где функции следующей оптимизационной задачи: n n i 1 j 1 n x 2 x min ij ij R * - оптимальное значение целевой (15) 1 (16) 1 (17) xij {0,1} (18) i 1 ij n x j 1 ij i = 1,2,…,n; j = 1,2,…,n. Учитывая переборный характер задачи (10) – (14), а также то, что уже без соблюдения ограничения (11) она является NP – трудной. Ниже будет предложена схема 3 метода ветвей и границ для получения точного решения и для получения приближенного решения с заданной точностью. Традиционно метод ветвей и границ при решении задач целочисленной оптимизации как минимум связан с вычислением верхних и нижних оценок оптимального решения и дальнейшим анализом всех вариантов назначения исполнителей на работы с выполнением так называемых нижних текущих оценок формируемого решения, которые являются своеобразным индикатором возможной оптимальности формулируемого допустимого решения задачи (10) - (14). Ниже дается подробное описание схемы метода ветвей и границ в предположении, что множество всех исполнителей обозначено через N. Шаг 1: Вычисление нижней оценки Z H задачи (10) – (14) путем решения задачи непрерывного линейного программирования следующего вида: n n a i 1 j 1 n x min n 2 i 1 j 1 n x i 1 ij n x j 1 ij (19) ij ij x Rg (20) ij ij 1 (21) 1 (22) 0 xij 1 i = 1,2,…,n; j = 1,2,…,n. (23) Значение целевой функции (19) на оптимальном решении и выбирается в качестве ZH Шаг 2: Вычисление верхней оценки задачи (10) – (14) путем выбора некоторого допустимого целочисленного решения задачи (10) – (14) и вычисления на нем целевой функции (10). Это значение целевой функции и будет верной оценкой Z b . Если Z b = Z H , то задача решена. Если нет, то переходим к шагу 3. Шаг 3: На этом шаге осуществляется формирование очередного решения, и, после того как исполнитель назначен на определенную работу, вычисляется Z ТСК H (K ) , где К – подмножество исполнителей ( K N ), которым уже выделены работы Z. Вычисление Z ТСК H (K ) происходит путем решения задачи (19) - (23). С учетом того, что если исполнитель i принадлежит множеству К, и ему выделена работа j, то x ij 1 . Если исполнителю i не выделена работа , то при решении задачи (19) - (23) 0 xij 1 для всех j M \ L , где M\L – множество работ, которым не назначен исполнитель. Иными словами, решается следующая задача непрерывного программирования: aij K линейного a a x min x R xij N / K ij xij N \ K 2 ij ij g ij ij 2 ij K 2 ij 4 n x i 1 ij n x j 1 ij 1 1 0 xij 1 xij N \ K Если Z ТСК H ( K ) Fb , то выбираем очередного исполнителя и назначаем ему некоторую работу для выполнения. Если Z ТСК H ( K ) Z b , то дальнейшее формирование данного решения прерывается и переходим к анализу нового решения. Используя предложенную процедуру вычисления точечных нижних оценок при формировании решения, в конченом итоге будет либо сформировано новое допустимое решение, либо анализируемый вариант будет отброшен. Если сформировано новое решение, то на нем вычисляется значение целевой функции (1). Которое обозначается через Z * . Если Z * Z b , то сравниваем Z * Z H . Если равенство выполняется , то задача решена. Если Z * Z H , то в качестве Z b принимаем значение Z * и переходим к анализу очередного решения. Задача (10)- (14) решена, если при очередной корректировке Z b , получим Z b Z H , либо когда все варианты решений проанализированы. В последнем случае в качестве оптимального выбираем то решение, которому соответствовало бы последнее (наименьшее) значение Z b . Учитывая, что задача (1) – (4) даже без ограничения на риск является NP – трудной, можно использовать усеченную схему ветвей и границ, заключающуюся в том, что процесс поиска оптимального решения прекращается, если достигнута требуемая абсолютная точность решения. Т.е.. если Z b Z H или относительная точность Z ZH решения в процентах, т.е. , если b *100% C % . Zb 3. Два подхода анализа устойчивости в модели о назначениях. Вернемся к исходной постановке задачи (1)-(4), где затраты на выполнение работы (a ) I исполнителем j заданы матрицей А= ij i =1,2,…,n; j = 1,2,…,n;. Будем считать, что * существует некоторое подмножество элементов матрицы А, которое обозначим G , G * A , величина которых может возрасти на некоторое 0 . Будем называть * * множество G , множеством возмущенных элементов матрицы А. Матрицу A , в которой a a G* значение ij для всех ij увеличено на , назовем возмущенной матрицей затрат, или просто возмущенной матрицей. Анализ устойчивости решений для задачи (1)-(4) в описанной ситуации состоит в том, чтобы выяснить останется ли решение задачи (1)-(4), полученное для невозмущенной матрицы А, оптимальным и для возмущенной матрицы A* . Введем некоторые определения. 5 Определение 1: Пусть Х – есть решение задачи (1)-(4) для невозмущенной матрицы А. будем говорить, что X опт является устойчивым решением. Если существует * такое число 0 , что X опт остается оптимальным и для возмущенной матрицы A . Из определения, в частности, следует , что достаточными условиями устойчивости оптимального решения X опт , является его единственность. Действительное, значение целевой функции на решении X опт (обозначим его как R опт ) для возмущенной матрицы A* можно оценить следующим образом: a X ij X опт ij xij X опт a ~ aij X ij xij (24) ~ Здесь X - это допустимое решение задачи (1)-(4) для невозмущенной матрицы А, ~ обладающее тем свойством, что значение целевой функции на решениях X и X опт для невозмущенной матрицы А отличаются минимально, т.е. ~ min ( Ri Rопт ) R iQ Где: Q - множество всех допустимых решений задачи (1)-(4); ~ ~ R - значение целевой функции на решении X ; R опт - значение целевой функции (1) на решении X опт ; Из неравенства (24) следует, что величина возмущения , при котором X опт * является оптимальным для матрицы A , должна удовлетворять следующему неравенству: a ~ X ij X ij xij a ~ X ij X ij xij K В том случае, если число оптимальных решений задачи (1)-(4) ____ для невозмущенной матрицы А, то устойчивой будет то, в которое войдет минимальное число * элементов из множества G . Действительно, пусть число оптимальных решений будет равно L. Тогда значение * целевой функции на каждом таком решении при возмущенной матрице A вычисляется по формуле: n n i 1 j RK aij xijK K K=1,2,…,L; * где K - число элементов из множества G на оптимальном решении K. Так как первое слагаемое для всех оптимальных решений на матрице затрат А одинаково, то величина изменения целевой функции будет определяться только вторым слагаемым, и минимальное изменение будет давать то решение, в которое входит * минимальное число элементов из G , откуда следует требуемое утверждение. 6 Определение 2: Пусть X опт - есть оптимальное решение задачи (1)-(4) для невозмущенной матрицы А. Назовем решение X опт абсолютно устойчивым, если это * остается оптимальным при возмущении элементов множества G , т.е. любое 0 , т.е. (0, ) . Утверждение 1: Оптимальное решение задачи (1)-(4) X опт является абсолютно устойчивым в том и только том случае, если в него входит минимальное число элементов * из множества G по сравнению с другими допустимыми решениями задачи (1)-(4) для невозмущенной матрицы А. Достаточность Если X опт устойчиво и содержит минимальное число элементов их G, то для всех (0, ) выполняется следующее неравенство: n n a i 1 j 1 ij x n n K min aij xijl K l опт ij i 1 j 1 Где: l = 1,2,…,L: L – число всех допустимых решений. Выполнение этого неравенства следует n n a x i 1 j 1 опт ij ij n из того, что n aij xijl вследствие оптимальности i 1 j 1 решения X опт на невозмущенной матрице А и того, что K min K l для всех (0, ) в следствии того, что K min K l . Необходимость: Предположим противное, т.е. что X опт - абсолютно устойчиво и существует решение X P - неоптимальное, в которое входит меньшее число элементов из G * , чем в решение X опт . Обозначим это количество элементов через K . P В этом случае легко определить такую величину возмущения 0 , при которой оптимальными становится решение X P . Для этого запишем следующее неравенство: n n a x i 1 j 1 опт ij ij K n i 1 j 1 И разделив его относительно , получим: n n a i 1 j 1 n aij xijP K P опт n n x aij xijопт P ij ij K опт i 1 j 1 KР Величина 0 , вследствие того, что числитель и знаменатель дроби положительны. Следовательно X опт не является абсолютно устойчивым, что противоречит исходному условию. Необходимость доказана. 7 Рассмотрим все множество допустимых решений матрицы А. пусть число * элементов из G в каждом допустимом решении меняется от K1 до K M . Разобьем все множество допустимых решений на М классов, в каждый из которых * войдут только те решения, число элементов из G , в которых равно K (i=1,2,…,M). i Выберем в каждом классе решение, которое минимизирует значение целевой функции (1) в задаче (1)-(4) при невозмущенной матрице А, и обозначим их X 1 ,...., X M . Очевидно, что среди решений X 1 ,...., X M будет и оптимальное решение задачи (1)(4) X l , при этом K1 K l K M . В силу доказанного выше утверждения 1, если K l K1 , то решение X l - абсолютно устойчиво. Если K l K1 , то решим l-1 уравнение вида: n n n n p l a x K a x ij ij p ij ij K l i 1 j 1 i 1 j 1 P K1 , K 2 ,..., K l 1 Получим решения 1 ,...., l 1 1 Выберем min min i q ; i 1, l 1 ; 1 q l 1 Если q 1 , то при дальнейшем увеличении , перехода на новое оптимальное решение не будет. Если q 1 , то при возмущении q будет осуществлен переход на решение x q . Далее процедура повторяется, но уже на сокращенном множества допустимых решений x1 , x 2 ,..., x q , q l . При определенном значении осуществляется переход на новое решение x , q . Учитывая, что число допустимых значение решений x1 , x 2 ,..., x m конечно, через конечное число итераций получим, что при 1 , оптимальным решением задачи (1)-(4) * с возмущенной матрицей A будет решение x 1 , которое останется оптимальным для любого возмущения ( 1 , ) . Таким образом доказано следующее утверждение: Утверждение 2: Для возмущенной задачи (1)-(4) существует конечное число допустимых решений x1 , x 2 ,..., x L , каждое из которых при применении возмущения на интервале i 1 , i , при этом x 1 остается оптимальным на интервале [ 1 , ) . Таким образом, если оптимальное решение задачи (1)-(4) абсолютно устойчиво, то объемы затрат на различных допустимых решениях в зависимости от величины , возмущения меняются следующим образом: Затраты Абсолютно устойчивое решение задачи (1)-(4) (величина возмущения) Рис. 1 Затраты на абсолютно устойчивом решении задачи (1)-(4) в зависимости от величины возмущения 8 Если решение задачи (1)-(4) устойчиво, то не является абсолютно устойчивым, то величина затрат в зависимости от величины возмущения на оптимальном решении меняется следующим образом: Затраты 1 2 (величина возмущения) Рис. 2. Затраты на оптимальном решении задачи (1)-(4) в зависимости от величины возмущения Точки 1 и 2 на Рисунке 2 соответствуют величине возмущения, при которой происходит переход на новые оптимальные решения задачи (1)-(4) Рассмотрим пример вычисления интервалов устойчивости для различных вариантов назначения исполнителей работы. Пусть существует пять исполнителей, которые должны выполнять пять работ. Трудозатраты каждого исполнителя по каждой работе для детерминированной постановки задачи заданы матрицей А вида: 43 26 36 62 35 45 21 39 57 34 A 51 29 36 61 38 47 27 35 60 37 48 26 37 59 39 Такими работами, в частности, могут быть строительство площадок для открытого хранения грузов при создании комплекса складских помещений, а исполнители – это строительные бригады. Используя программу «Поиск решения» Excel. Получим следующее оптимальное решение задачи (1)-(4): 1 0 0 0 0 0 1 0 0 0 X опт 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 * Далее предположим, что во множество возмущенных элементов матрицы А G входят следующие элементы a11 , a a 35 , a54 . 9 Рассмотрим решение X опт и «диагональное» решение X д следующего вида: 1 0 0 0 0 0 1 0 0 0 X l 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 * * на возмущенной матрице A . Учитывая, что в решении X д один элемент из G . А в решении X опт три таких элемента, получим, что при определенной величине 0 на * решении X д значение целевой функции (1) для возмущенной матрицы A будет меньше чем на решении X опт . Для вычисления величины возмущения решим следущее неравенство относительно . 43 21 38 35 59 43 21 36 60 39 или 196 3 199 откуда 1.5 Таким образом, при увеличении трудозатрат на элементах матрицы G * A на величину 1.5 , предпочтительнее становится решение X д . Рассмотрим ситуацию когда элементы матрицы А могут принимать любые значения из заданных числовых интервалов, т.е. aij [aij1 , aij2 ] , i 1, n , j 1, n . В этому случае необходимо дать ответ на следующие вопросы: 1) Какие из допустимых решений могут быть оптимальными; 2) При каких значениях a ij данное допустимое решение остается оптимальным ( i 1, n , j 1, n ) Иными словами, необходимо многомерный параллелепипед n n i 1 j 1 P [aij1 , aij2 ] M P Ol Oj l 1 разделить на области O1 ,...., OM так, чтобы и каждой поставить в l соответствие некоторое допустимое решение X , которое остается оптимальным для всех a Ol значений трудозатрат ij . Для решения этой задачи рассмотрим множество всех допустимых решений задачи о назначениях X { X 1 ,...., X L } , и выделим среди них множество потенциально оптимальных решений X опт X , т.е. множество таких решений, которые могут быть оптимальными для каких-то значений трудозатрат a ij P ( i 1, n , j 1, n ). Обозначим значение целевой функции (1) на решении X i при трудозатратах a 1ij через Ri1 , а при трудозатратах a 2 ij через Ri2 . Очевидно, что меняя значения aij [aij1 , aij2 ] получим, что значение целевой функции (1) на решении X i заполнит все точки интервала [ Ri1 , Ri2 ] . 10 Выберем среди всех [ Ri1 , Ri2 ] i 1, L такое, что RK1 min i 1... L Ri1 и включим решение X K во множество решений X опт . m R 2 min i 1... L Ri1 такое, что m и включим решение X в j X опт X R1 Rm2 . Далее включим во множество опт все решения X X , у которых j . На X опт этом формирование множества потенциально оптимальных решений будет завершено. Определим область Ol P , задающую значения a ij , при которых решение Выберем среди [ Ri1 , Ri2 ] X l X опт будет оптимальным следующим образом: aij1 aij aij2 , при i 1, n , j 1, n ; a aij Rl ij a aij Rk ij , : X K X опт , X K X l Таким образом. Доказано следующее утверждение. Если в задаче (1)-(4) элементы a матрицы ij принимают значения интервалов aij [aij1 , aij2 ] , при i 1, n , j 1, n , то многомерный параллелепипед n n i 1 j 1 P [aij1 , aij2 ] M конечное число областей O1 ,...., OK , что O l может быть таким образом разбит на P , и для каждой области Ol существует l 1 решение X l X опт , которое остается оптимальным для всех значений aij Ol , при i 1, n , j 1, n . Литература 1. Мазур И., Шапиро В., Управление проектами – М., ОМЕГА 2007; 2. Будков В.М., Математические основы управления проектами – М., Наука 2005; 3. Урубков В.В., Курс МВА по оптимизации управленческих решений – М, Дело 2003; Работа представляет индивидуальный исследовательский проект №09-01-0018 «Методы и модели управления ограниченными ресурсами логистических систем». Выполнен при поддержке Программы «Научный фонд ГУ-ВШЭ». 11