8. Гладков Л.А. Анализ и исследование эволюционных методов решения задач разбиения СБИС [Текст]: монография / Под ред. В.В. Курейчика - Таганрог: Изд-во ТТИ ЮФУ, 2010. - 84 с.
9. Курейчик В.В., Курейчик В.М., Родзин С.И. Концепция эволюционных вычислений, инспирированных природными системами // Известия ЮФУ. Технические науки. - 2009. - № 4 (93). - С. 16-24.
Щеглов Сергей Николаевич
Технологический институт федерального государственного автономного образовательного учреждения высшего профессионального образования «Южный федеральный университет» в г. Таганроге.
E-mail: [email protected].
347928, г. Таганрог, пер. Некрасовский, 44.
Тел.: 8863371625.
Shcheglov Sergej Nikolatvich
Taganrog Institute of Technology - Federal State-Owned Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected].
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone: +7863371625.
УДК 519.87
М.В. Князева МЕТОД ВЕТВЕЙ И ГРАНИЦ ДЛЯ РЕШЕНИЯ ЗАДАЧИ СЕТЕВОГО ПЛАНИРОВАНИЯ С ОГРАНИЧЕННЫМИ РЕСУРСАМИ
Рассматривается сложная комбинаторная задача сетевого планирования с ограниченными ресурсами. Предлагаются два метода решения задачи с помощью алгоритма метода ветвей и границ. Приводится постановка задачи в классическом виде для метода ветвей и границ, а также вводятся дополнительные альтернативы, как способ представления работ на дереве поиска. Решается задача планирования проекта, состоящего из 10 работ, с ограничением на использование ресурса в единицу времени, и времени выполнения работ. Приводятся вычислительные результаты.
Сетевая модель; метод ветвей и границ; дополнительные альтернативы.
M.V. Knyazeva A BRANCH-AND-BOUND PROCEDURE FOR SOLVING RESOURCE-CONSTRAINED PROJECT SHEDULING PROBLEM
A complex combinatorial problem of resource-constrained project planning was considered by the means of branch-and-bound procedures. Two variants of decision a problem is suggested, either classical, or extension alternative is used for introducing nodes of the decision tree. A problem, consisting of 10 activities with one type of limited resource and durations of activities is viewed, and computational results are given.
Project scheduling problem; branch-and-bound algorithm; extension alternatives.
Введение. Часто при планировании проектов доступность ресурсов ограничена или они не имеются в достаточном количестве для выполнения работ, а достоверная оценка параметров сетевой модели является важной предпосылкой и предварительным условием для полноценного анализа модели. В своей основе сама идея сетевого планирования и управления проектами зависит от оценки таких основных параметров модели как время выполнения работ и количества ресурсов, требуемых для выполнения той или иной работы, и основывается на человеческих суждениях, оценках лиц, принимающих решения. С другой стороны, имеющиеся
ограничения на ресурсы и время выполнения проекта, делают задачу управления проектами комбинаторной многокритериальной задачей, и часто на практике стоит вопрос о выборе метода решения подобной задачи. На сегодняшний день существуют различные подходы к решению данной проблемы. Следует также отметить, что задача сетевого планирования и управления при наличии нескольких ограничений на ресурсы, целевой функции и некоторого набора переменных является № -сложной [1]. Для ее решения применяются, как точные методы оптимизации, так и эвристические.
В данной работе мы рассмотрим решение задачи сетевого планирования с ограниченными ресурсами с помощью метода ветвей и границ [2].
Обоснование выбора метода. За исключением эвристических методов, метод ветвей и границ является, вероятно, наиболее широко применяемой техникой для решения задач сетевого планирования с ограниченными ресурсами. Следует отметить, что задача сетевого планирования с ограниченными ресурсами принадлежит к группе сложных комбинаторных задач, и часто метод ветвей и границ является единственной техникой, позволяющей создавать оптимальные решения в рамках приемлемого вычислительного усилия. Комбинаторная задача определяется как задача назначения дискретных численных значений некоторым определенным наборам переменных Х таким образом, чтобы удовлетворить набору ограничений и минимизировать некоторую целевую функцию ^х). При этом при задании ограничений и целевой функции допускается довольно большая гибкость вычислений [2].
Ограничения для комбинаторной задачи следует определять как скрытые (имплицитные) и явные (эксплицитные).
Скрытые ограничения - это ограничения, которые должны быть удовлетворены способом, с помощью которого создается алгоритм ветвей и границ. Применительно к задаче сетевого планирования с ограниченными ресурсами, ограничения на предшествования являются примером скрытых ограничений, и эти ограничения могут быть легко реализованы (удовлетворены), применяя временное распределение для работ проекта.
Однако явные ограничения определяются как ограничения, которые требуют некоторых операций для их распознавания как составной части алгоритма ветвей и границ. В нашем случае, ограничения на ресурсы являются примером явных ограничений, поскольку существуют различные способы их представления и реализации.
Для реализации алгоритма ветвей и границ обратимся к двум характеристикам алгоритма, позволяющим доказать, что полученное в результате его реализации решение комбинаторной задачи будет оптимальным:
1. Характеристика ветвления гарантирует, что оптимальное решение будет достигнуто в процессе ветвления. Поскольку множество решений для задачи сетевого планирования является конечным, процесс ветвления в итоге приведет к какому-либо решению Б.
2. Характеристика границ дает возможность определить оптимальное решение, прежде чем, осуществлять перебор всех возможных решений. Границами, в нашем случае, будут те ограничения на ресурсы, которые вводят ограничения на совместное планирование определенных работ, поскольку в нашей задаче существует ограничение на использование ресурса в единицу времени.
3. Таким образом, если подходящее решение Б* будет достигнуто в течение поиска, и чье целевое значение меньше или рано нижней границе lbi каждого промежуточного узла 1, тогда Б* является оптимальным решением и не требуется больше никакого дальнейшего ветвления из узла 1.
Решение задачи сетевого планирования с помощью метода ветвей и границ. Теперь рассмотрим конкретную задачу сетевого планирования с ограничениями на ресурсы. Критический путь для представленной ниже задачи составляет 13 единиц времени и был вычислен традиционным методом прямого и обратного прохода по графу.
Подход, основанный на применении дерева предшествований для задачи сетевого планирования с ограниченными ресурсами, основывается на наблюдении, что любое расписание раннего начала (и такое же оптимальное расписание раннего начала) может быть достигнуто путем перебора всех работ при условии, что ни одна последующая работа не будет рассмотрена перед предшествующей ей работой. Каждая такая очередность (порядок следования) соотносится с одним расписанием раннего начала путем планирования работ в их ранние сроки в порядке очередности, но без нарушения отношений предшествования или ограничений на ресурсы. Поэтому такая очередность, при которой ни одна работа не может быть рассмотрена перед предшествующими ей работами, называется допустимой очередностью.
На рис. 1 показан пример задачи сетевого планирования с ограничениями на ресурсы и время выполнения работ.
Рис. 1. Задача сетевого планирования с ограничениями на ресурсы и время
выполнения работ
Для оптимального расписания рис. 2 одной пригодной очередностью является
(1.2.5.3.4.6.7.8.9.10). В данном случае такая очередность является расписанием раннего начала, однако допустимы и другие очередности (1,5,2,3,4,6,7,8,9,10) и
(1.2.5.3.4.8.6.7.9.10). При этом фиктивное начало и фиктивный конец в любой допустимой очередности стоят на первом и последнем месте соответственно. Очевидно, что очередности (1,2,5,3,4,6,7,8,9,10) и (1,5,2,3,4,6,7,8,9,10) могут быть взаимно заменены, поскольку работы 5 и 2 начинаются в один и тот же момент времени в расписании раннего начала. При построении дерева решений будем опираться на различные ранние расписания, получаемые при расчете очередностей работ.
Ресурсы і і
Время
Рис. 2. Оптимальное расписание для примера на рис. 1
На рис. 3, каждый узел дерева решения содержит номер узла на первой строке, на второй указаны номер и начальный срок работы, которая следует далее в очередности. Например, корневой узел в дереве имеет порядковый номер 1 и представляет фиктивную работу 1 в начальное время, равное 0. Очередность номеров узлов показывает, в каком порядке будут рассматриваться различные узлы дерева при методе поиска в глубину.
Рис. 3. Дерево поиска для задачи рис. 1
В узле 10 было найдено первое допустимое расписание со временем исполнения 17 единиц, и соответствующая ему очередность (1,2,3,4,5,6,7,8,9,10). Оптимальное расписание найдено в узле 33, а соответствующая ему оптимальная очередность (1,2,5,3,4,6,7,8,9,10).
Узлы, отмеченные серым, обозначают узлы, которые были рассмотрены и исключены из процесса поиска из-за двух условий: в узлах 23 и 24 (работы 3 и 5 соответственно) работы могут начаться раньше, чем предыдущие спланированные работы (работа 4 была спланирована начаться в момент времени 2 в узле 22), тогда как узлы 12,42,48 и 49 соответствуют узлам, в которых работа с меньшим номером может начаться в тоже время, что и работы с большим номером, уже рассмотренные. Все остальные узлы дерева остались без ветвления, поскольку для них при составлении раннего расписания не хватало ограниченного ресурса в 8 единиц.
Узлы, заключенные в квадрат обычной линией обозначают узлы, для которых простая нижняя граница критического пути была достаточна для исключения узла из рассмотрения.
Узлы, обозначенные пунктиром, представляют собой узлы, для которых очевидно исходя из расписания раннего начала, что их дальнейшее ветвление бессмысленно с точки зрения больших начальных сроков.
Таким образом, предложенный метод в его простейшей форме потребовал рассмотрения 50 узлов для поиска оптимального решения.
Рассмотрим теперь несколько иной подход к решению данной задачи методом ветвей и границ. Назовем его расширенным методом или методом дополнительных альтернатив. В данном методе рассматривается одновременно несколько работ, или набор работ, подходящих для планирования в определенный момент времени таким образом, что не будут превышены совокупные требования в данном ресурсе этой группой рассматриваемых работ. Эти группы работ, которые могут содержать, как одну работу, так и несколько одновременно планируемых работ, назовем дополнительными альтернативами. Путем перечисления всех дополнительных альтернатив на каждом уровне дерева ветвей и границ, наилучшее найденное расписание будет являться оптимальным с точки зрения, как времени выполнения проекта, так и распределении ресурсов. Для иллюстрации дополнительных альтернатив, рассмотрим пример на рисунке (см. рис. 1) и рассмотрим момент времени 1 после выполнения фиктивной работы 1.
В этот момент времени три работы могут быть спланированы, основываясь на правилах предшествования, это работы 2, 3 и 5. Учитывая эти работы, можно определить 6 возможных альтернатив: {2,3},{2,5},{3,5},{2},{3},{5}. Альтернатива {2,3,5} не подходит для рассмотрения, поскольку обобщенные требования в ресурсе для этого набора работ составляют 9 единиц, что превышает доступность ресурса в 8 единиц. Отметим также, что пустое множество работ мы также не рассматриваем.
В простейшем случае мы можем рассмотреть и исключить две из этих альтернатив: {3},{5}, поскольку для них, рассматривая их по отдельности, большое количество ресурса остается незадействованным.
Более формально, любая дополнительная альтернатива, для которой существует невыбранная работа, и последняя может быть спланирована параллельно с работами, входящими в альтернативу, и может быть окончена не позднее раннего окончания работ альтернативы, может быть исключена из рассмотрения. Однако следует отметить, что альтернатива {2} не может быть исключена из рассмотрения, поскольку не существует такой работы, которая бы оканчивалась не позднее работы 2.
Таким образом, четыре альтернативы включаются в рассмотрение и показаны на первом уровне дерева решений (рис. 4).
Каждый узел в дереве решений (см. рис. 4) содержит следующую информацию: на первой строке номер узла (первая цифра обозначает очередность, в которой будут рассмотрены узлы при использовании метода поиска в глубину), а также нижняя граница критического пути, которая пригодна для данного узла. На второй строке указаны работы, которые являются частью дополнительной альтернативы на соответствующем уровне дерева решений.
Проходя по дереву поиска, следует уточнить, что одно ограничение в перечислении дополнительных альтернатив формирует основу подхода: работы, которые не были окончены первыми в дополнительной альтернативе на определенном уровне ветвления, должны быть включены в любую дополнительную альтернативу на следующем уровне дерева поиска. Это ограничение может быть проиллюстрировано, когда ветвление продолжается из узла 2. Здесь работы 2 и 3 планируются начаться в момент времени 0, и закончиться соответственно в момент времени 2 и 7. Когда работа 2 оканчивается в момент времени 2, новая альтернатива должна быть обозначена. Однако в каждую из этих альтернатив необходимо включить работу 3, поскольку эта работа до сих пор требует для своего выполнения еще 5-ти единиц времени дополнительно. Существует 3 дополнительных альтернативы, удовлетворяющих ограничению: {3,4},{3,5},{3}, однако последняя альтернатива может быть исключена из рассмотрения, поскольку если работа 4 или 5 будут одновременно включены в альтернативу, то они закончатся раньше, чем работа 3.
Рис. 4. Дерево поиска дополнительных альтернатив для примера рис. 1
Поскольку работа 3 является единственной работой в альтернативе, она, очевидно, окончится ранее в альтернативе, и поэтому доступные 5 единиц ресурса не будут использоваться в течение периода [2,7], если альтернатива {3}считается возможной для использования совместно с работой 4 или 5. Таким образом, только два возможных, нерассмотренных последующих за узлом 2 узла остаются на втором уровне ветвления.
В последующем, простое правило доминирования будет использоваться при построении дерева поиска (см. рис. 4): поскольку определено, что расширенная альтернатива существует тогда, когда, по крайней мере, одна работа может быть включена в альтернативу материнского узла в дереве поиска, то она может быть исключена из рассмотрения. Это правило носит название «сдвиг влево» и может быть применено к узлам 31,32,33. Например, в узле 31 рассматривается альтернатива {3,4}, в которой работа 3 уже была рассмотрена на предыдущем уровне и может быть выполнена одновременно с работой 2, которая была единственной в узле 30. На деле, если оптимальное решение все же может быть найдено их этого узла, оно может быть также найдено путем ветвления из узла 3, где первая альтернатива {2,3} была спланирована в узле 2 и, как только работа 2 завершится, работа 4 начнется.
Таким образом, на рисунке (см. рис. 4) представлен новый подход, основанный на дополнительных альтернативах и требующий для поиска оптимального решения 35 узлов. Первое допустимое решение было найдено в узле 9 и составило 17 единиц, в то время, как оптимальное решение представлено в узле 23 со значением 15 единиц.
Таким образом, мы рассмотрели два возможных способа планирования проектов при ограниченных ресурсах, основанных на применении метода ветвей и границ. При этом в качестве ресурсов у нас выступали один тип ресурса и время выполнения работ. А в процессе движения по дереву решения применялась совокупность классических методов ветвления и эвристических методов оценки ниж-
них границ путем составления для каждого конкретного узла расписания раннего начала. Следует отметить, что недостатком рассмотренных выше методов является значительное усложнение и укрупнение решения в случае крупных проектов.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК:
1. Blazewicz, J., J.K. Lenstra and A.H.G. Rinnooy Kan. Scheduling Subject to Resource Constraints: Classification and Complexity, Discrete Applied Mathematics, 5. - Р. 11-24.
2. Demeulemeester, E.L., Herroelen W.S., Project Sheduling, a Research Handbook. Department of Applied Economics Katholieke Universiteit, Leuven Belgium, Kluwer Academic Publishers, 2002. - 685 p.
Князева Маргарита Владимировна
Технологический институт федерального государственного автономного образовательного учреждения высшего профессионального образования «Южный федеральный университет» в г. Таганроге.
E-mail: [email protected].
347928, г. Таганрог, пер. Некрасовский, 44.
Тел.: 88634371743.
Knyazeva Margarita Vladimirovna
Taganrog Institute of Technology - Federal State-Owned Educational Establishment of Higher Vocational Education “Southern Federal University”
E-mail: [email protected]
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone: +78634371743.
УДК 621.3.06
Ю.О. Чернышев, В.А. Литвиненко, С.А. Ховансков, Е.В. Литвиненко
МЕТОДЫ УПРАВЛЕНИЯ ТОЧНОСТЬЮ РЕШЕНИЯ ЭКСТРЕМАЛЬНЫХ
ЗАДАЧ НА ГРАФАХ*
В статье рассматриваются методы управления точностью решения экстремальных задач на графах, такие как: метод параметрической адаптации алгоритма к внешним условиям выполнения алгоритма; метод использования простых алгоритмов к различным подстановкам исходного графа; метод использования набора альтернативных алгоритмов с различной точностью решения; метод управления точностью решения на основе библиотеки адаптивных алгоритмов. Предлагается модификация метода параметрической адаптации алгоритма к внешним условиям, которая заключается в возможности выбора адаптирующих воздействий при выполнении алгоритма, а не только до начала выполнения алгоритма.
Графы; экстремальные задачи; алгоритмы; точность решения; адаптация; размерность задачи; ресурс времени; база данных; управление точностью.
U.O. Tchernyshev, V.A. Litvinenko, S.A. Hovanskov, E.V.Litvinenko
MANAGEMENT METHODS ACCURACY OF THE DECISION EXTREME PROBLEMS ON GRAPHS
In article management methods by accuracy of the decision extreme problems on graphs, such as are considered: a method of parametrical adaptation of algorithm to external conditions of performance of algorithm; a method of use of simple algorithms to various substitutions of the
*
Работа выполнена при поддержке: РФФИ (гранты № 10-01-00481-а), г/б № 2.1.2.1652. 84