Исследование и решение двухкритериальной задачи
о покрытии множества
Л. А. Заозерская, А. А. Колоколов
Омский филиал Института математики им. С. Л. Соболева СО РАН, 644099, Омск, Россия
Рассматривается двухкритериальная задача о покрытии множества, возникающая в различных приложениях, в частности при поиске оптимального размещения центров обслуживания. Строится и анализируется ее математическая модель в виде задачи целочисленного линейного программирования, обсуждаются подходы к решению задачи, предлагаются алгоритмы точного и приближенного решений. Приводятся результаты экспериментальных исследований для задачи оптимального размещения центров телекоммуникаций и задач со случайными исходными данными.
Ключевые слова: многокритериальная оптимизация, дискретная оптимизация, целочисленное программирование, задача о наименьшем покрытии множества, задача о доминирующем множестве, перебор L-классов, центр телекоммуникаций.
In this paper, we consider a bicriteria set covering problem which in a lot of practical situations, in particular, by location of service centers, is used. Integer linear programming model for the problem is described and analyzed, some exact and heuristic algorithms are suggested. The results of computational experiment for the practical problem of location of telecenters and instances with random data are presented.
Key words: multiextremal optimization, discrete optimization, integer programming, set covering problem, dominating set problem, L-class enumeration, telecenter
Введение. Задача о наименьшем покрытии множества (ЗНП) относится к числу широко известных задач дискретной оптимизации и имеет многочисленные приложения. В работе [1] содержится обзор результатов, связанных со структурой и сложностью данной задачи, алгоритмами ее решения и экспериментальными исследованиями.
Для решения задач о покрытии разработано большое количество точных алгоритмов, основанных на различных техниках: методе ветвей и границ [2-6], алгоритме отсечений [4,7], алгоритме перебора Z-классов [8, 9] и др. Известные теоретические верхние оценки трудоемкости точных методов в худшем случае, как правило, оказываются сопоставимы с трудоемкостью полного перебора (см., например, [7, 10, 11]). Поэтому при решении практических задач целесообразно использование различных эвристических подходов [9,1214]. Особое внимание уделяется разработке гибридных алгоритмов [3, 5, 9], в которых переборные схемы комбинируются с отсечениями и различными эвристическими подходами.
На практике ЗНП возникает при размещении центров обслуживания [2, 15, 6], в системах информационного поиска, при назначении экипажей на транспорте [2, 17], проектировании конвейерных линий и т. д. Поскольку во многих случаях для описания цели оптимизируемой системы одного критерия недостаточно, используются многокритериальные задачи оптимизации, например двухкритериальная задача о покрытии множества.
В работе [18] изучалась прикладная задача размещения центров телекоммуникаций (ТК) в регионе. Использование телекоммуникационных технологий имеет большое значение для развития экономики отдельных районов и закрепления в них населения. Для указанной задачи предложена однокритериальная модель, представляющая собой некоторое обобщение задачи поиска оптимального доминирующего множества в графе, на основе этой модели проведены расчеты для одного из архипелагов Эгейского моря. В [19, 20] данная задача исследуется как двухкритериальная задача о доминирующем множестве в графе, в которой требуется минимизировать общую стоимость размещения центров и максимизировать уровень удовлетворения потребностей в услугах этих центров.
В настоящей работе анализируется двухкритериальная задача о покрытии множества, предлагаются алгоритмы поиска точных и приближенных парето-оптимальных решений, основанных на разработанных ранее алгоритмах для ЗНП, в частности алгоритме перебора Z-классов, приводятся результаты экспериментальных исследований.
1. Постановка задачи. Приведем комбинаторную постановку задачи о наименьшем покрытии множества. Пусть даны множество М = {1,...,т} и набор его подмножеств М у ^ М, где ] = 1,...,п. Совокупность {М .}, у е У ^ {1,..., п} называется покрытием М , если ^Му = М . Каждому Му ^ М при' УеУ писан вес Су > 0, который можно интерпретировать как затраты на включение данного подмножества в покрытие. Требуется найти покрытие минимального суммарного веса. Задачу будем называть невзвешен-ной, если все подмножества Му имеют веса, равные единице. Не нарушая общности, будем полагать, что
покрытие существует. Соответствующая модель ЦЛП имеет вид
п
/с (х) = 2 суху ^ т1п (1)
у =1
при условиях
п
2а1]х] > 1,1 = 1,...,т; (2)
у=1
Ху е{0,1},у = 1,...,п, (3)
где ау = 1, если 1 еМу , и ау = 0 в противном случае 1 = 1,..,т; у = 1,...,п ; Ху = 1, если Му входит в
покрытие, иначе Ху = 0, у = 1,...,п.
Далее исследуем двухкритериальную задачу о покрытии множества, в которой требуется найти покрытие, минимизирующее функцию затрат (1) и максимизирующее функцию эффективности, имеющую вид
/и(х) = 2 и1Х1 ^ тах.
1 у у=1
Будем полагать, что Су>0, иу>0, ]=1,...,п. Для данного критерия заменим максимизацию на минимизацию и построим соответствующую задачу ЦЛП:
п
Л(Х) = ^ С]Х] ^ т1П (4)
у=1
п
/2(Х) = и1Х1 ^ т1П (5)
у=1
при условиях
п
^ауХу > 1,1 = 1,..,т, (6)
у=1
0 < Ху < 1,у = 1,..,п, (7)
Ху е= 1,..,п. (8)
Для анализа задачи (4) - (8) введем необходимые определения. Рассмотрим задачу многокритериальной дискретной оптимизации (МДО):
Р(Х) = (/:(Х/и (Х)) ^ т1п , Х е X,
где X- некоторое конечное множество из Мп , И > 2 .
Один из наиболее распространенных подходов к решению многокритериальных задач оптимизации связан с понятием оптимальности по В. Парето. Точка Х е X называется парето-оптимальным решением, если не существует Х е X (Х ^ Х) , такой что
1) fk(x) > fk(x), к = 1,...,h;
2) ft(x) > fk(x) хотя бы для одного к е {1,...,h}.
Обозначим через множество всех парето-оптимальных решений (ПМ), а через X - полное множество альтернатив (ПМА) (см., например, [21]), которое определяется как подмножество X0 е X минимальной мощности, такое что F(X0) = F(X) , где F (X') = {F(x) | x е X'}, X' е X.
Очевидно, что выполняются включения
X0 е X е X.
Приведем ряд свойств двухкритериальной задачи о покрытии множества (4)-(8).
Свойство 1. Для любого допустимого множества X задачи (4)-(8) существуют такие значения коэффициентов целевой вектор-функции F(x) = (f (x), f2 (x)) , что
X0 = X = X.
Заметим, что свойством 1 обладают многие задачи МДО [22]. Для рассматриваемой задачи, например при целевых функциях с коэффициентами c. = u . = 21 1, j = 1,...,n , любое допустимое решение является
парето-оптимальным. Очевидно, что на каждой линии уровня fx( x) = const имеется единственное допустимое решение задачи.
Свойство 2. При Cj = 1, j = 1,...,n максимальное значение мощности ПМА равно n, при произвольных Cj > 0, j = 1,...,n оно достигает значений 2n — 1.
Второй случай имеет место для задачи (4)-(8) при указанных выше значениях коэффициентов целевых функций и условии (6), имеющем вид
Y,xi > 1. (9)
j=1
В работах [22, 23] исследовались вопросы разрешимости многокритериальных дискретных задач с использованием алгоритма линейной свертки критериев (АЛС). В этом случае от решения многокритериальной задачи переходят к однокритериальной задаче с целевой функцией, являющейся линейной сверткой критериев. Задача МДО называется разрешимой с помощью АЛС, если все элементы ПМ можно получить с использованием данного алгоритма.
Свойство 3. Задача (4)-(8) не является разрешимой с помощью АЛС.
Свойством 3, в частности, обладает задача с целевыми функциями (4), (5) при п > 3, с. = 2.
—1
и . = 3. 1, . = 1,...,п и ограничениями (7)-(9), для которой любая ненулевая булева точка х является па-
рето-оптимальным решением. Вместе с тем, например, точка X = (1,0,...,0,1) не может быть получена как оптимальное решение задачи минимизации функции
f л( x) = ^ (Acj — (1 — A)Uj)
x1
j=1
при ограничениях (7)-(9) для любого Я е [0,1]. Действительно, точка X может являться оптимальным решением данной задачи, в случае если коэффициенты функции /Я (X) удовлетворяют соотношениям
Я = 2Я-1 < 0, = Я(2п-1 + 3п-1) - 3п-1 < 0, д}. =Я(2 '+ 3'-1) - 3 '> 0, . = 2,..., п -1.
1 3
Отсюда имеем Я < — и Я > —, следовательно, требуемое значение Я не существует.
2 5
Поскольку получение всех элементов ПМ или ПМА для задач МДО может оказаться достаточно сложным, в качестве оптимальных решений часто используют лексикографические минимумы (ЛМ) задачи [21,
24]. Для вектор-функции Р(х) = ((1 (х),...,_/и (Х)) парето-оптимальное решение Х называется лексикографическим минимумом задачи при условии
Р (х* ) = 1ехтт { Р (х) | х е X }.
Здесь у' = 1ехтт У - лексикографически минимальный элемент множества У С МИ, т. е. для любого у е У выполнено соотношение у' Р у или у' = у, где знак " Р " обозначает лексикографическое сравнение.
Множество всех ЛМ задачи при различных порядках их компонент вектор-функции образуют лексикографическое множество.
2. Алгоритм перебора ¿-классов для ЗНП. В [10] и других работах развивается подход к анализу задач и алгоритмов целочисленного программирования (ЦП), основанный на регулярных разбиениях евклидова пространства, в частности ¿-разбиении. В рамках данного подхода изучена структура многих задач ЦП, предложены алгоритмы перебора ¿-классов для общей и специальных задач ЦП, исследована устойчивость ряда алгоритмов и задач.
Приведем краткие сведения, необходимые для описания алгоритма перебора ¿-классов решения ЗНП, который ниже использован для поиска лексикографических минимумов и некоторой части парето-оптимальных решений задачи (4)-(8).
Дадим определение ¿-разбиения пространства Мп :
— каждая точка из ^п образует отдельный ¿-класс, т. е. элемент разбиения;
— нецелочисленные точки х,у е Кп (х Р у) принадлежат одному дробному ¿-классу, если не существует 2 е , такой что х Р 2 Р у .
Пусть X С Мп . Фактор-множество X/ Ь называется ¿-структурой X. Если X - ограниченное множество, то X|Ь = {У1, ..., } , где V Р У1+1,1 = 1, к, 5 — 1. Данное свойство служит основой для построения
алгоритмов перебора ¿-классов задач ЦЛП.
Обозначим через М релаксационное множество задачи (1)-(3), определяемое ограничениями (2) и условиями
0 < ху < 1, у = 1,к,п.
Нетрудно показать, что МД - конечное множество.
Основной шаг процесса решения задачи ЗНП состоит в переходе от одного ¿-класса множества М к следующему за ним в порядке лексикографического возрастания с учетом рекордного значения р целевой
функции. В результате порождается последовательность 5 точек Х ) из М, обладающая следующими свойствами:
1) х« Р х(г+1), г = 1,2, к ;
2) все точки х(г) принадлежат различным ¿-классам;
3) последовательность содержит подпоследовательность целых точек Q = {2( , г = 1,..., ц, такую
что Л(«)<Л()), г>гг.
Процесс перебора ¿-классов можно начинать с лексикографически минимальной точки из М. Далее просматриваются элементы ¿-разбиения той части релаксационного множества задачи, для которой значение целевой функции не превышает значения р — 1, где р - известное значение ее рекорда. В случае, если найденный в процессе решения элемент разбиения является целочисленной точкой, это значение меняется.
Текущие точки ХХ) строятся путем решения вспомогательных лексикографических подзадач линейного программирования (ЛП), например с помощью лексикографического двойственного симплекс-метода. Рассматриваемый процесс является конечным и завершается, когда не удается найти представителя очередного
L -класса текущего многогранника. Так как ЗНП разрешима, то лучшее из найденных целочисленных решений является оптимальным.
Приведем описание варианта алгоритма перебора L-классов (LCE) для ЗНП [11]. Пусть x0- допустимое решение ЗНП, полученное с использованием некоторого алгоритма. Заметим также, что для ЗНП имеет место x = lexmin M е Ъ" [8, 10].
Алгоритм LCE для задачи ЗНП имеет следующий вид. Шаг 0. Найти x = lexmin M . Положить x' = x ,
p = min{(c,x),(c,x0)}, p = max{j | x' = 1, j = 1,...,n-1} .
Шаг 1. Найти p = max{j | x' = 0, j = 1,...,p -1}.
Если такого ф не существует, перейти на Шаг 4.
Шаг 2. Положить x" = x'. Решить задачу ЛП: найти
x' = lexmin {x е M | (c, x)<p-1, x = xf,..., xv_x = x(_x, xv_x = 1}. (10)
2.1. Если задача (10) не имеет решения и ф =1, то переход на Шаг 4.
2.2. Если задача (10) не имеет решения и ф >1, то положитьp= ф и перейти на Шаг 1.
2.3. Если x' е Z" , то р = (c, x') , p = max {j | x' = 1, j = 1,...,n -1} и переход на Шаг 1.
Шаг 3. Найти p = min{j | x' ^ |x'J, j = 1,.,"}, и переход на Шаг 2.
Шаг 4. Процесс решения окончен: целочисленное решение с наименьшим значением целевой функции является оптимальным. В работе [9] для ЗНП предложен гибридный алгоритм, в котором алгоритм LCE комбинируется с генетическим алгоритмом и лагранжевой эвристикой. Вычислительный эксперимент показал перспективность такого подхода.
3. Методы решения двухкритериальной ЗНП. Рассмотрим различные методы решения двухкритери-альной задачи ЗНП.
3.1. Поиск лексикографических минимумов. Как указывалось выше, один из подходов к решению задачи МДО связан с поиском лексикографических минимумов [21, 24]. Для задачи (4)-(8) вектор-функции
F (x) = ( f2, f) соответствует единственный ЛМ, а именно точка (1,1,...,1). С практической точки зрения
больший интерес представляет ЛМ, соответствующий вектор-функции F(x) = (fx, f2) . Рассмотрим способы его получения.
1) Алгоритм линейной свертки критериев (АЛС). Проблема нахождения ЛМ любой многокритериальной задачи с конечным множеством допустимых решений разрешима с помощью АЛС [21,24]. Согласно [21] коэффициенты линейной свертки для задачи (4)-(8) можно определить следующим образом:
о = а +1 о = 1
о =-, о =-,
а +2 а +2
п
где а = ^ Uj — |U0 J + 1, U0 - оптимальное значение целевой функции задачи ЛП:
j=1
п
Zu x ^ min
i i
j=1
при условиях (6), (7).
2) Метод последовательной оптимизации. При данном подходе от решения многокритериальной задачи переходят к решению последовательности однокритериальных задач. Учитывая особенности системы ограничений задачи, для поиска ЛМ задачи (4)-(8) методом последовательной оптимизации опишем модификацию алгоритма LCE для ЗНП, приведенного в п. 2. Решение задачи состоит из двух этапов.
1. Решается ЗНП (4), (6)-(8), например гибридным алгоритмом, предложенным в работе [9]. Обозначим через x оптимальное решение данной задачи. Положим c* = f1(x ), u* = f2(x ).
2. Требуется решить задачу
n
fu (x) = Z ujxj ^ max (11)
j=1
при условиях (6)-(8) и дополнительном ограничении
n
Zo
cJxJ = c 0. (12)
j=1
Задача (11) может быть решена одним из известных методов, применяемых для общей задачи целочисленного программирования (например, методом ветвей и границ, алгоритмами отсечения, перебора L-классов и др.).
Для решения задачи (6) - (8), (11), (12) используем алгоритм перебора L-классов для решения ЗНП, учитывая особенности данного алгоритма и некоторые свойства ЗНП.
Используя структуру данной задачи, ее можно декомпозировать [19, 20] на основную оптимизационную ("хорошо решаемую") задачу и систему дополнительных ограничений. Одна из реализаций предлагаемого подхода выглядит следующим образом. Начиная с точки x*, алгоритмом LCE решается задача о покрытии
* 0
(4), (6) - (8) для значения рекорда, равного р = co +1. Так как c0 - оптимальное значение целевой функции ЗНП, то в ходе дальнейшего решения рекорд остается постоянным. Выше показано, что лексикографически минимальный элемент x' любой вспомогательной задачи (10) удовлетворяет равенству (c, x') = р — 1 при
условии, что р < (c,x ) , где x = lexmin M . Таким образом, при р = c* +1 в ходе работы LCE идет перебор только элементов L-разбиения релаксационного многогранника M, принадлежащих гиперплоскости (12).
Пусть x' - целочисленная точка, найденная алгоритмом. Если x' удовлетворяет ограничению
n
ZujxJ -u*0+1
j=1
то x' - допустимая целочисленная точка задачи (6)-(8), (11), (12) и полагаем u0 = fu(x'). Затем осуществляется переход к очередному элементу L-разбиения релаксационного многогранника задачи (4), (6)-(8).
С другой стороны, задача (6)-(8), (11), (12) может быть рассмотрена как одномерная задача о рюкзаке (7), (8), (11), (12) с дополнительными ограничениями (6). Заметим, что одномерная задача о рюкзаке достаточно эффективно решается алгоритмом перебора L-классов, так как в этом случае решения задач ЛП получаются аналитически. Однако, как показал вычислительный эксперимент, такой вариант декомпозиции исходной задачи позволяет получить приемлемые результаты лишь при m ^ n .
3.2. Метод уступок. Решение двухкритериальной задачи о покрытии множества на основе поиска ЛМ приводит к единственному решению, что в практических ситуациях не всегда приемлемо. Другим известным подходом к определению множества решений многокритериальной задачи является метод уступок, используя который можно поставить задачу нахождения некоторого подмножества парето-оптимальных решений. В этом случае от двухкритериальной задачи (4)-(8) переходят к однокритериальной задаче P :
n
fu (x) = Z ujxj ^ max j=1
при ограничениях (6)-(8) и
n
Zcsxs ^c*+5
j=1
Здесь 6 £ Zi + - величина уступки; jjc0, c0 + 5^| - допустимый интервал стоимости покрытия. Варьируя значение параметра 5, можно получать различные парето-оптимальные решения исходной задачи.
Заметим, что если Cj = 1, j = 1,..., n, то оптимальное решение задачи P является парето-оптимальным для задачи (4)-(8) и удовлетворяет равенству
n
Z CJXJ = C0 + 8
j=1
В случае произвольных C ■ для определения парето-оптимальных решений требуется дополнительно решать ЗНП (4), (6)-(8) с дополнительными ограничениями
n n
Zc]x] < c* + 8, Zujxj ^ <> j=1 j=1
где u* равно оптимальному значению целевой функции задачи P .
Описанная выше процедура позволяет получить одно парето-оптимальное решение, соответствующее фиксированному значению уступки. С другой стороны, декомпозиционный подход, рассмотренный в п. 3.1, может быть использован для получения всех парето-оптимальных решений исходной задачи, удовлетворяющих принятой уступке 8 . В этом случае в качестве начального значения рекорда р следует взять значение c 0 + 8 +1, которое не меняется в процессе решения. Перебор Z-классов начинается с лексикографически минимального элемента многогранника задачи P . Согласно определению парето-оптимальные решения находятся среди полученных целочисленных точек.
Рассмотренный подход был применен для серий задач со случайными исходными данными. Тестирование проводилось на "Pentium IV" (3 GHz). Эксперименты выполнялись на сериях при n = 300, m = 100,
cj е[10,100], uj е[1,100], j = 1,..., n , вероятность aij = 1 (i, j = 1,..., n; i ^ j) равна 0,05. Значение
8 составляло 5 % оптимального значения Со . Число парето-оптимальных решений, полученных для данного значения 8, варьировалось от 7 до 14. Среднее время поиска одного решения составило приблизительно 2 мин, значение эффективности увеличивалось в среднем на 15 %.
Теперь рассмотрим модификацию известного жадного алгоритма [25] решения ЗНП для соответствующей двухкритериальной задачи (алгоритм ОЯ).
Пусть х - булев вектор, соответствующий формируемому покрытию, J1 (X) - множество номеров подмножеств М^, включенных в покрытие, J0 (х) = {1,... ,n}\Jl (х), I (х) = ! / |/ £ ^ М р / = 1,... ,п
[ № 1(х)
Алгоритм ОЯ начинает работу с точки X = (0,..., 0) . На очередном шаге для каждого ] е J0 (х) вычисляется оценка
С
S, =
J
Uj 2
i G 1 ( X )
В покрытие включается элемент Ms с оценкой = min . ^0( ) ^, т. е. xs полагается равным 1, множества
J0 (x), J1 (x), I (x) переопределяются. Процесс заканчивается в случае I (x) = 0 . Полученный вектор
X является покрытием, для которого вычисляются значения целевых функций f (x), f2 (x). Рандомизированный вариант данного алгоритма (RGR) отличается от него тем, что на очередном шаге в покрытие включается элемент c номером, выбранным случайным образом из некоторого подмножества
J (x) ^ J0 (x), содержащего номера множеств M ■, оценки которых "незначительно" отклоняются от минимальной .
На основе RGR можно предложить следующий эвристический алгоритм решения задачи (4)-(8).
Шаг 1. Запускаем заданное число раз алгоритм ЯОЯ. Формируем множество всех полученных решений
ХКОЯ .
Шаг 2. Строим множество парето-оптимальных решений на множестве хяоя .
Сравнение решений, найденных с помощью алгоритма, с известными парето-оптимальными решениями показало, что по стоимости они различаются в среднем до 43 %, по удельной эффективности, т. е. по отношению /2 (хЛ (х), указанные решения близки.
4. Задача оптимального размещения центров телекоммуникаций. Как сказано выше, задача оптимального размещения центров ТК может быть сформулирована как двухкритериальная задача о доминирующем множестве. Дадим определение задачи поиска доминирующего множества минимального суммарного веса. Рассмотрим граф G = (V, Е) с множеством вершин V = {у1,к, Уп} и множеством ребер
Е ^ {(V,Уу) | 1, у = 1,...,п; 1 Ф у} . Множество 8 ^ V называется доминирующим, если для любого
V. £ 8 существует вершина V. е 8, такая что (V., V.) е Е. Задача ДМ состоит в поиске доминирующего
у \ 3 /
множества минимальной мощности. Приписав каждой положительный вес Су, получаем взвешенную
задачу ДМ, в которой требуется найти доминирующее множество минимального суммарного веса.
Приведем содержательную постановку задачу оптимального размещения центров ТК [19]. Пусть
Р1,...,Рп - множество пунктов потребления услуг центров ТК, которые одновременно являются пунктами возможного размещения этих центров. Обозначим через С ■ стоимость размещения центра в Р., а через и у
(у = 1,..., п) - коэффициент эффективности такого размещения. Известны расстояния йу = й ((, Р.) между пунктами Р,Р. (1,у = 1,...,п; 1 Ф у) (например, в евклидовой метрике). Будем считать, что задана
верхняя граница для расстояния, при котором возможно обслуживание каждого пункта хотя бы одним
из центров. Необходимо разместить центры ТК таким образом, чтобы удовлетворить потребности всех пунктов, минимизировать общую стоимость создания центров и максимизировать их суммарную эффективность.
Для построения математической модели введем граф G = (V, Е) с множеством вершин V = {Р,...,Рп} и множеством ребер Е ^ {(Р{,Р.) | 1,у = 1,...,п; 1 Ф у}, причем ребро ((,Р.) содержится в Е, если йу < . Пусть А - матрица смежности вершин графа G. Положим аи = 1; 1 = 1,...,п . Тогда исходную задачу можно рассматривать как задачу поиска доминирующего множества в графе с двумя критериями. Введем булевы переменные для у = 1,..., п :
\ 1, если центр ТК размещается в пункте Ру,
x = -
[0, иначе.
Теперь рассматриваемую задачу можно сформулировать как двухкритериальную задачу о покрытии вида (4)-(8), где m = n .
На основе полученной модели решалась задача размещения центров телекоммуникаций для части архипелага из 24 островов Эгейского моря [18, 19]. В расчетах использовались данные Греческой организации
статистики (ESYE) и Греческой организации телекоммуникаций (OTE). Значение d0 менялось в диапазоне 50 ^ 150 км (при этом min dH = 20, max dH = 526). В вычислительном эксперименте при формировании
У У
критерия эффективности размещения использовались такие показатели, как общее число потребителей услуг центров ТК, число студентов, школьников. Для значений c ■ рассматривались два варианта: 1) все c. = 1, что
соответствует размещению типовых центров ТК; 2) c¡ вычислялись как значения некоторой функции от числа
я ш я
ъ
m
1600 1500 1400 1300 1200 1100 1000
P4
205
210
215
235
потребителей, j — 1,..., n. Оптимальное число центров ТК варьировалось от 4 до 13 в зависимости от значения параметра d.
Кроме того, подход, включающий метод уступок и первый тип Ф декомпозиции для решения двух-
Pj * критериальной задачи о доминиру-
ющем множестве, тестировался на
....... сериях задач со случайными исход-
240 245 ными данными. Расчеты проводилось на "Pentium IV" (3 GHz). Эксперименты выполнялись на сериях с n < 300, c], u} е [1,100], j — 1,..., n, вероятность появления ребра в графе равна 0,1. Значение 5 составляло 5 % оптимального зна-
* с*
чения c0. Число парето-оптимальных решений, полученных для указанного значения о , варьировалось от
3 до 11. Среднее время поиска одного решения составило приблизительно 4 мин, а значение целевой функции эффективности в среднем увеличилось на 14 %. Время решения увеличивалось с возрастанием вероятности появления ребра в графе и (или) уменьшением верхней границы для c ■, j = 1,..., n. На рисунке приведены в критериальном пространстве парето-оптимальные решения для четырех задач с числом переменных n=250.
Проведенные исследования показали, что двухкритериальная задача о покрытии множества может успешно применяться для решения прикладных задач. Разработанные алгоритмы представляются перспективными для использования в системах поддержки принятия решений при оптимизации размещения предприятий, в частности центров телекоммуникаций.
220 225 230 Стоимость
Парето-оптимальные решения для четырех задач о доминирующем множестве при п = 250
Список литературы
1. Еремеев А. В., Заозерская Л. А., Колоколов А. А. Задача о покрытии множества: сложность, алгоритмы, эксперимен-
тальные исследования// Дискретный анализ и исследование операций. Серия 2. 2000. Т. 7, № 2. С. 22-46.
2. Кристофидес Н. Теория графов. Алгоритмический подход. М: Мир, 1978.
3. Balas E., Carrera M. C. A dynamic subgradient-based branch and bound procedure for set covering // Oper. Res. 1996.
V. 44, N 6. P. 875-890.
4. Balas E., Ho A. Set covering algorithms using cutting planes, heuristics and subgradient optimization: a computational study
// Math. Prog. Study. 1980. V. 12. P. 37-60.
5. Beasley J. E., Jornsten K. Enhancing an algorithm for set covering problems // Europ. J. Oper. Res. 1992. V. 58. P. 293-300.
6. Fisher M. L., Kedia P. Optimal solution of set covering/partitioning problems using dual heuristics // Manag. Sci. 1990. V. 36.
P. 674-688.
7. Lifschitz V., Pittel B. The worst and the most probable performance of a class of set-covering algorithms // SIAM J. Com-
put. 1983. V. 12, N 2. P. 329-346.
8. Заозерская Л. А. Об одном алгоритме перебора L-классов для решения задачи о покрытии множества // Тр.
11-й Байкал. междунар шк.-семинара "Методы оптимизации и их приложения". Иркутск: S. n., 1998. Т. 1. С. 139-142.
9. Eremeev A. V., Kolokolov A. A., Zaozerskaya L. A. A hybrid algorithm for set covering // Proc. of Intern. workshop on
discrete optimization methods design. Minsk: S. n., 2000. P. 123-129.
10. Колоколов А. А. Регулярные разбиения и отсечения в целочисленном программировании // Сиб. журн. исследования операций. 1994. № 2. С. 18-39.
11. Сайко Л. А. Исследование мощности L-накрытий некоторых задач о покрытии // Дискретная оптимизация и анализ сложных систем: Сб. научн. тр. Новосибирск: Вычисл. центр СО АН СССР. 1989. С. 76-97.
12. Caprara A., Fischetti M., Toth P. Algorithms for the set covering problem / DEIS - Operations Res. Group. 1998. Technical Rep. N OR-98-3.
13. Rahoual M., Hadji R., Bachelet V. Parallel ant system for the set covering problem// Lecture notes in computer science. : S. l.: Springer, 2002. P. 262-267.
14. Solar M. V. Parada V., Urrutia R. A parallel genetic algorithm to solve the set-sovering problem. Computer and operations research 29. 2002. P. 1221-1235.
15. Нечепуренко М. И., Попков В. К., Майнагашев С. М. и др. Алгоритмы и программы решения задач на графах и сетях. Новосибирск: Наука. Сиб. отд-ние, 1990.
16. Попков В. К. Математические модели связности / Новосибирск: Ин-т вычисл. математики и мат. геофизики СО РАН, 2006.
17. Caprara A., Fischetti M., Toth P., Vigo D. Modeling and solving the crew rostering problem // Oper. Res. 1998. V. 46. P. 820-830.
18. Kitrinou E., Kolokolov A. A., Zaozerskaya L. A. The location choice for telecenters in remote areas. The case of the Aegean islands // Proc. of the 2nd Intern. workshop on discrete optimization methods in production and logistics. Omsk: S. n., 2004. P. 61-65.
19. Заозерская Л. А., Китриноу Е., Колоколов А. А. Задача оптимального размещения центров телекоммуникаций в регионе // Тр. 13 Байкал. междунар. шк.-семинара "Методы оптимизации и их приложения". Иркутск: S. n., 2005. Т. 1. C. 469-475.
20. Kolokolov A. A., Zaozerskaya L. A. A bicriteria problem of optimal service centers location // Proc. of 12th IFAC intern. symp., St. Etienne (France), 17-19 мay 2006. Elsevier, 2006. S. l.: V. 3. P. 429-434.
21. Подиновский В. В. Оптимизация по последовательно применяемым критериям / В. В. Подиновский, В. М. Гаврилов. М.: Советское радио, 1975.
22. Перепелица В. А. Многокритериальные задачи теории графов. Алгоритмический подход. Киев: УМК ВЩ ЗГУ, 1989.
23. Емеличев В. А., Кравцов М. К. О неразрешимости векторных задач дискретной оптимизации на системах подмножеств в классе алгоритмов линейной свертки критериев // Докл. АН. 1994. Т. 334, № 1. C. 9-11.
24. Емеличев В. А., Кравцов М. К., Янушкевич О. А. Лексикографические оптимумы многокритериальной задачи дискретной оптимизации // Математические заметки. 1995. Т. 58, вып. 3. C. 365-371.
25. ChvAtal V. A greedy heuristic for the set-covering problem // Mathematics Oper. Res. 1979. V. 4, N 3. P.233-235.
Лидия Анатольевна Заозерская - доц., канд. физ.-мат. наук, ст. науч. сотр. Омского филиала Ин-та математики им. С. Л. Соболева СО РАН; e-mail: [email protected]; тел. 8(3812)23-67-39;
Александр Александрович Колоколов - проф., д-р физ.-мат. наук, зав. лабораторией Омского филиала Ин-та математики им. С. Л. Соболева СО РАН; e-mail: [email protected] ru; (381) 223-67-39